diff --git a/packages/chord-chart-studio/build/css/main.654483bc9469d682fc7c.css b/packages/chord-chart-studio/build/css/main.654483bc9469d682fc7c.css deleted file mode 100644 index 9c6bbfad..00000000 --- a/packages/chord-chart-studio/build/css/main.654483bc9469d682fc7c.css +++ /dev/null @@ -1,2 +0,0 @@ -/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}html{box-sizing:border-box;font-size:62.5%;font-size:.625em}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:1.6rem;line-height:1.5}.theme-dark .link1{color:#fabf2b}.theme-dark .link1:hover{color:#fbce5d}.theme-dark .link1:active{color:#fcdd8f}::-webkit-scrollbar{height:10px;width:10px}.theme-dark ::-webkit-scrollbar,.theme-light ::-webkit-scrollbar{background-color:red}.theme-dark ::-webkit-scrollbar-corner,.theme-dark ::-webkit-scrollbar-track{background-color:#293132}::-webkit-scrollbar-thumb{border-radius:100vw}.theme-light ::-webkit-scrollbar-thumb{border:3px solid}.theme-dark ::-webkit-scrollbar-thumb{background-color:#a8a8a8;border:3px solid #293132}.theme-dark ::-webkit-scrollbar-thumb:hover{background-color:#c1c1c1}@supports(scrollbar-color:white black){*{scrollbar-width:thin}.theme-dark *{scrollbar-color:#a8a8a8 #293132}}.cmTheme-dark1{background-color:#293132}.cmTheme-dark1 .cmSong{color:#f4f4f4;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;line-height:1.65em;padding:10px;white-space:pre-wrap}.cmTheme-dark1 .cmSong p{margin:0}.cmTheme-dark1 .cmSectionLabel{color:#67d3ff;font-weight:700}.cmTheme-dark1 .cmSectionMultiplier{color:#ed7bff}.cmTheme-dark1 .cmKeyDeclaration,.cmTheme-dark1 .cmTimeSignature{color:#a7ff7b;font-weight:700}.cmTheme-dark1 .cmChordLine{color:#fabf2b}.cmTheme-dark1 .cmBarSeparator{opacity:.5}.cmTheme-dark1 .cmChordDuration{opacity:.7}.cmTheme-dark1 .cmSubBeatGroupCloser,.cmTheme-dark1 .cmSubBeatGroupOpener{font-weight:700;opacity:.8}.cmTheme-dark1 .cmChordLine-romanNumeral,.cmTheme-dark1 .cmRomanNumeral{color:#fabf2b}.cmTheme-dark1 .cmRomanNumeral-diatonic{background-color:#fabf2b;color:#303846;font-weight:700}.cmTheme-dark1 .cmRomanNumeral-borrowed{background-color:rgba(250,191,43,.7);color:#303846}.cmTheme-dark1 .cmRomanNumeral-unknown{opacity:.8}.cmTheme-dark2{background-color:#282a36}.cmTheme-dark2 .cmSong{color:#f8f8f2;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;line-height:1.65em;padding:10px;white-space:pre-wrap}.cmTheme-dark2 .cmSong p{margin:0}.cmTheme-dark2 .cmSectionLabel{color:#ffb86c;font-weight:700}.cmTheme-dark2 .cmSectionMultiplier{color:#f1fa8c}.cmTheme-dark2 .cmKeyDeclaration,.cmTheme-dark2 .cmTimeSignature{color:#f1fa8c;font-weight:700}.cmTheme-dark2 .cmChordLine{color:#8be9fd}.cmTheme-dark2 .cmBarSeparator{opacity:.5}.cmTheme-dark2 .cmChordDuration{opacity:.7}.cmTheme-dark2 .cmSubBeatGroupCloser,.cmTheme-dark2 .cmSubBeatGroupOpener{font-weight:700;opacity:.8}.cmTheme-dark2 .cmChordLine-romanNumeral,.cmTheme-dark2 .cmRomanNumeral{color:#8be9fd}.cmTheme-dark2 .cmRomanNumeral-diatonic{background-color:#8be9fd;color:#303846;font-weight:700}.cmTheme-dark2 .cmRomanNumeral-borrowed{background-color:rgba(139,233,253,.7);color:#303846}.cmTheme-dark2 .cmRomanNumeral-unknown{opacity:.8}.cmTheme-dark3{background-color:#282a36}.cmTheme-dark3 .cmSong{color:#f8f8f2;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;line-height:1.65em;padding:10px;white-space:pre-wrap}.cmTheme-dark3 .cmSong p{margin:0}.cmTheme-dark3 .cmSectionLabel{color:#f55;font-weight:700}.cmTheme-dark3 .cmSectionMultiplier{color:#f1fa8c}.cmTheme-dark3 .cmKeyDeclaration,.cmTheme-dark3 .cmTimeSignature{color:#8be9fd;font-weight:700}.cmTheme-dark3 .cmChordLine{color:#50fa7b}.cmTheme-dark3 .cmBarSeparator{opacity:.5}.cmTheme-dark3 .cmChordDuration{opacity:.7}.cmTheme-dark3 .cmSubBeatGroupCloser,.cmTheme-dark3 .cmSubBeatGroupOpener{font-weight:700;opacity:.8}.cmTheme-dark3 .cmChordLine-romanNumeral,.cmTheme-dark3 .cmRomanNumeral{color:#50fa7b}.cmTheme-dark3 .cmRomanNumeral-diatonic{background-color:#50fa7b;color:#303846;font-weight:700}.cmTheme-dark3 .cmRomanNumeral-borrowed{background-color:rgba(80,250,123,.7);color:#303846}.cmTheme-dark3 .cmRomanNumeral-unknown{opacity:.8}.cmTheme-text .cmSong{color:#333;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;line-height:1.65em;padding:10px;white-space:pre-wrap}.cmTheme-text .cmSong p{margin:0}.cmTheme-print{background-color:#fff}.cmTheme-print .cmSong{color:#333;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;font-size:12px;line-height:1.65em;padding:10px;white-space:pre-wrap}.cmTheme-print .cmSong p{margin:0}.cmTheme-print .cmSectionLabel{font-weight:700;text-decoration:underline}.cmTheme-print .cmSectionMultiplier{font-weight:400;text-decoration:unset}.cmTheme-print .cmKeyDeclaration,.cmTheme-print .cmTimeSignature{font-weight:700}.cmTheme-print .cmBarSeparator{opacity:.5}.cmTheme-print .cmChordDuration{opacity:.7}.cmTheme-print .cmSubBeatGroupCloser,.cmTheme-print .cmSubBeatGroupOpener{font-weight:700;opacity:.8}.cmSong--fontSize-5 .cmLine{font-size:.5em;line-height:1.15em}.cmSong--fontSize-4 .cmLine{font-size:.6em;line-height:1.25em}.cmSong--fontSize-3 .cmLine{font-size:.7em;line-height:1.35em}.cmSong--fontSize-2 .cmLine{font-size:.8em;line-height:1.45em}.cmSong--fontSize-1 .cmLine{font-size:.9em;line-height:1.55em}.cmSong--fontSize1 .cmLine{font-size:1.1em;line-height:1.75em}.cmSong--fontSize2 .cmLine{font-size:1.2em;line-height:1.85em}.cmSong--fontSize3 .cmLine{font-size:1.3em;line-height:1.95em}.cmSong--fontSize4 .cmLine{font-size:1.4em;line-height:2.05em}.cmSong--fontSize5 .cmLine{font-size:1.5em;line-height:2.15em}.cmChordLyricLine{display:flex;flex-wrap:wrap}.cmChordLyricLine .cmChordLyricPair{display:flex;flex:0 0 auto;flex-direction:column}.cmChordLyricLine .cmChordLyricPair .cmChordLine,.cmChordLyricLine .cmChordLyricPair .cmLyricLine{flex:0 0 auto;white-space:pre}.cmTheme-print2{background-color:#fff}.cmTheme-print2 .cmSong{color:#333;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-family:Menlo,Courier New,Courier,monospace;font-size:13px;font-size:14px;line-height:1.65em;line-height:1.4em;padding:10px;white-space:pre-wrap}.cmTheme-print2 .cmSong p{margin:0}.cmTheme-print2 .cmSection{border:1px solid #000;border-radius:8px;break-inside:avoid;margin:.2em 0;padding:.4em}.cmTheme-print2 .cmSection-Chorus{background-color:#ededed}.cmTheme-print2 .cmSectionLabel{font-size:.85em;font-weight:700;text-transform:uppercase}.cmTheme-print2 .cmSectionMultiplier{font-size:.95em;text-decoration:unset}.cmTheme-print2 .cmKeyDeclaration,.cmTheme-print2 .cmTimeSignature{font-weight:700}.cmTheme-print2 .cmEmptyLine{display:none}.cmTheme-print2 .cmChordLine{font-weight:bolder}.cmTheme-print2 .cmBarSeparator{opacity:.5}.cmTheme-print2 .cmChordDuration{opacity:.7}.cmTheme-print2 .cmSubBeatGroupCloser,.cmTheme-print2 .cmSubBeatGroupOpener{font-weight:700;opacity:.8}.ErrorBoundary{padding:2rem}#app,body,html{height:100%;padding:0}.appLayout-wrapper{height:100%;width:100%}.appLayout-wrapper,.leftBar{display:flex;flex-direction:row;flex-wrap:nowrap}.leftBar{flex-shrink:0;max-width:250px;width:15%}.leftBar.leftBar-isCollapsed{width:48px}.theme-light .leftBar.leftBar-isCollapsed{border-right:1px solid}.theme-dark .leftBar{background-color:#303846;color:#f4f4f4}.theme-dark .leftBar.leftBar-isCollapsed{border-right:1px solid #dbdbdb}.theme-dark .leftBar.leftBar-isCollapsed:hover{background-color:#455064}@media print{.leftBar{display:none}}.rightBar{display:flex;flex-direction:row;flex-shrink:0;flex-wrap:nowrap;max-width:250px;width:15%}.rightBar.rightBar-isCollapsed{width:48px}.theme-light .rightBar.rightBar-isCollapsed{border-left:1px solid}.theme-dark .rightBar{background-color:#303846;color:#f4f4f4}.theme-dark .rightBar.rightBar-isCollapsed{border-left:1px solid #dbdbdb}.theme-dark .rightBar.rightBar-isCollapsed:hover{background-color:#455064}@media print{.rightBar{display:none}}.leftBar-content{flex:1 1 auto;overflow-y:scroll}.leftBar-isCollapsed .leftBar-content{cursor:pointer;overflow:hidden;padding:.5rem 1rem;text-align:center}.rightBar-content{flex:1 1 auto;overflow-y:scroll}.rightBar-isCollapsed .rightBar-content{cursor:pointer;overflow:hidden;padding:.5rem 1rem;text-align:center}.leftBar-collapser{cursor:pointer;display:flex;flex:0 0 12px}.leftBar-isCollapsed .leftBar-collapser{display:none}.theme-light .leftBar-collapser{border-right:1px solid}.theme-dark .leftBar-collapser{background-color:#405a73;border-right:1px solid #a8a8a8}.theme-dark .leftBar-collapser:hover{background-color:#537393}.theme-dark .leftBar-collapser{color:#f4f4f4}.leftBar-collapserIcon{align-self:center;flex:1 1 auto;font-weight:700}.leftBar-collapserIcon .icon{font-size:1.2rem}.rightBar-collapser{cursor:pointer;display:flex;flex:0 0 12px}.rightBar-isCollapsed .rightBar-collapser{display:none}.theme-light .rightBar-collapser{border-left:1px solid}.theme-dark .rightBar-collapser{background-color:#405a73;border-left:1px solid #a8a8a8}.theme-dark .rightBar-collapser:hover{background-color:#537393}.theme-dark .rightBar-collapser{color:#f4f4f4}.rightBar-collapserIcon{align-self:center;flex:1 1 auto;font-weight:700}.rightBar-collapserIcon .icon{font-size:1.2rem}.appLayout-main{display:flex;flex-direction:column;flex-grow:1;flex-wrap:nowrap}.appLayout-header{flex-shrink:0}.theme-light .appLayout-header{border-bottom:3px solid}.theme-dark .appLayout-header{background-color:#303846;border-bottom:3px solid #fabf2b;color:hsla(0,0%,96%,.7)}@media print{.appLayout-header{display:none}}.appLayout-content{flex-grow:1;overflow-y:auto}@media print{.appLayout-content{overflow-y:visible}}.theme-dark .appLayout-footer{color:#a8a8a8}@media print{.appLayout-footer{display:none}}.logo-isExpanded{box-sizing:border-box;padding:1.5rem 0 1rem;width:100%}.leftBar-isCollapsed .logo-isExpanded{display:none}.logo-img{margin:0 auto;width:70%}.logo-img svg{fill:#fff;aspect-ratio:1.25/1;display:block;margin:5px auto 10px;width:80%}.mainNav-entries{display:flex;font-family:Open Sans,sans-serif;font-size:1.6rem;font-weight:400;justify-content:center;list-style-type:none;margin:0;padding:0;vertical-align:middle}.mainNavEntry{cursor:default;display:inline-block;font-weight:700;padding:1rem 2rem}.mainNavEntry:hover:not(.mainNavEntry-isActive){cursor:pointer}.theme-dark .mainNavEntry:hover:not(.mainNavEntry-isDisabled):not(.mainNavEntry-isActive){background-color:#fcdd8f;color:#1c2731}.theme-dark .mainNavEntry.mainNavEntry-isActive{background-color:#fabf2b;color:#1c2731}.mainNavEntry.mainNavEntry-isDisabled{user-select:none}.theme-light .mainNavEntry.mainNavEntry-isDisabled{cursor:not-allowed}.theme-dark .mainNavEntry.mainNavEntry-isDisabled{background-color:#303846;color:#a8a8a8;cursor:not-allowed}.mainNavEntry-icon .icon{font-size:1.4rem;margin-right:.5rem}.icon{vertical-align:middle}.userGuide-isExpanded{margin-left:1rem}.rightBar-isCollapsed .userGuide-isExpanded{display:none}.userGuide-isCollapsed{padding:1rem 0}.rightBar:not(.rightBar-isCollapsed) .userGuide-isCollapsed{display:none}button{background-color:transparent;border:0;border-radius:0}.Button{display:inline-block;font-weight:700;margin:10px 20px 10px 0;padding:10px 20px;text-transform:capitalize}.Button:hover{cursor:pointer}.Button:last-of-type{margin-right:0}.theme-dark .Button-primary:not(.Button-isDisabled){background-color:#fabf2b;color:#1c2731}.theme-dark .Button-primary:not(.Button-isDisabled):hover{background-color:#fcdd8f;color:#000}.theme-dark .Button-primary:not(.Button-isDisabled):active{background-color:#feecc0;color:#2e4052}.Button-primary.Button-isDisabled{cursor:not-allowed}.theme-dark .Button-primary.Button-isDisabled{background-color:#57686a;color:#404c4e}.theme-dark .Button-secondary:not(.Button-isDisabled){background-color:#a8a8a8;color:#121616}.theme-dark .Button-secondary:not(.Button-isDisabled):hover{background-color:#c1c1c1;color:#000}.theme-dark .Button-secondary:not(.Button-isDisabled):active{background-color:#dbdbdb;color:#2e4052}.Button-secondary.Button-isDisabled{cursor:not-allowed}.theme-dark .Button-secondary.Button-isDisabled{background-color:#57686a;color:#404c4e}.versions-isExpanded{font-size:1rem;margin:4rem 0;opacity:.5;padding:0 1rem}.rightBar-isCollapsed .versions-isExpanded{display:none}.versions-isExpanded a{color:inherit}.versions-isExpanded a:hover{opacity:.7}.sim-SongImporterModal_Container{align-content:stretch;align-items:stretch;display:flex;flex-direction:column;flex-wrap:nowrap;height:90%;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:90%}.theme-light .sim-SongImporterModal_Container{border:1px solid}.theme-dark .sim-SongImporterModal_Container{background-color:#1e2324;border:1px solid #c1c1c1;color:#f4f4f4}.sim-Header_Container{display:flex;flex:0 0 auto}.theme-light .sim-Header_Container{border-bottom:1px solid}.theme-dark .sim-Header_Container{background-color:#303846;border-bottom:1px solid #c1c1c1;color:hsla(0,0%,96%,.7)}.sim-Header_Title{flex:1 1 auto;font-size:1.6rem;font-weight:bolder;padding:20px}.sim-Header_Actions{flex:0 0 auto;padding:0 10px}.sim-TwoColumns_Container{align-self:stretch;display:flex}.sim-TwoColumns_Container-autoHeight{flex:0 1 100%;min-height:0}.sim-Column_Container{align-self:stretch;flex:1 1 50%;padding:0 10px}.sim-Column_Container:first-child{padding-right:5px}.sim-Column_Container:last-child{padding-left:5px}.sim-Input_Header{font-size:1.2rem;height:20px;padding:2px;text-align:center;text-transform:uppercase}.theme-dark .sim-Input_Header{background-color:#404c4e;color:hsla(0,0%,96%,.7)}.sim-Input_Textarea{background-color:transparent;border:0;box-sizing:border-box;font-family:PT Mono,consolas,courier,monospace;font-size:1.2rem;height:calc(100% - 34px);line-height:1.5rem;margin:0;max-height:calc(100% - 34px);outline:none;overflow-y:scroll;padding:10px;resize:none;width:100%}.theme-dark .sim-Input_Textarea{background-color:#121616;color:#f4f4f4}.sim-Input_Textarea-Disabled{opacity:.5}.sim-Preview_Container{box-sizing:border-box;font-family:PT Mono,consolas,courier,monospace;font-size:1.2rem;height:calc(100% - 34px);max-height:calc(100% - 34px);overflow-y:scroll;padding:10px;white-space:pre-wrap}.theme-dark .sim-Preview_Container{background-color:#293132}.sim-Preview_Error{padding:10px}.theme-dark .sim-Preview_Error{background-color:#f91900;color:#f4f4f4}.sim-InputFile_Input{height:.1px;opacity:0;overflow:hidden;position:absolute;width:.1px;z-index:-1}.sim-InputFormat{padding:10px 0}.sim-InputFormat_Entry{display:inline-block;margin:0 10px}.sim-InputFormat_Entry:hover,.sim-InputFormat_Label:hover{cursor:pointer}.sim-InputFormat_Entry-Disabled,.sim-InputFormat_Label-Disabled{opacity:.5}.sim-InputFormat_Entry-Disabled:hover,.sim-InputFormat_Label-Disabled:hover{cursor:not-allowed}.mod-ModalContainer{z-index:5000}.mod-ModalContainer,.mod-Overlay{height:100%;left:0;position:absolute;top:0;width:100%}.mod-Overlay{background-color:#000;opacity:.7}.mod-ModalConfirmContainer{height:auto;left:50%;padding:10px 20px;position:absolute;top:50%;transform:translate(-50%,-50%);width:auto;z-index:5000}.theme-light .mod-ModalConfirmContainer{border:1px solid}.theme-dark .mod-ModalConfirmContainer{background-color:#1e2324;border:1px solid #c1c1c1;color:#f4f4f4}.mod-ModalConfirmButtons{text-align:center}.fileManager-isExpanded{font-size:1.2rem}.leftBar-isCollapsed .fileManager-isExpanded{display:none}.fileManager-isCollapsed{padding:1rem 0}.leftBar:not(.leftBar-isCollapsed) .fileManager-isCollapsed{display:none}.fileManager-actionsList{display:flex;flex-direction:row;flex-wrap:wrap;padding:1rem}.theme-dark .fileManager-actionsList{background-color:#455064}.fileManagerAction{flex:0 1 auto;margin-right:.5rem;padding:.5rem;white-space:nowrap}.fileManagerAction:hover{cursor:not-allowed}.fileManagerAction:hover:not(.fileManagerAction-isDisabled){cursor:pointer}.theme-dark .fileManagerAction:hover:not(.fileManagerAction-isDisabled){background-color:#596883}.fileManagerAction-isDisabled{opacity:.5;user-select:none}.fileManagerAction-icon .icon{font-size:1.4rem}.fileManager-entriesList{list-style:none;padding-left:0}.fileManagerEntry{cursor:pointer;padding:.1rem 0}.theme-dark .fileManagerEntry:hover{background-color:#596883}.theme-dark .fileManagerEntry.fileManagerEntry-isSelected{background-color:#fabf2b}.fileManagerEntry-input{background-color:transparent;border:none;box-sizing:border-box;cursor:pointer;outline:none;padding:0 1rem;width:100%}.theme-dark .fileManagerEntry-input{color:#f4f4f4}.theme-dark .fileManagerEntry-isSelected .fileManagerEntry-input{color:#303846}.fileManagerEntry-isRenamed .fileManagerEntry-input{cursor:text}.theme-dark .fileManagerEntry-isRenamed .fileManagerEntry-input{background-color:#f4f4f4;color:#303846}.songEditor-headers{display:flex;font-size:1.2rem;height:20px;padding:3px 0;text-align:center;text-transform:uppercase}.theme-dark .songEditor-headers{background-color:#404c4e;color:hsla(0,0%,96%,.7)}.songEditor-previewHeader,.songEditor-sourceHeader{flex:0 1 50%}.songEditor{display:flex;flex-direction:row;flex-wrap:nowrap;height:calc(100% - 26px);width:100%}.songEditor-source{display:flex;flex:0 1 50%;overflow-y:scroll}.theme-dark .songEditor-source{background-color:#1e2324}.songEditor-preview{flex:0 1 50%;overflow-y:scroll}.editorPreview{box-sizing:border-box;min-height:100%;padding:.5rem}.cmTheme-fadeRepeats .cmLine--isFromAutoRepeatChords,.cmTheme-fadeRepeats .cmLine--isFromChordLineRepeater,.cmTheme-fadeRepeats .cmLine--isFromSectionCopy,.cmTheme-fadeRepeats .cmLine--isFromSectionMultiply{opacity:.5}.prosemirrorWrapper{flex:1 1 auto;padding:15px 0}.ProseMirror{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;height:100%;line-height:1.65em;outline:none}.theme-dark .ProseMirror{color:#dbdbdb}.ProseMirror p{margin:0;padding:0 1rem}.ProseMirror{word-wrap:break-word;font-feature-settings:"liga" 0;-webkit-font-variant-ligatures:none;font-variant-ligatures:none;position:relative;white-space:pre-wrap;white-space:break-spaces}.ProseMirror pre{white-space:pre-wrap}.ProseMirror li{position:relative}.ProseMirror-hideselection ::selection{background:transparent}.ProseMirror-hideselection ::-moz-selection{background:transparent}.ProseMirror-hideselection{caret-color:transparent}.ProseMirror [draggable][contenteditable=false]{user-select:text}.ProseMirror-selectednode{outline:2px solid #8cf}li.ProseMirror-selectednode{outline:none}li.ProseMirror-selectednode:after{border:2px solid #8cf;bottom:-2px;content:"";left:-32px;pointer-events:none;position:absolute;right:-2px;top:-2px}img.ProseMirror-separator{border:none!important;display:inline!important;margin:0!important}.exportPreview{box-sizing:border-box;min-height:100%;padding:1rem}.theme-dark .exportPreview{background-color:#293132;color:#f4f4f4}.exp-SongRenderer{color:#333;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;line-height:1.65em;padding:15px;white-space:pre-wrap}.exp-SongRenderer p{margin:0}.exp-SongRenderer .txtLine{display:block}.theme-dark .exp-SongRenderer{color:#f4f4f4!important}.playRendererWrapper1{height:100%;overflow-y:scroll;position:relative}.playRendererWrapper2{bottom:0;left:0;position:absolute;right:0;top:0}.playRenderer{box-sizing:border-box;min-height:100%}.playRenderer .cmSong{padding:0!important}.playRenderer--columns-1{column-count:1;padding:1rem}.playRenderer--columns-2{column-count:2;column-fill:auto;height:100%;padding:1rem}.playRenderer--columns-3{column-count:3;column-fill:auto;height:100%;padding:1rem}.playRenderer--columns-4{column-count:4;column-fill:auto;height:100%;padding:1rem}.printPreview{min-height:100%;overflow:hidden}.theme-dark .printPreview{background-color:#293132}@media print{.printPreview{background-color:#fff!important;overflow-y:auto}}.printPreview-page{background-color:#fff;margin:2rem auto;position:relative}@media print{.printPreview-page{margin:0;page-break-after:auto}}.printPreview-pageContentWrapper{bottom:0;left:0;position:absolute;right:0;top:0}.printPreview-pageContent{display:flex;flex-direction:column;flex-wrap:nowrap;height:100%}.printPreview-pageHeader{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-size:1.8rem;font-weight:700;margin-bottom:1rem}.printPreview-pageColumnWrapper{display:flex;flex:1;flex-direction:row;flex-wrap:nowrap}.printPreview-pageColumn{flex:1 1 0;margin:0 .7rem}.printPreview-pageColumn:first-of-type{margin-left:0}.printPreview-pageColumn:last-of-type{margin-right:0}.printPreview-page--a4{height:297mm;width:210mm}.printPreview-page--booxmax2pro{height:930px;width:698px}.printPreview-pageContentWrapper--padding1{padding:3mm}.printPreview-pageContentWrapper--padding2{padding:6mm}.printPreview-pageContentWrapper--padding3{padding:9mm}.printPreview-pageContentWrapper--padding4{padding:12mm}.printPreview-pageContentWrapper--padding5{padding:15mm}.cmTheme-print .cmSong{padding:0!important}.measuring-node{position:absolute;visibility:hidden;z-index:-1}.rightBar-isCollapsed .renderingOptionsPanel-isExpanded{display:none}.renderingOptionsPanel-isCollapsed{padding:1rem 0}.rightBar:not(.rightBar-isCollapsed) .renderingOptionsPanel-isCollapsed{display:none}.sb-optionsGroup{padding-top:2rem}.sb-optionsGroup:first-of-type{padding-top:0}.sb-optionsGroup-title{font-size:1.4rem;font-weight:700;padding:.5rem 1rem .5rem .5rem;user-select:none}.theme-light .sb-optionsGroup-title{border-bottom:2px solid}.theme-dark .sb-optionsGroup-title{border-bottom:2px solid hsla(0,0%,96%,.7)}.theme-dark .sb-optionsGroup-isNotInteractable .sb-optionsGroup-title{color:#71819e}.sb-optionsGroup-iconTitle .icon{font-size:1.6rem}.sb-optionsGroup-iconToggle .icon{font-size:1.8rem}.sb-optionSelect{font-size:1.2rem;padding:.5rem 1.5rem .5rem 1rem}.theme-light .sb-optionSelect{border-bottom:1px dotted}.theme-dark .sb-optionSelect{border-bottom:1px dotted #71819e}.theme-dark .sb-optionsGroup .sb-optionSelect{background-color:#1b2028}.sb-optionSelect.sb-optionSelect-isNotInteractable{user-select:none}.theme-dark .sb-optionSelect.sb-optionSelect-isNotInteractable{color:#71819e}.sb-optionSelect:hover{cursor:not-allowed}.sb-optionSelect:hover:not(.sb-optionSelect-isNotInteractable){cursor:pointer}.theme-dark .sb-optionSelect:hover:not(.sb-optionSelect-isNotInteractable){background-color:#596883}.sb-optionSelect-title{display:flex}.sb-optionSelect-desc{flex:1 1 auto}.sb-optionSelect-toggle{flex:0 0 auto}.sb-optionSelect-icon .icon{font-size:1.8rem}.sb-optionSelectChoice-activeLabel{opacity:.5}.sb-optionSelectChoice{display:flex;padding-top:.5rem}.sb-optionSelectChoice:hover:not(.sb-optionSelectChoice-isNotInteractable){cursor:pointer;text-decoration:underline}.sb-optionSelectChoice-isSelected{font-weight:700}.sb-optionSelectChoice-check{flex:0 0 20px}.sb-optionSelectChoice-checkIcon .icon{font-size:1.2rem}.sb-optionSelectChoice-label{flex:1 1 auto}.sb-optionSlider{display:flex;flex-wrap:wrap;font-size:1.2rem;padding:.5rem 1.5rem .5rem 1rem}.theme-light .sb-optionSlider{border-bottom:1px dotted}.theme-dark .sb-optionSlider{border-bottom:1px dotted #71819e}.theme-dark .sb-optionsGroup .sb-optionSlider{background-color:#1b2028}.sb-optionSlider.sb-optionSlider-isNotInteractable{user-select:none}.theme-dark .sb-optionSlider.sb-optionSlider-isNotInteractable{color:#71819e}.sb-optionSlider:hover{cursor:not-allowed}.sb-optionSlider:hover:not(.sb-optionSlider-isNotInteractable){cursor:pointer}.theme-dark .sb-optionSlider:hover:not(.sb-optionSlider-isNotInteractable){background-color:#596883}.sb-optionSlider-desc{flex:1 1 auto}.sb-optionSlider-value{flex:0 0 auto;font-size:1.2rem;vertical-align:middle}.sb-optionSlider-range{flex:1 1 100%}.theme-light .sb-optionSlider-range input[type=range]{-webkit-appearance:none;background:transparent;width:100%}.theme-light .sb-optionSlider-range input[type=range]:focus{outline:none}.theme-light .sb-optionSlider-range input[type=range]::-webkit-slider-runnable-track{animation:.2s;background:#feecc0;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:100%}.theme-light .sb-optionSlider-range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#bb8704;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;margin-top:-3.3333333333;width:15px}.theme-light .sb-optionSlider-range input[type=range]:focus::-webkit-slider-runnable-track{background:#feecc0}.theme-light .sb-optionSlider-range input[type=range]::-moz-range-track{animation:.2s;background:#feecc0;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:100%}.theme-light .sb-optionSlider-range input[type=range]::-moz-range-thumb{background:#bb8704;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:15px}.theme-light .sb-optionSlider-range input[type=range]::-ms-track{animation:.2s;background:transparent;border-color:transparent;border-width:15px 0;color:transparent;cursor:pointer;height:10px;width:100%}.theme-light .sb-optionSlider-range input[type=range]::-ms-fill-lower,.theme-light .sb-optionSlider-range input[type=range]::-ms-fill-upper{background:#feecc0;border:0 solid #000;border-radius:0}.theme-light .sb-optionSlider-range input[type=range]::-ms-thumb{background:#bb8704;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:15px}.theme-light .sb-optionSlider-range input[type=range]:focus::-ms-fill-lower,.theme-light .sb-optionSlider-range input[type=range]:focus::-ms-fill-upper{background:#feecc0}.theme-light .sb-optionSlider-range input[type=range]:disabled::-moz-range-thumb,.theme-light .sb-optionSlider-range input[type=range]:disabled::-moz-range-track{cursor:default}.theme-light .sb-optionSlider-range input[type=range]:disabled::-webkit-slider-runnable-track,.theme-light .sb-optionSlider-range input[type=range]:disabled::-webkit-slider-thumb{cursor:default}.theme-light .sb-optionSlider-range input[type=range]:disabled::-ms-thumb,.theme-light .sb-optionSlider-range input[type=range]:disabled::-ms-track{cursor:default}.theme-dark .sb-optionSlider-range input[type=range]{-webkit-appearance:none;background:transparent;width:100%}.theme-dark .sb-optionSlider-range input[type=range]:focus{outline:none}.theme-dark .sb-optionSlider-range input[type=range]::-webkit-slider-runnable-track{animation:.2s;background:#71819e;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:100%}.theme-dark .sb-optionSlider-range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#070809;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;margin-top:-3.3333333333;width:15px}.theme-dark .sb-optionSlider-range input[type=range]:focus::-webkit-slider-runnable-track{background:#71819e}.theme-dark .sb-optionSlider-range input[type=range]::-moz-range-track{animation:.2s;background:#71819e;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:100%}.theme-dark .sb-optionSlider-range input[type=range]::-moz-range-thumb{background:#070809;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:15px}.theme-dark .sb-optionSlider-range input[type=range]::-ms-track{animation:.2s;background:transparent;border-color:transparent;border-width:15px 0;color:transparent;cursor:pointer;height:10px;width:100%}.theme-dark .sb-optionSlider-range input[type=range]::-ms-fill-lower,.theme-dark .sb-optionSlider-range input[type=range]::-ms-fill-upper{background:#71819e;border:0 solid #000;border-radius:0}.theme-dark .sb-optionSlider-range input[type=range]::-ms-thumb{background:#070809;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:15px}.theme-dark .sb-optionSlider-range input[type=range]:focus::-ms-fill-lower,.theme-dark .sb-optionSlider-range input[type=range]:focus::-ms-fill-upper{background:#71819e}.theme-dark .sb-optionSlider-range input[type=range]:disabled::-moz-range-thumb,.theme-dark .sb-optionSlider-range input[type=range]:disabled::-moz-range-track{cursor:default}.theme-dark .sb-optionSlider-range input[type=range]:disabled::-webkit-slider-runnable-track,.theme-dark .sb-optionSlider-range input[type=range]:disabled::-webkit-slider-thumb{cursor:default}.theme-dark .sb-optionSlider-range input[type=range]:disabled::-ms-thumb,.theme-dark .sb-optionSlider-range input[type=range]:disabled::-ms-track{cursor:default}.sb-optionSlider-range input[type=range]:disabled{cursor:not-allowed!important;opacity:.35}.sb-optionToggle{display:flex;font-size:1.2rem;padding:.5rem 1.5rem .5rem 1rem}.theme-light .sb-optionToggle{border-bottom:1px dotted}.theme-dark .sb-optionToggle{border-bottom:1px dotted #71819e}.theme-dark .sb-optionsGroup .sb-optionToggle{background-color:#1b2028}.sb-optionToggle.sb-optionToggle-isNotInteractable{user-select:none}.theme-dark .sb-optionToggle.sb-optionToggle-isNotInteractable{color:#71819e}.sb-optionToggle:hover{cursor:not-allowed}.sb-optionToggle:hover:not(.sb-optionToggle-isNotInteractable){cursor:pointer}.theme-dark .sb-optionToggle:hover:not(.sb-optionToggle-isNotInteractable){background-color:#596883}.sb-optionToggle-desc{flex:1 1 auto}.sb-optionToggle-icon{flex:0 0 auto}.theme-dark .sb-optionToggle-isOff .icon{color:#a8a8a8}.sb-optionToggle-icon .icon{font-size:1.8rem}.theme-dark .sb-optionToggle-isOff .sb-optionToggle-icon .icon{color:#a8a8a8} -/*# sourceMappingURL=main.654483bc9469d682fc7c.css.map*/ \ No newline at end of file diff --git a/packages/chord-chart-studio/build/css/main.654483bc9469d682fc7c.css.map b/packages/chord-chart-studio/build/css/main.654483bc9469d682fc7c.css.map deleted file mode 100644 index ea8f377a..00000000 --- a/packages/chord-chart-studio/build/css/main.654483bc9469d682fc7c.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"css/main.654483bc9469d682fc7c.css","mappings":"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","sources":["webpack://chord-chart-studio/../../node_modules/normalize.css/normalize.css","webpack://chord-chart-studio/./scss/_base.scss","webpack://chord-chart-studio/./scss/abstract/_typography.scss","webpack://chord-chart-studio/./scss/abstract/mixins/_fontSize.scss","webpack://chord-chart-studio/./scss/abstract/mixins/_themify.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/themes/dark1.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/abstract/_colors.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/abstract/_mixins.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/abstract/_variables.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/themes/dark2.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/themes/dark3.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/themes/text.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/themes/print.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/themes/_common.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/themes/print2.scss","webpack://chord-chart-studio/./src/ui/_components/ErrorBoundary.scss","webpack://chord-chart-studio/./scss/abstract/_spacings.scss","webpack://chord-chart-studio/./src/ui/layout/app/_components/App.scss","webpack://chord-chart-studio/./src/ui/sideBar/_components/Logo.scss","webpack://chord-chart-studio/./src/ui/layout/app/_components/Nav.scss","webpack://chord-chart-studio/./src/ui/_components/Icon.scss","webpack://chord-chart-studio/./src/ui/sideBar/_components/UserGuide.scss","webpack://chord-chart-studio/./src/ui/_components/Button.scss","webpack://chord-chart-studio/./src/ui/sideBar/_components/Versions.scss","webpack://chord-chart-studio/./src/songImporter/_components/SongImporter.scss","webpack://chord-chart-studio/./src/ui/_components/Modal.scss","webpack://chord-chart-studio/./src/fileManager/_components/FileManager.scss","webpack://chord-chart-studio/./src/editor/songEditor/_components/EditorLayout.scss","webpack://chord-chart-studio/./src/songRenderers/editorPreview/_components/EditorPreview.scss","webpack://chord-chart-studio/./src/editor/songEditor/prosemirror/ProsemirrorEditorView.scss","webpack://chord-chart-studio/../../node_modules/prosemirror-view/style/prosemirror.css","webpack://chord-chart-studio/./src/songRenderers/exportPreview/_components/ExportPreview.scss","webpack://chord-chart-studio/./src/songRenderers/playRenderer/_components/PlayRenderer.scss","webpack://chord-chart-studio/./src/songRenderers/printPreview/_components/PrintPreview.scss","webpack://chord-chart-studio/./src/songRenderers/printPreview/helpers/getDimensionsFromDom.scss","webpack://chord-chart-studio/./src/optionsPanels/rendering/_components/Rendering.scss","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/OptionsGroup.scss","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/Select.scss","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/Slider.scss","webpack://chord-chart-studio/./scss/abstract/mixins/_inputRange.scss","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/Toggle.scss"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n","@import 'abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\t// links\n\t\tlink1: cv(dark-accent),\n\t\tlink1-hover: cv(dark-accent, light10),\n\t\tlink1-active: cv(dark-accent, light20),\n\t\t// scrollbars\n\t\tscrollbar-bg: cv(dark-secondary),\n\t\tscrollbar-thumb: cv(dark-foreground, dark30),\n\t\tscrollbar-hover: cv(dark-foreground, dark20),\n\t),\n);\n\nhtml {\n\t/* switching to border-box model for all elements */\n\tbox-sizing: border-box;\n\n\t/* set base font-size to equiv \"10px\", which is adapted to rem unit */\n\tfont-size: 62.5%;\n\n\t/* IE9-IE11 math fixing. See http://bit.ly/1g4X0bX */\n\tfont-size: calc(1em * 0.625);\n}\n\nbody {\n\t@include font-size(base);\n\tfont-family: $font-family-base;\n\tline-height: $line-height-base;\n}\n\n.link1 {\n\t@include themify($themes) {\n\t\tcolor: themed('link1');\n\t}\n\n\t&:hover {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('link1-hover');\n\t\t}\n\t}\n\n\t&:active {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('link1-active');\n\t\t}\n\t}\n}\n\n// scrollbars\n::-webkit-scrollbar {\n\twidth: 10px;\n\theight: 10px;\n\t@include themify($themes) {\n\t\tbackground-color: red;\n\t}\n}\n\n::-webkit-scrollbar-track,\n::-webkit-scrollbar-corner {\n\t@include themify($themes) {\n\t\tbackground-color: themed('scrollbar-bg');\n\t}\n}\n\n::-webkit-scrollbar-thumb {\n\t@include themify($themes) {\n\t\tbackground-color: themed('scrollbar-thumb');\n\t\tborder: 3px solid themed('scrollbar-bg');\n\t}\n\tborder-radius: 100vw;\n}\n\n::-webkit-scrollbar-thumb:hover {\n\t@include themify($themes) {\n\t\tbackground-color: themed('scrollbar-hover');\n\t}\n}\n\n@supports (scrollbar-color: white black) {\n\t* {\n\t\t@include themify($themes) {\n\t\t\tscrollbar-color: themed('scrollbar-thumb') themed('scrollbar-bg');\n\t\t}\n\t\tscrollbar-width: thin;\n\t}\n}\n","@use 'sass:math';\n\n// ChordMark\n\n$cmFontStack: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono',\n\t'Courier New', monospace;\n$cmFontSize: 13px;\n$cmLineHeight: 1.65em;\n\n// Source: Knacss\n\n// Font families\n$font-family-base: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,\n\tOxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif !default; // system font stack\n$font-family-headings: 'Open Sans', sans-serif !default; // font for h1, h2.. h6\n$font-family-monospace: 'PT Mono', consolas, courier, monospace !default; // font for code and samples\n\n// Font sizes (1.6rem value is \"16px\" equivalent)\n$font-size-base: 1.6rem !default;\n\n$font-sizes: (\n\th1: (\n\t\tmobile: 2.8rem,\n\t\tdesktop: 3.2rem,\n\t),\n\th2: (\n\t\tmobile: 2.4rem,\n\t\tdesktop: 2.8rem,\n\t),\n\th3: (\n\t\tmobile: 2rem,\n\t\tdesktop: 2.4rem,\n\t),\n\th4: (\n\t\tmobile: 1.8rem,\n\t\tdesktop: 2rem,\n\t),\n\th5: (\n\t\tmobile: 1.6rem,\n\t\tdesktop: 1.8rem,\n\t),\n\th6: (\n\t\tmobile: 1.4rem,\n\t\tdesktop: 1.6rem,\n\t),\n\tbig: (\n\t\tmobile: 1.6rem,\n\t\tdesktop: 1.8rem,\n\t),\n\tbase: (\n\t\tmobile: 1.4rem,\n\t\tdesktop: $font-size-base,\n\t),\n\tnormal: (\n\t\tmobile: 1.2rem,\n\t\tdesktop: 1.4rem,\n\t),\n\tsmall: (\n\t\tmobile: 1rem,\n\t\tdesktop: 1.2rem,\n\t),\n\ttiny: (\n\t\tmobile: 0.8rem,\n\t\tdesktop: 1rem,\n\t),\n) !default;\n\n// Line heights\n$line-height-s: 1.3 !default;\n$line-height-base: 1.5 !default;\n$line-height-l: 1.7 !default;\n\n// Default margin-bottom\n$margin-bottom-base: 1rem !default;\n$headings-margin-bottom: math.div($margin-bottom-base, 2) !default;\n$paragraph-margin-bottom: $margin-bottom-base !default;\n\n// Font weights\n$weight-light: 200 !default;\n$weight-book: 300 !default;\n$weight-regular: 400 !default;\n$weight-medium: 500 !default;\n$weight-bold: 700 !default;\n","// Source: Knacss\n\n// font-size Mixin\n// compiles to font-size mobile + font-size desktop on small-plus devices\n// ex. h2 { @include font-size(h2);}\n@mixin font-size($elem) {\n\t$q: map-get($font-sizes, $elem);\n\t$mob: map-get($q, 'mobile');\n\t$desk: map-get($q, 'desktop');\n\tfont-size: $desk;\n}\n","// Source: https://medium.com/@dmitriy.borodiy/easy-color-theming-with-scss-bc38fd5734d1\n\n@mixin themify($themes: null) {\n\t@if (type-of($themes) != map) {\n\t\t@error \"Please supply a themes map to themify mixin\";\n\t} @else {\n\t\t@each $theme, $map in $themes {\n\t\t\t.theme-#{$theme} & {\n\t\t\t\t$theme-map: () !global;\n\t\t\t\t@each $key, $submap in $map {\n\t\t\t\t\t$value: map-get(map-get($themes, $theme), '#{$key}');\n\t\t\t\t\t$theme-map: map-merge(\n\t\t\t\t\t\t$theme-map,\n\t\t\t\t\t\t(\n\t\t\t\t\t\t\t$key: $value,\n\t\t\t\t\t\t)\n\t\t\t\t\t) !global;\n\t\t\t\t}\n\n\t\t\t\t@content;\n\t\t\t\t$theme-map: null !global;\n\t\t\t}\n\t\t}\n\t}\n}\n@function themed($key) {\n\t@return map-get($theme-map, $key);\n}\n","@import '../abstract';\n@import './common';\n\n$green: rgb(167, 255, 123);\n$blue: rgb(103, 211, 255);\n$pink: rgb(237, 123, 255);\n\n.cmTheme-dark1 {\n\tbackground-color: $ccs-secondary;\n\n\t.cmSong {\n\t\t@include base;\n\t\tcolor: $ccs-foreground;\n\t}\n\n\t// Sections\n\t.cmSectionLabel {\n\t\tcolor: $blue;\n\t\tfont-weight: bold;\n\t}\n\t.cmSectionMultiplier {\n\t\tcolor: $pink;\n\t}\n\n\t// Time signature\n\t.cmTimeSignature {\n\t\tcolor: $green;\n\t\tfont-weight: bold;\n\t}\n\n\t// Key declaration\n\t.cmKeyDeclaration {\n\t\tcolor: $green;\n\t\tfont-weight: bold;\n\t}\n\n\t// Chordline\n\t.cmChordLine {\n\t\tcolor: $ccs-accent;\n\t}\n\n\t.cmBarSeparator {\n\t\topacity: 0.5;\n\t}\n\n\t.cmChordDuration {\n\t\topacity: 0.7;\n\t}\n\n\t.cmSubBeatGroupOpener,\n\t.cmSubBeatGroupCloser {\n\t\topacity: 0.8;\n\t\tfont-weight: bold;\n\t}\n\n\t.cmChordLine-romanNumeral,\n\t.cmRomanNumeral {\n\t\tcolor: $ccs-accent;\n\t}\n\n\t.cmRomanNumeral-diatonic {\n\t\tfont-weight: bold;\n\t\tcolor: $ccs-background;\n\t\tbackground-color: $ccs-accent;\n\t}\n\n\t.cmRomanNumeral-borrowed {\n\t\tcolor: $ccs-background;\n\t\tbackground-color: rgba($ccs-accent, 0.7);\n\t}\n\n\t.cmRomanNumeral-unknown {\n\t\topacity: 0.8;\n\t}\n}\n","// Dracula theme\n$dracula-background: #282a36;\n$dracula-selection: #44475a;\n$dracula-foreground: #f8f8f2;\n$dracula-comment: #6272a4;\n$dracula-cyan: #8be9fd;\n$dracula-green: #50fa7b;\n$dracula-orange: #ffb86c;\n$dracula-pink: #ff79c6;\n$dracula-purple: #bd93f9;\n$dracula-red: #ff5555;\n$dracula-yellow: #f1fa8c;\n\n// Chord Chart Studio\n$whiteSmoke: rgba(244, 244, 244, 1);\n$onyx: rgba(48, 56, 70, 1);\n$charcoal: rgba(46, 64, 82, 1);\n$gunMetal: rgba(41, 49, 50, 1);\n$saffron: rgba(250, 191, 43, 1);\n$bitterSweet: rgba(255, 112, 96, 1);\n$screamingGreen: rgba(116, 241, 78, 1);\n\n$ccs-foreground: $whiteSmoke;\n$ccs-background: $onyx;\n$ccs-accent: $saffron;\n$ccs-primary: $charcoal;\n$ccs-secondary: $gunMetal;\n$ccs-red: $bitterSweet;\n$ccs-yellow: $saffron;\n$ccs-green: $screamingGreen;\n","@mixin base {\n\tfont-family: $font-stack;\n\tfont-size: 13px;\n\tline-height: 1.65em;\n\tpadding: 10px;\n\twhite-space: pre-wrap;\n\n\tp {\n\t\tmargin: 0;\n\t}\n}\n","$font-stack: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono',\n\t'Courier New', monospace;\n","@import '../abstract';\n@import './common';\n\n.cmTheme-dark2 {\n\tbackground-color: $dracula-background;\n\n\t.cmSong {\n\t\t@include base;\n\t\tcolor: $dracula-foreground;\n\t}\n\n\t// Sections\n\t.cmSectionLabel {\n\t\tcolor: $dracula-orange;\n\t\tfont-weight: bold;\n\t}\n\t.cmSectionMultiplier {\n\t\tcolor: $dracula-yellow;\n\t}\n\n\t// Time signature\n\t.cmTimeSignature {\n\t\tcolor: $dracula-yellow;\n\t\tfont-weight: bold;\n\t}\n\n\t// Key declaration\n\t.cmKeyDeclaration {\n\t\tcolor: $dracula-yellow;\n\t\tfont-weight: bold;\n\t}\n\n\t// Chordline\n\t.cmChordLine {\n\t\tcolor: $dracula-cyan;\n\t}\n\n\t.cmBarSeparator {\n\t\topacity: 0.5;\n\t}\n\n\t.cmChordDuration {\n\t\topacity: 0.7;\n\t}\n\n\t.cmSubBeatGroupOpener,\n\t.cmSubBeatGroupCloser {\n\t\topacity: 0.8;\n\t\tfont-weight: bold;\n\t}\n\n\t.cmChordLine-romanNumeral,\n\t.cmRomanNumeral {\n\t\tcolor: $dracula-cyan;\n\t}\n\n\t.cmRomanNumeral-diatonic {\n\t\tfont-weight: bold;\n\t\tcolor: $ccs-background;\n\t\tbackground-color: $dracula-cyan;\n\t}\n\n\t.cmRomanNumeral-borrowed {\n\t\tcolor: $ccs-background;\n\t\tbackground-color: rgba($dracula-cyan, 0.7);\n\t}\n\n\t.cmRomanNumeral-unknown {\n\t\topacity: 0.8;\n\t}\n}\n","@import '../abstract';\n@import './common';\n\n.cmTheme-dark3 {\n\tbackground-color: $dracula-background;\n\n\t.cmSong {\n\t\t@include base;\n\t\tcolor: $dracula-foreground;\n\t}\n\n\t// Sections\n\t.cmSectionLabel {\n\t\tcolor: $dracula-red;\n\t\tfont-weight: bold;\n\t}\n\t.cmSectionMultiplier {\n\t\tcolor: $dracula-yellow;\n\t}\n\n\t// Time signature\n\t.cmTimeSignature {\n\t\tcolor: $dracula-cyan;\n\t\tfont-weight: bold;\n\t}\n\n\t// Key declaration\n\t.cmKeyDeclaration {\n\t\tcolor: $dracula-cyan;\n\t\tfont-weight: bold;\n\t}\n\n\t// Chordline\n\t.cmChordLine {\n\t\tcolor: $dracula-green;\n\t}\n\n\t.cmBarSeparator {\n\t\topacity: 0.5;\n\t}\n\n\t.cmChordDuration {\n\t\topacity: 0.7;\n\t}\n\n\t.cmSubBeatGroupOpener,\n\t.cmSubBeatGroupCloser {\n\t\topacity: 0.8;\n\t\tfont-weight: bold;\n\t}\n\n\t.cmChordLine-romanNumeral,\n\t.cmRomanNumeral {\n\t\tcolor: $dracula-green;\n\t}\n\n\t.cmRomanNumeral-diatonic {\n\t\tfont-weight: bold;\n\t\tcolor: $ccs-background;\n\t\tbackground-color: $dracula-green;\n\t}\n\n\t.cmRomanNumeral-borrowed {\n\t\tcolor: $ccs-background;\n\t\tbackground-color: rgba($dracula-green, 0.7);\n\t}\n\n\t.cmRomanNumeral-unknown {\n\t\topacity: 0.8;\n\t}\n}\n","@import '../abstract';\n@import './common';\n\n.cmTheme-text {\n\t.cmSong {\n\t\t@include base;\n\t\tcolor: #333;\n\t}\n}\n","@import '../abstract';\n@import './common';\n\n.cmTheme-print {\n\tbackground-color: white;\n\n\t.cmSong {\n\t\t@include base;\n\t\tcolor: #333;\n\t\tfont-size: 12px;\n\t}\n\n\t// Sections\n\t.cmSectionLabel {\n\t\tfont-weight: bold;\n\t\ttext-decoration: underline;\n\t}\n\t.cmSectionMultiplier {\n\t\tfont-weight: normal;\n\t\ttext-decoration: unset;\n\t}\n\n\t// Time signature\n\t.cmTimeSignature {\n\t\tfont-weight: bold;\n\t}\n\n\t// Key declaration\n\t.cmKeyDeclaration {\n\t\tfont-weight: bold;\n\t}\n\n\t// Chordline\n\t.cmChordLine {\n\t}\n\n\t.cmBarSeparator {\n\t\topacity: 0.5;\n\t}\n\n\t.cmChordDuration {\n\t\topacity: 0.7;\n\t}\n\n\t.cmSubBeatGroupOpener,\n\t.cmSubBeatGroupCloser {\n\t\topacity: 0.8;\n\t\tfont-weight: bold;\n\t}\n}\n",".cmLine {\n\t.cmSong--fontSize-5 & {\n\t\tfont-size: 0.5em;\n\t\tline-height: 1.15em;\n\t}\n\t.cmSong--fontSize-4 & {\n\t\tfont-size: 0.6em;\n\t\tline-height: 1.25em;\n\t}\n\t.cmSong--fontSize-3 & {\n\t\tfont-size: 0.7em;\n\t\tline-height: 1.35em;\n\t}\n\t.cmSong--fontSize-2 & {\n\t\tfont-size: 0.8em;\n\t\tline-height: 1.45em;\n\t}\n\t.cmSong--fontSize-1 & {\n\t\tfont-size: 0.9em;\n\t\tline-height: 1.55em;\n\t}\n\t.cmSong--fontSize1 & {\n\t\tfont-size: 1.1em;\n\t\tline-height: 1.75em;\n\t}\n\t.cmSong--fontSize2 & {\n\t\tfont-size: 1.2em;\n\t\tline-height: 1.85em;\n\t}\n\t.cmSong--fontSize3 & {\n\t\tfont-size: 1.3em;\n\t\tline-height: 1.95em;\n\t}\n\t.cmSong--fontSize4 & {\n\t\tfont-size: 1.4em;\n\t\tline-height: 2.05em;\n\t}\n\t.cmSong--fontSize5 & {\n\t\tfont-size: 1.5em;\n\t\tline-height: 2.15em;\n\t}\n}\n\n.cmChordLyricLine {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\n\t.cmChordLyricPair {\n\t\tflex: 0 0 auto;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\n\t\t.cmChordLine,\n\t\t.cmLyricLine {\n\t\t\tflex: 0 0 auto;\n\t\t\twhite-space: pre;\n\t\t}\n\t}\n}\n","@import '../abstract';\n@import './common';\n\n.cmTheme-print2 {\n\tbackground-color: white;\n\n\t.cmSong {\n\t\t@include base;\n\t\tcolor: #333;\n\t\tfont-size: 14px;\n\t\tline-height: 1.4em;\n\t\tfont-family: 'Menlo', 'Courier New', Courier, monospace;\n\t}\n\n\t// Sections\n\t.cmSection {\n\t\tborder: 1px solid black;\n\t\tborder-radius: 8px;\n\t\tpadding: 0.4em;\n\t\tmargin: 0.2em 0 0.2em 0;\n\t\t// below line only needed for wkhtmltopdf\n\t\tbreak-inside: avoid;\n\t}\n\n\t.cmSection-Chorus {\n\t\tbackground-color: #ededed;\n\t}\n\n\t.cmSectionLabel {\n\t\tfont-weight: bold;\n\t\tfont-size: 0.85em;\n\t\ttext-transform: uppercase;\n\t}\n\t.cmSectionMultiplier {\n\t\ttext-decoration: unset;\n\t\tfont-size: 0.95em;\n\t}\n\n\t// Time signature\n\t.cmTimeSignature {\n\t\tfont-weight: bold;\n\t}\n\n\t// Key declaration\n\t.cmKeyDeclaration {\n\t\tfont-weight: bold;\n\t}\n\n\t// Empty Lines - Hide to save print space\n\t.cmEmptyLine {\n\t\tdisplay: none;\n\t}\n\n\t// Chordline\n\t.cmChordLine {\n\t\tfont-weight: bolder;\n\t}\n\n\t.cmBarSeparator {\n\t\topacity: 0.5;\n\t}\n\n\t.cmChordDuration {\n\t\topacity: 0.7;\n\t}\n\n\t.cmSubBeatGroupOpener,\n\t.cmSubBeatGroupCloser {\n\t\topacity: 0.8;\n\t\tfont-weight: bold;\n\t}\n}\n","@import '../../../scss/abstract';\n\n.ErrorBoundary {\n\tpadding: $spacer-medium;\n}\n","// Spacings\n$spacer-extra-tiny: 0.25rem !default;\n$spacer-tiny: 0.5rem !default;\n$spacer-tiny-plus: 0.7rem !default;\n$spacer-small: 1rem !default;\n$spacer-small-plus: 1.5rem !default;\n$spacer-medium: 2rem !default;\n$spacer-medium-plus: 3rem !default;\n$spacer-large: 4rem !default;\n$spacer-large-plus: 6rem !default;\n$spacer-extra-large: 8rem !default;\n$spacer-extra-large-plus: 12rem !default;\n$spacer-ultra-large: 16rem !default;\n$spacer-ultra-large-plus: 20rem !default;\n","@import '../../../../../scss/abstract';\n@import '../themes';\n\nhtml,\nbody,\n#app {\n\theight: 100%;\n\tpadding: 0;\n}\n\n.appLayout-wrapper {\n\twidth: 100%;\n\theight: 100%;\n\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n}\n\n// Sidebars\n\n.leftBar {\n\tflex-shrink: 0;\n\twidth: 15%;\n\tmax-width: 250px;\n\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\n\t&.leftBar-isCollapsed {\n\t\twidth: 48px;\n\t}\n\n\t@include themify($themes) {\n\t\tcolor: themed('leftBar-txt');\n\t\tbackground-color: themed('leftBar-bg');\n\n\t\t&.leftBar-isCollapsed {\n\t\t\tborder-right: 1px solid themed('leftBar-border');\n\n\t\t\t&:hover {\n\t\t\t\tbackground-color: themed('leftBar-bgHover');\n\t\t\t}\n\t\t}\n\t}\n\n\t@media print {\n\t\tdisplay: none;\n\t}\n}\n\n.rightBar {\n\tflex-shrink: 0;\n\twidth: 15%;\n\tmax-width: 250px;\n\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\n\t&.rightBar-isCollapsed {\n\t\twidth: 48px;\n\t}\n\n\t@include themify($themes) {\n\t\tcolor: themed('rightBar-txt');\n\t\tbackground-color: themed('rightBar-bg');\n\n\t\t&.rightBar-isCollapsed {\n\t\t\tborder-left: 1px solid themed('rightBar-border');\n\n\t\t\t&:hover {\n\t\t\t\tbackground-color: themed('rightBar-bgHover');\n\t\t\t}\n\t\t}\n\t}\n\n\t@media print {\n\t\tdisplay: none;\n\t}\n}\n\n.leftBar-content {\n\toverflow-y: scroll;\n\tflex: 1 1 auto;\n\n\t.leftBar-isCollapsed & {\n\t\tpadding: $spacer-tiny $spacer-small;\n\t\ttext-align: center;\n\t\tcursor: pointer;\n\t\toverflow: hidden;\n\t}\n}\n\n.rightBar-content {\n\toverflow-y: scroll;\n\tflex: 1 1 auto;\n\n\t.rightBar-isCollapsed & {\n\t\tpadding: $spacer-tiny $spacer-small;\n\t\ttext-align: center;\n\t\tcursor: pointer;\n\t\toverflow: hidden;\n\t}\n}\n\n.leftBar-collapser {\n\tflex: 0 0 12px;\n\tdisplay: flex;\n\tcursor: pointer;\n\n\t.leftBar-isCollapsed & {\n\t\tdisplay: none;\n\t}\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('leftBar-collapser-bg');\n\t\tborder-right: 1px solid themed('leftBar-collapser-border');\n\n\t\t&:hover {\n\t\t\tbackground-color: themed('leftBar-collapser-bgHover');\n\t\t}\n\t}\n\n\t@include themify($themes) {\n\t\tcolor: themed('leftBar-collapser-txt');\n\t}\n}\n\n.leftBar-collapserIcon {\n\tflex: 1 1 auto;\n\talign-self: center;\n\tfont-weight: $weight-bold;\n\n\t.icon {\n\t\t@include font-size(small);\n\t}\n}\n\n.rightBar-collapser {\n\tflex: 0 0 12px;\n\tdisplay: flex;\n\tcursor: pointer;\n\n\t.rightBar-isCollapsed & {\n\t\tdisplay: none;\n\t}\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('rightBar-collapser-bg');\n\t\tborder-left: 1px solid themed('rightBar-collapser-border');\n\n\t\t&:hover {\n\t\t\tbackground-color: themed('rightBar-collapser-bgHover');\n\t\t}\n\t}\n\n\t@include themify($themes) {\n\t\tcolor: themed('rightBar-collapser-txt');\n\t}\n}\n\n.rightBar-collapserIcon {\n\tflex: 1 1 auto;\n\talign-self: center;\n\tfont-weight: $weight-bold;\n\n\t.icon {\n\t\t@include font-size(small);\n\t}\n}\n\n// Main area\n\n.appLayout-main {\n\tflex-grow: 1;\n\n\tdisplay: flex;\n\tflex-direction: column;\n\tflex-wrap: nowrap;\n}\n\n.appLayout-header {\n\tflex-shrink: 0;\n\n\t@include themify($themes) {\n\t\tcolor: themed('header-txt');\n\t\tbackground-color: themed('header-bg');\n\t\tborder-bottom: 3px solid themed('header-border');\n\t}\n\n\t@media print {\n\t\tdisplay: none;\n\t}\n}\n\n.appLayout-content {\n\toverflow-y: auto;\n\tflex-grow: 1;\n\n\t@media print {\n\t\toverflow-y: visible;\n\t}\n}\n\n.appLayout-footer {\n\t@include themify($themes) {\n\t\tcolor: themed('footer-txt');\n\t}\n\n\t@media print {\n\t\tdisplay: none;\n\t}\n}\n","@import '../../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\tlogo-txt: cv(dark-foreground),\n\t),\n);\n\n.logo-isExpanded {\n\tbox-sizing: border-box;\n\tpadding: $spacer-small-plus 0 $spacer-small;\n\twidth: 100%;\n\n\t.leftBar-isCollapsed & {\n\t\tdisplay: none;\n\t}\n}\n\n.logo-img {\n\tmargin: 0 auto;\n\twidth: 70%;\n\tsvg {\n\t\tfill: #fff;\n\t\taspect-ratio: 1.25 / 1;\n\t\twidth: 80%;\n\t\tmargin: 5px auto 10px auto;\n\t\tdisplay: block;\n\t}\n}\n","@import '../../../../../scss/abstract';\n@import '../themes';\n\n.mainNav-entries {\n\tmargin: 0;\n\tpadding: 0;\n\tdisplay: flex;\n\tjustify-content: center;\n\n\tlist-style-type: none;\n\t@include font-size(base);\n\tfont-family: $font-family-headings;\n\tfont-weight: 400;\n\tvertical-align: middle;\n}\n\n.mainNavEntry {\n\tdisplay: inline-block;\n\tpadding: $spacer-small $spacer-medium;\n\tcursor: default;\n\tfont-weight: bold;\n\n\t&:hover:not(.mainNavEntry-isActive) {\n\t\tcursor: pointer;\n\t}\n\n\t&:hover:not(.mainNavEntry-isDisabled):not(.mainNavEntry-isActive) {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('header-txtHover');\n\t\t\tbackground-color: themed('header-bgHover');\n\t\t}\n\t}\n\n\t&.mainNavEntry-isActive {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('header-txtActive');\n\t\t\tbackground-color: themed('header-bgActive');\n\t\t}\n\t}\n\n\t&.mainNavEntry-isDisabled {\n\t\tuser-select: none;\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('header-txtDisabled');\n\t\t\tbackground-color: themed('header-bgDisabled');\n\t\t\tcursor: not-allowed;\n\t\t}\n\t}\n}\n\n.mainNavEntry-icon {\n\t.icon {\n\t\tmargin-right: $spacer-tiny;\n\t\t@include font-size(normal);\n\t}\n}\n","@import '../../../scss/abstract';\n\n.icon {\n\tvertical-align: middle;\n}\n","@import '../../../../scss/abstract';\n\n.userGuide-isExpanded {\n\tmargin-left: $spacer-small;\n\n\t.rightBar-isCollapsed & {\n\t\tdisplay: none;\n\t}\n}\n\n.userGuide-isCollapsed {\n\tpadding: $spacer-small 0;\n\n\t.rightBar:not(.rightBar-isCollapsed) & {\n\t\tdisplay: none;\n\t}\n}\n","@import '../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\t// primary\n\t\tbutton-primary-txt: cv(dark-primary, dark10),\n\t\tbutton-primary-txtHover: cv(dark-secondary, dark20),\n\t\tbutton-primary-txtActive: cv(dark-primary),\n\t\tbutton-primary-txtDisabled: cv(dark-secondary, light10),\n\t\tbutton-primary-bg: cv(dark-accent),\n\t\tbutton-primary-bgHover: cv(dark-accent, light20),\n\t\tbutton-primary-bgActive: cv(dark-accent, light30),\n\t\tbutton-primary-bgDisabled: cv(dark-secondary, light20),\n\t\t// primary\n\t\tbutton-secondary-txt: cv(dark-secondary, dark10),\n\t\tbutton-secondary-txtHover: cv(dark-secondary, dark20),\n\t\tbutton-secondary-txtActive: cv(dark-primary),\n\t\tbutton-secondary-txtDisabled: cv(dark-secondary, light10),\n\t\tbutton-secondary-bg: cv(dark-foreground, dark30),\n\t\tbutton-secondary-bgHover: cv(dark-foreground, dark20),\n\t\tbutton-secondary-bgActive: cv(dark-foreground, dark10),\n\t\tbutton-secondary-bgDisabled: cv(dark-secondary, light20),\n\t),\n);\n\nbutton {\n\tborder: 0;\n\tborder-radius: 0;\n\tbackground-color: transparent;\n}\n\n.Button {\n\tdisplay: inline-block;\n\tpadding: 10px 20px;\n\tfont-weight: bold;\n\ttext-transform: capitalize;\n\tmargin: 10px 20px 10px 0;\n\n\t&:hover {\n\t\tcursor: pointer;\n\t}\n\n\t&:last-of-type {\n\t\tmargin-right: 0;\n\t}\n}\n\n.Button-primary:not(.Button-isDisabled) {\n\t@include themify($themes) {\n\t\tbackground-color: themed('button-primary-bg');\n\t\tcolor: themed('button-primary-txt');\n\t}\n\n\t&:hover {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('button-primary-txtHover');\n\t\t\tbackground-color: themed('button-primary-bgHover');\n\t\t}\n\t}\n\n\t&:active {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('button-primary-txtActive');\n\t\t\tbackground-color: themed('button-primary-bgActive');\n\t\t}\n\t}\n}\n\n.Button-primary.Button-isDisabled {\n\tcursor: not-allowed;\n\t@include themify($themes) {\n\t\tbackground-color: themed('button-primary-bgDisabled');\n\t\tcolor: themed('button-primary-txtDisabled');\n\t}\n}\n\n.Button-secondary:not(.Button-isDisabled) {\n\t@include themify($themes) {\n\t\tbackground-color: themed('button-secondary-bg');\n\t\tcolor: themed('button-secondary-txt');\n\t}\n\n\t&:hover {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('button-secondary-txtHover');\n\t\t\tbackground-color: themed('button-secondary-bgHover');\n\t\t}\n\t}\n\n\t&:active {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('button-secondary-txtActive');\n\t\t\tbackground-color: themed('button-secondary-bgActive');\n\t\t}\n\t}\n}\n\n.Button-secondary.Button-isDisabled {\n\tcursor: not-allowed;\n\t@include themify($themes) {\n\t\tbackground-color: themed('button-secondary-bgDisabled');\n\t\tcolor: themed('button-secondary-txtDisabled');\n\t}\n}\n","@import '../../../../scss/abstract';\n\n.versions-isExpanded {\n\tmargin: $spacer-large 0;\n\tpadding: 0 $spacer-small;\n\topacity: 0.5;\n\n\t@include font-size(tiny);\n\n\t.rightBar-isCollapsed & {\n\t\tdisplay: none;\n\t}\n\n\ta {\n\t\tcolor: inherit;\n\t\t&:hover {\n\t\t\topacity: 0.7;\n\t\t}\n\t}\n}\n","@import '../../../scss/abstract';\n@import '../themes';\n\n.sim-SongImporterModal_Container {\n\tposition: absolute;\n\ttop: 50%;\n\tleft: 50%;\n\ttransform: translate(-50%, -50%);\n\twidth: 90%;\n\theight: 90%;\n\n\tdisplay: flex;\n\tflex-direction: column;\n\talign-items: stretch;\n\talign-content: stretch;\n\tflex-wrap: nowrap;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('modal-bg');\n\t\tborder: 1px solid themed('modal-border');\n\t\tcolor: themed('modal-txt');\n\t}\n}\n\n.sim-Header_Container {\n\tflex: 0 0 auto;\n\tdisplay: flex;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('header-bg');\n\t\tborder-bottom: 1px solid themed('header-border');\n\t\tcolor: themed('header-txt');\n\t}\n}\n\n.sim-Header_Title {\n\tflex: 1 1 auto;\n\tpadding: 20px;\n\t@include font-size(base);\n\tfont-weight: bolder;\n}\n\n.sim-Header_Actions {\n\tflex: 0 0 auto;\n\tpadding: 0 10px;\n}\n\n.sim-TwoColumns_Container {\n\tdisplay: flex;\n\talign-self: stretch;\n}\n\n.sim-TwoColumns_Container-autoHeight {\n\tflex: 0 1 100%;\n\tmin-height: 0; // necessary, otherwise content doesn't scroll!\n}\n\n.sim-Column_Container {\n\tflex: 1 1 50%;\n\talign-self: stretch;\n\tpadding: 0 10px;\n\n\t&:first-child {\n\t\tpadding-right: 5px;\n\t}\n\t&:last-child {\n\t\tpadding-left: 5px;\n\t}\n}\n\n.sim-Input_Header {\n\theight: 20px;\n\ttext-transform: uppercase;\n\tpadding: 2px;\n\ttext-align: center;\n\t@include font-size(small);\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('inputHeader-bg');\n\t\tcolor: themed('inputHeader-txt');\n\t}\n}\n\n.sim-Input_Textarea {\n\tbox-sizing: border-box;\n\tpadding: 10px;\n\twidth: 100%;\n\theight: calc(100% - 24px - 10px);\n\tmax-height: calc(100% - 24px - 10px);\n\toverflow-y: scroll;\n\tresize: none;\n\tmargin: 0;\n\tbackground-color: transparent;\n\tborder: 0;\n\toutline: none;\n\n\tfont-family: $font-family-monospace;\n\t@include font-size(small);\n\tline-height: 1.5rem;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('input-bg');\n\t\tcolor: themed('input-txt');\n\t}\n}\n\n.sim-Input_Textarea-Disabled {\n\topacity: 0.5;\n}\n\n.sim-Preview_Container {\n\tbox-sizing: border-box;\n\n\tfont-family: $font-family-monospace;\n\t@include font-size(small);\n\twhite-space: pre-wrap;\n\theight: calc(100% - 24px - 10px);\n\tmax-height: calc(100% - 24px - 10px);\n\toverflow-y: scroll;\n\tpadding: 10px;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('preview-bg');\n\t}\n}\n\n.sim-Preview_Error {\n\tpadding: 10px;\n\t@include themify($themes) {\n\t\tcolor: themed('previewError-txt');\n\t\tbackground-color: themed('previewError-bg');\n\t}\n}\n\n.sim-InputFile_Input {\n\t// https://tympanus.net/codrops/2015/09/15/styling-customizing-file-inputs-smart-way/\n\twidth: 0.1px;\n\theight: 0.1px;\n\topacity: 0;\n\toverflow: hidden;\n\tposition: absolute;\n\tz-index: -1;\n}\n\n.sim-InputFormat {\n\tpadding: 10px 0;\n}\n\n.sim-InputFormat_Entry {\n\tdisplay: inline-block;\n\tmargin: 0 10px;\n\n\t&:hover {\n\t\tcursor: pointer;\n\t}\n}\n\n.sim-InputFormat_Label {\n\t&:hover {\n\t\tcursor: pointer;\n\t}\n}\n\n.sim-InputFormat_Entry-Disabled,\n.sim-InputFormat_Label-Disabled {\n\t&:hover {\n\t\tcursor: not-allowed;\n\t}\n\topacity: 0.5;\n}\n","@import '../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\tmodal-bg: cv(dark-secondary, dark5),\n\t\tmodal-border: cv(dark-foreground, dark20),\n\t\tmodal-txt: cv(dark-foreground),\n\t),\n);\n\n.mod-ModalContainer {\n\tz-index: $zindex-modal;\n\theight: 100%;\n\twidth: 100%;\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n}\n\n.mod-Overlay {\n\theight: 100%;\n\twidth: 100%;\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\topacity: 0.7;\n\tbackground-color: black;\n}\n\n.mod-ContentContainer {\n}\n\n.mod-ModalConfirmContainer {\n\tz-index: $zindex-modal;\n\n\tposition: absolute;\n\ttop: 50%;\n\tleft: 50%;\n\ttransform: translate(-50%, -50%);\n\twidth: auto;\n\theight: auto;\n\n\tpadding: 10px 20px;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('modal-bg');\n\t\tborder: 1px solid themed('modal-border');\n\t\tcolor: themed('modal-txt');\n\t}\n}\n\n.mod-ModalConfirmButtons {\n\ttext-align: center;\n}\n","@import '../../../scss/abstract';\n@import '../themes';\n\n.fileManager-isExpanded {\n\t@include font-size(small);\n\n\t.leftBar-isCollapsed & {\n\t\tdisplay: none;\n\t}\n}\n\n.fileManager-isCollapsed {\n\tpadding: $spacer-small 0;\n\t.leftBar:not(.leftBar-isCollapsed) & {\n\t\tdisplay: none;\n\t}\n}\n\n.fileManager-actionsList {\n\tpadding: $spacer-small;\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: wrap;\n\t@include themify($themes) {\n\t\tbackground-color: themed('actions-bg');\n\t}\n}\n\n.fileManagerAction {\n\tflex: 0 1 auto;\n\tpadding: $spacer-tiny;\n\tmargin-right: $spacer-tiny;\n\twhite-space: nowrap;\n\n\t&:hover {\n\t\tcursor: not-allowed;\n\t}\n\n\t&:hover:not(.fileManagerAction-isDisabled) {\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('action-bgHover');\n\t\t}\n\t\tcursor: pointer;\n\t}\n}\n\n.fileManagerAction-isDisabled {\n\tuser-select: none;\n\n\topacity: 0.5;\n}\n\n.fileManagerAction-icon {\n\t.icon {\n\t\t@include font-size(normal);\n\t}\n}\n\n.fileManager-entriesList {\n\tpadding-left: 0;\n\tlist-style: none;\n}\n\n.fileManagerEntry {\n\tcursor: pointer;\n\tpadding: 0.1rem 0;\n\n\t&:hover {\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('fileEntry-bgHover');\n\t\t}\n\t}\n\n\t&.fileManagerEntry-isSelected {\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('fileEntry-bgActive');\n\t\t}\n\t}\n}\n\n.fileManagerEntry-input {\n\tbox-sizing: border-box;\n\twidth: 100%;\n\tpadding: 0 $spacer-small;\n\n\tbackground-color: transparent;\n\tborder: none;\n\tcursor: pointer;\n\toutline: none;\n\t@include themify($themes) {\n\t\tcolor: themed('fileEntry-txt');\n\t}\n\n\t.fileManagerEntry-isSelected & {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('fileEntry-txtActive');\n\t\t}\n\t}\n\n\t.fileManagerEntry-isRenamed & {\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('fileEntry-bgRenamed');\n\t\t\tcolor: themed('fileEntry-txtRenamed');\n\t\t}\n\t\tcursor: text;\n\t}\n}\n","@import '../../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\teditorSrc-bg: cv(dark-secondary, dark5),\n\t\tinputHeader-txt: cv(dark-foreground, fade),\n\t\tinputHeader-bg: cv(dark-secondary, light10),\n\t\tinputHeader-gutter: cv(dark-secondary, dark5),\n\t),\n);\n\n$headerVPadding: 3px;\n$headerHeight: 20px;\n\n.songEditor-headers {\n\tdisplay: flex;\n\n\theight: $headerHeight;\n\ttext-transform: uppercase;\n\tpadding: $headerVPadding 0;\n\ttext-align: center;\n\t@include font-size(small);\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('inputHeader-bg');\n\t\tcolor: themed('inputHeader-txt');\n\t}\n}\n\n.songEditor-sourceHeader {\n\tflex: 0 1 50%;\n}\n\n.songEditor-previewHeader {\n\tflex: 0 1 50%;\n}\n\n.songEditor {\n\twidth: 100%;\n\theight: calc(100% - #{$headerHeight + $headerVPadding * 2});\n\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n}\n\n.songEditor-source {\n\tflex: 0 1 50%;\n\tdisplay: flex;\n\toverflow-y: scroll;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('editorSrc-bg');\n\t}\n}\n\n.songEditor-preview {\n\tflex: 0 1 50%;\n\toverflow-y: scroll;\n}\n","@import '../../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\teditorPreview-txt: cv(dark-foreground, dark10),\n\t),\n);\n\n.editorPreview {\n\tbox-sizing: border-box;\n\tpadding: $spacer-tiny;\n\tmin-height: 100%;\n}\n\n.cmTheme-fadeRepeats {\n\t.cmLine--isFromAutoRepeatChords,\n\t.cmLine--isFromChordLineRepeater,\n\t.cmLine--isFromSectionCopy,\n\t.cmLine--isFromSectionMultiply {\n\t\topacity: 0.5;\n\t}\n}\n","@import '../../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\teditor-txt: cv(dark-foreground, dark10),\n\t),\n);\n\n.prosemirrorWrapper {\n\tflex: 1 1 auto;\n\tpadding: 15px 0;\n}\n\n.ProseMirror {\n\theight: 100%;\n\toutline: none;\n\n\tfont-family: $cmFontStack;\n\tfont-size: $cmFontSize;\n\tline-height: $cmLineHeight;\n\n\t@include themify($themes) {\n\t\tcolor: themed('editor-txt');\n\t}\n\n\tp {\n\t\tmargin: 0;\n\t\tpadding: 0 $spacer-small;\n\t}\n}\n",".ProseMirror {\n position: relative;\n}\n\n.ProseMirror {\n word-wrap: break-word;\n white-space: pre-wrap;\n white-space: break-spaces;\n -webkit-font-variant-ligatures: none;\n font-variant-ligatures: none;\n font-feature-settings: \"liga\" 0; /* the above doesn't seem to work in Edge */\n}\n\n.ProseMirror pre {\n white-space: pre-wrap;\n}\n\n.ProseMirror li {\n position: relative;\n}\n\n.ProseMirror-hideselection *::selection { background: transparent; }\n.ProseMirror-hideselection *::-moz-selection { background: transparent; }\n.ProseMirror-hideselection { caret-color: transparent; }\n\n/* See https://github.com/ProseMirror/prosemirror/issues/1421#issuecomment-1759320191 */\n.ProseMirror [draggable][contenteditable=false] { user-select: text }\n\n.ProseMirror-selectednode {\n outline: 2px solid #8cf;\n}\n\n/* Make sure li selections wrap around markers */\n\nli.ProseMirror-selectednode {\n outline: none;\n}\n\nli.ProseMirror-selectednode:after {\n content: \"\";\n position: absolute;\n left: -32px;\n right: -2px; top: -2px; bottom: -2px;\n border: 2px solid #8cf;\n pointer-events: none;\n}\n\n/* Protect against generic img rules */\n\nimg.ProseMirror-separator {\n display: inline !important;\n border: none !important;\n margin: 0 !important;\n}\n","@import '../../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\tsong-txt: cv(dark-foreground),\n\t\tsong-bg: cv(dark-secondary),\n\t),\n);\n\n.exportPreview {\n\tbox-sizing: border-box;\n\tmin-height: 100%;\n\tpadding: $spacer-small;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('song-bg');\n\t\tcolor: themed('song-txt');\n\t}\n}\n\n.exp-SongRenderer {\n\tfont-family: $cmFontStack;\n\tfont-size: $cmFontSize;\n\tline-height: $cmLineHeight;\n\n\tpadding: 15px;\n\twhite-space: pre-wrap;\n\tcolor: #333;\n\n\tp {\n\t\tmargin: 0;\n\t}\n\n\t.txtLine {\n\t\tdisplay: block;\n\t}\n\n\t@include themify($themes) {\n\t\tcolor: themed('song-txt') !important;\n\t}\n}\n","@import '../../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\tplayRenderer-bg: cv(dark-secondary),\n\t),\n);\n\n// Those wrapper are used so the columned div can use height: 100% inside a div with margins\n// We use the trick with an \"absolute\" positioned that fills the available height\n.playRendererWrapper1 {\n\tposition: relative; // needs to be relative so the \"absolute\" trick works to fill the height\n\theight: 100%;\n\toverflow-y: scroll;\n}\n\n.playRendererWrapper2 {\n\tposition: absolute;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\tleft: 0;\n}\n\n.playRenderer {\n\tbox-sizing: border-box;\n\tmin-height: 100%;\n\n\t.cmSong {\n\t\tpadding: 0 !important;\n\t}\n}\n\n.playRenderer--columns-1 {\n\tcolumn-count: 1;\n\tpadding: $spacer-small;\n}\n.playRenderer--columns-2 {\n\tcolumn-count: 2;\n\tcolumn-fill: auto;\n\theight: 100%;\n\tpadding: $spacer-small;\n}\n.playRenderer--columns-3 {\n\tcolumn-count: 3;\n\tcolumn-fill: auto;\n\theight: 100%;\n\tpadding: $spacer-small;\n}\n.playRenderer--columns-4 {\n\tcolumn-count: 4;\n\tcolumn-fill: auto;\n\theight: 100%;\n\tpadding: $spacer-small;\n}\n","@import '././././scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\tsong-txt: cv(dark-background),\n\t\tsong-bg: cv(dark-foreground),\n\t\tdesktop-bg: cv(dark-secondary),\n\t),\n);\n\n.printPreview {\n\toverflow: hidden;\n\tmin-height: 100%;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('desktop-bg');\n\t}\n\n\t@media print {\n\t\tbackground-color: white !important;\n\t\toverflow-y: auto;\n\t}\n}\n\n.printPreview-page {\n\t// see size and font-size definitions below\n\n\tposition: relative;\n\tmargin: $spacer-medium auto;\n\tbackground-color: white;\n\n\t@media print {\n\t\tmargin: 0;\n\t\tpage-break-after: auto;\n\t}\n}\n\n// This wrapper is used for the page padding and to fill all available height\n.printPreview-pageContentWrapper {\n\t// see padding definitions below\n\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tbottom: 0;\n\tright: 0;\n}\n\n// Flex container for header + columnsWrapper\n.printPreview-pageContent {\n\tdisplay: flex;\n\tflex-direction: column;\n\tflex-wrap: nowrap;\n\n\theight: 100%;\n}\n\n.printPreview-pageHeader {\n\tfont-family:\n\t\tsystem-ui,\n\t\t-apple-system,\n\t\tBlinkMacSystemFont,\n\t\t'Segoe UI',\n\t\tHelvetica,\n\t\tArial,\n\t\tsans-serif,\n\t\t'Apple Color Emoji',\n\t\t'Segoe UI Emoji',\n\t\t'Segoe UI Symbol';\n\t@include font-size(big);\n\tfont-weight: $weight-bold;\n\n\tmargin-bottom: $spacer-small;\n}\n\n// flex container for columns\n.printPreview-pageColumnWrapper {\n\tflex: 1;\n\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n}\n\n.printPreview-pageColumn {\n\tflex: 1 1 0;\n\tmargin: 0 $spacer-tiny-plus;\n\n\t&:first-of-type {\n\t\tmargin-left: 0;\n\t}\n\n\t&:last-of-type {\n\t\tmargin-right: 0;\n\t}\n}\n\n// Document Size definitions\n.printPreview-page--a4 {\n\twidth: 210mm;\n\theight: 297mm;\n}\n\n.printPreview-page--booxmax2pro {\n\twidth: 698px;\n\theight: 930px;\n}\n\n// Margin definitions\n.printPreview-pageContentWrapper--padding1 {\n\tpadding: 3mm;\n}\n.printPreview-pageContentWrapper--padding2 {\n\tpadding: 6mm;\n}\n.printPreview-pageContentWrapper--padding3 {\n\tpadding: 9mm;\n}\n.printPreview-pageContentWrapper--padding4 {\n\tpadding: 12mm;\n}\n.printPreview-pageContentWrapper--padding5 {\n\tpadding: 15mm;\n}\n\n.cmTheme-print {\n\t.cmSong {\n\t\tpadding: 0 !important;\n\t}\n}\n",".measuring-node {\n\tvisibility: hidden;\n\tposition: absolute;\n\tz-index: -1;\n}\n","@import '../../../../scss/abstract';\n\n.renderingOptionsPanel-isExpanded {\n\t.rightBar-isCollapsed & {\n\t\tdisplay: none;\n\t}\n}\n\n.renderingOptionsPanel-isCollapsed {\n\tpadding: $spacer-small 0;\n\n\t.rightBar:not(.rightBar-isCollapsed) & {\n\t\tdisplay: none;\n\t}\n}\n","@import '../../../../../scss/abstract';\n@import '../_themes.scss';\n\n.sb-optionsGroup {\n\tpadding-top: $spacer-medium;\n\n\t&:first-of-type {\n\t\tpadding-top: 0;\n\t}\n}\n\n.sb-optionsGroup-title {\n\tuser-select: none;\n\n\tpadding: $spacer-tiny $spacer-small $spacer-tiny $spacer-tiny;\n\n\t@include font-size(normal);\n\tfont-weight: $weight-bold;\n\n\t@include themify($themes) {\n\t\tborder-bottom: 2px solid themed('optionsGroup-border');\n\t}\n\n\t.sb-optionsGroup-isNotInteractable & {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('option-isDisabled');\n\t\t}\n\t}\n}\n\n.sb-optionsGroup-content {\n}\n\n.sb-optionsGroup-iconTitle {\n\t.icon {\n\t\t@include font-size(base);\n\t}\n}\n\n.sb-optionsGroup-iconToggle {\n\t.icon {\n\t\t@include font-size(big);\n\t}\n}\n","@import '../../../../../scss/abstract';\n@import '../_themes.scss';\n\n.sb-optionSelect {\n\t@include font-size(small);\n\n\tpadding: $spacer-tiny $spacer-small-plus $spacer-tiny $spacer-small;\n\n\t@include themify($themes) {\n\t\tborder-bottom: 1px dotted themed('option-border');\n\t}\n\n\t.sb-optionsGroup & {\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('optionsGroup-option-bg');\n\t\t}\n\t}\n\n\t&.sb-optionSelect-isNotInteractable {\n\t\tuser-select: none;\n\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('option-isDisabled');\n\t\t}\n\t}\n\n\t&:hover {\n\t\tcursor: not-allowed;\n\t}\n\n\t&:hover:not(.sb-optionSelect-isNotInteractable) {\n\t\tcursor: pointer;\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('option-bgHover');\n\t\t}\n\t}\n}\n\n.sb-optionSelect-title {\n\tdisplay: flex;\n}\n\n.sb-optionSelect-desc {\n\tflex: 1 1 auto;\n}\n\n.sb-optionSelect-toggle {\n\tflex: 0 0 auto;\n}\n\n.sb-optionSelect-icon {\n\t.icon {\n\t\t@include font-size(big);\n\t}\n}\n\n.sb-optionSelectChoice-activeLabel {\n\topacity: 0.5;\n}\n\n.sb-optionSelectChoice {\n\tpadding-top: $spacer-tiny;\n\tdisplay: flex;\n\n\t&:hover:not(.sb-optionSelectChoice-isNotInteractable) {\n\t\ttext-decoration: underline;\n\t\tcursor: pointer;\n\t}\n}\n\n.sb-optionSelectChoice-isSelected {\n\tfont-weight: $weight-bold;\n}\n\n.sb-optionSelectChoice-check {\n\tflex: 0 0 20px;\n}\n\n.sb-optionSelectChoice-checkIcon {\n\t.icon {\n\t\t@include font-size(small);\n\t}\n}\n\n.sb-optionSelectChoice-label {\n\tflex: 1 1 auto;\n}\n","@import '../../../../../scss/abstract';\n@import '../_themes.scss';\n\n.sb-optionSlider {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\n\t@include font-size(small);\n\n\tpadding: $spacer-tiny $spacer-small-plus $spacer-tiny $spacer-small;\n\n\t@include themify($themes) {\n\t\tborder-bottom: 1px dotted themed('option-border');\n\t}\n\n\t.sb-optionsGroup & {\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('optionsGroup-option-bg');\n\t\t}\n\t}\n\n\t&.sb-optionSlider-isNotInteractable {\n\t\tuser-select: none;\n\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('option-isDisabled');\n\t\t}\n\t}\n\n\t&:hover {\n\t\tcursor: not-allowed;\n\t}\n\n\t&:hover:not(.sb-optionSlider-isNotInteractable) {\n\t\tcursor: pointer;\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('option-bgHover');\n\t\t}\n\t}\n}\n\n.sb-optionSlider-desc {\n\tflex: 1 1 auto;\n}\n\n.sb-optionSlider-value {\n\tflex: 0 0 auto;\n\tvertical-align: middle;\n\n\t@include font-size(small);\n}\n\n.sb-optionSlider-range {\n\tflex: 1 1 100%;\n\n\tinput[type='range'] {\n\t\t@include themify($themes) {\n\t\t\t@include input-type-range(\n\t\t\t\t$thumb-color: themed('range-thumb'),\n\t\t\t\t$track-color: themed('range-track')\n\t\t\t);\n\t\t}\n\n\t\t&:disabled {\n\t\t\topacity: 0.35;\n\t\t\tcursor: not-allowed !important;\n\t\t}\n\t}\n}\n","// Adapted from https://github.com/Jimdo/range-slider-sass\n@use 'sass:math';\n\n@mixin shadow($shadow-size, $shadow-blur, $shadow-color) {\n\tbox-shadow:\n\t\t$shadow-size $shadow-size $shadow-blur $shadow-color,\n\t\t0 0 $shadow-size lighten($shadow-color, 5%);\n}\n\n@mixin track($track-width, $track-height) {\n\twidth: $track-width;\n\theight: $track-height;\n\tcursor: pointer;\n\tanimation: 0.2s;\n}\n\n@mixin thumb(\n\t$thumb-width,\n\t$thumb-height,\n\t$thumb-border-width,\n\t$thumb-border-color,\n\t$thumb-radius,\n\t$thumb-color\n) {\n\t//@include shadow($thumb-shadow-size, $thumb-shadow-blur, $thumb-shadow-color);\n\twidth: $thumb-width;\n\theight: $thumb-height;\n\tcursor: pointer;\n\tborder: $thumb-border-width solid $thumb-border-color;\n\tborder-radius: $thumb-radius;\n\tbackground: $thumb-color;\n}\n\n@mixin input-type-range(\n\t$thumb-color: red,\n\t$thumb-radius: 0,\n\t$thumb-height: 10px,\n\t$thumb-width: 15px,\n\t$thumb-shadow-size: 0,\n\t$thumb-shadow-blur: 0,\n\t$thumb-shadow-color: rgba(0, 0, 0, 0),\n\t$thumb-border-width: 0,\n\t$thumb-border-color: black,\n\t$track-color: blue,\n\t$track-radius: 0,\n\t$track-width: 100%,\n\t$track-height: 10px,\n\t$track-shadow-size: 0,\n\t$track-shadow-blur: 0,\n\t$track-shadow-color: rgba(0, 0, 0, 0),\n\t$track-border-width: 0,\n\t// might not be taken into account everywhere, see belo\n\t$track-border-color: black\n) {\n\t-webkit-appearance: none;\n\twidth: $track-width;\n\tbackground: transparent;\n\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t&::-webkit-slider-runnable-track {\n\t\t@include track($track-width, $track-height);\n\t\t//@include shadow($track-shadow-size, $track-shadow-blur, $track-shadow-color);\n\t\tborder: $track-border-width solid $track-border-color;\n\t\tborder-radius: $track-radius;\n\t\tbackground: $track-color;\n\t}\n\n\t&::-webkit-slider-thumb {\n\t\t@include thumb(\n\t\t\t$thumb-width,\n\t\t\t$thumb-height,\n\t\t\t$thumb-border-width,\n\t\t\t$thumb-border-color,\n\t\t\t$thumb-radius,\n\t\t\t$thumb-color\n\t\t);\n\t\t-webkit-appearance: none;\n\t\t//margin-top: ((-#{$track-border-width} * 2) + $track-height) / (2 - $thumb-height / 2);\n\t\t// the build fails with $track-border-width = 0\n\t\tmargin-top: math.div(($track-height), (2 - math.div($thumb-height, 2)));\n\t}\n\n\t&:focus::-webkit-slider-runnable-track {\n\t\tbackground: $track-color;\n\t}\n\n\t&::-moz-range-track {\n\t\t@include track($track-width, $track-height);\n\t\t//@include shadow($track-shadow-size, $track-shadow-blur, $track-shadow-color);\n\t\tborder: $track-border-width solid $track-border-color;\n\t\tborder-radius: $track-radius;\n\t\tbackground: $track-color;\n\t}\n\n\t&::-moz-range-thumb {\n\t\t@include thumb(\n\t\t\t$thumb-width,\n\t\t\t$thumb-height,\n\t\t\t$thumb-border-width,\n\t\t\t$thumb-border-color,\n\t\t\t$thumb-radius,\n\t\t\t$thumb-color\n\t\t);\n\t}\n\n\t&::-ms-track {\n\t\t@include track($track-width, $track-height);\n\t\tcolor: transparent;\n\t\tborder-width: $thumb-width 0;\n\t\tborder-color: transparent;\n\t\tbackground: transparent;\n\t}\n\n\t&::-ms-fill-lower {\n\t\t//@include shadow($track-shadow-size, $track-shadow-blur, $track-shadow-color);\n\t\tborder: $track-border-width solid $track-border-color;\n\t\tborder-radius: $track-radius * 2;\n\t\tbackground: $track-color;\n\t}\n\n\t&::-ms-fill-upper {\n\t\t//@include shadow($track-shadow-size, $track-shadow-blur, $track-shadow-color);\n\t\tborder: $track-border-width solid $track-border-color;\n\t\tborder-radius: $track-radius * 2;\n\t\tbackground: $track-color;\n\t}\n\n\t&::-ms-thumb {\n\t\t@include thumb(\n\t\t\t$thumb-width,\n\t\t\t$thumb-height,\n\t\t\t$thumb-border-width,\n\t\t\t$thumb-border-color,\n\t\t\t$thumb-radius,\n\t\t\t$thumb-color\n\t\t);\n\t}\n\n\t&:focus::-ms-fill-lower {\n\t\tbackground: $track-color;\n\t}\n\n\t&:focus::-ms-fill-upper {\n\t\tbackground: $track-color;\n\t}\n\n\t&:disabled::-moz-range-track,\n\t&:disabled::-moz-range-thumb {\n\t\tcursor: default;\n\t}\n\n\t&:disabled::-webkit-slider-runnable-track,\n\t&:disabled::-webkit-slider-thumb {\n\t\tcursor: default;\n\t}\n\n\t&:disabled::-ms-track,\n\t&:disabled::-ms-thumb {\n\t\tcursor: default;\n\t}\n}\n","@import '../../../../../scss/abstract';\n@import '../_themes.scss';\n\n.sb-optionToggle {\n\tdisplay: flex;\n\n\t@include font-size(small);\n\n\tpadding: $spacer-tiny $spacer-small-plus $spacer-tiny $spacer-small;\n\n\t@include themify($themes) {\n\t\tborder-bottom: 1px dotted themed('option-border');\n\t}\n\n\t.sb-optionsGroup & {\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('optionsGroup-option-bg');\n\t\t}\n\t}\n\n\t&.sb-optionToggle-isNotInteractable {\n\t\tuser-select: none;\n\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('option-isDisabled');\n\t\t}\n\t}\n\n\t&:hover {\n\t\tcursor: not-allowed;\n\t}\n\n\t&:hover:not(.sb-optionToggle-isNotInteractable) {\n\t\tcursor: pointer;\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('option-bgHover');\n\t\t}\n\t}\n}\n\n.sb-optionToggle-desc {\n\tflex: 1 1 auto;\n}\n\n.sb-optionToggle-icon {\n\tflex: 0 0 auto;\n}\n\n.sb-optionToggle-isOff {\n\t.icon {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('toggle-icon-isOff');\n\t\t}\n\t}\n}\n\n.sb-optionToggle-icon {\n\t.icon {\n\t\t@include font-size(big);\n\t}\n\n\t.sb-optionToggle-isOff & {\n\t\t.icon {\n\t\t\t@include themify($themes) {\n\t\t\t\tcolor: themed('toggle-icon-isOff');\n\t\t\t}\n\t\t}\n\t}\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/packages/chord-chart-studio/build/css/main.99948aaa068d066cd116.css b/packages/chord-chart-studio/build/css/main.99948aaa068d066cd116.css new file mode 100644 index 00000000..fb8736ea --- /dev/null +++ b/packages/chord-chart-studio/build/css/main.99948aaa068d066cd116.css @@ -0,0 +1,2 @@ +/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}html{box-sizing:border-box;font-size:62.5%;font-size:.625em}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:1.6rem;line-height:1.5}.theme-dark .link1{color:#fabf2b}.theme-dark .link1:hover{color:#fbce5d}.theme-dark .link1:active{color:#fcdd8f}::-webkit-scrollbar{height:10px;width:10px}.theme-dark ::-webkit-scrollbar,.theme-light ::-webkit-scrollbar{background-color:red}.theme-dark ::-webkit-scrollbar-corner,.theme-dark ::-webkit-scrollbar-track{background-color:#293132}::-webkit-scrollbar-thumb{border-radius:100vw}.theme-light ::-webkit-scrollbar-thumb{border:3px solid}.theme-dark ::-webkit-scrollbar-thumb{background-color:#a8a8a8;border:3px solid #293132}.theme-dark ::-webkit-scrollbar-thumb:hover{background-color:#c1c1c1}@supports(scrollbar-color:white black){*{scrollbar-width:thin}.theme-dark *{scrollbar-color:#a8a8a8 #293132}}.cmTheme-dark1{background-color:#293132}.cmTheme-dark1 .cmSong{color:#f4f4f4;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;line-height:1.65em;padding:10px;white-space:pre-wrap}.cmTheme-dark1 .cmSong p{margin:0}.cmTheme-dark1 .cmSectionLabel{color:#67d3ff;font-weight:700}.cmTheme-dark1 .cmSectionMultiplier{color:#ed7bff}.cmTheme-dark1 .cmKeyDeclaration,.cmTheme-dark1 .cmTimeSignature{color:#a7ff7b;font-weight:700}.cmTheme-dark1 .cmChordLine{color:#fabf2b}.cmTheme-dark1 .cmBarSeparator{opacity:.5}.cmTheme-dark1 .cmChordDuration{opacity:.7}.cmTheme-dark1 .cmSubBeatGroupCloser,.cmTheme-dark1 .cmSubBeatGroupOpener{font-weight:700;opacity:.8}.cmTheme-dark1 .cmChordLine-romanNumeral,.cmTheme-dark1 .cmRomanNumeral{color:#fabf2b}.cmTheme-dark1 .cmRomanNumeral-diatonic{background-color:#fabf2b;color:#303846;font-weight:700}.cmTheme-dark1 .cmRomanNumeral-borrowed{background-color:rgba(250,191,43,.7);color:#303846}.cmTheme-dark1 .cmRomanNumeral-unknown{opacity:.8}.cmTheme-dark2{background-color:#282a36}.cmTheme-dark2 .cmSong{color:#f8f8f2;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;line-height:1.65em;padding:10px;white-space:pre-wrap}.cmTheme-dark2 .cmSong p{margin:0}.cmTheme-dark2 .cmSectionLabel{color:#ffb86c;font-weight:700}.cmTheme-dark2 .cmSectionMultiplier{color:#f1fa8c}.cmTheme-dark2 .cmKeyDeclaration,.cmTheme-dark2 .cmTimeSignature{color:#f1fa8c;font-weight:700}.cmTheme-dark2 .cmChordLine{color:#8be9fd}.cmTheme-dark2 .cmBarSeparator{opacity:.5}.cmTheme-dark2 .cmChordDuration{opacity:.7}.cmTheme-dark2 .cmSubBeatGroupCloser,.cmTheme-dark2 .cmSubBeatGroupOpener{font-weight:700;opacity:.8}.cmTheme-dark2 .cmChordLine-romanNumeral,.cmTheme-dark2 .cmRomanNumeral{color:#8be9fd}.cmTheme-dark2 .cmRomanNumeral-diatonic{background-color:#8be9fd;color:#303846;font-weight:700}.cmTheme-dark2 .cmRomanNumeral-borrowed{background-color:rgba(139,233,253,.7);color:#303846}.cmTheme-dark2 .cmRomanNumeral-unknown{opacity:.8}.cmTheme-dark3{background-color:#282a36}.cmTheme-dark3 .cmSong{color:#f8f8f2;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;line-height:1.65em;padding:10px;white-space:pre-wrap}.cmTheme-dark3 .cmSong p{margin:0}.cmTheme-dark3 .cmSectionLabel{color:#f55;font-weight:700}.cmTheme-dark3 .cmSectionMultiplier{color:#f1fa8c}.cmTheme-dark3 .cmKeyDeclaration,.cmTheme-dark3 .cmTimeSignature{color:#8be9fd;font-weight:700}.cmTheme-dark3 .cmChordLine{color:#50fa7b}.cmTheme-dark3 .cmBarSeparator{opacity:.5}.cmTheme-dark3 .cmChordDuration{opacity:.7}.cmTheme-dark3 .cmSubBeatGroupCloser,.cmTheme-dark3 .cmSubBeatGroupOpener{font-weight:700;opacity:.8}.cmTheme-dark3 .cmChordLine-romanNumeral,.cmTheme-dark3 .cmRomanNumeral{color:#50fa7b}.cmTheme-dark3 .cmRomanNumeral-diatonic{background-color:#50fa7b;color:#303846;font-weight:700}.cmTheme-dark3 .cmRomanNumeral-borrowed{background-color:rgba(80,250,123,.7);color:#303846}.cmTheme-dark3 .cmRomanNumeral-unknown{opacity:.8}.cmTheme-text .cmSong{color:#333;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;line-height:1.65em;padding:10px;white-space:pre-wrap}.cmTheme-text .cmSong p{margin:0}.cmTheme-print{background-color:#fff}.cmTheme-print .cmSong{color:#333;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;font-size:12px;line-height:1.65em;padding:10px;white-space:pre-wrap}.cmTheme-print .cmSong p{margin:0}.cmTheme-print .cmSectionLabel{font-weight:700;text-decoration:underline}.cmTheme-print .cmSectionMultiplier{font-weight:400;text-decoration:unset}.cmTheme-print .cmKeyDeclaration,.cmTheme-print .cmTimeSignature{font-weight:700}.cmTheme-print .cmBarSeparator{opacity:.5}.cmTheme-print .cmChordDuration{opacity:.7}.cmTheme-print .cmSubBeatGroupCloser,.cmTheme-print .cmSubBeatGroupOpener{font-weight:700;opacity:.8}.cmSong--fontSize-5 .cmLine{font-size:.5em;line-height:1.15em}.cmSong--fontSize-4 .cmLine{font-size:.6em;line-height:1.25em}.cmSong--fontSize-3 .cmLine{font-size:.7em;line-height:1.35em}.cmSong--fontSize-2 .cmLine{font-size:.8em;line-height:1.45em}.cmSong--fontSize-1 .cmLine{font-size:.9em;line-height:1.55em}.cmSong--fontSize1 .cmLine{font-size:1.1em;line-height:1.75em}.cmSong--fontSize2 .cmLine{font-size:1.2em;line-height:1.85em}.cmSong--fontSize3 .cmLine{font-size:1.3em;line-height:1.95em}.cmSong--fontSize4 .cmLine{font-size:1.4em;line-height:2.05em}.cmSong--fontSize5 .cmLine{font-size:1.5em;line-height:2.15em}.cmTheme-print2{background-color:#fff}.cmTheme-print2 .cmSong{color:#333;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-family:Menlo,Courier New,Courier,monospace;font-size:13px;font-size:14px;line-height:1.65em;line-height:1.4em;padding:10px;white-space:pre-wrap}.cmTheme-print2 .cmSong p{margin:0}.cmTheme-print2 .cmSection{border:1px solid #000;border-radius:8px;break-inside:avoid;margin:.2em 0;padding:.4em}.cmTheme-print2 .cmSection-Chorus{background-color:#ededed}.cmTheme-print2 .cmSectionLabel{font-size:.85em;font-weight:700;text-transform:uppercase}.cmTheme-print2 .cmSectionMultiplier{font-size:.95em;text-decoration:unset}.cmTheme-print2 .cmKeyDeclaration,.cmTheme-print2 .cmTimeSignature{font-weight:700}.cmTheme-print2 .cmEmptyLine{display:none}.cmTheme-print2 .cmChordLine{font-weight:bolder}.cmTheme-print2 .cmBarSeparator{opacity:.5}.cmTheme-print2 .cmChordDuration{opacity:.7}.cmTheme-print2 .cmSubBeatGroupCloser,.cmTheme-print2 .cmSubBeatGroupOpener{font-weight:700;opacity:.8}.ErrorBoundary{padding:2rem}#app,body,html{height:100%;padding:0}.appLayout-wrapper{height:100%;width:100%}.appLayout-wrapper,.leftBar{display:flex;flex-direction:row;flex-wrap:nowrap}.leftBar{flex-shrink:0;max-width:250px;width:15%}.leftBar.leftBar-isCollapsed{width:48px}.theme-light .leftBar.leftBar-isCollapsed{border-right:1px solid}.theme-dark .leftBar{background-color:#303846;color:#f4f4f4}.theme-dark .leftBar.leftBar-isCollapsed{border-right:1px solid #dbdbdb}.theme-dark .leftBar.leftBar-isCollapsed:hover{background-color:#455064}@media print{.leftBar{display:none}}.rightBar{display:flex;flex-direction:row;flex-shrink:0;flex-wrap:nowrap;max-width:250px;width:15%}.rightBar.rightBar-isCollapsed{width:48px}.theme-light .rightBar.rightBar-isCollapsed{border-left:1px solid}.theme-dark .rightBar{background-color:#303846;color:#f4f4f4}.theme-dark .rightBar.rightBar-isCollapsed{border-left:1px solid #dbdbdb}.theme-dark .rightBar.rightBar-isCollapsed:hover{background-color:#455064}@media print{.rightBar{display:none}}.leftBar-content{flex:1 1 auto;overflow-y:scroll}.leftBar-isCollapsed .leftBar-content{cursor:pointer;overflow:hidden;padding:.5rem 1rem;text-align:center}.rightBar-content{flex:1 1 auto;overflow-y:scroll}.rightBar-isCollapsed .rightBar-content{cursor:pointer;overflow:hidden;padding:.5rem 1rem;text-align:center}.leftBar-collapser{cursor:pointer;display:flex;flex:0 0 12px}.leftBar-isCollapsed .leftBar-collapser{display:none}.theme-light .leftBar-collapser{border-right:1px solid}.theme-dark .leftBar-collapser{background-color:#405a73;border-right:1px solid #a8a8a8}.theme-dark .leftBar-collapser:hover{background-color:#537393}.theme-dark .leftBar-collapser{color:#f4f4f4}.leftBar-collapserIcon{align-self:center;flex:1 1 auto;font-weight:700}.leftBar-collapserIcon .icon{font-size:1.2rem}.rightBar-collapser{cursor:pointer;display:flex;flex:0 0 12px}.rightBar-isCollapsed .rightBar-collapser{display:none}.theme-light .rightBar-collapser{border-left:1px solid}.theme-dark .rightBar-collapser{background-color:#405a73;border-left:1px solid #a8a8a8}.theme-dark .rightBar-collapser:hover{background-color:#537393}.theme-dark .rightBar-collapser{color:#f4f4f4}.rightBar-collapserIcon{align-self:center;flex:1 1 auto;font-weight:700}.rightBar-collapserIcon .icon{font-size:1.2rem}.appLayout-main{display:flex;flex-direction:column;flex-grow:1;flex-wrap:nowrap}.appLayout-header{flex-shrink:0}.theme-light .appLayout-header{border-bottom:3px solid}.theme-dark .appLayout-header{background-color:#303846;border-bottom:3px solid #fabf2b;color:hsla(0,0%,96%,.7)}@media print{.appLayout-header{display:none}}.appLayout-content{flex-grow:1;overflow-y:auto}@media print{.appLayout-content{overflow-y:visible}}.theme-dark .appLayout-footer{color:#a8a8a8}@media print{.appLayout-footer{display:none}}.logo-isExpanded{box-sizing:border-box;padding:1.5rem 0 1rem;width:100%}.leftBar-isCollapsed .logo-isExpanded{display:none}.logo-img{margin:0 auto;width:70%}.logo-img svg{fill:#fff;aspect-ratio:1.25/1;display:block;margin:5px auto 10px;width:80%}.mainNav-entries{display:flex;font-family:Open Sans,sans-serif;font-size:1.6rem;font-weight:400;justify-content:center;list-style-type:none;margin:0;padding:0;vertical-align:middle}.mainNavEntry{cursor:default;display:inline-block;font-weight:700;padding:1rem 2rem}.mainNavEntry:hover:not(.mainNavEntry-isActive){cursor:pointer}.theme-dark .mainNavEntry:hover:not(.mainNavEntry-isDisabled):not(.mainNavEntry-isActive){background-color:#fcdd8f;color:#1c2731}.theme-dark .mainNavEntry.mainNavEntry-isActive{background-color:#fabf2b;color:#1c2731}.mainNavEntry.mainNavEntry-isDisabled{user-select:none}.theme-light .mainNavEntry.mainNavEntry-isDisabled{cursor:not-allowed}.theme-dark .mainNavEntry.mainNavEntry-isDisabled{background-color:#303846;color:#a8a8a8;cursor:not-allowed}.mainNavEntry-icon .icon{font-size:1.4rem;margin-right:.5rem}.icon{vertical-align:middle}.userGuide-isExpanded{margin-left:1rem}.rightBar-isCollapsed .userGuide-isExpanded{display:none}.userGuide-isCollapsed{padding:1rem 0}.rightBar:not(.rightBar-isCollapsed) .userGuide-isCollapsed{display:none}button{background-color:transparent;border:0;border-radius:0}.Button{display:inline-block;font-weight:700;margin:10px 20px 10px 0;padding:10px 20px;text-transform:capitalize}.Button:hover{cursor:pointer}.Button:last-of-type{margin-right:0}.theme-dark .Button-primary:not(.Button-isDisabled){background-color:#fabf2b;color:#1c2731}.theme-dark .Button-primary:not(.Button-isDisabled):hover{background-color:#fcdd8f;color:#000}.theme-dark .Button-primary:not(.Button-isDisabled):active{background-color:#feecc0;color:#2e4052}.Button-primary.Button-isDisabled{cursor:not-allowed}.theme-dark .Button-primary.Button-isDisabled{background-color:#57686a;color:#404c4e}.theme-dark .Button-secondary:not(.Button-isDisabled){background-color:#a8a8a8;color:#121616}.theme-dark .Button-secondary:not(.Button-isDisabled):hover{background-color:#c1c1c1;color:#000}.theme-dark .Button-secondary:not(.Button-isDisabled):active{background-color:#dbdbdb;color:#2e4052}.Button-secondary.Button-isDisabled{cursor:not-allowed}.theme-dark .Button-secondary.Button-isDisabled{background-color:#57686a;color:#404c4e}.versions-isExpanded{font-size:1rem;margin:4rem 0;opacity:.5;padding:0 1rem}.rightBar-isCollapsed .versions-isExpanded{display:none}.versions-isExpanded a{color:inherit}.versions-isExpanded a:hover{opacity:.7}.sim-SongImporterModal_Container{align-content:stretch;align-items:stretch;display:flex;flex-direction:column;flex-wrap:nowrap;height:90%;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:90%}.theme-light .sim-SongImporterModal_Container{border:1px solid}.theme-dark .sim-SongImporterModal_Container{background-color:#1e2324;border:1px solid #c1c1c1;color:#f4f4f4}.sim-Header_Container{display:flex;flex:0 0 auto}.theme-light .sim-Header_Container{border-bottom:1px solid}.theme-dark .sim-Header_Container{background-color:#303846;border-bottom:1px solid #c1c1c1;color:hsla(0,0%,96%,.7)}.sim-Header_Title{flex:1 1 auto;font-size:1.6rem;font-weight:bolder;padding:20px}.sim-Header_Actions{flex:0 0 auto;padding:0 10px}.sim-TwoColumns_Container{align-self:stretch;display:flex}.sim-TwoColumns_Container-autoHeight{flex:0 1 100%;min-height:0}.sim-Column_Container{align-self:stretch;flex:1 1 50%;padding:0 10px}.sim-Column_Container:first-child{padding-right:5px}.sim-Column_Container:last-child{padding-left:5px}.sim-Input_Header{font-size:1.2rem;height:20px;padding:2px;text-align:center;text-transform:uppercase}.theme-dark .sim-Input_Header{background-color:#404c4e;color:hsla(0,0%,96%,.7)}.sim-Input_Textarea{background-color:transparent;border:0;box-sizing:border-box;font-family:PT Mono,consolas,courier,monospace;font-size:1.2rem;height:calc(100% - 34px);line-height:1.5rem;margin:0;max-height:calc(100% - 34px);outline:none;overflow-y:scroll;padding:10px;resize:none;width:100%}.theme-dark .sim-Input_Textarea{background-color:#121616;color:#f4f4f4}.sim-Input_Textarea-Disabled{opacity:.5}.sim-Preview_Container{box-sizing:border-box;font-family:PT Mono,consolas,courier,monospace;font-size:1.2rem;height:calc(100% - 34px);max-height:calc(100% - 34px);overflow-y:scroll;padding:10px;white-space:pre-wrap}.theme-dark .sim-Preview_Container{background-color:#293132}.sim-Preview_Error{padding:10px}.theme-dark .sim-Preview_Error{background-color:#f91900;color:#f4f4f4}.sim-InputFile_Input{height:.1px;opacity:0;overflow:hidden;position:absolute;width:.1px;z-index:-1}.sim-InputFormat{padding:10px 0}.sim-InputFormat_Entry{display:inline-block;margin:0 10px}.sim-InputFormat_Entry:hover,.sim-InputFormat_Label:hover{cursor:pointer}.sim-InputFormat_Entry-Disabled,.sim-InputFormat_Label-Disabled{opacity:.5}.sim-InputFormat_Entry-Disabled:hover,.sim-InputFormat_Label-Disabled:hover{cursor:not-allowed}.mod-ModalContainer{z-index:5000}.mod-ModalContainer,.mod-Overlay{height:100%;left:0;position:absolute;top:0;width:100%}.mod-Overlay{background-color:#000;opacity:.7}.mod-ModalConfirmContainer{height:auto;left:50%;padding:10px 20px;position:absolute;top:50%;transform:translate(-50%,-50%);width:auto;z-index:5000}.theme-light .mod-ModalConfirmContainer{border:1px solid}.theme-dark .mod-ModalConfirmContainer{background-color:#1e2324;border:1px solid #c1c1c1;color:#f4f4f4}.mod-ModalConfirmButtons{text-align:center}.fileManager-isExpanded{font-size:1.2rem}.leftBar-isCollapsed .fileManager-isExpanded{display:none}.fileManager-isCollapsed{padding:1rem 0}.leftBar:not(.leftBar-isCollapsed) .fileManager-isCollapsed{display:none}.fileManager-actionsList{display:flex;flex-direction:row;flex-wrap:wrap;padding:1rem}.theme-dark .fileManager-actionsList{background-color:#455064}.fileManagerAction{flex:0 1 auto;margin-right:.5rem;padding:.5rem;white-space:nowrap}.fileManagerAction:hover{cursor:not-allowed}.fileManagerAction:hover:not(.fileManagerAction-isDisabled){cursor:pointer}.theme-dark .fileManagerAction:hover:not(.fileManagerAction-isDisabled){background-color:#596883}.fileManagerAction-isDisabled{opacity:.5;user-select:none}.fileManagerAction-icon .icon{font-size:1.4rem}.fileManager-entriesList{list-style:none;padding-left:0}.fileManagerEntry{cursor:pointer;padding:.1rem 0}.theme-dark .fileManagerEntry:hover{background-color:#596883}.theme-dark .fileManagerEntry.fileManagerEntry-isSelected{background-color:#fabf2b}.fileManagerEntry-input{background-color:transparent;border:none;box-sizing:border-box;cursor:pointer;outline:none;padding:0 1rem;width:100%}.theme-dark .fileManagerEntry-input{color:#f4f4f4}.theme-dark .fileManagerEntry-isSelected .fileManagerEntry-input{color:#303846}.fileManagerEntry-isRenamed .fileManagerEntry-input{cursor:text}.theme-dark .fileManagerEntry-isRenamed .fileManagerEntry-input{background-color:#f4f4f4;color:#303846}.songEditor-headers{display:flex;font-size:1.2rem;height:20px;padding:3px 0;text-align:center;text-transform:uppercase}.theme-dark .songEditor-headers{background-color:#404c4e;color:hsla(0,0%,96%,.7)}.songEditor-previewHeader,.songEditor-sourceHeader{flex:0 1 50%}.songEditor{display:flex;flex-direction:row;flex-wrap:nowrap;height:calc(100% - 26px);width:100%}.songEditor-source{display:flex;flex:0 1 50%;overflow-y:scroll}.theme-dark .songEditor-source{background-color:#1e2324}.songEditor-preview{flex:0 1 50%;overflow-y:scroll}.editorPreview{box-sizing:border-box;min-height:100%;padding:.5rem}.cmTheme-fadeRepeats .cmLine--isFromAutoRepeatChords,.cmTheme-fadeRepeats .cmLine--isFromChordLineRepeater,.cmTheme-fadeRepeats .cmLine--isFromSectionCopy,.cmTheme-fadeRepeats .cmLine--isFromSectionMultiply{opacity:.5}.prosemirrorWrapper{flex:1 1 auto;padding:15px 0}.ProseMirror{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;height:100%;line-height:1.65em;outline:none}.theme-dark .ProseMirror{color:#dbdbdb}.ProseMirror p{margin:0;padding:0 1rem}.ProseMirror{word-wrap:break-word;font-feature-settings:"liga" 0;-webkit-font-variant-ligatures:none;font-variant-ligatures:none;position:relative;white-space:pre-wrap;white-space:break-spaces}.ProseMirror pre{white-space:pre-wrap}.ProseMirror li{position:relative}.ProseMirror-hideselection ::selection{background:transparent}.ProseMirror-hideselection ::-moz-selection{background:transparent}.ProseMirror-hideselection{caret-color:transparent}.ProseMirror [draggable][contenteditable=false]{user-select:text}.ProseMirror-selectednode{outline:2px solid #8cf}li.ProseMirror-selectednode{outline:none}li.ProseMirror-selectednode:after{border:2px solid #8cf;bottom:-2px;content:"";left:-32px;pointer-events:none;position:absolute;right:-2px;top:-2px}img.ProseMirror-separator{border:none!important;display:inline!important;margin:0!important}.exportPreview{box-sizing:border-box;min-height:100%;padding:1rem}.theme-dark .exportPreview{background-color:#293132;color:#f4f4f4}.exp-SongRenderer{color:#333;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;line-height:1.65em;padding:15px;white-space:pre-wrap}.exp-SongRenderer p{margin:0}.exp-SongRenderer .txtLine{display:block}.theme-dark .exp-SongRenderer{color:#f4f4f4!important}.playRendererWrapper1{height:100%;overflow-y:scroll;position:relative}.playRendererWrapper2{bottom:0;left:0;position:absolute;right:0;top:0}.playRenderer{box-sizing:border-box;min-height:100%}.playRenderer .cmSong{padding:0!important}.playRenderer--columns-1{column-count:1;padding:1rem}.playRenderer--columns-2{column-count:2;column-fill:auto;height:100%;padding:1rem}.playRenderer--columns-3{column-count:3;column-fill:auto;height:100%;padding:1rem}.playRenderer--columns-4{column-count:4;column-fill:auto;height:100%;padding:1rem}.printPreview{min-height:100%;overflow:hidden}.theme-dark .printPreview{background-color:#293132}@media print{.printPreview{background-color:#fff!important;overflow-y:auto}}.printPreview-page{background-color:#fff;margin:2rem auto;position:relative}@media print{.printPreview-page{margin:0;page-break-after:auto}}.printPreview-pageContentWrapper{bottom:0;left:0;position:absolute;right:0;top:0}.printPreview-pageContent{display:flex;flex-direction:column;flex-wrap:nowrap;height:100%}.printPreview-pageHeader{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-size:1.8rem;font-weight:700;margin-bottom:1rem}.printPreview-pageColumnWrapper{display:flex;flex:1;flex-direction:row;flex-wrap:nowrap}.printPreview-pageColumn{flex:1 1 0;margin:0 .7rem}.printPreview-pageColumn:first-of-type{margin-left:0}.printPreview-pageColumn:last-of-type{margin-right:0}.printPreview-page--a4{height:297mm;width:210mm}.printPreview-page--booxmax2pro{height:930px;width:698px}.printPreview-pageContentWrapper--padding1{padding:3mm}.printPreview-pageContentWrapper--padding2{padding:6mm}.printPreview-pageContentWrapper--padding3{padding:9mm}.printPreview-pageContentWrapper--padding4{padding:12mm}.printPreview-pageContentWrapper--padding5{padding:15mm}.cmTheme-print .cmSong{padding:0!important}.measuring-node{position:absolute;visibility:hidden;z-index:-1}.rightBar-isCollapsed .renderingOptionsPanel-isExpanded{display:none}.renderingOptionsPanel-isCollapsed{padding:1rem 0}.rightBar:not(.rightBar-isCollapsed) .renderingOptionsPanel-isCollapsed{display:none}.sb-optionsGroup{padding-top:2rem}.sb-optionsGroup:first-of-type{padding-top:0}.sb-optionsGroup-title{font-size:1.4rem;font-weight:700;padding:.5rem 1rem .5rem .5rem;user-select:none}.theme-light .sb-optionsGroup-title{border-bottom:2px solid}.theme-dark .sb-optionsGroup-title{border-bottom:2px solid hsla(0,0%,96%,.7)}.theme-dark .sb-optionsGroup-isNotInteractable .sb-optionsGroup-title{color:#71819e}.sb-optionsGroup-iconTitle .icon{font-size:1.6rem}.sb-optionsGroup-iconToggle .icon{font-size:1.8rem}.sb-optionSelect{font-size:1.2rem;padding:.5rem 1.5rem .5rem 1rem}.theme-light .sb-optionSelect{border-bottom:1px dotted}.theme-dark .sb-optionSelect{border-bottom:1px dotted #71819e}.theme-dark .sb-optionsGroup .sb-optionSelect{background-color:#1b2028}.sb-optionSelect.sb-optionSelect-isNotInteractable{user-select:none}.theme-dark .sb-optionSelect.sb-optionSelect-isNotInteractable{color:#71819e}.sb-optionSelect:hover{cursor:not-allowed}.sb-optionSelect:hover:not(.sb-optionSelect-isNotInteractable){cursor:pointer}.theme-dark .sb-optionSelect:hover:not(.sb-optionSelect-isNotInteractable){background-color:#596883}.sb-optionSelect-title{display:flex}.sb-optionSelect-desc{flex:1 1 auto}.sb-optionSelect-toggle{flex:0 0 auto}.sb-optionSelect-icon .icon{font-size:1.8rem}.sb-optionSelectChoice-activeLabel{opacity:.5}.sb-optionSelectChoice{display:flex;padding-top:.5rem}.sb-optionSelectChoice:hover:not(.sb-optionSelectChoice-isNotInteractable){cursor:pointer;text-decoration:underline}.sb-optionSelectChoice-isSelected{font-weight:700}.sb-optionSelectChoice-check{flex:0 0 20px}.sb-optionSelectChoice-checkIcon .icon{font-size:1.2rem}.sb-optionSelectChoice-label{flex:1 1 auto}.sb-optionSlider{display:flex;flex-wrap:wrap;font-size:1.2rem;padding:.5rem 1.5rem .5rem 1rem}.theme-light .sb-optionSlider{border-bottom:1px dotted}.theme-dark .sb-optionSlider{border-bottom:1px dotted #71819e}.theme-dark .sb-optionsGroup .sb-optionSlider{background-color:#1b2028}.sb-optionSlider.sb-optionSlider-isNotInteractable{user-select:none}.theme-dark .sb-optionSlider.sb-optionSlider-isNotInteractable{color:#71819e}.sb-optionSlider:hover{cursor:not-allowed}.sb-optionSlider:hover:not(.sb-optionSlider-isNotInteractable){cursor:pointer}.theme-dark .sb-optionSlider:hover:not(.sb-optionSlider-isNotInteractable){background-color:#596883}.sb-optionSlider-desc{flex:1 1 auto}.sb-optionSlider-value{flex:0 0 auto;font-size:1.2rem;vertical-align:middle}.sb-optionSlider-range{flex:1 1 100%}.theme-light .sb-optionSlider-range input[type=range]{-webkit-appearance:none;background:transparent;width:100%}.theme-light .sb-optionSlider-range input[type=range]:focus{outline:none}.theme-light .sb-optionSlider-range input[type=range]::-webkit-slider-runnable-track{animation:.2s;background:#feecc0;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:100%}.theme-light .sb-optionSlider-range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#bb8704;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;margin-top:-3.3333333333;width:15px}.theme-light .sb-optionSlider-range input[type=range]:focus::-webkit-slider-runnable-track{background:#feecc0}.theme-light .sb-optionSlider-range input[type=range]::-moz-range-track{animation:.2s;background:#feecc0;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:100%}.theme-light .sb-optionSlider-range input[type=range]::-moz-range-thumb{background:#bb8704;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:15px}.theme-light .sb-optionSlider-range input[type=range]::-ms-track{animation:.2s;background:transparent;border-color:transparent;border-width:15px 0;color:transparent;cursor:pointer;height:10px;width:100%}.theme-light .sb-optionSlider-range input[type=range]::-ms-fill-lower,.theme-light .sb-optionSlider-range input[type=range]::-ms-fill-upper{background:#feecc0;border:0 solid #000;border-radius:0}.theme-light .sb-optionSlider-range input[type=range]::-ms-thumb{background:#bb8704;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:15px}.theme-light .sb-optionSlider-range input[type=range]:focus::-ms-fill-lower,.theme-light .sb-optionSlider-range input[type=range]:focus::-ms-fill-upper{background:#feecc0}.theme-light .sb-optionSlider-range input[type=range]:disabled::-moz-range-thumb,.theme-light .sb-optionSlider-range input[type=range]:disabled::-moz-range-track{cursor:default}.theme-light .sb-optionSlider-range input[type=range]:disabled::-webkit-slider-runnable-track,.theme-light .sb-optionSlider-range input[type=range]:disabled::-webkit-slider-thumb{cursor:default}.theme-light .sb-optionSlider-range input[type=range]:disabled::-ms-thumb,.theme-light .sb-optionSlider-range input[type=range]:disabled::-ms-track{cursor:default}.theme-dark .sb-optionSlider-range input[type=range]{-webkit-appearance:none;background:transparent;width:100%}.theme-dark .sb-optionSlider-range input[type=range]:focus{outline:none}.theme-dark .sb-optionSlider-range input[type=range]::-webkit-slider-runnable-track{animation:.2s;background:#71819e;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:100%}.theme-dark .sb-optionSlider-range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#070809;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;margin-top:-3.3333333333;width:15px}.theme-dark .sb-optionSlider-range input[type=range]:focus::-webkit-slider-runnable-track{background:#71819e}.theme-dark .sb-optionSlider-range input[type=range]::-moz-range-track{animation:.2s;background:#71819e;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:100%}.theme-dark .sb-optionSlider-range input[type=range]::-moz-range-thumb{background:#070809;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:15px}.theme-dark .sb-optionSlider-range input[type=range]::-ms-track{animation:.2s;background:transparent;border-color:transparent;border-width:15px 0;color:transparent;cursor:pointer;height:10px;width:100%}.theme-dark .sb-optionSlider-range input[type=range]::-ms-fill-lower,.theme-dark .sb-optionSlider-range input[type=range]::-ms-fill-upper{background:#71819e;border:0 solid #000;border-radius:0}.theme-dark .sb-optionSlider-range input[type=range]::-ms-thumb{background:#070809;border:0 solid #000;border-radius:0;cursor:pointer;height:10px;width:15px}.theme-dark .sb-optionSlider-range input[type=range]:focus::-ms-fill-lower,.theme-dark .sb-optionSlider-range input[type=range]:focus::-ms-fill-upper{background:#71819e}.theme-dark .sb-optionSlider-range input[type=range]:disabled::-moz-range-thumb,.theme-dark .sb-optionSlider-range input[type=range]:disabled::-moz-range-track{cursor:default}.theme-dark .sb-optionSlider-range input[type=range]:disabled::-webkit-slider-runnable-track,.theme-dark .sb-optionSlider-range input[type=range]:disabled::-webkit-slider-thumb{cursor:default}.theme-dark .sb-optionSlider-range input[type=range]:disabled::-ms-thumb,.theme-dark .sb-optionSlider-range input[type=range]:disabled::-ms-track{cursor:default}.sb-optionSlider-range input[type=range]:disabled{cursor:not-allowed!important;opacity:.35}.sb-optionToggle{display:flex;font-size:1.2rem;padding:.5rem 1.5rem .5rem 1rem}.theme-light .sb-optionToggle{border-bottom:1px dotted}.theme-dark .sb-optionToggle{border-bottom:1px dotted #71819e}.theme-dark .sb-optionsGroup .sb-optionToggle{background-color:#1b2028}.sb-optionToggle.sb-optionToggle-isNotInteractable{user-select:none}.theme-dark .sb-optionToggle.sb-optionToggle-isNotInteractable{color:#71819e}.sb-optionToggle:hover{cursor:not-allowed}.sb-optionToggle:hover:not(.sb-optionToggle-isNotInteractable){cursor:pointer}.theme-dark .sb-optionToggle:hover:not(.sb-optionToggle-isNotInteractable){background-color:#596883}.sb-optionToggle-desc{flex:1 1 auto}.sb-optionToggle-icon{flex:0 0 auto}.theme-dark .sb-optionToggle-isOff .icon{color:#a8a8a8}.sb-optionToggle-icon .icon{font-size:1.8rem}.theme-dark .sb-optionToggle-isOff .sb-optionToggle-icon .icon{color:#a8a8a8} +/*# sourceMappingURL=main.99948aaa068d066cd116.css.map*/ \ No newline at end of file diff --git a/packages/chord-chart-studio/build/css/main.99948aaa068d066cd116.css.map b/packages/chord-chart-studio/build/css/main.99948aaa068d066cd116.css.map new file mode 100644 index 00000000..61702464 --- /dev/null +++ b/packages/chord-chart-studio/build/css/main.99948aaa068d066cd116.css.map @@ -0,0 +1 @@ +{"version":3,"file":"css/main.99948aaa068d066cd116.css","mappings":"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","sources":["webpack://chord-chart-studio/../../node_modules/normalize.css/normalize.css","webpack://chord-chart-studio/./scss/_base.scss","webpack://chord-chart-studio/./scss/abstract/_typography.scss","webpack://chord-chart-studio/./scss/abstract/mixins/_fontSize.scss","webpack://chord-chart-studio/./scss/abstract/mixins/_themify.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/themes/dark1.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/abstract/_colors.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/abstract/_mixins.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/abstract/_variables.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/themes/dark2.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/themes/dark3.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/themes/text.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/themes/print.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/themes/_common.scss","webpack://chord-chart-studio/../../node_modules/chord-mark-themes/scss/themes/print2.scss","webpack://chord-chart-studio/./src/ui/_components/ErrorBoundary.scss","webpack://chord-chart-studio/./scss/abstract/_spacings.scss","webpack://chord-chart-studio/./src/ui/layout/app/_components/App.scss","webpack://chord-chart-studio/./src/ui/sideBar/_components/Logo.scss","webpack://chord-chart-studio/./src/ui/layout/app/_components/Nav.scss","webpack://chord-chart-studio/./src/ui/_components/Icon.scss","webpack://chord-chart-studio/./src/ui/sideBar/_components/UserGuide.scss","webpack://chord-chart-studio/./src/ui/_components/Button.scss","webpack://chord-chart-studio/./src/ui/sideBar/_components/Versions.scss","webpack://chord-chart-studio/./src/songImporter/_components/SongImporter.scss","webpack://chord-chart-studio/./src/ui/_components/Modal.scss","webpack://chord-chart-studio/./src/fileManager/_components/FileManager.scss","webpack://chord-chart-studio/./src/editor/songEditor/_components/EditorLayout.scss","webpack://chord-chart-studio/./src/songRenderers/editorPreview/_components/EditorPreview.scss","webpack://chord-chart-studio/./src/editor/songEditor/prosemirror/ProsemirrorEditorView.scss","webpack://chord-chart-studio/../../node_modules/prosemirror-view/style/prosemirror.css","webpack://chord-chart-studio/./src/songRenderers/exportPreview/_components/ExportPreview.scss","webpack://chord-chart-studio/./src/songRenderers/playRenderer/_components/PlayRenderer.scss","webpack://chord-chart-studio/./src/songRenderers/printPreview/_components/PrintPreview.scss","webpack://chord-chart-studio/./src/songRenderers/printPreview/helpers/getDimensionsFromDom.scss","webpack://chord-chart-studio/./src/optionsPanels/rendering/_components/Rendering.scss","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/OptionsGroup.scss","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/Select.scss","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/Slider.scss","webpack://chord-chart-studio/./scss/abstract/mixins/_inputRange.scss","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/Toggle.scss"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n","@import 'abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\t// links\n\t\tlink1: cv(dark-accent),\n\t\tlink1-hover: cv(dark-accent, light10),\n\t\tlink1-active: cv(dark-accent, light20),\n\t\t// scrollbars\n\t\tscrollbar-bg: cv(dark-secondary),\n\t\tscrollbar-thumb: cv(dark-foreground, dark30),\n\t\tscrollbar-hover: cv(dark-foreground, dark20),\n\t),\n);\n\nhtml {\n\t/* switching to border-box model for all elements */\n\tbox-sizing: border-box;\n\n\t/* set base font-size to equiv \"10px\", which is adapted to rem unit */\n\tfont-size: 62.5%;\n\n\t/* IE9-IE11 math fixing. See http://bit.ly/1g4X0bX */\n\tfont-size: calc(1em * 0.625);\n}\n\nbody {\n\t@include font-size(base);\n\tfont-family: $font-family-base;\n\tline-height: $line-height-base;\n}\n\n.link1 {\n\t@include themify($themes) {\n\t\tcolor: themed('link1');\n\t}\n\n\t&:hover {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('link1-hover');\n\t\t}\n\t}\n\n\t&:active {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('link1-active');\n\t\t}\n\t}\n}\n\n// scrollbars\n::-webkit-scrollbar {\n\twidth: 10px;\n\theight: 10px;\n\t@include themify($themes) {\n\t\tbackground-color: red;\n\t}\n}\n\n::-webkit-scrollbar-track,\n::-webkit-scrollbar-corner {\n\t@include themify($themes) {\n\t\tbackground-color: themed('scrollbar-bg');\n\t}\n}\n\n::-webkit-scrollbar-thumb {\n\t@include themify($themes) {\n\t\tbackground-color: themed('scrollbar-thumb');\n\t\tborder: 3px solid themed('scrollbar-bg');\n\t}\n\tborder-radius: 100vw;\n}\n\n::-webkit-scrollbar-thumb:hover {\n\t@include themify($themes) {\n\t\tbackground-color: themed('scrollbar-hover');\n\t}\n}\n\n@supports (scrollbar-color: white black) {\n\t* {\n\t\t@include themify($themes) {\n\t\t\tscrollbar-color: themed('scrollbar-thumb') themed('scrollbar-bg');\n\t\t}\n\t\tscrollbar-width: thin;\n\t}\n}\n","@use 'sass:math';\n\n// ChordMark\n\n$cmFontStack: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono',\n\t'Courier New', monospace;\n$cmFontSize: 13px;\n$cmLineHeight: 1.65em;\n\n// Source: Knacss\n\n// Font families\n$font-family-base: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,\n\tOxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif !default; // system font stack\n$font-family-headings: 'Open Sans', sans-serif !default; // font for h1, h2.. h6\n$font-family-monospace: 'PT Mono', consolas, courier, monospace !default; // font for code and samples\n\n// Font sizes (1.6rem value is \"16px\" equivalent)\n$font-size-base: 1.6rem !default;\n\n$font-sizes: (\n\th1: (\n\t\tmobile: 2.8rem,\n\t\tdesktop: 3.2rem,\n\t),\n\th2: (\n\t\tmobile: 2.4rem,\n\t\tdesktop: 2.8rem,\n\t),\n\th3: (\n\t\tmobile: 2rem,\n\t\tdesktop: 2.4rem,\n\t),\n\th4: (\n\t\tmobile: 1.8rem,\n\t\tdesktop: 2rem,\n\t),\n\th5: (\n\t\tmobile: 1.6rem,\n\t\tdesktop: 1.8rem,\n\t),\n\th6: (\n\t\tmobile: 1.4rem,\n\t\tdesktop: 1.6rem,\n\t),\n\tbig: (\n\t\tmobile: 1.6rem,\n\t\tdesktop: 1.8rem,\n\t),\n\tbase: (\n\t\tmobile: 1.4rem,\n\t\tdesktop: $font-size-base,\n\t),\n\tnormal: (\n\t\tmobile: 1.2rem,\n\t\tdesktop: 1.4rem,\n\t),\n\tsmall: (\n\t\tmobile: 1rem,\n\t\tdesktop: 1.2rem,\n\t),\n\ttiny: (\n\t\tmobile: 0.8rem,\n\t\tdesktop: 1rem,\n\t),\n) !default;\n\n// Line heights\n$line-height-s: 1.3 !default;\n$line-height-base: 1.5 !default;\n$line-height-l: 1.7 !default;\n\n// Default margin-bottom\n$margin-bottom-base: 1rem !default;\n$headings-margin-bottom: math.div($margin-bottom-base, 2) !default;\n$paragraph-margin-bottom: $margin-bottom-base !default;\n\n// Font weights\n$weight-light: 200 !default;\n$weight-book: 300 !default;\n$weight-regular: 400 !default;\n$weight-medium: 500 !default;\n$weight-bold: 700 !default;\n","// Source: Knacss\n\n// font-size Mixin\n// compiles to font-size mobile + font-size desktop on small-plus devices\n// ex. h2 { @include font-size(h2);}\n@mixin font-size($elem) {\n\t$q: map-get($font-sizes, $elem);\n\t$mob: map-get($q, 'mobile');\n\t$desk: map-get($q, 'desktop');\n\tfont-size: $desk;\n}\n","// Source: https://medium.com/@dmitriy.borodiy/easy-color-theming-with-scss-bc38fd5734d1\n\n@mixin themify($themes: null) {\n\t@if (type-of($themes) != map) {\n\t\t@error \"Please supply a themes map to themify mixin\";\n\t} @else {\n\t\t@each $theme, $map in $themes {\n\t\t\t.theme-#{$theme} & {\n\t\t\t\t$theme-map: () !global;\n\t\t\t\t@each $key, $submap in $map {\n\t\t\t\t\t$value: map-get(map-get($themes, $theme), '#{$key}');\n\t\t\t\t\t$theme-map: map-merge(\n\t\t\t\t\t\t$theme-map,\n\t\t\t\t\t\t(\n\t\t\t\t\t\t\t$key: $value,\n\t\t\t\t\t\t)\n\t\t\t\t\t) !global;\n\t\t\t\t}\n\n\t\t\t\t@content;\n\t\t\t\t$theme-map: null !global;\n\t\t\t}\n\t\t}\n\t}\n}\n@function themed($key) {\n\t@return map-get($theme-map, $key);\n}\n","@import '../abstract';\n@import './common';\n\n$green: rgb(167, 255, 123);\n$blue: rgb(103, 211, 255);\n$pink: rgb(237, 123, 255);\n\n.cmTheme-dark1 {\n\tbackground-color: $ccs-secondary;\n\n\t.cmSong {\n\t\t@include base;\n\t\tcolor: $ccs-foreground;\n\t}\n\n\t// Sections\n\t.cmSectionLabel {\n\t\tcolor: $blue;\n\t\tfont-weight: bold;\n\t}\n\t.cmSectionMultiplier {\n\t\tcolor: $pink;\n\t}\n\n\t// Time signature\n\t.cmTimeSignature {\n\t\tcolor: $green;\n\t\tfont-weight: bold;\n\t}\n\n\t// Key declaration\n\t.cmKeyDeclaration {\n\t\tcolor: $green;\n\t\tfont-weight: bold;\n\t}\n\n\t// Chordline\n\t.cmChordLine {\n\t\tcolor: $ccs-accent;\n\t}\n\n\t.cmBarSeparator {\n\t\topacity: 0.5;\n\t}\n\n\t.cmChordDuration {\n\t\topacity: 0.7;\n\t}\n\n\t.cmSubBeatGroupOpener,\n\t.cmSubBeatGroupCloser {\n\t\topacity: 0.8;\n\t\tfont-weight: bold;\n\t}\n\n\t.cmChordLine-romanNumeral,\n\t.cmRomanNumeral {\n\t\tcolor: $ccs-accent;\n\t}\n\n\t.cmRomanNumeral-diatonic {\n\t\tfont-weight: bold;\n\t\tcolor: $ccs-background;\n\t\tbackground-color: $ccs-accent;\n\t}\n\n\t.cmRomanNumeral-borrowed {\n\t\tcolor: $ccs-background;\n\t\tbackground-color: rgba($ccs-accent, 0.7);\n\t}\n\n\t.cmRomanNumeral-unknown {\n\t\topacity: 0.8;\n\t}\n}\n","// Dracula theme\n$dracula-background: #282a36;\n$dracula-selection: #44475a;\n$dracula-foreground: #f8f8f2;\n$dracula-comment: #6272a4;\n$dracula-cyan: #8be9fd;\n$dracula-green: #50fa7b;\n$dracula-orange: #ffb86c;\n$dracula-pink: #ff79c6;\n$dracula-purple: #bd93f9;\n$dracula-red: #ff5555;\n$dracula-yellow: #f1fa8c;\n\n// Chord Chart Studio\n$whiteSmoke: rgba(244, 244, 244, 1);\n$onyx: rgba(48, 56, 70, 1);\n$charcoal: rgba(46, 64, 82, 1);\n$gunMetal: rgba(41, 49, 50, 1);\n$saffron: rgba(250, 191, 43, 1);\n$bitterSweet: rgba(255, 112, 96, 1);\n$screamingGreen: rgba(116, 241, 78, 1);\n\n$ccs-foreground: $whiteSmoke;\n$ccs-background: $onyx;\n$ccs-accent: $saffron;\n$ccs-primary: $charcoal;\n$ccs-secondary: $gunMetal;\n$ccs-red: $bitterSweet;\n$ccs-yellow: $saffron;\n$ccs-green: $screamingGreen;\n","@mixin base {\n\tfont-family: $font-stack;\n\tfont-size: 13px;\n\tline-height: 1.65em;\n\tpadding: 10px;\n\twhite-space: pre-wrap;\n\n\tp {\n\t\tmargin: 0;\n\t}\n}\n","$font-stack: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono',\n\t'Courier New', monospace;\n","@import '../abstract';\n@import './common';\n\n.cmTheme-dark2 {\n\tbackground-color: $dracula-background;\n\n\t.cmSong {\n\t\t@include base;\n\t\tcolor: $dracula-foreground;\n\t}\n\n\t// Sections\n\t.cmSectionLabel {\n\t\tcolor: $dracula-orange;\n\t\tfont-weight: bold;\n\t}\n\t.cmSectionMultiplier {\n\t\tcolor: $dracula-yellow;\n\t}\n\n\t// Time signature\n\t.cmTimeSignature {\n\t\tcolor: $dracula-yellow;\n\t\tfont-weight: bold;\n\t}\n\n\t// Key declaration\n\t.cmKeyDeclaration {\n\t\tcolor: $dracula-yellow;\n\t\tfont-weight: bold;\n\t}\n\n\t// Chordline\n\t.cmChordLine {\n\t\tcolor: $dracula-cyan;\n\t}\n\n\t.cmBarSeparator {\n\t\topacity: 0.5;\n\t}\n\n\t.cmChordDuration {\n\t\topacity: 0.7;\n\t}\n\n\t.cmSubBeatGroupOpener,\n\t.cmSubBeatGroupCloser {\n\t\topacity: 0.8;\n\t\tfont-weight: bold;\n\t}\n\n\t.cmChordLine-romanNumeral,\n\t.cmRomanNumeral {\n\t\tcolor: $dracula-cyan;\n\t}\n\n\t.cmRomanNumeral-diatonic {\n\t\tfont-weight: bold;\n\t\tcolor: $ccs-background;\n\t\tbackground-color: $dracula-cyan;\n\t}\n\n\t.cmRomanNumeral-borrowed {\n\t\tcolor: $ccs-background;\n\t\tbackground-color: rgba($dracula-cyan, 0.7);\n\t}\n\n\t.cmRomanNumeral-unknown {\n\t\topacity: 0.8;\n\t}\n}\n","@import '../abstract';\n@import './common';\n\n.cmTheme-dark3 {\n\tbackground-color: $dracula-background;\n\n\t.cmSong {\n\t\t@include base;\n\t\tcolor: $dracula-foreground;\n\t}\n\n\t// Sections\n\t.cmSectionLabel {\n\t\tcolor: $dracula-red;\n\t\tfont-weight: bold;\n\t}\n\t.cmSectionMultiplier {\n\t\tcolor: $dracula-yellow;\n\t}\n\n\t// Time signature\n\t.cmTimeSignature {\n\t\tcolor: $dracula-cyan;\n\t\tfont-weight: bold;\n\t}\n\n\t// Key declaration\n\t.cmKeyDeclaration {\n\t\tcolor: $dracula-cyan;\n\t\tfont-weight: bold;\n\t}\n\n\t// Chordline\n\t.cmChordLine {\n\t\tcolor: $dracula-green;\n\t}\n\n\t.cmBarSeparator {\n\t\topacity: 0.5;\n\t}\n\n\t.cmChordDuration {\n\t\topacity: 0.7;\n\t}\n\n\t.cmSubBeatGroupOpener,\n\t.cmSubBeatGroupCloser {\n\t\topacity: 0.8;\n\t\tfont-weight: bold;\n\t}\n\n\t.cmChordLine-romanNumeral,\n\t.cmRomanNumeral {\n\t\tcolor: $dracula-green;\n\t}\n\n\t.cmRomanNumeral-diatonic {\n\t\tfont-weight: bold;\n\t\tcolor: $ccs-background;\n\t\tbackground-color: $dracula-green;\n\t}\n\n\t.cmRomanNumeral-borrowed {\n\t\tcolor: $ccs-background;\n\t\tbackground-color: rgba($dracula-green, 0.7);\n\t}\n\n\t.cmRomanNumeral-unknown {\n\t\topacity: 0.8;\n\t}\n}\n","@import '../abstract';\n@import './common';\n\n.cmTheme-text {\n\t.cmSong {\n\t\t@include base;\n\t\tcolor: #333;\n\t}\n}\n","@import '../abstract';\n@import './common';\n\n.cmTheme-print {\n\tbackground-color: white;\n\n\t.cmSong {\n\t\t@include base;\n\t\tcolor: #333;\n\t\tfont-size: 12px;\n\t}\n\n\t// Sections\n\t.cmSectionLabel {\n\t\tfont-weight: bold;\n\t\ttext-decoration: underline;\n\t}\n\t.cmSectionMultiplier {\n\t\tfont-weight: normal;\n\t\ttext-decoration: unset;\n\t}\n\n\t// Time signature\n\t.cmTimeSignature {\n\t\tfont-weight: bold;\n\t}\n\n\t// Key declaration\n\t.cmKeyDeclaration {\n\t\tfont-weight: bold;\n\t}\n\n\t// Chordline\n\t.cmChordLine {\n\t}\n\n\t.cmBarSeparator {\n\t\topacity: 0.5;\n\t}\n\n\t.cmChordDuration {\n\t\topacity: 0.7;\n\t}\n\n\t.cmSubBeatGroupOpener,\n\t.cmSubBeatGroupCloser {\n\t\topacity: 0.8;\n\t\tfont-weight: bold;\n\t}\n}\n",".cmLine {\n\t.cmSong--fontSize-5 & {\n\t\tfont-size: 0.5em;\n\t\tline-height: 1.15em;\n\t}\n\t.cmSong--fontSize-4 & {\n\t\tfont-size: 0.6em;\n\t\tline-height: 1.25em;\n\t}\n\t.cmSong--fontSize-3 & {\n\t\tfont-size: 0.7em;\n\t\tline-height: 1.35em;\n\t}\n\t.cmSong--fontSize-2 & {\n\t\tfont-size: 0.8em;\n\t\tline-height: 1.45em;\n\t}\n\t.cmSong--fontSize-1 & {\n\t\tfont-size: 0.9em;\n\t\tline-height: 1.55em;\n\t}\n\t.cmSong--fontSize1 & {\n\t\tfont-size: 1.1em;\n\t\tline-height: 1.75em;\n\t}\n\t.cmSong--fontSize2 & {\n\t\tfont-size: 1.2em;\n\t\tline-height: 1.85em;\n\t}\n\t.cmSong--fontSize3 & {\n\t\tfont-size: 1.3em;\n\t\tline-height: 1.95em;\n\t}\n\t.cmSong--fontSize4 & {\n\t\tfont-size: 1.4em;\n\t\tline-height: 2.05em;\n\t}\n\t.cmSong--fontSize5 & {\n\t\tfont-size: 1.5em;\n\t\tline-height: 2.15em;\n\t}\n}\n","@import '../abstract';\n@import './common';\n\n.cmTheme-print2 {\n\tbackground-color: white;\n\n\t.cmSong {\n\t\t@include base;\n\t\tcolor: #333;\n\t\tfont-size: 14px;\n\t\tline-height: 1.4em;\n\t\tfont-family: 'Menlo', 'Courier New', Courier, monospace;\n\t}\n\n\t// Sections\n\t.cmSection {\n\t\tborder: 1px solid black;\n\t\tborder-radius: 8px;\n\t\tpadding: 0.4em;\n\t\tmargin: 0.2em 0 0.2em 0;\n\t\t// below line only needed for wkhtmltopdf\n\t\tbreak-inside: avoid;\n\t}\n\n\t.cmSection-Chorus {\n\t\tbackground-color: #ededed;\n\t}\n\n\t.cmSectionLabel {\n\t\tfont-weight: bold;\n\t\tfont-size: 0.85em;\n\t\ttext-transform: uppercase;\n\t}\n\t.cmSectionMultiplier {\n\t\ttext-decoration: unset;\n\t\tfont-size: 0.95em;\n\t}\n\n\t// Time signature\n\t.cmTimeSignature {\n\t\tfont-weight: bold;\n\t}\n\n\t// Key declaration\n\t.cmKeyDeclaration {\n\t\tfont-weight: bold;\n\t}\n\n\t// Empty Lines - Hide to save print space\n\t.cmEmptyLine {\n\t\tdisplay: none;\n\t}\n\n\t// Chordline\n\t.cmChordLine {\n\t\tfont-weight: bolder;\n\t}\n\n\t.cmBarSeparator {\n\t\topacity: 0.5;\n\t}\n\n\t.cmChordDuration {\n\t\topacity: 0.7;\n\t}\n\n\t.cmSubBeatGroupOpener,\n\t.cmSubBeatGroupCloser {\n\t\topacity: 0.8;\n\t\tfont-weight: bold;\n\t}\n}\n","@import '../../../scss/abstract';\n\n.ErrorBoundary {\n\tpadding: $spacer-medium;\n}\n","// Spacings\n$spacer-extra-tiny: 0.25rem !default;\n$spacer-tiny: 0.5rem !default;\n$spacer-tiny-plus: 0.7rem !default;\n$spacer-small: 1rem !default;\n$spacer-small-plus: 1.5rem !default;\n$spacer-medium: 2rem !default;\n$spacer-medium-plus: 3rem !default;\n$spacer-large: 4rem !default;\n$spacer-large-plus: 6rem !default;\n$spacer-extra-large: 8rem !default;\n$spacer-extra-large-plus: 12rem !default;\n$spacer-ultra-large: 16rem !default;\n$spacer-ultra-large-plus: 20rem !default;\n","@import '../../../../../scss/abstract';\n@import '../themes';\n\nhtml,\nbody,\n#app {\n\theight: 100%;\n\tpadding: 0;\n}\n\n.appLayout-wrapper {\n\twidth: 100%;\n\theight: 100%;\n\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n}\n\n// Sidebars\n\n.leftBar {\n\tflex-shrink: 0;\n\twidth: 15%;\n\tmax-width: 250px;\n\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\n\t&.leftBar-isCollapsed {\n\t\twidth: 48px;\n\t}\n\n\t@include themify($themes) {\n\t\tcolor: themed('leftBar-txt');\n\t\tbackground-color: themed('leftBar-bg');\n\n\t\t&.leftBar-isCollapsed {\n\t\t\tborder-right: 1px solid themed('leftBar-border');\n\n\t\t\t&:hover {\n\t\t\t\tbackground-color: themed('leftBar-bgHover');\n\t\t\t}\n\t\t}\n\t}\n\n\t@media print {\n\t\tdisplay: none;\n\t}\n}\n\n.rightBar {\n\tflex-shrink: 0;\n\twidth: 15%;\n\tmax-width: 250px;\n\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\n\t&.rightBar-isCollapsed {\n\t\twidth: 48px;\n\t}\n\n\t@include themify($themes) {\n\t\tcolor: themed('rightBar-txt');\n\t\tbackground-color: themed('rightBar-bg');\n\n\t\t&.rightBar-isCollapsed {\n\t\t\tborder-left: 1px solid themed('rightBar-border');\n\n\t\t\t&:hover {\n\t\t\t\tbackground-color: themed('rightBar-bgHover');\n\t\t\t}\n\t\t}\n\t}\n\n\t@media print {\n\t\tdisplay: none;\n\t}\n}\n\n.leftBar-content {\n\toverflow-y: scroll;\n\tflex: 1 1 auto;\n\n\t.leftBar-isCollapsed & {\n\t\tpadding: $spacer-tiny $spacer-small;\n\t\ttext-align: center;\n\t\tcursor: pointer;\n\t\toverflow: hidden;\n\t}\n}\n\n.rightBar-content {\n\toverflow-y: scroll;\n\tflex: 1 1 auto;\n\n\t.rightBar-isCollapsed & {\n\t\tpadding: $spacer-tiny $spacer-small;\n\t\ttext-align: center;\n\t\tcursor: pointer;\n\t\toverflow: hidden;\n\t}\n}\n\n.leftBar-collapser {\n\tflex: 0 0 12px;\n\tdisplay: flex;\n\tcursor: pointer;\n\n\t.leftBar-isCollapsed & {\n\t\tdisplay: none;\n\t}\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('leftBar-collapser-bg');\n\t\tborder-right: 1px solid themed('leftBar-collapser-border');\n\n\t\t&:hover {\n\t\t\tbackground-color: themed('leftBar-collapser-bgHover');\n\t\t}\n\t}\n\n\t@include themify($themes) {\n\t\tcolor: themed('leftBar-collapser-txt');\n\t}\n}\n\n.leftBar-collapserIcon {\n\tflex: 1 1 auto;\n\talign-self: center;\n\tfont-weight: $weight-bold;\n\n\t.icon {\n\t\t@include font-size(small);\n\t}\n}\n\n.rightBar-collapser {\n\tflex: 0 0 12px;\n\tdisplay: flex;\n\tcursor: pointer;\n\n\t.rightBar-isCollapsed & {\n\t\tdisplay: none;\n\t}\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('rightBar-collapser-bg');\n\t\tborder-left: 1px solid themed('rightBar-collapser-border');\n\n\t\t&:hover {\n\t\t\tbackground-color: themed('rightBar-collapser-bgHover');\n\t\t}\n\t}\n\n\t@include themify($themes) {\n\t\tcolor: themed('rightBar-collapser-txt');\n\t}\n}\n\n.rightBar-collapserIcon {\n\tflex: 1 1 auto;\n\talign-self: center;\n\tfont-weight: $weight-bold;\n\n\t.icon {\n\t\t@include font-size(small);\n\t}\n}\n\n// Main area\n\n.appLayout-main {\n\tflex-grow: 1;\n\n\tdisplay: flex;\n\tflex-direction: column;\n\tflex-wrap: nowrap;\n}\n\n.appLayout-header {\n\tflex-shrink: 0;\n\n\t@include themify($themes) {\n\t\tcolor: themed('header-txt');\n\t\tbackground-color: themed('header-bg');\n\t\tborder-bottom: 3px solid themed('header-border');\n\t}\n\n\t@media print {\n\t\tdisplay: none;\n\t}\n}\n\n.appLayout-content {\n\toverflow-y: auto;\n\tflex-grow: 1;\n\n\t@media print {\n\t\toverflow-y: visible;\n\t}\n}\n\n.appLayout-footer {\n\t@include themify($themes) {\n\t\tcolor: themed('footer-txt');\n\t}\n\n\t@media print {\n\t\tdisplay: none;\n\t}\n}\n","@import '../../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\tlogo-txt: cv(dark-foreground),\n\t),\n);\n\n.logo-isExpanded {\n\tbox-sizing: border-box;\n\tpadding: $spacer-small-plus 0 $spacer-small;\n\twidth: 100%;\n\n\t.leftBar-isCollapsed & {\n\t\tdisplay: none;\n\t}\n}\n\n.logo-img {\n\tmargin: 0 auto;\n\twidth: 70%;\n\tsvg {\n\t\tfill: #fff;\n\t\taspect-ratio: 1.25 / 1;\n\t\twidth: 80%;\n\t\tmargin: 5px auto 10px auto;\n\t\tdisplay: block;\n\t}\n}\n","@import '../../../../../scss/abstract';\n@import '../themes';\n\n.mainNav-entries {\n\tmargin: 0;\n\tpadding: 0;\n\tdisplay: flex;\n\tjustify-content: center;\n\n\tlist-style-type: none;\n\t@include font-size(base);\n\tfont-family: $font-family-headings;\n\tfont-weight: 400;\n\tvertical-align: middle;\n}\n\n.mainNavEntry {\n\tdisplay: inline-block;\n\tpadding: $spacer-small $spacer-medium;\n\tcursor: default;\n\tfont-weight: bold;\n\n\t&:hover:not(.mainNavEntry-isActive) {\n\t\tcursor: pointer;\n\t}\n\n\t&:hover:not(.mainNavEntry-isDisabled):not(.mainNavEntry-isActive) {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('header-txtHover');\n\t\t\tbackground-color: themed('header-bgHover');\n\t\t}\n\t}\n\n\t&.mainNavEntry-isActive {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('header-txtActive');\n\t\t\tbackground-color: themed('header-bgActive');\n\t\t}\n\t}\n\n\t&.mainNavEntry-isDisabled {\n\t\tuser-select: none;\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('header-txtDisabled');\n\t\t\tbackground-color: themed('header-bgDisabled');\n\t\t\tcursor: not-allowed;\n\t\t}\n\t}\n}\n\n.mainNavEntry-icon {\n\t.icon {\n\t\tmargin-right: $spacer-tiny;\n\t\t@include font-size(normal);\n\t}\n}\n","@import '../../../scss/abstract';\n\n.icon {\n\tvertical-align: middle;\n}\n","@import '../../../../scss/abstract';\n\n.userGuide-isExpanded {\n\tmargin-left: $spacer-small;\n\n\t.rightBar-isCollapsed & {\n\t\tdisplay: none;\n\t}\n}\n\n.userGuide-isCollapsed {\n\tpadding: $spacer-small 0;\n\n\t.rightBar:not(.rightBar-isCollapsed) & {\n\t\tdisplay: none;\n\t}\n}\n","@import '../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\t// primary\n\t\tbutton-primary-txt: cv(dark-primary, dark10),\n\t\tbutton-primary-txtHover: cv(dark-secondary, dark20),\n\t\tbutton-primary-txtActive: cv(dark-primary),\n\t\tbutton-primary-txtDisabled: cv(dark-secondary, light10),\n\t\tbutton-primary-bg: cv(dark-accent),\n\t\tbutton-primary-bgHover: cv(dark-accent, light20),\n\t\tbutton-primary-bgActive: cv(dark-accent, light30),\n\t\tbutton-primary-bgDisabled: cv(dark-secondary, light20),\n\t\t// primary\n\t\tbutton-secondary-txt: cv(dark-secondary, dark10),\n\t\tbutton-secondary-txtHover: cv(dark-secondary, dark20),\n\t\tbutton-secondary-txtActive: cv(dark-primary),\n\t\tbutton-secondary-txtDisabled: cv(dark-secondary, light10),\n\t\tbutton-secondary-bg: cv(dark-foreground, dark30),\n\t\tbutton-secondary-bgHover: cv(dark-foreground, dark20),\n\t\tbutton-secondary-bgActive: cv(dark-foreground, dark10),\n\t\tbutton-secondary-bgDisabled: cv(dark-secondary, light20),\n\t),\n);\n\nbutton {\n\tborder: 0;\n\tborder-radius: 0;\n\tbackground-color: transparent;\n}\n\n.Button {\n\tdisplay: inline-block;\n\tpadding: 10px 20px;\n\tfont-weight: bold;\n\ttext-transform: capitalize;\n\tmargin: 10px 20px 10px 0;\n\n\t&:hover {\n\t\tcursor: pointer;\n\t}\n\n\t&:last-of-type {\n\t\tmargin-right: 0;\n\t}\n}\n\n.Button-primary:not(.Button-isDisabled) {\n\t@include themify($themes) {\n\t\tbackground-color: themed('button-primary-bg');\n\t\tcolor: themed('button-primary-txt');\n\t}\n\n\t&:hover {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('button-primary-txtHover');\n\t\t\tbackground-color: themed('button-primary-bgHover');\n\t\t}\n\t}\n\n\t&:active {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('button-primary-txtActive');\n\t\t\tbackground-color: themed('button-primary-bgActive');\n\t\t}\n\t}\n}\n\n.Button-primary.Button-isDisabled {\n\tcursor: not-allowed;\n\t@include themify($themes) {\n\t\tbackground-color: themed('button-primary-bgDisabled');\n\t\tcolor: themed('button-primary-txtDisabled');\n\t}\n}\n\n.Button-secondary:not(.Button-isDisabled) {\n\t@include themify($themes) {\n\t\tbackground-color: themed('button-secondary-bg');\n\t\tcolor: themed('button-secondary-txt');\n\t}\n\n\t&:hover {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('button-secondary-txtHover');\n\t\t\tbackground-color: themed('button-secondary-bgHover');\n\t\t}\n\t}\n\n\t&:active {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('button-secondary-txtActive');\n\t\t\tbackground-color: themed('button-secondary-bgActive');\n\t\t}\n\t}\n}\n\n.Button-secondary.Button-isDisabled {\n\tcursor: not-allowed;\n\t@include themify($themes) {\n\t\tbackground-color: themed('button-secondary-bgDisabled');\n\t\tcolor: themed('button-secondary-txtDisabled');\n\t}\n}\n","@import '../../../../scss/abstract';\n\n.versions-isExpanded {\n\tmargin: $spacer-large 0;\n\tpadding: 0 $spacer-small;\n\topacity: 0.5;\n\n\t@include font-size(tiny);\n\n\t.rightBar-isCollapsed & {\n\t\tdisplay: none;\n\t}\n\n\ta {\n\t\tcolor: inherit;\n\t\t&:hover {\n\t\t\topacity: 0.7;\n\t\t}\n\t}\n}\n","@import '../../../scss/abstract';\n@import '../themes';\n\n.sim-SongImporterModal_Container {\n\tposition: absolute;\n\ttop: 50%;\n\tleft: 50%;\n\ttransform: translate(-50%, -50%);\n\twidth: 90%;\n\theight: 90%;\n\n\tdisplay: flex;\n\tflex-direction: column;\n\talign-items: stretch;\n\talign-content: stretch;\n\tflex-wrap: nowrap;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('modal-bg');\n\t\tborder: 1px solid themed('modal-border');\n\t\tcolor: themed('modal-txt');\n\t}\n}\n\n.sim-Header_Container {\n\tflex: 0 0 auto;\n\tdisplay: flex;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('header-bg');\n\t\tborder-bottom: 1px solid themed('header-border');\n\t\tcolor: themed('header-txt');\n\t}\n}\n\n.sim-Header_Title {\n\tflex: 1 1 auto;\n\tpadding: 20px;\n\t@include font-size(base);\n\tfont-weight: bolder;\n}\n\n.sim-Header_Actions {\n\tflex: 0 0 auto;\n\tpadding: 0 10px;\n}\n\n.sim-TwoColumns_Container {\n\tdisplay: flex;\n\talign-self: stretch;\n}\n\n.sim-TwoColumns_Container-autoHeight {\n\tflex: 0 1 100%;\n\tmin-height: 0; // necessary, otherwise content doesn't scroll!\n}\n\n.sim-Column_Container {\n\tflex: 1 1 50%;\n\talign-self: stretch;\n\tpadding: 0 10px;\n\n\t&:first-child {\n\t\tpadding-right: 5px;\n\t}\n\t&:last-child {\n\t\tpadding-left: 5px;\n\t}\n}\n\n.sim-Input_Header {\n\theight: 20px;\n\ttext-transform: uppercase;\n\tpadding: 2px;\n\ttext-align: center;\n\t@include font-size(small);\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('inputHeader-bg');\n\t\tcolor: themed('inputHeader-txt');\n\t}\n}\n\n.sim-Input_Textarea {\n\tbox-sizing: border-box;\n\tpadding: 10px;\n\twidth: 100%;\n\theight: calc(100% - 24px - 10px);\n\tmax-height: calc(100% - 24px - 10px);\n\toverflow-y: scroll;\n\tresize: none;\n\tmargin: 0;\n\tbackground-color: transparent;\n\tborder: 0;\n\toutline: none;\n\n\tfont-family: $font-family-monospace;\n\t@include font-size(small);\n\tline-height: 1.5rem;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('input-bg');\n\t\tcolor: themed('input-txt');\n\t}\n}\n\n.sim-Input_Textarea-Disabled {\n\topacity: 0.5;\n}\n\n.sim-Preview_Container {\n\tbox-sizing: border-box;\n\n\tfont-family: $font-family-monospace;\n\t@include font-size(small);\n\twhite-space: pre-wrap;\n\theight: calc(100% - 24px - 10px);\n\tmax-height: calc(100% - 24px - 10px);\n\toverflow-y: scroll;\n\tpadding: 10px;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('preview-bg');\n\t}\n}\n\n.sim-Preview_Error {\n\tpadding: 10px;\n\t@include themify($themes) {\n\t\tcolor: themed('previewError-txt');\n\t\tbackground-color: themed('previewError-bg');\n\t}\n}\n\n.sim-InputFile_Input {\n\t// https://tympanus.net/codrops/2015/09/15/styling-customizing-file-inputs-smart-way/\n\twidth: 0.1px;\n\theight: 0.1px;\n\topacity: 0;\n\toverflow: hidden;\n\tposition: absolute;\n\tz-index: -1;\n}\n\n.sim-InputFormat {\n\tpadding: 10px 0;\n}\n\n.sim-InputFormat_Entry {\n\tdisplay: inline-block;\n\tmargin: 0 10px;\n\n\t&:hover {\n\t\tcursor: pointer;\n\t}\n}\n\n.sim-InputFormat_Label {\n\t&:hover {\n\t\tcursor: pointer;\n\t}\n}\n\n.sim-InputFormat_Entry-Disabled,\n.sim-InputFormat_Label-Disabled {\n\t&:hover {\n\t\tcursor: not-allowed;\n\t}\n\topacity: 0.5;\n}\n","@import '../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\tmodal-bg: cv(dark-secondary, dark5),\n\t\tmodal-border: cv(dark-foreground, dark20),\n\t\tmodal-txt: cv(dark-foreground),\n\t),\n);\n\n.mod-ModalContainer {\n\tz-index: $zindex-modal;\n\theight: 100%;\n\twidth: 100%;\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n}\n\n.mod-Overlay {\n\theight: 100%;\n\twidth: 100%;\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\topacity: 0.7;\n\tbackground-color: black;\n}\n\n.mod-ContentContainer {\n}\n\n.mod-ModalConfirmContainer {\n\tz-index: $zindex-modal;\n\n\tposition: absolute;\n\ttop: 50%;\n\tleft: 50%;\n\ttransform: translate(-50%, -50%);\n\twidth: auto;\n\theight: auto;\n\n\tpadding: 10px 20px;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('modal-bg');\n\t\tborder: 1px solid themed('modal-border');\n\t\tcolor: themed('modal-txt');\n\t}\n}\n\n.mod-ModalConfirmButtons {\n\ttext-align: center;\n}\n","@import '../../../scss/abstract';\n@import '../themes';\n\n.fileManager-isExpanded {\n\t@include font-size(small);\n\n\t.leftBar-isCollapsed & {\n\t\tdisplay: none;\n\t}\n}\n\n.fileManager-isCollapsed {\n\tpadding: $spacer-small 0;\n\t.leftBar:not(.leftBar-isCollapsed) & {\n\t\tdisplay: none;\n\t}\n}\n\n.fileManager-actionsList {\n\tpadding: $spacer-small;\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: wrap;\n\t@include themify($themes) {\n\t\tbackground-color: themed('actions-bg');\n\t}\n}\n\n.fileManagerAction {\n\tflex: 0 1 auto;\n\tpadding: $spacer-tiny;\n\tmargin-right: $spacer-tiny;\n\twhite-space: nowrap;\n\n\t&:hover {\n\t\tcursor: not-allowed;\n\t}\n\n\t&:hover:not(.fileManagerAction-isDisabled) {\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('action-bgHover');\n\t\t}\n\t\tcursor: pointer;\n\t}\n}\n\n.fileManagerAction-isDisabled {\n\tuser-select: none;\n\n\topacity: 0.5;\n}\n\n.fileManagerAction-icon {\n\t.icon {\n\t\t@include font-size(normal);\n\t}\n}\n\n.fileManager-entriesList {\n\tpadding-left: 0;\n\tlist-style: none;\n}\n\n.fileManagerEntry {\n\tcursor: pointer;\n\tpadding: 0.1rem 0;\n\n\t&:hover {\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('fileEntry-bgHover');\n\t\t}\n\t}\n\n\t&.fileManagerEntry-isSelected {\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('fileEntry-bgActive');\n\t\t}\n\t}\n}\n\n.fileManagerEntry-input {\n\tbox-sizing: border-box;\n\twidth: 100%;\n\tpadding: 0 $spacer-small;\n\n\tbackground-color: transparent;\n\tborder: none;\n\tcursor: pointer;\n\toutline: none;\n\t@include themify($themes) {\n\t\tcolor: themed('fileEntry-txt');\n\t}\n\n\t.fileManagerEntry-isSelected & {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('fileEntry-txtActive');\n\t\t}\n\t}\n\n\t.fileManagerEntry-isRenamed & {\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('fileEntry-bgRenamed');\n\t\t\tcolor: themed('fileEntry-txtRenamed');\n\t\t}\n\t\tcursor: text;\n\t}\n}\n","@import '../../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\teditorSrc-bg: cv(dark-secondary, dark5),\n\t\tinputHeader-txt: cv(dark-foreground, fade),\n\t\tinputHeader-bg: cv(dark-secondary, light10),\n\t\tinputHeader-gutter: cv(dark-secondary, dark5),\n\t),\n);\n\n$headerVPadding: 3px;\n$headerHeight: 20px;\n\n.songEditor-headers {\n\tdisplay: flex;\n\n\theight: $headerHeight;\n\ttext-transform: uppercase;\n\tpadding: $headerVPadding 0;\n\ttext-align: center;\n\t@include font-size(small);\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('inputHeader-bg');\n\t\tcolor: themed('inputHeader-txt');\n\t}\n}\n\n.songEditor-sourceHeader {\n\tflex: 0 1 50%;\n}\n\n.songEditor-previewHeader {\n\tflex: 0 1 50%;\n}\n\n.songEditor {\n\twidth: 100%;\n\theight: calc(100% - #{$headerHeight + $headerVPadding * 2});\n\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n}\n\n.songEditor-source {\n\tflex: 0 1 50%;\n\tdisplay: flex;\n\toverflow-y: scroll;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('editorSrc-bg');\n\t}\n}\n\n.songEditor-preview {\n\tflex: 0 1 50%;\n\toverflow-y: scroll;\n}\n","@import '../../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\teditorPreview-txt: cv(dark-foreground, dark10),\n\t),\n);\n\n.editorPreview {\n\tbox-sizing: border-box;\n\tpadding: $spacer-tiny;\n\tmin-height: 100%;\n}\n\n.cmTheme-fadeRepeats {\n\t.cmLine--isFromAutoRepeatChords,\n\t.cmLine--isFromChordLineRepeater,\n\t.cmLine--isFromSectionCopy,\n\t.cmLine--isFromSectionMultiply {\n\t\topacity: 0.5;\n\t}\n}\n","@import '../../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\teditor-txt: cv(dark-foreground, dark10),\n\t),\n);\n\n.prosemirrorWrapper {\n\tflex: 1 1 auto;\n\tpadding: 15px 0;\n}\n\n.ProseMirror {\n\theight: 100%;\n\toutline: none;\n\n\tfont-family: $cmFontStack;\n\tfont-size: $cmFontSize;\n\tline-height: $cmLineHeight;\n\n\t@include themify($themes) {\n\t\tcolor: themed('editor-txt');\n\t}\n\n\tp {\n\t\tmargin: 0;\n\t\tpadding: 0 $spacer-small;\n\t}\n}\n",".ProseMirror {\n position: relative;\n}\n\n.ProseMirror {\n word-wrap: break-word;\n white-space: pre-wrap;\n white-space: break-spaces;\n -webkit-font-variant-ligatures: none;\n font-variant-ligatures: none;\n font-feature-settings: \"liga\" 0; /* the above doesn't seem to work in Edge */\n}\n\n.ProseMirror pre {\n white-space: pre-wrap;\n}\n\n.ProseMirror li {\n position: relative;\n}\n\n.ProseMirror-hideselection *::selection { background: transparent; }\n.ProseMirror-hideselection *::-moz-selection { background: transparent; }\n.ProseMirror-hideselection { caret-color: transparent; }\n\n/* See https://github.com/ProseMirror/prosemirror/issues/1421#issuecomment-1759320191 */\n.ProseMirror [draggable][contenteditable=false] { user-select: text }\n\n.ProseMirror-selectednode {\n outline: 2px solid #8cf;\n}\n\n/* Make sure li selections wrap around markers */\n\nli.ProseMirror-selectednode {\n outline: none;\n}\n\nli.ProseMirror-selectednode:after {\n content: \"\";\n position: absolute;\n left: -32px;\n right: -2px; top: -2px; bottom: -2px;\n border: 2px solid #8cf;\n pointer-events: none;\n}\n\n/* Protect against generic img rules */\n\nimg.ProseMirror-separator {\n display: inline !important;\n border: none !important;\n margin: 0 !important;\n}\n","@import '../../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\tsong-txt: cv(dark-foreground),\n\t\tsong-bg: cv(dark-secondary),\n\t),\n);\n\n.exportPreview {\n\tbox-sizing: border-box;\n\tmin-height: 100%;\n\tpadding: $spacer-small;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('song-bg');\n\t\tcolor: themed('song-txt');\n\t}\n}\n\n.exp-SongRenderer {\n\tfont-family: $cmFontStack;\n\tfont-size: $cmFontSize;\n\tline-height: $cmLineHeight;\n\n\tpadding: 15px;\n\twhite-space: pre-wrap;\n\tcolor: #333;\n\n\tp {\n\t\tmargin: 0;\n\t}\n\n\t.txtLine {\n\t\tdisplay: block;\n\t}\n\n\t@include themify($themes) {\n\t\tcolor: themed('song-txt') !important;\n\t}\n}\n","@import '../../../../scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\tplayRenderer-bg: cv(dark-secondary),\n\t),\n);\n\n// Those wrapper are used so the columned div can use height: 100% inside a div with margins\n// We use the trick with an \"absolute\" positioned that fills the available height\n.playRendererWrapper1 {\n\tposition: relative; // needs to be relative so the \"absolute\" trick works to fill the height\n\theight: 100%;\n\toverflow-y: scroll;\n}\n\n.playRendererWrapper2 {\n\tposition: absolute;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\tleft: 0;\n}\n\n.playRenderer {\n\tbox-sizing: border-box;\n\tmin-height: 100%;\n\n\t.cmSong {\n\t\tpadding: 0 !important;\n\t}\n}\n\n.playRenderer--columns-1 {\n\tcolumn-count: 1;\n\tpadding: $spacer-small;\n}\n.playRenderer--columns-2 {\n\tcolumn-count: 2;\n\tcolumn-fill: auto;\n\theight: 100%;\n\tpadding: $spacer-small;\n}\n.playRenderer--columns-3 {\n\tcolumn-count: 3;\n\tcolumn-fill: auto;\n\theight: 100%;\n\tpadding: $spacer-small;\n}\n.playRenderer--columns-4 {\n\tcolumn-count: 4;\n\tcolumn-fill: auto;\n\theight: 100%;\n\tpadding: $spacer-small;\n}\n","@import '././././scss/abstract';\n\n$themes: (\n\tlight: (),\n\tdark: (\n\t\tsong-txt: cv(dark-background),\n\t\tsong-bg: cv(dark-foreground),\n\t\tdesktop-bg: cv(dark-secondary),\n\t),\n);\n\n.printPreview {\n\toverflow: hidden;\n\tmin-height: 100%;\n\n\t@include themify($themes) {\n\t\tbackground-color: themed('desktop-bg');\n\t}\n\n\t@media print {\n\t\tbackground-color: white !important;\n\t\toverflow-y: auto;\n\t}\n}\n\n.printPreview-page {\n\t// see size and font-size definitions below\n\n\tposition: relative;\n\tmargin: $spacer-medium auto;\n\tbackground-color: white;\n\n\t@media print {\n\t\tmargin: 0;\n\t\tpage-break-after: auto;\n\t}\n}\n\n// This wrapper is used for the page padding and to fill all available height\n.printPreview-pageContentWrapper {\n\t// see padding definitions below\n\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tbottom: 0;\n\tright: 0;\n}\n\n// Flex container for header + columnsWrapper\n.printPreview-pageContent {\n\tdisplay: flex;\n\tflex-direction: column;\n\tflex-wrap: nowrap;\n\n\theight: 100%;\n}\n\n.printPreview-pageHeader {\n\tfont-family:\n\t\tsystem-ui,\n\t\t-apple-system,\n\t\tBlinkMacSystemFont,\n\t\t'Segoe UI',\n\t\tHelvetica,\n\t\tArial,\n\t\tsans-serif,\n\t\t'Apple Color Emoji',\n\t\t'Segoe UI Emoji',\n\t\t'Segoe UI Symbol';\n\t@include font-size(big);\n\tfont-weight: $weight-bold;\n\n\tmargin-bottom: $spacer-small;\n}\n\n// flex container for columns\n.printPreview-pageColumnWrapper {\n\tflex: 1;\n\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n}\n\n.printPreview-pageColumn {\n\tflex: 1 1 0;\n\tmargin: 0 $spacer-tiny-plus;\n\n\t&:first-of-type {\n\t\tmargin-left: 0;\n\t}\n\n\t&:last-of-type {\n\t\tmargin-right: 0;\n\t}\n}\n\n// Document Size definitions\n.printPreview-page--a4 {\n\twidth: 210mm;\n\theight: 297mm;\n}\n\n.printPreview-page--booxmax2pro {\n\twidth: 698px;\n\theight: 930px;\n}\n\n// Margin definitions\n.printPreview-pageContentWrapper--padding1 {\n\tpadding: 3mm;\n}\n.printPreview-pageContentWrapper--padding2 {\n\tpadding: 6mm;\n}\n.printPreview-pageContentWrapper--padding3 {\n\tpadding: 9mm;\n}\n.printPreview-pageContentWrapper--padding4 {\n\tpadding: 12mm;\n}\n.printPreview-pageContentWrapper--padding5 {\n\tpadding: 15mm;\n}\n\n.cmTheme-print {\n\t.cmSong {\n\t\tpadding: 0 !important;\n\t}\n}\n",".measuring-node {\n\tvisibility: hidden;\n\tposition: absolute;\n\tz-index: -1;\n}\n","@import '../../../../scss/abstract';\n\n.renderingOptionsPanel-isExpanded {\n\t.rightBar-isCollapsed & {\n\t\tdisplay: none;\n\t}\n}\n\n.renderingOptionsPanel-isCollapsed {\n\tpadding: $spacer-small 0;\n\n\t.rightBar:not(.rightBar-isCollapsed) & {\n\t\tdisplay: none;\n\t}\n}\n","@import '../../../../../scss/abstract';\n@import '../_themes.scss';\n\n.sb-optionsGroup {\n\tpadding-top: $spacer-medium;\n\n\t&:first-of-type {\n\t\tpadding-top: 0;\n\t}\n}\n\n.sb-optionsGroup-title {\n\tuser-select: none;\n\n\tpadding: $spacer-tiny $spacer-small $spacer-tiny $spacer-tiny;\n\n\t@include font-size(normal);\n\tfont-weight: $weight-bold;\n\n\t@include themify($themes) {\n\t\tborder-bottom: 2px solid themed('optionsGroup-border');\n\t}\n\n\t.sb-optionsGroup-isNotInteractable & {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('option-isDisabled');\n\t\t}\n\t}\n}\n\n.sb-optionsGroup-content {\n}\n\n.sb-optionsGroup-iconTitle {\n\t.icon {\n\t\t@include font-size(base);\n\t}\n}\n\n.sb-optionsGroup-iconToggle {\n\t.icon {\n\t\t@include font-size(big);\n\t}\n}\n","@import '../../../../../scss/abstract';\n@import '../_themes.scss';\n\n.sb-optionSelect {\n\t@include font-size(small);\n\n\tpadding: $spacer-tiny $spacer-small-plus $spacer-tiny $spacer-small;\n\n\t@include themify($themes) {\n\t\tborder-bottom: 1px dotted themed('option-border');\n\t}\n\n\t.sb-optionsGroup & {\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('optionsGroup-option-bg');\n\t\t}\n\t}\n\n\t&.sb-optionSelect-isNotInteractable {\n\t\tuser-select: none;\n\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('option-isDisabled');\n\t\t}\n\t}\n\n\t&:hover {\n\t\tcursor: not-allowed;\n\t}\n\n\t&:hover:not(.sb-optionSelect-isNotInteractable) {\n\t\tcursor: pointer;\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('option-bgHover');\n\t\t}\n\t}\n}\n\n.sb-optionSelect-title {\n\tdisplay: flex;\n}\n\n.sb-optionSelect-desc {\n\tflex: 1 1 auto;\n}\n\n.sb-optionSelect-toggle {\n\tflex: 0 0 auto;\n}\n\n.sb-optionSelect-icon {\n\t.icon {\n\t\t@include font-size(big);\n\t}\n}\n\n.sb-optionSelectChoice-activeLabel {\n\topacity: 0.5;\n}\n\n.sb-optionSelectChoice {\n\tpadding-top: $spacer-tiny;\n\tdisplay: flex;\n\n\t&:hover:not(.sb-optionSelectChoice-isNotInteractable) {\n\t\ttext-decoration: underline;\n\t\tcursor: pointer;\n\t}\n}\n\n.sb-optionSelectChoice-isSelected {\n\tfont-weight: $weight-bold;\n}\n\n.sb-optionSelectChoice-check {\n\tflex: 0 0 20px;\n}\n\n.sb-optionSelectChoice-checkIcon {\n\t.icon {\n\t\t@include font-size(small);\n\t}\n}\n\n.sb-optionSelectChoice-label {\n\tflex: 1 1 auto;\n}\n","@import '../../../../../scss/abstract';\n@import '../_themes.scss';\n\n.sb-optionSlider {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\n\t@include font-size(small);\n\n\tpadding: $spacer-tiny $spacer-small-plus $spacer-tiny $spacer-small;\n\n\t@include themify($themes) {\n\t\tborder-bottom: 1px dotted themed('option-border');\n\t}\n\n\t.sb-optionsGroup & {\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('optionsGroup-option-bg');\n\t\t}\n\t}\n\n\t&.sb-optionSlider-isNotInteractable {\n\t\tuser-select: none;\n\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('option-isDisabled');\n\t\t}\n\t}\n\n\t&:hover {\n\t\tcursor: not-allowed;\n\t}\n\n\t&:hover:not(.sb-optionSlider-isNotInteractable) {\n\t\tcursor: pointer;\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('option-bgHover');\n\t\t}\n\t}\n}\n\n.sb-optionSlider-desc {\n\tflex: 1 1 auto;\n}\n\n.sb-optionSlider-value {\n\tflex: 0 0 auto;\n\tvertical-align: middle;\n\n\t@include font-size(small);\n}\n\n.sb-optionSlider-range {\n\tflex: 1 1 100%;\n\n\tinput[type='range'] {\n\t\t@include themify($themes) {\n\t\t\t@include input-type-range(\n\t\t\t\t$thumb-color: themed('range-thumb'),\n\t\t\t\t$track-color: themed('range-track')\n\t\t\t);\n\t\t}\n\n\t\t&:disabled {\n\t\t\topacity: 0.35;\n\t\t\tcursor: not-allowed !important;\n\t\t}\n\t}\n}\n","// Adapted from https://github.com/Jimdo/range-slider-sass\n@use 'sass:math';\n\n@mixin shadow($shadow-size, $shadow-blur, $shadow-color) {\n\tbox-shadow:\n\t\t$shadow-size $shadow-size $shadow-blur $shadow-color,\n\t\t0 0 $shadow-size lighten($shadow-color, 5%);\n}\n\n@mixin track($track-width, $track-height) {\n\twidth: $track-width;\n\theight: $track-height;\n\tcursor: pointer;\n\tanimation: 0.2s;\n}\n\n@mixin thumb(\n\t$thumb-width,\n\t$thumb-height,\n\t$thumb-border-width,\n\t$thumb-border-color,\n\t$thumb-radius,\n\t$thumb-color\n) {\n\t//@include shadow($thumb-shadow-size, $thumb-shadow-blur, $thumb-shadow-color);\n\twidth: $thumb-width;\n\theight: $thumb-height;\n\tcursor: pointer;\n\tborder: $thumb-border-width solid $thumb-border-color;\n\tborder-radius: $thumb-radius;\n\tbackground: $thumb-color;\n}\n\n@mixin input-type-range(\n\t$thumb-color: red,\n\t$thumb-radius: 0,\n\t$thumb-height: 10px,\n\t$thumb-width: 15px,\n\t$thumb-shadow-size: 0,\n\t$thumb-shadow-blur: 0,\n\t$thumb-shadow-color: rgba(0, 0, 0, 0),\n\t$thumb-border-width: 0,\n\t$thumb-border-color: black,\n\t$track-color: blue,\n\t$track-radius: 0,\n\t$track-width: 100%,\n\t$track-height: 10px,\n\t$track-shadow-size: 0,\n\t$track-shadow-blur: 0,\n\t$track-shadow-color: rgba(0, 0, 0, 0),\n\t$track-border-width: 0,\n\t// might not be taken into account everywhere, see belo\n\t$track-border-color: black\n) {\n\t-webkit-appearance: none;\n\twidth: $track-width;\n\tbackground: transparent;\n\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t&::-webkit-slider-runnable-track {\n\t\t@include track($track-width, $track-height);\n\t\t//@include shadow($track-shadow-size, $track-shadow-blur, $track-shadow-color);\n\t\tborder: $track-border-width solid $track-border-color;\n\t\tborder-radius: $track-radius;\n\t\tbackground: $track-color;\n\t}\n\n\t&::-webkit-slider-thumb {\n\t\t@include thumb(\n\t\t\t$thumb-width,\n\t\t\t$thumb-height,\n\t\t\t$thumb-border-width,\n\t\t\t$thumb-border-color,\n\t\t\t$thumb-radius,\n\t\t\t$thumb-color\n\t\t);\n\t\t-webkit-appearance: none;\n\t\t//margin-top: ((-#{$track-border-width} * 2) + $track-height) / (2 - $thumb-height / 2);\n\t\t// the build fails with $track-border-width = 0\n\t\tmargin-top: math.div(($track-height), (2 - math.div($thumb-height, 2)));\n\t}\n\n\t&:focus::-webkit-slider-runnable-track {\n\t\tbackground: $track-color;\n\t}\n\n\t&::-moz-range-track {\n\t\t@include track($track-width, $track-height);\n\t\t//@include shadow($track-shadow-size, $track-shadow-blur, $track-shadow-color);\n\t\tborder: $track-border-width solid $track-border-color;\n\t\tborder-radius: $track-radius;\n\t\tbackground: $track-color;\n\t}\n\n\t&::-moz-range-thumb {\n\t\t@include thumb(\n\t\t\t$thumb-width,\n\t\t\t$thumb-height,\n\t\t\t$thumb-border-width,\n\t\t\t$thumb-border-color,\n\t\t\t$thumb-radius,\n\t\t\t$thumb-color\n\t\t);\n\t}\n\n\t&::-ms-track {\n\t\t@include track($track-width, $track-height);\n\t\tcolor: transparent;\n\t\tborder-width: $thumb-width 0;\n\t\tborder-color: transparent;\n\t\tbackground: transparent;\n\t}\n\n\t&::-ms-fill-lower {\n\t\t//@include shadow($track-shadow-size, $track-shadow-blur, $track-shadow-color);\n\t\tborder: $track-border-width solid $track-border-color;\n\t\tborder-radius: $track-radius * 2;\n\t\tbackground: $track-color;\n\t}\n\n\t&::-ms-fill-upper {\n\t\t//@include shadow($track-shadow-size, $track-shadow-blur, $track-shadow-color);\n\t\tborder: $track-border-width solid $track-border-color;\n\t\tborder-radius: $track-radius * 2;\n\t\tbackground: $track-color;\n\t}\n\n\t&::-ms-thumb {\n\t\t@include thumb(\n\t\t\t$thumb-width,\n\t\t\t$thumb-height,\n\t\t\t$thumb-border-width,\n\t\t\t$thumb-border-color,\n\t\t\t$thumb-radius,\n\t\t\t$thumb-color\n\t\t);\n\t}\n\n\t&:focus::-ms-fill-lower {\n\t\tbackground: $track-color;\n\t}\n\n\t&:focus::-ms-fill-upper {\n\t\tbackground: $track-color;\n\t}\n\n\t&:disabled::-moz-range-track,\n\t&:disabled::-moz-range-thumb {\n\t\tcursor: default;\n\t}\n\n\t&:disabled::-webkit-slider-runnable-track,\n\t&:disabled::-webkit-slider-thumb {\n\t\tcursor: default;\n\t}\n\n\t&:disabled::-ms-track,\n\t&:disabled::-ms-thumb {\n\t\tcursor: default;\n\t}\n}\n","@import '../../../../../scss/abstract';\n@import '../_themes.scss';\n\n.sb-optionToggle {\n\tdisplay: flex;\n\n\t@include font-size(small);\n\n\tpadding: $spacer-tiny $spacer-small-plus $spacer-tiny $spacer-small;\n\n\t@include themify($themes) {\n\t\tborder-bottom: 1px dotted themed('option-border');\n\t}\n\n\t.sb-optionsGroup & {\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('optionsGroup-option-bg');\n\t\t}\n\t}\n\n\t&.sb-optionToggle-isNotInteractable {\n\t\tuser-select: none;\n\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('option-isDisabled');\n\t\t}\n\t}\n\n\t&:hover {\n\t\tcursor: not-allowed;\n\t}\n\n\t&:hover:not(.sb-optionToggle-isNotInteractable) {\n\t\tcursor: pointer;\n\t\t@include themify($themes) {\n\t\t\tbackground-color: themed('option-bgHover');\n\t\t}\n\t}\n}\n\n.sb-optionToggle-desc {\n\tflex: 1 1 auto;\n}\n\n.sb-optionToggle-icon {\n\tflex: 0 0 auto;\n}\n\n.sb-optionToggle-isOff {\n\t.icon {\n\t\t@include themify($themes) {\n\t\t\tcolor: themed('toggle-icon-isOff');\n\t\t}\n\t}\n}\n\n.sb-optionToggle-icon {\n\t.icon {\n\t\t@include font-size(big);\n\t}\n\n\t.sb-optionToggle-isOff & {\n\t\t.icon {\n\t\t\t@include themify($themes) {\n\t\t\t\tcolor: themed('toggle-icon-isOff');\n\t\t\t}\n\t\t}\n\t}\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/packages/chord-chart-studio/build/index.html b/packages/chord-chart-studio/build/index.html index bc4fff40..9373d1d1 100644 --- a/packages/chord-chart-studio/build/index.html +++ b/packages/chord-chart-studio/build/index.html @@ -2,4 +2,4 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); - gtag('config', 'G-EGKBT2J600');
\ No newline at end of file + gtag('config', 'G-EGKBT2J600');
\ No newline at end of file diff --git a/packages/chord-chart-studio/build/main.654483bc9469d682fc7c.js b/packages/chord-chart-studio/build/main.654483bc9469d682fc7c.js deleted file mode 100644 index 56a7c9dc..00000000 --- a/packages/chord-chart-studio/build/main.654483bc9469d682fc7c.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see main.654483bc9469d682fc7c.js.LICENSE.txt */ -(()=>{"use strict";var e,t={TBfH:(e,t,r)=>{var n=r("ySZr"),o=r.n(n),i=r("pZTv"),a=r("iA/U"),c=r("V8Kl"),l=(r("3ezv"),function(){try{var e=localStorage.getItem("state");if(!e)return;return JSON.parse(e)}catch(e){return}}),s=function(e){try{var t=JSON.stringify(e);localStorage.setItem("state",t)}catch(e){}},u=r("lw3o"),p=(r("0eJ7"),r("lknY"),r("d4ji"),r("BHl9"),r("yLKA"),r("tILF"),r("MVqi"),r("SFL+"),r("Ek9s"),r("1baz"),r("uFj5"),r("8aL/"),r("OPNk"),r("7cgf"),r("1yeN"),r("//nZ")),f=r.n(p);function d(){return Date.now()}var m="db/files/Create",y="db/files/Delete",h="db/files/Import",g="db/files/Update",v="db/options/setOptionValue",b="ui/layout/app/setEditorMode",w="ui/layout/app/toggleLeftBar",E="ui/layout/app/toggleRightBar",O=function(e){return e.ui.layout.app.isLeftBarCollapsed},S=function(e){return e.ui.layout.app.isRightBarCollapsed},C=function(e){return e.ui.layout.app.editorMode},j=function(e){return e.fileManager.selected},P=function(e){return e.fileManager.renamed},R=function(e){return e.fileManager.defaultTitle},F=(r("Rhi/"),r("yd9A"),r("mbB6")),N=r.n(F),x=r("c2re"),T=r.n(x),k=r("nnRT"),L=r.n(k),_=r("u6DZ"),q=r.n(_),I=r("+l7i"),M=r("Dyp/");function A(e){return A="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},A(e)}function D(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function B(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:J,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};switch(t.type){case m:case h:return function(e,t){var r=t.payload,n=r.id,o=r.title,i=r.content,a=U({},e.allFiles);return a[n]={id:n,title:o,content:i},U(U({},e),{},{allFiles:a})}(e,t);case g:return function(e,t){var r=t.payload,n=r.id,o=r.title,i=r.content;if(!o&&void 0===i||!e.allFiles[n])return e;var a=U({},e.allFiles);return a[n]=U({},a[n]),o&&(a[n].title=o),void 0!==i&&(a[n].content=i),U(U({},e),{},{allFiles:a})}(e,t);case y:return function(e,t){var r=t.payload.id;if(!r||!e.allFiles[r])return e;var n=U({},e.allFiles);return delete n[r],U(U({},e),{},{allFiles:n})}(e,t);case v:return Q(e,t,r);case b:return function(e,t,r){var n=j(r),o=t.payload.mode;if(!H(r,n,o)){var i=f()(V(r,n)||{},K[o]);if(Object.keys(i).length){i.updatedAt=d();var a=U({},e.allFiles);return a[n]=U(U({},a[n]),{},{options:U(U({},a[n].options),{},Z({},o,i))}),U(U({},e),{},{allFiles:a})}}return e}(e,t,r)}return e},options:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:ce,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};switch(t.type){case v:return function(e,t){var r=t.payload,n=r.context,o=r.key,i=r.value;if(!e[n]||!e[n].values||void 0===e[n].values[o])return e;var a=ie(ie({},e),{},ae({},n,ie(ie({},e[n]),{},{values:ie({},e[n].values)})));return a[n].values[o]=i,a}(e,t);case b:return function(e,t,r){var n=le(r,j(r),t.payload.mode);return ie(ie({},e),{},{songFormatting:ie(ie({},e.songFormatting),{},{values:ie({},n)})})}(e,t,r);case X:return function(e,t,r){var n=t.payload.id,o=le(r,n,C(r)),i=H(r,n,"preferences")||{};delete i.updatedAt;var a=re(r,"songPreferences"),c=Object.assign(a,i);return ie(ie({},e),{},{songPreferences:ie(ie({},e.songPreferences),{},{values:ie({},c)}),songFormatting:ie(ie({},e.songFormatting),{},{values:ie({},o)})})}(e,t,r)}return e}});function ue(e){return ue="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ue(e)}function pe(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function fe(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:Te,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};switch(t.type){case w:return Ne(Ne({},e),{},{isLeftBarCollapsed:!e.isLeftBarCollapsed});case E:return Ne(Ne({},e),{},{isRightBarCollapsed:!e.isRightBarCollapsed});case b:var r=t.payload.mode;return Ne(Ne({},e),{},{editorMode:r});case y:case m:case h:return Ne(Ne({},e),{},{editorMode:"edit"})}return e}}),Le=(0,u.Z)({layout:ke}),_e=(0,u.Z)({db:se,fileManager:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:me,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};switch(t.type){case m:var r=t.payload.id;return fe(fe({},e),{},{selected:r,renamed:r});case h:var n=t.payload.id;return fe(fe({},e),{},{selected:n,renamed:""});case g:return fe(fe({},e),{},{renamed:""});case y:return fe(fe({},e),{},{selected:"",renamed:""});case X:var o=t.payload.id;return fe(fe({},e),{},{selected:o,renamed:o===e.renamed?o:""});case ee:var i=t.payload.id;return fe(fe({},e),{},{renamed:i})}return e},songImporter:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Pe,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};switch(t.type){case ge:var r=t.payload,n=r.content,o=r.title,i=void 0===o?"":o;return Ce(Ce({},e),{},{content:Ee(n),title:i?Ee(i):e.title});case ve:var a=t.payload.inputFormat;return Ce(Ce({},e),{},{inputFormat:a});case h:case ye:return Ce(Ce({},e),{},{content:"",title:"",isImporting:!1});case he:var c=t.payload,l=c.content,s=c.inputFormat,u=c.title,p=c.isFromWeb;return Ce(Ce({},e),{},{isImporting:!0,content:l?Ee(l):"",title:u?Ee(u):"",inputFormat:s||e.inputFormat,isFromWeb:p})}return e},ui:Le}),qe={db:{options:{editorPreferences:{values:{theme:"dark1",chartFormat:"chordmark"},defaults:{theme:"dark1",chartFormat:"chordmark"}},songPreferences:{values:{transposeValue:0,preferredAccidentals:"auto",symbolType:"chord"},defaults:{transposeValue:0,preferredAccidentals:"auto",symbolType:"chord"}},songFormatting:{values:{chartType:"all",alignChordsWithLyrics:!0,alignBars:!0,autoRepeatChords:!0,expandSectionCopy:!0,fontSize:0,columnsCount:1,columnBreakOnSection:!0,documentMargins:3},defaults:{chartType:"all",alignChordsWithLyrics:!0,alignBars:!0,autoRepeatChords:!0,expandSectionCopy:!0,fontSize:0,columnsCount:1,columnBreakOnSection:!0,documentMargins:3}}}}};var Ie;function Me(){return Ie}function Ae(e,t){if(!e)throw new TypeError("Cannot create an action without an action type");return{type:e,payload:t}}var De={"@CCS/IMPORT_TAB":function(e){var t=Me(),r=Be(e.title,e.artist);t.dispatch(function(e,t,r){return Ae(he,{content:t,inputFormat:e,title:r,isFromWeb:!0})}(e.inputFormat,e.chordChart,r))}},Be=function(e,t){return"_"+(t?t+" - ":"")+e};function We(e){return We="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},We(e)}function Ge(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ze(e,t,r){var n;return n=function(e,t){if("object"!=We(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=We(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"),(t="symbol"==We(n)?n:String(n))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var He=function(e){var t=function(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:"";if(!e)throw new TypeError("Cannot import a file without title");var r={id:(0,St.Z)(),title:e,content:t};return Ae(h,r)},jt=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.title,n=t.content;if(!e)throw new TypeError("Cannot update a file without an id");return Ae(g,{id:e,title:r,content:n})},Pt=function(e){return e.songImporter.content},Rt=function(e){return e.songImporter.inputFormat},Ft=function(e){return e.songImporter.title},Nt=function(e){return e.songImporter.isImporting},xt=function(e){return e.songImporter.isFromWeb},Tt=r("+Yn/");function kt(e){var t=e.children,r=e.closeModal;return(0,Ke.useEffect)((function(){var e=function(e){"Escape"===e.key&&r()};return window.addEventListener("keyup",e),function(){window.removeEventListener("keyup",e)}})),Ke.createElement("section",{className:"mod-ModalContainer"},Ke.createElement("div",{className:"mod-Overlay",onClick:r,"data-testid":"modal-overlay"}),Ke.createElement("div",{className:"mod-ContentContainer"},t))}kt.propTypes={children:Ze().element.isRequired,closeModal:Ze().func.isRequired};const Lt=kt;var _t=function(e){var t=e.cancelImport,r=e.chordMarkContent,n=e.importFile,o=e.title,i=e.content,a=e.error,c=o?'Import "'+o+'"':"Import song";return Ke.createElement("div",{className:"sim-Header_Container"},Ke.createElement("div",{className:"sim-Header_Title"},c),Ke.createElement("div",{className:"sim-Header_Actions"},Ke.createElement(vt,{onClick:t,buttonName:"cancel",type:"secondary"},"CANCEL"),Ke.createElement(vt,{onClick:function(){n(o||"[untitled]",r)},buttonName:"import",type:"primary",isDisabled:""===i||""!==a},"IMPORT")))};_t.propTypes={cancelImport:Ze().func.isRequired,chordMarkContent:Ze().string,content:Ze().string,error:Ze().string,importFile:Ze().func.isRequired,title:Ze().string};const qt=_t;r("CDwP"),r("1uDy");var It=r("ICiq"),Mt=function(e){return e.name.substr(0,e.name.lastIndexOf("."))},At=function(e){return e.size>51200},Dt=function(e){return 0===e.type.indexOf("text")||0===e.type.length},Bt=function(e){return"The selected file is too big: "+(0,It.G)(e,{round:0})+" (maximum allowed file size is "+(0,It.G)(51200,{round:0})+")."},Wt=function(e){return"Cannot import file of type "+e.type+"."},Gt=function(){return"No file selected."};const zt=function(e){return new Promise((function(t,r){if(e.length){var n=e[0];At(n)?r(Bt(n.size)):Dt(n)?n.text().then((function(e){t({content:e,title:Mt(n)})})).catch((function(e){r(e)})):r(Wt(n))}else r(Gt())}))};var Ht=function(e){var t=e.setContent;return Ke.createElement("div",null,Ke.createElement("label",{htmlFor:"importSong-Input",className:"Button Button-primary"},"Select File"),Ke.createElement("input",{id:"importSong-Input",name:"importSong-Input",type:"file",className:"sim-InputFile_Input",onChange:function(e){zt(e.target.files).then((function(e){t(e.content,e.title)})).catch((function(e){t(e)}))},accept:"text/*,.cho,.crd,.chopro,.chord,.pro,.txt,.md"}))};Ht.propTypes={setContent:Ze().func.isRequired};const Vt=Ht;function Kt(e){var t=e.content,r=e.setContent,n=e.isDisabled,o=["sim-Input_Textarea"];return n&&o.push("sim-Input_Textarea-Disabled"),Ke.createElement(Ke.Fragment,null,Ke.createElement("div",{className:"sim-Input_Header"},Ke.createElement(pt,{iconName:"arrow_drop_down"}),"Copy/paste below",Ke.createElement(pt,{iconName:"arrow_drop_down"})),Ke.createElement("textarea",{className:o.join(" "),onChange:function(e){r(e.target.value)},value:t,disabled:n,"data-testid":"sim-input"}))}Kt.propTypes={content:Ze().string.isRequired,isDisabled:Ze().bool.isRequired,setContent:Ze().func.isRequired},Kt.defaultProps={};const Yt=Kt;function $t(e){var t=e.inputFormat,r=e.error;return Ke.createElement("div",{className:"sim-Preview_Error"},Ke.createElement("p",null,"There was an error when trying to parse the song in the specified input format (",t,").",Ke.createElement("br",null),"Please correct the input or try another format.",Ke.createElement("br",null),"The error was:"),Ke.createElement("p",null,'"',r,'"'),Ke.createElement("p",null,'Hint: most of the time, this is related to an unclosed "[" or "{" or an unsupported ChordPro directive'))}$t.propTypes={error:Ze().string,inputFormat:Ze().string.isRequired},$t.defaultProps={};const Ut=$t;function Zt(e){var t=e.setInputFormat,r=e.inputFormat,n=e.id,o=e.label,i=e.isDisabled,a=["sim-InputFormat_Entry"],c=["sim-InputFormat_Label"];return i&&(a.push("sim-InputFormat_Entry-Disabled"),c.push("sim-InputFormat_Label-Disabled")),Ke.createElement(Ke.Fragment,null,Ke.createElement("input",{className:a.join(" "),type:"radio",name:"inputFormat",id:n,value:n,onChange:function(e){i||t(e.target.value)},checked:r===n}),Ke.createElement("label",{className:c.join(" "),htmlFor:n},o))}Zt.propTypes={setInputFormat:Ze().func.isRequired,inputFormat:Ze().string.isRequired,id:Ze().string.isRequired,label:Ze().string.isRequired,isDisabled:Ze().bool.isRequired},Zt.defaultProps={};const Jt=Zt;var Qt=[{id:"auto",label:"Detect"},{id:"chordPro",label:"Bracketed chords (ChordPro)"},{id:"chordsOverLyrics",label:"Chords over lyrics (Ultimate Guitar...)"}];function Xt(e){var t=e.setInputFormat,r=e.inputFormat,n=e.disableAll,o=Qt.map((function(e){return Ke.createElement(Jt,{setInputFormat:t,id:e.id,key:e.id,label:e.label,inputFormat:r,isDisabled:n})}));return Ke.createElement("div",{className:"sim-InputFormat"},"Input format:",o)}Xt.propTypes={disableAll:Ze().bool.isRequired,setInputFormat:Ze().func.isRequired,inputFormat:Ze().string.isRequired},Xt.defaultProps={};const er=Xt;function tr(e){var t=e.cancelImport,r=e.content,n=e.importFile,o=e.isFromWeb,i=e.isImporting,a=e.setContent,c=e.setInputFormat,l=e.inputFormat,s=e.title;if(!i)return null;var u="",p="";try{u=(0,Tt.cl)(r,{inputFormat:l})}catch(e){p=e.message}return Ke.createElement(Lt,{closeModal:t},Ke.createElement("div",{className:"sim-SongImporterModal_Container","data-testid":"song-importer"},Ke.createElement(qt,{cancelImport:t,chordMarkContent:u,content:r,error:p,importFile:n,title:s}),Ke.createElement("div",{className:"sim-TwoColumns_Container"},Ke.createElement("div",{className:"sim-Column_Container"},Ke.createElement(Vt,{setContent:a})),Ke.createElement("div",{className:"sim-Column_Container"},Ke.createElement(er,{inputFormat:l,setInputFormat:c,disableAll:!0===o}))),Ke.createElement("div",{className:"sim-TwoColumns_Container sim-TwoColumns_Container-autoHeight"},Ke.createElement("div",{className:"sim-Column_Container"},Ke.createElement(Yt,{content:r,setContent:a,isDisabled:o})),Ke.createElement("div",{className:"sim-Column_Container"},Ke.createElement("div",{className:"sim-Input_Header"},Ke.createElement(pt,{iconName:"arrow_drop_down"}),"ChordMark preview",Ke.createElement(pt,{iconName:"arrow_drop_down"})),Ke.createElement("div",{className:"sim-Preview_Container","data-testid":"sim-preview"},p?Ke.createElement(Ut,{inputFormat:l,error:p}):u)))))}tr.propTypes={cancelImport:Ze().func.isRequired,content:Ze().string.isRequired,importFile:Ze().func.isRequired,isFromWeb:Ze().bool.isRequired,isImporting:Ze().bool.isRequired,setContent:Ze().func.isRequired,setInputFormat:Ze().func.isRequired,inputFormat:Ze().string.isRequired,title:Ze().string},tr.defaultProps={};const rr=tr,nr=(0,$e.$j)((function(e){return{content:Pt(e),isFromWeb:xt(e),isImporting:Nt(e),inputFormat:Rt(e),title:Ft(e)}}),{setContent:function(e,t){return Ae(ge,{content:e,title:t})},setInputFormat:function(e){return Ae(ve,{inputFormat:e})},cancelImport:function(){return Ae(ye)},importFile:Ct})(rr),or=[{id:"edit",label:"Edit",icon:"create",editorMode:"edit"},{id:"play",label:"Screen view",icon:"music_note",editorMode:"play"},{id:"print",label:"Print/PDF Preview",icon:"print",editorMode:"print"},{id:"export",label:"Export Preview",icon:"save_alt",editorMode:"export"}];function ir(e){var t=e.editorMode,r=e.isLeftBarCollapsed,n=e.isRightBarCollapsed,o=e.toggleLeftBar,i=e.toggleRightBar,a=e.setEditorMode,c=e.selectedId,l=e.leftBar,s=e.rightBar,u=["leftBar"];r&&u.push("leftBar-isCollapsed");var p=["rightBar"];return n&&p.push("rightBar-isCollapsed"),Ke.createElement("div",{className:"appLayout-wrapper"},Ke.createElement(nr,null),Ke.createElement("section",{className:u.join(" ")},Ke.createElement("div",{className:"leftBar-content",onClick:r?o:null},Ke.createElement(st,null),l),Ke.createElement("div",{className:"leftBar-collapser",onClick:o,"data-testid":"leftBar-collapser"},Ke.createElement("span",{className:"leftBar-collapserIcon"},Ke.createElement(pt,{iconName:"keyboard_arrow_left"})))),Ke.createElement("section",{className:"appLayout-main"},Ke.createElement("section",{className:"appLayout-header"},Ke.createElement(ht,{allEntries:or,currentMode:t,setEditorMode:a,selectedId:c})),Ke.createElement("section",{className:"appLayout-content"},e.children)),Ke.createElement("section",{className:p.join(" ")},Ke.createElement("div",{className:"rightBar-collapser",onClick:i,"data-testid":"rightBar-collapser"},Ke.createElement("span",{className:"rightBar-collapserIcon"},Ke.createElement(pt,{iconName:"keyboard_arrow_right"}))),Ke.createElement("div",{className:"rightBar-content",onClick:n?i:null},Ke.createElement(wt,null),s,Ke.createElement(Ot,null))))}ir.propTypes={children:Ze().element,isLeftBarCollapsed:Ze().bool,isRightBarCollapsed:Ze().bool,selectedId:Ze().string,toggleLeftBar:Ze().func.isRequired,toggleRightBar:Ze().func.isRequired,editorMode:Ze().string.isRequired,setEditorMode:Ze().func.isRequired,leftBar:Ze().element.isRequired,rightBar:Ze().element.isRequired},ir.defaultProps={isLeftBarCollapsed:!1,isRightBarCollapsed:!1};const ar=ir,cr=(0,$e.$j)((function(e){return{editorMode:C(e),isLeftBarCollapsed:O(e),isRightBarCollapsed:S(e),selectedId:j(e)}}),{toggleLeftBar:function(){return Ae(w)},toggleRightBar:function(){return Ae(E)},setEditorMode:at})(ar);r("rAp7"),r("w2zd"),r("Wu5x"),r("+NTm");var lr=r("etrl"),sr=(r("kOxM"),r("ClpK")),ur=r("KO9H"),pr=r("r5Lg");function fr(e){return fr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},fr(e)}function dr(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function mr(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{},arguments.length>2&&void 0!==arguments[2]&&arguments[2],"html")}function gr(e,t,r,n){if(r)switch(t.chartFormat){case"chordmark":var o=vr(e,t);return"html"===n?o:wr(o);case"chordmarkSrc":return"html"===n?br(e):e;case"chordpro":t.customRenderer=(0,Tt.n1)();var i=vr(e,t);return"html"===n?br(i):i;case"ultimateGuitar":t.customRenderer=(0,Tt.eE)();var a=vr(e,mr(mr({},t),{},{customRenderer:(0,Tt.eE)(),printBarSeparators:"grids",printChordsDuration:"never",printSubBeatDelimiters:!1,printInlineTimeSignatures:!1,chordSymbolRenderer:(0,ur.v)(mr({customFilters:[(0,pr.Z)()],useShortNamings:!0,accidentalsType:"auto"===t.accidentalsType?"original":t.accidentalsType},t))}))+"\n\nCreated with Chord Chart Studio (https://chord-chart-studio.netlify.app)";return"html"===n?br(a):a}var c=vr(e,mr(mr({},t),{},{wrapChordLyricLines:!0}));return"html"===n?c:wr(c)}function vr(e,t){try{var r=(0,sr.TG)(e);return(0,sr.II)(r,mr({},t))}catch(e){return e.message}}function br(e){return e.split("\n").map((function(e){return""===e?" ":e})).map((function(e){return''.concat(e,"")})).join("")}function wr(e){return e.match(/(.*?<\/p>)/gm).map((function(e){return Ee(e)})).map((function(e){return" "===e?"":e})).join("\n")}function Er(){var e=Me().getState(),t=j(e),r=z(e,t),n={chartFormat:te(e,"editorPreferences","chartFormat"),transposeValue:te(e,"songPreferences","transposeValue"),accidentalsType:te(e,"songPreferences","accidentalsType"),symbolType:te(e,"songPreferences","symbolType"),chartType:te(e,"songFormatting","chartType"),alignChordsWithLyrics:te(e,"songFormatting","alignChordsWithLyrics"),alignBars:te(e,"songFormatting","alignBars"),autoRepeatChords:te(e,"songFormatting","autoRepeatChords"),expandSectionCopy:te(e,"songFormatting","expandSectionCopy")},o=function(e){return gr(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},arguments.length>2&&void 0!==arguments[2]&&arguments[2],"text")}(r.content,n,!0),i="chordpro"===n.chartFormat?"cho":"txt",a="".concat(r.title,".").concat(i),c=new Blob([o],{type:"text/plain;charset=utf-8",endings:"native"});(0,lr.saveAs)(c,a)}function Or(e){var t=e.confirmAction,r=e.confirmTitle,n=void 0===r?"OK":r,o=e.cancelAction,i=e.cancelTitle,a=void 0===i?"CANCEL":i,c=e.children;return Ke.createElement(Lt,{closeModal:o},Ke.createElement("section",{className:"mod-ModalConfirmContainer"},Ke.createElement("div",{className:"mod-ModalConfirmMessage"},c),Ke.createElement("div",{className:"mod-ModalConfirmButtons"},Ke.createElement(vt,{onClick:o,type:"secondary",buttonName:"cancel"},a),Ke.createElement(vt,{onClick:t,type:"primary",buttonName:"confirm"},n))))}Or.propTypes={confirmAction:Ze().func.isRequired,confirmTitle:Ze().string,cancelAction:Ze().func.isRequired,cancelTitle:Ze().string,children:Ze().node.isRequired};const Sr=Or;function Cr(e){var t=e.selected,r=e.deleteFile,n=e.isDeleting,o=e.setIsDeleting;if(!n)return null;return Ke.createElement(Sr,{confirmAction:function(){o(!1),r(t)},confirmTitle:"DELETE",cancelAction:function(){return o(!1)}},"Are you sure you want to delete this file?",Ke.createElement("br",null),"This action cannot be undone.")}Cr.propTypes={deleteFile:Ze().func.isRequired,isDeleting:Ze().bool.isRequired,selected:Ze().string.isRequired,setIsDeleting:Ze().func.isRequired};const jr=Cr;function Pr(e){var t=e.icon,r=e.text,n=e.action,o=e.isDisabled,i=["fileManagerAction"];o&&i.push("fileManagerAction-isDisabled");return Ke.createElement("span",{className:i.join(" "),onClick:function(){o||n()}},Ke.createElement("span",{className:"fileManagerAction-icon"},Ke.createElement(pt,{iconName:t})," ",r))}Pr.propTypes={icon:Ze().string.isRequired,text:Ze().string.isRequired,action:Ze().func.isRequired,isDisabled:Ze().bool.isRequired};const Rr=Ke.memo(Pr);function Fr(){return Fr=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);re.length)&&(t=e.length);for(var r=0,n=new Array(t);r1&&void 0!==arguments[1]?arguments[1]:"";if(!e)throw new TypeError("Cannot create a file without title");var r={id:(0,St.Z)(),title:e,content:t};return Ae(m,r)},deleteFile:function(e){return Ae(y,{id:e})},updateFile:jt,enableRename:function(e){return Ae(ee,{id:e})},setEditorMode:at,startImport:function(){return Ae(he,{isFromWeb:!1})}})(Ar);var Br=r("cjrE");function Wr(e){return we().sanitize(e)}function Gr(e){var t=e.content,r=e.useChartFormat,n=hr(t,f()(e,["chartFormat","transposeValue","accidentalsType","symbolType","chartType","alignChordsWithLyrics","alignBars","autoRepeatChords","expandSectionCopy"]),r);return Ke.createElement("div",{className:"songRenderer"},Ke.createElement("div",{dangerouslySetInnerHTML:{__html:Wr(n)}}))}Gr.propTypes={useChartFormat:Ze().bool.isRequired,chartFormat:Ze().string.isRequired,content:Ze().string},Gr.defaultProps={content:"",useChartFormat:!1};const zr=Gr,Hr=(0,$e.$j)((function(e){return{transposeValue:te(e,"songPreferences","transposeValue"),accidentalsType:te(e,"songPreferences","preferredAccidentals"),symbolType:te(e,"songPreferences","symbolType"),chartFormat:te(e,"editorPreferences","chartFormat"),chartType:te(e,"songFormatting","chartType"),alignChordsWithLyrics:te(e,"songFormatting","alignChordsWithLyrics"),alignBars:te(e,"songFormatting","alignBars"),autoRepeatChords:te(e,"songFormatting","autoRepeatChords"),expandSectionCopy:te(e,"songFormatting","expandSectionCopy")}}))(zr);function Vr(e){var t=e.selectedFile;return Ke.createElement("div",{className:["editorPreview"].join(" ")},Ke.createElement(Hr,{content:t.content}))}Vr.propTypes={selectedFile:Ze().object.isRequired};const Kr=Vr;var Yr=r("NCAe"),$r=r("vUMY"),Ur=r("7DR6"),Zr=r("/FSr"),Jr=r("H2/o"),Qr=r("S7pA");const Xr=new Ur.V_({nodes:{doc:{content:"block+"},paragraph:{content:"inline*",group:"block",parseDOM:[{tag:"p"}],toDOM:function(){return["p",0]}},hard_break:{inline:!0,group:"inline",selectable:!1,parseDOM:[{tag:"br"}],toDOM:function(){return["br"]}},text:{group:"inline"}}});r("l1U5");function en(e){return e.toJSON().doc.content.map((function(e){return e.content?e.content.reduce((function(e,t){return e+=t.text||"\n"}),""):""})).join("\n")}function tn(e){return we().sanitize(e,{ALLOWED_TAGS:["p","#text"],KEEP_CONTENT:!1})}r("pBna");function rn(e){var t,r,n=e.selectedFileId,o=e.editorContent,i=e.updateFile,a=(0,Ke.useRef)(),c=(0,Ke.useRef)(),l=(t=n,r=(0,Ke.useRef)(),(0,Ke.useEffect)((function(){r.current=t})),r.current);function s(){return a.current&&a.current.dom.parentNode}function u(){a.current.dom.parentNode.removeChild(a.current.dom)}return(0,Ke.useEffect)((function(){if(!n||a.current&&l===n)s()&&!n&&u();else{s()&&u();var e=function(e){return Yr.yy.create({doc:Ur.aw.fromSchema(Xr).parse((t=e,r=tn(t).split("\n").map((function(e){return"

".concat(e,"

")})).join(""),n=document.createElement("div"),n.innerHTML=tn(r),n),{preserveWhitespace:"full"}),plugins:[(0,Qr.m8)(),(0,Zr.h)({"Mod-z":Qr.Yw,"Mod-y":Qr.KX}),(0,Zr.h)(Jr.YR)]});var t,r,n}(o);a.current=function(e,t,r){return new $r.tk(null,{state:e,dispatchTransaction:function(e){var n=this.state.applyTransaction(e),o=n.state,i=n.transactions;this.updateState(o),i.some((function(e){return e.docChanged}))&&t(r,{content:en(o)})}})}(e,i,n),c.current.appendChild(a.current.dom),rn.editorView=a.current}})),Ke.createElement("div",{className:"prosemirrorWrapper",ref:c})}rn.defaultProps={selectedFileId:"",editorContent:""},rn.propTypes={selectedFileId:Ze().string,editorContent:Ze().string,updateFile:Ze().func.isRequired};const nn=rn;function on(e){var t=e.selectedFile,r=e.updateFile,n=["songEditor-preview","cmTheme-"+e.theme,"cmTheme-fadeRepeats"];return Ke.createElement(Ke.Fragment,null,Ke.createElement("div",{className:"songEditor-headers"},Ke.createElement("div",{className:"songEditor-sourceHeader"},Ke.createElement(pt,{iconName:"arrow_drop_down"}),"ChordMark source (",Ke.createElement("a",{href:"https://chordmark.netlify.app/docs/getting-started",target:"_blank",rel:"noreferrer",className:"link1"},"tutorial"),")",Ke.createElement(pt,{iconName:"arrow_drop_down"})),Ke.createElement("div",{className:"songEditor-previewHeader"},Ke.createElement(pt,{iconName:"arrow_drop_down"}),"Result preview",Ke.createElement(pt,{iconName:"arrow_drop_down"}))),Ke.createElement(Br.E,null,Ke.createElement("div",{className:"songEditor"},Ke.createElement(Br.z,{group:"a"},Ke.createElement("div",{className:"songEditor-source"},Ke.createElement(nn,{editorContent:t.content,updateFile:r,selectedFileId:t.id}))),Ke.createElement(Br.z,{group:"a"},Ke.createElement("div",{className:n.join(" ")},Ke.createElement(Kr,{selectedFile:t}))))))}on.propTypes={selectedFile:Ze().object,theme:Ze().string.isRequired,updateFile:Ze().func.isRequired};const an=on,cn=(0,$e.$j)((function(e){return{theme:te(e,"editorPreferences","theme")}}))(an);function ln(e){var t=e.selectedFile,r=Ke.createRef(),n=function(e){(e.metaKey||e.ctrlKey)&&"a"===e.key.toLowerCase()&&(e.preventDefault(),window.getSelection().selectAllChildren(r.current))};return(0,Ke.useEffect)((function(){return window.addEventListener("keydown",n),function(){window.removeEventListener("keydown",n)}})),Ke.createElement("div",{className:"exportPreview exp-SongRenderer",ref:r},Ke.createElement(Hr,{content:t.content,useChartFormat:!0}))}ln.propTypes={selectedFile:Ze().object.isRequired};const sn=ln;function un(e){var t=e.theme,r=e.selectedFile,n=e.fontSize,o=e.columnsCount,i=["playRendererWrapper1"];i.push("cmTheme-"+t),i.push("cmSong--fontSize"+n);var a=["playRenderer"];return a.push("playRenderer--columns-"+o),Ke.createElement("div",{className:i.join(" "),"data-testid":"playRendererWrapper1"},Ke.createElement("div",{className:"playRendererWrapper2"},Ke.createElement("div",{className:a.join(" "),"data-testid":"playRenderer"},Ke.createElement(Hr,{content:r.content}))))}un.propTypes={theme:Ze().string.isRequired,fontSize:Ze().number.isRequired,selectedFile:Ze().object.isRequired,columnsCount:Ze().number.isRequired};const pn=un,fn=(0,$e.$j)((function(e){return{theme:te(e,"editorPreferences","theme"),fontSize:te(e,"songFormatting","fontSize"),columnsCount:te(e,"songFormatting","columnsCount")}}))(pn);r("8Ldw"),r("CQOB"),r("YQos"),r("C7IK");function dn(e){var t=e.pageHeader,r=e.allColumnsLines,n=e.documentSize,o=e.documentMargins,i=e.fontSize,a=r.map((function(e,t){var r=e.join("");return Ke.createElement("div",{key:t,className:"printPreview-pageColumn","data-testid":"printPreview-pageColumn",dangerouslySetInnerHTML:{__html:Wr(r)}})})),c=["printPreview-page"];c.push("printPreview-page--"+n),c.push("cmSong--fontSize"+i),c.push("cmSong");var l=["printPreview-pageContentWrapper"];return l.push("printPreview-pageContentWrapper--padding"+o),Ke.createElement("div",{className:c.join(" "),"data-testid":"printPreview-page"},Ke.createElement("div",{className:l.join(" "),"data-testid":"printPreview-pageContentWrapper"},Ke.createElement("div",{className:"printPreview-pageContent"},t,Ke.createElement("div",{className:"printPreview-pageColumnWrapper"},a))))}dn.defaultProps={allColumnsLines:[]},dn.propTypes={pageHeader:Ze().element,allColumnsLines:Ze().arrayOf(Ze().arrayOf(Ze().string)),documentSize:Ze().string.isRequired,documentMargins:Ze().number.isRequired,fontSize:Ze().number.isRequired};const mn=Ke.memo(dn);function yn(e){var t=e.title;return Ke.createElement("div",{className:"printPreview-pageHeader"},t)}yn.defaultProps={allColumnsLines:[]},yn.propTypes={title:Ze().string.isRequired};const hn=Ke.memo(yn);var gn={emptyLine:"cmEmptyLine",chordLine:"cmChordLine",textLine:"cmLyricLine"};function vn(e,t){var r=t.columnsCount,n=t.firstPageHeight,o=t.normalPageHeight,i=t.columnBreakOnSection,a=t.noEmptyLinesOnColumnStart,c=void 0===a||a,l=t.noOrphanTextLine,s=void 0===l||l,u=function(e){var t=e.firstPageHeight,r=e.normalPageHeight,n=e.columnsCount,o=[],i=0,a=0,c=u(),l=0;function s(e){e.forEach((function(e){p(l+e.height)&&f(),o[i][a].push(e.content),l+=e.height}))}function u(){return 0===i&&t?t:r}function p(e){return e>c}function f(){d()?(i++,o[i]=[],a=0):a++,o[i][a]=[],l=0,c=u()}function d(){return a===n-1}return o[i]=[],o[i][a]=[],{insert:function(e){s(e)},insertOnNextColumn:function(e){f(),s(e)},fitsOnCurrentColumn:function(e){return l+e<=c},fitsOnNextColumn:function(e){return e<=(0===i&&a0&&e.forEach((function(t,r){(function(e,t,r,n){return!(bn(t)&&!e.fitsOnCurrentColumn(t.height)&&0===r.length&&!0===n)})(u,t,p,c)&&(p.push(t),f+=t.height),p.length>0&&function(e,t,r){var n=r.noOrphanTextLine,o=r.columnBreakOnSection;if(bn(e)||!t)return!0;var i=function(e){return wn(e.content,gn.chordLine)}(e)&&function(e){return wn(e.content,gn.textLine)}(t);if(!0===n&&i)return!1;var a=bn(t);if(!0===o&&!a)return!1;return!0}(t,e[r+1],{noOrphanTextLine:s,columnBreakOnSection:i})&&(u.fitsOnCurrentColumn(f)?u.insert(p):u.fitsOnNextColumn(f)?u.insertOnNextColumn(p):u.insert(p),p=[],f=0)})),u.get()}function bn(e){return wn(e.content,gn.emptyLine)}function wn(e,t){return e.indexOf(t)>-1}function En(e,t){var r=document.createElement("div");r.classList.add("measuring-node"),document.body.appendChild(r);var n=(0,Ye.s)(r);return new Promise((function(o){var i=function(){return(0,Ke.useLayoutEffect)((function(){var e=t(r);o(e)})),Ke.createElement("div",null,e)};n.render(Ke.createElement(i,null))})).then((function(e){return n.unmount(),r.parentNode.removeChild(r),e}))}function On(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=t.length||0;r=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var l=n.call(a,"catchLoc"),s=n.call(a,"finallyLoc");if(l&&s){if(this.prev=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),N(r),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;N(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:T(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),h}},t}function Pn(e,t,r,n,o,i,a){try{var c=e[i](a),l=c.value}catch(e){return void r(e)}c.done?t(l):Promise.resolve(l).then(n,o)}var Rn={line:".cmLine"};function Fn(e,t){return Nn.apply(this,arguments)}function Nn(){var e;return e=jn().mark((function e(t,r){var n,o,i,a,c,l;return jn().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.columnsCount,o=r.documentSize,i=r.documentMargins,a=r.fontSize,c=Ke.createElement("div",{className:"printPreview cmTheme-print"},Ke.createElement(mn,{allColumnsLines:On(n,[t]),columnsCount:n,documentSize:o,documentMargins:i,fontSize:a})),l=function(e){var t=[];return e.querySelectorAll(Rn.line).forEach((function(e){t.push(e.offsetHeight)})),t},e.next=5,En(c,l);case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e)})),Nn=function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Pn(i,n,o,a,c,"next",e)}function c(e){Pn(i,n,o,a,c,"throw",e)}a(void 0)}))},Nn.apply(this,arguments)}function xn(e){return xn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},xn(e)}function Tn(){Tn=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",l=i.toStringTag||"@@toStringTag";function s(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{s({},"")}catch(e){s=function(e,t,r){return e[t]=r}}function u(e,t,r,n){var i=t&&t.prototype instanceof g?t:g,a=Object.create(i.prototype),c=new x(n||[]);return o(a,"_invoke",{value:P(e,r,c)}),a}function p(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=u;var f="suspendedStart",d="suspendedYield",m="executing",y="completed",h={};function g(){}function v(){}function b(){}var w={};s(w,a,(function(){return this}));var E=Object.getPrototypeOf,O=E&&E(E(T([])));O&&O!==r&&n.call(O,a)&&(w=O);var S=b.prototype=g.prototype=Object.create(w);function C(e){["next","throw","return"].forEach((function(t){s(e,t,(function(e){return this._invoke(t,e)}))}))}function j(e,t){function r(o,i,a,c){var l=p(e[o],e,i);if("throw"!==l.type){var s=l.arg,u=s.value;return u&&"object"==xn(u)&&n.call(u,"__await")?t.resolve(u.__await).then((function(e){r("next",e,a,c)}),(function(e){r("throw",e,a,c)})):t.resolve(u).then((function(e){s.value=e,a(s)}),(function(e){return r("throw",e,a,c)}))}c(l.arg)}var i;o(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,o){r(e,n,t,o)}))}return i=i?i.then(o,o):o()}})}function P(t,r,n){var o=f;return function(i,a){if(o===m)throw new Error("Generator is already running");if(o===y){if("throw"===i)throw a;return{value:e,done:!0}}for(n.method=i,n.arg=a;;){var c=n.delegate;if(c){var l=R(c,n);if(l){if(l===h)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===f)throw o=y,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=m;var s=p(t,r,n);if("normal"===s.type){if(o=n.done?y:d,s.arg===h)continue;return{value:s.arg,done:n.done}}"throw"===s.type&&(o=y,n.method="throw",n.arg=s.arg)}}}function R(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,R(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),h;var i=p(o,t.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,h;var a=i.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,h):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,h)}function F(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function N(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(F,this),this.reset(!0)}function T(t){if(t||""===t){var r=t[a];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,i=function r(){for(;++o=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var l=n.call(a,"catchLoc"),s=n.call(a,"finallyLoc");if(l&&s){if(this.prev=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),N(r),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;N(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:T(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),h}},t}function kn(e,t,r,n,o,i,a){try{var c=e[i](a),l=c.value}catch(e){return void r(e)}c.done?t(l):Promise.resolve(l).then(n,o)}function Ln(e,t){return _n.apply(this,arguments)}function _n(){var e;return e=Tn().mark((function e(t,r){var n,o,i,a,c,l;return Tn().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.columnsCount,o=r.documentSize,i=r.documentMargins,a=r.fontSize,c=Ke.createElement(mn,{pageHeader:Ke.createElement(hn,{title:t}),allColumnsLines:On(n),documentSize:o,documentMargins:i,fontSize:a}),l=function(e){var t=e.querySelector(".printPreview-pageContent");return{firstPageHeight:Sn(e.querySelector(".printPreview-pageColumnWrapper")),normalPageHeight:Sn(t)}},e.next=5,En(c,l);case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e)})),_n=function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){kn(i,n,o,a,c,"next",e)}function c(e){kn(i,n,o,a,c,"throw",e)}a(void 0)}))},_n.apply(this,arguments)}function qn(e){return qn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},qn(e)}function In(){In=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",l=i.toStringTag||"@@toStringTag";function s(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{s({},"")}catch(e){s=function(e,t,r){return e[t]=r}}function u(e,t,r,n){var i=t&&t.prototype instanceof g?t:g,a=Object.create(i.prototype),c=new x(n||[]);return o(a,"_invoke",{value:P(e,r,c)}),a}function p(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=u;var f="suspendedStart",d="suspendedYield",m="executing",y="completed",h={};function g(){}function v(){}function b(){}var w={};s(w,a,(function(){return this}));var E=Object.getPrototypeOf,O=E&&E(E(T([])));O&&O!==r&&n.call(O,a)&&(w=O);var S=b.prototype=g.prototype=Object.create(w);function C(e){["next","throw","return"].forEach((function(t){s(e,t,(function(e){return this._invoke(t,e)}))}))}function j(e,t){function r(o,i,a,c){var l=p(e[o],e,i);if("throw"!==l.type){var s=l.arg,u=s.value;return u&&"object"==qn(u)&&n.call(u,"__await")?t.resolve(u.__await).then((function(e){r("next",e,a,c)}),(function(e){r("throw",e,a,c)})):t.resolve(u).then((function(e){s.value=e,a(s)}),(function(e){return r("throw",e,a,c)}))}c(l.arg)}var i;o(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,o){r(e,n,t,o)}))}return i=i?i.then(o,o):o()}})}function P(t,r,n){var o=f;return function(i,a){if(o===m)throw new Error("Generator is already running");if(o===y){if("throw"===i)throw a;return{value:e,done:!0}}for(n.method=i,n.arg=a;;){var c=n.delegate;if(c){var l=R(c,n);if(l){if(l===h)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===f)throw o=y,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=m;var s=p(t,r,n);if("normal"===s.type){if(o=n.done?y:d,s.arg===h)continue;return{value:s.arg,done:n.done}}"throw"===s.type&&(o=y,n.method="throw",n.arg=s.arg)}}}function R(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,R(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),h;var i=p(o,t.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,h;var a=i.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,h):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,h)}function F(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function N(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(F,this),this.reset(!0)}function T(t){if(t||""===t){var r=t[a];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,i=function r(){for(;++o=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var l=n.call(a,"catchLoc"),s=n.call(a,"finallyLoc");if(l&&s){if(this.prev=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),N(r),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;N(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:T(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),h}},t}function Mn(e,t,r,n,o,i,a){try{var c=e[i](a),l=c.value}catch(e){return void r(e)}c.done?t(l):Promise.resolve(l).then(n,o)}function An(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,c=[],l=!0,s=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=i.call(r)).done)&&(c.push(n.value),c.length!==t);l=!0);}catch(e){s=!0,o=e}finally{try{if(!l&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Dn(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Dn(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Dn(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r.*?<\/p>)/gm);return Ke.createElement("div",{className:["printPreview","cmTheme-print"].join(" "),"data-testid":"printPreview"},Ke.createElement(Wn,{title:t.title||"",allLines:o,columnsCount:e.columnsCount,columnBreakOnSection:e.columnBreakOnSection,documentSize:e.documentSize||"a4",documentMargins:e.documentMargins,fontSize:e.fontSize}))}Vn.propTypes={chartType:Ze().string.isRequired,selectedFile:Ze().object.isRequired,columnsCount:Ze().number.isRequired,columnBreakOnSection:Ze().bool.isRequired,documentSize:Ze().string,documentMargins:Ze().number.isRequired,fontSize:Ze().number.isRequired};const Kn=Vn,Yn=(0,$e.$j)((function(e){return{accidentalsType:te(e,"songPreferences","preferredAccidentals"),transposeValue:te(e,"songPreferences","transposeValue"),symbolType:te(e,"songPreferences","symbolType"),chartType:te(e,"songFormatting","chartType"),alignChordsWithLyrics:te(e,"songFormatting","alignChordsWithLyrics"),alignBars:te(e,"songFormatting","alignBars"),autoRepeatChords:te(e,"songFormatting","autoRepeatChords"),expandSectionCopy:te(e,"songFormatting","expandSectionCopy"),columnsCount:te(e,"songFormatting","columnsCount"),columnBreakOnSection:te(e,"songFormatting","columnBreakOnSection"),documentMargins:te(e,"songFormatting","documentMargins"),fontSize:te(e,"songFormatting","fontSize")}}))(Kn);function $n(e){switch(e.editorMode){case"edit":return Ke.createElement(cn,e);case"play":return Ke.createElement(fn,e);case"print":return Ke.createElement(Yn,e);case"export":return Ke.createElement(sn,e)}}$n.propTypes={editorMode:Ze().string.isRequired};const Un=$n,Zn=(0,$e.$j)((function(e){return{selectedFile:z(e,j(e))||{},editorMode:C(e)}}),{updateFile:jt})(Un);r("iGaR");function Jn(){return Jn=Object.assign?Object.assign.bind():function(e){for(var t=1;t0||o.push("sb-optionsGroup-isNotInteractable"),Ke.createElement("div",{className:o.join(" ")},Ke.createElement("div",{className:"sb-optionsGroup-title"},Ke.createElement("span",{className:"sb-optionsGroup-iconTitle"},Ke.createElement(pt,{iconName:r}))," ",n),Ke.createElement("div",{className:"sb-optionsGroup-content"},e.children))}eo.propTypes={isInteractable:Ze().bool.isRequired,icon:Ze().string.isRequired,label:Ze().string.isRequired,children:Ze().arrayOf(Ze().element)},eo.defaultProps={};const to=eo;r("6uNR");function ro(e){var t,r=e.isSelected,n=e.isInteractable,o=e.label,i=e.onClick,a=["sb-optionSelectChoice"];return r&&(a.push("sb-optionSelectChoice-isSelected"),t=Ke.createElement("span",{className:"sb-optionSelectChoice-checkIcon"},Ke.createElement(pt,{iconName:"check"}))),n||a.push("sb-optionSelectChoice-isNotInteractable"),Ke.createElement("div",{className:a.join(" "),onClick:function(){n&&i()}},Ke.createElement("div",{className:"sb-optionSelectChoice-check"},r&&t),Ke.createElement("div",{className:"sb-optionSelectChoice-label"},o))}ro.propTypes={isSelected:Ze().bool.isRequired,isInteractable:Ze().bool.isRequired,label:Ze().string.isRequired,onClick:Ze().func.isRequired};const no=Ke.memo(ro);function oo(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,c=[],l=!0,s=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=i.call(r)).done)&&(c.push(n.value),c.length!==t);l=!0);}catch(e){s=!0,o=e}finally{try{if(!l&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return io(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return io(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function io(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&i?"+"+l:l;return Ke.createElement("div",{className:u.join(" ")},Ke.createElement("div",{className:"sb-optionSlider-desc"},r),Ke.createElement("div",{className:"sb-optionSlider-value"},p),Ke.createElement("div",{className:"sb-optionSlider-range"},Ke.createElement("input",{min:n,max:o,value:l,type:"range",onChange:t?function(e){s(a,c,Number.parseInt(e.target.value))}:null,disabled:!t})))}lo.propTypes={isInteractable:Ze().bool.isRequired,label:Ze().string.isRequired,min:Ze().number.isRequired,max:Ze().number.isRequired,showPlusSymbol:Ze().bool,optionContext:Ze().string.isRequired,optionKey:Ze().string.isRequired,optionValue:Ze().number.isRequired,setOption:Ze().func.isRequired},lo.defaultProps={showPlusSymbol:!0};const so=Ke.memo(lo);function uo(e){var t=e.isInteractable,r=e.label,n=e.optionContext,o=e.optionKey,i=e.optionValue,a=e.setOption,c=["sb-optionToggle"];return c.push(!0===i?"sb-optionToggle-isOn":"sb-optionToggle-isOff"),t||c.push("sb-optionToggle-isNotInteractable"),Ke.createElement("div",{className:c.join(" "),onClick:t?function(){a(n,o,!i)}:null},Ke.createElement("div",{className:"sb-optionToggle-desc"},r),Ke.createElement("div",{className:"sb-optionToggle-icon"},Ke.createElement("span",{className:"sb-optionToggle-icon"},Ke.createElement(pt,{iconName:!0===i?"toggle_on":"toggle_off"}))))}uo.propTypes={isInteractable:Ze().bool.isRequired,label:Ze().string.isRequired,optionContext:Ze().string.isRequired,optionKey:Ze().string.isRequired,optionValue:Ze().bool.isRequired,setOption:Ze().func.isRequired};const po=Ke.memo(uo);function fo(){return fo=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r{if(!r){var a=1/0;for(u=0;u=i)&&Object.keys(n.O).every((e=>n.O[e](r[l])))?r.splice(l--,1):(c=!1,i0&&e[u-1][2]>i;u--)e[u]=e[u-1];e[u]=[r,o,i]},n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{var e;n.g.importScripts&&(e=n.g.location+"");var t=n.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");if(r.length)for(var o=r.length-1;o>-1&&!e;)e=r[o--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),n.p=e})(),(()=>{var e={179:0};n.O.j=t=>0===e[t];var t=(t,r)=>{var o,i,[a,c,l]=r,s=0;if(a.some((t=>0!==e[t]))){for(o in c)n.o(c,o)&&(n.m[o]=c[o]);if(l)var u=l(n)}for(t&&t(r);sn("TBfH")));o=n.O(o)})(); -//# sourceMappingURL=main.654483bc9469d682fc7c.js.map \ No newline at end of file diff --git a/packages/chord-chart-studio/build/main.654483bc9469d682fc7c.js.map b/packages/chord-chart-studio/build/main.654483bc9469d682fc7c.js.map deleted file mode 100644 index 84d8b122..00000000 --- a/packages/chord-chart-studio/build/main.654483bc9469d682fc7c.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"main.654483bc9469d682fc7c.js","mappings":"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","sources":["webpack://chord-chart-studio/webpack/runtime/chunk loaded","webpack://chord-chart-studio/./src/state/localStorage.js","webpack://chord-chart-studio/./src/core/clock.js","webpack://chord-chart-studio/./src/db/files/actionsTypes.js","webpack://chord-chart-studio/./src/db/options/actionsTypes.js","webpack://chord-chart-studio/./src/ui/layout/app/_state/actionsTypes.js","webpack://chord-chart-studio/./src/ui/layout/app/_state/selectors.js","webpack://chord-chart-studio/./src/fileManager/_state/selectors.js","webpack://chord-chart-studio/./src/db/files/selectors.js","webpack://chord-chart-studio/./src/db/options/editorModeOptions.js","webpack://chord-chart-studio/./src/db/files/reducers.js","webpack://chord-chart-studio/./src/fileManager/_state/actionsTypes.js","webpack://chord-chart-studio/./src/db/options/selectors.js","webpack://chord-chart-studio/./src/db/options/reducers.js","webpack://chord-chart-studio/./src/db/reducers.js","webpack://chord-chart-studio/./src/fileManager/_state/reducers.js","webpack://chord-chart-studio/./src/songImporter/_state/actionsTypes.js","webpack://chord-chart-studio/./src/core/stripTags.js","webpack://chord-chart-studio/./src/songImporter/_state/reducers.js","webpack://chord-chart-studio/./src/ui/layout/app/_state/reducers.js","webpack://chord-chart-studio/./src/ui/layout/reducers.js","webpack://chord-chart-studio/./src/ui/reducers.js","webpack://chord-chart-studio/./src/state/reducers.js","webpack://chord-chart-studio/./src/state/seed.js","webpack://chord-chart-studio/./src/db/seed.js","webpack://chord-chart-studio/./src/db/options/seed.js","webpack://chord-chart-studio/./src/state/store.js","webpack://chord-chart-studio/./src/core/createAction.js","webpack://chord-chart-studio/./src/songImporter/_state/actions.js","webpack://chord-chart-studio/./src/songImporter/getMessageHandlers.js","webpack://chord-chart-studio/./src/registerHandlers.js","webpack://chord-chart-studio/./src/ui/_components/ErrorBoundary.js","webpack://chord-chart-studio/./src/ui/layout/app/_state/actions.js","webpack://chord-chart-studio/./src/ui/sideBar/_components/Logo.js","webpack://chord-chart-studio/./src/ui/_components/Icon.js","webpack://chord-chart-studio/./src/ui/layout/app/_components/NavEntry.js","webpack://chord-chart-studio/./src/ui/layout/app/_components/Nav.js","webpack://chord-chart-studio/./src/ui/_components/Button.js","webpack://chord-chart-studio/./src/ui/sideBar/_components/UserGuide.js","webpack://chord-chart-studio/./src/ui/sideBar/_components/Versions.js","webpack://chord-chart-studio/./src/core/getVersions.js","webpack://chord-chart-studio/./src/db/files/actions.js","webpack://chord-chart-studio/./src/songImporter/_state/selectors.js","webpack://chord-chart-studio/./src/ui/_components/Modal.js","webpack://chord-chart-studio/./src/songImporter/_components/Header.js","webpack://chord-chart-studio/./src/songImporter/getUploadedFile.js","webpack://chord-chart-studio/./src/songImporter/_components/FilePicker.js","webpack://chord-chart-studio/./src/songImporter/_components/Input.js","webpack://chord-chart-studio/./src/songImporter/_components/PreviewError.js","webpack://chord-chart-studio/./src/songImporter/_components/InputFormatEntry.js","webpack://chord-chart-studio/./src/songImporter/_components/InputFormatSelector.js","webpack://chord-chart-studio/./src/songImporter/_components/SongImporter.js","webpack://chord-chart-studio/./src/songImporter/_containers/SongImporter.js","webpack://chord-chart-studio/./src/ui/layout/app/allNavEntries.js","webpack://chord-chart-studio/./src/ui/layout/app/_components/App.js","webpack://chord-chart-studio/./src/ui/layout/app/_containers/App.js","webpack://chord-chart-studio/./src/fileManager/_state/actions.js","webpack://chord-chart-studio/./src/core/renderSong.js","webpack://chord-chart-studio/./src/fileManager/exportSelectedFileAsText.js","webpack://chord-chart-studio/./src/ui/_components/ModalConfirm.js","webpack://chord-chart-studio/./src/fileManager/_components/DeleteConfirmModal.js","webpack://chord-chart-studio/./src/fileManager/_components/FileActionEntry.js","webpack://chord-chart-studio/./src/fileManager/_components/FileActions.js","webpack://chord-chart-studio/./src/fileManager/_components/FileEntry.js","webpack://chord-chart-studio/./src/fileManager/_components/FileManager.js","webpack://chord-chart-studio/./src/fileManager/_containers/FileManager.js","webpack://chord-chart-studio/./src/core/escapeHTML.js","webpack://chord-chart-studio/./src/songRenderers/_components/SongRenderer.js","webpack://chord-chart-studio/./src/songRenderers/_containers/SongRenderer.js","webpack://chord-chart-studio/./src/songRenderers/editorPreview/_components/EditorPreview.js","webpack://chord-chart-studio/./src/editor/songEditor/prosemirror/schema.js","webpack://chord-chart-studio/./src/editor/songEditor/prosemirror/converters/stateToText.js","webpack://chord-chart-studio/./src/editor/songEditor/prosemirror/converters/toSafeHtml.js","webpack://chord-chart-studio/./src/editor/songEditor/prosemirror/ProsemirrorEditorView.js","webpack://chord-chart-studio/./src/editor/songEditor/prosemirror/converters/textToDom.js","webpack://chord-chart-studio/./src/editor/songEditor/prosemirror/getPlugins.js","webpack://chord-chart-studio/./src/editor/songEditor/_components/EditorLayout.js","webpack://chord-chart-studio/./src/editor/songEditor/_containers/EditorLayout.js","webpack://chord-chart-studio/./src/songRenderers/exportPreview/_components/ExportPreview.js","webpack://chord-chart-studio/./src/songRenderers/playRenderer/_components/PlayRenderer.js","webpack://chord-chart-studio/./src/songRenderers/playRenderer/_containers/PlayRenderer.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/_components/Page.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/_components/PageHeader.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/helpers/mapLinesToColumns.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/helpers/getDimensionsFromDom.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/helpers/padColumns.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/helpers/element.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/helpers/getAllLinesHeight.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/helpers/getPagesHeight.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/_components/AllPages.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/_components/PrintPreview.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/_containers/PrintPreview.js","webpack://chord-chart-studio/./src/editor/_components/Editor.js","webpack://chord-chart-studio/./src/editor/_containers/Editor.js","webpack://chord-chart-studio/./src/optionsPanels/_components/OptionsPanel.js","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/OptionsGroup.js","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/SelectChoice.js","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/Select.js","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/Slider.js","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/Toggle.js","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/SidebarOptionsPanel.js","webpack://chord-chart-studio/./src/db/options/actions.js","webpack://chord-chart-studio/./src/optionsPanels/rendering/_containers/Rendering.js","webpack://chord-chart-studio/./src/optionsPanels/_containers/OptionsPanelFactory.js","webpack://chord-chart-studio/./src/optionsPanels/rendering/allWidgets.js","webpack://chord-chart-studio/./src/optionsPanels/rendering/_state/selectors.js","webpack://chord-chart-studio/./src/optionsPanels/rendering/_components/Rendering.js","webpack://chord-chart-studio/./src/controllers/Editor.js","webpack://chord-chart-studio/./src/router.js","webpack://chord-chart-studio/./src/renderController.js","webpack://chord-chart-studio/./src/app.js","webpack://chord-chart-studio/./src/addSampleContent.js","webpack://chord-chart-studio/webpack/bootstrap","webpack://chord-chart-studio/webpack/runtime/compat get default export","webpack://chord-chart-studio/webpack/runtime/define property getters","webpack://chord-chart-studio/webpack/runtime/global","webpack://chord-chart-studio/webpack/runtime/hasOwnProperty shorthand","webpack://chord-chart-studio/webpack/runtime/node module decorator","webpack://chord-chart-studio/webpack/runtime/publicPath","webpack://chord-chart-studio/webpack/runtime/jsonp chunk loading","webpack://chord-chart-studio/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// @see https://egghead.io/lessons/javascript-redux-persisting-the-state-to-the-local-storage\n\nexport const loadState = () => {\n\ttry {\n\t\tconst serializedState = localStorage.getItem('state');\n\t\tif (!serializedState) {\n\t\t\treturn undefined;\n\t\t}\n\t\treturn JSON.parse(serializedState);\n\t} catch (err) {\n\t\treturn undefined;\n\t}\n};\n\nexport const saveState = (state) => {\n\ttry {\n\t\tconst serializedState = JSON.stringify(state);\n\t\tlocalStorage.setItem('state', serializedState);\n\t} catch (err) {\n\t\t// ignore write errors\n\t}\n};\n","export default function clock() {\n\treturn Date.now();\n}\n","export const DB_FILES_CREATE = 'db/files/Create';\nexport const DB_FILES_DELETE = 'db/files/Delete';\nexport const DB_FILES_IMPORT = 'db/files/Import';\nexport const DB_FILES_UPDATE = 'db/files/Update';\n","export const DB_OPTION_SET_OPTION_VALUE = 'db/options/setOptionValue';\n","export const UI_LAYOUT_APP_SET_EDITOR_MODE = 'ui/layout/app/setEditorMode';\nexport const UI_LAYOUT_APP_TOGGLE_LEFT_BAR = 'ui/layout/app/toggleLeftBar';\nexport const UI_LAYOUT_APP_TOGGLE_RIGHT_BAR = 'ui/layout/app/toggleRightBar';\n","export const isLeftBarCollapsed = (state) =>\n\tstate.ui.layout.app.isLeftBarCollapsed;\n\nexport const isRightBarCollapsed = (state) =>\n\tstate.ui.layout.app.isRightBarCollapsed;\n\nexport const getEditorMode = (state) => state.ui.layout.app.editorMode;\n","export const getSelectedId = (state) => state.fileManager.selected;\n\nexport const getRenamedId = (state) => state.fileManager.renamed;\n\nexport const getDefaultTitle = (state) => state.fileManager.defaultTitle;\n","import _map from 'lodash/map';\nimport _cloneDeep from 'lodash/cloneDeep';\nimport _isEqual from 'lodash/isEqual';\nimport _sortBy from 'lodash/sortBy';\n\nimport { createSelectorCreator, defaultMemoize } from 'reselect';\n\n// create a \"selector creator\" that uses lodash.isEqual instead of ===\nconst createDeepEqualSelector = createSelectorCreator(defaultMemoize, _isEqual);\n\n// return value should not change when file content changes\nexport const getAllTitles = createDeepEqualSelector(\n\t(state) =>\n\t\t_map(state.db.files.allFiles, ({ title, id }) => ({ title, id })),\n\t(allFiles) => _sortBy(allFiles, (o) => o.title.toLowerCase())\n);\n\nexport const getOne = (state, id) => {\n\treturn state.db.files.allFiles[id];\n};\n\nexport const getCategoryOptions = (state, id, category) => {\n\tconst file = state.db.files.allFiles[id];\n\n\tif (!file) return;\n\n\tif ((file.options || {})[category]) {\n\t\t// handle edge cases where we might have an empty object...\n\t\t// of course this _should_ never happen!\n\t\tif (Object.keys(file.options[category]).length === 0) return;\n\n\t\treturn _cloneDeep(file.options[category]);\n\t}\n};\n\nexport const getLatestModeOptions = (state, id) => {\n\tconst file = state.db.files.allFiles[id];\n\n\tif (!file) return;\n\n\tconst fileOptions = file.options || {};\n\n\tconst allOptionsPerMode = [];\n\tif (fileOptions.edit) allOptionsPerMode.push({ ...fileOptions.edit });\n\tif (fileOptions.play) allOptionsPerMode.push({ ...fileOptions.play });\n\tif (fileOptions.print) allOptionsPerMode.push({ ...fileOptions.print });\n\tif (fileOptions.export) allOptionsPerMode.push({ ...fileOptions.export });\n\n\tif (!allOptionsPerMode.length) return;\n\n\tallOptionsPerMode.sort((a, b) => a.updatedAt - b.updatedAt);\n\n\treturn allOptionsPerMode.reduce(\n\t\t(acc, modeOptions) => Object.assign(acc, modeOptions),\n\t\t{}\n\t);\n};\n","const editorModeOptions = {\n\tedit: ['theme', 'transposeValue', 'preferredAccidentals', 'symbolType'],\n\tplay: [\n\t\t'theme',\n\n\t\t'transposeValue',\n\t\t'preferredAccidentals',\n\t\t'symbolType',\n\n\t\t'chartType',\n\t\t'alignChordsWithLyrics',\n\t\t'alignBars',\n\t\t'autoRepeatChords',\n\t\t'expandSectionCopy',\n\n\t\t'columnsCount',\n\n\t\t'fontSize',\n\t],\n\tprint: [\n\t\t'transposeValue',\n\t\t'preferredAccidentals',\n\t\t'symbolType',\n\n\t\t'chartType',\n\t\t'alignChordsWithLyrics',\n\t\t'alignBars',\n\t\t'autoRepeatChords',\n\t\t'expandSectionCopy',\n\n\t\t'columnsCount',\n\t\t'columnBreakOnSection',\n\t\t'documentMargins',\n\n\t\t'fontSize',\n\t],\n\texport: [\n\t\t'chartFormat',\n\n\t\t'transposeValue',\n\t\t'preferredAccidentals',\n\t\t'symbolType',\n\n\t\t'chartType',\n\t\t'alignChordsWithLyrics',\n\t\t'alignBars',\n\t\t'autoRepeatChords',\n\t\t'expandSectionCopy',\n\t],\n};\n\nexport default editorModeOptions;\n","import _pick from 'lodash/pick';\nimport clock from '../../core/clock';\n\nimport * as actionTypes from './actionsTypes';\n\nimport { DB_OPTION_SET_OPTION_VALUE } from '../options/actionsTypes';\nimport { UI_LAYOUT_APP_SET_EDITOR_MODE } from '../../ui/layout/app/_state/actionsTypes';\nimport { getEditorMode } from '../../ui/layout/app/_state/selectors';\nimport { getSelectedId } from '../../fileManager/_state/selectors';\nimport { getLatestModeOptions, getCategoryOptions } from './selectors';\nimport editorModeOptions from '../options/editorModeOptions';\n\nconst initialState = {\n\tallFiles: {},\n};\n\nfunction createFile(state, action) {\n\tconst { id, title, content } = action.payload;\n\n\tconst allFiles = { ...state.allFiles };\n\tallFiles[id] = {\n\t\tid,\n\t\ttitle,\n\t\tcontent,\n\t};\n\n\treturn {\n\t\t...state,\n\t\tallFiles,\n\t};\n}\n\nfunction updateFile(state, action) {\n\tconst { id, title, content } = action.payload;\n\n\tif ((!title && typeof content === 'undefined') || !state.allFiles[id]) {\n\t\treturn state;\n\t}\n\n\tconst allFiles = { ...state.allFiles };\n\n\tallFiles[id] = { ...allFiles[id] };\n\n\tif (title) {\n\t\tallFiles[id].title = title;\n\t}\n\tif (typeof content !== 'undefined') {\n\t\tallFiles[id].content = content;\n\t}\n\treturn {\n\t\t...state,\n\t\tallFiles,\n\t};\n}\n\nfunction deleteFile(state, action) {\n\tconst { id } = action.payload;\n\n\tif (!id || !state.allFiles[id]) {\n\t\treturn state;\n\t}\n\n\tconst allFiles = { ...state.allFiles };\n\tdelete allFiles[id];\n\n\treturn {\n\t\t...state,\n\t\tallFiles,\n\t};\n}\n\n/**\n * Whenever the user set an option, we save it in the song entity, either:\n * - for the current editing mode if it is a formatting option\n * - in the preferences otherwise\n */\nfunction updateFileOption(state, action, fullState) {\n\tconst { context, key, value } = action.payload;\n\tconst id = getSelectedId(fullState);\n\tconst allFiles = { ...state.allFiles };\n\n\tif (\n\t\t['songFormatting', 'songPreferences'].includes(context) &&\n\t\tallFiles[id]\n\t) {\n\t\tconst editorMode = getEditorMode(fullState);\n\t\tconst optionCategory =\n\t\t\tcontext === 'songPreferences' ? 'preferences' : editorMode;\n\n\t\tallFiles[id] = addOption(allFiles[id], optionCategory, key, value);\n\t\treturn {\n\t\t\t...state,\n\t\t\tallFiles,\n\t\t};\n\t}\n\treturn state;\n}\n\nfunction addOption(fileState, category, key, value) {\n\treturn {\n\t\t...fileState,\n\t\toptions: {\n\t\t\t...fileState.options,\n\t\t\t[category]: {\n\t\t\t\t...(fileState.options || {})[category],\n\t\t\t\tupdatedAt: clock(),\n\t\t\t\t[key]: value,\n\t\t\t},\n\t\t},\n\t};\n}\n\n/**\n * When a user switch mode and the target mode does not have any saved settings yet,\n * we apply the latest saved settings (all modes merged) for a better user flow\n */\nfunction setEditorMode(state, action, fullState) {\n\tconst fileId = getSelectedId(fullState);\n\tconst nextMode = action.payload.mode;\n\n\tconst hasOptionsForNextMode = !!getCategoryOptions(\n\t\tfullState,\n\t\tfileId,\n\t\tnextMode\n\t);\n\n\tif (!hasOptionsForNextMode) {\n\t\tconst previousModeOptions = _pick(\n\t\t\tgetLatestModeOptions(fullState, fileId) || {},\n\t\t\teditorModeOptions[nextMode]\n\t\t);\n\n\t\tif (Object.keys(previousModeOptions).length) {\n\t\t\tpreviousModeOptions.updatedAt = clock();\n\t\t\tconst allFiles = { ...state.allFiles };\n\n\t\t\tallFiles[fileId] = {\n\t\t\t\t...allFiles[fileId],\n\t\t\t\toptions: {\n\t\t\t\t\t...allFiles[fileId].options,\n\t\t\t\t\t[nextMode]: previousModeOptions,\n\t\t\t\t},\n\t\t\t};\n\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tallFiles,\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n}\n\nexport default (state = initialState, action = {}, fullState = {}) => {\n\tswitch (action.type) {\n\t\tcase actionTypes.DB_FILES_CREATE:\n\t\tcase actionTypes.DB_FILES_IMPORT:\n\t\t\treturn createFile(state, action);\n\t\tcase actionTypes.DB_FILES_UPDATE:\n\t\t\treturn updateFile(state, action);\n\t\tcase actionTypes.DB_FILES_DELETE:\n\t\t\treturn deleteFile(state, action);\n\t\tcase DB_OPTION_SET_OPTION_VALUE:\n\t\t\treturn updateFileOption(state, action, fullState);\n\t\tcase UI_LAYOUT_APP_SET_EDITOR_MODE:\n\t\t\treturn setEditorMode(state, action, fullState);\n\t}\n\treturn state;\n};\n","export const FILE_MANAGER_SELECT_FILE = 'fileManager/select';\nexport const FILE_MANAGER_ENABLE_RENAME = 'fileManager/enableRename';\n","import _cloneDeep from 'lodash/cloneDeep';\n\nexport const getOptionValue = (state, context, key) => {\n\tif (\n\t\t!state.db.options[context] ||\n\t\t!state.db.options[context].values ||\n\t\ttypeof state.db.options[context].values[key] === 'undefined'\n\t) {\n\t\treturn;\n\t}\n\treturn state.db.options[context].values[key];\n};\n\nexport const getAllOptionValues = (state, context) => {\n\tif (!state.db.options[context] || !state.db.options[context].values) {\n\t\treturn;\n\t}\n\treturn _cloneDeep(state.db.options[context].values);\n};\n\nexport const getOptionsDefaults = (state, context) => {\n\tif (!state.db.options[context] || !state.db.options[context].defaults) {\n\t\treturn;\n\t}\n\treturn _cloneDeep(state.db.options[context].defaults);\n};\n","import _pick from 'lodash/pick';\n\nimport * as actionTypes from './actionsTypes';\nimport { getCategoryOptions, getLatestModeOptions } from '../files/selectors';\n\nimport { UI_LAYOUT_APP_SET_EDITOR_MODE } from '../../ui/layout/app/_state/actionsTypes';\nimport { FILE_MANAGER_SELECT_FILE } from '../../fileManager/_state/actionsTypes';\nimport { getSelectedId } from '../../fileManager/_state/selectors';\nimport { getEditorMode } from '../../ui/layout/app/_state/selectors';\nimport { getOptionsDefaults } from './selectors';\nimport allEditorModeOptions from './editorModeOptions';\n\nconst initialState = {};\n\nfunction setOptionValue(state, action) {\n\tconst { context, key, value } = action.payload;\n\n\tif (\n\t\t!state[context] ||\n\t\t!state[context].values ||\n\t\ttypeof state[context].values[key] === 'undefined'\n\t) {\n\t\treturn state;\n\t}\n\n\tconst newState = {\n\t\t...state,\n\t\t[context]: {\n\t\t\t...state[context],\n\t\t\tvalues: { ...state[context].values },\n\t\t},\n\t};\n\tnewState[context].values[key] = value;\n\n\treturn newState;\n}\n\nfunction setEditorMode(state, action, fullState) {\n\tconst fileId = getSelectedId(fullState);\n\tconst nextMode = action.payload.mode;\n\n\tconst newOptions = getModeOptions(fullState, fileId, nextMode);\n\n\treturn {\n\t\t...state,\n\t\tsongFormatting: {\n\t\t\t...state.songFormatting,\n\t\t\tvalues: {\n\t\t\t\t...newOptions,\n\t\t\t},\n\t\t},\n\t};\n}\n\n// Get defined options for a mode, either because they exist for the given mode,\n// or building them from options stored in the other modes\nfunction getModeOptions(fullState, fileId, mode) {\n\tconst defaultOptions = getOptionsDefaults(fullState, 'songFormatting');\n\tlet editorModeOptions = getCategoryOptions(fullState, fileId, mode);\n\n\tif (!editorModeOptions) {\n\t\teditorModeOptions = getLatestModeOptions(fullState, fileId) || {};\n\t}\n\tdelete editorModeOptions.updatedAt;\n\n\t// take only relevant options for the mode\n\teditorModeOptions = _pick(editorModeOptions, allEditorModeOptions[mode]);\n\n\treturn Object.assign(defaultOptions, editorModeOptions);\n}\n\nfunction selectFile(state, action, fullState) {\n\tconst { id } = action.payload;\n\tconst editorMode = getEditorMode(fullState);\n\n\tconst newOptions = getModeOptions(fullState, id, editorMode);\n\n\tconst songPreferences =\n\t\tgetCategoryOptions(fullState, id, 'preferences') || {};\n\tdelete songPreferences.updatedAt;\n\n\tconst defaultPreferences = getOptionsDefaults(fullState, 'songPreferences');\n\n\tconst newPreferences = Object.assign(defaultPreferences, songPreferences);\n\n\treturn {\n\t\t...state,\n\t\tsongPreferences: {\n\t\t\t...state.songPreferences,\n\t\t\tvalues: {\n\t\t\t\t...newPreferences,\n\t\t\t},\n\t\t},\n\t\tsongFormatting: {\n\t\t\t...state.songFormatting,\n\t\t\tvalues: {\n\t\t\t\t...newOptions,\n\t\t\t},\n\t\t},\n\t};\n}\n\nexport default (state = initialState, action = {}, fullState = {}) => {\n\tswitch (action.type) {\n\t\tcase actionTypes.DB_OPTION_SET_OPTION_VALUE: {\n\t\t\treturn setOptionValue(state, action);\n\t\t}\n\t\tcase UI_LAYOUT_APP_SET_EDITOR_MODE: {\n\t\t\treturn setEditorMode(state, action, fullState);\n\t\t}\n\t\tcase FILE_MANAGER_SELECT_FILE: {\n\t\t\treturn selectFile(state, action, fullState);\n\t\t}\n\t}\n\treturn state;\n};\n","import combineSectionReducers from 'combine-section-reducers';\nimport files from './files/reducers';\nimport options from './options/reducers';\n\nexport default combineSectionReducers({\n\tfiles,\n\toptions,\n});\n","import {\n\tFILE_MANAGER_SELECT_FILE,\n\tFILE_MANAGER_ENABLE_RENAME,\n} from './actionsTypes';\n\nimport {\n\tDB_FILES_CREATE,\n\tDB_FILES_DELETE,\n\tDB_FILES_IMPORT,\n\tDB_FILES_UPDATE,\n} from '../../db/files/actionsTypes';\n\nconst initialState = {\n\tselected: '',\n\trenamed: '',\n\tdefaultTitle: '[untitled]',\n};\n\nexport default function reducers(state = initialState, action = {}) {\n\tswitch (action.type) {\n\t\tcase DB_FILES_CREATE: {\n\t\t\tconst { id } = action.payload;\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tselected: id,\n\t\t\t\trenamed: id,\n\t\t\t};\n\t\t}\n\n\t\tcase DB_FILES_IMPORT: {\n\t\t\tconst { id } = action.payload;\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tselected: id,\n\t\t\t\trenamed: '',\n\t\t\t};\n\t\t}\n\n\t\tcase DB_FILES_UPDATE: {\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\trenamed: '',\n\t\t\t};\n\t\t}\n\n\t\tcase DB_FILES_DELETE: {\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tselected: '',\n\t\t\t\trenamed: '',\n\t\t\t};\n\t\t}\n\n\t\tcase FILE_MANAGER_SELECT_FILE: {\n\t\t\tconst { id } = action.payload;\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tselected: id,\n\t\t\t\trenamed: id === state.renamed ? id : '',\n\t\t\t};\n\t\t}\n\n\t\tcase FILE_MANAGER_ENABLE_RENAME: {\n\t\t\tconst { id } = action.payload;\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\trenamed: id,\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n}\n","export const SONG_IMPORTER_IMPORT_CANCEL = 'songImporter/import/cancel';\nexport const SONG_IMPORTER_IMPORT_START = 'songImporter/import/start';\nexport const SONG_IMPORTER_SET_CONTENT = 'songImporter/setContent';\nexport const SONG_IMPORTER_SET_INPUT_FORMAT = 'songImporter/setInputFormat';\n","import domPurify from 'dompurify';\n\nexport default function stripTags(html) {\n\treturn domPurify.sanitize(html, {\n\t\tALLOWED_TAGS: ['#text'],\n\t\tKEEP_CONTENT: true,\n\t});\n}\n","import * as actions from './actionsTypes';\nimport { DB_FILES_IMPORT } from '../../db/files/actionsTypes';\n\nimport stripTags from '../../core/stripTags';\n\nconst initialState = {\n\tcontent: '',\n\tisFromWeb: false,\n\tisImporting: false,\n\tinputFormat: 'auto',\n\ttitle: '',\n};\n\nexport default function reducers(state = initialState, action = {}) {\n\tswitch (action.type) {\n\t\tcase actions.SONG_IMPORTER_SET_CONTENT: {\n\t\t\tconst { content, title = '' } = action.payload;\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tcontent: stripTags(content),\n\t\t\t\ttitle: title ? stripTags(title) : state.title,\n\t\t\t};\n\t\t}\n\n\t\tcase actions.SONG_IMPORTER_SET_INPUT_FORMAT: {\n\t\t\tconst { inputFormat } = action.payload;\n\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tinputFormat,\n\t\t\t};\n\t\t}\n\n\t\tcase DB_FILES_IMPORT:\n\t\tcase actions.SONG_IMPORTER_IMPORT_CANCEL: {\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tcontent: '',\n\t\t\t\ttitle: '',\n\t\t\t\tisImporting: false,\n\t\t\t};\n\t\t}\n\n\t\tcase actions.SONG_IMPORTER_IMPORT_START: {\n\t\t\tconst { content, inputFormat, title, isFromWeb } = action.payload;\n\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisImporting: true,\n\t\t\t\tcontent: content ? stripTags(content) : '',\n\t\t\t\ttitle: title ? stripTags(title) : '',\n\t\t\t\tinputFormat: inputFormat || state.inputFormat,\n\t\t\t\tisFromWeb,\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n}\n","import {\n\tUI_LAYOUT_APP_TOGGLE_RIGHT_BAR,\n\tUI_LAYOUT_APP_TOGGLE_LEFT_BAR,\n\tUI_LAYOUT_APP_SET_EDITOR_MODE,\n} from './actionsTypes';\n\nimport {\n\tDB_FILES_CREATE,\n\tDB_FILES_IMPORT,\n\tDB_FILES_DELETE,\n} from '../../../../db/files/actionsTypes';\n\nconst initialState = {\n\tisLeftBarCollapsed: false,\n\tisRightBarCollapsed: false,\n\teditorMode: 'edit',\n\tactiveModal: 'none',\n};\n\nexport default function reducers(state = initialState, action = {}) {\n\tswitch (action.type) {\n\t\tcase UI_LAYOUT_APP_TOGGLE_LEFT_BAR: {\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLeftBarCollapsed: !state.isLeftBarCollapsed,\n\t\t\t};\n\t\t}\n\t\tcase UI_LAYOUT_APP_TOGGLE_RIGHT_BAR: {\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisRightBarCollapsed: !state.isRightBarCollapsed,\n\t\t\t};\n\t\t}\n\t\tcase UI_LAYOUT_APP_SET_EDITOR_MODE: {\n\t\t\tconst { mode } = action.payload;\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\teditorMode: mode,\n\t\t\t};\n\t\t}\n\t\tcase DB_FILES_DELETE:\n\t\tcase DB_FILES_CREATE:\n\t\tcase DB_FILES_IMPORT: {\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\teditorMode: 'edit',\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n}\n","import combineSectionReducers from 'combine-section-reducers';\nimport app from './app/_state/reducers';\n\nexport default combineSectionReducers({\n\tapp,\n});\n","import combineSectionReducers from 'combine-section-reducers';\nimport layout from './layout/reducers';\n\nexport default combineSectionReducers({\n\tlayout,\n});\n","import combineSectionReducers from 'combine-section-reducers';\n\nimport db from '../db/reducers';\nimport fileManager from '../fileManager/_state/reducers';\nimport songImporter from '../songImporter/_state/reducers';\nimport ui from '../ui/reducers';\n\nexport default combineSectionReducers({\n\tdb,\n\tfileManager,\n\tsongImporter,\n\tui,\n});\n","import db from '../db/seed';\n\nexport default {\n\tdb,\n};\n","import options from './options/seed';\n\nexport default {\n\toptions,\n};\n","export default {\n\t// editorPreferences are identical for all songs\n\teditorPreferences: {\n\t\tvalues: {\n\t\t\ttheme: 'dark1',\n\t\t\tchartFormat: 'chordmark',\n\t\t},\n\t\tdefaults: {\n\t\t\ttheme: 'dark1',\n\t\t\tchartFormat: 'chordmark',\n\t\t},\n\t\t//userDefaults: {},\n\t},\n\t// songPreferences are identical for all song rendering modes\n\t// therefore, they are only saved once for each song\n\tsongPreferences: {\n\t\tvalues: {\n\t\t\ttransposeValue: 0,\n\t\t\tpreferredAccidentals: 'auto',\n\t\t\tsymbolType: 'chord',\n\t\t},\n\t\tdefaults: {\n\t\t\ttransposeValue: 0,\n\t\t\tpreferredAccidentals: 'auto',\n\t\t\tsymbolType: 'chord',\n\t\t},\n\t\t//userDefaults: {},\n\t},\n\t// songFormatting options are specific to a given mode (print, export...)\n\t// they are saved separately for each song\n\tsongFormatting: {\n\t\tvalues: {\n\t\t\tchartType: 'all',\n\t\t\talignChordsWithLyrics: true,\n\t\t\talignBars: true,\n\t\t\tautoRepeatChords: true,\n\t\t\texpandSectionCopy: true,\n\n\t\t\tfontSize: 0,\n\t\t\tcolumnsCount: 1,\n\t\t\tcolumnBreakOnSection: true,\n\t\t\tdocumentMargins: 3,\n\t\t},\n\t\tdefaults: {\n\t\t\tchartType: 'all',\n\t\t\talignChordsWithLyrics: true,\n\t\t\talignBars: true,\n\t\t\tautoRepeatChords: true,\n\t\t\texpandSectionCopy: true,\n\n\t\t\tfontSize: 0,\n\t\t\tcolumnsCount: 1,\n\t\t\tcolumnBreakOnSection: true,\n\t\t\tdocumentMargins: 3,\n\t\t},\n\t\t//userDefaults: {},\n\t},\n};\n","import _defaultsDeep from 'lodash/defaultsDeep';\n\nimport { createStore as createReduxStore, applyMiddleware } from 'redux';\nimport { composeWithDevTools } from 'redux-devtools-extension';\nimport thunkMiddleware from 'redux-thunk';\n\nimport { loadState, saveState } from './localStorage';\nimport allReducers from './reducers';\nimport seed from './seed';\n\nlet store;\n\nexport function createStore() {\n\tconst storeEnhancers = composeWithDevTools(\n\t\tapplyMiddleware(thunkMiddleware)\n\t);\n\n\tconst persistedState = loadState();\n\n\t// store migrations\n\tif (persistedState && persistedState.db && persistedState.db.options) {\n\t\tdelete persistedState.db.options.rendering; // remove old options before the options refactor in v0.9.0\n\t}\n\n\t/* Reset all options * /\n\tObject.keys(persistedState.db.files.allFiles).forEach((fileId) => {\n\t\tdelete persistedState.db.files.allFiles[fileId].options;\n\t});\n\tdelete persistedState.db.options;\n\t/**/\n\t/* misc * /\n\tdelete persistedState.songImporter;\n\tdelete persistedState.fileManager.selected;\n\t/**/\n\n\tconst initialState = _defaultsDeep(persistedState, seed);\n\n\tstore = createReduxStore(allReducers, initialState, storeEnhancers);\n\n\tstore.subscribe(() => {\n\t\tsaveState(store.getState());\n\t});\n}\n\nexport function getStore() {\n\treturn store;\n}\n","export default function createAction(type, payload) {\n\tif (!type) {\n\t\tthrow new TypeError('Cannot create an action without an action type');\n\t}\n\treturn {\n\t\ttype,\n\t\tpayload,\n\t};\n}\n","import * as actionsTypes from './actionsTypes';\n\nimport createAction from '../../core/createAction';\n\nexport const setContent = (content, title) =>\n\tcreateAction(actionsTypes.SONG_IMPORTER_SET_CONTENT, { content, title });\n\nexport const setInputFormat = (inputFormat) =>\n\tcreateAction(actionsTypes.SONG_IMPORTER_SET_INPUT_FORMAT, { inputFormat });\n\nexport const startImport = () =>\n\tcreateAction(actionsTypes.SONG_IMPORTER_IMPORT_START, {\n\t\tisFromWeb: false,\n\t});\n\nexport const startImportFromWeb = (inputFormat, content, title) =>\n\tcreateAction(actionsTypes.SONG_IMPORTER_IMPORT_START, {\n\t\tcontent,\n\t\tinputFormat,\n\t\ttitle,\n\t\tisFromWeb: true,\n\t});\n\nexport const cancelImport = () =>\n\tcreateAction(actionsTypes.SONG_IMPORTER_IMPORT_CANCEL);\n","import { getStore } from '../state/store';\nimport { startImportFromWeb } from './_state/actions';\n\n/**\n * @typedef {Object} WebsiteImportMessage\n * @type {Object}\n * @property {('ultimateGuitar')} source - website from which the tab comes from\n * @property {('chordPro|ChordOverLyrics')} inputFormat - format to pass to chord-mark-converter\n * @property {String} chordChart - content of the chord chart\n * @property {String} title - song title\n * @property {String} artist - song artist\n */\n\nconst songImporterHandlers = {\n\t/**\n\t *\n\t * @param {WebsiteImportMessage} message\n\t */\n\t'@CCS/IMPORT_TAB': (message) => {\n\t\tconst store = getStore();\n\n\t\tconst title = buildTitle(message.title, message.artist);\n\t\tstore.dispatch(\n\t\t\tstartImportFromWeb(message.inputFormat, message.chordChart, title)\n\t\t);\n\t},\n};\n\nconst buildTitle = (songTitle, artist) => {\n\treturn '_' + (artist ? artist + ' - ' : '') + songTitle;\n};\n\nexport default function getSongImporterHandlers() {\n\treturn songImporterHandlers;\n}\n","import getSongImporterHandlers from './songImporter/getMessageHandlers';\n\nexport default function registerHandlers() {\n\twindow.addEventListener('message', _handleMessage);\n}\n\n// unit test backdoor, not for public usage!\nexport const _handleMessage = (e) => {\n\tconst allHandlers = {\n\t\t...getSongImporterHandlers(),\n\t};\n\n\tif (e.source !== window || e.origin !== window.location.origin) {\n\t\treturn false;\n\t}\n\tconst message = e.data;\n\n\tif (typeof allHandlers[message.type] === 'function') {\n\t\tallHandlers[message.type](message.payload);\n\t}\n\treturn true;\n};\n","import './ErrorBoundary.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\n// source: https://codepen.io/gaearon/pen/wqvxGa?editors=0010\nclass ErrorBoundary extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = { error: null, errorInfo: null };\n\t}\n\n\tcomponentDidCatch(error, errorInfo) {\n\t\tthis.setState({\n\t\t\terror: error,\n\t\t\terrorInfo: errorInfo,\n\t\t});\n\t}\n\n\trender() {\n\t\tif (this.state.errorInfo) {\n\t\t\treturn (\n\t\t\t\t
\n\t\t\t\t\t

Something went wrong

\n\t\t\t\t\t
\n\t\t\t\t\t\t{this.state.error && this.state.error.toString()}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t{this.state.errorInfo.componentStack}\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t);\n\t\t}\n\t\treturn this.props.children;\n\t}\n}\n\nErrorBoundary.propTypes = {\n\tchildren: PropTypes.any,\n};\n\nexport default ErrorBoundary;\n","import {\n\tUI_LAYOUT_APP_SET_EDITOR_MODE,\n\tUI_LAYOUT_APP_TOGGLE_LEFT_BAR,\n\tUI_LAYOUT_APP_TOGGLE_RIGHT_BAR,\n} from './actionsTypes';\n\nimport createAction from '../../../../core/createAction';\n\nexport const setEditorMode = (mode) =>\n\tcreateAction(UI_LAYOUT_APP_SET_EDITOR_MODE, { mode });\n\nexport const toggleLeftBar = () => createAction(UI_LAYOUT_APP_TOGGLE_LEFT_BAR);\n\nexport const toggleRightBar = () =>\n\tcreateAction(UI_LAYOUT_APP_TOGGLE_RIGHT_BAR);\n","import './Logo.scss';\n\nimport React from 'react';\n\nimport logoSvg from '../../../../../../logo/media/logo.svg';\n\nfunction Logo() {\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\tChord Chart Studio\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n}\n\nexport default React.memo(Logo);\n","import './Icon.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction Icon(props) {\n\tconst { iconName } = props;\n\n\tconst classList = ['icon', 'material-icons'];\n\n\treturn {iconName};\n}\n\nIcon.propTypes = {\n\ticonName: PropTypes.string.isRequired,\n};\n\nexport default React.memo(Icon);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Icon from '../../../_components/Icon.js';\n\nfunction NavEntry(props) {\n\tconst { label, icon, editorMode, setEditorMode, isActive, isDisabled } =\n\t\tprops;\n\n\tconst classNames = ['mainNavEntry'];\n\n\tif (isActive) {\n\t\tclassNames.push('mainNavEntry-isActive');\n\t}\n\tif (isDisabled) {\n\t\tclassNames.push('mainNavEntry-isDisabled');\n\t}\n\n\tfunction handleClick() {\n\t\tif (!isDisabled) setEditorMode(editorMode);\n\t}\n\n\treturn (\n\t\t
  • \n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t{label}\n\t\t
  • \n\t);\n}\n\nNavEntry.propTypes = {\n\tlabel: PropTypes.string.isRequired,\n\ticon: PropTypes.string.isRequired,\n\teditorMode: PropTypes.string.isRequired,\n\tsetEditorMode: PropTypes.func.isRequired,\n\tisActive: PropTypes.bool.isRequired,\n\tisDisabled: PropTypes.bool.isRequired,\n};\n\nexport default React.memo(NavEntry);\n","import './Nav.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport NavEntry from './NavEntry.js';\n\nfunction Nav(props) {\n\tconst { currentMode, allEntries, setEditorMode, selectedId } = props;\n\n\treturn (\n\t\t\n\t);\n}\n\nNav.propTypes = {\n\tcurrentMode: PropTypes.string.isRequired,\n\tsetEditorMode: PropTypes.func.isRequired,\n\tselectedId: PropTypes.string,\n\tallEntries: PropTypes.arrayOf(\n\t\tPropTypes.shape({\n\t\t\tid: PropTypes.string.isRequired,\n\t\t\tlabel: PropTypes.string.isRequired,\n\t\t\ticon: PropTypes.string.isRequired,\n\t\t\teditorMode: PropTypes.string.isRequired,\n\t\t})\n\t),\n};\n\nexport default React.memo(Nav);\n","import './Button.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Button = ({ children, isDisabled, buttonName, onClick, type }) => {\n\tconst allClassNames = ['Button'];\n\n\tif (type === 'primary') allClassNames.push('Button-primary');\n\tif (type === 'secondary') allClassNames.push('Button-secondary');\n\tif (isDisabled) allClassNames.push('Button-isDisabled');\n\n\treturn (\n\t\t\n\t\t\t{children}\n\t\t\n\t);\n};\n\nButton.propTypes = {\n\tchildren: PropTypes.string.isRequired,\n\tisDisabled: PropTypes.bool,\n\tbuttonName: PropTypes.string.isRequired,\n\ttype: PropTypes.string.isRequired,\n\tonClick: PropTypes.func.isRequired,\n};\n\nButton.defaultProps = {\n\tisDisabled: false,\n};\n\nexport default Button;\n","import './UserGuide.scss';\n\nimport React from 'react';\n\nimport Button from '../../_components/Button';\nimport Icon from '../../_components/Icon.js';\n\nconst userGuideUrl = 'https://chord-chart-studio.netlify.app';\n\nconst UserGuide = () => {\n\tconst openUserGuide = () => {\n\t\twindow.open(userGuideUrl, '_blank').focus();\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\tUser Guide\n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n\nUserGuide.propTypes = {};\n\nUserGuide.defaultProps = {};\n\nexport default React.memo(UserGuide);\n","import getVersions from '../../../core/getVersions';\nimport './Versions.scss';\n\nimport React from 'react';\n\nfunction Versions() {\n\tconst versions = getVersions();\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\tChord Chart Studio {versions['chord-chart-studio']}\n\t\t\t\t
    \n\t\t\t\tChordMark {versions['chord-mark']}
    \n\t\t\t\tChordSymbol {versions['chord-symbol']}
    \n\t\t\t\tLogo by{' '}\n\t\t\t\t\n\t\t\t\t\tDieter Raber\n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n}\n\nexport default React.memo(Versions);\n","export default () => ({'chord-chart-studio':'v0.14.0','chord-symbol':'v4.0.0','chord-mark':'v0.16.2'});","import { v4 as uuidv4 } from 'uuid';\n\nimport createAction from '../../core/createAction';\nimport * as actionTypes from './actionsTypes';\n\nexport const createFile = (title, content = '') => {\n\tif (!title) {\n\t\tthrow new TypeError('Cannot create a file without title');\n\t}\n\tconst payload = {\n\t\tid: uuidv4(),\n\t\ttitle,\n\t\tcontent,\n\t};\n\treturn createAction(actionTypes.DB_FILES_CREATE, payload);\n};\n\nexport const importFile = (title, content = '') => {\n\tif (!title) {\n\t\tthrow new TypeError('Cannot import a file without title');\n\t}\n\tconst payload = {\n\t\tid: uuidv4(),\n\t\ttitle,\n\t\tcontent,\n\t};\n\treturn createAction(actionTypes.DB_FILES_IMPORT, payload);\n};\n\nexport const updateFile = (id, { title, content } = {}) => {\n\tif (!id) {\n\t\tthrow new TypeError('Cannot update a file without an id');\n\t}\n\tconst payload = {\n\t\tid,\n\t\ttitle,\n\t\tcontent,\n\t};\n\treturn createAction(actionTypes.DB_FILES_UPDATE, payload);\n};\n\nexport const deleteFile = (id) => {\n\treturn createAction(actionTypes.DB_FILES_DELETE, { id });\n};\n","export const getContent = (state) => state.songImporter.content;\n\nexport const getInputFormat = (state) => state.songImporter.inputFormat;\n\nexport const getTitle = (state) => state.songImporter.title;\n\nexport const isImporting = (state) => state.songImporter.isImporting;\n\nexport const isFromWeb = (state) => state.songImporter.isFromWeb;\n","import './Modal.scss';\n\nimport React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nfunction Modal(props) {\n\tconst { children, closeModal } = props;\n\n\tuseEffect(() => {\n\t\tconst handleKeyboard = (e) => {\n\t\t\tif (e.key === 'Escape') {\n\t\t\t\tcloseModal();\n\t\t\t}\n\t\t};\n\t\twindow.addEventListener('keyup', handleKeyboard);\n\n\t\treturn () => {\n\t\t\twindow.removeEventListener('keyup', handleKeyboard);\n\t\t};\n\t});\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t
    {children}
    \n\t\t
    \n\t);\n}\n\nModal.propTypes = {\n\tchildren: PropTypes.element.isRequired,\n\tcloseModal: PropTypes.func.isRequired,\n};\n\nexport default Modal;\n","import React from 'react';\nimport Button from '../../ui/_components/Button';\nimport PropTypes from 'prop-types';\n\nconst Header = ({\n\tcancelImport,\n\tchordMarkContent,\n\timportFile,\n\ttitle,\n\tcontent,\n\terror,\n}) => {\n\tconst headerTitle = title ? 'Import \"' + title + '\"' : 'Import song';\n\n\tconst doImport = () => {\n\t\timportFile(title || '[untitled]', chordMarkContent);\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    {headerTitle}
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\tCANCEL\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tIMPORT\n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n\nHeader.propTypes = {\n\tcancelImport: PropTypes.func.isRequired,\n\tchordMarkContent: PropTypes.string,\n\tcontent: PropTypes.string,\n\terror: PropTypes.string,\n\timportFile: PropTypes.func.isRequired,\n\ttitle: PropTypes.string,\n};\n\nexport default Header;\n","import { filesize } from 'filesize';\n\nconst maxFileSizeBytes = 50 * 1024;\n\nconst getUploadedFile = (fileList) => {\n\treturn new Promise((resolve, reject) => {\n\t\tif (fileList.length) {\n\t\t\tconst file = fileList[0];\n\n\t\t\tif (isOversized(file)) {\n\t\t\t\treject(getFileTooBigMsg(file.size));\n\t\t\t} else if (!isTextFile(file)) {\n\t\t\t\treject(getWrongFileTypeMsg(file));\n\t\t\t} else {\n\t\t\t\tfile.text()\n\t\t\t\t\t.then((fileContent) => {\n\t\t\t\t\t\tresolve({\n\t\t\t\t\t\t\tcontent: fileContent,\n\t\t\t\t\t\t\ttitle: getSongTitle(file),\n\t\t\t\t\t\t});\n\t\t\t\t\t})\n\t\t\t\t\t.catch((e) => {\n\t\t\t\t\t\treject(e);\n\t\t\t\t\t});\n\t\t\t}\n\t\t} else {\n\t\t\treject(getNoFileSelectedMsg());\n\t\t}\n\t});\n};\n\nconst getSongTitle = (file) => file.name.substr(0, file.name.lastIndexOf('.'));\n\nconst isOversized = (file) => file.size > maxFileSizeBytes;\n\n// files with extension such as .cho or .chopro are detected with an empty mimetype\n// so we consider them as text\nconst isTextFile = (file) =>\n\tfile.type.indexOf('text') === 0 || file.type.length === 0;\n\nconst getFileTooBigMsg = (actualSize) =>\n\t'The selected file is too big: ' +\n\tfilesize(actualSize, { round: 0 }) +\n\t' (maximum allowed file size is ' +\n\tfilesize(maxFileSizeBytes, { round: 0 }) +\n\t').';\n\nconst getWrongFileTypeMsg = (file) =>\n\t'Cannot import file of type ' + file.type + '.';\n\nconst getNoFileSelectedMsg = () => 'No file selected.';\n\nexport default getUploadedFile;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport getUploadedFile from '../getUploadedFile';\n\nconst allowedFiles = 'text/*,.cho,.crd,.chopro,.chord,.pro,.txt,.md';\n\nconst FilePicker = ({ setContent }) => {\n\tconst handleChange = (ev) => {\n\t\tgetUploadedFile(ev.target.files)\n\t\t\t.then((file) => {\n\t\t\t\tsetContent(file.content, file.title);\n\t\t\t})\n\t\t\t.catch((e) => {\n\t\t\t\tsetContent(e);\n\t\t\t});\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\tSelect File\n\t\t\t\n\t\t\t\n\t\t
    \n\t);\n};\n\nFilePicker.propTypes = {\n\tsetContent: PropTypes.func.isRequired,\n};\n\nexport default FilePicker;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Icon from '../../ui/_components/Icon';\n\nfunction Input(props) {\n\tconst { content, setContent, isDisabled } = props;\n\n\tconst onChange = (e) => {\n\t\tsetContent(e.target.value);\n\t};\n\n\tconst allClasses = ['sim-Input_Textarea'];\n\n\tif (isDisabled) {\n\t\tallClasses.push('sim-Input_Textarea-Disabled');\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t
    \n\t\t\t\t\n\t\t\t\tCopy/paste below\n\t\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\n\t);\n}\n\nInput.propTypes = {\n\tcontent: PropTypes.string.isRequired,\n\tisDisabled: PropTypes.bool.isRequired,\n\tsetContent: PropTypes.func.isRequired,\n};\n\nInput.defaultProps = {};\n\nexport default Input;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction PreviewError(props) {\n\tconst { inputFormat, error } = props;\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\tThere was an error when trying to parse the song in the\n\t\t\t\tspecified input format ({inputFormat}).\n\t\t\t\t
    \n\t\t\t\tPlease correct the input or try another format.\n\t\t\t\t
    \n\t\t\t\tThe error was:\n\t\t\t

    \n\t\t\t

    "{error}"

    \n\t\t\t

    \n\t\t\t\tHint: most of the time, this is related to an unclosed\n\t\t\t\t"[" or "{" or an unsupported ChordPro\n\t\t\t\tdirective\n\t\t\t

    \n\t\t
    \n\t);\n}\n\nPreviewError.propTypes = {\n\terror: PropTypes.string,\n\tinputFormat: PropTypes.string.isRequired,\n};\n\nPreviewError.defaultProps = {};\n\nexport default PreviewError;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction InputFormatEntry(props) {\n\tconst { setInputFormat, inputFormat, id, label, isDisabled } = props;\n\n\tconst onChange = (e) => {\n\t\tif (!isDisabled) {\n\t\t\tsetInputFormat(e.target.value);\n\t\t}\n\t};\n\n\tconst allInputClasses = ['sim-InputFormat_Entry'];\n\tconst allLabelClasses = ['sim-InputFormat_Label'];\n\n\tif (isDisabled) {\n\t\tallInputClasses.push('sim-InputFormat_Entry-Disabled');\n\t\tallLabelClasses.push('sim-InputFormat_Label-Disabled');\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\n\t\t\n\t);\n}\n\nInputFormatEntry.propTypes = {\n\tsetInputFormat: PropTypes.func.isRequired,\n\tinputFormat: PropTypes.string.isRequired,\n\tid: PropTypes.string.isRequired,\n\tlabel: PropTypes.string.isRequired,\n\tisDisabled: PropTypes.bool.isRequired,\n};\n\nInputFormatEntry.defaultProps = {};\n\nexport default InputFormatEntry;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport InputFormatEntry from './InputFormatEntry';\n\nconst allEntries = [\n\t{\n\t\tid: 'auto',\n\t\tlabel: 'Detect',\n\t},\n\t{\n\t\tid: 'chordPro',\n\t\tlabel: 'Bracketed chords (ChordPro)',\n\t},\n\t{\n\t\tid: 'chordsOverLyrics',\n\t\tlabel: 'Chords over lyrics (Ultimate Guitar...)',\n\t},\n];\n\nfunction InputFormatSelector(props) {\n\tconst { setInputFormat, inputFormat, disableAll } = props;\n\n\tconst rendered = allEntries.map((entry) => (\n\t\t\n\t));\n\n\treturn (\n\t\t
    \n\t\t\tInput format:\n\t\t\t{rendered}\n\t\t
    \n\t);\n}\n\nInputFormatSelector.propTypes = {\n\tdisableAll: PropTypes.bool.isRequired,\n\tsetInputFormat: PropTypes.func.isRequired,\n\tinputFormat: PropTypes.string.isRequired,\n};\n\nInputFormatSelector.defaultProps = {};\n\nexport default InputFormatSelector;\n","import './SongImporter.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { convert2ChordMark } from 'chord-mark-converters';\n\nimport Modal from '../../ui/_components/Modal';\nimport Header from './Header';\nimport FilePicker from './FilePicker';\nimport Input from './Input';\nimport PreviewError from './PreviewError';\nimport InputFormatSelector from './InputFormatSelector';\nimport Icon from '../../ui/_components/Icon';\n\nfunction SongImporter(props) {\n\tconst {\n\t\tcancelImport,\n\t\tcontent,\n\t\timportFile,\n\t\tisFromWeb,\n\t\tisImporting,\n\t\tsetContent,\n\t\tsetInputFormat,\n\t\tinputFormat,\n\t\ttitle,\n\t} = props;\n\n\tif (!isImporting) return null;\n\n\tlet chordMarkContent = '';\n\tlet error = '';\n\n\ttry {\n\t\tchordMarkContent = convert2ChordMark(content, { inputFormat });\n\t} catch (e) {\n\t\terror = e.message;\n\t}\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tChordMark preview\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{!error ? (\n\t\t\t\t\t\t\t\tchordMarkContent\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t);\n}\n\nSongImporter.propTypes = {\n\tcancelImport: PropTypes.func.isRequired,\n\tcontent: PropTypes.string.isRequired,\n\timportFile: PropTypes.func.isRequired,\n\tisFromWeb: PropTypes.bool.isRequired,\n\tisImporting: PropTypes.bool.isRequired,\n\tsetContent: PropTypes.func.isRequired,\n\tsetInputFormat: PropTypes.func.isRequired,\n\tinputFormat: PropTypes.string.isRequired,\n\ttitle: PropTypes.string,\n};\n\nSongImporter.defaultProps = {};\n\nexport default SongImporter;\n","import { connect } from 'react-redux';\n\nimport { importFile } from '../../db/files/actions';\nimport { setContent, setInputFormat, cancelImport } from '../_state/actions';\nimport {\n\tgetInputFormat,\n\tgetContent,\n\tgetTitle,\n\tisImporting,\n\tisFromWeb,\n} from '../_state/selectors';\n\nimport SongImporter from '../_components/SongImporter';\n\nexport default connect(\n\t(state) => ({\n\t\tcontent: getContent(state),\n\t\tisFromWeb: isFromWeb(state),\n\t\tisImporting: isImporting(state),\n\t\tinputFormat: getInputFormat(state),\n\t\ttitle: getTitle(state),\n\t}),\n\n\t{\n\t\tsetContent,\n\t\tsetInputFormat,\n\t\tcancelImport,\n\t\timportFile,\n\t}\n)(SongImporter);\n","export default [\n\t{\n\t\tid: 'edit',\n\t\tlabel: 'Edit',\n\t\ticon: 'create',\n\t\teditorMode: 'edit',\n\t},\n\t{\n\t\tid: 'play',\n\t\tlabel: 'Screen view',\n\t\ticon: 'music_note',\n\t\teditorMode: 'play',\n\t},\n\t{\n\t\tid: 'print',\n\t\tlabel: 'Print/PDF Preview',\n\t\ticon: 'print',\n\t\teditorMode: 'print',\n\t},\n\t{\n\t\tid: 'export',\n\t\tlabel: 'Export Preview',\n\t\ticon: 'save_alt',\n\t\teditorMode: 'export',\n\t},\n];\n","import './App.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Logo from '../../../sideBar/_components/Logo';\nimport Nav from './Nav';\nimport UserGuide from '../../../sideBar/_components/UserGuide';\nimport Versions from '../../../sideBar/_components/Versions';\nimport Icon from '../../../_components/Icon';\nimport SongImporter from '../../../../songImporter/_containers/SongImporter';\n\nimport allNavEntries from '../allNavEntries';\n\nfunction App(props) {\n\tconst {\n\t\teditorMode,\n\t\tisLeftBarCollapsed,\n\t\tisRightBarCollapsed,\n\t\ttoggleLeftBar,\n\t\ttoggleRightBar,\n\t\tsetEditorMode,\n\t\tselectedId,\n\n\t\tleftBar,\n\t\trightBar,\n\t} = props;\n\n\tconst leftBarClassNames = ['leftBar'];\n\tif (isLeftBarCollapsed) {\n\t\tleftBarClassNames.push('leftBar-isCollapsed');\n\t}\n\n\tconst rightBarClassNames = ['rightBar'];\n\tif (isRightBarCollapsed) {\n\t\trightBarClassNames.push('rightBar-isCollapsed');\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t{leftBar}\n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t{props.children}\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t{rightBar}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\n\t);\n}\n\nApp.propTypes = {\n\tchildren: PropTypes.element,\n\n\tisLeftBarCollapsed: PropTypes.bool,\n\tisRightBarCollapsed: PropTypes.bool,\n\tselectedId: PropTypes.string,\n\ttoggleLeftBar: PropTypes.func.isRequired,\n\ttoggleRightBar: PropTypes.func.isRequired,\n\n\teditorMode: PropTypes.string.isRequired,\n\tsetEditorMode: PropTypes.func.isRequired,\n\n\tleftBar: PropTypes.element.isRequired,\n\trightBar: PropTypes.element.isRequired,\n};\n\nApp.defaultProps = {\n\tisLeftBarCollapsed: false,\n\tisRightBarCollapsed: false,\n};\n\nexport default App;\n","import { connect } from 'react-redux';\n\nimport {\n\ttoggleLeftBar,\n\ttoggleRightBar,\n\tsetEditorMode,\n} from '../_state/actions';\nimport {\n\tisLeftBarCollapsed,\n\tisRightBarCollapsed,\n\tgetEditorMode,\n} from '../_state/selectors';\nimport { getSelectedId } from '../../../../fileManager/_state/selectors';\n\nimport App from '../_components/App';\n\nexport default connect(\n\t(state) => ({\n\t\teditorMode: getEditorMode(state),\n\t\tisLeftBarCollapsed: isLeftBarCollapsed(state),\n\t\tisRightBarCollapsed: isRightBarCollapsed(state),\n\t\tselectedId: getSelectedId(state),\n\t}),\n\n\t{\n\t\ttoggleLeftBar,\n\t\ttoggleRightBar,\n\t\tsetEditorMode,\n\t}\n)(App);\n","import createAction from '../../core/createAction';\n\nimport * as actionsTypes from './actionsTypes';\n\nexport const selectFile = (id) =>\n\tcreateAction(actionsTypes.FILE_MANAGER_SELECT_FILE, { id });\n\nexport const enableRename = (id) =>\n\tcreateAction(actionsTypes.FILE_MANAGER_ENABLE_RENAME, { id });\n","import { renderSong as renderSongCm, parseSong } from 'chord-mark';\nimport {\n\tchordMark2ChordPro,\n\tchordMark2UltimateGuitar,\n} from 'chord-mark-converters';\nimport { chordRendererFactory } from 'chord-symbol';\nimport chordSymbolUltimateGuitar from 'chord-symbol-ultimateguitar';\n\nimport stripTags from './stripTags';\n\nexport function renderAsText(\n\tsongTxt,\n\trenderOptions = {},\n\tuseChartFormat = false\n) {\n\treturn render(songTxt, renderOptions, useChartFormat, 'text');\n}\n\nexport function renderAsHtml(\n\tsongTxt,\n\trenderOptions = {},\n\tuseChartFormat = false\n) {\n\treturn render(songTxt, renderOptions, useChartFormat, 'html');\n}\n\n// eslint-disable-next-line complexity\nfunction render(songTxt, renderOptions, useChartFormat, outputFormat) {\n\tif (useChartFormat) {\n\t\tswitch (renderOptions.chartFormat) {\n\t\t\tcase 'chordmark': {\n\t\t\t\tconst cmHtml = renderSong(songTxt, renderOptions);\n\t\t\t\treturn outputFormat === 'html' ? cmHtml : toText(cmHtml);\n\t\t\t}\n\t\t\tcase 'chordmarkSrc':\n\t\t\t\treturn outputFormat === 'html' ? toHtml(songTxt) : songTxt;\n\t\t\tcase 'chordpro': {\n\t\t\t\trenderOptions.customRenderer = chordMark2ChordPro();\n\t\t\t\tconst cpTxt = renderSong(songTxt, renderOptions);\n\t\t\t\treturn outputFormat === 'html' ? toHtml(cpTxt) : cpTxt;\n\t\t\t}\n\t\t\tcase 'ultimateGuitar': {\n\t\t\t\trenderOptions.customRenderer = chordMark2UltimateGuitar();\n\t\t\t\tconst ugTxt =\n\t\t\t\t\trenderSong(songTxt, {\n\t\t\t\t\t\t...renderOptions,\n\t\t\t\t\t\tcustomRenderer: chordMark2UltimateGuitar(),\n\t\t\t\t\t\tprintBarSeparators: 'grids',\n\t\t\t\t\t\tprintChordsDuration: 'never',\n\t\t\t\t\t\tprintSubBeatDelimiters: false,\n\t\t\t\t\t\tprintInlineTimeSignatures: false,\n\t\t\t\t\t\tchordSymbolRenderer: chordRendererFactory({\n\t\t\t\t\t\t\tcustomFilters: [chordSymbolUltimateGuitar()],\n\t\t\t\t\t\t\tuseShortNamings: true,\n\t\t\t\t\t\t\taccidentalsType:\n\t\t\t\t\t\t\t\trenderOptions.accidentalsType === 'auto'\n\t\t\t\t\t\t\t\t\t? 'original'\n\t\t\t\t\t\t\t\t\t: renderOptions.accidentalsType,\n\t\t\t\t\t\t\t...renderOptions, // duh!\n\t\t\t\t\t\t}),\n\t\t\t\t\t}) +\n\t\t\t\t\t'\\n\\nCreated with Chord Chart Studio (https://chord-chart-studio.netlify.app)';\n\t\t\t\treturn outputFormat === 'html' ? toHtml(ugTxt) : ugTxt;\n\t\t\t}\n\t\t}\n\t}\n\n\tconst chordMarkHtml = renderSong(songTxt, {\n\t\t...renderOptions,\n\t\twrapChordLyricLines: true,\n\t});\n\treturn outputFormat === 'html' ? chordMarkHtml : toText(chordMarkHtml);\n}\n\nfunction renderSong(songTxt, renderOptions) {\n\ttry {\n\t\tconst parsed = parseSong(songTxt);\n\t\treturn renderSongCm(parsed, {\n\t\t\t...renderOptions,\n\t\t});\n\t} catch (e) {\n\t\treturn e.message;\n\t}\n}\n\nfunction toHtml(text) {\n\treturn text\n\t\t.split('\\n')\n\t\t.map((line) => (line === '' ? ' ' : line))\n\t\t.map((line) => `${line}`)\n\t\t.join('');\n}\n\nfunction toText(html) {\n\tconst allLines = html.match(/(.*?<\\/p>)/gm);\n\n\treturn allLines\n\t\t.map((line) => stripTags(line))\n\t\t.map((line) => (line === ' ' ? '' : line))\n\t\t.join('\\n');\n}\n","import { saveAs } from 'file-saver';\nimport { getStore } from '../state/store';\n\nimport { getSelectedId } from './_state/selectors';\nimport { getOne } from '../db/files/selectors';\nimport { getOptionValue } from '../db/options/selectors';\n\nimport { renderAsText } from '../core/renderSong';\n\nexport default function exportSelectedFileAsText() {\n\tconst store = getStore();\n\tconst state = store.getState();\n\n\tconst selectedId = getSelectedId(state);\n\tconst selectedFile = getOne(state, selectedId);\n\n\tconst renderOptions = {\n\t\tchartFormat: getOptionValue(state, 'editorPreferences', 'chartFormat'),\n\n\t\ttransposeValue: getOptionValue(\n\t\t\tstate,\n\t\t\t'songPreferences',\n\t\t\t'transposeValue'\n\t\t),\n\t\taccidentalsType: getOptionValue(\n\t\t\tstate,\n\t\t\t'songPreferences',\n\t\t\t'accidentalsType'\n\t\t),\n\t\tsymbolType: getOptionValue(state, 'songPreferences', 'symbolType'),\n\n\t\tchartType: getOptionValue(state, 'songFormatting', 'chartType'),\n\t\talignChordsWithLyrics: getOptionValue(\n\t\t\tstate,\n\t\t\t'songFormatting',\n\t\t\t'alignChordsWithLyrics'\n\t\t),\n\t\talignBars: getOptionValue(state, 'songFormatting', 'alignBars'),\n\t\tautoRepeatChords: getOptionValue(\n\t\t\tstate,\n\t\t\t'songFormatting',\n\t\t\t'autoRepeatChords'\n\t\t),\n\t\texpandSectionCopy: getOptionValue(\n\t\t\tstate,\n\t\t\t'songFormatting',\n\t\t\t'expandSectionCopy'\n\t\t),\n\t};\n\n\tconst fileContent = renderAsText(selectedFile.content, renderOptions, true);\n\tconst fileExt = renderOptions.chartFormat === 'chordpro' ? 'cho' : 'txt';\n\tconst fileName = `${selectedFile.title}.${fileExt}`;\n\n\tconst blob = new Blob([fileContent], {\n\t\ttype: 'text/plain;charset=utf-8',\n\t\tendings: 'native',\n\t});\n\tsaveAs(blob, fileName);\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Button from './Button';\nimport Modal from './Modal';\n\nfunction ModalConfirm(props) {\n\tconst {\n\t\tconfirmAction,\n\t\tconfirmTitle = 'OK',\n\t\tcancelAction,\n\t\tcancelTitle = 'CANCEL',\n\t\tchildren,\n\t} = props;\n\n\treturn (\n\t\t\n\t\t\t
    \n\t\t\t\t
    {children}
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t{cancelTitle}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{confirmTitle}\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n}\n\nModalConfirm.propTypes = {\n\tconfirmAction: PropTypes.func.isRequired,\n\tconfirmTitle: PropTypes.string,\n\tcancelAction: PropTypes.func.isRequired,\n\tcancelTitle: PropTypes.string,\n\tchildren: PropTypes.node.isRequired,\n};\n\nexport default ModalConfirm;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport ModalConfirm from '../../ui/_components/ModalConfirm';\n\nfunction DeleteConfirmModal(props) {\n\tconst { selected, deleteFile, isDeleting, setIsDeleting } = props;\n\n\tif (!isDeleting) {\n\t\treturn null;\n\t}\n\n\tconst cancelDelete = () => setIsDeleting(false);\n\tconst confirmDelete = () => {\n\t\tsetIsDeleting(false);\n\t\tdeleteFile(selected);\n\t};\n\n\treturn (\n\t\t\n\t\t\tAre you sure you want to delete this file?\n\t\t\t
    \n\t\t\tThis action cannot be undone.\n\t\t\n\t);\n}\n\nDeleteConfirmModal.propTypes = {\n\tdeleteFile: PropTypes.func.isRequired,\n\tisDeleting: PropTypes.bool.isRequired,\n\tselected: PropTypes.string.isRequired,\n\tsetIsDeleting: PropTypes.func.isRequired,\n};\n\nexport default DeleteConfirmModal;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Icon from '../../ui/_components/Icon';\n\nfunction FileActionEntry(props) {\n\tconst { icon, text, action, isDisabled } = props;\n\n\tconst classNames = ['fileManagerAction'];\n\n\tif (isDisabled) {\n\t\tclassNames.push('fileManagerAction-isDisabled');\n\t}\n\tconst handleClick = () => {\n\t\tif (!isDisabled) {\n\t\t\taction();\n\t\t}\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t {text}\n\t\t\t\n\t\t\n\t);\n}\n\nFileActionEntry.propTypes = {\n\ticon: PropTypes.string.isRequired,\n\ttext: PropTypes.string.isRequired,\n\taction: PropTypes.func.isRequired,\n\tisDisabled: PropTypes.bool.isRequired,\n};\n\nexport default React.memo(FileActionEntry);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport FileActionEntry from './FileActionEntry';\n\nfunction FileActions(props) {\n\tconst {\n\t\tselected,\n\t\tcreateFile,\n\t\tdeleteFile,\n\t\tenableRename,\n\t\tstartImport,\n\t\texportAsText,\n\t\tprintFile,\n\t} = props;\n\n\tconst allActions = [\n\t\t{\n\t\t\ticon: 'upload',\n\t\t\ttext: 'Import',\n\t\t\taction: startImport,\n\t\t\tisDisabled: false,\n\t\t},\n\t\t{\n\t\t\ticon: 'add_circle',\n\t\t\ttext: 'New',\n\t\t\taction: createFile,\n\t\t\tisDisabled: false,\n\t\t},\n\t\t{\n\t\t\ticon: 'create',\n\t\t\ttext: 'Rename',\n\t\t\taction: enableRename,\n\t\t\tisDisabled: !selected,\n\t\t},\n\t\t{\n\t\t\ticon: 'delete',\n\t\t\ttext: 'Delete',\n\t\t\taction: deleteFile,\n\t\t\tisDisabled: !selected,\n\t\t},\n\t\t{\n\t\t\ticon: 'print',\n\t\t\ttext: 'Print',\n\t\t\taction: printFile,\n\t\t\tisDisabled: !selected,\n\t\t},\n\t\t{\n\t\t\ticon: 'download',\n\t\t\ttext: 'Export',\n\t\t\taction: exportAsText,\n\t\t\tisDisabled: !selected,\n\t\t},\n\t];\n\n\treturn (\n\t\t
    \n\t\t\t{allActions.map((action, key) => (\n\t\t\t\t\n\t\t\t))}\n\t\t
    \n\t);\n}\n\nFileActions.propTypes = {\n\tselected: PropTypes.string,\n\tcreateFile: PropTypes.func.isRequired,\n\tdeleteFile: PropTypes.func.isRequired,\n\tenableRename: PropTypes.func.isRequired,\n\texportAsText: PropTypes.func.isRequired,\n\tprintFile: PropTypes.func.isRequired,\n\tstartImport: PropTypes.func.isRequired,\n};\n\nexport default React.memo(FileActions);\n","import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nfunction FileEntry(props) {\n\tconst [title, setTitle] = useState(props.title);\n\n\tconst {\n\t\tfileId,\n\t\tisSelected,\n\t\tisRenamed,\n\t\tdefaultTitle,\n\t\tselectFile,\n\t\tenableRename,\n\t\tupdateFile,\n\t} = props;\n\n\tconst classList = ['fileManagerEntry'];\n\tif (isSelected) {\n\t\tclassList.push('fileManagerEntry-isSelected');\n\t}\n\tif (isRenamed) {\n\t\tclassList.push('fileManagerEntry-isRenamed');\n\t}\n\n\tconst inputRef = React.createRef();\n\n\tuseEffect(() => {\n\t\tif (isRenamed) {\n\t\t\tinputRef.current.focus();\n\t\t}\n\t}, [isRenamed, inputRef]);\n\n\tfunction handleClick() {\n\t\tif (!isSelected) {\n\t\t\tselectFile(fileId);\n\t\t}\n\t}\n\n\tfunction handleDoubleClick(e) {\n\t\tif (!isRenamed) {\n\t\t\tenableRename(fileId);\n\t\t\te.target.select();\n\t\t}\n\t}\n\n\tfunction handleKeyPress(e) {\n\t\tif (isRenamed && e.which === 13) {\n\t\t\te.preventDefault();\n\t\t\twindow.getSelection().removeAllRanges();\n\n\t\t\tconst newTitle = e.target.value;\n\t\t\tsaveTitle(newTitle);\n\t\t}\n\t}\n\n\tfunction handleChange(e) {\n\t\tsetTitle(e.target.value);\n\t}\n\n\tfunction handleFocus(e) {\n\t\tif (isRenamed) {\n\t\t\te.target.select();\n\t\t}\n\t}\n\n\tfunction handleBlur(e) {\n\t\tif (isRenamed) {\n\t\t\tconst newTitle = e.target.value;\n\t\t\tsaveTitle(newTitle);\n\t\t}\n\t}\n\n\tfunction saveTitle(newTitle) {\n\t\tnewTitle = newTitle || defaultTitle;\n\n\t\tupdateFile(fileId, {\n\t\t\ttitle: newTitle,\n\t\t});\n\t\tsetTitle(newTitle);\n\n\t\tinputRef.current.scrollLeft = 0;\n\t}\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\n\t);\n}\n\nFileEntry.propTypes = {\n\ttitle: PropTypes.string.isRequired,\n\tfileId: PropTypes.string.isRequired,\n\tisSelected: PropTypes.bool.isRequired,\n\tisRenamed: PropTypes.bool.isRequired,\n\tdefaultTitle: PropTypes.string.isRequired,\n\tselectFile: PropTypes.func.isRequired,\n\tenableRename: PropTypes.func.isRequired,\n\tupdateFile: PropTypes.func.isRequired,\n};\n\nexport default FileEntry;\n","import './FileManager.scss';\n\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport exportSelectedFileAsText from '../exportSelectedFileAsText';\n\nimport DeleteConfirmModal from './DeleteConfirmModal';\nimport Icon from '../../ui/_components/Icon';\nimport FileActions from './FileActions';\nimport FileEntry from './FileEntry';\n\nfunction FileManager(props) {\n\tconst [isDeleting, setIsDeleting] = useState(false);\n\n\tconst {\n\t\tallTitles,\n\t\tselected,\n\t\trenamed,\n\t\tdefaultTitle,\n\n\t\tcreateFile,\n\t\tdeleteFile,\n\t\tenableRename,\n\t\tstartImport,\n\t\tselectFile,\n\t\tupdateFile,\n\t\tsetEditorMode,\n\t} = props;\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\n\t\t\t
    \n\t\t\t\t createFile(defaultTitle)}\n\t\t\t\t\tdeleteFile={() => setIsDeleting(true)}\n\t\t\t\t\tenableRename={() => enableRename(selected)}\n\t\t\t\t\tstartImport={() => startImport()}\n\t\t\t\t\texportAsText={() => {\n\t\t\t\t\t\tsetEditorMode('export');\n\t\t\t\t\t\tsetTimeout(() => exportSelectedFileAsText(), 0);\n\t\t\t\t\t}}\n\t\t\t\t\tprintFile={() => {\n\t\t\t\t\t\tsetEditorMode('print');\n\t\t\t\t\t\tsetTimeout(() => window.print(), 0);\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t\t
      \n\t\t\t\t\t{allTitles.map((file) => (\n\t\t\t\t\t\t\n\t\t\t\t\t))}\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n}\n\nFileManager.propTypes = {\n\tallTitles: PropTypes.arrayOf(\n\t\tPropTypes.shape({\n\t\t\ttitle: PropTypes.string.isRequired,\n\t\t\tid: PropTypes.string.isRequired,\n\t\t})\n\t).isRequired,\n\tselected: PropTypes.string.isRequired,\n\trenamed: PropTypes.string.isRequired,\n\tdefaultTitle: PropTypes.string.isRequired,\n\n\tselectFile: PropTypes.func.isRequired,\n\tcreateFile: PropTypes.func.isRequired,\n\tdeleteFile: PropTypes.func.isRequired,\n\tenableRename: PropTypes.func.isRequired,\n\tstartImport: PropTypes.func.isRequired,\n\tupdateFile: PropTypes.func.isRequired,\n\tsetEditorMode: PropTypes.func.isRequired,\n};\n\nexport default FileManager;\n","import { connect } from 'react-redux';\n\nimport { selectFile, enableRename } from '../_state/actions';\nimport {\n\tgetDefaultTitle,\n\tgetSelectedId,\n\tgetRenamedId,\n} from '../_state/selectors';\n\nimport { createFile, updateFile, deleteFile } from '../../db/files/actions';\nimport { startImport } from '../../songImporter/_state/actions';\nimport { setEditorMode } from '../../ui/layout/app/_state/actions';\n\nimport { getAllTitles } from '../../db/files/selectors';\n\nimport FileManager from '../_components/FileManager';\n\nexport default connect(\n\t(state) => ({\n\t\tselected: getSelectedId(state),\n\t\trenamed: getRenamedId(state),\n\t\tdefaultTitle: getDefaultTitle(state),\n\t\tallTitles: getAllTitles(state),\n\t}),\n\n\t{\n\t\tselectFile,\n\t\tcreateFile,\n\t\tdeleteFile,\n\t\tupdateFile,\n\t\tenableRename,\n\t\tsetEditorMode,\n\t\tstartImport,\n\t}\n)(FileManager);\n","import domPurify from 'dompurify';\n\nexport default function escapeHTML(unescaped) {\n\treturn domPurify.sanitize(unescaped);\n}\n","import './SongRenderer.scss';\n\nimport _pick from 'lodash/pick';\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport escapeHTML from '../../core/escapeHTML';\n\nimport { renderAsHtml } from '../../core/renderSong';\n\nfunction SongRenderer(props) {\n\tconst { content, useChartFormat } = props;\n\n\tconst renderOptions = _pick(props, [\n\t\t'chartFormat',\n\n\t\t'transposeValue',\n\t\t'accidentalsType',\n\t\t'symbolType',\n\n\t\t'chartType',\n\t\t'alignChordsWithLyrics',\n\t\t'alignBars',\n\t\t'autoRepeatChords',\n\t\t'expandSectionCopy',\n\t]);\n\n\tconst rendered = renderAsHtml(content, renderOptions, useChartFormat);\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t
    \n\t);\n}\n\nSongRenderer.propTypes = {\n\tuseChartFormat: PropTypes.bool.isRequired,\n\tchartFormat: PropTypes.string.isRequired,\n\tcontent: PropTypes.string,\n};\n\nSongRenderer.defaultProps = {\n\tcontent: '',\n\tuseChartFormat: false,\n};\n\nexport default SongRenderer;\n","import { connect } from 'react-redux';\n\nimport { getOptionValue } from '../../db/options/selectors';\n\nimport SongRenderer from '../_components/SongRenderer';\n\nexport default connect((state) => ({\n\t// songPreferences\n\ttransposeValue: getOptionValue(state, 'songPreferences', 'transposeValue'),\n\taccidentalsType: getOptionValue(\n\t\tstate,\n\t\t'songPreferences',\n\t\t'preferredAccidentals'\n\t),\n\tsymbolType: getOptionValue(state, 'songPreferences', 'symbolType'),\n\n\t// songFormatting\n\tchartFormat: getOptionValue(state, 'editorPreferences', 'chartFormat'),\n\tchartType: getOptionValue(state, 'songFormatting', 'chartType'),\n\talignChordsWithLyrics: getOptionValue(\n\t\tstate,\n\t\t'songFormatting',\n\t\t'alignChordsWithLyrics'\n\t),\n\talignBars: getOptionValue(state, 'songFormatting', 'alignBars'),\n\tautoRepeatChords: getOptionValue(\n\t\tstate,\n\t\t'songFormatting',\n\t\t'autoRepeatChords'\n\t),\n\texpandSectionCopy: getOptionValue(\n\t\tstate,\n\t\t'songFormatting',\n\t\t'expandSectionCopy'\n\t),\n}))(SongRenderer);\n","import './EditorPreview.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport SongRenderer from '../../_containers/SongRenderer';\n\nfunction EditorPreview(props) {\n\tconst { selectedFile } = props;\n\n\tconst classNames = ['editorPreview'];\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t
    \n\t);\n}\n\nEditorPreview.propTypes = {\n\tselectedFile: PropTypes.object.isRequired,\n};\n\nexport default EditorPreview;\n","import { Schema } from 'prosemirror-model';\n\nconst editorSchema = new Schema({\n\tnodes: {\n\t\tdoc: {\n\t\t\tcontent: 'block+',\n\t\t},\n\n\t\tparagraph: {\n\t\t\tcontent: 'inline*',\n\t\t\tgroup: 'block',\n\t\t\tparseDOM: [{ tag: 'p' }],\n\t\t\ttoDOM() {\n\t\t\t\treturn ['p', 0];\n\t\t\t},\n\t\t},\n\n\t\thard_break: {\n\t\t\tinline: true,\n\t\t\tgroup: 'inline',\n\t\t\tselectable: false,\n\t\t\tparseDOM: [{ tag: 'br' }],\n\t\t\t// no idea how to test this!\n\t\t\t/* istanbul ignore next */\n\t\t\ttoDOM() {\n\t\t\t\treturn ['br'];\n\t\t\t},\n\t\t},\n\n\t\ttext: {\n\t\t\tgroup: 'inline',\n\t\t},\n\t},\n});\n\nexport default editorSchema;\n","/**\n * Convert a proseMirror state to plain text\n */\nexport default function stateToText(state) {\n\tconst json = state.toJSON();\n\n\treturn json.doc.content\n\t\t.map((paragraph) => {\n\t\t\tif (!paragraph.content) {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\treturn paragraph.content.reduce((acc, current) => {\n\t\t\t\tacc += current.text || '\\n';\n\t\t\t\treturn acc;\n\t\t\t}, '');\n\t\t})\n\t\t.join('\\n');\n}\n","import domPurify from 'dompurify';\n\n/**\n * Minimal wrapper around DOMPurify library.\n * Pretty drastic also: anything that is HTML is just simply ignored, including text content of tags.\n *\n * @param {String} dirty\n * @returns {String} clean HTML\n */\nexport default function toSafeHtml(dirty) {\n\tconst config = {\n\t\tALLOWED_TAGS: ['p', '#text'],\n\t\tKEEP_CONTENT: false,\n\t};\n\n\treturn domPurify.sanitize(dirty, config);\n}\n","import './ProsemirrorEditorView.scss';\n\nimport React, { useEffect, useRef } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { EditorState } from 'prosemirror-state';\nimport { EditorView } from 'prosemirror-view';\nimport { DOMParser as pmDOMParser } from 'prosemirror-model';\n\nimport getPlugins from './getPlugins';\nimport editorSchema from './schema';\n\nimport stateToText from './converters/stateToText';\nimport textToDom from './converters/textToDom';\n\nimport 'prosemirror-view/style/prosemirror.css';\n\nfunction createEditorState(editorContent) {\n\treturn EditorState.create({\n\t\tdoc: pmDOMParser\n\t\t\t.fromSchema(editorSchema)\n\t\t\t.parse(textToDom(editorContent), { preserveWhitespace: 'full' }),\n\t\tplugins: getPlugins(),\n\t});\n}\n\nfunction createEditorView(editorState, updateFile, fileId) {\n\treturn new EditorView(null, {\n\t\tstate: editorState,\n\t\tdispatchTransaction: function dispatchTransaction(transaction) {\n\t\t\tconst { state, transactions } =\n\t\t\t\tthis.state.applyTransaction(transaction);\n\n\t\t\tthis.updateState(state);\n\n\t\t\tif (transactions.some((tr) => tr.docChanged)) {\n\t\t\t\tupdateFile(fileId, { content: stateToText(state) });\n\t\t\t}\n\t\t},\n\t});\n}\n\nfunction ProseMirrorEditorView(props) {\n\tconst { selectedFileId, editorContent, updateFile } = props;\n\n\tconst editorView = useRef();\n\tconst editorDom = useRef();\n\tconst previousFileId = usePrevious(selectedFileId);\n\n\t/**\n\t * Editor is recreated on component mount and on file change.\n\t * The later is needed as we need to to re-bind the change handler with the new file id.\n\t */\n\tfunction shouldCreateEditor() {\n\t\treturn (\n\t\t\tselectedFileId &&\n\t\t\t(!editorView.current || previousFileId !== selectedFileId)\n\t\t);\n\t}\n\n\t// Editor has been previously created, but now no file is selected anymore\n\tfunction isEditorOrphan() {\n\t\treturn editorExists() && !selectedFileId;\n\t}\n\n\tfunction editorExists() {\n\t\treturn editorView.current && editorView.current.dom.parentNode;\n\t}\n\n\tfunction destroyEditor() {\n\t\teditorView.current.dom.parentNode.removeChild(editorView.current.dom);\n\t}\n\n\tuseEffect(() => {\n\t\tif (shouldCreateEditor()) {\n\t\t\tif (editorExists()) {\n\t\t\t\tdestroyEditor();\n\t\t\t}\n\n\t\t\tconst editorState = createEditorState(editorContent);\n\t\t\teditorView.current = createEditorView(\n\t\t\t\teditorState,\n\t\t\t\tupdateFile,\n\t\t\t\tselectedFileId\n\t\t\t);\n\t\t\teditorDom.current.appendChild(editorView.current.dom);\n\n\t\t\t// expose editor instance as a component property for unit tests\n\t\t\tProseMirrorEditorView.editorView = editorView.current;\n\t\t} else if (isEditorOrphan()) {\n\t\t\tdestroyEditor();\n\t\t}\n\t});\n\n\treturn
    ;\n}\n\nProseMirrorEditorView.defaultProps = {\n\tselectedFileId: '',\n\teditorContent: '',\n};\n\nProseMirrorEditorView.propTypes = {\n\tselectedFileId: PropTypes.string,\n\teditorContent: PropTypes.string,\n\tupdateFile: PropTypes.func.isRequired,\n};\n\nexport default ProseMirrorEditorView;\n\n// @see https://reactjs.org/docs/hooks-faq.html#how-to-get-the-previous-props-or-state\nfunction usePrevious(value) {\n\tconst ref = useRef();\n\tuseEffect(() => {\n\t\tref.current = value;\n\t});\n\treturn ref.current;\n}\n","import escapeHTML from './toSafeHtml';\n\n/**\n * @param {String} text\n * @returns {HTMLElement}\n */\nexport default function textToDom(text) {\n\tconst html = escapeHTML(text)\n\t\t.split('\\n')\n\t\t.map((line) => `

    ${line}

    `)\n\t\t.join('');\n\n\tconst div = document.createElement('div');\n\tdiv.innerHTML = escapeHTML(html);\n\n\treturn div;\n}\n","import { keymap } from 'prosemirror-keymap';\nimport { baseKeymap } from 'prosemirror-commands';\nimport { undo, redo, history as pmHistory } from 'prosemirror-history';\n\nexport default function getPlugins() {\n\treturn [\n\t\tpmHistory(),\n\t\tkeymap({ 'Mod-z': undo, 'Mod-y': redo }),\n\t\tkeymap(baseKeymap),\n\t];\n}\n","import './EditorLayout.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { ScrollSync, ScrollSyncNode } from 'scroll-sync-react';\n\nimport EditorPreview from '../../../songRenderers/editorPreview/_components/EditorPreview';\nimport ProseMirrorEditorView from '../prosemirror/ProsemirrorEditorView';\nimport Icon from '../../../ui/_components/Icon';\n\nfunction EditorLayout(props) {\n\tconst { selectedFile, updateFile, theme } = props;\n\n\tconst previewClassNames = [\n\t\t'songEditor-preview',\n\t\t'cmTheme-' + theme,\n\t\t'cmTheme-fadeRepeats',\n\t];\n\n\treturn (\n\t\t<>\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\tChordMark source (\n\t\t\t\t\t\n\t\t\t\t\t\ttutorial\n\t\t\t\t\t\n\t\t\t\t\t)\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\tResult preview\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n}\n\nEditorLayout.propTypes = {\n\tselectedFile: PropTypes.object,\n\ttheme: PropTypes.string.isRequired,\n\tupdateFile: PropTypes.func.isRequired,\n};\n\nexport default EditorLayout;\n","import { connect } from 'react-redux';\n\nimport { getOptionValue } from '../../../db/options/selectors';\n\nimport EditorLayout from '../_components/EditorLayout';\n\nexport default connect((state) => ({\n\ttheme: getOptionValue(state, 'editorPreferences', 'theme'),\n}))(EditorLayout);\n","import './ExportPreview.scss';\n\nimport React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nimport SongRenderer from '../../_containers/SongRenderer';\n\nfunction ExportPreview(props) {\n\tconst { selectedFile } = props;\n\n\tconst exportPreviewRef = React.createRef();\n\n\tconst selectAll = (e) => {\n\t\tif ((e.metaKey || e.ctrlKey) && e.key.toLowerCase() === 'a') {\n\t\t\te.preventDefault();\n\t\t\twindow.getSelection().selectAllChildren(exportPreviewRef.current);\n\t\t}\n\t};\n\n\tuseEffect(() => {\n\t\twindow.addEventListener('keydown', selectAll);\n\t\treturn () => {\n\t\t\twindow.removeEventListener('keydown', selectAll);\n\t\t};\n\t});\n\n\treturn (\n\t\t\n\t\t\t\n\t\t
    \n\t);\n}\n\nExportPreview.propTypes = {\n\tselectedFile: PropTypes.object.isRequired,\n};\n\nexport default ExportPreview;\n","import './PlayRenderer.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport SongRenderer from '../../_containers/SongRenderer';\n\nfunction PlayRenderer(props) {\n\tconst { theme, selectedFile, fontSize, columnsCount } = props;\n\n\tconst wrapperClassNames = ['playRendererWrapper1'];\n\twrapperClassNames.push('cmTheme-' + theme);\n\twrapperClassNames.push('cmSong--fontSize' + fontSize);\n\n\tconst classNames = ['playRenderer'];\n\tclassNames.push('playRenderer--columns-' + columnsCount);\n\n\treturn (\n\t\t\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n}\n\nPlayRenderer.propTypes = {\n\ttheme: PropTypes.string.isRequired,\n\tfontSize: PropTypes.number.isRequired,\n\tselectedFile: PropTypes.object.isRequired,\n\tcolumnsCount: PropTypes.number.isRequired,\n};\n\nexport default PlayRenderer;\n","import { connect } from 'react-redux';\n\nimport { getOptionValue } from '../../../db/options/selectors';\n\nimport PlayRenderer from '../_components/PlayRenderer';\n\nexport default connect((state) => ({\n\ttheme: getOptionValue(state, 'editorPreferences', 'theme'),\n\tfontSize: getOptionValue(state, 'songFormatting', 'fontSize'),\n\tcolumnsCount: getOptionValue(state, 'songFormatting', 'columnsCount'),\n}))(PlayRenderer);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport escapeHTML from '../../../core/escapeHTML';\n\nfunction Page(props) {\n\tconst {\n\t\tpageHeader,\n\t\tallColumnsLines,\n\t\tdocumentSize,\n\t\tdocumentMargins,\n\t\tfontSize,\n\t} = props;\n\n\tconst allSectionsRendered = allColumnsLines.map((columnLines, index) => {\n\t\tconst columnLinesTxt = columnLines.join('');\n\n\t\treturn (\n\t\t\t\n\t\t);\n\t});\n\n\tconst pageClasses = ['printPreview-page'];\n\tpageClasses.push('printPreview-page--' + documentSize);\n\tpageClasses.push('cmSong--fontSize' + fontSize);\n\tpageClasses.push('cmSong');\n\n\tconst pageContentWrapperClasses = ['printPreview-pageContentWrapper'];\n\tpageContentWrapperClasses.push(\n\t\t'printPreview-pageContentWrapper--padding' + documentMargins\n\t);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t{pageHeader}\n\t\t\t\t\t
    \n\t\t\t\t\t\t{allSectionsRendered}\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n}\nPage.defaultProps = {\n\tallColumnsLines: [],\n};\nPage.propTypes = {\n\tpageHeader: PropTypes.element,\n\tallColumnsLines: PropTypes.arrayOf(PropTypes.arrayOf(PropTypes.string)),\n\tdocumentSize: PropTypes.string.isRequired,\n\tdocumentMargins: PropTypes.number.isRequired,\n\tfontSize: PropTypes.number.isRequired,\n};\n\nexport default React.memo(Page);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction PageHeader(props) {\n\tconst { title } = props;\n\n\treturn
    {title}
    ;\n}\nPageHeader.defaultProps = {\n\tallColumnsLines: [],\n};\nPageHeader.propTypes = {\n\ttitle: PropTypes.string.isRequired,\n};\n\nexport default React.memo(PageHeader);\n","const cssClasses = {\n\temptyLine: 'cmEmptyLine',\n\tchordLine: 'cmChordLine',\n\ttextLine: 'cmLyricLine',\n};\n\n/**\n * @param {Object[]} allLinesWithHeight\n * @param {String} allLinesWithHeight.content\n * @param {Number} allLinesWithHeight.height\n * @param {Number} columnsCount\n * @param {Number} firstPageHeight\n * @param {Number} normalPageHeight\n * @param {Boolean} columnBreakOnSection\n * @param {Boolean} noEmptyLinesOnColumnStart\n * @param {Boolean} noOrphanTextLine\n * @returns {Array} array of pages, as array of columns\n */\nexport default function mapLinesToColumns(\n\tallLinesWithHeight,\n\t{\n\t\tcolumnsCount,\n\t\tfirstPageHeight,\n\t\tnormalPageHeight,\n\t\tcolumnBreakOnSection,\n\t\tnoEmptyLinesOnColumnStart = true,\n\t\tnoOrphanTextLine = true,\n\t}\n) {\n\tconst layout = layoutFactory({\n\t\tcolumnsCount,\n\t\tfirstPageHeight,\n\t\tnormalPageHeight,\n\t\tnoEmptyLinesOnColumnStart,\n\t});\n\n\tlet buffer = [];\n\tlet bufferHeight = 0;\n\n\tconst pageHeight = firstPageHeight || normalPageHeight;\n\n\tif (pageHeight > 0) {\n\t\tallLinesWithHeight.forEach((line, lineIndex) => {\n\t\t\tif (\n\t\t\t\tshouldRenderLine(\n\t\t\t\t\tlayout,\n\t\t\t\t\tline,\n\t\t\t\t\tbuffer,\n\t\t\t\t\tnoEmptyLinesOnColumnStart\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tbuffer.push(line);\n\t\t\t\tbufferHeight += line.height;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\tbuffer.length > 0 &&\n\t\t\t\tisBreakable(line, allLinesWithHeight[lineIndex + 1], {\n\t\t\t\t\tnoOrphanTextLine,\n\t\t\t\t\tcolumnBreakOnSection,\n\t\t\t\t})\n\t\t\t) {\n\t\t\t\tif (layout.fitsOnCurrentColumn(bufferHeight)) {\n\t\t\t\t\tlayout.insert(buffer);\n\t\t\t\t} else if (layout.fitsOnNextColumn(bufferHeight)) {\n\t\t\t\t\tlayout.insertOnNextColumn(buffer);\n\t\t\t\t} else {\n\t\t\t\t\tlayout.insert(buffer);\n\t\t\t\t}\n\t\t\t\tbuffer = [];\n\t\t\t\tbufferHeight = 0;\n\t\t\t}\n\t\t});\n\t}\n\treturn layout.get();\n}\n\n/**\n * Try to spot the case where the line is empty and would be rendered as the first line\n * of the next column, which we may want to avoid\n */\nfunction shouldRenderLine(layout, line, buffer, noEmptyLinesOnColumnStart) {\n\treturn !(\n\t\tisEmptyLine(line) &&\n\t\t!layout.fitsOnCurrentColumn(line.height) &&\n\t\tbuffer.length === 0 &&\n\t\tnoEmptyLinesOnColumnStart === true\n\t);\n}\n\nfunction isBreakable(\n\tcurrentLine,\n\tnextLine,\n\t{ noOrphanTextLine, columnBreakOnSection }\n) {\n\tif (isEmptyLine(currentLine) || !nextLine) {\n\t\treturn true;\n\t}\n\n\tconst wouldProduceOrphanTextLine =\n\t\tisChordLine(currentLine) && isTextLine(nextLine);\n\tif (noOrphanTextLine === true && wouldProduceOrphanTextLine) {\n\t\treturn false;\n\t}\n\n\tconst isEndOfParagraph = isEmptyLine(nextLine);\n\tif (columnBreakOnSection === true && !isEndOfParagraph) {\n\t\treturn false;\n\t}\n\treturn true;\n}\n\nfunction isEmptyLine(line) {\n\treturn hasClass(line.content, cssClasses.emptyLine);\n}\n\nfunction isChordLine(line) {\n\treturn hasClass(line.content, cssClasses.chordLine);\n}\n\nfunction isTextLine(line) {\n\treturn hasClass(line.content, cssClasses.textLine);\n}\n\nfunction hasClass(line, className) {\n\treturn line.indexOf(className) > -1;\n}\n\nfunction layoutFactory({ firstPageHeight, normalPageHeight, columnsCount }) {\n\tconst allPagesColumns = [];\n\n\tlet pageIndex = 0;\n\tlet columnIndex = 0;\n\tlet maxColumnHeight = getMaxColumnHeight();\n\tlet currentColumnHeight = 0;\n\n\tallPagesColumns[pageIndex] = [];\n\tallPagesColumns[pageIndex][columnIndex] = [];\n\n\tfunction flushBuffer(buffer) {\n\t\tbuffer.forEach((line) => {\n\t\t\tif (shouldChangeColumn(currentColumnHeight + line.height)) {\n\t\t\t\tchangeColumn();\n\t\t\t}\n\t\t\tallPagesColumns[pageIndex][columnIndex].push(line.content);\n\t\t\tcurrentColumnHeight += line.height;\n\t\t});\n\t}\n\n\tfunction getMaxColumnHeight() {\n\t\treturn pageIndex === 0 && firstPageHeight\n\t\t\t? firstPageHeight\n\t\t\t: normalPageHeight;\n\t}\n\n\tfunction shouldChangeColumn(nextHeight) {\n\t\treturn nextHeight > maxColumnHeight;\n\t}\n\n\tfunction changeColumn() {\n\t\tif (shouldChangePage()) {\n\t\t\tpageIndex++;\n\t\t\tallPagesColumns[pageIndex] = [];\n\t\t\tcolumnIndex = 0;\n\t\t} else {\n\t\t\tcolumnIndex++;\n\t\t}\n\t\tallPagesColumns[pageIndex][columnIndex] = [];\n\t\tcurrentColumnHeight = 0;\n\t\tmaxColumnHeight = getMaxColumnHeight();\n\t}\n\n\tfunction shouldChangePage() {\n\t\treturn columnIndex === columnsCount - 1;\n\t}\n\n\treturn {\n\t\tinsert(buffer) {\n\t\t\tflushBuffer(buffer);\n\t\t},\n\n\t\tinsertOnNextColumn(buffer) {\n\t\t\tchangeColumn();\n\t\t\tflushBuffer(buffer);\n\t\t},\n\n\t\tfitsOnCurrentColumn(bufferHeight) {\n\t\t\treturn currentColumnHeight + bufferHeight <= maxColumnHeight;\n\t\t},\n\n\t\tfitsOnNextColumn(bufferHeight) {\n\t\t\tconst nextColumnHeight =\n\t\t\t\tpageIndex === 0 && columnIndex < columnsCount && firstPageHeight\n\t\t\t\t\t? firstPageHeight\n\t\t\t\t\t: normalPageHeight;\n\t\t\treturn bufferHeight <= nextColumnHeight;\n\t\t},\n\n\t\tget() {\n\t\t\treturn allPagesColumns;\n\t\t},\n\t};\n}\n","import './getDimensionsFromDom.scss';\n\nimport React, { useLayoutEffect } from 'react';\nimport { createRoot } from 'react-dom/client';\n\nexport default function getDimensionsFromDom(component, measuringFn) {\n\tconst container = document.createElement('div');\n\tcontainer.classList.add('measuring-node');\n\tdocument.body.appendChild(container);\n\tconst root = createRoot(container);\n\n\treturn new Promise((resolve) => {\n\t\tconst MeasuringComponent = () => {\n\t\t\tuseLayoutEffect(() => {\n\t\t\t\tconst measure = measuringFn(container);\n\t\t\t\tresolve(measure);\n\t\t\t});\n\n\t\t\treturn
    {component}
    ;\n\t\t};\n\n\t\troot.render();\n\t}).then((measure) => {\n\t\troot.unmount();\n\t\tcontainer.parentNode.removeChild(container);\n\n\t\treturn measure;\n\t});\n}\n","export default function padColumns(columnCount, allColumns = []) {\n\tfor (let i = allColumns.length || 0; i < columnCount; i++) {\n\t\tallColumns.push([]);\n\t}\n\treturn allColumns;\n}\n","export function getOffsetHeight(element) {\n\treturn element.offsetHeight;\n}\n\nexport function getClientHeight(element) {\n\treturn element.clientHeight;\n}\n","import React from 'react';\n\nimport getDimensionsFromDom from './getDimensionsFromDom';\nimport padColumns from './padColumns';\nimport { getOffsetHeight } from './element';\n\nimport Page from '../_components/Page';\n\nconst cssSelectors = {\n\tline: '.cmLine',\n};\n\nexport default async function getAllLinesHeight(\n\tallLines,\n\t{ columnsCount, documentSize, documentMargins, fontSize }\n) {\n\tconst component = (\n\t\t
    \n\t\t\t\n\t\t
    \n\t);\n\n\tconst measuringFn = (container) => {\n\t\tconst allLinesHeight = [];\n\t\tcontainer.querySelectorAll(cssSelectors.line).forEach((line) => {\n\t\t\tallLinesHeight.push(getOffsetHeight(line));\n\t\t});\n\t\treturn allLinesHeight;\n\t};\n\n\treturn await getDimensionsFromDom(component, measuringFn);\n}\n","import React from 'react';\n\nimport getDimensionsFromDom from './getDimensionsFromDom';\nimport padColumns from './padColumns';\nimport { getClientHeight } from './element';\n\nimport Page from '../_components/Page';\nimport PageHeader from '../_components/PageHeader';\n\nexport default async function getAllLinesHeight(\n\ttitle,\n\t{ columnsCount, documentSize, documentMargins, fontSize }\n) {\n\tconst component = (\n\t\t}\n\t\t\tallColumnsLines={padColumns(columnsCount)}\n\t\t\tdocumentSize={documentSize}\n\t\t\tdocumentMargins={documentMargins}\n\t\t\tfontSize={fontSize}\n\t\t/>\n\t);\n\n\tconst measuringFn = (container) => {\n\t\tconst pageContent = container.querySelector(\n\t\t\t'.printPreview-pageContent'\n\t\t);\n\t\tconst pageColumnWrapper = container.querySelector(\n\t\t\t'.printPreview-pageColumnWrapper'\n\t\t);\n\t\treturn {\n\t\t\tfirstPageHeight: getClientHeight(pageColumnWrapper),\n\t\t\tnormalPageHeight: getClientHeight(pageContent),\n\t\t};\n\t};\n\n\treturn await getDimensionsFromDom(component, measuringFn);\n}\n","import React, { useState, useLayoutEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Page from './Page';\nimport PageHeader from './PageHeader';\n\nimport mapLinesToColumns from '../helpers/mapLinesToColumns';\nimport getAllLinesHeight from '../helpers/getAllLinesHeight';\nimport getPagesHeight from '../helpers/getPagesHeight';\nimport padColumns from '../helpers/padColumns';\n\nfunction AllPages(props) {\n\tconst [allPagesColumns, setAllPagesColumns] = useState([]);\n\n\tconst {\n\t\ttitle,\n\t\tallLines,\n\t\tcolumnsCount,\n\t\tcolumnBreakOnSection,\n\t\tdocumentSize,\n\t\tdocumentMargins,\n\t\tfontSize,\n\t} = props;\n\n\tuseLayoutEffect(() => {\n\t\tconst getDimensions = async () => {\n\t\t\tconst pageOptions = {\n\t\t\t\tcolumnsCount,\n\t\t\t\tdocumentSize,\n\t\t\t\tdocumentMargins,\n\t\t\t\tfontSize,\n\t\t\t};\n\n\t\t\tconst allLinesHeight = await getAllLinesHeight(\n\t\t\t\tallLines,\n\t\t\t\tpageOptions\n\t\t\t);\n\n\t\t\tconst { normalPageHeight, firstPageHeight } = await getPagesHeight(\n\t\t\t\ttitle,\n\t\t\t\tpageOptions\n\t\t\t);\n\n\t\t\tconst allLinesWithHeight = allLines.map((line, index) => ({\n\t\t\t\tcontent: line,\n\t\t\t\theight: allLinesHeight[index],\n\t\t\t}));\n\n\t\t\tconst mapped = mapLinesToColumns(allLinesWithHeight, {\n\t\t\t\tcolumnsCount,\n\t\t\t\tcolumnBreakOnSection,\n\t\t\t\tnormalPageHeight,\n\t\t\t\tfirstPageHeight,\n\t\t\t});\n\n\t\t\tsetAllPagesColumns(mapped);\n\t\t};\n\t\tgetDimensions();\n\t}, [\n\t\tallLines,\n\t\ttitle,\n\t\tcolumnsCount,\n\t\tcolumnBreakOnSection,\n\t\tdocumentSize,\n\t\tdocumentMargins,\n\t\tfontSize,\n\t]);\n\n\tconst allPagesRendered = allPagesColumns.map((pageColumns, index) => {\n\t\treturn (\n\t\t\t : null}\n\t\t\t\tallColumnsLines={padColumns(columnsCount, pageColumns)}\n\t\t\t\tdocumentSize={documentSize}\n\t\t\t\tdocumentMargins={documentMargins}\n\t\t\t\tfontSize={fontSize}\n\t\t\t/>\n\t\t);\n\t});\n\n\treturn {allPagesRendered};\n}\n\nAllPages.propTypes = {\n\ttitle: PropTypes.string.isRequired,\n\tallLines: PropTypes.arrayOf(PropTypes.string).isRequired,\n\tcolumnsCount: PropTypes.number.isRequired,\n\tcolumnBreakOnSection: PropTypes.bool.isRequired,\n\tdocumentSize: PropTypes.string.isRequired,\n\tdocumentMargins: PropTypes.number.isRequired,\n\tfontSize: PropTypes.number.isRequired,\n};\n\nexport default AllPages;\n","import './PrintPreview.scss';\n\nimport _pick from 'lodash/pick';\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { renderAsHtml } from '../../../core/renderSong';\nimport AllPages from './AllPages';\n\nfunction PrintPreview(props) {\n\tconst { selectedFile } = props;\n\n\tconst renderOptions = _pick(props, [\n\t\t'transposeValue',\n\t\t'accidentalsType',\n\t\t'symbolType',\n\n\t\t'chartType',\n\t\t'alignChordsWithLyrics',\n\t\t'alignBars',\n\t\t'autoRepeatChords',\n\t\t'expandSectionCopy',\n\t]);\n\n\tconst rendered = renderAsHtml(selectedFile.content || '', {\n\t\t...renderOptions,\n\t});\n\tconst allLines = rendered.match(/(.*?<\\/p>)/gm);\n\n\tconst classNames = ['printPreview', 'cmTheme-print'];\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t
    \n\t);\n}\nPrintPreview.propTypes = {\n\tchartType: PropTypes.string.isRequired,\n\tselectedFile: PropTypes.object.isRequired,\n\tcolumnsCount: PropTypes.number.isRequired,\n\tcolumnBreakOnSection: PropTypes.bool.isRequired,\n\tdocumentSize: PropTypes.string,\n\tdocumentMargins: PropTypes.number.isRequired,\n\tfontSize: PropTypes.number.isRequired,\n};\n\nexport default PrintPreview;\n","import { connect } from 'react-redux';\n\nimport { getOptionValue } from '../../../db/options/selectors';\n\nimport PrintPreview from '../_components/PrintPreview';\n\nexport default connect((state) => ({\n\t// songPreferences\n\taccidentalsType: getOptionValue(\n\t\tstate,\n\t\t'songPreferences',\n\t\t'preferredAccidentals'\n\t),\n\ttransposeValue: getOptionValue(state, 'songPreferences', 'transposeValue'),\n\tsymbolType: getOptionValue(state, 'songPreferences', 'symbolType'),\n\n\t// songFormatting\n\tchartType: getOptionValue(state, 'songFormatting', 'chartType'),\n\talignChordsWithLyrics: getOptionValue(\n\t\tstate,\n\t\t'songFormatting',\n\t\t'alignChordsWithLyrics'\n\t),\n\talignBars: getOptionValue(state, 'songFormatting', 'alignBars'),\n\tautoRepeatChords: getOptionValue(\n\t\tstate,\n\t\t'songFormatting',\n\t\t'autoRepeatChords'\n\t),\n\texpandSectionCopy: getOptionValue(\n\t\tstate,\n\t\t'songFormatting',\n\t\t'expandSectionCopy'\n\t),\n\n\tcolumnsCount: getOptionValue(state, 'songFormatting', 'columnsCount'),\n\tcolumnBreakOnSection: getOptionValue(\n\t\tstate,\n\t\t'songFormatting',\n\t\t'columnBreakOnSection'\n\t),\n\tdocumentMargins: getOptionValue(state, 'songFormatting', 'documentMargins'),\n\n\tfontSize: getOptionValue(state, 'songFormatting', 'fontSize'),\n}))(PrintPreview);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport EditorLayout from '../songEditor/_containers/EditorLayout';\nimport ExportPreview from '../../songRenderers/exportPreview/_components/ExportPreview';\nimport PlayRenderer from '../../songRenderers/playRenderer/_containers/PlayRenderer';\nimport PrintPreview from '../../songRenderers/printPreview/_containers/PrintPreview';\n\nfunction Editor(props) {\n\tconst { editorMode } = props;\n\n\tswitch (editorMode) {\n\t\tcase 'edit':\n\t\t\treturn ;\n\t\tcase 'play':\n\t\t\treturn ;\n\t\tcase 'print':\n\t\t\treturn ;\n\t\tcase 'export':\n\t\t\treturn ;\n\t}\n}\n\nEditor.propTypes = {\n\teditorMode: PropTypes.string.isRequired,\n};\n\nexport default Editor;\n","import { connect } from 'react-redux';\n\nimport { getSelectedId } from '../../fileManager/_state/selectors';\nimport { getEditorMode } from '../../ui/layout/app/_state/selectors';\n\nimport { getOne } from '../../db/files/selectors';\nimport { updateFile } from '../../db/files/actions';\n\nimport Editor from '../_components/Editor';\n\nexport default connect(\n\t(state) => ({\n\t\tselectedFile: getOne(state, getSelectedId(state)) || {},\n\t\teditorMode: getEditorMode(state),\n\t}),\n\n\t{\n\t\tupdateFile,\n\t}\n)(Editor);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction OptionsPanel(props) {\n\tconst {\n\t\tid,\n\t\tallWidgets,\n\t\tnonInteractableWidgets,\n\t\thiddenWidgets,\n\t\tsetOption,\n\t\tgetEntryComponent,\n\t} = props;\n\n\tconst classNames = ['optionsPanel', 'optionsPanel-' + id];\n\n\tlet widget, groupWidget;\n\n\tlet WidgetComponent, GroupComponent;\n\tlet isGroupInteractable, isGroupWidgetInteractable;\n\n\tlet renderedGroupWidgets;\n\n\tconst renderedWidgets = allWidgets.widgetsOrder\n\t\t.filter((widgetId) => {\n\t\t\treturn !hiddenWidgets.includes(widgetId);\n\t\t})\n\t\t.map((widgetId) => {\n\t\t\twidget = allWidgets.allWidgets[widgetId];\n\n\t\t\tif (widget.type === 'optionsGroup') {\n\t\t\t\trenderedGroupWidgets = widget.groupWidgetsOrder\n\t\t\t\t\t.filter((groupWidgetId) => {\n\t\t\t\t\t\treturn !hiddenWidgets.includes(groupWidgetId);\n\t\t\t\t\t})\n\t\t\t\t\t.map((groupWidgetId) => {\n\t\t\t\t\t\tgroupWidget = widget.allGroupWidgets[groupWidgetId];\n\n\t\t\t\t\t\tisGroupWidgetInteractable =\n\t\t\t\t\t\t\t!nonInteractableWidgets.includes(widgetId) &&\n\t\t\t\t\t\t\t!nonInteractableWidgets.includes(groupWidgetId);\n\n\t\t\t\t\t\treturn renderWidget(\n\t\t\t\t\t\t\tgroupWidgetId,\n\t\t\t\t\t\t\tgroupWidget,\n\t\t\t\t\t\t\tisGroupWidgetInteractable\n\t\t\t\t\t\t);\n\t\t\t\t\t});\n\n\t\t\t\tif (renderedGroupWidgets.length === 0) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\tGroupComponent = getEntryComponent(widget.type);\n\t\t\t\tisGroupInteractable =\n\t\t\t\t\t!nonInteractableWidgets.includes(widgetId);\n\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{renderedGroupWidgets}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\treturn renderWidget(\n\t\t\t\t\twidgetId,\n\t\t\t\t\twidget,\n\t\t\t\t\t!nonInteractableWidgets.includes(widgetId)\n\t\t\t\t);\n\t\t\t}\n\t\t});\n\n\tfunction renderWidget(widgetId, localWidget, isInteractable) {\n\t\tWidgetComponent = getEntryComponent(localWidget.type);\n\n\t\treturn (\n\t\t\t\n\t\t);\n\t}\n\n\treturn
    {renderedWidgets}
    ;\n}\n\nOptionsPanel.propTypes = {\n\tid: PropTypes.string.isRequired,\n\tallWidgets: PropTypes.object.isRequired,\n\tnonInteractableWidgets: PropTypes.arrayOf(PropTypes.string).isRequired,\n\thiddenWidgets: PropTypes.arrayOf(PropTypes.string).isRequired,\n\tsetOption: PropTypes.func.isRequired,\n\tgetEntryComponent: PropTypes.func.isRequired,\n};\n\nexport default OptionsPanel;\n","import './OptionsGroup.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Icon from '../../../_components/Icon';\n\nfunction OptionsGroup(props) {\n\tconst { isInteractable, icon, label } = props;\n\n\tconst classNames = ['sb-optionsGroup'];\n\tif (!shouldBeInteractable()) {\n\t\tclassNames.push('sb-optionsGroup-isNotInteractable');\n\t}\n\n\tfunction shouldBeInteractable() {\n\t\treturn isInteractable && props.children && props.children.length > 0;\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t{' '}\n\t\t\t\t{label}\n\t\t\t
    \n\t\t\t
    {props.children}
    \n\t\t
    \n\t);\n}\n\nOptionsGroup.propTypes = {\n\tisInteractable: PropTypes.bool.isRequired,\n\ticon: PropTypes.string.isRequired,\n\tlabel: PropTypes.string.isRequired,\n\tchildren: PropTypes.arrayOf(PropTypes.element),\n};\n\nOptionsGroup.defaultProps = {};\n\nexport default OptionsGroup;\n","import './Select.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Icon from '../../../_components/Icon';\n\nfunction SelectChoice(props) {\n\tconst { isSelected, isInteractable, label, onClick } = props;\n\n\tlet checkIcon;\n\tconst classNames = ['sb-optionSelectChoice'];\n\n\tif (isSelected) {\n\t\tclassNames.push('sb-optionSelectChoice-isSelected');\n\t\tcheckIcon = (\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t);\n\t}\n\n\tif (!isInteractable) {\n\t\tclassNames.push('sb-optionSelectChoice-isNotInteractable');\n\t}\n\n\tfunction handleClick() {\n\t\tif (isInteractable) {\n\t\t\tonClick();\n\t\t}\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t{isSelected && checkIcon}\n\t\t\t
    \n\t\t\t
    {label}
    \n\t\t
    \n\t);\n}\n\nSelectChoice.propTypes = {\n\tisSelected: PropTypes.bool.isRequired,\n\tisInteractable: PropTypes.bool.isRequired,\n\tlabel: PropTypes.string.isRequired,\n\tonClick: PropTypes.func.isRequired,\n};\n\nexport default React.memo(SelectChoice);\n","import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport SelectChoice from './SelectChoice';\n\nimport Icon from '../../../_components/Icon';\n\nfunction Select(props) {\n\tconst [isOpen, setIsOpen] = useState(false);\n\n\tconst {\n\t\tisInteractable,\n\t\tlabel,\n\t\tallChoices,\n\t\toptionContext,\n\t\toptionKey,\n\t\toptionValue,\n\t\tsetOption,\n\t} = props;\n\n\tconst classNames = ['sb-optionSelect'];\n\tif (!isInteractable) {\n\t\tclassNames.push('sb-optionSelect-isNotInteractable');\n\t}\n\n\tconst iconName = isOpen ? 'keyboard_arrow_down' : 'keyboard_arrow_right';\n\n\tfunction toggleChoices() {\n\t\tsetIsOpen(!isOpen);\n\t}\n\n\tconst renderedChoices = !isOpen ? null : (\n\t\t
    \n\t\t\t{allChoices.map((choice) => (\n\t\t\t\t {\n\t\t\t\t\t\tsetOption(optionContext, optionKey, choice.value);\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t))}\n\t\t
    \n\t);\n\n\tconst activeLabel = allChoices.find(\n\t\t(choice) => optionValue === choice.value\n\t).label;\n\n\tconst selectLabel = isOpen ? (\n\t\tlabel\n\t) : (\n\t\t\n\t\t\t{label + ': '}\n\t\t\t\n\t\t\t\t{activeLabel}\n\t\t\t\n\t\t\n\t);\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{selectLabel}\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\n\t\t\t{renderedChoices}\n\t\t\n\t);\n}\n\nSelect.propTypes = {\n\tisInteractable: PropTypes.bool.isRequired,\n\tlabel: PropTypes.string.isRequired,\n\tallChoices: PropTypes.array.isRequired,\n\toptionContext: PropTypes.string.isRequired,\n\toptionKey: PropTypes.string.isRequired,\n\toptionValue: PropTypes.string.isRequired,\n\tsetOption: PropTypes.func.isRequired,\n};\n\nexport default Select;\n","import './Slider.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction Slider(props) {\n\tconst {\n\t\tisInteractable,\n\t\tlabel,\n\t\tmin,\n\t\tmax,\n\t\tshowPlusSymbol,\n\t\toptionContext,\n\t\toptionKey,\n\t\toptionValue,\n\t\tsetOption,\n\t} = props;\n\n\tconst classNames = ['sb-optionSlider'];\n\tif (!isInteractable) {\n\t\tclassNames.push('sb-optionSlider-isNotInteractable');\n\t}\n\n\tfunction handleChange(e) {\n\t\tsetOption(optionContext, optionKey, Number.parseInt(e.target.value));\n\t}\n\n\tconst valueDisplay =\n\t\toptionValue > 0 && showPlusSymbol ? '+' + optionValue : optionValue;\n\n\treturn (\n\t\t
    \n\t\t\t
    {label}
    \n\t\t\t
    {valueDisplay}
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n}\n\nSlider.propTypes = {\n\tisInteractable: PropTypes.bool.isRequired,\n\tlabel: PropTypes.string.isRequired,\n\tmin: PropTypes.number.isRequired,\n\tmax: PropTypes.number.isRequired,\n\tshowPlusSymbol: PropTypes.bool,\n\toptionContext: PropTypes.string.isRequired,\n\toptionKey: PropTypes.string.isRequired,\n\toptionValue: PropTypes.number.isRequired,\n\tsetOption: PropTypes.func.isRequired,\n};\n\nSlider.defaultProps = {\n\tshowPlusSymbol: true,\n};\n\nexport default React.memo(Slider);\n","import './Toggle.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Icon from '../../../_components/Icon';\n\nfunction Toggle(props) {\n\tconst {\n\t\tisInteractable,\n\t\tlabel,\n\t\toptionContext,\n\t\toptionKey,\n\t\toptionValue,\n\t\tsetOption,\n\t} = props;\n\n\tconst classNames = ['sb-optionToggle'];\n\tclassNames.push(\n\t\toptionValue === true ? 'sb-optionToggle-isOn' : 'sb-optionToggle-isOff'\n\t);\n\tif (!isInteractable) {\n\t\tclassNames.push('sb-optionToggle-isNotInteractable');\n\t}\n\n\tfunction handleClick() {\n\t\tsetOption(optionContext, optionKey, !optionValue);\n\t}\n\n\treturn (\n\t\t\n\t\t\t
    {label}
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\n\t);\n}\n\nToggle.propTypes = {\n\tisInteractable: PropTypes.bool.isRequired,\n\tlabel: PropTypes.string.isRequired,\n\toptionContext: PropTypes.string.isRequired,\n\toptionKey: PropTypes.string.isRequired,\n\toptionValue: PropTypes.bool.isRequired,\n\tsetOption: PropTypes.func.isRequired,\n};\n\nexport default React.memo(Toggle);\n","import './SidebarOptionsPanel.scss';\n\nimport React from 'react';\n\nimport OptionPanel from '../../../../optionsPanels/_components/OptionsPanel';\n\nimport OptionsGroup from './OptionsGroup';\nimport Select from './Select';\nimport Slider from './Slider';\nimport Toggle from './Toggle';\n\nfunction getEntryComponent(type) {\n\tswitch (type) {\n\t\tcase 'optionsGroup':\n\t\t\treturn OptionsGroup;\n\t\tcase 'select':\n\t\t\treturn Select;\n\t\tcase 'slider':\n\t\t\treturn Slider;\n\t\tcase 'toggle':\n\t\t\treturn Toggle;\n\t}\n}\n\nexport default function SidebarOptionPanel(props) {\n\treturn (\n\t\t
    \n\t\t\t\n\t\t
    \n\t);\n}\n","import createAction from '../../core/createAction';\nimport * as actionTypes from './actionsTypes';\n\nexport const setOptionValue = (context, key, value) => {\n\tif (!context) {\n\t\tthrow new TypeError('Cannot set an option without a context');\n\t}\n\tif (!key) {\n\t\tthrow new TypeError('Cannot set an option without a key');\n\t}\n\tconst payload = {\n\t\tcontext,\n\t\tkey,\n\t\tvalue,\n\t};\n\treturn createAction(actionTypes.DB_OPTION_SET_OPTION_VALUE, payload);\n};\n","import Rendering from '../_components/Rendering';\nimport OptionsPanelFactory from '../../_containers/OptionsPanelFactory';\n\nimport allWidgets from '../allWidgets';\nimport {\n\tgetNonInteractableWidgets,\n\tgetHiddenWidgets,\n} from '../_state/selectors';\n\nexport default OptionsPanelFactory(\n\tallWidgets,\n\tgetNonInteractableWidgets,\n\tgetHiddenWidgets,\n\tRendering\n);\n","import { connect } from 'react-redux';\n\nimport { getOptionValue } from '../../db/options/selectors';\nimport { setOptionValue } from '../../db/options/actions';\n\nexport default function OptionsPanelFactory(\n\tallWidgets,\n\tgetNonInteractableWidgets,\n\tgetHiddenWidgets,\n\tcomponent\n) {\n\treturn connect(\n\t\t(state) => {\n\t\t\tconst stateToProps = {\n\t\t\t\tallWidgets,\n\t\t\t\tnonInteractableWidgets: getNonInteractableWidgets(state),\n\t\t\t\thiddenWidgets: getHiddenWidgets(state),\n\t\t\t};\n\n\t\t\tlet widget;\n\t\t\tlet groupWidget;\n\n\t\t\tallWidgets.widgetsOrder.forEach((widgetId) => {\n\t\t\t\twidget = allWidgets.allWidgets[widgetId];\n\n\t\t\t\twidget.groupWidgetsOrder.forEach((groupWidgetId) => {\n\t\t\t\t\tgroupWidget = widget.allGroupWidgets[groupWidgetId];\n\n\t\t\t\t\tstateToProps[groupWidget.option.key] = getOptionValue(\n\t\t\t\t\t\tstate,\n\t\t\t\t\t\tgroupWidget.option.context,\n\t\t\t\t\t\tgroupWidget.option.key\n\t\t\t\t\t);\n\t\t\t\t});\n\t\t\t});\n\n\t\t\treturn stateToProps;\n\t\t},\n\n\t\t{\n\t\t\tsetOption: setOptionValue,\n\t\t}\n\t)(component);\n}\n","/* eslint-disable max-lines */\nexport default {\n\twidgetsOrder: ['editorPreferences', 'key', 'preferences', 'layout'],\n\n\tallWidgets: {\n\t\teditorPreferences: {\n\t\t\tlabel: 'Editor preferences',\n\t\t\ttype: 'optionsGroup',\n\t\t\ticon: 'tune',\n\n\t\t\tgroupWidgetsOrder: ['theme', 'chartFormat'],\n\t\t\tallGroupWidgets: {\n\t\t\t\ttheme: {\n\t\t\t\t\tlabel: 'Theme',\n\t\t\t\t\ttype: 'select',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tallChoices: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'themeDark1',\n\t\t\t\t\t\t\t\tlabel: 'Dark 1 (default)',\n\t\t\t\t\t\t\t\tvalue: 'dark1',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'themeDark2',\n\t\t\t\t\t\t\t\tlabel: 'Dark 2',\n\t\t\t\t\t\t\t\tvalue: 'dark2',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'themeDark3',\n\t\t\t\t\t\t\t\tlabel: 'Dark 3',\n\t\t\t\t\t\t\t\tvalue: 'dark3',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'editorPreferences',\n\t\t\t\t\t\tkey: 'theme',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tchartFormat: {\n\t\t\t\t\tlabel: 'Export format',\n\t\t\t\t\ttype: 'select',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tallChoices: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'formatChordMark',\n\t\t\t\t\t\t\t\tlabel: 'ChordMark',\n\t\t\t\t\t\t\t\tvalue: 'chordmark',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'formatChordMarkSrc',\n\t\t\t\t\t\t\t\tlabel: 'ChordMark (Source)',\n\t\t\t\t\t\t\t\tvalue: 'chordmarkSrc',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'formatChordpro',\n\t\t\t\t\t\t\t\tlabel: 'ChordPro',\n\t\t\t\t\t\t\t\tvalue: 'chordpro',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'formatUG',\n\t\t\t\t\t\t\t\tlabel: 'UltimateGuitar',\n\t\t\t\t\t\t\t\tvalue: 'ultimateGuitar',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'editorPreferences',\n\t\t\t\t\t\tkey: 'chartFormat',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tkey: {\n\t\t\tlabel: 'Key',\n\t\t\ttype: 'optionsGroup',\n\t\t\ticon: 'music_note',\n\n\t\t\tgroupWidgetsOrder: [\n\t\t\t\t'transposeValue',\n\t\t\t\t'preferredAccidentals',\n\t\t\t\t'symbolType',\n\t\t\t],\n\t\t\tallGroupWidgets: {\n\t\t\t\ttransposeValue: {\n\t\t\t\t\tlabel: 'Transpose',\n\t\t\t\t\ttype: 'slider',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tmin: -11,\n\t\t\t\t\t\tmax: 11,\n\t\t\t\t\t\tshowPlusSymbol: true,\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songPreferences',\n\t\t\t\t\t\tkey: 'transposeValue',\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tpreferredAccidentals: {\n\t\t\t\t\tlabel: 'Preferred accidentals',\n\t\t\t\t\ttype: 'select',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tallChoices: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'preferredAccidentalsAuto',\n\t\t\t\t\t\t\t\tlabel: 'Auto',\n\t\t\t\t\t\t\t\tvalue: 'auto',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'preferredAccidentalsSharp',\n\t\t\t\t\t\t\t\tlabel: '♯',\n\t\t\t\t\t\t\t\tvalue: 'sharp',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'preferredAccidentalsFlat',\n\t\t\t\t\t\t\t\tlabel: '♭',\n\t\t\t\t\t\t\t\tvalue: 'flat',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songPreferences',\n\t\t\t\t\t\tkey: 'preferredAccidentals',\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tsymbolType: {\n\t\t\t\t\tlabel: 'Symbols type',\n\t\t\t\t\ttype: 'select',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tallChoices: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'symbolTypeChord',\n\t\t\t\t\t\t\t\tlabel: 'Chord symbols',\n\t\t\t\t\t\t\t\tvalue: 'chord',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'symbolTypeRoman',\n\t\t\t\t\t\t\t\tlabel: 'Roman numerals',\n\t\t\t\t\t\t\t\tvalue: 'roman',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songPreferences',\n\t\t\t\t\t\tkey: 'symbolType',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tpreferences: {\n\t\t\tlabel: 'Chart settings',\n\t\t\ttype: 'optionsGroup',\n\t\t\ticon: 'tune',\n\n\t\t\tgroupWidgetsOrder: [\n\t\t\t\t'chartType',\n\t\t\t\t'alignChordsWithLyrics',\n\t\t\t\t'alignBars',\n\t\t\t\t'autoRepeatChords',\n\t\t\t\t'expandSectionCopy',\n\t\t\t],\n\t\t\tallGroupWidgets: {\n\t\t\t\tchartType: {\n\t\t\t\t\tlabel: 'Type',\n\t\t\t\t\ttype: 'select',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tallChoices: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'typedisplayAll',\n\t\t\t\t\t\t\t\tlabel: 'Show everything',\n\t\t\t\t\t\t\t\tvalue: 'all',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'typedisplayLyrics',\n\t\t\t\t\t\t\t\tlabel: 'Lyrics only',\n\t\t\t\t\t\t\t\tvalue: 'lyrics',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'typedisplayChords',\n\t\t\t\t\t\t\t\tlabel: 'Chords only',\n\t\t\t\t\t\t\t\tvalue: 'chords',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'typedisplayChordsFirstLyricLine',\n\t\t\t\t\t\t\t\tlabel: 'Chords + First lyric line',\n\t\t\t\t\t\t\t\tvalue: 'chordsFirstLyricLine',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'chartType',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\talignChordsWithLyrics: {\n\t\t\t\t\tlabel: 'Align chords with lyrics',\n\t\t\t\t\ttype: 'toggle',\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'alignChordsWithLyrics',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\talignBars: {\n\t\t\t\t\tlabel: 'Align bars',\n\t\t\t\t\ttype: 'toggle',\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'alignBars',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tautoRepeatChords: {\n\t\t\t\t\tlabel: 'Auto repeat chords',\n\t\t\t\t\ttype: 'toggle',\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'autoRepeatChords',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\texpandSectionCopy: {\n\t\t\t\t\tlabel: 'Expand copied sections',\n\t\t\t\t\ttype: 'toggle',\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'expandSectionCopy',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tlayout: {\n\t\t\ttype: 'optionsGroup',\n\t\t\tlabel: 'Layout',\n\t\t\ticon: 'view_compact',\n\n\t\t\tgroupWidgetsOrder: [\n\t\t\t\t'fontSize',\n\t\t\t\t'columnsCount',\n\t\t\t\t'columnBreakOnSection',\n\t\t\t\t'documentMargins',\n\t\t\t],\n\n\t\t\tallGroupWidgets: {\n\t\t\t\tfontSize: {\n\t\t\t\t\tlabel: 'Font size',\n\t\t\t\t\ttype: 'slider',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tmin: -5,\n\t\t\t\t\t\tmax: +5,\n\t\t\t\t\t\tshowPlusSymbol: true,\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'fontSize',\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tcolumnsCount: {\n\t\t\t\t\tlabel: 'Columns',\n\t\t\t\t\ttype: 'slider',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tmin: 1,\n\t\t\t\t\t\tmax: 4,\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'columnsCount',\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tcolumnBreakOnSection: {\n\t\t\t\t\tlabel: 'Column Break on section',\n\t\t\t\t\ttype: 'toggle',\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'columnBreakOnSection',\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tdocumentMargins: {\n\t\t\t\t\tlabel: 'Margins',\n\t\t\t\t\ttype: 'slider',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tmin: 1,\n\t\t\t\t\t\tmax: 5,\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'documentMargins',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n};\n","import _difference from 'lodash/difference';\n\nimport editorModeOptions from '../../../db/options/editorModeOptions'; // duh!\nimport { getEditorMode } from '../../../ui/layout/app/_state/selectors';\nimport { getSelectedId } from '../../../fileManager/_state/selectors';\nimport {\n\tgetOptionsDefaults,\n\tgetOptionValue,\n} from '../../../db/options/selectors';\n\nexport const getNonInteractableWidgets = (state) => {\n\tconst nonInteractableWidgets = [];\n\n\tconst chartType = getOptionValue(state, 'songFormatting', 'chartType');\n\tif (chartType === 'lyrics') {\n\t\tnonInteractableWidgets.push('alignChordsWithLyrics');\n\t\tnonInteractableWidgets.push('alignBars');\n\t\tnonInteractableWidgets.push('autoRepeatChords');\n\t} else if (chartType === 'chords') {\n\t\tnonInteractableWidgets.push('alignChordsWithLyrics');\n\t}\n\n\tconst chartFormat = getOptionValue(\n\t\tstate,\n\t\t'editorPreferences',\n\t\t'chartFormat'\n\t);\n\tconst editorMode = getEditorMode(state);\n\n\tif (editorMode === 'export') {\n\t\tif (chartFormat === 'chordmarkSrc') {\n\t\t\tnonInteractableWidgets.push('chartType');\n\t\t\tnonInteractableWidgets.push('alignChordsWithLyrics');\n\t\t\tnonInteractableWidgets.push('alignBars');\n\t\t\tnonInteractableWidgets.push('autoRepeatChords');\n\t\t\tnonInteractableWidgets.push('expandSectionCopy');\n\t\t}\n\t}\n\n\treturn nonInteractableWidgets;\n};\n\nexport const getHiddenWidgets = (state) => {\n\tconst hiddenWidgets = [];\n\n\tconst allOptions = Object.keys({\n\t\t...getOptionsDefaults(state, 'editorPreferences'),\n\t\t...getOptionsDefaults(state, 'songFormatting'),\n\t\t...getOptionsDefaults(state, 'songPreferences'),\n\t});\n\n\tconst selectedId = getSelectedId(state);\n\tif (!selectedId) {\n\t\treturn allOptions;\n\t}\n\n\tconst editorMode = getEditorMode(state);\n\n\tconst nonInteractableOptions = _difference(\n\t\tallOptions,\n\t\teditorModeOptions[editorMode]\n\t);\n\n\thiddenWidgets.push(...nonInteractableOptions);\n\n\treturn hiddenWidgets;\n};\n","import './Rendering.scss';\n\nimport React from 'react';\n\nimport Icon from '../../../ui/_components/Icon';\n\nimport SidebarOptionPanel from '../../../ui/sideBar/options/_components/SidebarOptionsPanel';\n\nexport default function Rendering(props) {\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\n\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n}\n","import React from 'react';\n\nimport AppLayout from '../ui/layout/app/_containers/App';\nimport FileManager from '../fileManager/_containers/FileManager';\nimport Editor from '../editor/_containers/Editor';\nimport RightBarPanel from '../optionsPanels/rendering/_containers/Rendering';\n\nexport default function Edit() {\n\tconst fm = ;\n\tconst rightBarPanel = ;\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\n\t);\n}\n","import UniversalRouter from 'universal-router';\nimport renderController from './renderController';\n\nimport Editor from './controllers/Editor';\n\nconst routes = [\n\t{\n\t\tpath: '/editor',\n\t\taction: () => Editor,\n\t},\n];\n\nconst universalRouter = new UniversalRouter(routes);\n\nexport default {\n\tnavigateTo(path) {\n\t\treturn universalRouter.resolve(path).then((controller) => {\n\t\t\treturn renderController(controller);\n\t\t});\n\t},\n};\n","import React from 'react';\nimport { createRoot } from 'react-dom/client';\n\nimport { Provider } from 'react-redux';\nimport { getStore } from './state/store';\n\nimport ErrorBoundary from './ui/_components/ErrorBoundary';\n\nexport default function renderController(Controller) {\n\tconst container = document.getElementById('app');\n\tconst root = createRoot(container);\n\n\troot.render(\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n}\n","import '../scss/styles.scss';\n\nimport { createStore } from './state/store';\nimport registerHandlers from './registerHandlers';\nimport router from './router';\nimport addSampleContent from './addSampleContent';\n\nregisterHandlers();\n\nexport default function run() {\n\tcreateStore();\n\n\taddSampleContent();\n\n\treturn router.navigateTo('/editor');\n}\n","import { getStore } from './state/store';\n\nimport { getAllTitles } from './db/files/selectors';\nimport { importFile } from './db/files/actions';\n\nimport gettingStarted from './gettingStarted.txt';\nimport sampleSong from './sampleSong.txt';\n\nexport default function addSampleContent() {\n\tconst store = getStore();\n\tconst state = store.getState();\n\n\tconst allTitles = getAllTitles(state);\n\n\tif (allTitles.length === 0) {\n\t\tstore.dispatch(importFile('Hallelujah - Leonard Cohen', sampleSong));\n\t\tstore.dispatch(importFile('Getting started', gettingStarted));\n\t}\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript)\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && !scriptUrl) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t179: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkchord_chart_studio\"] = self[\"webpackChunkchord_chart_studio\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [216], () => (__webpack_require__(\"TBfH\")))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","loadState","serializedState","localStorage","getItem","JSON","parse","err","saveState","state","stringify","setItem","clock","Date","now","DB_FILES_CREATE","DB_FILES_DELETE","DB_FILES_IMPORT","DB_FILES_UPDATE","DB_OPTION_SET_OPTION_VALUE","UI_LAYOUT_APP_SET_EDITOR_MODE","UI_LAYOUT_APP_TOGGLE_LEFT_BAR","UI_LAYOUT_APP_TOGGLE_RIGHT_BAR","isLeftBarCollapsed","ui","layout","app","isRightBarCollapsed","getEditorMode","editorMode","getSelectedId","fileManager","selected","getRenamedId","renamed","getDefaultTitle","defaultTitle","getAllTitles","createSelectorCreator","defaultMemoize","_isEqual","createDeepEqualSelector","_map","db","files","allFiles","_ref","title","id","_sortBy","o","toLowerCase","getOne","getCategoryOptions","category","file","options","Object","keys","length","_cloneDeep","getLatestModeOptions","fileOptions","allOptionsPerMode","edit","push","_objectSpread","play","print","export","sort","a","b","updatedAt","reduce","acc","modeOptions","assign","initialState","updateFileOption","action","fullState","_action$payload3","payload","context","key","value","includes","optionCategory","fileState","_defineProperty","addOption","FILE_MANAGER_SELECT_FILE","FILE_MANAGER_ENABLE_RENAME","getOptionValue","values","getOptionsDefaults","defaults","getModeOptions","fileId","mode","defaultOptions","editorModeOptions","_pick","allEditorModeOptions","combineSectionReducers","arguments","undefined","type","actionTypes","_action$payload","content","createFile","_action$payload2","updateFile","deleteFile","nextMode","previousModeOptions","setEditorMode","newState","setOptionValue","newOptions","songFormatting","songPreferences","defaultPreferences","newPreferences","selectFile","SONG_IMPORTER_IMPORT_CANCEL","SONG_IMPORTER_IMPORT_START","SONG_IMPORTER_SET_CONTENT","SONG_IMPORTER_SET_INPUT_FORMAT","stripTags","html","domPurify","ALLOWED_TAGS","KEEP_CONTENT","isFromWeb","isImporting","inputFormat","activeModal","songImporter","actions","_action$payload$title","editorPreferences","theme","chartFormat","transposeValue","preferredAccidentals","symbolType","chartType","alignChordsWithLyrics","alignBars","autoRepeatChords","expandSectionCopy","fontSize","columnsCount","columnBreakOnSection","documentMargins","store","getStore","createAction","TypeError","songImporterHandlers","message","buildTitle","artist","dispatch","actionsTypes","startImportFromWeb","chordChart","songTitle","_handleMessage","e","allHandlers","source","window","origin","location","data","ErrorBoundary","_React$Component","props","_this","_classCallCheck","_callSuper","error","errorInfo","_inherits","this","setState","React","className","style","whiteSpace","open","toString","componentStack","children","propTypes","PropTypes","Logo","href","logoSvg","Icon","iconName","join","isRequired","NavEntry","label","icon","isActive","isDisabled","classNames","onClick","Nav","currentMode","allEntries","selectedId","map","entry","_extends","Button","buttonName","allClassNames","disabled","name","defaultProps","UserGuide","focus","Versions","versions","target","rel","importFile","uuidv4","getContent","getInputFormat","getTitle","Modal","closeModal","useEffect","handleKeyboard","addEventListener","removeEventListener","Header","cancelImport","chordMarkContent","headerTitle","getSongTitle","substr","lastIndexOf","isOversized","size","isTextFile","indexOf","getFileTooBigMsg","actualSize","filesize","round","getWrongFileTypeMsg","getNoFileSelectedMsg","fileList","Promise","resolve","reject","text","then","fileContent","catch","FilePicker","setContent","htmlFor","onChange","ev","getUploadedFile","accept","Input","allClasses","PreviewError","InputFormatEntry","setInputFormat","allInputClasses","allLabelClasses","checked","InputFormatSelector","disableAll","rendered","SongImporter","convert2ChordMark","connect","App","toggleLeftBar","toggleRightBar","leftBar","rightBar","leftBarClassNames","rightBarClassNames","allNavEntries","renderAsHtml","songTxt","render","renderOptions","useChartFormat","outputFormat","cmHtml","renderSong","toText","toHtml","customRenderer","chordMark2ChordPro","cpTxt","chordMark2UltimateGuitar","ugTxt","printBarSeparators","printChordsDuration","printSubBeatDelimiters","printInlineTimeSignatures","chordSymbolRenderer","chordRendererFactory","customFilters","chordSymbolUltimateGuitar","useShortNamings","accidentalsType","chordMarkHtml","wrapChordLyricLines","parsed","parseSong","renderSongCm","split","line","concat","match","exportSelectedFileAsText","getState","selectedFile","renderAsText","fileExt","fileName","blob","Blob","endings","saveAs","ModalConfirm","confirmAction","_props$confirmTitle","confirmTitle","cancelAction","_props$cancelTitle","cancelTitle","DeleteConfirmModal","isDeleting","setIsDeleting","FileActionEntry","FileActions","enableRename","startImport","exportAsText","allActions","printFile","FileEntry","_useState2","_slicedToArray","useState","setTitle","isSelected","isRenamed","classList","inputRef","saveTitle","newTitle","current","scrollLeft","onDoubleClick","select","ref","readOnly","autoFocus","onBlur","onFocus","onKeyPress","which","preventDefault","getSelection","removeAllRanges","FileManager","allTitles","setTimeout","escapeHTML","unescaped","SongRenderer","dangerouslySetInnerHTML","__html","EditorPreview","Schema","nodes","doc","paragraph","group","parseDOM","tag","toDOM","hard_break","inline","selectable","stateToText","toJSON","toSafeHtml","dirty","ProseMirrorEditorView","selectedFileId","editorContent","editorView","useRef","editorDom","previousFileId","editorExists","dom","parentNode","destroyEditor","removeChild","editorState","EditorState","create","pmDOMParser","fromSchema","editorSchema","div","document","createElement","innerHTML","preserveWhitespace","plugins","pmHistory","keymap","undo","redo","baseKeymap","createEditorState","EditorView","dispatchTransaction","transaction","_this$state$applyTran","applyTransaction","transactions","updateState","some","tr","docChanged","createEditorView","appendChild","EditorLayout","previewClassNames","ScrollSync","ScrollSyncNode","ExportPreview","exportPreviewRef","selectAll","metaKey","ctrlKey","selectAllChildren","PlayRenderer","wrapperClassNames","Page","pageHeader","allColumnsLines","documentSize","allSectionsRendered","columnLines","index","columnLinesTxt","pageClasses","pageContentWrapperClasses","PageHeader","cssClasses","emptyLine","chordLine","textLine","mapLinesToColumns","allLinesWithHeight","firstPageHeight","normalPageHeight","_ref$noEmptyLinesOnCo","noEmptyLinesOnColumnStart","_ref$noOrphanTextLine","noOrphanTextLine","_ref3","allPagesColumns","pageIndex","columnIndex","maxColumnHeight","getMaxColumnHeight","currentColumnHeight","flushBuffer","buffer","forEach","shouldChangeColumn","height","changeColumn","nextHeight","shouldChangePage","insert","insertOnNextColumn","fitsOnCurrentColumn","bufferHeight","fitsOnNextColumn","get","layoutFactory","lineIndex","isEmptyLine","shouldRenderLine","currentLine","nextLine","_ref2","wouldProduceOrphanTextLine","hasClass","isChordLine","isTextLine","isEndOfParagraph","isBreakable","getDimensionsFromDom","component","measuringFn","container","add","body","root","createRoot","MeasuringComponent","useLayoutEffect","measure","unmount","padColumns","columnCount","allColumns","i","getClientHeight","element","clientHeight","_regeneratorRuntime","t","r","prototype","n","hasOwnProperty","defineProperty","Symbol","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","Context","makeInvokeMethod","tryCatch","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","_typeof","__await","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","constructor","mark","setPrototypeOf","__proto__","awrap","async","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","delegateYield","asyncGeneratorStep","gen","_next","_throw","info","cssSelectors","getAllLinesHeight","_x","_x2","_getAllLinesHeight","apply","fn","_callee","allLines","_context","allLinesHeight","querySelectorAll","offsetHeight","self","args","pageContent","querySelector","arr","Array","isArray","_arrayWithHoles","_iterableToArrayLimit","minLen","_arrayLikeToArray","from","test","_unsupportedIterableToArray","_nonIterableRest","len","arr2","AllPages","setAllPagesColumns","getDimensions","pageOptions","_yield$getPagesHeight","mapped","getPagesHeight","allPagesRendered","pageColumns","PrintPreview","Editor","OptionsPanel","widget","groupWidget","WidgetComponent","GroupComponent","isGroupInteractable","isGroupWidgetInteractable","renderedGroupWidgets","allWidgets","nonInteractableWidgets","hiddenWidgets","setOption","getEntryComponent","renderedWidgets","widgetsOrder","filter","widgetId","groupWidgetsOrder","groupWidgetId","allGroupWidgets","renderWidget","isInteractable","localWidget","optionContext","option","optionKey","optionValue","typeOptions","OptionsGroup","SelectChoice","checkIcon","Select","isOpen","setIsOpen","allChoices","renderedChoices","choice","activeLabel","find","selectLabel","Slider","min","max","showPlusSymbol","valueDisplay","Number","parseInt","Toggle","SidebarOptionPanel","OptionPanel","getNonInteractableWidgets","getHiddenWidgets","stateToProps","preferences","allOptions","nonInteractableOptions","_difference","_toConsumableArray","Edit","fm","rightBarPanel","RightBarPanel","AppLayout","routes","path","universalRouter","UniversalRouter","controller","Controller","getElementById","Provider","storeEnhancers","composeWithDevTools","applyMiddleware","thunkMiddleware","persistedState","rendering","_defaultsDeep","seed","createReduxStore","allReducers","subscribe","createStore","sampleSong","gettingStarted","addSampleContent","router","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","loaded","__webpack_modules__","m","O","result","chunkIds","priority","notFulfilled","Infinity","fulfilled","j","every","splice","getter","__esModule","definition","globalThis","Function","obj","prop","nmd","paths","scriptUrl","importScripts","currentScript","src","scripts","getElementsByTagName","replace","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","bind","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/packages/chord-chart-studio/build/main.99948aaa068d066cd116.js b/packages/chord-chart-studio/build/main.99948aaa068d066cd116.js new file mode 100644 index 00000000..8b5c202d --- /dev/null +++ b/packages/chord-chart-studio/build/main.99948aaa068d066cd116.js @@ -0,0 +1,3 @@ +/*! For license information please see main.99948aaa068d066cd116.js.LICENSE.txt */ +(()=>{"use strict";var e,t={TBfH:(e,t,r)=>{var n=r("ySZr"),o=r.n(n),i=r("pZTv"),a=r("iA/U"),c=r("V8Kl"),l=(r("3ezv"),function(){try{var e=localStorage.getItem("state");if(!e)return;return JSON.parse(e)}catch(e){return}}),u=function(e){try{var t=JSON.stringify(e);localStorage.setItem("state",t)}catch(e){}},s=r("lw3o"),p=(r("tILF"),r("BHl9"),r("SFL+"),r("0eJ7"),r("lknY"),r("8aL/"),r("Ek9s"),r("yLKA"),r("1baz"),r("7cgf"),r("uFj5"),r("d4ji"),r("MVqi"),r("OPNk"),r("1yeN"),r("//nZ")),f=r.n(p);function d(){return Date.now()}var m="db/files/Create",y="db/files/Delete",h="db/files/Import",g="db/files/Update",v="db/options/setOptionValue",b="ui/layout/app/setEditorMode",w="ui/layout/app/toggleLeftBar",E="ui/layout/app/toggleRightBar",O=function(e){return e.ui.layout.app.isLeftBarCollapsed},S=function(e){return e.ui.layout.app.isRightBarCollapsed},C=function(e){return e.ui.layout.app.editorMode},j=function(e){return e.fileManager.selected},P=function(e){return e.fileManager.renamed},R=function(e){return e.fileManager.defaultTitle},F=(r("Rhi/"),r("yd9A"),r("mbB6")),N=r.n(F),x=r("c2re"),T=r.n(x),k=r("nnRT"),L=r.n(k),_=r("u6DZ"),q=r.n(_),I=r("+l7i"),M=r("Dyp/");function A(e){return A="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},A(e)}function D(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function B(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:J,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};switch(t.type){case m:case h:return function(e,t){var r=t.payload,n=r.id,o=r.title,i=r.content,a=U({},e.allFiles);return a[n]={id:n,title:o,content:i},U(U({},e),{},{allFiles:a})}(e,t);case g:return function(e,t){var r=t.payload,n=r.id,o=r.title,i=r.content;if(!o&&void 0===i||!e.allFiles[n])return e;var a=U({},e.allFiles);return a[n]=U({},a[n]),o&&(a[n].title=o),void 0!==i&&(a[n].content=i),U(U({},e),{},{allFiles:a})}(e,t);case y:return function(e,t){var r=t.payload.id;if(!r||!e.allFiles[r])return e;var n=U({},e.allFiles);return delete n[r],U(U({},e),{},{allFiles:n})}(e,t);case v:return Q(e,t,r);case b:return function(e,t,r){var n=j(r),o=t.payload.mode;if(!H(r,n,o)){var i=f()(V(r,n)||{},K[o]);if(Object.keys(i).length){i.updatedAt=d();var a=U({},e.allFiles);return a[n]=U(U({},a[n]),{},{options:U(U({},a[n].options),{},Z({},o,i))}),U(U({},e),{},{allFiles:a})}}return e}(e,t,r)}return e},options:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:ce,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};switch(t.type){case v:return function(e,t){var r=t.payload,n=r.context,o=r.key,i=r.value;if(!e[n]||!e[n].values||void 0===e[n].values[o])return e;var a=ie(ie({},e),{},ae({},n,ie(ie({},e[n]),{},{values:ie({},e[n].values)})));return a[n].values[o]=i,a}(e,t);case b:return function(e,t,r){var n=le(r,j(r),t.payload.mode);return ie(ie({},e),{},{songFormatting:ie(ie({},e.songFormatting),{},{values:ie({},n)})})}(e,t,r);case X:return function(e,t,r){var n=t.payload.id,o=le(r,n,C(r)),i=H(r,n,"preferences")||{};delete i.updatedAt;var a=re(r,"songPreferences"),c=Object.assign(a,i);return ie(ie({},e),{},{songPreferences:ie(ie({},e.songPreferences),{},{values:ie({},c)}),songFormatting:ie(ie({},e.songFormatting),{},{values:ie({},o)})})}(e,t,r)}return e}});function se(e){return se="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},se(e)}function pe(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function fe(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:Te,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};switch(t.type){case w:return Ne(Ne({},e),{},{isLeftBarCollapsed:!e.isLeftBarCollapsed});case E:return Ne(Ne({},e),{},{isRightBarCollapsed:!e.isRightBarCollapsed});case b:var r=t.payload.mode;return Ne(Ne({},e),{},{editorMode:r});case y:case m:case h:return Ne(Ne({},e),{},{editorMode:"edit"})}return e}}),Le=(0,s.Z)({layout:ke}),_e=(0,s.Z)({db:ue,fileManager:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:me,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};switch(t.type){case m:var r=t.payload.id;return fe(fe({},e),{},{selected:r,renamed:r});case h:var n=t.payload.id;return fe(fe({},e),{},{selected:n,renamed:""});case g:return fe(fe({},e),{},{renamed:""});case y:return fe(fe({},e),{},{selected:"",renamed:""});case X:var o=t.payload.id;return fe(fe({},e),{},{selected:o,renamed:o===e.renamed?o:""});case ee:var i=t.payload.id;return fe(fe({},e),{},{renamed:i})}return e},songImporter:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Pe,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};switch(t.type){case ge:var r=t.payload,n=r.content,o=r.title,i=void 0===o?"":o;return Ce(Ce({},e),{},{content:Ee(n),title:i?Ee(i):e.title});case ve:var a=t.payload.inputFormat;return Ce(Ce({},e),{},{inputFormat:a});case h:case ye:return Ce(Ce({},e),{},{content:"",title:"",isImporting:!1});case he:var c=t.payload,l=c.content,u=c.inputFormat,s=c.title,p=c.isFromWeb;return Ce(Ce({},e),{},{isImporting:!0,content:l?Ee(l):"",title:s?Ee(s):"",inputFormat:u||e.inputFormat,isFromWeb:p})}return e},ui:Le}),qe={db:{options:{editorPreferences:{values:{theme:"dark1",chartFormat:"chordmark"},defaults:{theme:"dark1",chartFormat:"chordmark"}},songPreferences:{values:{transposeValue:0,preferredAccidentals:"auto",symbolType:"chord"},defaults:{transposeValue:0,preferredAccidentals:"auto",symbolType:"chord"}},songFormatting:{values:{chartType:"all",alignChordsWithLyrics:!0,alignBars:!0,autoRepeatChords:!0,expandSectionCopy:!0,fontSize:0,columnsCount:1,columnBreakOnSection:!0,documentMargins:3},defaults:{chartType:"all",alignChordsWithLyrics:!0,alignBars:!0,autoRepeatChords:!0,expandSectionCopy:!0,fontSize:0,columnsCount:1,columnBreakOnSection:!0,documentMargins:3}}}}};var Ie;function Me(){return Ie}function Ae(e,t){if(!e)throw new TypeError("Cannot create an action without an action type");return{type:e,payload:t}}var De={"@CCS/IMPORT_TAB":function(e){var t=Me(),r=Be(e.title,e.artist);t.dispatch(function(e,t,r){return Ae(he,{content:t,inputFormat:e,title:r,isFromWeb:!0})}(e.inputFormat,e.chordChart,r))}},Be=function(e,t){return"_"+(t?t+" - ":"")+e};function We(e){return We="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},We(e)}function Ge(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ze(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==We(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==We(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===We(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var He=function(e){var t=function(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:"";if(!e)throw new TypeError("Cannot import a file without title");var r={id:(0,Et.Z)(),title:e,content:t};return Ae(h,r)},St=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.title,n=t.content;if(!e)throw new TypeError("Cannot update a file without an id");return Ae(g,{id:e,title:r,content:n})},Ct=function(e){return e.songImporter.content},jt=function(e){return e.songImporter.inputFormat},Pt=function(e){return e.songImporter.title},Rt=function(e){return e.songImporter.isImporting},Ft=function(e){return e.songImporter.isFromWeb},Nt=r("+Yn/");function xt(e){var t=e.children,r=e.closeModal;return(0,Ke.useEffect)((function(){var e=function(e){"Escape"===e.key&&r()};return window.addEventListener("keyup",e),function(){window.removeEventListener("keyup",e)}})),Ke.createElement("section",{className:"mod-ModalContainer"},Ke.createElement("div",{className:"mod-Overlay",onClick:r,"data-testid":"modal-overlay"}),Ke.createElement("div",{className:"mod-ContentContainer"},t))}xt.propTypes={children:Ze().element.isRequired,closeModal:Ze().func.isRequired};const Tt=xt;var kt=function(e){var t=e.cancelImport,r=e.chordMarkContent,n=e.importFile,o=e.title,i=e.content,a=e.error,c=o?'Import "'+o+'"':"Import song";return Ke.createElement("div",{className:"sim-Header_Container"},Ke.createElement("div",{className:"sim-Header_Title"},c),Ke.createElement("div",{className:"sim-Header_Actions"},Ke.createElement(ht,{onClick:t,buttonName:"cancel",type:"secondary"},"CANCEL"),Ke.createElement(ht,{onClick:function(){n(o||"[untitled]",r)},buttonName:"import",type:"primary",isDisabled:""===i||""!==a},"IMPORT")))};kt.propTypes={cancelImport:Ze().func.isRequired,chordMarkContent:Ze().string,content:Ze().string,error:Ze().string,importFile:Ze().func.isRequired,title:Ze().string};const Lt=kt;r("1uDy"),r("CDwP");var _t=r("ICiq"),qt=function(e){return e.name.substr(0,e.name.lastIndexOf("."))},It=function(e){return e.size>51200},Mt=function(e){return 0===e.type.indexOf("text")||0===e.type.length},At=function(e){return"The selected file is too big: "+(0,_t.G)(e,{round:0})+" (maximum allowed file size is "+(0,_t.G)(51200,{round:0})+")."},Dt=function(e){return"Cannot import file of type "+e.type+"."},Bt=function(){return"No file selected."};const Wt=function(e){return new Promise((function(t,r){if(e.length){var n=e[0];It(n)?r(At(n.size)):Mt(n)?n.text().then((function(e){t({content:e,title:qt(n)})})).catch((function(e){r(e)})):r(Dt(n))}else r(Bt())}))};var Gt=function(e){var t=e.setContent;return Ke.createElement("div",null,Ke.createElement("label",{htmlFor:"importSong-Input",className:"Button Button-primary"},"Select File"),Ke.createElement("input",{id:"importSong-Input",name:"importSong-Input",type:"file",className:"sim-InputFile_Input",onChange:function(e){Wt(e.target.files).then((function(e){t(e.content,e.title)})).catch((function(e){t(e)}))},accept:"text/*,.cho,.crd,.chopro,.chord,.pro,.txt,.md"}))};Gt.propTypes={setContent:Ze().func.isRequired};const zt=Gt;function Ht(e){var t=e.content,r=e.setContent,n=e.isDisabled,o=["sim-Input_Textarea"];return n&&o.push("sim-Input_Textarea-Disabled"),Ke.createElement(Ke.Fragment,null,Ke.createElement("div",{className:"sim-Input_Header"},Ke.createElement(ut,{iconName:"arrow_drop_down"}),"Copy/paste below",Ke.createElement(ut,{iconName:"arrow_drop_down"})),Ke.createElement("textarea",{className:o.join(" "),onChange:function(e){r(e.target.value)},value:t,disabled:n,"data-testid":"sim-input"}))}Ht.propTypes={content:Ze().string.isRequired,isDisabled:Ze().bool.isRequired,setContent:Ze().func.isRequired},Ht.defaultProps={};const Vt=Ht;function Kt(e){var t=e.inputFormat,r=e.error;return Ke.createElement("div",{className:"sim-Preview_Error"},Ke.createElement("p",null,"There was an error when trying to parse the song in the specified input format (",t,").",Ke.createElement("br",null),"Please correct the input or try another format.",Ke.createElement("br",null),"The error was:"),Ke.createElement("p",null,'"',r,'"'),Ke.createElement("p",null,'Hint: most of the time, this is related to an unclosed "[" or "{" or an unsupported ChordPro directive'))}Kt.propTypes={error:Ze().string,inputFormat:Ze().string.isRequired},Kt.defaultProps={};const $t=Kt;function Yt(e){var t=e.setInputFormat,r=e.inputFormat,n=e.id,o=e.label,i=e.isDisabled,a=["sim-InputFormat_Entry"],c=["sim-InputFormat_Label"];return i&&(a.push("sim-InputFormat_Entry-Disabled"),c.push("sim-InputFormat_Label-Disabled")),Ke.createElement(Ke.Fragment,null,Ke.createElement("input",{className:a.join(" "),type:"radio",name:"inputFormat",id:n,value:n,onChange:function(e){i||t(e.target.value)},checked:r===n}),Ke.createElement("label",{className:c.join(" "),htmlFor:n},o))}Yt.propTypes={setInputFormat:Ze().func.isRequired,inputFormat:Ze().string.isRequired,id:Ze().string.isRequired,label:Ze().string.isRequired,isDisabled:Ze().bool.isRequired},Yt.defaultProps={};const Ut=Yt;var Zt=[{id:"auto",label:"Detect"},{id:"chordPro",label:"Bracketed chords (ChordPro)"},{id:"chordsOverLyrics",label:"Chords over lyrics (Ultimate Guitar...)"}];function Jt(e){var t=e.setInputFormat,r=e.inputFormat,n=e.disableAll,o=Zt.map((function(e){return Ke.createElement(Ut,{setInputFormat:t,id:e.id,key:e.id,label:e.label,inputFormat:r,isDisabled:n})}));return Ke.createElement("div",{className:"sim-InputFormat"},"Input format:",o)}Jt.propTypes={disableAll:Ze().bool.isRequired,setInputFormat:Ze().func.isRequired,inputFormat:Ze().string.isRequired},Jt.defaultProps={};const Qt=Jt;function Xt(e){var t=e.cancelImport,r=e.content,n=e.importFile,o=e.isFromWeb,i=e.isImporting,a=e.setContent,c=e.setInputFormat,l=e.inputFormat,u=e.title;if(!i)return null;var s="",p="";try{s=(0,Nt.cl)(r,{inputFormat:l})}catch(e){p=e.message}return Ke.createElement(Tt,{closeModal:t},Ke.createElement("div",{className:"sim-SongImporterModal_Container","data-testid":"song-importer"},Ke.createElement(Lt,{cancelImport:t,chordMarkContent:s,content:r,error:p,importFile:n,title:u}),Ke.createElement("div",{className:"sim-TwoColumns_Container"},Ke.createElement("div",{className:"sim-Column_Container"},Ke.createElement(zt,{setContent:a})),Ke.createElement("div",{className:"sim-Column_Container"},Ke.createElement(Qt,{inputFormat:l,setInputFormat:c,disableAll:!0===o}))),Ke.createElement("div",{className:"sim-TwoColumns_Container sim-TwoColumns_Container-autoHeight"},Ke.createElement("div",{className:"sim-Column_Container"},Ke.createElement(Vt,{content:r,setContent:a,isDisabled:o})),Ke.createElement("div",{className:"sim-Column_Container"},Ke.createElement("div",{className:"sim-Input_Header"},Ke.createElement(ut,{iconName:"arrow_drop_down"}),"ChordMark preview",Ke.createElement(ut,{iconName:"arrow_drop_down"})),Ke.createElement("div",{className:"sim-Preview_Container","data-testid":"sim-preview"},p?Ke.createElement($t,{inputFormat:l,error:p}):s)))))}Xt.propTypes={cancelImport:Ze().func.isRequired,content:Ze().string.isRequired,importFile:Ze().func.isRequired,isFromWeb:Ze().bool.isRequired,isImporting:Ze().bool.isRequired,setContent:Ze().func.isRequired,setInputFormat:Ze().func.isRequired,inputFormat:Ze().string.isRequired,title:Ze().string},Xt.defaultProps={};const er=Xt,tr=(0,Ye.$j)((function(e){return{content:Ct(e),isFromWeb:Ft(e),isImporting:Rt(e),inputFormat:jt(e),title:Pt(e)}}),{setContent:function(e,t){return Ae(ge,{content:e,title:t})},setInputFormat:function(e){return Ae(ve,{inputFormat:e})},cancelImport:function(){return Ae(ye)},importFile:Ot})(er),rr=[{id:"edit",label:"Edit",icon:"create",editorMode:"edit"},{id:"play",label:"Screen view",icon:"music_note",editorMode:"play"},{id:"print",label:"Print/PDF Preview",icon:"print",editorMode:"print"},{id:"export",label:"Export Preview",icon:"save_alt",editorMode:"export"}];function nr(e){var t=e.editorMode,r=e.isLeftBarCollapsed,n=e.isRightBarCollapsed,o=e.toggleLeftBar,i=e.toggleRightBar,a=e.setEditorMode,c=e.selectedId,l=e.leftBar,u=e.rightBar,s=["leftBar"];r&&s.push("leftBar-isCollapsed");var p=["rightBar"];return n&&p.push("rightBar-isCollapsed"),Ke.createElement("div",{className:"appLayout-wrapper"},Ke.createElement(tr,null),Ke.createElement("section",{className:s.join(" ")},Ke.createElement("div",{className:"leftBar-content",onClick:r?o:null},Ke.createElement(ct,null),l),Ke.createElement("div",{className:"leftBar-collapser",onClick:o,"data-testid":"leftBar-collapser"},Ke.createElement("span",{className:"leftBar-collapserIcon"},Ke.createElement(ut,{iconName:"keyboard_arrow_left"})))),Ke.createElement("section",{className:"appLayout-main"},Ke.createElement("section",{className:"appLayout-header"},Ke.createElement(mt,{allEntries:rr,currentMode:t,setEditorMode:a,selectedId:c})),Ke.createElement("section",{className:"appLayout-content"},e.children)),Ke.createElement("section",{className:p.join(" ")},Ke.createElement("div",{className:"rightBar-collapser",onClick:i,"data-testid":"rightBar-collapser"},Ke.createElement("span",{className:"rightBar-collapserIcon"},Ke.createElement(ut,{iconName:"keyboard_arrow_right"}))),Ke.createElement("div",{className:"rightBar-content",onClick:n?i:null},Ke.createElement(vt,null),u,Ke.createElement(wt,null))))}nr.propTypes={children:Ze().element,isLeftBarCollapsed:Ze().bool,isRightBarCollapsed:Ze().bool,selectedId:Ze().string,toggleLeftBar:Ze().func.isRequired,toggleRightBar:Ze().func.isRequired,editorMode:Ze().string.isRequired,setEditorMode:Ze().func.isRequired,leftBar:Ze().element.isRequired,rightBar:Ze().element.isRequired},nr.defaultProps={isLeftBarCollapsed:!1,isRightBarCollapsed:!1};const or=nr,ir=(0,Ye.$j)((function(e){return{editorMode:C(e),isLeftBarCollapsed:O(e),isRightBarCollapsed:S(e),selectedId:j(e)}}),{toggleLeftBar:function(){return Ae(w)},toggleRightBar:function(){return Ae(E)},setEditorMode:ot})(or);r("w2zd"),r("rAp7"),r("Wu5x"),r("+NTm");var ar=r("etrl"),cr=(r("kOxM"),r("6wwy")),lr=r("KO9H"),ur=r("r5Lg");function sr(e){return sr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},sr(e)}function pr(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function fr(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{},arguments.length>2&&void 0!==arguments[2]&&arguments[2],"html")}function yr(e,t,r,n){if(r)switch(t.chartFormat){case"chordmark":var o=hr(e,t);return"html"===n?o:vr(o);case"chordmarkSrc":return"html"===n?gr(e):e;case"chordpro":t.customRenderer=(0,Nt.n1)();var i=hr(e,t);return"html"===n?gr(i):i;case"ultimateGuitar":t.customRenderer=(0,Nt.eE)();var a=hr(e,fr(fr({},t),{},{customRenderer:(0,Nt.eE)(),printBarSeparators:"grids",printChordsDuration:"never",printSubBeatDelimiters:!1,printInlineTimeSignatures:!1,chordSymbolRenderer:(0,lr.v)(fr({customFilters:[(0,ur.Z)()],useShortNamings:!0,accidentalsType:"auto"===t.accidentalsType?"original":t.accidentalsType},t))}))+"\n\nCreated with Chord Chart Studio (https://chord-chart-studio.netlify.app)";return"html"===n?gr(a):a}var c=hr(e,fr(fr({},t),{},{wrapChordLyricLines:!0}));return"html"===n?c:vr(c)}function hr(e,t){try{var r=(0,cr.TG)(e);return(0,cr.II)(r,fr({},t))}catch(e){return e.message}}function gr(e){return e.split("\n").map((function(e){return""===e?" ":e})).map((function(e){return''.concat(e,"")})).join("")}function vr(e){return e.match(/(.*?<\/p>)/gm).map((function(e){return Ee(e)})).map((function(e){return" "===e?"":e})).join("\n")}function br(){var e=Me().getState(),t=j(e),r=z(e,t),n={chartFormat:te(e,"editorPreferences","chartFormat"),transposeValue:te(e,"songPreferences","transposeValue"),accidentalsType:te(e,"songPreferences","accidentalsType"),symbolType:te(e,"songPreferences","symbolType"),chartType:te(e,"songFormatting","chartType"),alignChordsWithLyrics:te(e,"songFormatting","alignChordsWithLyrics"),alignBars:te(e,"songFormatting","alignBars"),autoRepeatChords:te(e,"songFormatting","autoRepeatChords"),expandSectionCopy:te(e,"songFormatting","expandSectionCopy")},o=function(e){return yr(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},arguments.length>2&&void 0!==arguments[2]&&arguments[2],"text")}(r.content,n,!0),i="chordpro"===n.chartFormat?"cho":"txt",a="".concat(r.title,".").concat(i),c=new Blob([o],{type:"text/plain;charset=utf-8",endings:"native"});(0,ar.saveAs)(c,a)}function wr(e){var t=e.confirmAction,r=e.confirmTitle,n=void 0===r?"OK":r,o=e.cancelAction,i=e.cancelTitle,a=void 0===i?"CANCEL":i,c=e.children;return Ke.createElement(Tt,{closeModal:o},Ke.createElement("section",{className:"mod-ModalConfirmContainer"},Ke.createElement("div",{className:"mod-ModalConfirmMessage"},c),Ke.createElement("div",{className:"mod-ModalConfirmButtons"},Ke.createElement(ht,{onClick:o,type:"secondary",buttonName:"cancel"},a),Ke.createElement(ht,{onClick:t,type:"primary",buttonName:"confirm"},n))))}wr.propTypes={confirmAction:Ze().func.isRequired,confirmTitle:Ze().string,cancelAction:Ze().func.isRequired,cancelTitle:Ze().string,children:Ze().node.isRequired};const Er=wr;function Or(e){var t=e.selected,r=e.deleteFile,n=e.isDeleting,o=e.setIsDeleting;if(!n)return null;return Ke.createElement(Er,{confirmAction:function(){o(!1),r(t)},confirmTitle:"DELETE",cancelAction:function(){return o(!1)}},"Are you sure you want to delete this file?",Ke.createElement("br",null),"This action cannot be undone.")}Or.propTypes={deleteFile:Ze().func.isRequired,isDeleting:Ze().bool.isRequired,selected:Ze().string.isRequired,setIsDeleting:Ze().func.isRequired};const Sr=Or;function Cr(e){var t=e.icon,r=e.text,n=e.action,o=e.isDisabled,i=["fileManagerAction"];o&&i.push("fileManagerAction-isDisabled");return Ke.createElement("span",{className:i.join(" "),onClick:function(){o||n()}},Ke.createElement("span",{className:"fileManagerAction-icon"},Ke.createElement(ut,{iconName:t})," ",r))}Cr.propTypes={icon:Ze().string.isRequired,text:Ze().string.isRequired,action:Ze().func.isRequired,isDisabled:Ze().bool.isRequired};const jr=Ke.memo(Cr);function Pr(){return Pr=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);re.length)&&(t=e.length);for(var r=0,n=new Array(t);r1&&void 0!==arguments[1]?arguments[1]:"";if(!e)throw new TypeError("Cannot create a file without title");var r={id:(0,Et.Z)(),title:e,content:t};return Ae(m,r)},deleteFile:function(e){return Ae(y,{id:e})},updateFile:St,enableRename:function(e){return Ae(ee,{id:e})},setEditorMode:ot,startImport:function(){return Ae(he,{isFromWeb:!1})}})(Ir);var Ar=r("cjrE");function Dr(e){return we().sanitize(e)}function Br(e){var t=e.content,r=e.useChartFormat,n=mr(t,f()(e,["chartFormat","transposeValue","accidentalsType","symbolType","chartType","alignChordsWithLyrics","alignBars","autoRepeatChords","expandSectionCopy"]),r);return Ke.createElement("div",{className:"songRenderer"},Ke.createElement("div",{dangerouslySetInnerHTML:{__html:Dr(n)}}))}Br.propTypes={useChartFormat:Ze().bool.isRequired,chartFormat:Ze().string.isRequired,content:Ze().string},Br.defaultProps={content:"",useChartFormat:!1};const Wr=Br,Gr=(0,Ye.$j)((function(e){return{transposeValue:te(e,"songPreferences","transposeValue"),accidentalsType:te(e,"songPreferences","preferredAccidentals"),symbolType:te(e,"songPreferences","symbolType"),chartFormat:te(e,"editorPreferences","chartFormat"),chartType:te(e,"songFormatting","chartType"),alignChordsWithLyrics:te(e,"songFormatting","alignChordsWithLyrics"),alignBars:te(e,"songFormatting","alignBars"),autoRepeatChords:te(e,"songFormatting","autoRepeatChords"),expandSectionCopy:te(e,"songFormatting","expandSectionCopy")}}))(Wr);function zr(e){var t=e.selectedFile;return Ke.createElement("div",{className:["editorPreview"].join(" ")},Ke.createElement(Gr,{content:t.content}))}zr.propTypes={selectedFile:Ze().object.isRequired};const Hr=zr;var Vr=r("zO92"),Kr=r("0ozO"),$r=r("7DR6"),Yr=r("/FSr"),Ur=r("yCjR"),Zr=r("S7pA");const Jr=new $r.V_({nodes:{doc:{content:"block+"},paragraph:{content:"inline*",group:"block",parseDOM:[{tag:"p"}],toDOM:function(){return["p",0]}},hard_break:{inline:!0,group:"inline",selectable:!1,parseDOM:[{tag:"br"}],toDOM:function(){return["br"]}},text:{group:"inline"}}});r("l1U5");function Qr(e){return e.toJSON().doc.content.map((function(e){return e.content?e.content.reduce((function(e,t){return e+=t.text||"\n"}),""):""})).join("\n")}function Xr(e){return we().sanitize(e,{ALLOWED_TAGS:["p","#text"],KEEP_CONTENT:!1})}r("pBna");function en(e){var t,r,n=e.selectedFileId,o=e.editorContent,i=e.updateFile,a=(0,Ke.useRef)(),c=(0,Ke.useRef)(),l=(t=n,r=(0,Ke.useRef)(),(0,Ke.useEffect)((function(){r.current=t})),r.current);function u(){return a.current&&a.current.dom.parentNode}function s(){a.current.dom.parentNode.removeChild(a.current.dom)}return(0,Ke.useEffect)((function(){if(!n||a.current&&l===n)u()&&!n&&s();else{u()&&s();var e=function(e){return Vr.yy.create({doc:$r.aw.fromSchema(Jr).parse((t=e,r=Xr(t).split("\n").map((function(e){return"

    ".concat(e,"

    ")})).join(""),n=document.createElement("div"),n.innerHTML=Xr(r),n),{preserveWhitespace:"full"}),plugins:[(0,Zr.m8)(),(0,Yr.h)({"Mod-z":Zr.Yw,"Mod-y":Zr.KX}),(0,Yr.h)(Ur.YR)]});var t,r,n}(o);a.current=function(e,t,r){return new Kr.tk(null,{state:e,dispatchTransaction:function(e){var n=this.state.applyTransaction(e),o=n.state,i=n.transactions;this.updateState(o),i.some((function(e){return e.docChanged}))&&t(r,{content:Qr(o)})}})}(e,i,n),c.current.appendChild(a.current.dom),en.editorView=a.current}})),Ke.createElement("div",{className:"prosemirrorWrapper",ref:c})}en.defaultProps={selectedFileId:"",editorContent:""},en.propTypes={selectedFileId:Ze().string,editorContent:Ze().string,updateFile:Ze().func.isRequired};const tn=en;function rn(e){var t=e.selectedFile,r=e.updateFile,n=["songEditor-preview","cmTheme-"+e.theme,"cmTheme-fadeRepeats"];return Ke.createElement(Ke.Fragment,null,Ke.createElement("div",{className:"songEditor-headers"},Ke.createElement("div",{className:"songEditor-sourceHeader"},Ke.createElement(ut,{iconName:"arrow_drop_down"}),"ChordMark source (",Ke.createElement("a",{href:"https://chordmark.netlify.app/docs/getting-started",target:"_blank",rel:"noreferrer",className:"link1"},"tutorial"),")",Ke.createElement(ut,{iconName:"arrow_drop_down"})),Ke.createElement("div",{className:"songEditor-previewHeader"},Ke.createElement(ut,{iconName:"arrow_drop_down"}),"Result preview",Ke.createElement(ut,{iconName:"arrow_drop_down"}))),Ke.createElement(Ar.E,null,Ke.createElement("div",{className:"songEditor"},Ke.createElement(Ar.z,{group:"a"},Ke.createElement("div",{className:"songEditor-source"},Ke.createElement(tn,{editorContent:t.content,updateFile:r,selectedFileId:t.id}))),Ke.createElement(Ar.z,{group:"a"},Ke.createElement("div",{className:n.join(" ")},Ke.createElement(Hr,{selectedFile:t}))))))}rn.propTypes={selectedFile:Ze().object,theme:Ze().string.isRequired,updateFile:Ze().func.isRequired};const nn=rn,on=(0,Ye.$j)((function(e){return{theme:te(e,"editorPreferences","theme")}}))(nn);function an(e){var t=e.selectedFile,r=Ke.createRef(),n=function(e){(e.metaKey||e.ctrlKey)&&"a"===e.key.toLowerCase()&&(e.preventDefault(),window.getSelection().selectAllChildren(r.current))};return(0,Ke.useEffect)((function(){return window.addEventListener("keydown",n),function(){window.removeEventListener("keydown",n)}})),Ke.createElement("div",{className:"exportPreview exp-SongRenderer",ref:r},Ke.createElement(Gr,{content:t.content,useChartFormat:!0}))}an.propTypes={selectedFile:Ze().object.isRequired};const cn=an;function ln(e){var t=e.theme,r=e.selectedFile,n=e.fontSize,o=e.columnsCount,i=["playRendererWrapper1"];i.push("cmTheme-"+t),i.push("cmSong--fontSize"+n);var a=["playRenderer"];return a.push("playRenderer--columns-"+o),Ke.createElement("div",{className:i.join(" "),"data-testid":"playRendererWrapper1"},Ke.createElement("div",{className:"playRendererWrapper2"},Ke.createElement("div",{className:a.join(" "),"data-testid":"playRenderer"},Ke.createElement(Gr,{content:r.content}))))}ln.propTypes={theme:Ze().string.isRequired,fontSize:Ze().number.isRequired,selectedFile:Ze().object.isRequired,columnsCount:Ze().number.isRequired};const un=ln,sn=(0,Ye.$j)((function(e){return{theme:te(e,"editorPreferences","theme"),fontSize:te(e,"songFormatting","fontSize"),columnsCount:te(e,"songFormatting","columnsCount")}}))(un);r("8Ldw"),r("CQOB"),r("YQos"),r("C7IK");function pn(e){var t=e.pageHeader,r=e.allColumnsLines,n=e.documentSize,o=e.documentMargins,i=e.fontSize,a=r.map((function(e,t){var r=e.join("");return Ke.createElement("div",{key:t,className:"printPreview-pageColumn","data-testid":"printPreview-pageColumn",dangerouslySetInnerHTML:{__html:Dr(r)}})})),c=["printPreview-page"];c.push("printPreview-page--"+n),c.push("cmSong--fontSize"+i),c.push("cmSong");var l=["printPreview-pageContentWrapper"];return l.push("printPreview-pageContentWrapper--padding"+o),Ke.createElement("div",{className:c.join(" "),"data-testid":"printPreview-page"},Ke.createElement("div",{className:l.join(" "),"data-testid":"printPreview-pageContentWrapper"},Ke.createElement("div",{className:"printPreview-pageContent"},t,Ke.createElement("div",{className:"printPreview-pageColumnWrapper"},a))))}pn.defaultProps={allColumnsLines:[]},pn.propTypes={pageHeader:Ze().element,allColumnsLines:Ze().arrayOf(Ze().arrayOf(Ze().string)),documentSize:Ze().string.isRequired,documentMargins:Ze().number.isRequired,fontSize:Ze().number.isRequired};const fn=Ke.memo(pn);function dn(e){var t=e.title;return Ke.createElement("div",{className:"printPreview-pageHeader"},t)}dn.defaultProps={allColumnsLines:[]},dn.propTypes={title:Ze().string.isRequired};const mn=Ke.memo(dn);var yn={emptyLine:"cmEmptyLine",chordLine:"cmChordLine",textLine:"cmLyricLine"};function hn(e,t){var r=t.columnsCount,n=t.firstPageHeight,o=t.normalPageHeight,i=t.columnBreakOnSection,a=t.noEmptyLinesOnColumnStart,c=void 0===a||a,l=t.noOrphanTextLine,u=void 0===l||l,s=function(e){var t=e.firstPageHeight,r=e.normalPageHeight,n=e.columnsCount,o=[],i=0,a=0,c=s(),l=0;function u(e){e.forEach((function(e){p(l+e.height)&&f(),o[i][a].push(e.content),l+=e.height}))}function s(){return 0===i&&t?t:r}function p(e){return e>c}function f(){d()?(i++,o[i]=[],a=0):a++,o[i][a]=[],l=0,c=s()}function d(){return a===n-1}return o[i]=[],o[i][a]=[],{insert:function(e){u(e)},insertOnNextColumn:function(e){f(),u(e)},fitsOnCurrentColumn:function(e){return l+e<=c},fitsOnNextColumn:function(e){return e<=(0===i&&a0&&e.forEach((function(t,r){(function(e,t,r,n){return!(gn(t)&&!e.fitsOnCurrentColumn(t.height)&&0===r.length&&!0===n)})(s,t,p,c)&&(p.push(t),f+=t.height),p.length>0&&function(e,t,r){var n=r.noOrphanTextLine,o=r.columnBreakOnSection;if(gn(e)||!t)return!0;var i=function(e){return vn(e.content,yn.chordLine)}(e)&&function(e){return vn(e.content,yn.textLine)}(t);if(!0===n&&i)return!1;var a=gn(t);if(!0===o&&!a)return!1;return!0}(t,e[r+1],{noOrphanTextLine:u,columnBreakOnSection:i})&&(s.fitsOnCurrentColumn(f)?s.insert(p):s.fitsOnNextColumn(f)?s.insertOnNextColumn(p):s.insert(p),p=[],f=0)})),s.get()}function gn(e){return vn(e.content,yn.emptyLine)}function vn(e,t){return e.indexOf(t)>-1}function bn(e,t){var r=document.createElement("div");r.classList.add("measuring-node"),document.body.appendChild(r);var n=(0,$e.s)(r);return new Promise((function(o){var i=function(){return(0,Ke.useLayoutEffect)((function(){var e=t(r);o(e)})),Ke.createElement("div",null,e)};n.render(Ke.createElement(i,null))})).then((function(e){return n.unmount(),r.parentNode.removeChild(r),e}))}function wn(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=t.length||0;r=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var l=n.call(a,"catchLoc"),u=n.call(a,"finallyLoc");if(l&&u){if(this.prev=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),N(r),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;N(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:T(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),h}},t}function Cn(e,t,r,n,o,i,a){try{var c=e[i](a),l=c.value}catch(e){return void r(e)}c.done?t(l):Promise.resolve(l).then(n,o)}var jn={line:".cmLine"};function Pn(e,t){return Rn.apply(this,arguments)}function Rn(){var e;return e=Sn().mark((function e(t,r){var n,o,i,a,c,l;return Sn().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.columnsCount,o=r.documentSize,i=r.documentMargins,a=r.fontSize,c=Ke.createElement("div",{className:"printPreview cmTheme-print"},Ke.createElement(fn,{allColumnsLines:wn(n,[t]),columnsCount:n,documentSize:o,documentMargins:i,fontSize:a})),l=function(e){var t=[];return e.querySelectorAll(jn.line).forEach((function(e){t.push(e.offsetHeight)})),t},e.next=5,bn(c,l);case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e)})),Rn=function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Cn(i,n,o,a,c,"next",e)}function c(e){Cn(i,n,o,a,c,"throw",e)}a(void 0)}))},Rn.apply(this,arguments)}function Fn(e){return Fn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Fn(e)}function Nn(){Nn=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",l=i.toStringTag||"@@toStringTag";function u(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,r){return e[t]=r}}function s(e,t,r,n){var i=t&&t.prototype instanceof g?t:g,a=Object.create(i.prototype),c=new x(n||[]);return o(a,"_invoke",{value:P(e,r,c)}),a}function p(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=s;var f="suspendedStart",d="suspendedYield",m="executing",y="completed",h={};function g(){}function v(){}function b(){}var w={};u(w,a,(function(){return this}));var E=Object.getPrototypeOf,O=E&&E(E(T([])));O&&O!==r&&n.call(O,a)&&(w=O);var S=b.prototype=g.prototype=Object.create(w);function C(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function j(e,t){function r(o,i,a,c){var l=p(e[o],e,i);if("throw"!==l.type){var u=l.arg,s=u.value;return s&&"object"==Fn(s)&&n.call(s,"__await")?t.resolve(s.__await).then((function(e){r("next",e,a,c)}),(function(e){r("throw",e,a,c)})):t.resolve(s).then((function(e){u.value=e,a(u)}),(function(e){return r("throw",e,a,c)}))}c(l.arg)}var i;o(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,o){r(e,n,t,o)}))}return i=i?i.then(o,o):o()}})}function P(t,r,n){var o=f;return function(i,a){if(o===m)throw new Error("Generator is already running");if(o===y){if("throw"===i)throw a;return{value:e,done:!0}}for(n.method=i,n.arg=a;;){var c=n.delegate;if(c){var l=R(c,n);if(l){if(l===h)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===f)throw o=y,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=m;var u=p(t,r,n);if("normal"===u.type){if(o=n.done?y:d,u.arg===h)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o=y,n.method="throw",n.arg=u.arg)}}}function R(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,R(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),h;var i=p(o,t.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,h;var a=i.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,h):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,h)}function F(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function N(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(F,this),this.reset(!0)}function T(t){if(t||""===t){var r=t[a];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,i=function r(){for(;++o=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var l=n.call(a,"catchLoc"),u=n.call(a,"finallyLoc");if(l&&u){if(this.prev=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),N(r),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;N(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:T(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),h}},t}function xn(e,t,r,n,o,i,a){try{var c=e[i](a),l=c.value}catch(e){return void r(e)}c.done?t(l):Promise.resolve(l).then(n,o)}function Tn(e,t){return kn.apply(this,arguments)}function kn(){var e;return e=Nn().mark((function e(t,r){var n,o,i,a,c,l;return Nn().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.columnsCount,o=r.documentSize,i=r.documentMargins,a=r.fontSize,c=Ke.createElement(fn,{pageHeader:Ke.createElement(mn,{title:t}),allColumnsLines:wn(n),documentSize:o,documentMargins:i,fontSize:a}),l=function(e){var t=e.querySelector(".printPreview-pageContent");return{firstPageHeight:En(e.querySelector(".printPreview-pageColumnWrapper")),normalPageHeight:En(t)}},e.next=5,bn(c,l);case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e)})),kn=function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){xn(i,n,o,a,c,"next",e)}function c(e){xn(i,n,o,a,c,"throw",e)}a(void 0)}))},kn.apply(this,arguments)}function Ln(e){return Ln="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ln(e)}function _n(){_n=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",l=i.toStringTag||"@@toStringTag";function u(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,r){return e[t]=r}}function s(e,t,r,n){var i=t&&t.prototype instanceof g?t:g,a=Object.create(i.prototype),c=new x(n||[]);return o(a,"_invoke",{value:P(e,r,c)}),a}function p(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=s;var f="suspendedStart",d="suspendedYield",m="executing",y="completed",h={};function g(){}function v(){}function b(){}var w={};u(w,a,(function(){return this}));var E=Object.getPrototypeOf,O=E&&E(E(T([])));O&&O!==r&&n.call(O,a)&&(w=O);var S=b.prototype=g.prototype=Object.create(w);function C(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function j(e,t){function r(o,i,a,c){var l=p(e[o],e,i);if("throw"!==l.type){var u=l.arg,s=u.value;return s&&"object"==Ln(s)&&n.call(s,"__await")?t.resolve(s.__await).then((function(e){r("next",e,a,c)}),(function(e){r("throw",e,a,c)})):t.resolve(s).then((function(e){u.value=e,a(u)}),(function(e){return r("throw",e,a,c)}))}c(l.arg)}var i;o(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,o){r(e,n,t,o)}))}return i=i?i.then(o,o):o()}})}function P(t,r,n){var o=f;return function(i,a){if(o===m)throw new Error("Generator is already running");if(o===y){if("throw"===i)throw a;return{value:e,done:!0}}for(n.method=i,n.arg=a;;){var c=n.delegate;if(c){var l=R(c,n);if(l){if(l===h)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===f)throw o=y,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=m;var u=p(t,r,n);if("normal"===u.type){if(o=n.done?y:d,u.arg===h)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o=y,n.method="throw",n.arg=u.arg)}}}function R(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,R(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),h;var i=p(o,t.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,h;var a=i.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,h):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,h)}function F(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function N(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(F,this),this.reset(!0)}function T(t){if(t||""===t){var r=t[a];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,i=function r(){for(;++o=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var l=n.call(a,"catchLoc"),u=n.call(a,"finallyLoc");if(l&&u){if(this.prev=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),N(r),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;N(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:T(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),h}},t}function qn(e,t,r,n,o,i,a){try{var c=e[i](a),l=c.value}catch(e){return void r(e)}c.done?t(l):Promise.resolve(l).then(n,o)}function In(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,c=[],l=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=i.call(r)).done)&&(c.push(n.value),c.length!==t);l=!0);}catch(e){u=!0,o=e}finally{try{if(!l&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return c}}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Mn(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Mn(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Mn(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r.*?<\/p>)/gm);return Ke.createElement("div",{className:["printPreview","cmTheme-print"].join(" "),"data-testid":"printPreview"},Ke.createElement(Dn,{title:t.title||"",allLines:o,columnsCount:e.columnsCount,columnBreakOnSection:e.columnBreakOnSection,documentSize:e.documentSize||"a4",documentMargins:e.documentMargins,fontSize:e.fontSize}))}zn.propTypes={chartType:Ze().string.isRequired,selectedFile:Ze().object.isRequired,columnsCount:Ze().number.isRequired,columnBreakOnSection:Ze().bool.isRequired,documentSize:Ze().string,documentMargins:Ze().number.isRequired,fontSize:Ze().number.isRequired};const Hn=zn,Vn=(0,Ye.$j)((function(e){return{accidentalsType:te(e,"songPreferences","preferredAccidentals"),transposeValue:te(e,"songPreferences","transposeValue"),symbolType:te(e,"songPreferences","symbolType"),chartType:te(e,"songFormatting","chartType"),alignChordsWithLyrics:te(e,"songFormatting","alignChordsWithLyrics"),alignBars:te(e,"songFormatting","alignBars"),autoRepeatChords:te(e,"songFormatting","autoRepeatChords"),expandSectionCopy:te(e,"songFormatting","expandSectionCopy"),columnsCount:te(e,"songFormatting","columnsCount"),columnBreakOnSection:te(e,"songFormatting","columnBreakOnSection"),documentMargins:te(e,"songFormatting","documentMargins"),fontSize:te(e,"songFormatting","fontSize")}}))(Hn);function Kn(e){switch(e.editorMode){case"edit":return Ke.createElement(on,e);case"play":return Ke.createElement(sn,e);case"print":return Ke.createElement(Vn,e);case"export":return Ke.createElement(cn,e)}}Kn.propTypes={editorMode:Ze().string.isRequired};const $n=Kn,Yn=(0,Ye.$j)((function(e){return{selectedFile:z(e,j(e))||{},editorMode:C(e)}}),{updateFile:St})($n);r("iGaR");function Un(){return Un=Object.assign?Object.assign.bind():function(e){for(var t=1;t0||o.push("sb-optionsGroup-isNotInteractable"),Ke.createElement("div",{className:o.join(" ")},Ke.createElement("div",{className:"sb-optionsGroup-title"},Ke.createElement("span",{className:"sb-optionsGroup-iconTitle"},Ke.createElement(ut,{iconName:r}))," ",n),Ke.createElement("div",{className:"sb-optionsGroup-content"},e.children))}Qn.propTypes={isInteractable:Ze().bool.isRequired,icon:Ze().string.isRequired,label:Ze().string.isRequired,children:Ze().arrayOf(Ze().element)},Qn.defaultProps={};const Xn=Qn;r("6uNR");function eo(e){var t,r=e.isSelected,n=e.isInteractable,o=e.label,i=e.onClick,a=["sb-optionSelectChoice"];return r&&(a.push("sb-optionSelectChoice-isSelected"),t=Ke.createElement("span",{className:"sb-optionSelectChoice-checkIcon"},Ke.createElement(ut,{iconName:"check"}))),n||a.push("sb-optionSelectChoice-isNotInteractable"),Ke.createElement("div",{className:a.join(" "),onClick:function(){n&&i()}},Ke.createElement("div",{className:"sb-optionSelectChoice-check"},r&&t),Ke.createElement("div",{className:"sb-optionSelectChoice-label"},o))}eo.propTypes={isSelected:Ze().bool.isRequired,isInteractable:Ze().bool.isRequired,label:Ze().string.isRequired,onClick:Ze().func.isRequired};const to=Ke.memo(eo);function ro(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,c=[],l=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=i.call(r)).done)&&(c.push(n.value),c.length!==t);l=!0);}catch(e){u=!0,o=e}finally{try{if(!l&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return c}}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return no(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return no(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function no(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&i?"+"+l:l;return Ke.createElement("div",{className:s.join(" ")},Ke.createElement("div",{className:"sb-optionSlider-desc"},r),Ke.createElement("div",{className:"sb-optionSlider-value"},p),Ke.createElement("div",{className:"sb-optionSlider-range"},Ke.createElement("input",{min:n,max:o,value:l,type:"range",onChange:t?function(e){u(a,c,Number.parseInt(e.target.value))}:null,disabled:!t})))}ao.propTypes={isInteractable:Ze().bool.isRequired,label:Ze().string.isRequired,min:Ze().number.isRequired,max:Ze().number.isRequired,showPlusSymbol:Ze().bool,optionContext:Ze().string.isRequired,optionKey:Ze().string.isRequired,optionValue:Ze().number.isRequired,setOption:Ze().func.isRequired},ao.defaultProps={showPlusSymbol:!0};const co=Ke.memo(ao);function lo(e){var t=e.isInteractable,r=e.label,n=e.optionContext,o=e.optionKey,i=e.optionValue,a=e.setOption,c=["sb-optionToggle"];return c.push(!0===i?"sb-optionToggle-isOn":"sb-optionToggle-isOff"),t||c.push("sb-optionToggle-isNotInteractable"),Ke.createElement("div",{className:c.join(" "),onClick:t?function(){a(n,o,!i)}:null},Ke.createElement("div",{className:"sb-optionToggle-desc"},r),Ke.createElement("div",{className:"sb-optionToggle-icon"},Ke.createElement("span",{className:"sb-optionToggle-icon"},Ke.createElement(ut,{iconName:!0===i?"toggle_on":"toggle_off"}))))}lo.propTypes={isInteractable:Ze().bool.isRequired,label:Ze().string.isRequired,optionContext:Ze().string.isRequired,optionKey:Ze().string.isRequired,optionValue:Ze().bool.isRequired,setOption:Ze().func.isRequired};const uo=Ke.memo(lo);function so(){return so=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r{if(!r){var a=1/0;for(s=0;s=i)&&Object.keys(n.O).every((e=>n.O[e](r[l])))?r.splice(l--,1):(c=!1,i0&&e[s-1][2]>i;s--)e[s]=e[s-1];e[s]=[r,o,i]},n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{var e;n.g.importScripts&&(e=n.g.location+"");var t=n.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");if(r.length)for(var o=r.length-1;o>-1&&!e;)e=r[o--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),n.p=e})(),(()=>{var e={179:0};n.O.j=t=>0===e[t];var t=(t,r)=>{var o,i,[a,c,l]=r,u=0;if(a.some((t=>0!==e[t]))){for(o in c)n.o(c,o)&&(n.m[o]=c[o]);if(l)var s=l(n)}for(t&&t(r);un("TBfH")));o=n.O(o)})(); +//# sourceMappingURL=main.99948aaa068d066cd116.js.map \ No newline at end of file diff --git a/packages/chord-chart-studio/build/main.654483bc9469d682fc7c.js.LICENSE.txt b/packages/chord-chart-studio/build/main.99948aaa068d066cd116.js.LICENSE.txt similarity index 100% rename from packages/chord-chart-studio/build/main.654483bc9469d682fc7c.js.LICENSE.txt rename to packages/chord-chart-studio/build/main.99948aaa068d066cd116.js.LICENSE.txt diff --git a/packages/chord-chart-studio/build/main.99948aaa068d066cd116.js.map b/packages/chord-chart-studio/build/main.99948aaa068d066cd116.js.map new file mode 100644 index 00000000..60ba3d15 --- /dev/null +++ b/packages/chord-chart-studio/build/main.99948aaa068d066cd116.js.map @@ -0,0 +1 @@ +{"version":3,"file":"main.99948aaa068d066cd116.js","mappings":"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","sources":["webpack://chord-chart-studio/webpack/runtime/chunk loaded","webpack://chord-chart-studio/./src/state/localStorage.js","webpack://chord-chart-studio/./src/core/clock.js","webpack://chord-chart-studio/./src/db/files/actionsTypes.js","webpack://chord-chart-studio/./src/db/options/actionsTypes.js","webpack://chord-chart-studio/./src/ui/layout/app/_state/actionsTypes.js","webpack://chord-chart-studio/./src/ui/layout/app/_state/selectors.js","webpack://chord-chart-studio/./src/fileManager/_state/selectors.js","webpack://chord-chart-studio/./src/db/files/selectors.js","webpack://chord-chart-studio/./src/db/options/editorModeOptions.js","webpack://chord-chart-studio/./src/db/files/reducers.js","webpack://chord-chart-studio/./src/fileManager/_state/actionsTypes.js","webpack://chord-chart-studio/./src/db/options/selectors.js","webpack://chord-chart-studio/./src/db/options/reducers.js","webpack://chord-chart-studio/./src/db/reducers.js","webpack://chord-chart-studio/./src/fileManager/_state/reducers.js","webpack://chord-chart-studio/./src/songImporter/_state/actionsTypes.js","webpack://chord-chart-studio/./src/core/stripTags.js","webpack://chord-chart-studio/./src/songImporter/_state/reducers.js","webpack://chord-chart-studio/./src/ui/layout/app/_state/reducers.js","webpack://chord-chart-studio/./src/ui/layout/reducers.js","webpack://chord-chart-studio/./src/ui/reducers.js","webpack://chord-chart-studio/./src/state/reducers.js","webpack://chord-chart-studio/./src/state/seed.js","webpack://chord-chart-studio/./src/db/seed.js","webpack://chord-chart-studio/./src/db/options/seed.js","webpack://chord-chart-studio/./src/state/store.js","webpack://chord-chart-studio/./src/core/createAction.js","webpack://chord-chart-studio/./src/songImporter/_state/actions.js","webpack://chord-chart-studio/./src/songImporter/getMessageHandlers.js","webpack://chord-chart-studio/./src/registerHandlers.js","webpack://chord-chart-studio/./src/ui/_components/ErrorBoundary.js","webpack://chord-chart-studio/./src/ui/layout/app/_state/actions.js","webpack://chord-chart-studio/./src/ui/sideBar/_components/Logo.js","webpack://chord-chart-studio/./src/ui/_components/Icon.js","webpack://chord-chart-studio/./src/ui/layout/app/_components/NavEntry.js","webpack://chord-chart-studio/./src/ui/layout/app/_components/Nav.js","webpack://chord-chart-studio/./src/ui/_components/Button.js","webpack://chord-chart-studio/./src/ui/sideBar/_components/UserGuide.js","webpack://chord-chart-studio/./src/ui/sideBar/_components/Versions.js","webpack://chord-chart-studio/./src/core/getVersions.js","webpack://chord-chart-studio/./src/db/files/actions.js","webpack://chord-chart-studio/./src/songImporter/_state/selectors.js","webpack://chord-chart-studio/./src/ui/_components/Modal.js","webpack://chord-chart-studio/./src/songImporter/_components/Header.js","webpack://chord-chart-studio/./src/songImporter/getUploadedFile.js","webpack://chord-chart-studio/./src/songImporter/_components/FilePicker.js","webpack://chord-chart-studio/./src/songImporter/_components/Input.js","webpack://chord-chart-studio/./src/songImporter/_components/PreviewError.js","webpack://chord-chart-studio/./src/songImporter/_components/InputFormatEntry.js","webpack://chord-chart-studio/./src/songImporter/_components/InputFormatSelector.js","webpack://chord-chart-studio/./src/songImporter/_components/SongImporter.js","webpack://chord-chart-studio/./src/songImporter/_containers/SongImporter.js","webpack://chord-chart-studio/./src/ui/layout/app/allNavEntries.js","webpack://chord-chart-studio/./src/ui/layout/app/_components/App.js","webpack://chord-chart-studio/./src/ui/layout/app/_containers/App.js","webpack://chord-chart-studio/./src/fileManager/_state/actions.js","webpack://chord-chart-studio/./src/core/renderSong.js","webpack://chord-chart-studio/./src/fileManager/exportSelectedFileAsText.js","webpack://chord-chart-studio/./src/ui/_components/ModalConfirm.js","webpack://chord-chart-studio/./src/fileManager/_components/DeleteConfirmModal.js","webpack://chord-chart-studio/./src/fileManager/_components/FileActionEntry.js","webpack://chord-chart-studio/./src/fileManager/_components/FileActions.js","webpack://chord-chart-studio/./src/fileManager/_components/FileEntry.js","webpack://chord-chart-studio/./src/fileManager/_components/FileManager.js","webpack://chord-chart-studio/./src/fileManager/_containers/FileManager.js","webpack://chord-chart-studio/./src/core/escapeHTML.js","webpack://chord-chart-studio/./src/songRenderers/_components/SongRenderer.js","webpack://chord-chart-studio/./src/songRenderers/_containers/SongRenderer.js","webpack://chord-chart-studio/./src/songRenderers/editorPreview/_components/EditorPreview.js","webpack://chord-chart-studio/./src/editor/songEditor/prosemirror/schema.js","webpack://chord-chart-studio/./src/editor/songEditor/prosemirror/converters/stateToText.js","webpack://chord-chart-studio/./src/editor/songEditor/prosemirror/converters/toSafeHtml.js","webpack://chord-chart-studio/./src/editor/songEditor/prosemirror/ProsemirrorEditorView.js","webpack://chord-chart-studio/./src/editor/songEditor/prosemirror/converters/textToDom.js","webpack://chord-chart-studio/./src/editor/songEditor/prosemirror/getPlugins.js","webpack://chord-chart-studio/./src/editor/songEditor/_components/EditorLayout.js","webpack://chord-chart-studio/./src/editor/songEditor/_containers/EditorLayout.js","webpack://chord-chart-studio/./src/songRenderers/exportPreview/_components/ExportPreview.js","webpack://chord-chart-studio/./src/songRenderers/playRenderer/_components/PlayRenderer.js","webpack://chord-chart-studio/./src/songRenderers/playRenderer/_containers/PlayRenderer.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/_components/Page.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/_components/PageHeader.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/helpers/mapLinesToColumns.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/helpers/getDimensionsFromDom.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/helpers/padColumns.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/helpers/element.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/helpers/getAllLinesHeight.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/helpers/getPagesHeight.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/_components/AllPages.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/_components/PrintPreview.js","webpack://chord-chart-studio/./src/songRenderers/printPreview/_containers/PrintPreview.js","webpack://chord-chart-studio/./src/editor/_components/Editor.js","webpack://chord-chart-studio/./src/editor/_containers/Editor.js","webpack://chord-chart-studio/./src/optionsPanels/_components/OptionsPanel.js","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/OptionsGroup.js","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/SelectChoice.js","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/Select.js","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/Slider.js","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/Toggle.js","webpack://chord-chart-studio/./src/ui/sideBar/options/_components/SidebarOptionsPanel.js","webpack://chord-chart-studio/./src/db/options/actions.js","webpack://chord-chart-studio/./src/optionsPanels/rendering/_containers/Rendering.js","webpack://chord-chart-studio/./src/optionsPanels/_containers/OptionsPanelFactory.js","webpack://chord-chart-studio/./src/optionsPanels/rendering/allWidgets.js","webpack://chord-chart-studio/./src/optionsPanels/rendering/_state/selectors.js","webpack://chord-chart-studio/./src/optionsPanels/rendering/_components/Rendering.js","webpack://chord-chart-studio/./src/controllers/Editor.js","webpack://chord-chart-studio/./src/router.js","webpack://chord-chart-studio/./src/renderController.js","webpack://chord-chart-studio/./src/app.js","webpack://chord-chart-studio/./src/addSampleContent.js","webpack://chord-chart-studio/webpack/bootstrap","webpack://chord-chart-studio/webpack/runtime/compat get default export","webpack://chord-chart-studio/webpack/runtime/define property getters","webpack://chord-chart-studio/webpack/runtime/global","webpack://chord-chart-studio/webpack/runtime/hasOwnProperty shorthand","webpack://chord-chart-studio/webpack/runtime/node module decorator","webpack://chord-chart-studio/webpack/runtime/publicPath","webpack://chord-chart-studio/webpack/runtime/jsonp chunk loading","webpack://chord-chart-studio/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// @see https://egghead.io/lessons/javascript-redux-persisting-the-state-to-the-local-storage\n\nexport const loadState = () => {\n\ttry {\n\t\tconst serializedState = localStorage.getItem('state');\n\t\tif (!serializedState) {\n\t\t\treturn undefined;\n\t\t}\n\t\treturn JSON.parse(serializedState);\n\t} catch (err) {\n\t\treturn undefined;\n\t}\n};\n\nexport const saveState = (state) => {\n\ttry {\n\t\tconst serializedState = JSON.stringify(state);\n\t\tlocalStorage.setItem('state', serializedState);\n\t} catch (err) {\n\t\t// ignore write errors\n\t}\n};\n","export default function clock() {\n\treturn Date.now();\n}\n","export const DB_FILES_CREATE = 'db/files/Create';\nexport const DB_FILES_DELETE = 'db/files/Delete';\nexport const DB_FILES_IMPORT = 'db/files/Import';\nexport const DB_FILES_UPDATE = 'db/files/Update';\n","export const DB_OPTION_SET_OPTION_VALUE = 'db/options/setOptionValue';\n","export const UI_LAYOUT_APP_SET_EDITOR_MODE = 'ui/layout/app/setEditorMode';\nexport const UI_LAYOUT_APP_TOGGLE_LEFT_BAR = 'ui/layout/app/toggleLeftBar';\nexport const UI_LAYOUT_APP_TOGGLE_RIGHT_BAR = 'ui/layout/app/toggleRightBar';\n","export const isLeftBarCollapsed = (state) =>\n\tstate.ui.layout.app.isLeftBarCollapsed;\n\nexport const isRightBarCollapsed = (state) =>\n\tstate.ui.layout.app.isRightBarCollapsed;\n\nexport const getEditorMode = (state) => state.ui.layout.app.editorMode;\n","export const getSelectedId = (state) => state.fileManager.selected;\n\nexport const getRenamedId = (state) => state.fileManager.renamed;\n\nexport const getDefaultTitle = (state) => state.fileManager.defaultTitle;\n","import _map from 'lodash/map';\nimport _cloneDeep from 'lodash/cloneDeep';\nimport _isEqual from 'lodash/isEqual';\nimport _sortBy from 'lodash/sortBy';\n\nimport { createSelectorCreator, defaultMemoize } from 'reselect';\n\n// create a \"selector creator\" that uses lodash.isEqual instead of ===\nconst createDeepEqualSelector = createSelectorCreator(defaultMemoize, _isEqual);\n\n// return value should not change when file content changes\nexport const getAllTitles = createDeepEqualSelector(\n\t(state) =>\n\t\t_map(state.db.files.allFiles, ({ title, id }) => ({ title, id })),\n\t(allFiles) => _sortBy(allFiles, (o) => o.title.toLowerCase())\n);\n\nexport const getOne = (state, id) => {\n\treturn state.db.files.allFiles[id];\n};\n\nexport const getCategoryOptions = (state, id, category) => {\n\tconst file = state.db.files.allFiles[id];\n\n\tif (!file) return;\n\n\tif ((file.options || {})[category]) {\n\t\t// handle edge cases where we might have an empty object...\n\t\t// of course this _should_ never happen!\n\t\tif (Object.keys(file.options[category]).length === 0) return;\n\n\t\treturn _cloneDeep(file.options[category]);\n\t}\n};\n\nexport const getLatestModeOptions = (state, id) => {\n\tconst file = state.db.files.allFiles[id];\n\n\tif (!file) return;\n\n\tconst fileOptions = file.options || {};\n\n\tconst allOptionsPerMode = [];\n\tif (fileOptions.edit) allOptionsPerMode.push({ ...fileOptions.edit });\n\tif (fileOptions.play) allOptionsPerMode.push({ ...fileOptions.play });\n\tif (fileOptions.print) allOptionsPerMode.push({ ...fileOptions.print });\n\tif (fileOptions.export) allOptionsPerMode.push({ ...fileOptions.export });\n\n\tif (!allOptionsPerMode.length) return;\n\n\tallOptionsPerMode.sort((a, b) => a.updatedAt - b.updatedAt);\n\n\treturn allOptionsPerMode.reduce(\n\t\t(acc, modeOptions) => Object.assign(acc, modeOptions),\n\t\t{}\n\t);\n};\n","const editorModeOptions = {\n\tedit: ['theme', 'transposeValue', 'preferredAccidentals', 'symbolType'],\n\tplay: [\n\t\t'theme',\n\n\t\t'transposeValue',\n\t\t'preferredAccidentals',\n\t\t'symbolType',\n\n\t\t'chartType',\n\t\t'alignChordsWithLyrics',\n\t\t'alignBars',\n\t\t'autoRepeatChords',\n\t\t'expandSectionCopy',\n\n\t\t'columnsCount',\n\n\t\t'fontSize',\n\t],\n\tprint: [\n\t\t'transposeValue',\n\t\t'preferredAccidentals',\n\t\t'symbolType',\n\n\t\t'chartType',\n\t\t'alignChordsWithLyrics',\n\t\t'alignBars',\n\t\t'autoRepeatChords',\n\t\t'expandSectionCopy',\n\n\t\t'columnsCount',\n\t\t'columnBreakOnSection',\n\t\t'documentMargins',\n\n\t\t'fontSize',\n\t],\n\texport: [\n\t\t'chartFormat',\n\n\t\t'transposeValue',\n\t\t'preferredAccidentals',\n\t\t'symbolType',\n\n\t\t'chartType',\n\t\t'alignChordsWithLyrics',\n\t\t'alignBars',\n\t\t'autoRepeatChords',\n\t\t'expandSectionCopy',\n\t],\n};\n\nexport default editorModeOptions;\n","import _pick from 'lodash/pick';\nimport clock from '../../core/clock';\n\nimport * as actionTypes from './actionsTypes';\n\nimport { DB_OPTION_SET_OPTION_VALUE } from '../options/actionsTypes';\nimport { UI_LAYOUT_APP_SET_EDITOR_MODE } from '../../ui/layout/app/_state/actionsTypes';\nimport { getEditorMode } from '../../ui/layout/app/_state/selectors';\nimport { getSelectedId } from '../../fileManager/_state/selectors';\nimport { getLatestModeOptions, getCategoryOptions } from './selectors';\nimport editorModeOptions from '../options/editorModeOptions';\n\nconst initialState = {\n\tallFiles: {},\n};\n\nfunction createFile(state, action) {\n\tconst { id, title, content } = action.payload;\n\n\tconst allFiles = { ...state.allFiles };\n\tallFiles[id] = {\n\t\tid,\n\t\ttitle,\n\t\tcontent,\n\t};\n\n\treturn {\n\t\t...state,\n\t\tallFiles,\n\t};\n}\n\nfunction updateFile(state, action) {\n\tconst { id, title, content } = action.payload;\n\n\tif ((!title && typeof content === 'undefined') || !state.allFiles[id]) {\n\t\treturn state;\n\t}\n\n\tconst allFiles = { ...state.allFiles };\n\n\tallFiles[id] = { ...allFiles[id] };\n\n\tif (title) {\n\t\tallFiles[id].title = title;\n\t}\n\tif (typeof content !== 'undefined') {\n\t\tallFiles[id].content = content;\n\t}\n\treturn {\n\t\t...state,\n\t\tallFiles,\n\t};\n}\n\nfunction deleteFile(state, action) {\n\tconst { id } = action.payload;\n\n\tif (!id || !state.allFiles[id]) {\n\t\treturn state;\n\t}\n\n\tconst allFiles = { ...state.allFiles };\n\tdelete allFiles[id];\n\n\treturn {\n\t\t...state,\n\t\tallFiles,\n\t};\n}\n\n/**\n * Whenever the user set an option, we save it in the song entity, either:\n * - for the current editing mode if it is a formatting option\n * - in the preferences otherwise\n */\nfunction updateFileOption(state, action, fullState) {\n\tconst { context, key, value } = action.payload;\n\tconst id = getSelectedId(fullState);\n\tconst allFiles = { ...state.allFiles };\n\n\tif (\n\t\t['songFormatting', 'songPreferences'].includes(context) &&\n\t\tallFiles[id]\n\t) {\n\t\tconst editorMode = getEditorMode(fullState);\n\t\tconst optionCategory =\n\t\t\tcontext === 'songPreferences' ? 'preferences' : editorMode;\n\n\t\tallFiles[id] = addOption(allFiles[id], optionCategory, key, value);\n\t\treturn {\n\t\t\t...state,\n\t\t\tallFiles,\n\t\t};\n\t}\n\treturn state;\n}\n\nfunction addOption(fileState, category, key, value) {\n\treturn {\n\t\t...fileState,\n\t\toptions: {\n\t\t\t...fileState.options,\n\t\t\t[category]: {\n\t\t\t\t...(fileState.options || {})[category],\n\t\t\t\tupdatedAt: clock(),\n\t\t\t\t[key]: value,\n\t\t\t},\n\t\t},\n\t};\n}\n\n/**\n * When a user switch mode and the target mode does not have any saved settings yet,\n * we apply the latest saved settings (all modes merged) for a better user flow\n */\nfunction setEditorMode(state, action, fullState) {\n\tconst fileId = getSelectedId(fullState);\n\tconst nextMode = action.payload.mode;\n\n\tconst hasOptionsForNextMode = !!getCategoryOptions(\n\t\tfullState,\n\t\tfileId,\n\t\tnextMode\n\t);\n\n\tif (!hasOptionsForNextMode) {\n\t\tconst previousModeOptions = _pick(\n\t\t\tgetLatestModeOptions(fullState, fileId) || {},\n\t\t\teditorModeOptions[nextMode]\n\t\t);\n\n\t\tif (Object.keys(previousModeOptions).length) {\n\t\t\tpreviousModeOptions.updatedAt = clock();\n\t\t\tconst allFiles = { ...state.allFiles };\n\n\t\t\tallFiles[fileId] = {\n\t\t\t\t...allFiles[fileId],\n\t\t\t\toptions: {\n\t\t\t\t\t...allFiles[fileId].options,\n\t\t\t\t\t[nextMode]: previousModeOptions,\n\t\t\t\t},\n\t\t\t};\n\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tallFiles,\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n}\n\nexport default (state = initialState, action = {}, fullState = {}) => {\n\tswitch (action.type) {\n\t\tcase actionTypes.DB_FILES_CREATE:\n\t\tcase actionTypes.DB_FILES_IMPORT:\n\t\t\treturn createFile(state, action);\n\t\tcase actionTypes.DB_FILES_UPDATE:\n\t\t\treturn updateFile(state, action);\n\t\tcase actionTypes.DB_FILES_DELETE:\n\t\t\treturn deleteFile(state, action);\n\t\tcase DB_OPTION_SET_OPTION_VALUE:\n\t\t\treturn updateFileOption(state, action, fullState);\n\t\tcase UI_LAYOUT_APP_SET_EDITOR_MODE:\n\t\t\treturn setEditorMode(state, action, fullState);\n\t}\n\treturn state;\n};\n","export const FILE_MANAGER_SELECT_FILE = 'fileManager/select';\nexport const FILE_MANAGER_ENABLE_RENAME = 'fileManager/enableRename';\n","import _cloneDeep from 'lodash/cloneDeep';\n\nexport const getOptionValue = (state, context, key) => {\n\tif (\n\t\t!state.db.options[context] ||\n\t\t!state.db.options[context].values ||\n\t\ttypeof state.db.options[context].values[key] === 'undefined'\n\t) {\n\t\treturn;\n\t}\n\treturn state.db.options[context].values[key];\n};\n\nexport const getAllOptionValues = (state, context) => {\n\tif (!state.db.options[context] || !state.db.options[context].values) {\n\t\treturn;\n\t}\n\treturn _cloneDeep(state.db.options[context].values);\n};\n\nexport const getOptionsDefaults = (state, context) => {\n\tif (!state.db.options[context] || !state.db.options[context].defaults) {\n\t\treturn;\n\t}\n\treturn _cloneDeep(state.db.options[context].defaults);\n};\n","import _pick from 'lodash/pick';\n\nimport * as actionTypes from './actionsTypes';\nimport { getCategoryOptions, getLatestModeOptions } from '../files/selectors';\n\nimport { UI_LAYOUT_APP_SET_EDITOR_MODE } from '../../ui/layout/app/_state/actionsTypes';\nimport { FILE_MANAGER_SELECT_FILE } from '../../fileManager/_state/actionsTypes';\nimport { getSelectedId } from '../../fileManager/_state/selectors';\nimport { getEditorMode } from '../../ui/layout/app/_state/selectors';\nimport { getOptionsDefaults } from './selectors';\nimport allEditorModeOptions from './editorModeOptions';\n\nconst initialState = {};\n\nfunction setOptionValue(state, action) {\n\tconst { context, key, value } = action.payload;\n\n\tif (\n\t\t!state[context] ||\n\t\t!state[context].values ||\n\t\ttypeof state[context].values[key] === 'undefined'\n\t) {\n\t\treturn state;\n\t}\n\n\tconst newState = {\n\t\t...state,\n\t\t[context]: {\n\t\t\t...state[context],\n\t\t\tvalues: { ...state[context].values },\n\t\t},\n\t};\n\tnewState[context].values[key] = value;\n\n\treturn newState;\n}\n\nfunction setEditorMode(state, action, fullState) {\n\tconst fileId = getSelectedId(fullState);\n\tconst nextMode = action.payload.mode;\n\n\tconst newOptions = getModeOptions(fullState, fileId, nextMode);\n\n\treturn {\n\t\t...state,\n\t\tsongFormatting: {\n\t\t\t...state.songFormatting,\n\t\t\tvalues: {\n\t\t\t\t...newOptions,\n\t\t\t},\n\t\t},\n\t};\n}\n\n// Get defined options for a mode, either because they exist for the given mode,\n// or building them from options stored in the other modes\nfunction getModeOptions(fullState, fileId, mode) {\n\tconst defaultOptions = getOptionsDefaults(fullState, 'songFormatting');\n\tlet editorModeOptions = getCategoryOptions(fullState, fileId, mode);\n\n\tif (!editorModeOptions) {\n\t\teditorModeOptions = getLatestModeOptions(fullState, fileId) || {};\n\t}\n\tdelete editorModeOptions.updatedAt;\n\n\t// take only relevant options for the mode\n\teditorModeOptions = _pick(editorModeOptions, allEditorModeOptions[mode]);\n\n\treturn Object.assign(defaultOptions, editorModeOptions);\n}\n\nfunction selectFile(state, action, fullState) {\n\tconst { id } = action.payload;\n\tconst editorMode = getEditorMode(fullState);\n\n\tconst newOptions = getModeOptions(fullState, id, editorMode);\n\n\tconst songPreferences =\n\t\tgetCategoryOptions(fullState, id, 'preferences') || {};\n\tdelete songPreferences.updatedAt;\n\n\tconst defaultPreferences = getOptionsDefaults(fullState, 'songPreferences');\n\n\tconst newPreferences = Object.assign(defaultPreferences, songPreferences);\n\n\treturn {\n\t\t...state,\n\t\tsongPreferences: {\n\t\t\t...state.songPreferences,\n\t\t\tvalues: {\n\t\t\t\t...newPreferences,\n\t\t\t},\n\t\t},\n\t\tsongFormatting: {\n\t\t\t...state.songFormatting,\n\t\t\tvalues: {\n\t\t\t\t...newOptions,\n\t\t\t},\n\t\t},\n\t};\n}\n\nexport default (state = initialState, action = {}, fullState = {}) => {\n\tswitch (action.type) {\n\t\tcase actionTypes.DB_OPTION_SET_OPTION_VALUE: {\n\t\t\treturn setOptionValue(state, action);\n\t\t}\n\t\tcase UI_LAYOUT_APP_SET_EDITOR_MODE: {\n\t\t\treturn setEditorMode(state, action, fullState);\n\t\t}\n\t\tcase FILE_MANAGER_SELECT_FILE: {\n\t\t\treturn selectFile(state, action, fullState);\n\t\t}\n\t}\n\treturn state;\n};\n","import combineSectionReducers from 'combine-section-reducers';\nimport files from './files/reducers';\nimport options from './options/reducers';\n\nexport default combineSectionReducers({\n\tfiles,\n\toptions,\n});\n","import {\n\tFILE_MANAGER_SELECT_FILE,\n\tFILE_MANAGER_ENABLE_RENAME,\n} from './actionsTypes';\n\nimport {\n\tDB_FILES_CREATE,\n\tDB_FILES_DELETE,\n\tDB_FILES_IMPORT,\n\tDB_FILES_UPDATE,\n} from '../../db/files/actionsTypes';\n\nconst initialState = {\n\tselected: '',\n\trenamed: '',\n\tdefaultTitle: '[untitled]',\n};\n\nexport default function reducers(state = initialState, action = {}) {\n\tswitch (action.type) {\n\t\tcase DB_FILES_CREATE: {\n\t\t\tconst { id } = action.payload;\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tselected: id,\n\t\t\t\trenamed: id,\n\t\t\t};\n\t\t}\n\n\t\tcase DB_FILES_IMPORT: {\n\t\t\tconst { id } = action.payload;\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tselected: id,\n\t\t\t\trenamed: '',\n\t\t\t};\n\t\t}\n\n\t\tcase DB_FILES_UPDATE: {\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\trenamed: '',\n\t\t\t};\n\t\t}\n\n\t\tcase DB_FILES_DELETE: {\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tselected: '',\n\t\t\t\trenamed: '',\n\t\t\t};\n\t\t}\n\n\t\tcase FILE_MANAGER_SELECT_FILE: {\n\t\t\tconst { id } = action.payload;\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tselected: id,\n\t\t\t\trenamed: id === state.renamed ? id : '',\n\t\t\t};\n\t\t}\n\n\t\tcase FILE_MANAGER_ENABLE_RENAME: {\n\t\t\tconst { id } = action.payload;\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\trenamed: id,\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n}\n","export const SONG_IMPORTER_IMPORT_CANCEL = 'songImporter/import/cancel';\nexport const SONG_IMPORTER_IMPORT_START = 'songImporter/import/start';\nexport const SONG_IMPORTER_SET_CONTENT = 'songImporter/setContent';\nexport const SONG_IMPORTER_SET_INPUT_FORMAT = 'songImporter/setInputFormat';\n","import domPurify from 'dompurify';\n\nexport default function stripTags(html) {\n\treturn domPurify.sanitize(html, {\n\t\tALLOWED_TAGS: ['#text'],\n\t\tKEEP_CONTENT: true,\n\t});\n}\n","import * as actions from './actionsTypes';\nimport { DB_FILES_IMPORT } from '../../db/files/actionsTypes';\n\nimport stripTags from '../../core/stripTags';\n\nconst initialState = {\n\tcontent: '',\n\tisFromWeb: false,\n\tisImporting: false,\n\tinputFormat: 'auto',\n\ttitle: '',\n};\n\nexport default function reducers(state = initialState, action = {}) {\n\tswitch (action.type) {\n\t\tcase actions.SONG_IMPORTER_SET_CONTENT: {\n\t\t\tconst { content, title = '' } = action.payload;\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tcontent: stripTags(content),\n\t\t\t\ttitle: title ? stripTags(title) : state.title,\n\t\t\t};\n\t\t}\n\n\t\tcase actions.SONG_IMPORTER_SET_INPUT_FORMAT: {\n\t\t\tconst { inputFormat } = action.payload;\n\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tinputFormat,\n\t\t\t};\n\t\t}\n\n\t\tcase DB_FILES_IMPORT:\n\t\tcase actions.SONG_IMPORTER_IMPORT_CANCEL: {\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tcontent: '',\n\t\t\t\ttitle: '',\n\t\t\t\tisImporting: false,\n\t\t\t};\n\t\t}\n\n\t\tcase actions.SONG_IMPORTER_IMPORT_START: {\n\t\t\tconst { content, inputFormat, title, isFromWeb } = action.payload;\n\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisImporting: true,\n\t\t\t\tcontent: content ? stripTags(content) : '',\n\t\t\t\ttitle: title ? stripTags(title) : '',\n\t\t\t\tinputFormat: inputFormat || state.inputFormat,\n\t\t\t\tisFromWeb,\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n}\n","import {\n\tUI_LAYOUT_APP_TOGGLE_RIGHT_BAR,\n\tUI_LAYOUT_APP_TOGGLE_LEFT_BAR,\n\tUI_LAYOUT_APP_SET_EDITOR_MODE,\n} from './actionsTypes';\n\nimport {\n\tDB_FILES_CREATE,\n\tDB_FILES_IMPORT,\n\tDB_FILES_DELETE,\n} from '../../../../db/files/actionsTypes';\n\nconst initialState = {\n\tisLeftBarCollapsed: false,\n\tisRightBarCollapsed: false,\n\teditorMode: 'edit',\n\tactiveModal: 'none',\n};\n\nexport default function reducers(state = initialState, action = {}) {\n\tswitch (action.type) {\n\t\tcase UI_LAYOUT_APP_TOGGLE_LEFT_BAR: {\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisLeftBarCollapsed: !state.isLeftBarCollapsed,\n\t\t\t};\n\t\t}\n\t\tcase UI_LAYOUT_APP_TOGGLE_RIGHT_BAR: {\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tisRightBarCollapsed: !state.isRightBarCollapsed,\n\t\t\t};\n\t\t}\n\t\tcase UI_LAYOUT_APP_SET_EDITOR_MODE: {\n\t\t\tconst { mode } = action.payload;\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\teditorMode: mode,\n\t\t\t};\n\t\t}\n\t\tcase DB_FILES_DELETE:\n\t\tcase DB_FILES_CREATE:\n\t\tcase DB_FILES_IMPORT: {\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\teditorMode: 'edit',\n\t\t\t};\n\t\t}\n\t}\n\treturn state;\n}\n","import combineSectionReducers from 'combine-section-reducers';\nimport app from './app/_state/reducers';\n\nexport default combineSectionReducers({\n\tapp,\n});\n","import combineSectionReducers from 'combine-section-reducers';\nimport layout from './layout/reducers';\n\nexport default combineSectionReducers({\n\tlayout,\n});\n","import combineSectionReducers from 'combine-section-reducers';\n\nimport db from '../db/reducers';\nimport fileManager from '../fileManager/_state/reducers';\nimport songImporter from '../songImporter/_state/reducers';\nimport ui from '../ui/reducers';\n\nexport default combineSectionReducers({\n\tdb,\n\tfileManager,\n\tsongImporter,\n\tui,\n});\n","import db from '../db/seed';\n\nexport default {\n\tdb,\n};\n","import options from './options/seed';\n\nexport default {\n\toptions,\n};\n","export default {\n\t// editorPreferences are identical for all songs\n\teditorPreferences: {\n\t\tvalues: {\n\t\t\ttheme: 'dark1',\n\t\t\tchartFormat: 'chordmark',\n\t\t},\n\t\tdefaults: {\n\t\t\ttheme: 'dark1',\n\t\t\tchartFormat: 'chordmark',\n\t\t},\n\t\t//userDefaults: {},\n\t},\n\t// songPreferences are identical for all song rendering modes\n\t// therefore, they are only saved once for each song\n\tsongPreferences: {\n\t\tvalues: {\n\t\t\ttransposeValue: 0,\n\t\t\tpreferredAccidentals: 'auto',\n\t\t\tsymbolType: 'chord',\n\t\t},\n\t\tdefaults: {\n\t\t\ttransposeValue: 0,\n\t\t\tpreferredAccidentals: 'auto',\n\t\t\tsymbolType: 'chord',\n\t\t},\n\t\t//userDefaults: {},\n\t},\n\t// songFormatting options are specific to a given mode (print, export...)\n\t// they are saved separately for each song\n\tsongFormatting: {\n\t\tvalues: {\n\t\t\tchartType: 'all',\n\t\t\talignChordsWithLyrics: true,\n\t\t\talignBars: true,\n\t\t\tautoRepeatChords: true,\n\t\t\texpandSectionCopy: true,\n\n\t\t\tfontSize: 0,\n\t\t\tcolumnsCount: 1,\n\t\t\tcolumnBreakOnSection: true,\n\t\t\tdocumentMargins: 3,\n\t\t},\n\t\tdefaults: {\n\t\t\tchartType: 'all',\n\t\t\talignChordsWithLyrics: true,\n\t\t\talignBars: true,\n\t\t\tautoRepeatChords: true,\n\t\t\texpandSectionCopy: true,\n\n\t\t\tfontSize: 0,\n\t\t\tcolumnsCount: 1,\n\t\t\tcolumnBreakOnSection: true,\n\t\t\tdocumentMargins: 3,\n\t\t},\n\t\t//userDefaults: {},\n\t},\n};\n","import _defaultsDeep from 'lodash/defaultsDeep';\n\nimport { createStore as createReduxStore, applyMiddleware } from 'redux';\nimport { composeWithDevTools } from 'redux-devtools-extension';\nimport thunkMiddleware from 'redux-thunk';\n\nimport { loadState, saveState } from './localStorage';\nimport allReducers from './reducers';\nimport seed from './seed';\n\nlet store;\n\nexport function createStore() {\n\tconst storeEnhancers = composeWithDevTools(\n\t\tapplyMiddleware(thunkMiddleware)\n\t);\n\n\tconst persistedState = loadState();\n\n\t// store migrations\n\tif (persistedState && persistedState.db && persistedState.db.options) {\n\t\tdelete persistedState.db.options.rendering; // remove old options before the options refactor in v0.9.0\n\t}\n\n\t/* Reset all options * /\n\tObject.keys(persistedState.db.files.allFiles).forEach((fileId) => {\n\t\tdelete persistedState.db.files.allFiles[fileId].options;\n\t});\n\tdelete persistedState.db.options;\n\t/**/\n\t/* misc * /\n\tdelete persistedState.songImporter;\n\tdelete persistedState.fileManager.selected;\n\t/**/\n\n\tconst initialState = _defaultsDeep(persistedState, seed);\n\n\tstore = createReduxStore(allReducers, initialState, storeEnhancers);\n\n\tstore.subscribe(() => {\n\t\tsaveState(store.getState());\n\t});\n}\n\nexport function getStore() {\n\treturn store;\n}\n","export default function createAction(type, payload) {\n\tif (!type) {\n\t\tthrow new TypeError('Cannot create an action without an action type');\n\t}\n\treturn {\n\t\ttype,\n\t\tpayload,\n\t};\n}\n","import * as actionsTypes from './actionsTypes';\n\nimport createAction from '../../core/createAction';\n\nexport const setContent = (content, title) =>\n\tcreateAction(actionsTypes.SONG_IMPORTER_SET_CONTENT, { content, title });\n\nexport const setInputFormat = (inputFormat) =>\n\tcreateAction(actionsTypes.SONG_IMPORTER_SET_INPUT_FORMAT, { inputFormat });\n\nexport const startImport = () =>\n\tcreateAction(actionsTypes.SONG_IMPORTER_IMPORT_START, {\n\t\tisFromWeb: false,\n\t});\n\nexport const startImportFromWeb = (inputFormat, content, title) =>\n\tcreateAction(actionsTypes.SONG_IMPORTER_IMPORT_START, {\n\t\tcontent,\n\t\tinputFormat,\n\t\ttitle,\n\t\tisFromWeb: true,\n\t});\n\nexport const cancelImport = () =>\n\tcreateAction(actionsTypes.SONG_IMPORTER_IMPORT_CANCEL);\n","import { getStore } from '../state/store';\nimport { startImportFromWeb } from './_state/actions';\n\n/**\n * @typedef {Object} WebsiteImportMessage\n * @type {Object}\n * @property {('ultimateGuitar')} source - website from which the tab comes from\n * @property {('chordPro|ChordOverLyrics')} inputFormat - format to pass to chord-mark-converter\n * @property {String} chordChart - content of the chord chart\n * @property {String} title - song title\n * @property {String} artist - song artist\n */\n\nconst songImporterHandlers = {\n\t/**\n\t *\n\t * @param {WebsiteImportMessage} message\n\t */\n\t'@CCS/IMPORT_TAB': (message) => {\n\t\tconst store = getStore();\n\n\t\tconst title = buildTitle(message.title, message.artist);\n\t\tstore.dispatch(\n\t\t\tstartImportFromWeb(message.inputFormat, message.chordChart, title)\n\t\t);\n\t},\n};\n\nconst buildTitle = (songTitle, artist) => {\n\treturn '_' + (artist ? artist + ' - ' : '') + songTitle;\n};\n\nexport default function getSongImporterHandlers() {\n\treturn songImporterHandlers;\n}\n","import getSongImporterHandlers from './songImporter/getMessageHandlers';\n\nexport default function registerHandlers() {\n\twindow.addEventListener('message', _handleMessage);\n}\n\n// unit test backdoor, not for public usage!\nexport const _handleMessage = (e) => {\n\tconst allHandlers = {\n\t\t...getSongImporterHandlers(),\n\t};\n\n\tif (e.source !== window || e.origin !== window.location.origin) {\n\t\treturn false;\n\t}\n\tconst message = e.data;\n\n\tif (typeof allHandlers[message.type] === 'function') {\n\t\tallHandlers[message.type](message.payload);\n\t}\n\treturn true;\n};\n","import './ErrorBoundary.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\n// source: https://codepen.io/gaearon/pen/wqvxGa?editors=0010\nclass ErrorBoundary extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = { error: null, errorInfo: null };\n\t}\n\n\tcomponentDidCatch(error, errorInfo) {\n\t\tthis.setState({\n\t\t\terror: error,\n\t\t\terrorInfo: errorInfo,\n\t\t});\n\t}\n\n\trender() {\n\t\tif (this.state.errorInfo) {\n\t\t\treturn (\n\t\t\t\t
    \n\t\t\t\t\t

    Something went wrong

    \n\t\t\t\t\t
    \n\t\t\t\t\t\t{this.state.error && this.state.error.toString()}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t{this.state.errorInfo.componentStack}\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t);\n\t\t}\n\t\treturn this.props.children;\n\t}\n}\n\nErrorBoundary.propTypes = {\n\tchildren: PropTypes.any,\n};\n\nexport default ErrorBoundary;\n","import {\n\tUI_LAYOUT_APP_SET_EDITOR_MODE,\n\tUI_LAYOUT_APP_TOGGLE_LEFT_BAR,\n\tUI_LAYOUT_APP_TOGGLE_RIGHT_BAR,\n} from './actionsTypes';\n\nimport createAction from '../../../../core/createAction';\n\nexport const setEditorMode = (mode) =>\n\tcreateAction(UI_LAYOUT_APP_SET_EDITOR_MODE, { mode });\n\nexport const toggleLeftBar = () => createAction(UI_LAYOUT_APP_TOGGLE_LEFT_BAR);\n\nexport const toggleRightBar = () =>\n\tcreateAction(UI_LAYOUT_APP_TOGGLE_RIGHT_BAR);\n","import './Logo.scss';\n\nimport React from 'react';\n\nimport logoSvg from '../../../../../../logo/media/logo.svg';\n\nfunction Logo() {\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\tChord Chart Studio\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n}\n\nexport default React.memo(Logo);\n","import './Icon.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction Icon(props) {\n\tconst { iconName } = props;\n\n\tconst classList = ['icon', 'material-icons'];\n\n\treturn {iconName};\n}\n\nIcon.propTypes = {\n\ticonName: PropTypes.string.isRequired,\n};\n\nexport default React.memo(Icon);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Icon from '../../../_components/Icon.js';\n\nfunction NavEntry(props) {\n\tconst { label, icon, editorMode, setEditorMode, isActive, isDisabled } =\n\t\tprops;\n\n\tconst classNames = ['mainNavEntry'];\n\n\tif (isActive) {\n\t\tclassNames.push('mainNavEntry-isActive');\n\t}\n\tif (isDisabled) {\n\t\tclassNames.push('mainNavEntry-isDisabled');\n\t}\n\n\tfunction handleClick() {\n\t\tif (!isDisabled) setEditorMode(editorMode);\n\t}\n\n\treturn (\n\t\t
  • \n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t{label}\n\t\t
  • \n\t);\n}\n\nNavEntry.propTypes = {\n\tlabel: PropTypes.string.isRequired,\n\ticon: PropTypes.string.isRequired,\n\teditorMode: PropTypes.string.isRequired,\n\tsetEditorMode: PropTypes.func.isRequired,\n\tisActive: PropTypes.bool.isRequired,\n\tisDisabled: PropTypes.bool.isRequired,\n};\n\nexport default React.memo(NavEntry);\n","import './Nav.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport NavEntry from './NavEntry.js';\n\nfunction Nav(props) {\n\tconst { currentMode, allEntries, setEditorMode, selectedId } = props;\n\n\treturn (\n\t\t\n\t);\n}\n\nNav.propTypes = {\n\tcurrentMode: PropTypes.string.isRequired,\n\tsetEditorMode: PropTypes.func.isRequired,\n\tselectedId: PropTypes.string,\n\tallEntries: PropTypes.arrayOf(\n\t\tPropTypes.shape({\n\t\t\tid: PropTypes.string.isRequired,\n\t\t\tlabel: PropTypes.string.isRequired,\n\t\t\ticon: PropTypes.string.isRequired,\n\t\t\teditorMode: PropTypes.string.isRequired,\n\t\t})\n\t),\n};\n\nexport default React.memo(Nav);\n","import './Button.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Button = ({ children, isDisabled, buttonName, onClick, type }) => {\n\tconst allClassNames = ['Button'];\n\n\tif (type === 'primary') allClassNames.push('Button-primary');\n\tif (type === 'secondary') allClassNames.push('Button-secondary');\n\tif (isDisabled) allClassNames.push('Button-isDisabled');\n\n\treturn (\n\t\t\n\t\t\t{children}\n\t\t\n\t);\n};\n\nButton.propTypes = {\n\tchildren: PropTypes.string.isRequired,\n\tisDisabled: PropTypes.bool,\n\tbuttonName: PropTypes.string.isRequired,\n\ttype: PropTypes.string.isRequired,\n\tonClick: PropTypes.func.isRequired,\n};\n\nButton.defaultProps = {\n\tisDisabled: false,\n};\n\nexport default Button;\n","import './UserGuide.scss';\n\nimport React from 'react';\n\nimport Button from '../../_components/Button';\nimport Icon from '../../_components/Icon.js';\n\nconst userGuideUrl = 'https://chord-chart-studio.netlify.app';\n\nconst UserGuide = () => {\n\tconst openUserGuide = () => {\n\t\twindow.open(userGuideUrl, '_blank').focus();\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\tUser Guide\n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n\nUserGuide.propTypes = {};\n\nUserGuide.defaultProps = {};\n\nexport default React.memo(UserGuide);\n","import getVersions from '../../../core/getVersions';\nimport './Versions.scss';\n\nimport React from 'react';\n\nfunction Versions() {\n\tconst versions = getVersions();\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\tChord Chart Studio {versions['chord-chart-studio']}\n\t\t\t\t
    \n\t\t\t\tChordMark {versions['chord-mark']}
    \n\t\t\t\tChordSymbol {versions['chord-symbol']}
    \n\t\t\t\tLogo by{' '}\n\t\t\t\t\n\t\t\t\t\tDieter Raber\n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n}\n\nexport default React.memo(Versions);\n","export default () => ({'chord-chart-studio':'v0.14.0','chord-symbol':'v4.0.0','chord-mark':'v0.16.2'});","import { v4 as uuidv4 } from 'uuid';\n\nimport createAction from '../../core/createAction';\nimport * as actionTypes from './actionsTypes';\n\nexport const createFile = (title, content = '') => {\n\tif (!title) {\n\t\tthrow new TypeError('Cannot create a file without title');\n\t}\n\tconst payload = {\n\t\tid: uuidv4(),\n\t\ttitle,\n\t\tcontent,\n\t};\n\treturn createAction(actionTypes.DB_FILES_CREATE, payload);\n};\n\nexport const importFile = (title, content = '') => {\n\tif (!title) {\n\t\tthrow new TypeError('Cannot import a file without title');\n\t}\n\tconst payload = {\n\t\tid: uuidv4(),\n\t\ttitle,\n\t\tcontent,\n\t};\n\treturn createAction(actionTypes.DB_FILES_IMPORT, payload);\n};\n\nexport const updateFile = (id, { title, content } = {}) => {\n\tif (!id) {\n\t\tthrow new TypeError('Cannot update a file without an id');\n\t}\n\tconst payload = {\n\t\tid,\n\t\ttitle,\n\t\tcontent,\n\t};\n\treturn createAction(actionTypes.DB_FILES_UPDATE, payload);\n};\n\nexport const deleteFile = (id) => {\n\treturn createAction(actionTypes.DB_FILES_DELETE, { id });\n};\n","export const getContent = (state) => state.songImporter.content;\n\nexport const getInputFormat = (state) => state.songImporter.inputFormat;\n\nexport const getTitle = (state) => state.songImporter.title;\n\nexport const isImporting = (state) => state.songImporter.isImporting;\n\nexport const isFromWeb = (state) => state.songImporter.isFromWeb;\n","import './Modal.scss';\n\nimport React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nfunction Modal(props) {\n\tconst { children, closeModal } = props;\n\n\tuseEffect(() => {\n\t\tconst handleKeyboard = (e) => {\n\t\t\tif (e.key === 'Escape') {\n\t\t\t\tcloseModal();\n\t\t\t}\n\t\t};\n\t\twindow.addEventListener('keyup', handleKeyboard);\n\n\t\treturn () => {\n\t\t\twindow.removeEventListener('keyup', handleKeyboard);\n\t\t};\n\t});\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t
    {children}
    \n\t\t
    \n\t);\n}\n\nModal.propTypes = {\n\tchildren: PropTypes.element.isRequired,\n\tcloseModal: PropTypes.func.isRequired,\n};\n\nexport default Modal;\n","import React from 'react';\nimport Button from '../../ui/_components/Button';\nimport PropTypes from 'prop-types';\n\nconst Header = ({\n\tcancelImport,\n\tchordMarkContent,\n\timportFile,\n\ttitle,\n\tcontent,\n\terror,\n}) => {\n\tconst headerTitle = title ? 'Import \"' + title + '\"' : 'Import song';\n\n\tconst doImport = () => {\n\t\timportFile(title || '[untitled]', chordMarkContent);\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    {headerTitle}
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\tCANCEL\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tIMPORT\n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n\nHeader.propTypes = {\n\tcancelImport: PropTypes.func.isRequired,\n\tchordMarkContent: PropTypes.string,\n\tcontent: PropTypes.string,\n\terror: PropTypes.string,\n\timportFile: PropTypes.func.isRequired,\n\ttitle: PropTypes.string,\n};\n\nexport default Header;\n","import { filesize } from 'filesize';\n\nconst maxFileSizeBytes = 50 * 1024;\n\nconst getUploadedFile = (fileList) => {\n\treturn new Promise((resolve, reject) => {\n\t\tif (fileList.length) {\n\t\t\tconst file = fileList[0];\n\n\t\t\tif (isOversized(file)) {\n\t\t\t\treject(getFileTooBigMsg(file.size));\n\t\t\t} else if (!isTextFile(file)) {\n\t\t\t\treject(getWrongFileTypeMsg(file));\n\t\t\t} else {\n\t\t\t\tfile.text()\n\t\t\t\t\t.then((fileContent) => {\n\t\t\t\t\t\tresolve({\n\t\t\t\t\t\t\tcontent: fileContent,\n\t\t\t\t\t\t\ttitle: getSongTitle(file),\n\t\t\t\t\t\t});\n\t\t\t\t\t})\n\t\t\t\t\t.catch((e) => {\n\t\t\t\t\t\treject(e);\n\t\t\t\t\t});\n\t\t\t}\n\t\t} else {\n\t\t\treject(getNoFileSelectedMsg());\n\t\t}\n\t});\n};\n\nconst getSongTitle = (file) => file.name.substr(0, file.name.lastIndexOf('.'));\n\nconst isOversized = (file) => file.size > maxFileSizeBytes;\n\n// files with extension such as .cho or .chopro are detected with an empty mimetype\n// so we consider them as text\nconst isTextFile = (file) =>\n\tfile.type.indexOf('text') === 0 || file.type.length === 0;\n\nconst getFileTooBigMsg = (actualSize) =>\n\t'The selected file is too big: ' +\n\tfilesize(actualSize, { round: 0 }) +\n\t' (maximum allowed file size is ' +\n\tfilesize(maxFileSizeBytes, { round: 0 }) +\n\t').';\n\nconst getWrongFileTypeMsg = (file) =>\n\t'Cannot import file of type ' + file.type + '.';\n\nconst getNoFileSelectedMsg = () => 'No file selected.';\n\nexport default getUploadedFile;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport getUploadedFile from '../getUploadedFile';\n\nconst allowedFiles = 'text/*,.cho,.crd,.chopro,.chord,.pro,.txt,.md';\n\nconst FilePicker = ({ setContent }) => {\n\tconst handleChange = (ev) => {\n\t\tgetUploadedFile(ev.target.files)\n\t\t\t.then((file) => {\n\t\t\t\tsetContent(file.content, file.title);\n\t\t\t})\n\t\t\t.catch((e) => {\n\t\t\t\tsetContent(e);\n\t\t\t});\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\tSelect File\n\t\t\t\n\t\t\t\n\t\t
    \n\t);\n};\n\nFilePicker.propTypes = {\n\tsetContent: PropTypes.func.isRequired,\n};\n\nexport default FilePicker;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Icon from '../../ui/_components/Icon';\n\nfunction Input(props) {\n\tconst { content, setContent, isDisabled } = props;\n\n\tconst onChange = (e) => {\n\t\tsetContent(e.target.value);\n\t};\n\n\tconst allClasses = ['sim-Input_Textarea'];\n\n\tif (isDisabled) {\n\t\tallClasses.push('sim-Input_Textarea-Disabled');\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t
    \n\t\t\t\t\n\t\t\t\tCopy/paste below\n\t\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\n\t);\n}\n\nInput.propTypes = {\n\tcontent: PropTypes.string.isRequired,\n\tisDisabled: PropTypes.bool.isRequired,\n\tsetContent: PropTypes.func.isRequired,\n};\n\nInput.defaultProps = {};\n\nexport default Input;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction PreviewError(props) {\n\tconst { inputFormat, error } = props;\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\tThere was an error when trying to parse the song in the\n\t\t\t\tspecified input format ({inputFormat}).\n\t\t\t\t
    \n\t\t\t\tPlease correct the input or try another format.\n\t\t\t\t
    \n\t\t\t\tThe error was:\n\t\t\t

    \n\t\t\t

    "{error}"

    \n\t\t\t

    \n\t\t\t\tHint: most of the time, this is related to an unclosed\n\t\t\t\t"[" or "{" or an unsupported ChordPro\n\t\t\t\tdirective\n\t\t\t

    \n\t\t
    \n\t);\n}\n\nPreviewError.propTypes = {\n\terror: PropTypes.string,\n\tinputFormat: PropTypes.string.isRequired,\n};\n\nPreviewError.defaultProps = {};\n\nexport default PreviewError;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction InputFormatEntry(props) {\n\tconst { setInputFormat, inputFormat, id, label, isDisabled } = props;\n\n\tconst onChange = (e) => {\n\t\tif (!isDisabled) {\n\t\t\tsetInputFormat(e.target.value);\n\t\t}\n\t};\n\n\tconst allInputClasses = ['sim-InputFormat_Entry'];\n\tconst allLabelClasses = ['sim-InputFormat_Label'];\n\n\tif (isDisabled) {\n\t\tallInputClasses.push('sim-InputFormat_Entry-Disabled');\n\t\tallLabelClasses.push('sim-InputFormat_Label-Disabled');\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\n\t\t\n\t);\n}\n\nInputFormatEntry.propTypes = {\n\tsetInputFormat: PropTypes.func.isRequired,\n\tinputFormat: PropTypes.string.isRequired,\n\tid: PropTypes.string.isRequired,\n\tlabel: PropTypes.string.isRequired,\n\tisDisabled: PropTypes.bool.isRequired,\n};\n\nInputFormatEntry.defaultProps = {};\n\nexport default InputFormatEntry;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport InputFormatEntry from './InputFormatEntry';\n\nconst allEntries = [\n\t{\n\t\tid: 'auto',\n\t\tlabel: 'Detect',\n\t},\n\t{\n\t\tid: 'chordPro',\n\t\tlabel: 'Bracketed chords (ChordPro)',\n\t},\n\t{\n\t\tid: 'chordsOverLyrics',\n\t\tlabel: 'Chords over lyrics (Ultimate Guitar...)',\n\t},\n];\n\nfunction InputFormatSelector(props) {\n\tconst { setInputFormat, inputFormat, disableAll } = props;\n\n\tconst rendered = allEntries.map((entry) => (\n\t\t\n\t));\n\n\treturn (\n\t\t
    \n\t\t\tInput format:\n\t\t\t{rendered}\n\t\t
    \n\t);\n}\n\nInputFormatSelector.propTypes = {\n\tdisableAll: PropTypes.bool.isRequired,\n\tsetInputFormat: PropTypes.func.isRequired,\n\tinputFormat: PropTypes.string.isRequired,\n};\n\nInputFormatSelector.defaultProps = {};\n\nexport default InputFormatSelector;\n","import './SongImporter.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { convert2ChordMark } from 'chord-mark-converters';\n\nimport Modal from '../../ui/_components/Modal';\nimport Header from './Header';\nimport FilePicker from './FilePicker';\nimport Input from './Input';\nimport PreviewError from './PreviewError';\nimport InputFormatSelector from './InputFormatSelector';\nimport Icon from '../../ui/_components/Icon';\n\nfunction SongImporter(props) {\n\tconst {\n\t\tcancelImport,\n\t\tcontent,\n\t\timportFile,\n\t\tisFromWeb,\n\t\tisImporting,\n\t\tsetContent,\n\t\tsetInputFormat,\n\t\tinputFormat,\n\t\ttitle,\n\t} = props;\n\n\tif (!isImporting) return null;\n\n\tlet chordMarkContent = '';\n\tlet error = '';\n\n\ttry {\n\t\tchordMarkContent = convert2ChordMark(content, { inputFormat });\n\t} catch (e) {\n\t\terror = e.message;\n\t}\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tChordMark preview\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{!error ? (\n\t\t\t\t\t\t\t\tchordMarkContent\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t);\n}\n\nSongImporter.propTypes = {\n\tcancelImport: PropTypes.func.isRequired,\n\tcontent: PropTypes.string.isRequired,\n\timportFile: PropTypes.func.isRequired,\n\tisFromWeb: PropTypes.bool.isRequired,\n\tisImporting: PropTypes.bool.isRequired,\n\tsetContent: PropTypes.func.isRequired,\n\tsetInputFormat: PropTypes.func.isRequired,\n\tinputFormat: PropTypes.string.isRequired,\n\ttitle: PropTypes.string,\n};\n\nSongImporter.defaultProps = {};\n\nexport default SongImporter;\n","import { connect } from 'react-redux';\n\nimport { importFile } from '../../db/files/actions';\nimport { setContent, setInputFormat, cancelImport } from '../_state/actions';\nimport {\n\tgetInputFormat,\n\tgetContent,\n\tgetTitle,\n\tisImporting,\n\tisFromWeb,\n} from '../_state/selectors';\n\nimport SongImporter from '../_components/SongImporter';\n\nexport default connect(\n\t(state) => ({\n\t\tcontent: getContent(state),\n\t\tisFromWeb: isFromWeb(state),\n\t\tisImporting: isImporting(state),\n\t\tinputFormat: getInputFormat(state),\n\t\ttitle: getTitle(state),\n\t}),\n\n\t{\n\t\tsetContent,\n\t\tsetInputFormat,\n\t\tcancelImport,\n\t\timportFile,\n\t}\n)(SongImporter);\n","export default [\n\t{\n\t\tid: 'edit',\n\t\tlabel: 'Edit',\n\t\ticon: 'create',\n\t\teditorMode: 'edit',\n\t},\n\t{\n\t\tid: 'play',\n\t\tlabel: 'Screen view',\n\t\ticon: 'music_note',\n\t\teditorMode: 'play',\n\t},\n\t{\n\t\tid: 'print',\n\t\tlabel: 'Print/PDF Preview',\n\t\ticon: 'print',\n\t\teditorMode: 'print',\n\t},\n\t{\n\t\tid: 'export',\n\t\tlabel: 'Export Preview',\n\t\ticon: 'save_alt',\n\t\teditorMode: 'export',\n\t},\n];\n","import './App.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Logo from '../../../sideBar/_components/Logo';\nimport Nav from './Nav';\nimport UserGuide from '../../../sideBar/_components/UserGuide';\nimport Versions from '../../../sideBar/_components/Versions';\nimport Icon from '../../../_components/Icon';\nimport SongImporter from '../../../../songImporter/_containers/SongImporter';\n\nimport allNavEntries from '../allNavEntries';\n\nfunction App(props) {\n\tconst {\n\t\teditorMode,\n\t\tisLeftBarCollapsed,\n\t\tisRightBarCollapsed,\n\t\ttoggleLeftBar,\n\t\ttoggleRightBar,\n\t\tsetEditorMode,\n\t\tselectedId,\n\n\t\tleftBar,\n\t\trightBar,\n\t} = props;\n\n\tconst leftBarClassNames = ['leftBar'];\n\tif (isLeftBarCollapsed) {\n\t\tleftBarClassNames.push('leftBar-isCollapsed');\n\t}\n\n\tconst rightBarClassNames = ['rightBar'];\n\tif (isRightBarCollapsed) {\n\t\trightBarClassNames.push('rightBar-isCollapsed');\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t{leftBar}\n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t{props.children}\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t{rightBar}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\n\t);\n}\n\nApp.propTypes = {\n\tchildren: PropTypes.element,\n\n\tisLeftBarCollapsed: PropTypes.bool,\n\tisRightBarCollapsed: PropTypes.bool,\n\tselectedId: PropTypes.string,\n\ttoggleLeftBar: PropTypes.func.isRequired,\n\ttoggleRightBar: PropTypes.func.isRequired,\n\n\teditorMode: PropTypes.string.isRequired,\n\tsetEditorMode: PropTypes.func.isRequired,\n\n\tleftBar: PropTypes.element.isRequired,\n\trightBar: PropTypes.element.isRequired,\n};\n\nApp.defaultProps = {\n\tisLeftBarCollapsed: false,\n\tisRightBarCollapsed: false,\n};\n\nexport default App;\n","import { connect } from 'react-redux';\n\nimport {\n\ttoggleLeftBar,\n\ttoggleRightBar,\n\tsetEditorMode,\n} from '../_state/actions';\nimport {\n\tisLeftBarCollapsed,\n\tisRightBarCollapsed,\n\tgetEditorMode,\n} from '../_state/selectors';\nimport { getSelectedId } from '../../../../fileManager/_state/selectors';\n\nimport App from '../_components/App';\n\nexport default connect(\n\t(state) => ({\n\t\teditorMode: getEditorMode(state),\n\t\tisLeftBarCollapsed: isLeftBarCollapsed(state),\n\t\tisRightBarCollapsed: isRightBarCollapsed(state),\n\t\tselectedId: getSelectedId(state),\n\t}),\n\n\t{\n\t\ttoggleLeftBar,\n\t\ttoggleRightBar,\n\t\tsetEditorMode,\n\t}\n)(App);\n","import createAction from '../../core/createAction';\n\nimport * as actionsTypes from './actionsTypes';\n\nexport const selectFile = (id) =>\n\tcreateAction(actionsTypes.FILE_MANAGER_SELECT_FILE, { id });\n\nexport const enableRename = (id) =>\n\tcreateAction(actionsTypes.FILE_MANAGER_ENABLE_RENAME, { id });\n","import { renderSong as renderSongCm, parseSong } from 'chord-mark';\nimport {\n\tchordMark2ChordPro,\n\tchordMark2UltimateGuitar,\n} from 'chord-mark-converters';\nimport { chordRendererFactory } from 'chord-symbol';\nimport chordSymbolUltimateGuitar from 'chord-symbol-ultimateguitar';\n\nimport stripTags from './stripTags';\n\nexport function renderAsText(\n\tsongTxt,\n\trenderOptions = {},\n\tuseChartFormat = false\n) {\n\treturn render(songTxt, renderOptions, useChartFormat, 'text');\n}\n\nexport function renderAsHtml(\n\tsongTxt,\n\trenderOptions = {},\n\tuseChartFormat = false\n) {\n\treturn render(songTxt, renderOptions, useChartFormat, 'html');\n}\n\n// eslint-disable-next-line complexity\nfunction render(songTxt, renderOptions, useChartFormat, outputFormat) {\n\tif (useChartFormat) {\n\t\tswitch (renderOptions.chartFormat) {\n\t\t\tcase 'chordmark': {\n\t\t\t\tconst cmHtml = renderSong(songTxt, renderOptions);\n\t\t\t\treturn outputFormat === 'html' ? cmHtml : toText(cmHtml);\n\t\t\t}\n\t\t\tcase 'chordmarkSrc':\n\t\t\t\treturn outputFormat === 'html' ? toHtml(songTxt) : songTxt;\n\t\t\tcase 'chordpro': {\n\t\t\t\trenderOptions.customRenderer = chordMark2ChordPro();\n\t\t\t\tconst cpTxt = renderSong(songTxt, renderOptions);\n\t\t\t\treturn outputFormat === 'html' ? toHtml(cpTxt) : cpTxt;\n\t\t\t}\n\t\t\tcase 'ultimateGuitar': {\n\t\t\t\trenderOptions.customRenderer = chordMark2UltimateGuitar();\n\t\t\t\tconst ugTxt =\n\t\t\t\t\trenderSong(songTxt, {\n\t\t\t\t\t\t...renderOptions,\n\t\t\t\t\t\tcustomRenderer: chordMark2UltimateGuitar(),\n\t\t\t\t\t\tprintBarSeparators: 'grids',\n\t\t\t\t\t\tprintChordsDuration: 'never',\n\t\t\t\t\t\tprintSubBeatDelimiters: false,\n\t\t\t\t\t\tprintInlineTimeSignatures: false,\n\t\t\t\t\t\tchordSymbolRenderer: chordRendererFactory({\n\t\t\t\t\t\t\tcustomFilters: [chordSymbolUltimateGuitar()],\n\t\t\t\t\t\t\tuseShortNamings: true,\n\t\t\t\t\t\t\taccidentalsType:\n\t\t\t\t\t\t\t\trenderOptions.accidentalsType === 'auto'\n\t\t\t\t\t\t\t\t\t? 'original'\n\t\t\t\t\t\t\t\t\t: renderOptions.accidentalsType,\n\t\t\t\t\t\t\t...renderOptions, // duh!\n\t\t\t\t\t\t}),\n\t\t\t\t\t}) +\n\t\t\t\t\t'\\n\\nCreated with Chord Chart Studio (https://chord-chart-studio.netlify.app)';\n\t\t\t\treturn outputFormat === 'html' ? toHtml(ugTxt) : ugTxt;\n\t\t\t}\n\t\t}\n\t}\n\n\tconst chordMarkHtml = renderSong(songTxt, {\n\t\t...renderOptions,\n\t\twrapChordLyricLines: true,\n\t});\n\treturn outputFormat === 'html' ? chordMarkHtml : toText(chordMarkHtml);\n}\n\nfunction renderSong(songTxt, renderOptions) {\n\ttry {\n\t\tconst parsed = parseSong(songTxt);\n\t\treturn renderSongCm(parsed, {\n\t\t\t...renderOptions,\n\t\t});\n\t} catch (e) {\n\t\treturn e.message;\n\t}\n}\n\nfunction toHtml(text) {\n\treturn text\n\t\t.split('\\n')\n\t\t.map((line) => (line === '' ? ' ' : line))\n\t\t.map((line) => `${line}`)\n\t\t.join('');\n}\n\nfunction toText(html) {\n\tconst allLines = html.match(/(.*?<\\/p>)/gm);\n\n\treturn allLines\n\t\t.map((line) => stripTags(line))\n\t\t.map((line) => (line === ' ' ? '' : line))\n\t\t.join('\\n');\n}\n","import { saveAs } from 'file-saver';\nimport { getStore } from '../state/store';\n\nimport { getSelectedId } from './_state/selectors';\nimport { getOne } from '../db/files/selectors';\nimport { getOptionValue } from '../db/options/selectors';\n\nimport { renderAsText } from '../core/renderSong';\n\nexport default function exportSelectedFileAsText() {\n\tconst store = getStore();\n\tconst state = store.getState();\n\n\tconst selectedId = getSelectedId(state);\n\tconst selectedFile = getOne(state, selectedId);\n\n\tconst renderOptions = {\n\t\tchartFormat: getOptionValue(state, 'editorPreferences', 'chartFormat'),\n\n\t\ttransposeValue: getOptionValue(\n\t\t\tstate,\n\t\t\t'songPreferences',\n\t\t\t'transposeValue'\n\t\t),\n\t\taccidentalsType: getOptionValue(\n\t\t\tstate,\n\t\t\t'songPreferences',\n\t\t\t'accidentalsType'\n\t\t),\n\t\tsymbolType: getOptionValue(state, 'songPreferences', 'symbolType'),\n\n\t\tchartType: getOptionValue(state, 'songFormatting', 'chartType'),\n\t\talignChordsWithLyrics: getOptionValue(\n\t\t\tstate,\n\t\t\t'songFormatting',\n\t\t\t'alignChordsWithLyrics'\n\t\t),\n\t\talignBars: getOptionValue(state, 'songFormatting', 'alignBars'),\n\t\tautoRepeatChords: getOptionValue(\n\t\t\tstate,\n\t\t\t'songFormatting',\n\t\t\t'autoRepeatChords'\n\t\t),\n\t\texpandSectionCopy: getOptionValue(\n\t\t\tstate,\n\t\t\t'songFormatting',\n\t\t\t'expandSectionCopy'\n\t\t),\n\t};\n\n\tconst fileContent = renderAsText(selectedFile.content, renderOptions, true);\n\tconst fileExt = renderOptions.chartFormat === 'chordpro' ? 'cho' : 'txt';\n\tconst fileName = `${selectedFile.title}.${fileExt}`;\n\n\tconst blob = new Blob([fileContent], {\n\t\ttype: 'text/plain;charset=utf-8',\n\t\tendings: 'native',\n\t});\n\tsaveAs(blob, fileName);\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Button from './Button';\nimport Modal from './Modal';\n\nfunction ModalConfirm(props) {\n\tconst {\n\t\tconfirmAction,\n\t\tconfirmTitle = 'OK',\n\t\tcancelAction,\n\t\tcancelTitle = 'CANCEL',\n\t\tchildren,\n\t} = props;\n\n\treturn (\n\t\t\n\t\t\t
    \n\t\t\t\t
    {children}
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t{cancelTitle}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{confirmTitle}\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n}\n\nModalConfirm.propTypes = {\n\tconfirmAction: PropTypes.func.isRequired,\n\tconfirmTitle: PropTypes.string,\n\tcancelAction: PropTypes.func.isRequired,\n\tcancelTitle: PropTypes.string,\n\tchildren: PropTypes.node.isRequired,\n};\n\nexport default ModalConfirm;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport ModalConfirm from '../../ui/_components/ModalConfirm';\n\nfunction DeleteConfirmModal(props) {\n\tconst { selected, deleteFile, isDeleting, setIsDeleting } = props;\n\n\tif (!isDeleting) {\n\t\treturn null;\n\t}\n\n\tconst cancelDelete = () => setIsDeleting(false);\n\tconst confirmDelete = () => {\n\t\tsetIsDeleting(false);\n\t\tdeleteFile(selected);\n\t};\n\n\treturn (\n\t\t\n\t\t\tAre you sure you want to delete this file?\n\t\t\t
    \n\t\t\tThis action cannot be undone.\n\t\t\n\t);\n}\n\nDeleteConfirmModal.propTypes = {\n\tdeleteFile: PropTypes.func.isRequired,\n\tisDeleting: PropTypes.bool.isRequired,\n\tselected: PropTypes.string.isRequired,\n\tsetIsDeleting: PropTypes.func.isRequired,\n};\n\nexport default DeleteConfirmModal;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Icon from '../../ui/_components/Icon';\n\nfunction FileActionEntry(props) {\n\tconst { icon, text, action, isDisabled } = props;\n\n\tconst classNames = ['fileManagerAction'];\n\n\tif (isDisabled) {\n\t\tclassNames.push('fileManagerAction-isDisabled');\n\t}\n\tconst handleClick = () => {\n\t\tif (!isDisabled) {\n\t\t\taction();\n\t\t}\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t {text}\n\t\t\t\n\t\t\n\t);\n}\n\nFileActionEntry.propTypes = {\n\ticon: PropTypes.string.isRequired,\n\ttext: PropTypes.string.isRequired,\n\taction: PropTypes.func.isRequired,\n\tisDisabled: PropTypes.bool.isRequired,\n};\n\nexport default React.memo(FileActionEntry);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport FileActionEntry from './FileActionEntry';\n\nfunction FileActions(props) {\n\tconst {\n\t\tselected,\n\t\tcreateFile,\n\t\tdeleteFile,\n\t\tenableRename,\n\t\tstartImport,\n\t\texportAsText,\n\t\tprintFile,\n\t} = props;\n\n\tconst allActions = [\n\t\t{\n\t\t\ticon: 'upload',\n\t\t\ttext: 'Import',\n\t\t\taction: startImport,\n\t\t\tisDisabled: false,\n\t\t},\n\t\t{\n\t\t\ticon: 'add_circle',\n\t\t\ttext: 'New',\n\t\t\taction: createFile,\n\t\t\tisDisabled: false,\n\t\t},\n\t\t{\n\t\t\ticon: 'create',\n\t\t\ttext: 'Rename',\n\t\t\taction: enableRename,\n\t\t\tisDisabled: !selected,\n\t\t},\n\t\t{\n\t\t\ticon: 'delete',\n\t\t\ttext: 'Delete',\n\t\t\taction: deleteFile,\n\t\t\tisDisabled: !selected,\n\t\t},\n\t\t{\n\t\t\ticon: 'print',\n\t\t\ttext: 'Print',\n\t\t\taction: printFile,\n\t\t\tisDisabled: !selected,\n\t\t},\n\t\t{\n\t\t\ticon: 'download',\n\t\t\ttext: 'Export',\n\t\t\taction: exportAsText,\n\t\t\tisDisabled: !selected,\n\t\t},\n\t];\n\n\treturn (\n\t\t
    \n\t\t\t{allActions.map((action, key) => (\n\t\t\t\t\n\t\t\t))}\n\t\t
    \n\t);\n}\n\nFileActions.propTypes = {\n\tselected: PropTypes.string,\n\tcreateFile: PropTypes.func.isRequired,\n\tdeleteFile: PropTypes.func.isRequired,\n\tenableRename: PropTypes.func.isRequired,\n\texportAsText: PropTypes.func.isRequired,\n\tprintFile: PropTypes.func.isRequired,\n\tstartImport: PropTypes.func.isRequired,\n};\n\nexport default React.memo(FileActions);\n","import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nfunction FileEntry(props) {\n\tconst [title, setTitle] = useState(props.title);\n\n\tconst {\n\t\tfileId,\n\t\tisSelected,\n\t\tisRenamed,\n\t\tdefaultTitle,\n\t\tselectFile,\n\t\tenableRename,\n\t\tupdateFile,\n\t} = props;\n\n\tconst classList = ['fileManagerEntry'];\n\tif (isSelected) {\n\t\tclassList.push('fileManagerEntry-isSelected');\n\t}\n\tif (isRenamed) {\n\t\tclassList.push('fileManagerEntry-isRenamed');\n\t}\n\n\tconst inputRef = React.createRef();\n\n\tuseEffect(() => {\n\t\tif (isRenamed) {\n\t\t\tinputRef.current.focus();\n\t\t}\n\t}, [isRenamed, inputRef]);\n\n\tfunction handleClick() {\n\t\tif (!isSelected) {\n\t\t\tselectFile(fileId);\n\t\t}\n\t}\n\n\tfunction handleDoubleClick(e) {\n\t\tif (!isRenamed) {\n\t\t\tenableRename(fileId);\n\t\t\te.target.select();\n\t\t}\n\t}\n\n\tfunction handleKeyPress(e) {\n\t\tif (isRenamed && e.which === 13) {\n\t\t\te.preventDefault();\n\t\t\twindow.getSelection().removeAllRanges();\n\n\t\t\tconst newTitle = e.target.value;\n\t\t\tsaveTitle(newTitle);\n\t\t}\n\t}\n\n\tfunction handleChange(e) {\n\t\tsetTitle(e.target.value);\n\t}\n\n\tfunction handleFocus(e) {\n\t\tif (isRenamed) {\n\t\t\te.target.select();\n\t\t}\n\t}\n\n\tfunction handleBlur(e) {\n\t\tif (isRenamed) {\n\t\t\tconst newTitle = e.target.value;\n\t\t\tsaveTitle(newTitle);\n\t\t}\n\t}\n\n\tfunction saveTitle(newTitle) {\n\t\tnewTitle = newTitle || defaultTitle;\n\n\t\tupdateFile(fileId, {\n\t\t\ttitle: newTitle,\n\t\t});\n\t\tsetTitle(newTitle);\n\n\t\tinputRef.current.scrollLeft = 0;\n\t}\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\n\t);\n}\n\nFileEntry.propTypes = {\n\ttitle: PropTypes.string.isRequired,\n\tfileId: PropTypes.string.isRequired,\n\tisSelected: PropTypes.bool.isRequired,\n\tisRenamed: PropTypes.bool.isRequired,\n\tdefaultTitle: PropTypes.string.isRequired,\n\tselectFile: PropTypes.func.isRequired,\n\tenableRename: PropTypes.func.isRequired,\n\tupdateFile: PropTypes.func.isRequired,\n};\n\nexport default FileEntry;\n","import './FileManager.scss';\n\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport exportSelectedFileAsText from '../exportSelectedFileAsText';\n\nimport DeleteConfirmModal from './DeleteConfirmModal';\nimport Icon from '../../ui/_components/Icon';\nimport FileActions from './FileActions';\nimport FileEntry from './FileEntry';\n\nfunction FileManager(props) {\n\tconst [isDeleting, setIsDeleting] = useState(false);\n\n\tconst {\n\t\tallTitles,\n\t\tselected,\n\t\trenamed,\n\t\tdefaultTitle,\n\n\t\tcreateFile,\n\t\tdeleteFile,\n\t\tenableRename,\n\t\tstartImport,\n\t\tselectFile,\n\t\tupdateFile,\n\t\tsetEditorMode,\n\t} = props;\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\n\t\t\t
    \n\t\t\t\t createFile(defaultTitle)}\n\t\t\t\t\tdeleteFile={() => setIsDeleting(true)}\n\t\t\t\t\tenableRename={() => enableRename(selected)}\n\t\t\t\t\tstartImport={() => startImport()}\n\t\t\t\t\texportAsText={() => {\n\t\t\t\t\t\tsetEditorMode('export');\n\t\t\t\t\t\tsetTimeout(() => exportSelectedFileAsText(), 0);\n\t\t\t\t\t}}\n\t\t\t\t\tprintFile={() => {\n\t\t\t\t\t\tsetEditorMode('print');\n\t\t\t\t\t\tsetTimeout(() => window.print(), 0);\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t\t
      \n\t\t\t\t\t{allTitles.map((file) => (\n\t\t\t\t\t\t\n\t\t\t\t\t))}\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n}\n\nFileManager.propTypes = {\n\tallTitles: PropTypes.arrayOf(\n\t\tPropTypes.shape({\n\t\t\ttitle: PropTypes.string.isRequired,\n\t\t\tid: PropTypes.string.isRequired,\n\t\t})\n\t).isRequired,\n\tselected: PropTypes.string.isRequired,\n\trenamed: PropTypes.string.isRequired,\n\tdefaultTitle: PropTypes.string.isRequired,\n\n\tselectFile: PropTypes.func.isRequired,\n\tcreateFile: PropTypes.func.isRequired,\n\tdeleteFile: PropTypes.func.isRequired,\n\tenableRename: PropTypes.func.isRequired,\n\tstartImport: PropTypes.func.isRequired,\n\tupdateFile: PropTypes.func.isRequired,\n\tsetEditorMode: PropTypes.func.isRequired,\n};\n\nexport default FileManager;\n","import { connect } from 'react-redux';\n\nimport { selectFile, enableRename } from '../_state/actions';\nimport {\n\tgetDefaultTitle,\n\tgetSelectedId,\n\tgetRenamedId,\n} from '../_state/selectors';\n\nimport { createFile, updateFile, deleteFile } from '../../db/files/actions';\nimport { startImport } from '../../songImporter/_state/actions';\nimport { setEditorMode } from '../../ui/layout/app/_state/actions';\n\nimport { getAllTitles } from '../../db/files/selectors';\n\nimport FileManager from '../_components/FileManager';\n\nexport default connect(\n\t(state) => ({\n\t\tselected: getSelectedId(state),\n\t\trenamed: getRenamedId(state),\n\t\tdefaultTitle: getDefaultTitle(state),\n\t\tallTitles: getAllTitles(state),\n\t}),\n\n\t{\n\t\tselectFile,\n\t\tcreateFile,\n\t\tdeleteFile,\n\t\tupdateFile,\n\t\tenableRename,\n\t\tsetEditorMode,\n\t\tstartImport,\n\t}\n)(FileManager);\n","import domPurify from 'dompurify';\n\nexport default function escapeHTML(unescaped) {\n\treturn domPurify.sanitize(unescaped);\n}\n","import './SongRenderer.scss';\n\nimport _pick from 'lodash/pick';\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport escapeHTML from '../../core/escapeHTML';\n\nimport { renderAsHtml } from '../../core/renderSong';\n\nfunction SongRenderer(props) {\n\tconst { content, useChartFormat } = props;\n\n\tconst renderOptions = _pick(props, [\n\t\t'chartFormat',\n\n\t\t'transposeValue',\n\t\t'accidentalsType',\n\t\t'symbolType',\n\n\t\t'chartType',\n\t\t'alignChordsWithLyrics',\n\t\t'alignBars',\n\t\t'autoRepeatChords',\n\t\t'expandSectionCopy',\n\t]);\n\n\tconst rendered = renderAsHtml(content, renderOptions, useChartFormat);\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t
    \n\t);\n}\n\nSongRenderer.propTypes = {\n\tuseChartFormat: PropTypes.bool.isRequired,\n\tchartFormat: PropTypes.string.isRequired,\n\tcontent: PropTypes.string,\n};\n\nSongRenderer.defaultProps = {\n\tcontent: '',\n\tuseChartFormat: false,\n};\n\nexport default SongRenderer;\n","import { connect } from 'react-redux';\n\nimport { getOptionValue } from '../../db/options/selectors';\n\nimport SongRenderer from '../_components/SongRenderer';\n\nexport default connect((state) => ({\n\t// songPreferences\n\ttransposeValue: getOptionValue(state, 'songPreferences', 'transposeValue'),\n\taccidentalsType: getOptionValue(\n\t\tstate,\n\t\t'songPreferences',\n\t\t'preferredAccidentals'\n\t),\n\tsymbolType: getOptionValue(state, 'songPreferences', 'symbolType'),\n\n\t// songFormatting\n\tchartFormat: getOptionValue(state, 'editorPreferences', 'chartFormat'),\n\tchartType: getOptionValue(state, 'songFormatting', 'chartType'),\n\talignChordsWithLyrics: getOptionValue(\n\t\tstate,\n\t\t'songFormatting',\n\t\t'alignChordsWithLyrics'\n\t),\n\talignBars: getOptionValue(state, 'songFormatting', 'alignBars'),\n\tautoRepeatChords: getOptionValue(\n\t\tstate,\n\t\t'songFormatting',\n\t\t'autoRepeatChords'\n\t),\n\texpandSectionCopy: getOptionValue(\n\t\tstate,\n\t\t'songFormatting',\n\t\t'expandSectionCopy'\n\t),\n}))(SongRenderer);\n","import './EditorPreview.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport SongRenderer from '../../_containers/SongRenderer';\n\nfunction EditorPreview(props) {\n\tconst { selectedFile } = props;\n\n\tconst classNames = ['editorPreview'];\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t
    \n\t);\n}\n\nEditorPreview.propTypes = {\n\tselectedFile: PropTypes.object.isRequired,\n};\n\nexport default EditorPreview;\n","import { Schema } from 'prosemirror-model';\n\nconst editorSchema = new Schema({\n\tnodes: {\n\t\tdoc: {\n\t\t\tcontent: 'block+',\n\t\t},\n\n\t\tparagraph: {\n\t\t\tcontent: 'inline*',\n\t\t\tgroup: 'block',\n\t\t\tparseDOM: [{ tag: 'p' }],\n\t\t\ttoDOM() {\n\t\t\t\treturn ['p', 0];\n\t\t\t},\n\t\t},\n\n\t\thard_break: {\n\t\t\tinline: true,\n\t\t\tgroup: 'inline',\n\t\t\tselectable: false,\n\t\t\tparseDOM: [{ tag: 'br' }],\n\t\t\t// no idea how to test this!\n\t\t\t/* istanbul ignore next */\n\t\t\ttoDOM() {\n\t\t\t\treturn ['br'];\n\t\t\t},\n\t\t},\n\n\t\ttext: {\n\t\t\tgroup: 'inline',\n\t\t},\n\t},\n});\n\nexport default editorSchema;\n","/**\n * Convert a proseMirror state to plain text\n */\nexport default function stateToText(state) {\n\tconst json = state.toJSON();\n\n\treturn json.doc.content\n\t\t.map((paragraph) => {\n\t\t\tif (!paragraph.content) {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\treturn paragraph.content.reduce((acc, current) => {\n\t\t\t\tacc += current.text || '\\n';\n\t\t\t\treturn acc;\n\t\t\t}, '');\n\t\t})\n\t\t.join('\\n');\n}\n","import domPurify from 'dompurify';\n\n/**\n * Minimal wrapper around DOMPurify library.\n * Pretty drastic also: anything that is HTML is just simply ignored, including text content of tags.\n *\n * @param {String} dirty\n * @returns {String} clean HTML\n */\nexport default function toSafeHtml(dirty) {\n\tconst config = {\n\t\tALLOWED_TAGS: ['p', '#text'],\n\t\tKEEP_CONTENT: false,\n\t};\n\n\treturn domPurify.sanitize(dirty, config);\n}\n","import './ProsemirrorEditorView.scss';\n\nimport React, { useEffect, useRef } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { EditorState } from 'prosemirror-state';\nimport { EditorView } from 'prosemirror-view';\nimport { DOMParser as pmDOMParser } from 'prosemirror-model';\n\nimport getPlugins from './getPlugins';\nimport editorSchema from './schema';\n\nimport stateToText from './converters/stateToText';\nimport textToDom from './converters/textToDom';\n\nimport 'prosemirror-view/style/prosemirror.css';\n\nfunction createEditorState(editorContent) {\n\treturn EditorState.create({\n\t\tdoc: pmDOMParser\n\t\t\t.fromSchema(editorSchema)\n\t\t\t.parse(textToDom(editorContent), { preserveWhitespace: 'full' }),\n\t\tplugins: getPlugins(),\n\t});\n}\n\nfunction createEditorView(editorState, updateFile, fileId) {\n\treturn new EditorView(null, {\n\t\tstate: editorState,\n\t\tdispatchTransaction: function dispatchTransaction(transaction) {\n\t\t\tconst { state, transactions } =\n\t\t\t\tthis.state.applyTransaction(transaction);\n\n\t\t\tthis.updateState(state);\n\n\t\t\tif (transactions.some((tr) => tr.docChanged)) {\n\t\t\t\tupdateFile(fileId, { content: stateToText(state) });\n\t\t\t}\n\t\t},\n\t});\n}\n\nfunction ProseMirrorEditorView(props) {\n\tconst { selectedFileId, editorContent, updateFile } = props;\n\n\tconst editorView = useRef();\n\tconst editorDom = useRef();\n\tconst previousFileId = usePrevious(selectedFileId);\n\n\t/**\n\t * Editor is recreated on component mount and on file change.\n\t * The later is needed as we need to to re-bind the change handler with the new file id.\n\t */\n\tfunction shouldCreateEditor() {\n\t\treturn (\n\t\t\tselectedFileId &&\n\t\t\t(!editorView.current || previousFileId !== selectedFileId)\n\t\t);\n\t}\n\n\t// Editor has been previously created, but now no file is selected anymore\n\tfunction isEditorOrphan() {\n\t\treturn editorExists() && !selectedFileId;\n\t}\n\n\tfunction editorExists() {\n\t\treturn editorView.current && editorView.current.dom.parentNode;\n\t}\n\n\tfunction destroyEditor() {\n\t\teditorView.current.dom.parentNode.removeChild(editorView.current.dom);\n\t}\n\n\tuseEffect(() => {\n\t\tif (shouldCreateEditor()) {\n\t\t\tif (editorExists()) {\n\t\t\t\tdestroyEditor();\n\t\t\t}\n\n\t\t\tconst editorState = createEditorState(editorContent);\n\t\t\teditorView.current = createEditorView(\n\t\t\t\teditorState,\n\t\t\t\tupdateFile,\n\t\t\t\tselectedFileId\n\t\t\t);\n\t\t\teditorDom.current.appendChild(editorView.current.dom);\n\n\t\t\t// expose editor instance as a component property for unit tests\n\t\t\tProseMirrorEditorView.editorView = editorView.current;\n\t\t} else if (isEditorOrphan()) {\n\t\t\tdestroyEditor();\n\t\t}\n\t});\n\n\treturn
    ;\n}\n\nProseMirrorEditorView.defaultProps = {\n\tselectedFileId: '',\n\teditorContent: '',\n};\n\nProseMirrorEditorView.propTypes = {\n\tselectedFileId: PropTypes.string,\n\teditorContent: PropTypes.string,\n\tupdateFile: PropTypes.func.isRequired,\n};\n\nexport default ProseMirrorEditorView;\n\n// @see https://reactjs.org/docs/hooks-faq.html#how-to-get-the-previous-props-or-state\nfunction usePrevious(value) {\n\tconst ref = useRef();\n\tuseEffect(() => {\n\t\tref.current = value;\n\t});\n\treturn ref.current;\n}\n","import escapeHTML from './toSafeHtml';\n\n/**\n * @param {String} text\n * @returns {HTMLElement}\n */\nexport default function textToDom(text) {\n\tconst html = escapeHTML(text)\n\t\t.split('\\n')\n\t\t.map((line) => `

    ${line}

    `)\n\t\t.join('');\n\n\tconst div = document.createElement('div');\n\tdiv.innerHTML = escapeHTML(html);\n\n\treturn div;\n}\n","import { keymap } from 'prosemirror-keymap';\nimport { baseKeymap } from 'prosemirror-commands';\nimport { undo, redo, history as pmHistory } from 'prosemirror-history';\n\nexport default function getPlugins() {\n\treturn [\n\t\tpmHistory(),\n\t\tkeymap({ 'Mod-z': undo, 'Mod-y': redo }),\n\t\tkeymap(baseKeymap),\n\t];\n}\n","import './EditorLayout.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { ScrollSync, ScrollSyncNode } from 'scroll-sync-react';\n\nimport EditorPreview from '../../../songRenderers/editorPreview/_components/EditorPreview';\nimport ProseMirrorEditorView from '../prosemirror/ProsemirrorEditorView';\nimport Icon from '../../../ui/_components/Icon';\n\nfunction EditorLayout(props) {\n\tconst { selectedFile, updateFile, theme } = props;\n\n\tconst previewClassNames = [\n\t\t'songEditor-preview',\n\t\t'cmTheme-' + theme,\n\t\t'cmTheme-fadeRepeats',\n\t];\n\n\treturn (\n\t\t<>\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\tChordMark source (\n\t\t\t\t\t\n\t\t\t\t\t\ttutorial\n\t\t\t\t\t\n\t\t\t\t\t)\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\tResult preview\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n}\n\nEditorLayout.propTypes = {\n\tselectedFile: PropTypes.object,\n\ttheme: PropTypes.string.isRequired,\n\tupdateFile: PropTypes.func.isRequired,\n};\n\nexport default EditorLayout;\n","import { connect } from 'react-redux';\n\nimport { getOptionValue } from '../../../db/options/selectors';\n\nimport EditorLayout from '../_components/EditorLayout';\n\nexport default connect((state) => ({\n\ttheme: getOptionValue(state, 'editorPreferences', 'theme'),\n}))(EditorLayout);\n","import './ExportPreview.scss';\n\nimport React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nimport SongRenderer from '../../_containers/SongRenderer';\n\nfunction ExportPreview(props) {\n\tconst { selectedFile } = props;\n\n\tconst exportPreviewRef = React.createRef();\n\n\tconst selectAll = (e) => {\n\t\tif ((e.metaKey || e.ctrlKey) && e.key.toLowerCase() === 'a') {\n\t\t\te.preventDefault();\n\t\t\twindow.getSelection().selectAllChildren(exportPreviewRef.current);\n\t\t}\n\t};\n\n\tuseEffect(() => {\n\t\twindow.addEventListener('keydown', selectAll);\n\t\treturn () => {\n\t\t\twindow.removeEventListener('keydown', selectAll);\n\t\t};\n\t});\n\n\treturn (\n\t\t\n\t\t\t\n\t\t
    \n\t);\n}\n\nExportPreview.propTypes = {\n\tselectedFile: PropTypes.object.isRequired,\n};\n\nexport default ExportPreview;\n","import './PlayRenderer.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport SongRenderer from '../../_containers/SongRenderer';\n\nfunction PlayRenderer(props) {\n\tconst { theme, selectedFile, fontSize, columnsCount } = props;\n\n\tconst wrapperClassNames = ['playRendererWrapper1'];\n\twrapperClassNames.push('cmTheme-' + theme);\n\twrapperClassNames.push('cmSong--fontSize' + fontSize);\n\n\tconst classNames = ['playRenderer'];\n\tclassNames.push('playRenderer--columns-' + columnsCount);\n\n\treturn (\n\t\t\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n}\n\nPlayRenderer.propTypes = {\n\ttheme: PropTypes.string.isRequired,\n\tfontSize: PropTypes.number.isRequired,\n\tselectedFile: PropTypes.object.isRequired,\n\tcolumnsCount: PropTypes.number.isRequired,\n};\n\nexport default PlayRenderer;\n","import { connect } from 'react-redux';\n\nimport { getOptionValue } from '../../../db/options/selectors';\n\nimport PlayRenderer from '../_components/PlayRenderer';\n\nexport default connect((state) => ({\n\ttheme: getOptionValue(state, 'editorPreferences', 'theme'),\n\tfontSize: getOptionValue(state, 'songFormatting', 'fontSize'),\n\tcolumnsCount: getOptionValue(state, 'songFormatting', 'columnsCount'),\n}))(PlayRenderer);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport escapeHTML from '../../../core/escapeHTML';\n\nfunction Page(props) {\n\tconst {\n\t\tpageHeader,\n\t\tallColumnsLines,\n\t\tdocumentSize,\n\t\tdocumentMargins,\n\t\tfontSize,\n\t} = props;\n\n\tconst allSectionsRendered = allColumnsLines.map((columnLines, index) => {\n\t\tconst columnLinesTxt = columnLines.join('');\n\n\t\treturn (\n\t\t\t\n\t\t);\n\t});\n\n\tconst pageClasses = ['printPreview-page'];\n\tpageClasses.push('printPreview-page--' + documentSize);\n\tpageClasses.push('cmSong--fontSize' + fontSize);\n\tpageClasses.push('cmSong');\n\n\tconst pageContentWrapperClasses = ['printPreview-pageContentWrapper'];\n\tpageContentWrapperClasses.push(\n\t\t'printPreview-pageContentWrapper--padding' + documentMargins\n\t);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t{pageHeader}\n\t\t\t\t\t
    \n\t\t\t\t\t\t{allSectionsRendered}\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n}\nPage.defaultProps = {\n\tallColumnsLines: [],\n};\nPage.propTypes = {\n\tpageHeader: PropTypes.element,\n\tallColumnsLines: PropTypes.arrayOf(PropTypes.arrayOf(PropTypes.string)),\n\tdocumentSize: PropTypes.string.isRequired,\n\tdocumentMargins: PropTypes.number.isRequired,\n\tfontSize: PropTypes.number.isRequired,\n};\n\nexport default React.memo(Page);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction PageHeader(props) {\n\tconst { title } = props;\n\n\treturn
    {title}
    ;\n}\nPageHeader.defaultProps = {\n\tallColumnsLines: [],\n};\nPageHeader.propTypes = {\n\ttitle: PropTypes.string.isRequired,\n};\n\nexport default React.memo(PageHeader);\n","const cssClasses = {\n\temptyLine: 'cmEmptyLine',\n\tchordLine: 'cmChordLine',\n\ttextLine: 'cmLyricLine',\n};\n\n/**\n * @param {Object[]} allLinesWithHeight\n * @param {String} allLinesWithHeight.content\n * @param {Number} allLinesWithHeight.height\n * @param {Number} columnsCount\n * @param {Number} firstPageHeight\n * @param {Number} normalPageHeight\n * @param {Boolean} columnBreakOnSection\n * @param {Boolean} noEmptyLinesOnColumnStart\n * @param {Boolean} noOrphanTextLine\n * @returns {Array} array of pages, as array of columns\n */\nexport default function mapLinesToColumns(\n\tallLinesWithHeight,\n\t{\n\t\tcolumnsCount,\n\t\tfirstPageHeight,\n\t\tnormalPageHeight,\n\t\tcolumnBreakOnSection,\n\t\tnoEmptyLinesOnColumnStart = true,\n\t\tnoOrphanTextLine = true,\n\t}\n) {\n\tconst layout = layoutFactory({\n\t\tcolumnsCount,\n\t\tfirstPageHeight,\n\t\tnormalPageHeight,\n\t\tnoEmptyLinesOnColumnStart,\n\t});\n\n\tlet buffer = [];\n\tlet bufferHeight = 0;\n\n\tconst pageHeight = firstPageHeight || normalPageHeight;\n\n\tif (pageHeight > 0) {\n\t\tallLinesWithHeight.forEach((line, lineIndex) => {\n\t\t\tif (\n\t\t\t\tshouldRenderLine(\n\t\t\t\t\tlayout,\n\t\t\t\t\tline,\n\t\t\t\t\tbuffer,\n\t\t\t\t\tnoEmptyLinesOnColumnStart\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tbuffer.push(line);\n\t\t\t\tbufferHeight += line.height;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\tbuffer.length > 0 &&\n\t\t\t\tisBreakable(line, allLinesWithHeight[lineIndex + 1], {\n\t\t\t\t\tnoOrphanTextLine,\n\t\t\t\t\tcolumnBreakOnSection,\n\t\t\t\t})\n\t\t\t) {\n\t\t\t\tif (layout.fitsOnCurrentColumn(bufferHeight)) {\n\t\t\t\t\tlayout.insert(buffer);\n\t\t\t\t} else if (layout.fitsOnNextColumn(bufferHeight)) {\n\t\t\t\t\tlayout.insertOnNextColumn(buffer);\n\t\t\t\t} else {\n\t\t\t\t\tlayout.insert(buffer);\n\t\t\t\t}\n\t\t\t\tbuffer = [];\n\t\t\t\tbufferHeight = 0;\n\t\t\t}\n\t\t});\n\t}\n\treturn layout.get();\n}\n\n/**\n * Try to spot the case where the line is empty and would be rendered as the first line\n * of the next column, which we may want to avoid\n */\nfunction shouldRenderLine(layout, line, buffer, noEmptyLinesOnColumnStart) {\n\treturn !(\n\t\tisEmptyLine(line) &&\n\t\t!layout.fitsOnCurrentColumn(line.height) &&\n\t\tbuffer.length === 0 &&\n\t\tnoEmptyLinesOnColumnStart === true\n\t);\n}\n\nfunction isBreakable(\n\tcurrentLine,\n\tnextLine,\n\t{ noOrphanTextLine, columnBreakOnSection }\n) {\n\tif (isEmptyLine(currentLine) || !nextLine) {\n\t\treturn true;\n\t}\n\n\tconst wouldProduceOrphanTextLine =\n\t\tisChordLine(currentLine) && isTextLine(nextLine);\n\tif (noOrphanTextLine === true && wouldProduceOrphanTextLine) {\n\t\treturn false;\n\t}\n\n\tconst isEndOfParagraph = isEmptyLine(nextLine);\n\tif (columnBreakOnSection === true && !isEndOfParagraph) {\n\t\treturn false;\n\t}\n\treturn true;\n}\n\nfunction isEmptyLine(line) {\n\treturn hasClass(line.content, cssClasses.emptyLine);\n}\n\nfunction isChordLine(line) {\n\treturn hasClass(line.content, cssClasses.chordLine);\n}\n\nfunction isTextLine(line) {\n\treturn hasClass(line.content, cssClasses.textLine);\n}\n\nfunction hasClass(line, className) {\n\treturn line.indexOf(className) > -1;\n}\n\nfunction layoutFactory({ firstPageHeight, normalPageHeight, columnsCount }) {\n\tconst allPagesColumns = [];\n\n\tlet pageIndex = 0;\n\tlet columnIndex = 0;\n\tlet maxColumnHeight = getMaxColumnHeight();\n\tlet currentColumnHeight = 0;\n\n\tallPagesColumns[pageIndex] = [];\n\tallPagesColumns[pageIndex][columnIndex] = [];\n\n\tfunction flushBuffer(buffer) {\n\t\tbuffer.forEach((line) => {\n\t\t\tif (shouldChangeColumn(currentColumnHeight + line.height)) {\n\t\t\t\tchangeColumn();\n\t\t\t}\n\t\t\tallPagesColumns[pageIndex][columnIndex].push(line.content);\n\t\t\tcurrentColumnHeight += line.height;\n\t\t});\n\t}\n\n\tfunction getMaxColumnHeight() {\n\t\treturn pageIndex === 0 && firstPageHeight\n\t\t\t? firstPageHeight\n\t\t\t: normalPageHeight;\n\t}\n\n\tfunction shouldChangeColumn(nextHeight) {\n\t\treturn nextHeight > maxColumnHeight;\n\t}\n\n\tfunction changeColumn() {\n\t\tif (shouldChangePage()) {\n\t\t\tpageIndex++;\n\t\t\tallPagesColumns[pageIndex] = [];\n\t\t\tcolumnIndex = 0;\n\t\t} else {\n\t\t\tcolumnIndex++;\n\t\t}\n\t\tallPagesColumns[pageIndex][columnIndex] = [];\n\t\tcurrentColumnHeight = 0;\n\t\tmaxColumnHeight = getMaxColumnHeight();\n\t}\n\n\tfunction shouldChangePage() {\n\t\treturn columnIndex === columnsCount - 1;\n\t}\n\n\treturn {\n\t\tinsert(buffer) {\n\t\t\tflushBuffer(buffer);\n\t\t},\n\n\t\tinsertOnNextColumn(buffer) {\n\t\t\tchangeColumn();\n\t\t\tflushBuffer(buffer);\n\t\t},\n\n\t\tfitsOnCurrentColumn(bufferHeight) {\n\t\t\treturn currentColumnHeight + bufferHeight <= maxColumnHeight;\n\t\t},\n\n\t\tfitsOnNextColumn(bufferHeight) {\n\t\t\tconst nextColumnHeight =\n\t\t\t\tpageIndex === 0 && columnIndex < columnsCount && firstPageHeight\n\t\t\t\t\t? firstPageHeight\n\t\t\t\t\t: normalPageHeight;\n\t\t\treturn bufferHeight <= nextColumnHeight;\n\t\t},\n\n\t\tget() {\n\t\t\treturn allPagesColumns;\n\t\t},\n\t};\n}\n","import './getDimensionsFromDom.scss';\n\nimport React, { useLayoutEffect } from 'react';\nimport { createRoot } from 'react-dom/client';\n\nexport default function getDimensionsFromDom(component, measuringFn) {\n\tconst container = document.createElement('div');\n\tcontainer.classList.add('measuring-node');\n\tdocument.body.appendChild(container);\n\tconst root = createRoot(container);\n\n\treturn new Promise((resolve) => {\n\t\tconst MeasuringComponent = () => {\n\t\t\tuseLayoutEffect(() => {\n\t\t\t\tconst measure = measuringFn(container);\n\t\t\t\tresolve(measure);\n\t\t\t});\n\n\t\t\treturn
    {component}
    ;\n\t\t};\n\n\t\troot.render();\n\t}).then((measure) => {\n\t\troot.unmount();\n\t\tcontainer.parentNode.removeChild(container);\n\n\t\treturn measure;\n\t});\n}\n","export default function padColumns(columnCount, allColumns = []) {\n\tfor (let i = allColumns.length || 0; i < columnCount; i++) {\n\t\tallColumns.push([]);\n\t}\n\treturn allColumns;\n}\n","export function getOffsetHeight(element) {\n\treturn element.offsetHeight;\n}\n\nexport function getClientHeight(element) {\n\treturn element.clientHeight;\n}\n","import React from 'react';\n\nimport getDimensionsFromDom from './getDimensionsFromDom';\nimport padColumns from './padColumns';\nimport { getOffsetHeight } from './element';\n\nimport Page from '../_components/Page';\n\nconst cssSelectors = {\n\tline: '.cmLine',\n};\n\nexport default async function getAllLinesHeight(\n\tallLines,\n\t{ columnsCount, documentSize, documentMargins, fontSize }\n) {\n\tconst component = (\n\t\t
    \n\t\t\t\n\t\t
    \n\t);\n\n\tconst measuringFn = (container) => {\n\t\tconst allLinesHeight = [];\n\t\tcontainer.querySelectorAll(cssSelectors.line).forEach((line) => {\n\t\t\tallLinesHeight.push(getOffsetHeight(line));\n\t\t});\n\t\treturn allLinesHeight;\n\t};\n\n\treturn await getDimensionsFromDom(component, measuringFn);\n}\n","import React from 'react';\n\nimport getDimensionsFromDom from './getDimensionsFromDom';\nimport padColumns from './padColumns';\nimport { getClientHeight } from './element';\n\nimport Page from '../_components/Page';\nimport PageHeader from '../_components/PageHeader';\n\nexport default async function getAllLinesHeight(\n\ttitle,\n\t{ columnsCount, documentSize, documentMargins, fontSize }\n) {\n\tconst component = (\n\t\t}\n\t\t\tallColumnsLines={padColumns(columnsCount)}\n\t\t\tdocumentSize={documentSize}\n\t\t\tdocumentMargins={documentMargins}\n\t\t\tfontSize={fontSize}\n\t\t/>\n\t);\n\n\tconst measuringFn = (container) => {\n\t\tconst pageContent = container.querySelector(\n\t\t\t'.printPreview-pageContent'\n\t\t);\n\t\tconst pageColumnWrapper = container.querySelector(\n\t\t\t'.printPreview-pageColumnWrapper'\n\t\t);\n\t\treturn {\n\t\t\tfirstPageHeight: getClientHeight(pageColumnWrapper),\n\t\t\tnormalPageHeight: getClientHeight(pageContent),\n\t\t};\n\t};\n\n\treturn await getDimensionsFromDom(component, measuringFn);\n}\n","import React, { useState, useLayoutEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Page from './Page';\nimport PageHeader from './PageHeader';\n\nimport mapLinesToColumns from '../helpers/mapLinesToColumns';\nimport getAllLinesHeight from '../helpers/getAllLinesHeight';\nimport getPagesHeight from '../helpers/getPagesHeight';\nimport padColumns from '../helpers/padColumns';\n\nfunction AllPages(props) {\n\tconst [allPagesColumns, setAllPagesColumns] = useState([]);\n\n\tconst {\n\t\ttitle,\n\t\tallLines,\n\t\tcolumnsCount,\n\t\tcolumnBreakOnSection,\n\t\tdocumentSize,\n\t\tdocumentMargins,\n\t\tfontSize,\n\t} = props;\n\n\tuseLayoutEffect(() => {\n\t\tconst getDimensions = async () => {\n\t\t\tconst pageOptions = {\n\t\t\t\tcolumnsCount,\n\t\t\t\tdocumentSize,\n\t\t\t\tdocumentMargins,\n\t\t\t\tfontSize,\n\t\t\t};\n\n\t\t\tconst allLinesHeight = await getAllLinesHeight(\n\t\t\t\tallLines,\n\t\t\t\tpageOptions\n\t\t\t);\n\n\t\t\tconst { normalPageHeight, firstPageHeight } = await getPagesHeight(\n\t\t\t\ttitle,\n\t\t\t\tpageOptions\n\t\t\t);\n\n\t\t\tconst allLinesWithHeight = allLines.map((line, index) => ({\n\t\t\t\tcontent: line,\n\t\t\t\theight: allLinesHeight[index],\n\t\t\t}));\n\n\t\t\tconst mapped = mapLinesToColumns(allLinesWithHeight, {\n\t\t\t\tcolumnsCount,\n\t\t\t\tcolumnBreakOnSection,\n\t\t\t\tnormalPageHeight,\n\t\t\t\tfirstPageHeight,\n\t\t\t});\n\n\t\t\tsetAllPagesColumns(mapped);\n\t\t};\n\t\tgetDimensions();\n\t}, [\n\t\tallLines,\n\t\ttitle,\n\t\tcolumnsCount,\n\t\tcolumnBreakOnSection,\n\t\tdocumentSize,\n\t\tdocumentMargins,\n\t\tfontSize,\n\t]);\n\n\tconst allPagesRendered = allPagesColumns.map((pageColumns, index) => {\n\t\treturn (\n\t\t\t : null}\n\t\t\t\tallColumnsLines={padColumns(columnsCount, pageColumns)}\n\t\t\t\tdocumentSize={documentSize}\n\t\t\t\tdocumentMargins={documentMargins}\n\t\t\t\tfontSize={fontSize}\n\t\t\t/>\n\t\t);\n\t});\n\n\treturn {allPagesRendered};\n}\n\nAllPages.propTypes = {\n\ttitle: PropTypes.string.isRequired,\n\tallLines: PropTypes.arrayOf(PropTypes.string).isRequired,\n\tcolumnsCount: PropTypes.number.isRequired,\n\tcolumnBreakOnSection: PropTypes.bool.isRequired,\n\tdocumentSize: PropTypes.string.isRequired,\n\tdocumentMargins: PropTypes.number.isRequired,\n\tfontSize: PropTypes.number.isRequired,\n};\n\nexport default AllPages;\n","import './PrintPreview.scss';\n\nimport _pick from 'lodash/pick';\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { renderAsHtml } from '../../../core/renderSong';\nimport AllPages from './AllPages';\n\nfunction PrintPreview(props) {\n\tconst { selectedFile } = props;\n\n\tconst renderOptions = _pick(props, [\n\t\t'transposeValue',\n\t\t'accidentalsType',\n\t\t'symbolType',\n\n\t\t'chartType',\n\t\t'alignChordsWithLyrics',\n\t\t'alignBars',\n\t\t'autoRepeatChords',\n\t\t'expandSectionCopy',\n\t]);\n\n\tconst rendered = renderAsHtml(selectedFile.content || '', {\n\t\t...renderOptions,\n\t});\n\tconst allLines = rendered.match(/(.*?<\\/p>)/gm);\n\n\tconst classNames = ['printPreview', 'cmTheme-print'];\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t
    \n\t);\n}\nPrintPreview.propTypes = {\n\tchartType: PropTypes.string.isRequired,\n\tselectedFile: PropTypes.object.isRequired,\n\tcolumnsCount: PropTypes.number.isRequired,\n\tcolumnBreakOnSection: PropTypes.bool.isRequired,\n\tdocumentSize: PropTypes.string,\n\tdocumentMargins: PropTypes.number.isRequired,\n\tfontSize: PropTypes.number.isRequired,\n};\n\nexport default PrintPreview;\n","import { connect } from 'react-redux';\n\nimport { getOptionValue } from '../../../db/options/selectors';\n\nimport PrintPreview from '../_components/PrintPreview';\n\nexport default connect((state) => ({\n\t// songPreferences\n\taccidentalsType: getOptionValue(\n\t\tstate,\n\t\t'songPreferences',\n\t\t'preferredAccidentals'\n\t),\n\ttransposeValue: getOptionValue(state, 'songPreferences', 'transposeValue'),\n\tsymbolType: getOptionValue(state, 'songPreferences', 'symbolType'),\n\n\t// songFormatting\n\tchartType: getOptionValue(state, 'songFormatting', 'chartType'),\n\talignChordsWithLyrics: getOptionValue(\n\t\tstate,\n\t\t'songFormatting',\n\t\t'alignChordsWithLyrics'\n\t),\n\talignBars: getOptionValue(state, 'songFormatting', 'alignBars'),\n\tautoRepeatChords: getOptionValue(\n\t\tstate,\n\t\t'songFormatting',\n\t\t'autoRepeatChords'\n\t),\n\texpandSectionCopy: getOptionValue(\n\t\tstate,\n\t\t'songFormatting',\n\t\t'expandSectionCopy'\n\t),\n\n\tcolumnsCount: getOptionValue(state, 'songFormatting', 'columnsCount'),\n\tcolumnBreakOnSection: getOptionValue(\n\t\tstate,\n\t\t'songFormatting',\n\t\t'columnBreakOnSection'\n\t),\n\tdocumentMargins: getOptionValue(state, 'songFormatting', 'documentMargins'),\n\n\tfontSize: getOptionValue(state, 'songFormatting', 'fontSize'),\n}))(PrintPreview);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport EditorLayout from '../songEditor/_containers/EditorLayout';\nimport ExportPreview from '../../songRenderers/exportPreview/_components/ExportPreview';\nimport PlayRenderer from '../../songRenderers/playRenderer/_containers/PlayRenderer';\nimport PrintPreview from '../../songRenderers/printPreview/_containers/PrintPreview';\n\nfunction Editor(props) {\n\tconst { editorMode } = props;\n\n\tswitch (editorMode) {\n\t\tcase 'edit':\n\t\t\treturn ;\n\t\tcase 'play':\n\t\t\treturn ;\n\t\tcase 'print':\n\t\t\treturn ;\n\t\tcase 'export':\n\t\t\treturn ;\n\t}\n}\n\nEditor.propTypes = {\n\teditorMode: PropTypes.string.isRequired,\n};\n\nexport default Editor;\n","import { connect } from 'react-redux';\n\nimport { getSelectedId } from '../../fileManager/_state/selectors';\nimport { getEditorMode } from '../../ui/layout/app/_state/selectors';\n\nimport { getOne } from '../../db/files/selectors';\nimport { updateFile } from '../../db/files/actions';\n\nimport Editor from '../_components/Editor';\n\nexport default connect(\n\t(state) => ({\n\t\tselectedFile: getOne(state, getSelectedId(state)) || {},\n\t\teditorMode: getEditorMode(state),\n\t}),\n\n\t{\n\t\tupdateFile,\n\t}\n)(Editor);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction OptionsPanel(props) {\n\tconst {\n\t\tid,\n\t\tallWidgets,\n\t\tnonInteractableWidgets,\n\t\thiddenWidgets,\n\t\tsetOption,\n\t\tgetEntryComponent,\n\t} = props;\n\n\tconst classNames = ['optionsPanel', 'optionsPanel-' + id];\n\n\tlet widget, groupWidget;\n\n\tlet WidgetComponent, GroupComponent;\n\tlet isGroupInteractable, isGroupWidgetInteractable;\n\n\tlet renderedGroupWidgets;\n\n\tconst renderedWidgets = allWidgets.widgetsOrder\n\t\t.filter((widgetId) => {\n\t\t\treturn !hiddenWidgets.includes(widgetId);\n\t\t})\n\t\t.map((widgetId) => {\n\t\t\twidget = allWidgets.allWidgets[widgetId];\n\n\t\t\tif (widget.type === 'optionsGroup') {\n\t\t\t\trenderedGroupWidgets = widget.groupWidgetsOrder\n\t\t\t\t\t.filter((groupWidgetId) => {\n\t\t\t\t\t\treturn !hiddenWidgets.includes(groupWidgetId);\n\t\t\t\t\t})\n\t\t\t\t\t.map((groupWidgetId) => {\n\t\t\t\t\t\tgroupWidget = widget.allGroupWidgets[groupWidgetId];\n\n\t\t\t\t\t\tisGroupWidgetInteractable =\n\t\t\t\t\t\t\t!nonInteractableWidgets.includes(widgetId) &&\n\t\t\t\t\t\t\t!nonInteractableWidgets.includes(groupWidgetId);\n\n\t\t\t\t\t\treturn renderWidget(\n\t\t\t\t\t\t\tgroupWidgetId,\n\t\t\t\t\t\t\tgroupWidget,\n\t\t\t\t\t\t\tisGroupWidgetInteractable\n\t\t\t\t\t\t);\n\t\t\t\t\t});\n\n\t\t\t\tif (renderedGroupWidgets.length === 0) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\tGroupComponent = getEntryComponent(widget.type);\n\t\t\t\tisGroupInteractable =\n\t\t\t\t\t!nonInteractableWidgets.includes(widgetId);\n\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{renderedGroupWidgets}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\treturn renderWidget(\n\t\t\t\t\twidgetId,\n\t\t\t\t\twidget,\n\t\t\t\t\t!nonInteractableWidgets.includes(widgetId)\n\t\t\t\t);\n\t\t\t}\n\t\t});\n\n\tfunction renderWidget(widgetId, localWidget, isInteractable) {\n\t\tWidgetComponent = getEntryComponent(localWidget.type);\n\n\t\treturn (\n\t\t\t\n\t\t);\n\t}\n\n\treturn
    {renderedWidgets}
    ;\n}\n\nOptionsPanel.propTypes = {\n\tid: PropTypes.string.isRequired,\n\tallWidgets: PropTypes.object.isRequired,\n\tnonInteractableWidgets: PropTypes.arrayOf(PropTypes.string).isRequired,\n\thiddenWidgets: PropTypes.arrayOf(PropTypes.string).isRequired,\n\tsetOption: PropTypes.func.isRequired,\n\tgetEntryComponent: PropTypes.func.isRequired,\n};\n\nexport default OptionsPanel;\n","import './OptionsGroup.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Icon from '../../../_components/Icon';\n\nfunction OptionsGroup(props) {\n\tconst { isInteractable, icon, label } = props;\n\n\tconst classNames = ['sb-optionsGroup'];\n\tif (!shouldBeInteractable()) {\n\t\tclassNames.push('sb-optionsGroup-isNotInteractable');\n\t}\n\n\tfunction shouldBeInteractable() {\n\t\treturn isInteractable && props.children && props.children.length > 0;\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t{' '}\n\t\t\t\t{label}\n\t\t\t
    \n\t\t\t
    {props.children}
    \n\t\t
    \n\t);\n}\n\nOptionsGroup.propTypes = {\n\tisInteractable: PropTypes.bool.isRequired,\n\ticon: PropTypes.string.isRequired,\n\tlabel: PropTypes.string.isRequired,\n\tchildren: PropTypes.arrayOf(PropTypes.element),\n};\n\nOptionsGroup.defaultProps = {};\n\nexport default OptionsGroup;\n","import './Select.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Icon from '../../../_components/Icon';\n\nfunction SelectChoice(props) {\n\tconst { isSelected, isInteractable, label, onClick } = props;\n\n\tlet checkIcon;\n\tconst classNames = ['sb-optionSelectChoice'];\n\n\tif (isSelected) {\n\t\tclassNames.push('sb-optionSelectChoice-isSelected');\n\t\tcheckIcon = (\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t);\n\t}\n\n\tif (!isInteractable) {\n\t\tclassNames.push('sb-optionSelectChoice-isNotInteractable');\n\t}\n\n\tfunction handleClick() {\n\t\tif (isInteractable) {\n\t\t\tonClick();\n\t\t}\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t{isSelected && checkIcon}\n\t\t\t
    \n\t\t\t
    {label}
    \n\t\t
    \n\t);\n}\n\nSelectChoice.propTypes = {\n\tisSelected: PropTypes.bool.isRequired,\n\tisInteractable: PropTypes.bool.isRequired,\n\tlabel: PropTypes.string.isRequired,\n\tonClick: PropTypes.func.isRequired,\n};\n\nexport default React.memo(SelectChoice);\n","import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport SelectChoice from './SelectChoice';\n\nimport Icon from '../../../_components/Icon';\n\nfunction Select(props) {\n\tconst [isOpen, setIsOpen] = useState(false);\n\n\tconst {\n\t\tisInteractable,\n\t\tlabel,\n\t\tallChoices,\n\t\toptionContext,\n\t\toptionKey,\n\t\toptionValue,\n\t\tsetOption,\n\t} = props;\n\n\tconst classNames = ['sb-optionSelect'];\n\tif (!isInteractable) {\n\t\tclassNames.push('sb-optionSelect-isNotInteractable');\n\t}\n\n\tconst iconName = isOpen ? 'keyboard_arrow_down' : 'keyboard_arrow_right';\n\n\tfunction toggleChoices() {\n\t\tsetIsOpen(!isOpen);\n\t}\n\n\tconst renderedChoices = !isOpen ? null : (\n\t\t
    \n\t\t\t{allChoices.map((choice) => (\n\t\t\t\t {\n\t\t\t\t\t\tsetOption(optionContext, optionKey, choice.value);\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t))}\n\t\t
    \n\t);\n\n\tconst activeLabel = allChoices.find(\n\t\t(choice) => optionValue === choice.value\n\t).label;\n\n\tconst selectLabel = isOpen ? (\n\t\tlabel\n\t) : (\n\t\t\n\t\t\t{label + ': '}\n\t\t\t\n\t\t\t\t{activeLabel}\n\t\t\t\n\t\t\n\t);\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{selectLabel}\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\n\t\t\t{renderedChoices}\n\t\t\n\t);\n}\n\nSelect.propTypes = {\n\tisInteractable: PropTypes.bool.isRequired,\n\tlabel: PropTypes.string.isRequired,\n\tallChoices: PropTypes.array.isRequired,\n\toptionContext: PropTypes.string.isRequired,\n\toptionKey: PropTypes.string.isRequired,\n\toptionValue: PropTypes.string.isRequired,\n\tsetOption: PropTypes.func.isRequired,\n};\n\nexport default Select;\n","import './Slider.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction Slider(props) {\n\tconst {\n\t\tisInteractable,\n\t\tlabel,\n\t\tmin,\n\t\tmax,\n\t\tshowPlusSymbol,\n\t\toptionContext,\n\t\toptionKey,\n\t\toptionValue,\n\t\tsetOption,\n\t} = props;\n\n\tconst classNames = ['sb-optionSlider'];\n\tif (!isInteractable) {\n\t\tclassNames.push('sb-optionSlider-isNotInteractable');\n\t}\n\n\tfunction handleChange(e) {\n\t\tsetOption(optionContext, optionKey, Number.parseInt(e.target.value));\n\t}\n\n\tconst valueDisplay =\n\t\toptionValue > 0 && showPlusSymbol ? '+' + optionValue : optionValue;\n\n\treturn (\n\t\t
    \n\t\t\t
    {label}
    \n\t\t\t
    {valueDisplay}
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n}\n\nSlider.propTypes = {\n\tisInteractable: PropTypes.bool.isRequired,\n\tlabel: PropTypes.string.isRequired,\n\tmin: PropTypes.number.isRequired,\n\tmax: PropTypes.number.isRequired,\n\tshowPlusSymbol: PropTypes.bool,\n\toptionContext: PropTypes.string.isRequired,\n\toptionKey: PropTypes.string.isRequired,\n\toptionValue: PropTypes.number.isRequired,\n\tsetOption: PropTypes.func.isRequired,\n};\n\nSlider.defaultProps = {\n\tshowPlusSymbol: true,\n};\n\nexport default React.memo(Slider);\n","import './Toggle.scss';\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Icon from '../../../_components/Icon';\n\nfunction Toggle(props) {\n\tconst {\n\t\tisInteractable,\n\t\tlabel,\n\t\toptionContext,\n\t\toptionKey,\n\t\toptionValue,\n\t\tsetOption,\n\t} = props;\n\n\tconst classNames = ['sb-optionToggle'];\n\tclassNames.push(\n\t\toptionValue === true ? 'sb-optionToggle-isOn' : 'sb-optionToggle-isOff'\n\t);\n\tif (!isInteractable) {\n\t\tclassNames.push('sb-optionToggle-isNotInteractable');\n\t}\n\n\tfunction handleClick() {\n\t\tsetOption(optionContext, optionKey, !optionValue);\n\t}\n\n\treturn (\n\t\t\n\t\t\t
    {label}
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\n\t);\n}\n\nToggle.propTypes = {\n\tisInteractable: PropTypes.bool.isRequired,\n\tlabel: PropTypes.string.isRequired,\n\toptionContext: PropTypes.string.isRequired,\n\toptionKey: PropTypes.string.isRequired,\n\toptionValue: PropTypes.bool.isRequired,\n\tsetOption: PropTypes.func.isRequired,\n};\n\nexport default React.memo(Toggle);\n","import './SidebarOptionsPanel.scss';\n\nimport React from 'react';\n\nimport OptionPanel from '../../../../optionsPanels/_components/OptionsPanel';\n\nimport OptionsGroup from './OptionsGroup';\nimport Select from './Select';\nimport Slider from './Slider';\nimport Toggle from './Toggle';\n\nfunction getEntryComponent(type) {\n\tswitch (type) {\n\t\tcase 'optionsGroup':\n\t\t\treturn OptionsGroup;\n\t\tcase 'select':\n\t\t\treturn Select;\n\t\tcase 'slider':\n\t\t\treturn Slider;\n\t\tcase 'toggle':\n\t\t\treturn Toggle;\n\t}\n}\n\nexport default function SidebarOptionPanel(props) {\n\treturn (\n\t\t
    \n\t\t\t\n\t\t
    \n\t);\n}\n","import createAction from '../../core/createAction';\nimport * as actionTypes from './actionsTypes';\n\nexport const setOptionValue = (context, key, value) => {\n\tif (!context) {\n\t\tthrow new TypeError('Cannot set an option without a context');\n\t}\n\tif (!key) {\n\t\tthrow new TypeError('Cannot set an option without a key');\n\t}\n\tconst payload = {\n\t\tcontext,\n\t\tkey,\n\t\tvalue,\n\t};\n\treturn createAction(actionTypes.DB_OPTION_SET_OPTION_VALUE, payload);\n};\n","import Rendering from '../_components/Rendering';\nimport OptionsPanelFactory from '../../_containers/OptionsPanelFactory';\n\nimport allWidgets from '../allWidgets';\nimport {\n\tgetNonInteractableWidgets,\n\tgetHiddenWidgets,\n} from '../_state/selectors';\n\nexport default OptionsPanelFactory(\n\tallWidgets,\n\tgetNonInteractableWidgets,\n\tgetHiddenWidgets,\n\tRendering\n);\n","import { connect } from 'react-redux';\n\nimport { getOptionValue } from '../../db/options/selectors';\nimport { setOptionValue } from '../../db/options/actions';\n\nexport default function OptionsPanelFactory(\n\tallWidgets,\n\tgetNonInteractableWidgets,\n\tgetHiddenWidgets,\n\tcomponent\n) {\n\treturn connect(\n\t\t(state) => {\n\t\t\tconst stateToProps = {\n\t\t\t\tallWidgets,\n\t\t\t\tnonInteractableWidgets: getNonInteractableWidgets(state),\n\t\t\t\thiddenWidgets: getHiddenWidgets(state),\n\t\t\t};\n\n\t\t\tlet widget;\n\t\t\tlet groupWidget;\n\n\t\t\tallWidgets.widgetsOrder.forEach((widgetId) => {\n\t\t\t\twidget = allWidgets.allWidgets[widgetId];\n\n\t\t\t\twidget.groupWidgetsOrder.forEach((groupWidgetId) => {\n\t\t\t\t\tgroupWidget = widget.allGroupWidgets[groupWidgetId];\n\n\t\t\t\t\tstateToProps[groupWidget.option.key] = getOptionValue(\n\t\t\t\t\t\tstate,\n\t\t\t\t\t\tgroupWidget.option.context,\n\t\t\t\t\t\tgroupWidget.option.key\n\t\t\t\t\t);\n\t\t\t\t});\n\t\t\t});\n\n\t\t\treturn stateToProps;\n\t\t},\n\n\t\t{\n\t\t\tsetOption: setOptionValue,\n\t\t}\n\t)(component);\n}\n","/* eslint-disable max-lines */\nexport default {\n\twidgetsOrder: ['editorPreferences', 'key', 'preferences', 'layout'],\n\n\tallWidgets: {\n\t\teditorPreferences: {\n\t\t\tlabel: 'Editor preferences',\n\t\t\ttype: 'optionsGroup',\n\t\t\ticon: 'tune',\n\n\t\t\tgroupWidgetsOrder: ['theme', 'chartFormat'],\n\t\t\tallGroupWidgets: {\n\t\t\t\ttheme: {\n\t\t\t\t\tlabel: 'Theme',\n\t\t\t\t\ttype: 'select',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tallChoices: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'themeDark1',\n\t\t\t\t\t\t\t\tlabel: 'Dark 1 (default)',\n\t\t\t\t\t\t\t\tvalue: 'dark1',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'themeDark2',\n\t\t\t\t\t\t\t\tlabel: 'Dark 2',\n\t\t\t\t\t\t\t\tvalue: 'dark2',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'themeDark3',\n\t\t\t\t\t\t\t\tlabel: 'Dark 3',\n\t\t\t\t\t\t\t\tvalue: 'dark3',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'editorPreferences',\n\t\t\t\t\t\tkey: 'theme',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tchartFormat: {\n\t\t\t\t\tlabel: 'Export format',\n\t\t\t\t\ttype: 'select',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tallChoices: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'formatChordMark',\n\t\t\t\t\t\t\t\tlabel: 'ChordMark',\n\t\t\t\t\t\t\t\tvalue: 'chordmark',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'formatChordMarkSrc',\n\t\t\t\t\t\t\t\tlabel: 'ChordMark (Source)',\n\t\t\t\t\t\t\t\tvalue: 'chordmarkSrc',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'formatChordpro',\n\t\t\t\t\t\t\t\tlabel: 'ChordPro',\n\t\t\t\t\t\t\t\tvalue: 'chordpro',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'formatUG',\n\t\t\t\t\t\t\t\tlabel: 'UltimateGuitar',\n\t\t\t\t\t\t\t\tvalue: 'ultimateGuitar',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'editorPreferences',\n\t\t\t\t\t\tkey: 'chartFormat',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tkey: {\n\t\t\tlabel: 'Key',\n\t\t\ttype: 'optionsGroup',\n\t\t\ticon: 'music_note',\n\n\t\t\tgroupWidgetsOrder: [\n\t\t\t\t'transposeValue',\n\t\t\t\t'preferredAccidentals',\n\t\t\t\t'symbolType',\n\t\t\t],\n\t\t\tallGroupWidgets: {\n\t\t\t\ttransposeValue: {\n\t\t\t\t\tlabel: 'Transpose',\n\t\t\t\t\ttype: 'slider',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tmin: -11,\n\t\t\t\t\t\tmax: 11,\n\t\t\t\t\t\tshowPlusSymbol: true,\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songPreferences',\n\t\t\t\t\t\tkey: 'transposeValue',\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tpreferredAccidentals: {\n\t\t\t\t\tlabel: 'Preferred accidentals',\n\t\t\t\t\ttype: 'select',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tallChoices: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'preferredAccidentalsAuto',\n\t\t\t\t\t\t\t\tlabel: 'Auto',\n\t\t\t\t\t\t\t\tvalue: 'auto',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'preferredAccidentalsSharp',\n\t\t\t\t\t\t\t\tlabel: '♯',\n\t\t\t\t\t\t\t\tvalue: 'sharp',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'preferredAccidentalsFlat',\n\t\t\t\t\t\t\t\tlabel: '♭',\n\t\t\t\t\t\t\t\tvalue: 'flat',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songPreferences',\n\t\t\t\t\t\tkey: 'preferredAccidentals',\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tsymbolType: {\n\t\t\t\t\tlabel: 'Symbols type',\n\t\t\t\t\ttype: 'select',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tallChoices: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'symbolTypeChord',\n\t\t\t\t\t\t\t\tlabel: 'Chord symbols',\n\t\t\t\t\t\t\t\tvalue: 'chord',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'symbolTypeRoman',\n\t\t\t\t\t\t\t\tlabel: 'Roman numerals',\n\t\t\t\t\t\t\t\tvalue: 'roman',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songPreferences',\n\t\t\t\t\t\tkey: 'symbolType',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tpreferences: {\n\t\t\tlabel: 'Chart settings',\n\t\t\ttype: 'optionsGroup',\n\t\t\ticon: 'tune',\n\n\t\t\tgroupWidgetsOrder: [\n\t\t\t\t'chartType',\n\t\t\t\t'alignChordsWithLyrics',\n\t\t\t\t'alignBars',\n\t\t\t\t'autoRepeatChords',\n\t\t\t\t'expandSectionCopy',\n\t\t\t],\n\t\t\tallGroupWidgets: {\n\t\t\t\tchartType: {\n\t\t\t\t\tlabel: 'Type',\n\t\t\t\t\ttype: 'select',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tallChoices: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'typedisplayAll',\n\t\t\t\t\t\t\t\tlabel: 'Show everything',\n\t\t\t\t\t\t\t\tvalue: 'all',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'typedisplayLyrics',\n\t\t\t\t\t\t\t\tlabel: 'Lyrics only',\n\t\t\t\t\t\t\t\tvalue: 'lyrics',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'typedisplayChords',\n\t\t\t\t\t\t\t\tlabel: 'Chords only',\n\t\t\t\t\t\t\t\tvalue: 'chords',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'typedisplayChordsFirstLyricLine',\n\t\t\t\t\t\t\t\tlabel: 'Chords + First lyric line',\n\t\t\t\t\t\t\t\tvalue: 'chordsFirstLyricLine',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'chartType',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\talignChordsWithLyrics: {\n\t\t\t\t\tlabel: 'Align chords with lyrics',\n\t\t\t\t\ttype: 'toggle',\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'alignChordsWithLyrics',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\talignBars: {\n\t\t\t\t\tlabel: 'Align bars',\n\t\t\t\t\ttype: 'toggle',\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'alignBars',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tautoRepeatChords: {\n\t\t\t\t\tlabel: 'Auto repeat chords',\n\t\t\t\t\ttype: 'toggle',\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'autoRepeatChords',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\texpandSectionCopy: {\n\t\t\t\t\tlabel: 'Expand copied sections',\n\t\t\t\t\ttype: 'toggle',\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'expandSectionCopy',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tlayout: {\n\t\t\ttype: 'optionsGroup',\n\t\t\tlabel: 'Layout',\n\t\t\ticon: 'view_compact',\n\n\t\t\tgroupWidgetsOrder: [\n\t\t\t\t'fontSize',\n\t\t\t\t'columnsCount',\n\t\t\t\t'columnBreakOnSection',\n\t\t\t\t'documentMargins',\n\t\t\t],\n\n\t\t\tallGroupWidgets: {\n\t\t\t\tfontSize: {\n\t\t\t\t\tlabel: 'Font size',\n\t\t\t\t\ttype: 'slider',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tmin: -5,\n\t\t\t\t\t\tmax: +5,\n\t\t\t\t\t\tshowPlusSymbol: true,\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'fontSize',\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tcolumnsCount: {\n\t\t\t\t\tlabel: 'Columns',\n\t\t\t\t\ttype: 'slider',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tmin: 1,\n\t\t\t\t\t\tmax: 4,\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'columnsCount',\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tcolumnBreakOnSection: {\n\t\t\t\t\tlabel: 'Column Break on section',\n\t\t\t\t\ttype: 'toggle',\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'columnBreakOnSection',\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\tdocumentMargins: {\n\t\t\t\t\tlabel: 'Margins',\n\t\t\t\t\ttype: 'slider',\n\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\tmin: 1,\n\t\t\t\t\t\tmax: 5,\n\t\t\t\t\t},\n\t\t\t\t\toption: {\n\t\t\t\t\t\tcontext: 'songFormatting',\n\t\t\t\t\t\tkey: 'documentMargins',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n};\n","import _difference from 'lodash/difference';\n\nimport editorModeOptions from '../../../db/options/editorModeOptions'; // duh!\nimport { getEditorMode } from '../../../ui/layout/app/_state/selectors';\nimport { getSelectedId } from '../../../fileManager/_state/selectors';\nimport {\n\tgetOptionsDefaults,\n\tgetOptionValue,\n} from '../../../db/options/selectors';\n\nexport const getNonInteractableWidgets = (state) => {\n\tconst nonInteractableWidgets = [];\n\n\tconst chartType = getOptionValue(state, 'songFormatting', 'chartType');\n\tif (chartType === 'lyrics') {\n\t\tnonInteractableWidgets.push('alignChordsWithLyrics');\n\t\tnonInteractableWidgets.push('alignBars');\n\t\tnonInteractableWidgets.push('autoRepeatChords');\n\t} else if (chartType === 'chords') {\n\t\tnonInteractableWidgets.push('alignChordsWithLyrics');\n\t}\n\n\tconst chartFormat = getOptionValue(\n\t\tstate,\n\t\t'editorPreferences',\n\t\t'chartFormat'\n\t);\n\tconst editorMode = getEditorMode(state);\n\n\tif (editorMode === 'export') {\n\t\tif (chartFormat === 'chordmarkSrc') {\n\t\t\tnonInteractableWidgets.push('chartType');\n\t\t\tnonInteractableWidgets.push('alignChordsWithLyrics');\n\t\t\tnonInteractableWidgets.push('alignBars');\n\t\t\tnonInteractableWidgets.push('autoRepeatChords');\n\t\t\tnonInteractableWidgets.push('expandSectionCopy');\n\t\t}\n\t}\n\n\treturn nonInteractableWidgets;\n};\n\nexport const getHiddenWidgets = (state) => {\n\tconst hiddenWidgets = [];\n\n\tconst allOptions = Object.keys({\n\t\t...getOptionsDefaults(state, 'editorPreferences'),\n\t\t...getOptionsDefaults(state, 'songFormatting'),\n\t\t...getOptionsDefaults(state, 'songPreferences'),\n\t});\n\n\tconst selectedId = getSelectedId(state);\n\tif (!selectedId) {\n\t\treturn allOptions;\n\t}\n\n\tconst editorMode = getEditorMode(state);\n\n\tconst nonInteractableOptions = _difference(\n\t\tallOptions,\n\t\teditorModeOptions[editorMode]\n\t);\n\n\thiddenWidgets.push(...nonInteractableOptions);\n\n\treturn hiddenWidgets;\n};\n","import './Rendering.scss';\n\nimport React from 'react';\n\nimport Icon from '../../../ui/_components/Icon';\n\nimport SidebarOptionPanel from '../../../ui/sideBar/options/_components/SidebarOptionsPanel';\n\nexport default function Rendering(props) {\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\n\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n}\n","import React from 'react';\n\nimport AppLayout from '../ui/layout/app/_containers/App';\nimport FileManager from '../fileManager/_containers/FileManager';\nimport Editor from '../editor/_containers/Editor';\nimport RightBarPanel from '../optionsPanels/rendering/_containers/Rendering';\n\nexport default function Edit() {\n\tconst fm = ;\n\tconst rightBarPanel = ;\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\n\t);\n}\n","import UniversalRouter from 'universal-router';\nimport renderController from './renderController';\n\nimport Editor from './controllers/Editor';\n\nconst routes = [\n\t{\n\t\tpath: '/editor',\n\t\taction: () => Editor,\n\t},\n];\n\nconst universalRouter = new UniversalRouter(routes);\n\nexport default {\n\tnavigateTo(path) {\n\t\treturn universalRouter.resolve(path).then((controller) => {\n\t\t\treturn renderController(controller);\n\t\t});\n\t},\n};\n","import React from 'react';\nimport { createRoot } from 'react-dom/client';\n\nimport { Provider } from 'react-redux';\nimport { getStore } from './state/store';\n\nimport ErrorBoundary from './ui/_components/ErrorBoundary';\n\nexport default function renderController(Controller) {\n\tconst container = document.getElementById('app');\n\tconst root = createRoot(container);\n\n\troot.render(\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n}\n","import '../scss/styles.scss';\n\nimport { createStore } from './state/store';\nimport registerHandlers from './registerHandlers';\nimport router from './router';\nimport addSampleContent from './addSampleContent';\n\nregisterHandlers();\n\nexport default function run() {\n\tcreateStore();\n\n\taddSampleContent();\n\n\treturn router.navigateTo('/editor');\n}\n","import { getStore } from './state/store';\n\nimport { getAllTitles } from './db/files/selectors';\nimport { importFile } from './db/files/actions';\n\nimport gettingStarted from './gettingStarted.txt';\nimport sampleSong from './sampleSong.txt';\n\nexport default function addSampleContent() {\n\tconst store = getStore();\n\tconst state = store.getState();\n\n\tconst allTitles = getAllTitles(state);\n\n\tif (allTitles.length === 0) {\n\t\tstore.dispatch(importFile('Hallelujah - Leonard Cohen', sampleSong));\n\t\tstore.dispatch(importFile('Getting started', gettingStarted));\n\t}\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript)\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && !scriptUrl) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t179: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkchord_chart_studio\"] = self[\"webpackChunkchord_chart_studio\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [216], () => (__webpack_require__(\"TBfH\")))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","loadState","serializedState","localStorage","getItem","JSON","parse","err","saveState","state","stringify","setItem","clock","Date","now","DB_FILES_CREATE","DB_FILES_DELETE","DB_FILES_IMPORT","DB_FILES_UPDATE","DB_OPTION_SET_OPTION_VALUE","UI_LAYOUT_APP_SET_EDITOR_MODE","UI_LAYOUT_APP_TOGGLE_LEFT_BAR","UI_LAYOUT_APP_TOGGLE_RIGHT_BAR","isLeftBarCollapsed","ui","layout","app","isRightBarCollapsed","getEditorMode","editorMode","getSelectedId","fileManager","selected","getRenamedId","renamed","getDefaultTitle","defaultTitle","getAllTitles","createSelectorCreator","defaultMemoize","_isEqual","createDeepEqualSelector","_map","db","files","allFiles","_ref","title","id","_sortBy","o","toLowerCase","getOne","getCategoryOptions","category","file","options","Object","keys","length","_cloneDeep","getLatestModeOptions","fileOptions","allOptionsPerMode","edit","push","_objectSpread","play","print","export","sort","a","b","updatedAt","reduce","acc","modeOptions","assign","initialState","updateFileOption","action","fullState","_action$payload3","payload","context","key","value","includes","optionCategory","fileState","_defineProperty","addOption","FILE_MANAGER_SELECT_FILE","FILE_MANAGER_ENABLE_RENAME","getOptionValue","values","getOptionsDefaults","defaults","getModeOptions","fileId","mode","defaultOptions","editorModeOptions","_pick","allEditorModeOptions","combineSectionReducers","arguments","undefined","type","actionTypes","_action$payload","content","createFile","_action$payload2","updateFile","deleteFile","nextMode","previousModeOptions","setEditorMode","newState","setOptionValue","newOptions","songFormatting","songPreferences","defaultPreferences","newPreferences","selectFile","SONG_IMPORTER_IMPORT_CANCEL","SONG_IMPORTER_IMPORT_START","SONG_IMPORTER_SET_CONTENT","SONG_IMPORTER_SET_INPUT_FORMAT","stripTags","html","domPurify","ALLOWED_TAGS","KEEP_CONTENT","isFromWeb","isImporting","inputFormat","activeModal","songImporter","actions","_action$payload$title","editorPreferences","theme","chartFormat","transposeValue","preferredAccidentals","symbolType","chartType","alignChordsWithLyrics","alignBars","autoRepeatChords","expandSectionCopy","fontSize","columnsCount","columnBreakOnSection","documentMargins","store","getStore","createAction","TypeError","songImporterHandlers","message","buildTitle","artist","dispatch","actionsTypes","startImportFromWeb","chordChart","songTitle","_handleMessage","e","allHandlers","source","window","origin","location","data","ErrorBoundary","_React$Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","error","errorInfo","this","setState","React","className","style","whiteSpace","open","toString","componentStack","children","propTypes","PropTypes","Logo","href","logoSvg","Icon","iconName","join","isRequired","NavEntry","label","icon","isActive","isDisabled","classNames","onClick","Nav","currentMode","allEntries","selectedId","map","entry","_extends","Button","buttonName","allClassNames","disabled","name","defaultProps","UserGuide","focus","Versions","versions","target","rel","importFile","uuidv4","getContent","getInputFormat","getTitle","Modal","closeModal","useEffect","handleKeyboard","addEventListener","removeEventListener","Header","cancelImport","chordMarkContent","headerTitle","getSongTitle","substr","lastIndexOf","isOversized","size","isTextFile","indexOf","getFileTooBigMsg","actualSize","filesize","round","getWrongFileTypeMsg","getNoFileSelectedMsg","fileList","Promise","resolve","reject","text","then","fileContent","catch","FilePicker","setContent","htmlFor","onChange","ev","getUploadedFile","accept","Input","allClasses","PreviewError","InputFormatEntry","setInputFormat","allInputClasses","allLabelClasses","checked","InputFormatSelector","disableAll","rendered","SongImporter","convert2ChordMark","connect","App","toggleLeftBar","toggleRightBar","leftBar","rightBar","leftBarClassNames","rightBarClassNames","allNavEntries","renderAsHtml","songTxt","render","renderOptions","useChartFormat","outputFormat","cmHtml","renderSong","toText","toHtml","customRenderer","chordMark2ChordPro","cpTxt","chordMark2UltimateGuitar","ugTxt","printBarSeparators","printChordsDuration","printSubBeatDelimiters","printInlineTimeSignatures","chordSymbolRenderer","chordRendererFactory","customFilters","chordSymbolUltimateGuitar","useShortNamings","accidentalsType","chordMarkHtml","wrapChordLyricLines","parsed","parseSong","renderSongCm","split","line","concat","match","exportSelectedFileAsText","getState","selectedFile","renderAsText","fileExt","fileName","blob","Blob","endings","saveAs","ModalConfirm","confirmAction","_props$confirmTitle","confirmTitle","cancelAction","_props$cancelTitle","cancelTitle","DeleteConfirmModal","isDeleting","setIsDeleting","FileActionEntry","FileActions","enableRename","startImport","exportAsText","allActions","printFile","FileEntry","_useState2","_slicedToArray","useState","setTitle","isSelected","isRenamed","classList","inputRef","saveTitle","newTitle","current","scrollLeft","onDoubleClick","select","ref","readOnly","autoFocus","onBlur","onFocus","onKeyPress","which","preventDefault","getSelection","removeAllRanges","FileManager","allTitles","setTimeout","escapeHTML","unescaped","SongRenderer","dangerouslySetInnerHTML","__html","EditorPreview","Schema","nodes","doc","paragraph","group","parseDOM","tag","toDOM","hard_break","inline","selectable","stateToText","toJSON","toSafeHtml","dirty","ProseMirrorEditorView","selectedFileId","editorContent","editorView","useRef","editorDom","previousFileId","editorExists","dom","parentNode","destroyEditor","removeChild","editorState","EditorState","create","pmDOMParser","fromSchema","editorSchema","div","document","createElement","innerHTML","preserveWhitespace","plugins","pmHistory","keymap","undo","redo","baseKeymap","createEditorState","EditorView","dispatchTransaction","transaction","_this$state$applyTran","applyTransaction","transactions","updateState","some","tr","docChanged","createEditorView","appendChild","EditorLayout","previewClassNames","ScrollSync","ScrollSyncNode","ExportPreview","exportPreviewRef","selectAll","metaKey","ctrlKey","selectAllChildren","PlayRenderer","wrapperClassNames","Page","pageHeader","allColumnsLines","documentSize","allSectionsRendered","columnLines","index","columnLinesTxt","pageClasses","pageContentWrapperClasses","PageHeader","cssClasses","emptyLine","chordLine","textLine","mapLinesToColumns","allLinesWithHeight","firstPageHeight","normalPageHeight","_ref$noEmptyLinesOnCo","noEmptyLinesOnColumnStart","_ref$noOrphanTextLine","noOrphanTextLine","_ref3","allPagesColumns","pageIndex","columnIndex","maxColumnHeight","getMaxColumnHeight","currentColumnHeight","flushBuffer","buffer","forEach","shouldChangeColumn","height","changeColumn","nextHeight","shouldChangePage","insert","insertOnNextColumn","fitsOnCurrentColumn","bufferHeight","fitsOnNextColumn","get","layoutFactory","lineIndex","isEmptyLine","shouldRenderLine","currentLine","nextLine","_ref2","wouldProduceOrphanTextLine","hasClass","isChordLine","isTextLine","isEndOfParagraph","isBreakable","getDimensionsFromDom","component","measuringFn","container","add","body","root","createRoot","MeasuringComponent","useLayoutEffect","measure","unmount","padColumns","columnCount","allColumns","i","getClientHeight","element","clientHeight","_regeneratorRuntime","t","r","prototype","n","hasOwnProperty","defineProperty","Symbol","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","Context","makeInvokeMethod","tryCatch","arg","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","_typeof","__await","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","constructor","mark","setPrototypeOf","__proto__","awrap","async","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","delegateYield","asyncGeneratorStep","gen","_next","_throw","info","cssSelectors","getAllLinesHeight","_x","_x2","_getAllLinesHeight","apply","fn","_callee","allLines","_context","allLinesHeight","querySelectorAll","offsetHeight","self","args","pageContent","querySelector","arr","Array","isArray","_arrayWithHoles","_iterableToArrayLimit","minLen","_arrayLikeToArray","from","test","_unsupportedIterableToArray","_nonIterableRest","len","arr2","AllPages","setAllPagesColumns","getDimensions","pageOptions","_yield$getPagesHeight","mapped","getPagesHeight","allPagesRendered","pageColumns","PrintPreview","Editor","OptionsPanel","widget","groupWidget","WidgetComponent","GroupComponent","isGroupInteractable","isGroupWidgetInteractable","renderedGroupWidgets","allWidgets","nonInteractableWidgets","hiddenWidgets","setOption","getEntryComponent","renderedWidgets","widgetsOrder","filter","widgetId","groupWidgetsOrder","groupWidgetId","allGroupWidgets","renderWidget","isInteractable","localWidget","optionContext","option","optionKey","optionValue","typeOptions","OptionsGroup","SelectChoice","checkIcon","Select","isOpen","setIsOpen","allChoices","renderedChoices","choice","activeLabel","find","selectLabel","Slider","min","max","showPlusSymbol","valueDisplay","Number","parseInt","Toggle","SidebarOptionPanel","OptionPanel","getNonInteractableWidgets","getHiddenWidgets","stateToProps","preferences","allOptions","nonInteractableOptions","_difference","_toConsumableArray","Edit","fm","rightBarPanel","RightBarPanel","AppLayout","routes","path","universalRouter","UniversalRouter","controller","Controller","getElementById","Provider","storeEnhancers","composeWithDevTools","applyMiddleware","thunkMiddleware","persistedState","rendering","_defaultsDeep","seed","createReduxStore","allReducers","subscribe","createStore","sampleSong","gettingStarted","addSampleContent","router","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","loaded","__webpack_modules__","m","O","result","chunkIds","priority","notFulfilled","Infinity","fulfilled","j","every","splice","getter","__esModule","definition","globalThis","Function","obj","prop","nmd","paths","scriptUrl","importScripts","currentScript","src","scripts","getElementsByTagName","replace","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","bind","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/packages/chord-chart-studio/build/vendors.654483bc9469d682fc7c.js b/packages/chord-chart-studio/build/vendors.654483bc9469d682fc7c.js deleted file mode 100644 index 01c35675..00000000 --- a/packages/chord-chart-studio/build/vendors.654483bc9469d682fc7c.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see vendors.654483bc9469d682fc7c.js.LICENSE.txt */ -(self.webpackChunkchord_chart_studio=self.webpackChunkchord_chart_studio||[]).push([[216],{"+Yn/":(e,t,n)=>{"use strict";n.d(t,{n1:()=>le,eE:()=>he,cl:()=>X});var r=n("Pgl2"),i=n.n(r);function o(e){return i().sanitize(e,{ALLOWED_TAGS:["#text"],KEEP_CONTENT:!0})}var s=n("KO9H");const a=/([^\s]+)/g,l=/\[([^\]]*)]/g,u=e=>{const t=e.trim().match(a);return!!t&&t.every(h)},c=e=>{const t=e.trim().match(l);return!!t&&t.map((e=>e.replace(/[[\]]/g,""))).every(h)};function h(e){return!(0,s.V)()(e).error}const f=(e,t)=>{for(;e.length&&t(e[0]);)e.shift();for(;e.length&&t(e[e.length-1]);)e.pop();return e},p={adlib:"a","ad-lib":"a","ad.lib.":"a",bridge:"b",chorus:"c",intro:"i",introduction:"i",outro:"o",prechorus:"p","pre-chorus":"p","pre chorus":"p",solo:"s",interlude:"u",verse:"v"},d=e=>{let t="#";const n=new RegExp("^(.*?)([\\s]+[0-9]{1,2})?([\\s]+[x][0-9]{1,2})?$"),[,r,,i]=e.trim().match(n),o=r.trim().toLowerCase();return t+=p[o]||r.trim(),i&&(t+=" "+i.trim()),t},m="empty",g="directive",y="comment",v="lyrics",b="chordsLyrics",x="sectionStart",w="sectionClose",S="sectionRepeat",k=["chorus","verse","bridge","comment","comment_italic","comment_bold","c","ci","cb"],C=["start_of_chorus","start_of_verse","start_of_bridge","start_of_part","soc","sov","sob","sop"],E=["end_of_chorus","end_of_verse","end_of_bridge","end_of_part","eoc","eov","eob","sop"],O={chorus:"c",verse:"v",bridge:"b",start_of_chorus:"c",start_of_verse:"v",start_of_bridge:"b",start_of_part:"v",soc:"c",sov:"v",sob:"b",sop:"v",c:"c",ci:"c",cb:"c",comment:"c",comment_italic:"c",comment_bold:"c"},T=e=>{const t={content:e};if(N(e))t.type=y;else if(M(e))t.type=m;else if(D(e)){const[n,r]=R(e);t.key=n,t.value=r,C.includes(n)?t.type=x:E.includes(n)?t.type=w:k.includes(n)?t.type=S:t.type=g}else if(c(e)){t.type=b;const[n,r]=I(e);t.chords=n,t.lyrics=r}else t.type=v;return t},N=e=>null!==e.trim().match(/^#.*$/),M=e=>""===e.trim(),A=/^{([^:]+):?(.*)?}$/,D=e=>null!==e.trim().match(A),R=e=>{const t=e.trim().match(A);return[t[1].trim(),t[2]?t[2].trim():void 0]},I=e=>[e.trim().match(l).map((e=>e.replace("[","").replace("]",""))).join(" "),e.replace(l,"_")],z=e=>![y,g].includes(e.type),P=e=>{let t,n=[];const r=()=>{t&&(n.push(t),t=void 0)},i=e=>{t={label:e?L(e):"#v",allLines:[]}};return e.forEach((e=>{e.type===x?(r(),i(e)):e.type===w?r():e.type===S?(r(),i(e),r()):e.type===m?t&&t.allLines.push(e.content):(t||i(),e.type===b?(t.allLines.push(e.chords),t.allLines.push(e.lyrics)):t.allLines.push(e.content))})),r(),n.map((e=>(e.allLines=f(e.allLines,(e=>""===e)),e)))},L=e=>{let t;return t=e.value?d(e.value):"#"+O[e.key],t},_=e=>{const t=[],n=e.map((e=>T(e))).filter((e=>z(e))),r=P(n);return r.forEach(((e,n)=>{t.push(e.label),e.allLines.forEach((e=>{t.push(e)})),n{let t=0;return e.replace(/\t/g,((e,n)=>{let r=4-(n+t)%4;return t+=r-1," ".repeat(r)})).length},F=(e,t,n)=>(n>e.length&&(e+=" ".repeat(n-e.length)),e.slice(0,n)+t+e.slice(n)),j=/^\[([^\]]+)]$/,U=e=>{const t=e.trim().match(j);return null!==t&&""!==t[1].trim()},$=e=>{const t=e.trim().match(j)[1];return d(t)};const V=e=>W(e.charAt(0)),q=e=>W(e.charAt(e.length-1)),W=e=>e.match(/[\s]/),J=(e,t)=>{let n=e,r=0;return t.forEach((e=>{const t=Math.min(e+r,n.length+1);n=F(n,"_",t),r+=1})),n.replace(/[\s]+/g," ").trim()},H=e=>{const t=[];let n=[];return e.forEach((e=>{u(e)?(t.push(function(e){return e.match(a).join(" ")}(e)),n=function(e){const t=[];let n=0;const r=e.match(/([\s])+/g)||[],i=e.match(/([^\s])+/g);V(e)||r.unshift("");q(e)&&r.pop();return r.forEach(((e,r)=>{const o=B(" ".repeat(n)+e);t.push(o),n=o+i[r].length})),t}(e)):(U(e)?t.push($(e)):n.length&&""!==e.trim()?t.push(J(e,n)):t.push(e),n=[])})),t.join("\n")},K={AUTO:"auto",CP:"chordPro",COL:"chordsOverLyrics"},G=e=>{if(!Object.values(K).includes(e))throw new Error("unknown input format: "+e)},Q=e=>o(e).replace(/\r\n/g,"\n").replace(/\n\r/g,"\n").replace(/\r/g,"\n").replace(/\[\/?ch]/g,"").replace(/\[\/?tab]/g,"").split("\n"),Y=e=>{const t=e.filter(c),n=e.filter(u);return t.length>n.length},X=(e,{inputFormat:t=K.AUTO}={})=>{G(t);const n=Q(e);let r,i=t;switch(t===K.AUTO&&(i=Y(n)?K.CP:K.COL),i){case K.CP:r=_;break;case K.COL:r=H}return r(n)};var Z=n("ClpK");const ee=({showBarSeparators:e=!0},t,n,{alignBars:r,alignChordsWithLyrics:i})=>{const o=[];let s;return te(t).forEach(((t,n)=>{var a;t.sectionLine&&(t.allLines.length>0?(n>0&&o.push(""),o.push(`{start_of_${ne((a=t.sectionLine).model.label)}: ${re(a.model.rendered)}}`)):o.push(ie(re(t.sectionLine.model.rendered)))),t.allLines.forEach(((t,n,a)=>{switch(t.type){case Z.kt.CHORD:!function(e,t){const n=e[t+1];return n&&n.type===Z.kt.LYRIC}(a,n)?o.push(function(e){let t="";return e.model.allBars.map((e=>{t+="|",e.allChords.map((e=>{t+=e.symbol+" ".repeat(e.spacesWithin+e.spacesAfter)}))})),t+="|",ie(t.trim())}(t)):s=t;break;case Z.kt.LYRIC:o.push(function(e,t,{alignChordsWithLyrics:n,alignBars:r,showBarSeparators:i}){let o=e.string.trim();t&&t.type===Z.kt.CHORD&&(o=t.model.hasPositionedChords&&n?oe(o,t,{showBarSeparators:i}):se(o,t,{showBarSeparators:i,alignBars:r}));return o}(t,s,{showBarSeparators:e,alignChordsWithLyrics:i,alignBars:r})),s=void 0;break;case Z.kt.EMPTY_LINE:o.push(""),s=void 0}})),t.sectionLine&&t.allLines.length>0&&o.push(function(e){return`{end_of_${ne(e.model.label)}}`}(t.sectionLine))})),o.join("\n")},te=e=>{const t=[];let n;const r=()=>{n&&(t.push(n),n=void 0)},i=e=>{n={sectionLine:e,allLines:[]}};return e.forEach((e=>{e.type===Z.kt.SECTION_LABEL?(r(),i(e)):(n||i(),n.allLines.push(e))})),r(),t.map((e=>(e.allLines=f(e.allLines,(e=>e.type===Z.kt.EMPTY_LINE)),e)))};function ne(e){switch(e){case"b":case"bridge":return"bridge";case"c":case"chorus":return"chorus";default:return"verse"}}function re({label:e,multiplier:t}){return t?`${e} ${t}`:e}function ie(e){return`{c:${e}}`}const oe=(e,t,{showBarSeparators:n})=>{let r=e;return t.model.allBars.map((e=>{e.allChords.map(((t,i)=>{let[o]=ae(e,t);if(0===i&&n){const e=r.indexOf("_");r=e>-1?F(r,"[|] ",e):F(r,"[|]",r.length+1)}r=r.indexOf("_")>-1?r.replace("_",o):F(r,o,r.length+1)}))})),r=r.replace(/_/g,"").trim(),n&&(r+=" [|]"),r},se=(e,t,{showBarSeparators:n,alignBars:r})=>{let i=e.replace(/_/g,""),o=0;return t.model.allBars.map((e=>{e.allChords.map(((t,s)=>{let[a,l]=ae(e,t);0===s&&n&&(i=F(i,"[|]",o),o+=5),i=F(i,a,o);const u=r&&!e.allChords[s+1]?1:0;o+=a.length+l.length+t.spacesAfter+t.spacesWithin+u}))})),n&&(i=F(i,"[|]",o)),i},ae=(e,t)=>{const n=e.shouldPrintChordsDuration?t.symbol+".".repeat(t.duration):t.symbol;return[`[${n}]`,n]},le=(e={})=>ee.bind(null,e),ue=(e,t)=>t.map(((t,n)=>{const r=e[n],i=o(t);return r.type===Z.kt.SECTION_LABEL?`[${i}]`:r.type===Z.kt.CHORD?ce(r,i):i.replace(" ","")})).join("\n"),ce=(e,t)=>t.replace(/([^\s.|]+)/g,"[ch]$1[/ch]"),he=()=>ue.bind(null)},ClpK:(e,t,n)=>{"use strict";n.d(t,{kt:()=>h,TG:()=>be,II:()=>ft});var r=n("wxYD"),i=n.n(r),o=n("Pgl2"),s=n.n(o);function a(e){return s().sanitize(e)}function l(e){return s().sanitize(e,{ALLOWED_TAGS:["#text"],KEEP_CONTENT:!0})}var u=n("c2re"),c=n.n(u);const h={CHORD:"chord",EMPTY_LINE:"emptyLine",KEY_DECLARATION:"keyDeclaration",LYRIC:"lyric",SECTION_LABEL:"sectionLabel",TIME_SIGNATURE:"timeSignature"};var f=n("tvc/"),p=n.n(f);function d(e){return e.replace(/\t+/g," ").replace(/ +/g," ").trim()}const m=["2/2","3/2","4/2","2/4","3/4","4/4","5/4","6/4","7/4","9/4","10/4","3/8","4/8","5/8","6/8","7/8","9/8","12/8"];function g(e){return m.includes(e)}function y(e){if(!g(e))throw new TypeError("Expected time signature string, received: "+e);const t=e.split("/"),n=Number.parseInt(t[0],10),r=Number.parseInt(t[1],10);let i=n;return 2===r?i=2*n:8===r&&(i=n/3),{string:e,count:n,value:r,beatCount:i}}const v={barRepeat:"%",chordBeatCount:".",chordLineRepeat:"%",chordPositionMarker:"_",lyricLine:":",keyDeclarationPrefix:"key ",noChord:"NC",sectionLabel:"#",subBeatOpener:"[",subBeatCloser:"]"},b=y("4/4");var x=n("KO9H");const w=new RegExp(p()(v.chordBeatCount)+"*$","g"),S=new RegExp("^"+p()(v.barRepeat)+"+$");function k(e=""){return d(C(e)).split(" ").every(((e,t,n)=>{const r=E(e);return i=r,!(0,x.V)()(i).error||e.match(S)&&t>0||r===v.noChord||g(e)&&n.length>1;var i}))}const C=e=>e.replaceAll("add ","add"),E=e=>T(O(e)),O=e=>e.replace(w,""),T=e=>{let t=e;return e.startsWith(v.subBeatOpener)&&(t=t.substring(v.subBeatOpener.length)),e.endsWith(v.subBeatCloser)&&(t=t.substring(0,t.length-v.subBeatCloser.length)),t};function N(e){return""===d(e)}const M=new RegExp("^"+p()(v.sectionLabel)+"([a-zA-Z]+)([1-9])?( x[1-9][0-9]?)?$");function A(e){return null!==d(e).match(M)}var D=n("nnRT"),R=n.n(D);function I(e,t={}){return(0,x.V)({key:t.string})(e)}var z=n("nDih"),P=n.n(z),L=n("FiEK"),_=n.n(L);class B extends Error{constructor({string:e,duration:t,currentBeatCount:n,beatCount:r}={}){if(!e||!P()(e))throw new TypeError("InvalidBeatCountException cannot be created without chord string, received: "+e);if(!t||!_()(t))throw new TypeError("InvalidBeatCountException cannot be created without chord duration, received: "+t);if(!n||!_()(n))throw new TypeError("InvalidBeatCountException cannot be created without currentBeatCount, received: "+n);if(!r||!_()(r))throw new TypeError("InvalidBeatCountException cannot be created without beatCount, received: "+r);super(),this.name="InvalidBeatCountException",this.string=e,this.duration=t,this.currentBeatCount=n,this.beatCount=r}}class F extends Error{constructor({string:e}={}){if(!e||!P()(e))throw new TypeError("InvalidChordRepetitionException cannot be created without chord string, received: "+e);super(),this.name="InvalidChordRepetitionException",this.string=e}}class j extends Error{constructor({chordLine:e,symbol:t,position:n}={}){if(!e||!P()(e))throw new TypeError("InvalidSubBeatGroupException cannot be created without a chordLine, received: "+e);if(!t||!P()(t))throw new TypeError("InvalidSubBeatGroupException cannot be created without symbol, received: "+t);if(!_()(n))throw new TypeError("InvalidSubBeatGroupException cannot be created without symbol position, received: "+n);super(),this.name="InvalidSubBeatGroupException",this.chordLine=e,this.symbol=t,this.position=n}}class U extends Error{constructor({string:e}={}){if(!e||!P()(e))throw new TypeError("InvalidBarRepeatException cannot be created without chord string, received: "+e);super(),this.name="InvalidBarRepeatException",this.string=e}}const $=new RegExp(p()(v.chordBeatCount),"g"),V=new RegExp("^"+p()(v.barRepeat)+"+$");function q(e,{timeSignature:t=b,originalKey:n={}}={}){let{beatCount:r}=t;const i=[],o={allChords:[]},s={};let a,l,u=c()(o),h={},f=0,m=!1,x=0,w=!1;!function(e){const t={};let n,r=!1;const i=new RegExp(p()(v.subBeatOpener)+"|"+p()(v.subBeatCloser),"g");for(;n=i.exec(e);){const o=n[0];if(t.chordLine=e,t.symbol=o,t.position=i.lastIndex-1,n[0]===v.subBeatOpener){if(r)throw new j(t);r=!0}else{if(!r)throw new j(t);r=!1}}if(r)throw new j(t)}(e);const S=d(C(e)).split(" ");return S.forEach(((p,d)=>{p.match(V)?function(n){if(0!==f||!l||!R()(t,l.timeSignature))throw new U({string:e});{const e=c()(l);e.isRepeated=!0;for(let t=0;t-1}(t))throw new j({chordLine:e,symbol:t,position:0})}(e,t),s[x]?s[x]++:s[x]=1);a=E(t),h={string:t,duration:J(t,r,m),model:W(a)?v.noChord:I(a,n),beat:f+1,isInSubBeatGroup:m},f+=h.duration,function(e,t){if(e.allChords.length>0){const n=e.allChords[e.allChords.length-1];if(R()(n.model,t.model)&&!function(e,t){return t.string.startsWith(v.subBeatOpener)||e.string.endsWith(v.subBeatCloser)&&!t.model.isInSubBeatGroup}(n,t))throw new F({string:t.string})}}(u,h),u.allChords.push(h),t.endsWith(v.subBeatCloser)&&(!function(t){if(1===s[x]||s[x]>4)throw new j({chordLine:e,symbol:t,position:0})}(t),m=!1,x++,f+=1)}(p),function(e,t){return e===t}(f,r)?function(){u.timeSignature=t,u.lineHadTimeSignatureChange=w,u.hasUnevenChordsDurations=function(e){let t=e.allChords[0].duration;return e.allChords.some((e=>e.duration!==t))}(u);const e=c()(u);u.isRepeated=R()(u,l),i.push(c()(u)),l=e,u=c()(o),f=0}():function(e,t,n,r){if(function(e,t,n){return function(e,t){return e>t}(e,t)||function(e,t,n){return n&&e{e.allChords.forEach((e=>{if(e.isInSubBeatGroup){const s=o+e.beat;s!==i&&(n++,r=0);const a=(1/t[n]).toPrecision(2);e.duration=Number.parseFloat(a),e.isFirstOfSubBeat=0===r,e.isLastOfSubBeat=r===t[n]-1,i=s,r++}}))}))}(i,s),{allBars:i,originalKey:n}}function W(e){return e===v.noChord}function J(e,t,n){return n?0:(e.match($)||[]).length||t}var H=n("FllU"),K=n.n(H),G=n("Flgh"),Q=n.n(G);const Y="A,A#,B,C,C#,D,D#,E,F,F#,G,G#".split(","),X="Ab,Bb,Db,Eb,Gb".split(","),Z=[...Y,...X],ee=[...Z,...Z.map((e=>e+"m"))],te={Ab:"G#",Bb:"A#",Db:"C#",Eb:"D#",Gb:"F#"},ne=Q()(te);function re(e){return["G","Em","D","Bm","A","F#m","E","C#m","B","G#m","F#","D#m","C#","A#m","G#","D#","A#"].includes(e)?"sharp":"flat"}function ie(e,t,n){const r={"G#":"Ab","D#":"Eb","A#":"Bb",Dbm:"C#m",Gbm:"F#m"};let i;if(0===t&&"auto"===n)i=e.string;else{const r="auto"===n?t<0?"flat":"sharp":n;i=function(e,t,n){const r=e.endsWith("m"),i=e.replace("m",""),o=te[i]||i;let s=Y.indexOf(o)+t;s<0?s+=Y.length:s>=Y.length&&(s-=Y.length);const a=Y[s],l="flat"===n&&ne[a]||a;return r?l+"m":l}(e.string,t,r)}const o="auto"===n&&r[i]?r[i]:i;return{string:o,accidental:re(o)}}function oe(e){const t=function(e){const t=function(e){let t=0,n=[];const r=[];return c()(e).map((e=>(e.keyString=function(e){const t=c()(e.model),n=["major","major6","major7","dominant7","augmented","power","bass"];let r=t.formatted.rootNote;n.includes(t.normalized.quality)||(r+="m");return r}(e),e))).forEach((e=>{const t=K()(r,(t=>t.keyString===e.keyString));-1===t?r.push(e):(r[t].duration+=e.duration,e.isLast&&(r[t].isLast=!0))})),r.map((e=>(e.isLast&&(e.duration*=1.25),e.isFirst&&(e.duration*=1.25),e))).forEach((e=>{e.duration>t?(n=[e],t=e.duration):e.duration===t&&n.push(e)})),n}(e);if(0===t.length)return;if(1===t.length)return t[0].keyString;const n=t.find((e=>!0===e.isLast));if(n)return n.keyString;const r=t.find((e=>!0===e.isFirst));return r?r.keyString:t[0].keyString}(e);return t?{string:t,accidental:re(t)}:void 0}function se(e,t){return e&&t?function(e,t){const n=te[e]||e,r=te[t]||t,i=Y.indexOf(n),o=Y.indexOf(r);if(-1===i||-1===o)return 0;const s=o-i;return s<0?s+12:s}(e.replace("m",""),t.replace("m","")):0}const ae=new RegExp("^"+p()(v.keyDeclarationPrefix)+"([ABCDEFG].*)$");function le(e){const t=d(e).match(ae);return null!==t&&(n=t[1],ee.includes(n));var n}function ue(e){const t=e.startsWith(v.lyricLine)?e.substring(1):e,n=new RegExp(v.chordPositionMarker,"g"),r=t.replace(n,""),i=[];let o,s=t;for(;-1!==(o=s.indexOf(v.chordPositionMarker));)i.includes(o)||i.push(o),s=s.replace(v.chordPositionMarker,"");return{lyrics:r,chordPositions:i}}var ce=n("p1C/"),he=n.n(ce);function fe(e,t){const n=c()(e);return n.allBars.forEach(((e,n)=>{e.allChords.forEach(((e,r)=>{t(e,r,n)}))})),n}function pe(e,t,n){const r=[],i={};let o=!1,s="";for(e.forEach((e=>{e.type===h.SECTION_LABEL?(s=e.model.label,i[s]?i[s]++:i[s]=1,o=e.id===t+n):o&&r.push(e)}));he()(r)&&(he()(r).type===h.KEY_DECLARATION||he()(r).type===h.TIME_SIGNATURE);)r.pop();return r}const de="4/4";function me(){const e=[],t={};let n,r,i=y(de),o={};const s=2;let a,l=[],u=[],f=0,p=!1,m=!1;function b(e){return o=function(e){if(!le(e))throw new TypeError("Expected key declaration, received: "+e);const t=d(e).match(ae)[1];return{string:t,accidental:re(t)}}(e),{string:e,type:h.KEY_DECLARATION,model:c()(o)}}function x(t,i,o){n=function(e){if(!A(e))throw new TypeError("Expected section identifier string, received: "+e);const t=d(e).match(M);return{string:e,label:t[1],copyIndex:t[2]?Number.parseInt(t[2]):1,multiplyTimes:t[3]?Number.parseInt(t[3].replace(" x","")):0}}(t),C(n.label),r=E(n.label);const s={string:t,type:h.SECTION_LABEL,model:n,index:r.count,indexWithoutMultiply:r.withoutMultiply,id:n.label+r.count};return m=function(e,t){const n=t.slice(e+1);let r=n.findIndex((e=>A(e)));if(0===r)return!0;const i=n.slice(0,-1!==r?r:void 0).filter((e=>!(g(e)||le(e)||N(e))));return 0===i.length}(i,o)&&r.count>1,m&&(s.isFromSectionCopy=!0),p=n.multiplyTimes>0,a=c()(s),u=r.count>1?pe(e,n.label,1):[],f=0,s}function w(e){l.length>=s&&l.shift(),l.push(e)}function S(e){return{string:e,type:h.LYRIC,model:ue(e)}}function C(e,n=!1){t[e]?(t[e].count++,n||t[e].withoutMultiply++):t[e]={count:1,withoutMultiply:1}}function E(e){return t[e]}function O(e,t){const n=[h.LYRIC,h.EMPTY_LINE];return e&&!n.includes(e.type)&&e.type!==t.type&&t.type!==h.EMPTY_LINE}function T(){if(m){const t=pe(e,n.label,n.copyIndex).map((e=>({...c()(e),isFromSectionCopy:!0})));if(!t.length)return;(function(e){const t=e[e.length-1];return t.type===h.EMPTY_LINE})(t)&&t.pop(),e.push(...c()(t)),m=!1}}function D(t,i){if(p&&function(e,t){const n=t[e+1];return void 0===n||A(n)}(t,i)){const t=pe(e,n.label,r.count).map((e=>({...c()(e),isFromSectionMultiply:!0})));let i;for(let o=1;o=t.length?{...c()(...l.slice(n,r)),isFromChordLineRepeater:!0}:S(e)}(t):N(t)?function(e){return{string:e,type:h.EMPTY_LINE}}(t):le(t)?b(t):S(t),function(t){if(u.length&&t.type!==h.SECTION_LABEL){let n,r=u[f];for(;O(r,t);)r.type===h.CHORD&&w(c()(r)),n={...c()(r),isFromAutoRepeatChords:!0},e.push(n),f++,r=u[f];f++}}(s),e.push(s),T(),D(n,r)},asArray:()=>c()(e),flagPositionedChords(){let t,n;e.forEach(((r,i)=>{t=e[i+1],!function(e,t){return e.type===h.CHORD&&t&&t.type===h.LYRIC&&t.model.chordPositions.length>0}(r,t)?r.type===h.CHORD&&(r.model.hasPositionedChords=!1,r.model=fe(r.model,(e=>{e.isPositioned=!1}))):(n=0,r.model.hasPositionedChords=!0,r.model=fe(r.model,(e=>{e.isPositioned=n{e.type===h.CHORD&&e.model.allBars.forEach((e=>{e.allChords.forEach((e=>{t(e)}))}))}))}(e,(e=>{e.model!==v.noChord&&(n=K()(t,(t=>R()(ye()(t.model,["numeral"]),ye()(e.model,["numeral"])))),-1===n?(t.push({model:c()(e.model),occurrences:1,duration:e.duration}),n=t.length-1):(t[n].occurrences++,t[n].duration+=e.duration))})),t.length&&(t[0].isFirst=!0,t[n].isLast=!0),t}function be(e){const t=i()(e)?e:e.split("\n"),n=me();t.map(a).map(l).forEach(n.addLine),n.flagPositionedChords();const r=n.asArray(),o=ve(r),s=function(e,t){const n={auto:void 0,explicit:[]};if(e.forEach((e=>{e.type===h.KEY_DECLARATION&&n.explicit.push(c()(e.model))})),0===n.explicit.length){const e=oe(t);e&&(n.auto=e)}return n}(r,o);return{allLines:r,allChords:o,allKeys:s}}const xe={barRepeat:"%",barSeparator:"|",chordBeat:".",chordLineOffsetSpacer:" ",emptyBeatSpaces:1,keyDeclarationPrefix:"key: ",lyricsSpacer:" ",noChordSymbol:"NC",spacesAfterDefault:2,spacesAfterSubBeatDefault:1,spacesAfterTimeSignature:1,subBeatGroupOpener:"[",subBeatGroupCloser:"]"};function we(e,t,{shouldPrintSubBeatDelimiters:n=!0,symbolType:r="chord"}={}){const i=e.allChords.filter((e=>e.beat===t));switch(i.length){case 0:return"";case 1:return Se(e,i[0],{shouldPrintSubBeatDelimiters:n,symbolType:r});default:return i.reduce(((t,i,o)=>t+(o>0?" ".repeat(xe.spacesAfterSubBeatDefault):"")+Se(e,i,{shouldPrintSubBeatDelimiters:n,symbolType:r})),"")}}function Se(e,t,{shouldPrintSubBeatDelimiters:n,symbolType:r="chord"}){const i="chord"===r||t.model===xe.barRepeat||t.model===xe.noChordSymbol?t.symbol:t.model.numeral.symbol;if(t.isInSubBeatGroup)return n&&t.isFirstOfSubBeat?xe.subBeatGroupOpener+i:n&&t.isLastOfSubBeat?i+xe.subBeatGroupCloser:i;return i+(e.shouldPrintChordsDuration?xe.chordBeat.repeat(t.duration):"")}function ke(e){e.allChords.forEach((e=>{e.spacesAfter=e.isInSubBeatGroup&&!e.isLastOfSubBeat?xe.spacesAfterSubBeatDefault:xe.spacesAfterDefault,e.spacesWithin=0}))}const Ce=(e,t)=>(!t.isInSubBeatGroup||t.isLastOfSubBeat)&&!Oe(e,t),Ee=(e,t,n)=>{let r=0;for(let i=t.beat+1;it.beat===e.timeSignature.beatCount,Te=(e,t,n)=>!n&&Oe(e,t)&&(!t.isInSubBeatGroup||t.isLastOfSubBeat),Ne=1;function Me(e,t,{shouldPrintBarSeparators:n=!0,shouldPrintSubBeatDelimiters:r=!0,shouldPrintInlineTimeSignatures:i=!0,symbolType:o="chord"}={}){if(Ae(t))return{chordLine:e,lyricsLine:t};const s=c()(e),a=c()(t),l=a.chordPositions.map(((e,t,n)=>a.lyrics.substring(e,n[t+1])));let u,h,f="",p="";if(s.allBars.forEach(((e,t)=>{e.allChords.forEach(((s,c,d)=>{if(h=l.shift(),h){f=0===c&&i&&e.shouldPrintBarTimeSignature?e.timeSignature.string+xe.spacesAfterTimeSignature:"";const m=0===t&&0===c&&0===a.chordPositions[0];u=function(e,t,i){let s=f+Se(e,t,{shouldPrintSubBeatDelimiters:t.isLastOfSubBeat&&r,symbolType:o});i&&(r&&t.isFirstOfSubBeat&&(s=xe.subBeatGroupOpener+s),n&&(s=xe.barSeparator+s));return s}(e,s,m),h=function(e,t){let i=h;if(Ie(i))i=xe.lyricsSpacer.repeat(u.length-1)+i;else{if(e){let e=0;n&&e++,r&&t&&e++,i=xe.lyricsSpacer.repeat(e)+i}f.length&&(i=" ".repeat(f.length)+i)}return i}(m,s.isFirstOfSubBeat);const g=c===d.length-1,y=d[c+1]&&d[c+1].isFirstOfSubBeat;if(h.length-u.length>0){const e=0===l.length;s.spacesAfter=function(e,t,i){let o=h.length-u.length;const s=e&&n&&!t,a=!e&&r&&i;(s||a)&&(o>1?o-=1:h+=xe.lyricsSpacer);return o}(g,e,y)}else s.spacesAfter=Ne,h+=xe.lyricsSpacer.repeat(function(e,t){let r=u.length-h.length+Ne;(e&&n||t)&&r++;return r}(g,y));p+=h}else s.spacesAfter=Ne;s.spacesWithin=0}))})),De(a)){const e=a.chordPositions[0];s.offset=e,n&&s.offset--,p=a.lyrics.substring(0,e)+p}return l.length&&(p+=l.join("")),a.lyrics=Re(p),{chordLine:s,lyricsLine:a}}const Ae=e=>0===e.chordPositions.length,De=e=>e.chordPositions[0]>0,Re=e=>e.replace(/[\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]*$/,""),Ie=e=>0===e.indexOf(" "),ze=({chordLineOffset:e,chordLine:t,symbolType:n})=>{const r=["cmChordLine"];return"roman"===n&&r.push("cmChordLine-romanNumeral"),`${e?`${e}`:""}${t}`},Pe=({chordSymbol:e,chordDuration:t,subBeatGroupOpener:n,subBeatGroupCloser:r,numeralType:i})=>{const o=n?`${n}`:"",s=r?`${r}`:"",a=["cmChordSymbol"];return i&&a.push("cmRomanNumeral",`cmRomanNumeral-${i}`),`${o}${e}${t?`${t}`:""}${s}`};const Le=({timeSignature:e})=>`${e}`;function _e(e){return Le({timeSignature:e.string})}const Be=({barContent:e})=>`${e}`,Fe=" ",je=0,Ue=2;function $e(e,t=!1,{shouldPrintBarSeparators:n=!0,shouldPrintSubBeatDelimiters:r=!0,shouldPrintTimeSignature:i=!1,symbolType:o="chord"}={}){let s=0,a=0,l="";return i&&(l+=_e(e.timeSignature)+" ".repeat(xe.spacesAfterTimeSignature)),l+=e.allChords.reduce(((i,l,u)=>(s=_()(l.spacesWithin)?l.spacesWithin:je,a=_()(l.spacesAfter)?l.spacesAfter:Ue,i+=function(e,{shouldPrintChordsDuration:t=!1,shouldPrintSubBeatOpener:n=!1,shouldPrintSubBeatCloser:r=!1,symbolType:i="chord"}){const o="chord"===i||e.model===xe.barRepeat||e.model===xe.noChordSymbol,s=o?e.symbol:e.model.numeral.symbol;return Pe({chordSymbol:s,chordDuration:!!t&&xe.chordBeat.repeat(e.duration),subBeatGroupOpener:n?xe.subBeatGroupOpener:"",subBeatGroupCloser:r?xe.subBeatGroupCloser:"",numeralType:o?"":e.model.numeral.type})}(l,{shouldPrintChordsDuration:!l.isInSubBeatGroup&&e.shouldPrintChordsDuration,shouldPrintSubBeatOpener:r&&l.isFirstOfSubBeat,shouldPrintSubBeatCloser:r&&l.isLastOfSubBeat,symbolType:o}),function(){const r=function(e,t){return!e.allChords[t+1]}(e,u)&&t;return!r||r&&n}()&&(i+=Fe.repeat(s)+Fe.repeat(a)),i)),""),Be({barContent:l})}const Ve=({barSeparator:e})=>`${e}`;const qe=({chordLyricsPairs:e})=>{let t='';return e.forEach((e=>{t+=`${e.chords||" "}${e.lyrics}`})),t+="",t};var We=n("Nsha"),Je=n.n(We);const He=["cmChordSymbol","cmTimeSignature","cmBarSeparator","cmSubBeatGroupOpener","cmSubBeatGroupCloser"];function Ke(e,t){const n=function(e){const t=(r=e,s().sanitize(r,{RETURN_DOM_FRAGMENT:!0}).firstChild),n=[];var r;return Ge(t,n,{i:0}),n}(e),r=function(e){const t=[],n=l(e);let r="";return Array.from(n).forEach(((e,n)=>{" "===e?(r&&(t.push(Qe(r,n-r.length)),r=""),t.push(Qe(" ",n))):r+=e})),t.push(Qe(r,n.length-r.length)),t}(t),i=function(e,t){const n=Ye(e),r=Ye(t),i=Je()(n,r);let o,s;he()(n)>he()(r)?(s=n,o=r):(s=r,o=n);const a=s.filter((e=>e>he()(o)));a.length&&i.push(...a);return i.shift(),i}(n,r),o=function(e,t,n){const r=[];return e.forEach((e=>{let i="",o="";for(;t.length&&t[0].textIndex{if(e.nodeType===Node.TEXT_NODE){const r=e.textContent;for(const e of r)t.push(Qe(e,n.i)),n.i++}else He.includes(e.classList.value)?(t.push(Qe(e.textContent,n.i,e.outerHTML)),n.i+=e.textContent.length):Ge(e,t,n)}))}function Qe(e,t,n){return{text:e,textIndex:t,html:n}}function Ye(e){const t=e.map((e=>e.textIndex)),n=e.reduce(((e,t)=>e+t.text),"").length;return t.push(n),t}const Xe=()=>' ';const Ze=({keyDeclarationPrefix:e,key:t})=>`${e}${t}`;const et=({line:e,lineClasses:t,shouldOpenSection:n,sectionWrapperClasses:r,shouldClosePriorSection:i,shouldCloseFinalSection:o})=>{let s="";return i&&(s+=""),n&&(s+=`
    `),s+=`

    ${e}

    `,o&&(s+="
    "),s};const tt=({lyricLine:e})=>`${e}`;const nt=(e,t)=>!e||"lyrics"===t,rt=({label:e,multiplier:t})=>`${e}${t?` ${t}`:""}`;const it=({song:e})=>`
    ${e}
    `,ot={a:"adlib",b:"bridge",c:"chorus",i:"intro",o:"outro",p:"pre-chorus",s:"solo",u:"interlude",v:"verse"};function st(e,{expandSectionMultiply:t}){const n=function(e){const t={};return e.filter((e=>e.type===h.SECTION_LABEL)).forEach((e=>{t[e.model.label]?t[e.model.label]++:t[e.model.label]=1})),t}(e);return e.forEach((e=>{if(e.type===h.SECTION_LABEL){const{model:r,index:i,indexWithoutMultiply:o}=e,s=ot[r.label]?ot[r.label]:r.label;let a,l=s[0].toUpperCase()+s.substring(1);n[r.label]>1&&(l+=" ",l+=t?i:o),!t&&r.multiplyTimes&&(a="x"+r.multiplyTimes),e.model.rendered={label:l,multiplier:a}}})),e}const at=(0,x.v)();function lt(e,t,{transposeValue:n,accidentalsType:r,chordSymbolRenderer:i,simplifyChords:o,useShortNamings:s}){let a,l;t&&(a=ie(t,n,r));let u=c();function c(e){if("function"==typeof i)return i;const t="auto"===r?a?a.accidental:"sharp":r;return(0,x.v)({simplify:o,useShortNamings:s,transposeValue:n+e,accidental:t})}return e.map((function(e){if(e.type===h.KEY_DECLARATION)a=ie(e.model,n,r),e.symbol=a.string,l||(l=a);else if(e.type===h.CHORD){let t=0;(function(e){const t=a&&e.model.originalKey&&e.model.originalKey.string===a.string;return(e.isFromAutoRepeatChords||e.isFromSectionCopy||e.isFromChordLineRepeater)&&!t})(e)&&(t=se(l&&l.string,a&&a.string)),u=c(t),e.model.allBars.forEach((e=>{e.allChords.forEach((e=>{e.symbol=function(e,t=at){switch(e){case v.noChord:return xe.noChordSymbol;case xe.barRepeat:return xe.barRepeat;default:return t(e)}}(e.model,u)}))}))}return e}))}const ut=(e,t,n)=>t.isRepeated&&!ct(e,t,n),ct=(e,t,n)=>n&&e.model.hasPositionedChords&&t.allChords.length>1&&t.allChords.some((e=>e.isPositioned)),ht=(e,{alignChordsWithLyrics:t})=>(e.type===h.CHORD&&e.model.allBars.forEach((n=>{ut(e,n,t)&&(n.allChords=[{string:xe.barRepeat,model:xe.barRepeat,symbol:xe.barRepeat,duration:n.timeSignature.beatCount,beat:1}],n.shouldPrintChordsDuration=!1)})),e);function ft(e,{accidentalsType:t="auto",alignBars:n=!0,alignChordsWithLyrics:r=!0,autoRepeatChords:i=!0,chartType:o="all",chordSymbolRenderer:s=!1,customRenderer:a=!1,expandSectionCopy:l=!0,expandSectionMultiply:u=!1,printChordsDuration:f="uneven",printBarSeparators:p="always",printSubBeatDelimiters:d=!0,printInlineTimeSignatures:m=!0,simplifyChords:g="none",symbolType:y="chord",transposeValue:v=0,useShortNamings:x=!0,wrapChordLyricLines:w=!1}={}){let S,{allLines:k,allKeys:C}=e,E=!1,O=b.string;k=lt(k,C.auto,{transposeValue:v,accidentalsType:t,chordSymbolRenderer:s,simplifyChords:g,useShortNamings:x}).map((function(e){e.type===h.CHORD&&e.model.allBars.forEach((e=>{e.shouldPrintChordsDuration=function(e){return e.allChords.length>1&&("uneven"===f&&e.hasUnevenChordsDurations||"always"===f)}(e)}));return e})).map((function(e){e.type===h.TIME_SIGNATURE?O=e.string:e.type===h.CHORD&&e.model.allBars.forEach(((e,t)=>{e.shouldPrintBarTimeSignature=0===t&&e.timeSignature.string!==O||t>0&&e.timeSignature.string!==S,S=e.timeSignature.string}));return e})).filter((function(e){return function(e){const t=!i&&(e.isFromAutoRepeatChords||e.type===h.CHORD&&e.isFromSectionCopy),n=e.isFromSectionMultiply&&!u,r=e.type!==h.SECTION_LABEL&&e.isFromSectionCopy&&!l;return!n&&!t&&!r}(e)&&!function(e){if("chordsFirstLyricLine"===o){if(e.type===h.SECTION_LABEL)return E=!0,!1;if(E&&e.type===h.LYRIC)return E=!1,!1}return["chords","chordsFirstLyricLine"].includes(o)&&e.type===h.LYRIC||"lyrics"===o&&e.type===h.CHORD}(e)})).map((e=>ht(e,{alignChordsWithLyrics:r})));const T=function(e,{shouldAlignChordsWithLyrics:t,shouldPrintSubBeatDelimiters:n=!0,symbolType:r="chord"}){const i=[];return e.filter((e=>e.type===h.CHORD)).filter((e=>!t(e))).forEach((e=>{e.model.allBars.filter((e=>!e.lineHadTimeSignatureChange)).forEach(((e,t)=>{if(!i[t]){i[t]={};for(let n=1;n<=e.timeSignature.beatCount;n++)i[t][n]=0}e.allChords.filter((e=>!e.isInSubBeatGroup||e.isLastOfSubBeat)).forEach((o=>{const s=we(e,o.beat,{shouldPrintSubBeatDelimiters:n,symbolType:r});i[t][o.beat]=Math.max(i[t][o.beat],s.length)}))}))})),i}(k,{shouldAlignChordsWithLyrics:A,shouldPrintSubBeatDelimiters:d,symbolType:y});k=st(k,{expandSectionMultiply:u}),k.forEach((function(e,t){if(e.type===h.CHORD){let r=n&&!A(e)?function(e,t,{shouldPrintBarSeparators:n=!0,shouldPrintSubBeatDelimiters:r=!0,symbolType:i="chord"}){const o=c()(e);return o.allBars.forEach(((e,o)=>{e.lineHadTimeSignatureChange?ke(e):e.allChords.forEach((s=>{const a=we(e,s.beat,{shouldPrintSubBeatDelimiters:r,symbolType:i});s.isInSubBeatGroup&&!s.isLastOfSubBeat?(s.spacesWithin=0,s.spacesAfter=xe.spacesAfterSubBeatDefault):(s.spacesWithin=t[o][s.beat]-a.length,s.spacesAfter=0),Ce(e,s)&&(s.spacesAfter=xe.spacesAfterDefault+Ee(e,s,t[o])),Te(e,s,n)&&(s.spacesAfter=xe.spacesAfterDefault)}))})),o}(e.model,T,{shouldPrintBarSeparators:D(e.model),shouldPrintSubBeatDelimiters:d,symbolType:y}):function(e){const t=c()(e);return t.allBars.forEach((e=>{ke(e)})),t}(e.model);const i=k[t+1];if(A(e)){const{chordLine:n,lyricsLine:o}=Me(r,i.model,{shouldPrintBarSeparators:D(e.model),shouldPrintSubBeatDelimiters:d,shouldPrintInlineTimeSignatures:m,symbolType:y});k[t+1].model=o,r=n}k[t].model=r}}));const N=function(){let e,t=!1;return k.map(((n,i)=>{let s,a,l=!1,u=[];var c;return n.type===h.CHORD?(s=function(e,{shouldPrintBarSeparators:t=!0,shouldPrintSubBeatDelimiters:n=!0,shouldPrintInlineTimeSignatures:r=!0,symbolType:i="chord"}={}){const o=e.allBars.map(((o,s)=>{const a=!e.allBars[s+1],l=r&&o.shouldPrintBarTimeSignature;return $e(o,a,{shouldPrintBarSeparators:t,shouldPrintSubBeatDelimiters:n,shouldPrintTimeSignature:l,symbolType:i})})),s=t?Ve({barSeparator:xe.barSeparator}):"",a=s+o.join(s)+s,l=xe.chordLineOffsetSpacer.repeat(e.offset||0);return ze({chordLineOffset:l,chordLine:a,symbolType:i})}(n.model,{symbolType:y,shouldPrintBarSeparators:D(n.model),shouldPrintSubBeatDelimiters:d,shouldPrintInlineTimeSignatures:m}),function(e,t){return t&&t.type===h.LYRIC&&w&&A(e)}(n,k[i+1])&&(e=s,s=!1)):n.type===h.EMPTY_LINE?s=Xe():n.type===h.SECTION_LABEL?(l=!0,a=t,t=!0,u=function(e){return["cmSection","cmSection-"+e.model.rendered.label.replace(/[\d\s]/gi,"")]}(n),s=rt(n.model.rendered)):n.type===h.TIME_SIGNATURE?s=_e(n):n.type===h.KEY_DECLARATION?(c=n,s=Ze({keyDeclarationPrefix:xe.keyDeclarationPrefix,key:c.symbol})):(s=function(e,{alignChordsWithLyrics:t=!1,chartType:n="all"}={}){const r=nt(t,n)?e.model.lyrics.trim():e.model.lyrics;return tt({lyricLine:r})}(n,{alignChordsWithLyrics:r,chartType:o}),e&&(s=Ke(e,s),e="")),s&&function(e,{isFromAutoRepeatChords:t=!1,isFromChordLineRepeater:n=!1,isFromSectionCopy:r=!1,isFromSectionMultiply:i=!1,shouldOpenSection:o=!1,shouldClosePriorSection:s=!1,shouldCloseFinalSection:a=!1,sectionWrapperClasses:l=[]}={}){const u=["cmLine"];return t&&u.push("cmLine--isFromAutoRepeatChords"),n&&u.push("cmLine--isFromChordLineRepeater"),r&&u.push("cmLine--isFromSectionCopy"),i&&u.push("cmLine--isFromSectionMultiply"),et({line:e,lineClasses:u.join(" "),shouldOpenSection:o,sectionWrapperClasses:l.join(" "),shouldClosePriorSection:s,shouldCloseFinalSection:a})}(s,{isFromSectionMultiply:n.isFromSectionMultiply,isFromAutoRepeatChords:n.isFromAutoRepeatChords,isFromChordLineRepeater:n.isFromChordLineRepeater,isFromSectionCopy:n.isFromSectionCopy,shouldOpenSection:l,shouldClosePriorSection:a,shouldCloseFinalSection:M(i)&&t,sectionWrapperClasses:u})})).filter(Boolean)}();return a?a(k,N,{alignChordsWithLyrics:r,alignBars:n}):it({song:N.join("")});function M(e){return k.length-1===e}function A(e){return"all"===o&&r&&e.model.hasPositionedChords}function D(e){return"always"===p||"grids"===p&&!e.hasPositionedChords}}},r5Lg:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});const r=()=>e=>(e.formatted.symbol=e.formatted.symbol.replace(/[() ]/g,"").replace("mM","mMaj").replace("°","dim"),e)},KO9H:(e,t,n)=>{"use strict";function r(e,t){return e.reduce(((e,t)=>e?t(e):null),t)}n.d(t,{V:()=>at,v:()=>wt});var i=n("c2re"),o=n.n(i),s=n("nDih"),a=n.n(s);const l=e=>{if(!Array.isArray(e))throw new TypeError("customFilters should be given as an array");if(e.some((e=>"function"!=typeof e)))throw new TypeError("The given filter is not a function");return!0};var u=n("Flgh"),c=n.n(u),h=n("uZih");const f={AFlat:"Ab",A:"A",ASharp:"A#",BFlat:"Bb",B:"B",C:"C",CSharp:"C#",DFlat:"Db",D:"D",DSharp:"D#",EFlat:"Eb",E:"E",F:"F",FSharp:"F#",GFlat:"Gb",G:"G",GSharp:"G#"},p={Ab:f.AFlat,A:f.A,"A#":f.ASharp,Bb:f.BFlat,B:f.B,"B#":f.C,Cb:f.B,C:f.C,"C#":f.CSharp,Db:f.DFlat,D:f.D,"D#":f.DSharp,Eb:f.EFlat,E:f.E,"E#":f.F,Fb:f.E,F:f.F,"F#":f.FSharp,Gb:f.GFlat,G:f.G,"G#":f.GSharp},d={Lab:f.AFlat,La:f.A,"La#":f.ASharp,Sib:f.BFlat,Si:f.B,"Si#":f.C,Dob:f.B,Do:f.C,"Do#":f.CSharp,Reb:f.DFlat,Réb:f.DFlat,Re:f.D,Ré:f.D,"Re#":f.DSharp,"Ré#":f.DSharp,Mib:f.EFlat,Mi:f.E,"Mi#":f.F,Fab:f.E,Fa:f.F,"Fa#":f.FSharp,Solb:f.GFlat,Sol:f.G,"Sol#":f.GSharp},m={...n.n(h)()(p,["Bb","B","B#"]),As:f.AFlat,Ais:f.ASharp,Hb:f.BFlat,Hes:f.BFlat,H:f.B,His:f.C,"H#":f.C,Ces:f.B,Cis:f.CSharp,Des:f.DFlat,Dis:f.DSharp,Es:f.EFlat,Eis:f.F,Fes:f.E,Fis:f.FSharp,Ges:f.GFlat,Gis:f.GSharp};function g(e){let t;return Object.keys(e).reduce(((n,r)=>(r.match(/.[b|#]$/)&&(t=r.replace("#","♯").replace("b","♭"),n[t]=e[r]),n)),{})}const y={...p,...g(p)},v={...d,...g(d)},b={...m,...g(m)},x={...y,...v,...b},w=(Object.keys(x).sort(((e,t)=>t.length-e.length)),Object.keys(y).sort(((e,t)=>t.length-e.length))),S=Object.keys(v).sort(((e,t)=>t.length-e.length)),k=[{name:"english",notes:w},{name:"german",notes:Object.keys(b).sort(((e,t)=>t.length-e.length))},{name:"latin",notes:S}],C=[f.A,f.ASharp,f.B,f.C,f.CSharp,f.D,f.DSharp,f.E,f.F,f.FSharp,f.G,f.GSharp],E=[f.A,f.BFlat,f.B,f.C,f.DFlat,f.D,f.EFlat,f.E,f.F,f.GFlat,f.G,f.AFlat],O={[f.CSharp]:f.DFlat,[f.DSharp]:f.EFlat,[f.FSharp]:f.GFlat,[f.GSharp]:f.AFlat,[f.ASharp]:f.BFlat},T=c()(O),N=[...Object.values(f),...Object.values(f).map((e=>e+"m"))];class M extends Error{constructor(){super("The given symbol is not a valid string"),this.name="InvalidInput"}}class A extends Error{constructor(){super("An unexpected error happened. Maybe a custom filter returned null instead of throwing an exception?"),this.name="UnexpectedError"}}class D extends Error{constructor(e,t,n){super(e),this.name=n,this.chord=t}}class R extends D{constructor(e){super(`"${e.input.symbol}" does not seems to be a chord`,e,"NoSymbolFound")}}class I extends D{constructor(e,t){super(`The chord descriptor "${e.input.descriptor}" contains unknown or duplicated modifiers: "${t}"`,e,"InvalidModifier")}}class z extends D{constructor(e,t){super(`"${e.input.symbol}" describes a chord with an invalid intervals combo: `+t.join(" and "),e,"InvalidIntervals")}}var P=n("wxYD"),L=n.n(P),_=n("nnRT"),B=n.n(_);function F(e,t){const n=L()(t)?t:[t];return B()(e,n)}function j(e,t){return V(e,t,"oneOf")}function U(e,t){return V(e,t,"all")}function $(e,t){return V(e,t,"none")}function V(e,t,n){return(L()(t)?t:[t])["oneOf"===n?"some":"every"]((t=>"none"===n?!e.includes(t):e.includes(t)))}const q=[["2","3"],["2","9"],["3","b3"],["4","11"],["5","b5"],["5","#5"],["b6","#5"],["b6","6"],["b6","13"],["6","13"],["b7","bb7"],["7","b7"],["9","b9"],["9","#9"],["11","#11"],["13","b13"]];function W(e){const t=e.normalized.intervals,n=q.find((e=>U(t,e)));if(n)throw new z(e,n);return e}function J(e){const{rootNote:t,bassNote:n,descriptor:r,chordChanges:i}=e.formatted;let o=t;return r&&(o+=r),i&&i.length&&(o+="("+i.join(",")+")"),n&&(o+="/"+n),e.formatted.symbol=o,e}const H={ma:"major",ma6:"major6",ma7:"major7",dom7:"dominant7",mi:"minor",mi6:"minor6",mi7:"minor7",miMa7:"minorMajor7",aug:"augmented",dim:"diminished",dim7:"diminished7",power:"power",bass:"bass"},K=(H.ma,H.ma6,H.ma7,H.dom7,H.aug,[H.mi,H.mi6,H.mi7,H.miMa7,H.dim,H.dim7]),G={[H.ma]:()=>"",[H.ma6]:e=>e.normalized.intervals.includes("9")?"69":"6",[H.ma7]:e=>"ma"+Z(e),[H.dom7]:e=>e.normalized.intents.alt?"7alt":Z(e),[H.mi]:()=>"mi",[H.mi6]:e=>e.normalized.intervals.includes("9")?"mi69":"mi6",[H.mi7]:e=>"mi"+Z(e),[H.miMa7]:e=>"miMa"+Z(e),[H.aug]:()=>"+",[H.dim]:()=>"dim",[H.dim7]:()=>"dim7",[H.power]:()=>"5",[H.bass]:()=>" bass"},Q={add:"add",add7:"Ma7",omit:"omit",sus:"sus"};function Y(e){return e.formatted={rootNote:e.normalized.rootNote,bassNote:e.normalized.bassNote,descriptor:X(e),chordChanges:ee(e)},e}function X(e){let t=G[e.normalized.quality](e);return e.normalized.isSuspended&&(t+=Q.sus),t}function Z(e){const t=e.normalized.extensions;let n=t[t.length-1];return"11"===n&&e.normalized.intents.major&&(n=$(e.normalized.alterations,["b9","#9"])?"9":"7"),n||"7"}function ee(e){const t=e.normalized.omits.map(((e,t)=>{let n="";return 0===t&&(n+=Q.omit),n+="b3"===e?"3":e,n}));if(function(e){return e.normalized.intents.alt&&e.normalized.quality===H.dom7}(e))return t;const n=(r=e.normalized.quality,e.normalized.adds.filter((e=>!([H.ma6,H.mi6].includes(r)&&"9"===e))).map(((e,t)=>{let n="";return 0===t&&(n+=Q.add,["b","#"].includes(e[0])&&(n+=" ")),n+="7"===e?Q.add7:e,n})));var r;return[...e.normalized.alterations,...n,...t]}const te="♭",ne="♯",re={major:{0:"I",2:"II",3:`${te}III`,4:"III",5:"IV",7:"V",8:`${te}VI`,9:"VI",10:`${te}VII`,11:"VII"},minor:{0:"I",2:"II",3:"III",4:`${ne}III`,5:"IV",7:"V",8:"VI",9:`${ne}VI`,10:"VII",11:`${ne}VII`}},ie={sup2:"²",sup4:"⁴",sup5:"⁵",sup6:"⁶",sup7:"⁷",sub3:"₃",sub4:"₄",sub5:"₅",flat:"♭",sharp:"♯"},oe={major:["I","ii","iii","IV","V","vi","vii°"],dom7:["IΔ",`ii${ie.sup7}`,`iii${ie.sup7}`,"IVΔ",`V${ie.sup7}`,`vi${ie.sup7}`,"viiø"],minor:["i","ii°","III","iv","v","VI","VII"],minor7:[`i${ie.sup7}`,"iiø","IIIΔ",`iv${ie.sup7}`,`v${ie.sup7}`,"VIΔ","VIIΔ"]},se={borrowedFromMinor:["i","ii°",`${ie.flat}III`,"iv","v",`${ie.flat}VI`,`${ie.flat}VII`],borrowedFromMinor7:[`i${ie.sup7}`,"iiø",`${ie.flat}IIIΔ`,`iv${ie.sup7}`,`v${ie.sup7}`,`${ie.flat}VIΔ`,`${ie.flat}VIIΔ`],borrowedFromMajor:["I","ii",`${ie.sharp}iii`,"IV","V",`${ie.sharp}vi`,`${ie.sharp}vii°`],borrowedFromDom7:["IΔ",`ii${ie.sup7}`,`${ie.sharp}iii${ie.sup7}`,"IVΔ",`V${ie.sup7}`,`${ie.sharp}vi${ie.sup7}`,`${ie.sharp}viiø`]};function ae(e="",t){let n,r,i;e||(e=t.normalized.rootNote);const o=e.indexOf("m")>-1?"minor":"major",s=K.includes(t.normalized.quality)?"minor":"major";n=function(e,t,n,r){const i=e.replace("m",""),o=function(e,t){const n=C.indexOf(T[e]||e);return(C.indexOf(T[t]||t)-n+12)%12}(i,n.normalized.rootNote),s=re[t][o]||"?";return"minor"===r?s.toLowerCase():s}(e,o,t,s);const a=function(e){let t="";e.normalized.bassNote&&(!function(e){return ce(e,"b3")||ce(e,"3")}(e)?!function(e){return ce(e,"b5")||ce(e,"5")||ce(e,"#5")}(e)?function(e){return ce(e,"bb7")||ce(e,"b7")||ce(e,"7")}(e)&&(t="²"):t=ue(e)?`${ie.sup4}${ie.sub3}`:`${ie.sup6}${ie.sub4}`:t=ue(e)?`${ie.sup6}${ie.sub5}`:`${ie.sup6}`);return t}(t),l=le[t.normalized.quality](t,a);return r=`${n}${l}`,!function(e,t){return"major"===e?oe.major.includes(t)||oe.dom7.includes(t):oe.minor.includes(t)||oe.minor7.includes(t)}(o,r)?!function(e,t){return"major"===e?se.borrowedFromMinor.includes(t)||se.borrowedFromMinor7.includes(t):se.borrowedFromMajor.includes(t)||se.borrowedFromDom7.includes(t)}(o,r)?(i="unknown",n="?",r=`${n}${l}`):i="borrowed":i="diatonic",r+=a,t.numeral={symbol:r,degree:n,descriptor:l,inversion:a,type:i,thirdQuality:s},t}const le={[H.ma]:()=>"",[H.ma6]:()=>"",[H.ma7]:()=>"Δ",[H.dom7]:(e,t)=>""===t?`${ie.sup7}`:"",[H.mi]:()=>"",[H.mi6]:()=>"",[H.mi7]:(e,t)=>e.normalized.intervals.includes("b5")?"ø":""===t?`${ie.sup7}`:"",[H.miMa7]:()=>"mΔ",[H.aug]:()=>"+",[H.dim]:()=>"°",[H.dim7]:(e,t)=>""===t?`°${ie.sup7}`:"°",[H.power]:()=>"",[H.bass]:()=>""};function ue(e){return[H.ma7,H.mi7,H.miMa7,H.dom7,H.dim7].includes(e.normalized.quality)}function ce(e,t){const n=e.normalized.intervals.indexOf(t);if(-1===n)return!1;return(T[e.normalized.bassNote]||e.normalized.bassNote)===(T[e.normalized.notes[n]]||e.normalized.notes[n])}function he(e){const t=[fe,pe,de,me];return e.input.descriptor&&(e.input.parsableDescriptor=r(t,e.input.descriptor)),e}function fe(e){return e.replace(/[A-LN-Za-z]+/g,(e=>e.toLowerCase())).replace("oMit","omit").replace("diM","dim").replace("augMented","augmented")}function pe(e){return e.replace(/ /g,"")}function de(e){return e.replace(/(7?dim)(alt|add)/g,"$1 $2").replace(/([m|M])(alt|add)/g,"$1 $2").replace(/i(no[35])/g,"i $1").replace(/([b♭#♯]9)6/g,"$1 6").replace(/(9\/?6)/g," $1").replaceAll("+5","#5").replaceAll("-5","b5")}function me(e){let t,n,r;return e.replace(/\((.*?)\)/g,((e,i)=>(t=[],n="",i.split(",").forEach((e=>{r=!0,e.startsWith("add")?n="add":e.startsWith("omit")?n="omit":e.startsWith("no")?n="no":r=!1,r?t.push(e):t.push(n+e)}))," "+t.join(" ")+" ")))}function ge(e={},t){return{input:{symbol:t},normalized:{},formatted:{},parserConfiguration:o()(e)}}const ye={C:"flat",D:"sharp",E:"sharp",F:"flat",G:"sharp",A:"sharp",B:"sharp",Cm:"flat",Dm:"flat",Em:"sharp",Fm:"flat",Gm:"flat",Am:"flat",Bm:"sharp"};function ve(e){const t=e.normalized.rootNote,n=e.normalized.semitones,r=e.normalized.quality;let i=t;K.includes(r)&&(i+="m");const o="sharp"===function(e){return e.indexOf("#")>-1?"sharp":e.indexOf("b")>-1?"flat":ye[e]}(i)?C:E,s=o.indexOf(t),a=[...o.slice(s),...o.slice(0,s),...o.slice(s),...o.slice(0,s)];return e.normalized.notes=n.map((e=>a[e])),e}function be(e){return e.normalized.rootNote=x[e.input.rootNote],e.input.bassNote&&(e.normalized.bassNote=x[e.input.bassNote]),e}var xe=n("zr3P"),we=n.n(xe),Se=n("6R5o"),ke=n.n(Se),Ce=n("jLkM"),Ee=n.n(Ce),Oe=n("uUTq"),Te=n.n(Oe);function Ne(e){let t=we()(e.normalized.intervals),n={quality:"",isSuspended:!1,extensions:[],alterations:[],adds:[],omits:[]};if(F(t,["1","5"]))n.quality=H.power;else if(function(e){return F(e,["1"])}(t))n.quality=H.bass;else{const i=function(e,t){const n=[];($(e,["b3","3","4","11"])||!t&&$(e,["b3","4"]))&&n.push(t?"3":"b3");$(e,["b5","5","#5","b13"])&&n.push("5");return n}(t,e.normalized.intents.major),o=function(e,t){return e.includes("4")||e.includes("11")&&t&&!e.includes("3")}(t,e.normalized.intents.major),{qualityIntervals:s,quality:a}=function(e,t,n,i){const o=function(e,t,n,i){const o=[Me.bind(null,i),Ae.bind(null,n,t.normalized.intents.major),De.bind(null,t.normalized.intents.alt),Ee()];return r(o,we()(e))}(e,t,n,i),s=[{qualityIntervals:["b3"],quality:H.mi},{qualityIntervals:["b3","6"],quality:H.mi6},{qualityIntervals:["b3","7"],quality:H.miMa7},{qualityIntervals:["b3","b7"],quality:H.mi7},{qualityIntervals:["3"],quality:H.ma},{qualityIntervals:["3","6"],quality:H.ma6},{qualityIntervals:["3","7"],quality:H.ma7},{qualityIntervals:["3","b7"],quality:H.dom7},{qualityIntervals:["3","#5"],quality:H.aug},{qualityIntervals:["b3","b5"],quality:H.dim},{qualityIntervals:["b3","b5","bb7"],quality:H.dim7}].sort(((e,t)=>t.qualityIntervals.length-e.qualityIntervals.length));return ke()(s,(e=>U(o,e.qualityIntervals)))}(t,e,o,i),l=function(e,t){const n=[];(function(e){return[H.ma7,H.dom7,H.mi7,H.miMa7].includes(e)})(t)&&(!function(e,t){return Re(t)&&j(e,"13")&&j(e,["11","#11"])&&j(e,["b9","9","#9"])}(e,t)?!function(e,t){return!Re(t)&&j(e,"13")&&j(e,["b9","9","#9"])}(e,t)?!function(e){return j(e,"11")&&j(e,["b9","9","#9"])}(e)?function(e){return e.includes("9")}(e)&&n.push("9"):n.push("9","11"):n.push("9","13"):n.push("9","11","13"));return n}(t,a),u=["1",...s,...l],{adds:c,alterations:h}=function(e,t,n){const r=[],i=[];e.filter((e=>"5"!==e&&"4"!==e)).forEach((e=>{t.includes(e)||(!function(e,t){return{[H.ma]:["b5","#5","#11","b13"],[H.ma6]:["b5","#5","#11","b13"],[H.ma7]:["b5","#5","#11","b13"],[H.dom7]:["b5","#5","b9","#9","#11","b13"],[H.mi]:["b5","#5","#11","b13"],[H.mi6]:["b5","#5","#11","b13"],[H.mi7]:["b5","#5","#11","b13"],[H.miMa7]:["b5","#5","#11","b13"],[H.aug]:[],[H.dim]:[],[H.dim7]:[]}[e].includes(t)}(n,e)?r.push(e):i.push(e))})),function(e){return U(e,["3","4"])}(e)&&r.push("3");return{adds:Ie(r),alterations:Ie(i)}}(t,u,a);n={...n,quality:a,isSuspended:o,extensions:l,alterations:h,adds:c,omits:i}}return{...e,normalized:{...e.normalized,...n}}}function Me(e,t){const n=we()(t);return e.includes("3")?n.push("3"):e.includes("b3")&&n.push("b3"),n}function Ae(e,t,n){if(e){const e=Te()(n,"4");return e.push(t?"3":"b3"),e}return n}function De(e,t){if(e){const e=Te()(t,"b5","#5");return e.push("5"),e}return t}function Re(e){return[H.mi7,H.miMa7].includes(e)}function Ie(e){return e.sort(((e,t)=>Number.parseInt(e.replace(/[b#]/,""))-Number.parseInt(t.replace(/[b#]/,""))))}function ze(e,t){const{symbol:n}=t.input,r=e.join("|"),i=new RegExp("^("+r+")(.*?)(/("+r+"))?$"),o=n.match(i);if(o&&o[1])return t.input.rootNote=o[1],o[2]&&(t.input.descriptor=o[2]),o[4]&&(t.input.bassNote=o[4]),t;throw new R(t)}const Pe={ma:"ma",mi:"mi",dim:"dim",halfDim:"halfDim",aug:"aug",seventh:"seventh",sus:"sus",sus2:"sus2",ninth:"ninth",eleventh:"eleventh",thirteenth:"thirteenth",fifthFlat:"b5",fifthSharp:"#5",ninthFlat:"b9",ninthSharp:"#9",eleventhSharp:"#11",thirteenthFlat:"b13",add3:"add3",add4:"add4",addb6:"addb6",add6:"add6",add69:"add69",add7:"add7",add9:"add9",add11:"add11",add13:"add13",bass:"bass",omit3:"omit3",omit5:"omit5",power:"power",alt:"alt"},Le={"^":[Pe.ma,Pe.add7],Δ:[Pe.ma,Pe.add7],M:Pe.ma,Ma:Pe.ma,Maj:Pe.ma,Major:Pe.ma,ma:Pe.ma,maj:Pe.ma,major:Pe.ma},_e=je(Le,Pe.add7,(e=>e+"7")),Be=je(Le,Pe.add7,(e=>"add"+e+"7")),Fe={...Le,..._e,"-":Pe.mi,m:Pe.mi,Mi:Pe.mi,Min:Pe.mi,Minor:Pe.mi,mi:Pe.mi,min:Pe.mi,minor:Pe.mi,"°":Pe.dim,o:Pe.dim,0:Pe.dim,dim:Pe.dim,"dim.":Pe.dim,diminished:Pe.dim,Ø:Pe.halfDim,ø:Pe.halfDim,h:Pe.halfDim,"+":Pe.aug,aug:Pe.aug,augmented:Pe.aug,7:Pe.seventh,4:Pe.sus,sus:Pe.sus,sus4:Pe.sus,suspended:Pe.sus,suspended4:Pe.sus,sus2:Pe.sus2,suspended2:Pe.sus2,9:Pe.ninth,11:Pe.eleventh,13:Pe.thirteenth,b3:Pe.mi,b5:Pe.fifthFlat,"♭5":Pe.fifthFlat,"#5":Pe.fifthSharp,"♯5":Pe.fifthSharp,b9:Pe.ninthFlat,"♭9":Pe.ninthFlat,addb9:Pe.ninthFlat,"add♭9":Pe.ninthFlat,"#9":Pe.ninthSharp,"♯9":Pe.ninthSharp,"add#9":Pe.ninthSharp,"add♯9":Pe.ninthSharp,"#11":Pe.eleventhSharp,"♯11":Pe.eleventhSharp,"add#11":Pe.eleventhSharp,b13:Pe.thirteenthFlat,"♭13":Pe.thirteenthFlat,addb13:Pe.thirteenthFlat,"add♭13":Pe.thirteenthFlat,...Be,2:Pe.add9,add2:Pe.add9,add3:Pe.add3,add4:Pe.add4,addb6:Pe.addb6,b6:Pe.addb6,6:Pe.add6,add6:Pe.add6,"6/9":Pe.add69,69:Pe.add69,96:Pe.add69,"9/6":Pe.add69,add9:Pe.add9,add11:Pe.add11,add13:Pe.add13,bass:Pe.bass,omit3:Pe.omit3,no3:Pe.omit3,omit5:Pe.omit5,no5:Pe.omit5,5:Pe.power,alt:Pe.alt,"alt.":Pe.alt,altered:Pe.alt};function je(e,t,n){return Object.keys(e).map(n).reduce(((e,n)=>(e[n]=t,e)),{})}const Ue=Object.keys(Fe).sort(((e,t)=>t.length-e.length)),$e=Pe,Ve={1:0,2:2,b3:3,3:4,4:5,b5:6,5:7,"#5":8,b6:8,6:9,bb7:9,b7:10,7:11,b9:13,9:14,"#9":15,11:17,"#11":18,b13:20,13:21};function qe(e,t){let n=[];return t.input.parsableDescriptor&&(n=function(e){const{parsableDescriptor:t}=e.input,n=[],r=new RegExp(Ue.map(rt).join("|"),"g"),i=t.match(r);let o,s=t;i&&i.forEach((e=>{o=Fe[e],Array.isArray(o)||(o=[o]),o.forEach((t=>{n.includes(t)||(n.push(t),s=s.replace(e,""))}))}));if(0===n.length)throw new R(e);if(s.trim().length>0)throw new I(e,s);return n}(t)),t.input.modifiers=n,t.normalized.intervals=function(e,t){if(e.includes($e.power))return["1","5"];if(e.includes($e.bass))return["1"];return Ee()(["1",...We(e),...Je(e),...He(e,t),...Ke(e),...Ge(e),...Ye(e,t),...Xe(e,t),...Ze(e,t)]).sort(((e,t)=>Ve[e]-Ve[t]))}(n,e),t.normalized.semitones=t.normalized.intervals.map((e=>Ve[e])).sort(((e,t)=>e-t)),t.normalized.intents=function(e){return{major:tt(e),eleventh:e.includes($e.eleventh),alt:e.includes($e.alt)}}(n),t}function We(e){const t=[];return e.includes($e.omit3)?[]:(j(e,[$e.sus,$e.sus2])||(tt(e)?e.includes($e.eleventh)||t.push("3"):t.push("b3")),e.includes($e.add3)&&t.push("3"),t)}function Je(e){const t=[];return j(e,[$e.sus,$e.add4])&&t.push("4"),t}function He(e,t){const n=[];return e.includes($e.omit5)?[]:((j(e,[$e.dim,$e.halfDim,$e.fifthFlat])||et(e,t,"b5"))&&n.push("b5"),(j(e,[$e.aug,$e.fifthSharp])||et(e,t,"#5"))&&n.push("#5"),n.length||e.includes($e.thirteenthFlat)||n.push("5"),n)}function Ke(e){const t=[];return j(e,[$e.addb6])&&t.push("b6"),!j(e,[$e.add6,$e.add69])||nt(e)||j(e,[$e.halfDim])||t.push("6"),t}function Ge(e){const t=[];return j(e,[$e.alt])&&t.push("b7"),j(e,[$e.seventh,$e.halfDim])?e.includes($e.dim)?t.push("bb7"):e.includes($e.halfDim)?t.push("b7"):t.push(Qe(e)):j(e,[$e.ninth,$e.eleventh,$e.thirteenth])&&t.push(Qe(e)),e.includes($e.add7)&&t.push("7"),t}function Qe(e){return e.includes($e.ma)?"7":"b7"}function Ye(e,t){const n=[];return j(e,[$e.add69,$e.ninth,$e.eleventh,$e.thirteenth])&&$(e,[$e.ninthFlat,$e.ninthSharp])&&n.push("9"),j(e,[$e.sus2,$e.add9])&&n.push("9"),(j(e,[$e.ninthFlat])||et(e,t,"b9"))&&n.push("b9"),(j(e,[$e.ninthSharp])||et(e,t,"#9"))&&n.push("#9"),n}function Xe(e,t){const n=[];return(j(e,[$e.thirteenth])&&!tt(e)||j(e,[$e.eleventh,$e.add11]))&&n.push("11"),(j(e,[$e.eleventhSharp])||et(e,t,"#11"))&&n.push("#11"),n}function Ze(e,t){const n=[];return(j(e,[$e.add13,$e.thirteenth])||j(e,[$e.add6,$e.add69])&&nt(e)||j(e,[$e.add6,$e.add69])&&j(e,[$e.halfDim]))&&n.push("13"),(j(e,[$e.thirteenthFlat])||et(e,t,"b13"))&&n.push("b13"),n}function et(e,t,n){return e.includes($e.alt)&&t.includes(n)}function tt(e){return $(e,[$e.mi,$e.dim,$e.dim7,$e.halfDim])}function nt(e){return j(e,[$e.seventh,$e.ninth,$e.eleventh,$e.thirteenth])}function rt(e){return e.replace(/[.\-*+?^${}()|[\]\\]/g,"\\$&")}function it(e,t,n,r){if(!Array.isArray(t))throw new TypeError(`'${e}' should be an array`);if(!r&&0===t.length)throw new TypeError(`'${e}' cannot be empty`);t.forEach((t=>{if(!n.includes(t))throw new TypeError(`'${t}' is not a valid value for ${e}`)}))}function ot(e){return st(new A,e)}function st(e,t){return{type:e.name,chord:e.chord,message:e.message,notationSystem:t}}const at=function(e={}){const t=["b5","#5","b9","#9","#11","b13"],n=["english","german","latin"],{notationSystems:i=o()(n),altIntervals:s=o()(t),customFilters:u=[],key:c=""}=e;return function(e,t){it("altIntervals",e,t,!0)}(s,t),function(e,t){it("notationSystems",e,t)}(i,n),l(u),function(e){if(!(""===e||a()(e)&&N.includes(e)))throw new TypeError(`'${e}' is not a valid value for key`)}(c),function(t){const n=[];if(a=t,!("string"==typeof a&&a.length>0)){const e=new M;n.push(st(e))}var a;const l=o()(k).filter((e=>i.includes(e.name)));let h,f,p;if(!n.length)for(;l.length&&!h;){p=l.shift(),f=[ge.bind(null,e),ze.bind(null,p.notes),he,qe.bind(null,s),W,be,Ne,Y,J,ve,ae.bind(null,c),...u];try{h=r(f,t),h?h.input.notationSystem=p.name:n.push(ot(p.name))}catch(e){n.push(st(e,p.name))}}return h||{error:n}}},lt={sus2:"sus2",add2:"2",omit:"no",ma:"M",mi:"m",dim:"°",aug7:"7+",eleventh:"11"};function ut(e){let t,n=e.formatted.chordChanges;return!function(e){return F(e.normalized.intervals,["1","5","9"])}(e)?!function(e){return F(e.normalized.intervals,["1","3","5","9"])}(e)?!function(e){return F(e.normalized.intervals,["1","3","#5","b7"])}(e)?(t=e.formatted.descriptor.replace("mi",lt.mi).replace(/[m|M]a/,lt.ma).replace("dim",lt.dim),function(e){return e.normalized.intents.eleventh}(e)&&(t=t.replace(/7sus|9sus/,lt.eleventh))):(t=lt.aug7,n=[]):(t=lt.add2,n=[]):(t=lt.sus2,n=[]),n=n.map((e=>e.replace(/[m|M]a/,lt.ma).replace("omit",lt.omit))),{...e,formatted:{...e.formatted,descriptor:t,chordChanges:n}}}var ct=n("lKOy"),ht=n.n(ct);function ft(e="none",t){if("none"===e)return t;const n=ht()(t.normalized.intervals,{max:["4","b5","#5","6","bb7","b7","7","b9","9","#9","11","#11","b13","13"],core:["4","b9","9","#9","11","#11","b13","13"]}[e]);$(n,["b3","3"])&&n.push(t.normalized.intents.major?"3":"b3"),$(n,["b5","5","#5"])&&n.push("5"),t.normalized.intervals=n,t.normalized.semitones=n.map((e=>Ve[e])),t.normalized.intents.eleventh=!1,t.normalized.intents.alt=!1,"max"===e&&delete t.normalized.bassNote;return r([Ne,Y,ve],t)}function pt(e,t,n){const{rootNote:r,bassNote:i}=n.normalized,o=mt(r);if(n.normalized.rootNote=dt(o,e,t),n.formatted.rootNote=n.normalized.rootNote,i){const r=mt(i);n.normalized.bassNote=dt(r,e,t),n.formatted.bassNote=n.normalized.bassNote}return ve(n)}function dt(e,t,n){const r=C.indexOf(e)+t,i=Math.floor(r/12),o=C[r-12*i];return"flat"===n&&O[o]||o}function mt(e){return T[e]||e}const gt={german:{Ab:"As",A:"A","A#":"Ais",Bb:"Hes",B:"H",C:"C","C#":"Cis",Db:"Des",D:"D","D#":"Dis",Eb:"Es",E:"E",F:"F","F#":"Fis",Gb:"Ges",G:"G","G#":"Gis"},latin:{Ab:"Lab",A:"La","A#":"La#",Bb:"Sib",B:"Si",C:"Do","C#":"Do#",Db:"Reb",D:"Re","D#":"Re#",Eb:"Mib",E:"Mi",F:"Fa","F#":"Fa#",Gb:"Solb",G:"Sol","G#":"Sol#"}},yt=Object.keys(gt);function vt(e="english",t){const n="auto"===e?t.input.notationSystem:e;return"english"===n?t:yt.includes(n)?(t.formatted.rootNote=gt[n][t.formatted.rootNote],t.formatted.bassNote&&(t.formatted.bassNote=gt[n][t.formatted.bassNote]),t):null}function bt(e){return e&&e.formatted&&e.formatted.symbol?e.formatted.symbol:null}const xt=e=>e&&"object"==typeof e&&!e.error&&e.input,wt=function({accidental:e="original",customFilters:t=[],notationSystem:n="english",printer:i="text",simplify:s="none",transposeValue:a=0,useShortNamings:u=!1}={}){l(t);const c=[];return["max","core"].includes(s)&&c.push(ft.bind(null,s)),"original"===e&&0===a||c.push(pt.bind(null,a,e)),u&&c.push(ut),c.push(vt.bind(null,n),J,...t),function(e){if(!xt(e))return null;const t=r(c,o()(e));return"raw"===i?function(e){delete e.parserConfiguration.notationSystems;const t=o()(e),n=bt(e),r=at(e.parserConfiguration)(n);return t.input=r.input,t}(t):bt(t)}}},lw3o:(e,t,n)=>{"use strict";t.Z=function(e){var t=Object.keys(e),n=void 0;try{for(var r=0;r1?n-1:0),i=1;i2&&void 0!==arguments[2]?arguments[2]:p;t&&t(e,null);let o=r.length;for(;o--;){let t=r[o];if("string"==typeof t){const e=i(t);e!==t&&(n(r)||(r[o]=e),t=e)}e[t]=!0}return e}function C(e){for(let t=0;t/gm),j=s(/\${[\w\W]*}/gm),U=s(/^data-[\-\w.\u00B7-\uFFFF]/),$=s(/^aria-[\-\w]+$/),V=s(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),q=s(/^(?:\w+script|data):/i),W=s(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),J=s(/^html$/i);var H=Object.freeze({__proto__:null,MUSTACHE_EXPR:B,ERB_EXPR:F,TMPLIT_EXPR:j,DATA_ATTR:U,ARIA_ATTR:$,IS_ALLOWED_URI:V,IS_SCRIPT_OR_DATA:q,ATTR_WHITESPACE:W,DOCTYPE_NAME:J});const K=function(){return"undefined"==typeof window?null:window},G=function(e,t){if("object"!=typeof e||"function"!=typeof e.createPolicy)return null;let n=null;const r="data-tt-policy-suffix";t&&t.hasAttribute(r)&&(n=t.getAttribute(r));const i="dompurify"+(n?"#"+n:"");try{return e.createPolicy(i,{createHTML:e=>e,createScriptURL:e=>e})}catch(e){return console.warn("TrustedTypes policy "+i+" could not be created."),null}};function Q(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:K();const n=e=>Q(e);if(n.version="3.0.8",n.removed=[],!t||!t.document||9!==t.document.nodeType)return n.isSupported=!1,n;let{document:r}=t;const i=r,s=i.currentScript,{DocumentFragment:l,HTMLTemplateElement:u,Node:w,Element:S,NodeFilter:C,NamedNodeMap:B=t.NamedNodeMap||t.MozNamedAttrMap,HTMLFormElement:F,DOMParser:j,trustedTypes:U}=t,$=S.prototype,q=O($,"cloneNode"),W=O($,"nextSibling"),Y=O($,"childNodes"),X=O($,"parentNode");if("function"==typeof u){const e=r.createElement("template");e.content&&e.content.ownerDocument&&(r=e.content.ownerDocument)}let Z,ee="";const{implementation:te,createNodeIterator:ne,createDocumentFragment:re,getElementsByTagName:ie}=r,{importNode:oe}=i;let se={};n.isSupported="function"==typeof e&&"function"==typeof X&&te&&void 0!==te.createHTMLDocument;const{MUSTACHE_EXPR:ae,ERB_EXPR:le,TMPLIT_EXPR:ue,DATA_ATTR:ce,ARIA_ATTR:he,IS_SCRIPT_OR_DATA:fe,ATTR_WHITESPACE:pe}=H;let{IS_ALLOWED_URI:de}=H,me=null;const ge=k({},[...T,...N,...M,...D,...I]);let ye=null;const ve=k({},[...z,...P,...L,..._]);let be=Object.seal(a(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),xe=null,we=null,Se=!0,ke=!0,Ce=!1,Ee=!0,Oe=!1,Te=!1,Ne=!1,Me=!1,Ae=!1,De=!1,Re=!1,Ie=!0,ze=!1;const Pe="user-content-";let Le=!0,_e=!1,Be={},Fe=null;const je=k({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Ue=null;const $e=k({},["audio","video","img","source","image","track"]);let Ve=null;const qe=k({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),We="http://www.w3.org/1998/Math/MathML",Je="http://www.w3.org/2000/svg",He="http://www.w3.org/1999/xhtml";let Ke=He,Ge=!1,Qe=null;const Ye=k({},[We,Je,He],d);let Xe=null;const Ze=["application/xhtml+xml","text/html"],et="text/html";let tt=null,nt=null;const rt=r.createElement("form"),it=function(e){return e instanceof RegExp||e instanceof Function},ot=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!nt||nt!==e){if(e&&"object"==typeof e||(e={}),e=E(e),Xe=-1===Ze.indexOf(e.PARSER_MEDIA_TYPE)?et:e.PARSER_MEDIA_TYPE,tt="application/xhtml+xml"===Xe?d:p,me="ALLOWED_TAGS"in e?k({},e.ALLOWED_TAGS,tt):ge,ye="ALLOWED_ATTR"in e?k({},e.ALLOWED_ATTR,tt):ve,Qe="ALLOWED_NAMESPACES"in e?k({},e.ALLOWED_NAMESPACES,d):Ye,Ve="ADD_URI_SAFE_ATTR"in e?k(E(qe),e.ADD_URI_SAFE_ATTR,tt):qe,Ue="ADD_DATA_URI_TAGS"in e?k(E($e),e.ADD_DATA_URI_TAGS,tt):$e,Fe="FORBID_CONTENTS"in e?k({},e.FORBID_CONTENTS,tt):je,xe="FORBID_TAGS"in e?k({},e.FORBID_TAGS,tt):{},we="FORBID_ATTR"in e?k({},e.FORBID_ATTR,tt):{},Be="USE_PROFILES"in e&&e.USE_PROFILES,Se=!1!==e.ALLOW_ARIA_ATTR,ke=!1!==e.ALLOW_DATA_ATTR,Ce=e.ALLOW_UNKNOWN_PROTOCOLS||!1,Ee=!1!==e.ALLOW_SELF_CLOSE_IN_ATTR,Oe=e.SAFE_FOR_TEMPLATES||!1,Te=e.WHOLE_DOCUMENT||!1,Ae=e.RETURN_DOM||!1,De=e.RETURN_DOM_FRAGMENT||!1,Re=e.RETURN_TRUSTED_TYPE||!1,Me=e.FORCE_BODY||!1,Ie=!1!==e.SANITIZE_DOM,ze=e.SANITIZE_NAMED_PROPS||!1,Le=!1!==e.KEEP_CONTENT,_e=e.IN_PLACE||!1,de=e.ALLOWED_URI_REGEXP||V,Ke=e.NAMESPACE||He,be=e.CUSTOM_ELEMENT_HANDLING||{},e.CUSTOM_ELEMENT_HANDLING&&it(e.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(be.tagNameCheck=e.CUSTOM_ELEMENT_HANDLING.tagNameCheck),e.CUSTOM_ELEMENT_HANDLING&&it(e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(be.attributeNameCheck=e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),e.CUSTOM_ELEMENT_HANDLING&&"boolean"==typeof e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(be.allowCustomizedBuiltInElements=e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Oe&&(ke=!1),De&&(Ae=!0),Be&&(me=k({},I),ye=[],!0===Be.html&&(k(me,T),k(ye,z)),!0===Be.svg&&(k(me,N),k(ye,P),k(ye,_)),!0===Be.svgFilters&&(k(me,M),k(ye,P),k(ye,_)),!0===Be.mathMl&&(k(me,D),k(ye,L),k(ye,_))),e.ADD_TAGS&&(me===ge&&(me=E(me)),k(me,e.ADD_TAGS,tt)),e.ADD_ATTR&&(ye===ve&&(ye=E(ye)),k(ye,e.ADD_ATTR,tt)),e.ADD_URI_SAFE_ATTR&&k(Ve,e.ADD_URI_SAFE_ATTR,tt),e.FORBID_CONTENTS&&(Fe===je&&(Fe=E(Fe)),k(Fe,e.FORBID_CONTENTS,tt)),Le&&(me["#text"]=!0),Te&&k(me,["html","head","body"]),me.table&&(k(me,["tbody"]),delete xe.tbody),e.TRUSTED_TYPES_POLICY){if("function"!=typeof e.TRUSTED_TYPES_POLICY.createHTML)throw x('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if("function"!=typeof e.TRUSTED_TYPES_POLICY.createScriptURL)throw x('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');Z=e.TRUSTED_TYPES_POLICY,ee=Z.createHTML("")}else void 0===Z&&(Z=G(U,s)),null!==Z&&"string"==typeof ee&&(ee=Z.createHTML(""));o&&o(e),nt=e}},st=k({},["mi","mo","mn","ms","mtext"]),at=k({},["foreignobject","desc","title","annotation-xml"]),lt=k({},["title","style","font","a","script"]),ut=k({},[...N,...M,...A]),ct=k({},[...D,...R]),ht=function(e){let t=X(e);t&&t.tagName||(t={namespaceURI:Ke,tagName:"template"});const n=p(e.tagName),r=p(t.tagName);return!!Qe[e.namespaceURI]&&(e.namespaceURI===Je?t.namespaceURI===He?"svg"===n:t.namespaceURI===We?"svg"===n&&("annotation-xml"===r||st[r]):Boolean(ut[n]):e.namespaceURI===We?t.namespaceURI===He?"math"===n:t.namespaceURI===Je?"math"===n&&at[r]:Boolean(ct[n]):e.namespaceURI===He?!(t.namespaceURI===Je&&!at[r])&&!(t.namespaceURI===We&&!st[r])&&!ct[n]&&(lt[n]||!ut[n]):!("application/xhtml+xml"!==Xe||!Qe[e.namespaceURI]))},ft=function(e){f(n.removed,{element:e});try{e.parentNode.removeChild(e)}catch(t){e.remove()}},pt=function(e,t){try{f(n.removed,{attribute:t.getAttributeNode(e),from:t})}catch(e){f(n.removed,{attribute:null,from:t})}if(t.removeAttribute(e),"is"===e&&!ye[e])if(Ae||De)try{ft(t)}catch(e){}else try{t.setAttribute(e,"")}catch(e){}},dt=function(e){let t=null,n=null;if(Me)e=""+e;else{const t=m(e,/^[\r\n\t ]+/);n=t&&t[0]}"application/xhtml+xml"===Xe&&Ke===He&&(e=''+e+"");const i=Z?Z.createHTML(e):e;if(Ke===He)try{t=(new j).parseFromString(i,Xe)}catch(e){}if(!t||!t.documentElement){t=te.createDocument(Ke,"template",null);try{t.documentElement.innerHTML=Ge?ee:i}catch(e){}}const o=t.body||t.documentElement;return e&&n&&o.insertBefore(r.createTextNode(n),o.childNodes[0]||null),Ke===He?ie.call(t,Te?"html":"body")[0]:Te?t.documentElement:o},mt=function(e){return ne.call(e.ownerDocument||e,e,C.SHOW_ELEMENT|C.SHOW_COMMENT|C.SHOW_TEXT,null)},gt=function(e){return e instanceof F&&("string"!=typeof e.nodeName||"string"!=typeof e.textContent||"function"!=typeof e.removeChild||!(e.attributes instanceof B)||"function"!=typeof e.removeAttribute||"function"!=typeof e.setAttribute||"string"!=typeof e.namespaceURI||"function"!=typeof e.insertBefore||"function"!=typeof e.hasChildNodes)},yt=function(e){return"function"==typeof w&&e instanceof w},vt=function(e,t,r){se[e]&&c(se[e],(e=>{e.call(n,t,r,nt)}))},bt=function(e){let t=null;if(vt("beforeSanitizeElements",e,null),gt(e))return ft(e),!0;const r=tt(e.nodeName);if(vt("uponSanitizeElement",e,{tagName:r,allowedTags:me}),e.hasChildNodes()&&!yt(e.firstElementChild)&&b(/<[/\w]/g,e.innerHTML)&&b(/<[/\w]/g,e.textContent))return ft(e),!0;if(!me[r]||xe[r]){if(!xe[r]&&wt(r)){if(be.tagNameCheck instanceof RegExp&&b(be.tagNameCheck,r))return!1;if(be.tagNameCheck instanceof Function&&be.tagNameCheck(r))return!1}if(Le&&!Fe[r]){const t=X(e)||e.parentNode,n=Y(e)||e.childNodes;if(n&&t)for(let r=n.length-1;r>=0;--r)t.insertBefore(q(n[r],!0),W(e))}return ft(e),!0}return e instanceof S&&!ht(e)?(ft(e),!0):"noscript"!==r&&"noembed"!==r&&"noframes"!==r||!b(/<\/no(script|embed|frames)/i,e.innerHTML)?(Oe&&3===e.nodeType&&(t=e.textContent,c([ae,le,ue],(e=>{t=g(t,e," ")})),e.textContent!==t&&(f(n.removed,{element:e.cloneNode()}),e.textContent=t)),vt("afterSanitizeElements",e,null),!1):(ft(e),!0)},xt=function(e,t,n){if(Ie&&("id"===t||"name"===t)&&(n in r||n in rt))return!1;if(ke&&!we[t]&&b(ce,t));else if(Se&&b(he,t));else if(!ye[t]||we[t]){if(!(wt(e)&&(be.tagNameCheck instanceof RegExp&&b(be.tagNameCheck,e)||be.tagNameCheck instanceof Function&&be.tagNameCheck(e))&&(be.attributeNameCheck instanceof RegExp&&b(be.attributeNameCheck,t)||be.attributeNameCheck instanceof Function&&be.attributeNameCheck(t))||"is"===t&&be.allowCustomizedBuiltInElements&&(be.tagNameCheck instanceof RegExp&&b(be.tagNameCheck,n)||be.tagNameCheck instanceof Function&&be.tagNameCheck(n))))return!1}else if(Ve[t]);else if(b(de,g(n,pe,"")));else if("src"!==t&&"xlink:href"!==t&&"href"!==t||"script"===e||0!==y(n,"data:")||!Ue[e])if(Ce&&!b(fe,g(n,pe,"")));else if(n)return!1;return!0},wt=function(e){return e.indexOf("-")>0},St=function(e){vt("beforeSanitizeAttributes",e,null);const{attributes:t}=e;if(!t)return;const r={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ye};let i=t.length;for(;i--;){const o=t[i],{name:s,namespaceURI:a,value:l}=o,u=tt(s);let f="value"===s?l:v(l);if(r.attrName=u,r.attrValue=f,r.keepAttr=!0,r.forceKeepAttr=void 0,vt("uponSanitizeAttribute",e,r),f=r.attrValue,r.forceKeepAttr)continue;if(pt(s,e),!r.keepAttr)continue;if(!Ee&&b(/\/>/i,f)){pt(s,e);continue}Oe&&c([ae,le,ue],(e=>{f=g(f,e," ")}));const p=tt(e.nodeName);if(xt(p,u,f)){if(!ze||"id"!==u&&"name"!==u||(pt(s,e),f=Pe+f),Z&&"object"==typeof U&&"function"==typeof U.getAttributeType)if(a);else switch(U.getAttributeType(p,u)){case"TrustedHTML":f=Z.createHTML(f);break;case"TrustedScriptURL":f=Z.createScriptURL(f)}try{a?e.setAttributeNS(a,s,f):e.setAttribute(s,f),h(n.removed)}catch(e){}}}vt("afterSanitizeAttributes",e,null)},kt=function e(t){let n=null;const r=mt(t);for(vt("beforeSanitizeShadowDOM",t,null);n=r.nextNode();)vt("uponSanitizeShadowNode",n,null),bt(n)||(n.content instanceof l&&e(n.content),St(n));vt("afterSanitizeShadowDOM",t,null)};return n.sanitize=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=null,o=null,s=null,a=null;if(Ge=!e,Ge&&(e="\x3c!--\x3e"),"string"!=typeof e&&!yt(e)){if("function"!=typeof e.toString)throw x("toString is not a function");if("string"!=typeof(e=e.toString()))throw x("dirty is not a string, aborting")}if(!n.isSupported)return e;if(Ne||ot(t),n.removed=[],"string"==typeof e&&(_e=!1),_e){if(e.nodeName){const t=tt(e.nodeName);if(!me[t]||xe[t])throw x("root node is forbidden and cannot be sanitized in-place")}}else if(e instanceof w)r=dt("\x3c!----\x3e"),o=r.ownerDocument.importNode(e,!0),1===o.nodeType&&"BODY"===o.nodeName||"HTML"===o.nodeName?r=o:r.appendChild(o);else{if(!Ae&&!Oe&&!Te&&-1===e.indexOf("<"))return Z&&Re?Z.createHTML(e):e;if(r=dt(e),!r)return Ae?null:Re?ee:""}r&&Me&&ft(r.firstChild);const u=mt(_e?e:r);for(;s=u.nextNode();)bt(s)||(s.content instanceof l&&kt(s.content),St(s));if(_e)return e;if(Ae){if(De)for(a=re.call(r.ownerDocument);r.firstChild;)a.appendChild(r.firstChild);else a=r;return(ye.shadowroot||ye.shadowrootmode)&&(a=oe.call(i,a,!0)),a}let h=Te?r.outerHTML:r.innerHTML;return Te&&me["!doctype"]&&r.ownerDocument&&r.ownerDocument.doctype&&r.ownerDocument.doctype.name&&b(J,r.ownerDocument.doctype.name)&&(h="\n"+h),Oe&&c([ae,le,ue],(e=>{h=g(h,e," ")})),Z&&Re?Z.createHTML(h):h},n.setConfig=function(){ot(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),Ne=!0},n.clearConfig=function(){nt=null,Ne=!1},n.isValidAttribute=function(e,t,n){nt||ot({});const r=tt(e),i=tt(t);return xt(r,i,n)},n.addHook=function(e,t){"function"==typeof t&&(se[e]=se[e]||[],f(se[e],t))},n.removeHook=function(e){if(se[e])return h(se[e])},n.removeHooks=function(e){se[e]&&(se[e]=[])},n.removeAllHooks=function(){se={}},n}return Q()}()},etrl:function(e,t,n){var r,i,o;i=[],void 0===(o="function"==typeof(r=function(){"use strict";function t(e,t){return void 0===t?t={autoBom:!1}:"object"!=typeof t&&(console.warn("Deprecated: Expected third argument to be a object"),t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\ufeff",e],{type:e.type}):e}function r(e,t,n){var r=new XMLHttpRequest;r.open("GET",e),r.responseType="blob",r.onload=function(){l(r.response,t,n)},r.onerror=function(){console.error("could not download file")},r.send()}function i(e){var t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch(e){}return 200<=t.status&&299>=t.status}function o(e){try{e.dispatchEvent(new MouseEvent("click"))}catch(n){var t=document.createEvent("MouseEvents");t.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var s="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof n.g&&n.g.global===n.g?n.g:void 0,a=s.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),l=s.saveAs||("object"!=typeof window||window!==s?function(){}:"download"in HTMLAnchorElement.prototype&&!a?function(e,t,n){var a=s.URL||s.webkitURL,l=document.createElement("a");t=t||e.name||"download",l.download=t,l.rel="noopener","string"==typeof e?(l.href=e,l.origin===location.origin?o(l):i(l.href)?r(e,t,n):o(l,l.target="_blank")):(l.href=a.createObjectURL(e),setTimeout((function(){a.revokeObjectURL(l.href)}),4e4),setTimeout((function(){o(l)}),0))}:"msSaveOrOpenBlob"in navigator?function(e,n,s){if(n=n||e.name||"download","string"!=typeof e)navigator.msSaveOrOpenBlob(t(e,s),n);else if(i(e))r(e,n,s);else{var a=document.createElement("a");a.href=e,a.target="_blank",setTimeout((function(){o(a)}))}}:function(e,t,n,i){if((i=i||open("","_blank"))&&(i.document.title=i.document.body.innerText="downloading..."),"string"==typeof e)return r(e,t,n);var o="application/octet-stream"===e.type,l=/constructor/i.test(s.HTMLElement)||s.safari,u=/CriOS\/[\d]+/.test(navigator.userAgent);if((u||o&&l||a)&&"undefined"!=typeof FileReader){var c=new FileReader;c.onloadend=function(){var e=c.result;e=u?e:e.replace(/^data:[^;]*;/,"data:attachment/file;"),i?i.location.href=e:location=e,i=null},c.readAsDataURL(e)}else{var h=s.URL||s.webkitURL,f=h.createObjectURL(e);i?i.location=f:location.href=f,i=null,setTimeout((function(){h.revokeObjectURL(f)}),4e4)}});s.saveAs=l.saveAs=l,e.exports=l})?r.apply(t,i):r)||(e.exports=o)},oXkQ:(e,t,n)=>{"use strict";var r=n("ExLx"),i={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},s={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},a={};function l(e){return r.isMemo(e)?s:a[e.$$typeof]||i}a[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},a[r.Memo]=s;var u=Object.defineProperty,c=Object.getOwnPropertyNames,h=Object.getOwnPropertySymbols,f=Object.getOwnPropertyDescriptor,p=Object.getPrototypeOf,d=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(d){var i=p(n);i&&i!==d&&e(t,i,r)}var s=c(n);h&&(s=s.concat(h(n)));for(var a=l(t),m=l(n),g=0;g{"use strict";var n="function"==typeof Symbol&&Symbol.for,r=n?Symbol.for("react.element"):60103,i=n?Symbol.for("react.portal"):60106,o=n?Symbol.for("react.fragment"):60107,s=n?Symbol.for("react.strict_mode"):60108,a=n?Symbol.for("react.profiler"):60114,l=n?Symbol.for("react.provider"):60109,u=n?Symbol.for("react.context"):60110,c=n?Symbol.for("react.async_mode"):60111,h=n?Symbol.for("react.concurrent_mode"):60111,f=n?Symbol.for("react.forward_ref"):60112,p=n?Symbol.for("react.suspense"):60113,d=n?Symbol.for("react.suspense_list"):60120,m=n?Symbol.for("react.memo"):60115,g=n?Symbol.for("react.lazy"):60116,y=n?Symbol.for("react.block"):60121,v=n?Symbol.for("react.fundamental"):60117,b=n?Symbol.for("react.responder"):60118,x=n?Symbol.for("react.scope"):60119;function w(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:switch(e=e.type){case c:case h:case o:case a:case s:case p:return e;default:switch(e=e&&e.$$typeof){case u:case f:case g:case m:case l:return e;default:return t}}case i:return t}}}function S(e){return w(e)===h}t.AsyncMode=c,t.ConcurrentMode=h,t.ContextConsumer=u,t.ContextProvider=l,t.Element=r,t.ForwardRef=f,t.Fragment=o,t.Lazy=g,t.Memo=m,t.Portal=i,t.Profiler=a,t.StrictMode=s,t.Suspense=p,t.isAsyncMode=function(e){return S(e)||w(e)===c},t.isConcurrentMode=S,t.isContextConsumer=function(e){return w(e)===u},t.isContextProvider=function(e){return w(e)===l},t.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===r},t.isForwardRef=function(e){return w(e)===f},t.isFragment=function(e){return w(e)===o},t.isLazy=function(e){return w(e)===g},t.isMemo=function(e){return w(e)===m},t.isPortal=function(e){return w(e)===i},t.isProfiler=function(e){return w(e)===a},t.isStrictMode=function(e){return w(e)===s},t.isSuspense=function(e){return w(e)===p},t.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===o||e===h||e===a||e===s||e===p||e===d||"object"==typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===m||e.$$typeof===l||e.$$typeof===u||e.$$typeof===f||e.$$typeof===v||e.$$typeof===b||e.$$typeof===x||e.$$typeof===y)},t.typeOf=w},ExLx:(e,t,n)=>{"use strict";e.exports=n("y7pD")},hM28:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t=!(arguments.length<=1||void 0===arguments[1])&&arguments[1];if("function"!=typeof e){if(t)throw new Error("Reducer must be a function.");return!1}if(void 0===e(void 0,{type:"@@is-valid-redux-reducer/"+Math.random().toString(36).substring(7).split("").join("\\")})){if(t)throw new Error("Reducer must return the initial state if the state is undefined.");return!1}return!0}},QF3D:(e,t,n)=>{var r=n("vxC8")(n("IBsm"),"DataView");e.exports=r},Tv3l:(e,t,n)=>{var r=n("2Fbm"),i=n("VPai"),o=n("+fUG"),s=n("QMz8"),a=n("mUsV");function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var r=n("8Zrg"),i=n("kwr2"),o=n("5VYK"),s=n("Coc+"),a=n("LzM7");function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var r=n("vxC8")(n("IBsm"),"Map");e.exports=r},hyzI:(e,t,n)=>{var r=n("m5o6"),i=n("d0UJ"),o=n("eask"),s=n("9SKQ"),a=n("e63W");function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var r=n("vxC8")(n("IBsm"),"Promise");e.exports=r},OBn4:(e,t,n)=>{var r=n("vxC8")(n("IBsm"),"Set");e.exports=r},"JBn+":(e,t,n)=>{var r=n("hyzI"),i=n("qjF7"),o=n("cEmw");function s(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t{var r=n("+ooz"),i=n("RNlM"),o=n("E4ao"),s=n("BSqe"),a=n("L6um"),l=n("4/ik");function u(e){var t=this.__data__=new r(e);this.size=t.size}u.prototype.clear=i,u.prototype.delete=o,u.prototype.get=s,u.prototype.has=a,u.prototype.set=l,e.exports=u},Syyo:(e,t,n)=>{var r=n("IBsm").Symbol;e.exports=r},mGzy:(e,t,n)=>{var r=n("IBsm").Uint8Array;e.exports=r},"4+Vk":(e,t,n)=>{var r=n("vxC8")(n("IBsm"),"WeakMap");e.exports=r},zaNA:e=>{e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},LmOH:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,i=0,o=[];++n{var r=n("c7Qd");e.exports=function(e,t){return!!(null==e?0:e.length)&&r(e,t,0)>-1}},"sCL+":e=>{e.exports=function(e,t,n){for(var r=-1,i=null==e?0:e.length;++r{var r=n("2ZvR"),i=n("bvyN"),o=n("wxYD"),s=n("3ajY"),a=n("pnw1"),l=n("Qd2C"),u=Object.prototype.hasOwnProperty;e.exports=function(e,t){var n=o(e),c=!n&&i(e),h=!n&&!c&&s(e),f=!n&&!c&&!h&&l(e),p=n||c||h||f,d=p?r(e.length,String):[],m=d.length;for(var g in e)!t&&!u.call(e,g)||p&&("length"==g||h&&("offset"==g||"parent"==g)||f&&("buffer"==g||"byteLength"==g||"byteOffset"==g)||a(g,m))||d.push(g);return d}},H87J:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,i=Array(r);++n{e.exports=function(e,t){for(var n=-1,r=t.length,i=e.length;++n{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n{var r=n("wC3K"),i=n("pPzx");e.exports=function(e,t,n){(void 0!==n&&!i(e[t],n)||void 0===n&&!(t in e))&&r(e,t,n)}},c72w:(e,t,n)=>{var r=n("wC3K"),i=n("pPzx"),o=Object.prototype.hasOwnProperty;e.exports=function(e,t,n){var s=e[t];o.call(e,t)&&i(s,n)&&(void 0!==n||t in e)||r(e,t,n)}},"6QIk":(e,t,n)=>{var r=n("pPzx");e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return-1}},tPQG:(e,t,n)=>{var r=n("LtXa"),i=n("BlJA");e.exports=function(e,t){return e&&r(t,i(t),e)}},QrYh:(e,t,n)=>{var r=n("LtXa"),i=n("zH+d");e.exports=function(e,t){return e&&r(t,i(t),e)}},wC3K:(e,t,n)=>{var r=n("Pz+s");e.exports=function(e,t,n){"__proto__"==t&&r?r(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},kn3Q:(e,t,n)=>{var r=n("HsnV"),i=n("LmOH"),o=n("c72w"),s=n("tPQG"),a=n("QrYh"),l=n("Grae"),u=n("QT01"),c=n("AjPR"),h=n("BjSP"),f=n("tlBq"),p=n("zF5n"),d=n("kkM+"),m=n("3Qlq"),g=n("7No3"),y=n("sD1O"),v=n("wxYD"),b=n("3ajY"),x=n("NbvU"),w=n("tQYX"),S=n("/iLo"),k=n("BlJA"),C=n("zH+d"),E="[object Arguments]",O="[object Function]",T="[object Object]",N={};N[E]=N["[object Array]"]=N["[object ArrayBuffer]"]=N["[object DataView]"]=N["[object Boolean]"]=N["[object Date]"]=N["[object Float32Array]"]=N["[object Float64Array]"]=N["[object Int8Array]"]=N["[object Int16Array]"]=N["[object Int32Array]"]=N["[object Map]"]=N["[object Number]"]=N[T]=N["[object RegExp]"]=N["[object Set]"]=N["[object String]"]=N["[object Symbol]"]=N["[object Uint8Array]"]=N["[object Uint8ClampedArray]"]=N["[object Uint16Array]"]=N["[object Uint32Array]"]=!0,N["[object Error]"]=N[O]=N["[object WeakMap]"]=!1,e.exports=function e(t,n,M,A,D,R){var I,z=1&n,P=2&n,L=4&n;if(M&&(I=D?M(t,A,D,R):M(t)),void 0!==I)return I;if(!w(t))return t;var _=v(t);if(_){if(I=m(t),!z)return u(t,I)}else{var B=d(t),F=B==O||"[object GeneratorFunction]"==B;if(b(t))return l(t,z);if(B==T||B==E||F&&!D){if(I=P||F?{}:y(t),!z)return P?h(t,a(I,t)):c(t,s(I,t))}else{if(!N[B])return D?t:{};I=g(t,B,z)}}R||(R=new r);var j=R.get(t);if(j)return j;R.set(t,I),S(t)?t.forEach((function(r){I.add(e(r,n,M,r,t,R))})):x(t)&&t.forEach((function(r,i){I.set(i,e(r,n,M,i,t,R))}));var U=_?void 0:(L?P?p:f:P?C:k)(t);return i(U||t,(function(r,i){U&&(r=t[i=r]),o(I,i,e(r,n,M,i,t,R))})),I}},vGGS:(e,t,n)=>{var r=n("tQYX"),i=Object.create,o=function(){function e(){}return function(t){if(!r(t))return{};if(i)return i(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();e.exports=o},"X+YX":(e,t,n)=>{var r=n("JBn+"),i=n("OfKG"),o=n("sCL+"),s=n("H87J"),a=n("SU8Q"),l=n("S0iI");e.exports=function(e,t,n,u){var c=-1,h=i,f=!0,p=e.length,d=[],m=t.length;if(!p)return d;n&&(t=s(t,a(n))),u?(h=o,f=!1):t.length>=200&&(h=l,f=!1,t=new r(t));e:for(;++c{var r=n("zKkv"),i=n("bz5b")(r);e.exports=i},DuXo:e=>{e.exports=function(e,t,n,r){for(var i=e.length,o=n+(r?1:-1);r?o--:++o{var r=n("y/9h"),i=n("oCTG");e.exports=function e(t,n,o,s,a){var l=-1,u=t.length;for(o||(o=i),a||(a=[]);++l0&&o(c)?n>1?e(c,n-1,o,s,a):r(a,c):s||(a[a.length]=c)}return a}},UdtX:(e,t,n)=>{var r=n("RFxK")();e.exports=r},zKkv:(e,t,n)=>{var r=n("UdtX"),i=n("BlJA");e.exports=function(e,t){return e&&r(e,t,i)}},w2Tz:(e,t,n)=>{var r=n("xoyU"),i=n("Ypsa");e.exports=function(e,t){for(var n=0,o=(t=r(t,e)).length;null!=e&&n{var r=n("y/9h"),i=n("wxYD");e.exports=function(e,t,n){var o=t(e);return i(e)?o:r(o,n(e))}},Dhk8:(e,t,n)=>{var r=n("Syyo"),i=n("KCLV"),o=n("kHoZ"),s=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":s&&s in Object(e)?i(e):o(e)}},JYmt:e=>{e.exports=function(e,t){return null!=e&&t in Object(e)}},c7Qd:(e,t,n)=>{var r=n("DuXo"),i=n("z9Jh"),o=n("n1QJ");e.exports=function(e,t,n){return t==t?o(e,t,n):r(e,i,n)}},"1sLo":(e,t,n)=>{var r=n("JBn+"),i=n("OfKG"),o=n("sCL+"),s=n("H87J"),a=n("SU8Q"),l=n("S0iI"),u=Math.min;e.exports=function(e,t,n){for(var c=n?o:i,h=e[0].length,f=e.length,p=f,d=Array(f),m=1/0,g=[];p--;){var y=e[p];p&&t&&(y=s(y,a(t))),m=u(y.length,m),d[p]=!n&&(t||h>=120&&y.length>=120)?new r(p&&y):void 0}y=e[0];var v=-1,b=d[0];e:for(;++v{var r=n("zKkv");e.exports=function(e,t,n,i){return r(e,(function(e,r,o){t(i,n(e),r,o)})),i}},"/30y":(e,t,n)=>{var r=n("Dhk8"),i=n("tLQN");e.exports=function(e){return i(e)&&"[object Arguments]"==r(e)}},NYSw:(e,t,n)=>{var r=n("BqUW"),i=n("tLQN");e.exports=function e(t,n,o,s,a){return t===n||(null==t||null==n||!i(t)&&!i(n)?t!=t&&n!=n:r(t,n,o,s,e,a))}},BqUW:(e,t,n)=>{var r=n("HsnV"),i=n("ZZ+W"),o=n("R3gn"),s=n("yZHP"),a=n("kkM+"),l=n("wxYD"),u=n("3ajY"),c=n("Qd2C"),h="[object Arguments]",f="[object Array]",p="[object Object]",d=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,m,g,y){var v=l(e),b=l(t),x=v?f:a(e),w=b?f:a(t),S=(x=x==h?p:x)==p,k=(w=w==h?p:w)==p,C=x==w;if(C&&u(e)){if(!u(t))return!1;v=!0,S=!1}if(C&&!S)return y||(y=new r),v||c(e)?i(e,t,n,m,g,y):o(e,t,x,n,m,g,y);if(!(1&n)){var E=S&&d.call(e,"__wrapped__"),O=k&&d.call(t,"__wrapped__");if(E||O){var T=E?e.value():e,N=O?t.value():t;return y||(y=new r),g(T,N,n,m,y)}}return!!C&&(y||(y=new r),s(e,t,n,m,g,y))}},gEWz:(e,t,n)=>{var r=n("kkM+"),i=n("tLQN");e.exports=function(e){return i(e)&&"[object Map]"==r(e)}},ZjRn:(e,t,n)=>{var r=n("HsnV"),i=n("NYSw");e.exports=function(e,t,n,o){var s=n.length,a=s,l=!o;if(null==e)return!a;for(e=Object(e);s--;){var u=n[s];if(l&&u[2]?u[1]!==e[u[0]]:!(u[0]in e))return!1}for(;++s{e.exports=function(e){return e!=e}},"5nKN":(e,t,n)=>{var r=n("2q8g"),i=n("9vbJ"),o=n("tQYX"),s=n("c18h"),a=/^\[object .+?Constructor\]$/,l=Function.prototype,u=Object.prototype,c=l.toString,h=u.hasOwnProperty,f=RegExp("^"+c.call(h).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!o(e)||i(e))&&(r(e)?f:a).test(s(e))}},"6I2w":(e,t,n)=>{var r=n("kkM+"),i=n("tLQN");e.exports=function(e){return i(e)&&"[object Set]"==r(e)}},"7/jS":(e,t,n)=>{var r=n("Dhk8"),i=n("t0L4"),o=n("tLQN"),s={};s["[object Float32Array]"]=s["[object Float64Array]"]=s["[object Int8Array]"]=s["[object Int16Array]"]=s["[object Int32Array]"]=s["[object Uint8Array]"]=s["[object Uint8ClampedArray]"]=s["[object Uint16Array]"]=s["[object Uint32Array]"]=!0,s["[object Arguments]"]=s["[object Array]"]=s["[object ArrayBuffer]"]=s["[object Boolean]"]=s["[object DataView]"]=s["[object Date]"]=s["[object Error]"]=s["[object Function]"]=s["[object Map]"]=s["[object Number]"]=s["[object Object]"]=s["[object RegExp]"]=s["[object Set]"]=s["[object String]"]=s["[object WeakMap]"]=!1,e.exports=function(e){return o(e)&&i(e.length)&&!!s[r(e)]}},S3pA:(e,t,n)=>{var r=n("7/we"),i=n("KAo/"),o=n("zWgn"),s=n("wxYD"),a=n("1EDM");e.exports=function(e){return"function"==typeof e?e:null==e?o:"object"==typeof e?s(e)?i(e[0],e[1]):r(e):a(e)}},"4uJK":(e,t,n)=>{var r=n("CbIe"),i=n("OtNC"),o=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return i(e);var t=[];for(var n in Object(e))o.call(e,n)&&"constructor"!=n&&t.push(n);return t}},p2lg:(e,t,n)=>{var r=n("tQYX"),i=n("CbIe"),o=n("/UTG"),s=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return o(e);var t=i(e),n=[];for(var a in e)("constructor"!=a||!t&&s.call(e,a))&&n.push(a);return n}},bFjY:(e,t,n)=>{var r=n("Q4oW"),i=n("9y2L");e.exports=function(e,t){var n=-1,o=i(e)?Array(e.length):[];return r(e,(function(e,r,i){o[++n]=t(e,r,i)})),o}},"7/we":(e,t,n)=>{var r=n("ZjRn"),i=n("hMsr"),o=n("0Ss3");e.exports=function(e){var t=i(e);return 1==t.length&&t[0][2]?o(t[0][0],t[0][1]):function(n){return n===e||r(n,e,t)}}},"KAo/":(e,t,n)=>{var r=n("NYSw"),i=n("2srY"),o=n("NW/2"),s=n("i7nn"),a=n("+tCn"),l=n("0Ss3"),u=n("Ypsa");e.exports=function(e,t){return s(e)&&a(t)?l(u(e),t):function(n){var s=i(n,e);return void 0===s&&s===t?o(n,e):r(t,s,3)}}},MzY2:(e,t,n)=>{var r=n("HsnV"),i=n("amiU"),o=n("UdtX"),s=n("cb1R"),a=n("tQYX"),l=n("zH+d"),u=n("LL3N");e.exports=function e(t,n,c,h,f){t!==n&&o(n,(function(o,l){if(f||(f=new r),a(o))s(t,n,l,c,e,h,f);else{var p=h?h(u(t,l),o,l+"",t,n,f):void 0;void 0===p&&(p=o),i(t,l,p)}}),l)}},cb1R:(e,t,n)=>{var r=n("amiU"),i=n("Grae"),o=n("6Rtw"),s=n("QT01"),a=n("sD1O"),l=n("bvyN"),u=n("wxYD"),c=n("Ndl3"),h=n("3ajY"),f=n("2q8g"),p=n("tQYX"),d=n("Kkar"),m=n("Qd2C"),g=n("LL3N"),y=n("4ScB");e.exports=function(e,t,n,v,b,x,w){var S=g(e,n),k=g(t,n),C=w.get(k);if(C)r(e,n,C);else{var E=x?x(S,k,n+"",e,t,w):void 0,O=void 0===E;if(O){var T=u(k),N=!T&&h(k),M=!T&&!N&&m(k);E=k,T||N||M?u(S)?E=S:c(S)?E=s(S):N?(O=!1,E=i(k,!0)):M?(O=!1,E=o(k,!0)):E=[]:d(k)||l(k)?(E=S,l(S)?E=y(S):p(S)&&!f(S)||(E=a(k))):O=!1}O&&(w.set(k,E),b(E,k,v,x,w),w.delete(k)),r(e,n,E)}}},eHpp:(e,t,n)=>{var r=n("H87J"),i=n("w2Tz"),o=n("S3pA"),s=n("bFjY"),a=n("4jPf"),l=n("SU8Q"),u=n("5WP5"),c=n("zWgn"),h=n("wxYD");e.exports=function(e,t,n){t=t.length?r(t,(function(e){return h(e)?function(t){return i(t,1===e.length?e[0]:e)}:e})):[c];var f=-1;t=r(t,l(o));var p=s(e,(function(e,n,i){return{criteria:r(t,(function(t){return t(e)})),index:++f,value:e}}));return a(p,(function(e,t){return u(e,t,n)}))}},QwI6:(e,t,n)=>{var r=n("O1Sc"),i=n("NW/2");e.exports=function(e,t){return r(e,t,(function(t,n){return i(e,n)}))}},O1Sc:(e,t,n)=>{var r=n("w2Tz"),i=n("y4bl"),o=n("xoyU");e.exports=function(e,t,n){for(var s=-1,a=t.length,l={};++s{e.exports=function(e){return function(t){return null==t?void 0:t[e]}}},CEyS:(e,t,n)=>{var r=n("w2Tz");e.exports=function(e){return function(t){return r(t,e)}}},R3TX:(e,t,n)=>{var r=n("zWgn"),i=n("UAs9"),o=n("7Pat");e.exports=function(e,t){return o(i(e,t,r),e+"")}},y4bl:(e,t,n)=>{var r=n("c72w"),i=n("xoyU"),o=n("pnw1"),s=n("tQYX"),a=n("Ypsa");e.exports=function(e,t,n,l){if(!s(e))return e;for(var u=-1,c=(t=i(t,e)).length,h=c-1,f=e;null!=f&&++u{var r=n("eN33"),i=n("Pz+s"),o=n("zWgn"),s=i?function(e,t){return i(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:o;e.exports=s},"0Ocv":e=>{e.exports=function(e,t,n){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),(n=n>i?i:n)<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var o=Array(i);++r{e.exports=function(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}},"2ZvR":e=>{e.exports=function(e,t){for(var n=-1,r=Array(e);++n{var r=n("Syyo"),i=n("H87J"),o=n("wxYD"),s=n("a88S"),a=r?r.prototype:void 0,l=a?a.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(o(t))return i(t,e)+"";if(s(t))return l?l.call(t):"";var n=t+"";return"0"==n&&1/t==-Infinity?"-0":n}},I1fX:(e,t,n)=>{var r=n("6XIJ"),i=/^\s+/;e.exports=function(e){return e?e.slice(0,r(e)+1).replace(i,""):e}},SU8Q:e=>{e.exports=function(e){return function(t){return e(t)}}},"s+R0":(e,t,n)=>{var r=n("JBn+"),i=n("OfKG"),o=n("sCL+"),s=n("S0iI"),a=n("9TP6"),l=n("XlL0");e.exports=function(e,t,n){var u=-1,c=i,h=e.length,f=!0,p=[],d=p;if(n)f=!1,c=o;else if(h>=200){var m=t?null:a(e);if(m)return l(m);f=!1,c=s,d=new r}else d=t?[]:p;e:for(;++u{var r=n("xoyU"),i=n("p1C/"),o=n("SiwR"),s=n("Ypsa");e.exports=function(e,t){return t=r(t,e),null==(e=o(e,t))||delete e[s(i(t))]}},S0iI:e=>{e.exports=function(e,t){return e.has(t)}},VZDm:(e,t,n)=>{var r=n("Ndl3");e.exports=function(e){return r(e)?e:[]}},xoyU:(e,t,n)=>{var r=n("wxYD"),i=n("i7nn"),o=n("SoOq"),s=n("dw5g");e.exports=function(e,t){return r(e)?e:i(e,t)?[e]:o(s(e))}},EAGB:(e,t,n)=>{var r=n("mGzy");e.exports=function(e){var t=new e.constructor(e.byteLength);return new r(t).set(new r(e)),t}},Grae:(e,t,n)=>{e=n.nmd(e);var r=n("IBsm"),i=t&&!t.nodeType&&t,o=i&&e&&!e.nodeType&&e,s=o&&o.exports===i?r.Buffer:void 0,a=s?s.allocUnsafe:void 0;e.exports=function(e,t){if(t)return e.slice();var n=e.length,r=a?a(n):new e.constructor(n);return e.copy(r),r}},lN3w:(e,t,n)=>{var r=n("EAGB");e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}},Bstx:e=>{var t=/\w*$/;e.exports=function(e){var n=new e.constructor(e.source,t.exec(e));return n.lastIndex=e.lastIndex,n}},bVbG:(e,t,n)=>{var r=n("Syyo"),i=r?r.prototype:void 0,o=i?i.valueOf:void 0;e.exports=function(e){return o?Object(o.call(e)):{}}},"6Rtw":(e,t,n)=>{var r=n("EAGB");e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}},"dnX/":(e,t,n)=>{var r=n("a88S");e.exports=function(e,t){if(e!==t){var n=void 0!==e,i=null===e,o=e==e,s=r(e),a=void 0!==t,l=null===t,u=t==t,c=r(t);if(!l&&!c&&!s&&e>t||s&&a&&u&&!l&&!c||i&&a&&u||!n&&u||!o)return 1;if(!i&&!s&&!c&&e{var r=n("dnX/");e.exports=function(e,t,n){for(var i=-1,o=e.criteria,s=t.criteria,a=o.length,l=n.length;++i=l?u:u*("desc"==n[i]?-1:1)}return e.index-t.index}},QT01:e=>{e.exports=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n{var r=n("c72w"),i=n("wC3K");e.exports=function(e,t,n,o){var s=!n;n||(n={});for(var a=-1,l=t.length;++a{var r=n("LtXa"),i=n("70Le");e.exports=function(e,t){return r(e,i(e),t)}},BjSP:(e,t,n)=>{var r=n("LtXa"),i=n("Xidw");e.exports=function(e,t){return r(e,i(e),t)}},"3KBa":(e,t,n)=>{var r=n("IBsm")["__core-js_shared__"];e.exports=r},wpQC:(e,t,n)=>{var r=n("R3TX"),i=n("R5u7");e.exports=function(e){return r((function(t,n){var r=-1,o=n.length,s=o>1?n[o-1]:void 0,a=o>2?n[2]:void 0;for(s=e.length>3&&"function"==typeof s?(o--,s):void 0,a&&i(n[0],n[1],a)&&(s=o<3?void 0:s,o=1),t=Object(t);++r{var r=n("9y2L");e.exports=function(e,t){return function(n,i){if(null==n)return n;if(!r(n))return e(n,i);for(var o=n.length,s=t?o:-1,a=Object(n);(t?s--:++s{e.exports=function(e){return function(t,n,r){for(var i=-1,o=Object(t),s=r(t),a=s.length;a--;){var l=s[e?a:++i];if(!1===n(o[l],l,o))break}return t}}},"1aYn":(e,t,n)=>{var r=n("S3pA"),i=n("9y2L"),o=n("BlJA");e.exports=function(e){return function(t,n,s){var a=Object(t);if(!i(t)){var l=r(n,3);t=o(t),n=function(e){return l(a[e],e,a)}}var u=e(t,n,s);return u>-1?a[l?t[u]:u]:void 0}}},"3L66":(e,t,n)=>{var r=n("0Knj");e.exports=function(e,t){return function(n,i){return r(n,e,t(i),{})}}},"9TP6":(e,t,n)=>{var r=n("OBn4"),i=n("nnm9"),o=n("XlL0"),s=r&&1/o(new r([,-0]))[1]==1/0?function(e){return new r(e)}:i;e.exports=s},T5i4:(e,t,n)=>{var r=n("MzY2"),i=n("tQYX");e.exports=function e(t,n,o,s,a,l){return i(t)&&i(n)&&(l.set(n,t),r(t,n,void 0,e,l),l.delete(n)),t}},r9Vz:(e,t,n)=>{var r=n("Kkar");e.exports=function(e){return r(e)?void 0:e}},"Pz+s":(e,t,n)=>{var r=n("vxC8"),i=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();e.exports=i},"ZZ+W":(e,t,n)=>{var r=n("JBn+"),i=n("myUI"),o=n("S0iI");e.exports=function(e,t,n,s,a,l){var u=1&n,c=e.length,h=t.length;if(c!=h&&!(u&&h>c))return!1;var f=l.get(e),p=l.get(t);if(f&&p)return f==t&&p==e;var d=-1,m=!0,g=2&n?new r:void 0;for(l.set(e,t),l.set(t,e);++d{var r=n("Syyo"),i=n("mGzy"),o=n("pPzx"),s=n("ZZ+W"),a=n("aURW"),l=n("XlL0"),u=r?r.prototype:void 0,c=u?u.valueOf:void 0;e.exports=function(e,t,n,r,u,h,f){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!h(new i(e),new i(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return o(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var p=a;case"[object Set]":var d=1&r;if(p||(p=l),e.size!=t.size&&!d)return!1;var m=f.get(e);if(m)return m==t;r|=2,f.set(e,t);var g=s(p(e),p(t),r,u,h,f);return f.delete(e),g;case"[object Symbol]":if(c)return c.call(e)==c.call(t)}return!1}},yZHP:(e,t,n)=>{var r=n("tlBq"),i=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,o,s,a){var l=1&n,u=r(e),c=u.length;if(c!=r(t).length&&!l)return!1;for(var h=c;h--;){var f=u[h];if(!(l?f in t:i.call(t,f)))return!1}var p=a.get(e),d=a.get(t);if(p&&d)return p==t&&d==e;var m=!0;a.set(e,t),a.set(t,e);for(var g=l;++h{var r=n("1xil"),i=n("UAs9"),o=n("7Pat");e.exports=function(e){return o(i(e,void 0,r),e+"")}},e93E:(e,t,n)=>{var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;e.exports=r},tlBq:(e,t,n)=>{var r=n("pIod"),i=n("70Le"),o=n("BlJA");e.exports=function(e){return r(e,o,i)}},zF5n:(e,t,n)=>{var r=n("pIod"),i=n("Xidw"),o=n("zH+d");e.exports=function(e){return r(e,o,i)}},JNqh:(e,t,n)=>{var r=n("6UKJ");e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},hMsr:(e,t,n)=>{var r=n("+tCn"),i=n("BlJA");e.exports=function(e){for(var t=i(e),n=t.length;n--;){var o=t[n],s=e[o];t[n]=[o,s,r(s)]}return t}},vxC8:(e,t,n)=>{var r=n("5nKN"),i=n("4p/L");e.exports=function(e,t){var n=i(e,t);return r(n)?n:void 0}},"/wCD":(e,t,n)=>{var r=n("TAtK")(Object.getPrototypeOf,Object);e.exports=r},KCLV:(e,t,n)=>{var r=n("Syyo"),i=Object.prototype,o=i.hasOwnProperty,s=i.toString,a=r?r.toStringTag:void 0;e.exports=function(e){var t=o.call(e,a),n=e[a];try{e[a]=void 0;var r=!0}catch(e){}var i=s.call(e);return r&&(t?e[a]=n:delete e[a]),i}},"70Le":(e,t,n)=>{var r=n("W0vE"),i=n("X4R2"),o=Object.prototype.propertyIsEnumerable,s=Object.getOwnPropertySymbols,a=s?function(e){return null==e?[]:(e=Object(e),r(s(e),(function(t){return o.call(e,t)})))}:i;e.exports=a},Xidw:(e,t,n)=>{var r=n("y/9h"),i=n("/wCD"),o=n("70Le"),s=n("X4R2"),a=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)r(t,o(e)),e=i(e);return t}:s;e.exports=a},"kkM+":(e,t,n)=>{var r=n("QF3D"),i=n("qeCs"),o=n("IS0S"),s=n("OBn4"),a=n("4+Vk"),l=n("Dhk8"),u=n("c18h"),c="[object Map]",h="[object Promise]",f="[object Set]",p="[object WeakMap]",d="[object DataView]",m=u(r),g=u(i),y=u(o),v=u(s),b=u(a),x=l;(r&&x(new r(new ArrayBuffer(1)))!=d||i&&x(new i)!=c||o&&x(o.resolve())!=h||s&&x(new s)!=f||a&&x(new a)!=p)&&(x=function(e){var t=l(e),n="[object Object]"==t?e.constructor:void 0,r=n?u(n):"";if(r)switch(r){case m:return d;case g:return c;case y:return h;case v:return f;case b:return p}return t}),e.exports=x},"4p/L":e=>{e.exports=function(e,t){return null==e?void 0:e[t]}},"z+TE":(e,t,n)=>{var r=n("xoyU"),i=n("bvyN"),o=n("wxYD"),s=n("pnw1"),a=n("t0L4"),l=n("Ypsa");e.exports=function(e,t,n){for(var u=-1,c=(t=r(t,e)).length,h=!1;++u{var r=n("5pfJ");e.exports=function(){this.__data__=r?r(null):{},this.size=0}},VPai:e=>{e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},"+fUG":(e,t,n)=>{var r=n("5pfJ"),i=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return i.call(t,e)?t[e]:void 0}},QMz8:(e,t,n)=>{var r=n("5pfJ"),i=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:i.call(t,e)}},mUsV:(e,t,n)=>{var r=n("5pfJ");e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?"__lodash_hash_undefined__":t,this}},"3Qlq":e=>{var t=Object.prototype.hasOwnProperty;e.exports=function(e){var n=e.length,r=new e.constructor(n);return n&&"string"==typeof e[0]&&t.call(e,"index")&&(r.index=e.index,r.input=e.input),r}},"7No3":(e,t,n)=>{var r=n("EAGB"),i=n("lN3w"),o=n("Bstx"),s=n("bVbG"),a=n("6Rtw");e.exports=function(e,t,n){var l=e.constructor;switch(t){case"[object ArrayBuffer]":return r(e);case"[object Boolean]":case"[object Date]":return new l(+e);case"[object DataView]":return i(e,n);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return a(e,n);case"[object Map]":case"[object Set]":return new l;case"[object Number]":case"[object String]":return new l(e);case"[object RegExp]":return o(e);case"[object Symbol]":return s(e)}}},sD1O:(e,t,n)=>{var r=n("vGGS"),i=n("/wCD"),o=n("CbIe");e.exports=function(e){return"function"!=typeof e.constructor||o(e)?{}:r(i(e))}},oCTG:(e,t,n)=>{var r=n("Syyo"),i=n("bvyN"),o=n("wxYD"),s=r?r.isConcatSpreadable:void 0;e.exports=function(e){return o(e)||i(e)||!!(s&&e&&e[s])}},pnw1:e=>{var t=/^(?:0|[1-9]\d*)$/;e.exports=function(e,n){var r=typeof e;return!!(n=null==n?9007199254740991:n)&&("number"==r||"symbol"!=r&&t.test(e))&&e>-1&&e%1==0&&e{var r=n("pPzx"),i=n("9y2L"),o=n("pnw1"),s=n("tQYX");e.exports=function(e,t,n){if(!s(n))return!1;var a=typeof t;return!!("number"==a?i(n)&&o(t,n.length):"string"==a&&t in n)&&r(n[t],e)}},i7nn:(e,t,n)=>{var r=n("wxYD"),i=n("a88S"),o=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,s=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!i(e))||(s.test(e)||!o.test(e)||null!=t&&e in Object(t))}},"6UKJ":e=>{e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},"9vbJ":(e,t,n)=>{var r,i=n("3KBa"),o=(r=/[^.]+$/.exec(i&&i.keys&&i.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";e.exports=function(e){return!!o&&o in e}},CbIe:e=>{var t=Object.prototype;e.exports=function(e){var n=e&&e.constructor;return e===("function"==typeof n&&n.prototype||t)}},"+tCn":(e,t,n)=>{var r=n("tQYX");e.exports=function(e){return e==e&&!r(e)}},"8Zrg":e=>{e.exports=function(){this.__data__=[],this.size=0}},kwr2:(e,t,n)=>{var r=n("6QIk"),i=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0)&&(n==t.length-1?t.pop():i.call(t,n,1),--this.size,!0)}},"5VYK":(e,t,n)=>{var r=n("6QIk");e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},"Coc+":(e,t,n)=>{var r=n("6QIk");e.exports=function(e){return r(this.__data__,e)>-1}},LzM7:(e,t,n)=>{var r=n("6QIk");e.exports=function(e,t){var n=this.__data__,i=r(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this}},m5o6:(e,t,n)=>{var r=n("Tv3l"),i=n("+ooz"),o=n("qeCs");e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(o||i),string:new r}}},d0UJ:(e,t,n)=>{var r=n("JNqh");e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},eask:(e,t,n)=>{var r=n("JNqh");e.exports=function(e){return r(this,e).get(e)}},"9SKQ":(e,t,n)=>{var r=n("JNqh");e.exports=function(e){return r(this,e).has(e)}},e63W:(e,t,n)=>{var r=n("JNqh");e.exports=function(e,t){var n=r(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this}},aURW:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}},"0Ss3":e=>{e.exports=function(e,t){return function(n){return null!=n&&(n[e]===t&&(void 0!==t||e in Object(n)))}}},"0+aC":(e,t,n)=>{var r=n("pFSi");e.exports=function(e){var t=r(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}},"5pfJ":(e,t,n)=>{var r=n("vxC8")(Object,"create");e.exports=r},OtNC:(e,t,n)=>{var r=n("TAtK")(Object.keys,Object);e.exports=r},"/UTG":e=>{e.exports=function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}},T6vp:(e,t,n)=>{e=n.nmd(e);var r=n("e93E"),i=t&&!t.nodeType&&t,o=i&&e&&!e.nodeType&&e,s=o&&o.exports===i&&r.process,a=function(){try{var e=o&&o.require&&o.require("util").types;return e||s&&s.binding&&s.binding("util")}catch(e){}}();e.exports=a},kHoZ:e=>{var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},TAtK:e=>{e.exports=function(e,t){return function(n){return e(t(n))}}},UAs9:(e,t,n)=>{var r=n("zaNA"),i=Math.max;e.exports=function(e,t,n){return t=i(void 0===t?e.length-1:t,0),function(){for(var o=arguments,s=-1,a=i(o.length-t,0),l=Array(a);++s{var r=n("w2Tz"),i=n("0Ocv");e.exports=function(e,t){return t.length<2?e:r(e,i(t,0,-1))}},IBsm:(e,t,n)=>{var r=n("e93E"),i="object"==typeof self&&self&&self.Object===Object&&self,o=r||i||Function("return this")();e.exports=o},LL3N:e=>{e.exports=function(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}},qjF7:e=>{e.exports=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}},cEmw:e=>{e.exports=function(e){return this.__data__.has(e)}},XlL0:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}},"7Pat":(e,t,n)=>{var r=n("+7q0"),i=n("kG2z")(r);e.exports=i},kG2z:e=>{var t=Date.now;e.exports=function(e){var n=0,r=0;return function(){var i=t(),o=16-(i-r);if(r=i,o>0){if(++n>=800)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}},RNlM:(e,t,n)=>{var r=n("+ooz");e.exports=function(){this.__data__=new r,this.size=0}},E4ao:e=>{e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},BSqe:e=>{e.exports=function(e){return this.__data__.get(e)}},L6um:e=>{e.exports=function(e){return this.__data__.has(e)}},"4/ik":(e,t,n)=>{var r=n("+ooz"),i=n("qeCs"),o=n("hyzI");e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var s=n.__data__;if(!i||s.length<199)return s.push([e,t]),this.size=++n.size,this;n=this.__data__=new o(s)}return n.set(e,t),this.size=n.size,this}},n1QJ:e=>{e.exports=function(e,t,n){for(var r=n-1,i=e.length;++r{var r=n("0+aC"),i=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,o=/\\(\\)?/g,s=r((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(i,(function(e,n,r,i){t.push(r?i.replace(o,"$1"):n||e)})),t}));e.exports=s},Ypsa:(e,t,n)=>{var r=n("a88S");e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-Infinity?"-0":t}},c18h:e=>{var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(e){}try{return e+""}catch(e){}}return""}},"6XIJ":e=>{var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},zr3P:(e,t,n)=>{var r=n("kn3Q");e.exports=function(e){return r(e,4)}},c2re:(e,t,n)=>{var r=n("kn3Q");e.exports=function(e){return r(e,5)}},eN33:e=>{e.exports=function(e){return function(){return e}}},ySZr:(e,t,n)=>{var r=n("zaNA"),i=n("R3TX"),o=n("T5i4"),s=n("PuIx"),a=i((function(e){return e.push(void 0,o),r(s,void 0,e)}));e.exports=a},lKOy:(e,t,n)=>{var r=n("X+YX"),i=n("YpBQ"),o=n("R3TX"),s=n("Ndl3"),a=o((function(e,t){return s(e)?r(e,i(t,1,s,!0)):[]}));e.exports=a},pPzx:e=>{e.exports=function(e,t){return e===t||e!=e&&t!=t}},"tvc/":(e,t,n)=>{var r=n("dw5g"),i=/[\\^$.*+?()[\]{}|]/g,o=RegExp(i.source);e.exports=function(e){return(e=r(e))&&o.test(e)?e.replace(i,"\\$&"):e}},"6R5o":(e,t,n)=>{var r=n("1aYn")(n("FllU"));e.exports=r},FllU:(e,t,n)=>{var r=n("DuXo"),i=n("S3pA"),o=n("m2YG"),s=Math.max;e.exports=function(e,t,n){var a=null==e?0:e.length;if(!a)return-1;var l=null==n?0:o(n);return l<0&&(l=s(a+l,0)),r(e,i(t,3),l)}},"1xil":(e,t,n)=>{var r=n("YpBQ");e.exports=function(e){return(null==e?0:e.length)?r(e,1):[]}},"2srY":(e,t,n)=>{var r=n("w2Tz");e.exports=function(e,t,n){var i=null==e?void 0:r(e,t);return void 0===i?n:i}},"NW/2":(e,t,n)=>{var r=n("JYmt"),i=n("z+TE");e.exports=function(e,t){return null!=e&&i(e,t,r)}},zWgn:e=>{e.exports=function(e){return e}},Nsha:(e,t,n)=>{var r=n("H87J"),i=n("1sLo"),o=n("R3TX"),s=n("VZDm"),a=o((function(e){var t=r(e,s);return t.length&&t[0]===e[0]?i(t):[]}));e.exports=a},Flgh:(e,t,n)=>{var r=n("eN33"),i=n("3L66"),o=n("zWgn"),s=Object.prototype.toString,a=i((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=s.call(t)),e[t]=n}),r(o));e.exports=a},bvyN:(e,t,n)=>{var r=n("/30y"),i=n("tLQN"),o=Object.prototype,s=o.hasOwnProperty,a=o.propertyIsEnumerable,l=r(function(){return arguments}())?r:function(e){return i(e)&&s.call(e,"callee")&&!a.call(e,"callee")};e.exports=l},wxYD:e=>{var t=Array.isArray;e.exports=t},"9y2L":(e,t,n)=>{var r=n("2q8g"),i=n("t0L4");e.exports=function(e){return null!=e&&i(e.length)&&!r(e)}},Ndl3:(e,t,n)=>{var r=n("9y2L"),i=n("tLQN");e.exports=function(e){return i(e)&&r(e)}},"3ajY":(e,t,n)=>{e=n.nmd(e);var r=n("IBsm"),i=n("DjCF"),o=t&&!t.nodeType&&t,s=o&&e&&!e.nodeType&&e,a=s&&s.exports===o?r.Buffer:void 0,l=(a?a.isBuffer:void 0)||i;e.exports=l},nnRT:(e,t,n)=>{var r=n("NYSw");e.exports=function(e,t){return r(e,t)}},FiEK:(e,t,n)=>{var r=n("IBsm").isFinite;e.exports=function(e){return"number"==typeof e&&r(e)}},"2q8g":(e,t,n)=>{var r=n("Dhk8"),i=n("tQYX");e.exports=function(e){if(!i(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},t0L4:e=>{e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},NbvU:(e,t,n)=>{var r=n("gEWz"),i=n("SU8Q"),o=n("T6vp"),s=o&&o.isMap,a=s?i(s):r;e.exports=a},tQYX:e=>{e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},tLQN:e=>{e.exports=function(e){return null!=e&&"object"==typeof e}},Kkar:(e,t,n)=>{var r=n("Dhk8"),i=n("/wCD"),o=n("tLQN"),s=Function.prototype,a=Object.prototype,l=s.toString,u=a.hasOwnProperty,c=l.call(Object);e.exports=function(e){if(!o(e)||"[object Object]"!=r(e))return!1;var t=i(e);if(null===t)return!0;var n=u.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&l.call(n)==c}},"/iLo":(e,t,n)=>{var r=n("6I2w"),i=n("SU8Q"),o=n("T6vp"),s=o&&o.isSet,a=s?i(s):r;e.exports=a},nDih:(e,t,n)=>{var r=n("Dhk8"),i=n("wxYD"),o=n("tLQN");e.exports=function(e){return"string"==typeof e||!i(e)&&o(e)&&"[object String]"==r(e)}},a88S:(e,t,n)=>{var r=n("Dhk8"),i=n("tLQN");e.exports=function(e){return"symbol"==typeof e||i(e)&&"[object Symbol]"==r(e)}},Qd2C:(e,t,n)=>{var r=n("7/jS"),i=n("SU8Q"),o=n("T6vp"),s=o&&o.isTypedArray,a=s?i(s):r;e.exports=a},BlJA:(e,t,n)=>{var r=n("rmhs"),i=n("4uJK"),o=n("9y2L");e.exports=function(e){return o(e)?r(e):i(e)}},"zH+d":(e,t,n)=>{var r=n("rmhs"),i=n("p2lg"),o=n("9y2L");e.exports=function(e){return o(e)?r(e,!0):i(e)}},"p1C/":e=>{e.exports=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},mbB6:(e,t,n)=>{var r=n("H87J"),i=n("S3pA"),o=n("bFjY"),s=n("wxYD");e.exports=function(e,t){return(s(e)?r:o)(e,i(t,3))}},pFSi:(e,t,n)=>{var r=n("hyzI");function i(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var s=e.apply(this,r);return n.cache=o.set(i,s)||o,s};return n.cache=new(i.Cache||r),n}i.Cache=r,e.exports=i},PuIx:(e,t,n)=>{var r=n("MzY2"),i=n("wpQC")((function(e,t,n,i){r(e,t,n,i)}));e.exports=i},nnm9:e=>{e.exports=function(){}},uZih:(e,t,n)=>{var r=n("H87J"),i=n("kn3Q"),o=n("a49g"),s=n("xoyU"),a=n("LtXa"),l=n("r9Vz"),u=n("cH1A"),c=n("zF5n"),h=u((function(e,t){var n={};if(null==e)return n;var u=!1;t=r(t,(function(t){return t=s(t,e),u||(u=t.length>1),t})),a(e,c(e),n),u&&(n=i(n,7,l));for(var h=t.length;h--;)o(n,t[h]);return n}));e.exports=h},"//nZ":(e,t,n)=>{var r=n("QwI6"),i=n("cH1A")((function(e,t){return null==e?{}:r(e,t)}));e.exports=i},"1EDM":(e,t,n)=>{var r=n("EI7Z"),i=n("CEyS"),o=n("i7nn"),s=n("Ypsa");e.exports=function(e){return o(e)?r(s(e)):i(e)}},u6DZ:(e,t,n)=>{var r=n("YpBQ"),i=n("eHpp"),o=n("R3TX"),s=n("R5u7"),a=o((function(e,t){if(null==e)return[];var n=t.length;return n>1&&s(e,t[0],t[1])?t=[]:n>2&&s(t[0],t[1],t[2])&&(t=[t[0]]),i(e,r(t,1),[])}));e.exports=a},X4R2:e=>{e.exports=function(){return[]}},DjCF:e=>{e.exports=function(){return!1}},fWyh:(e,t,n)=>{var r=n("nvU9"),i=1/0;e.exports=function(e){return e?(e=r(e))===i||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}},m2YG:(e,t,n)=>{var r=n("fWyh");e.exports=function(e){var t=r(e),n=t%1;return t==t?n?t-n:t:0}},nvU9:(e,t,n)=>{var r=n("I1fX"),i=n("tQYX"),o=n("a88S"),s=/^[-+]0x[0-9a-f]+$/i,a=/^0b[01]+$/i,l=/^0o[0-7]+$/i,u=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(o(e))return NaN;if(i(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=i(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=a.test(e);return n||l.test(e)?u(e.slice(2),n?2:8):s.test(e)?NaN:+e}},"4ScB":(e,t,n)=>{var r=n("LtXa"),i=n("zH+d");e.exports=function(e){return r(e,i(e))}},dw5g:(e,t,n)=>{var r=n("JcJ6");e.exports=function(e){return null==e?"":r(e)}},jLkM:(e,t,n)=>{var r=n("s+R0");e.exports=function(e){return e&&e.length?r(e):[]}},uUTq:(e,t,n)=>{var r=n("X+YX"),i=n("R3TX"),o=n("Ndl3"),s=i((function(e,t){return o(e)?r(e,t):[]}));e.exports=s},pBna:()=>{},emlf:(e,t,n)=>{"use strict";var r=n("YjNL");function i(){}function o(){}o.resetWarningCache=i,e.exports=function(){function e(e,t,n,i,o,s){if(s!==r){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:i};return n.PropTypes=n,n}},aWzz:(e,t,n)=>{e.exports=n("emlf")()},YjNL:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},"w/UT":(e,t,n)=>{"use strict";var r=n("ERkP"),i=n("jiMj");function o(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n