/* THIS IS A GENERATED/BUNDLED FILE BY ESBUILD if you want to view the source, please visit the github repository of this plugin (https://github.com/phibr0/obsidian-commander) */ var Ue=Object.defineProperty,Jn=Object.defineProperties,$n=Object.getOwnPropertyDescriptor,Xn=Object.getOwnPropertyDescriptors,Yn=Object.getOwnPropertyNames,je=Object.getOwnPropertySymbols;var xt=Object.prototype.hasOwnProperty,ao=Object.prototype.propertyIsEnumerable;var io=(o,e,t)=>e in o?Ue(o,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):o[e]=t,G=(o,e)=>{for(var t in e||(e={}))xt.call(e,t)&&io(o,t,e[t]);if(je)for(var t of je(e))ao.call(e,t)&&io(o,t,e[t]);return o},qe=(o,e)=>Jn(o,Xn(e));var Ze=(o,e)=>{var t={};for(var n in o)xt.call(o,n)&&e.indexOf(n)<0&&(t[n]=o[n]);if(o!=null&&je)for(var n of je(o))e.indexOf(n)<0&&ao.call(o,n)&&(t[n]=o[n]);return t};var Gn=(o,e)=>{for(var t in e)Ue(o,t,{get:e[t],enumerable:!0})},Kn=(o,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Yn(e))!xt.call(o,i)&&i!==t&&Ue(o,i,{get:()=>e[i],enumerable:!(n=$n(e,i))||n.enumerable});return o};var Qn=o=>Kn(Ue({},"__esModule",{value:!0}),o);var Qi={};Gn(Qi,{default:()=>Ct});module.exports=Qn(Qi);var Je=require("obsidian");var St=require("obsidian");var ro={};var so={"Open Commander Settings":"Otev\u0159\xEDt nastaven\xED Commandera","Open Macro Builder":"Otev\u0159\xEDt tv\u016Frce Maker","Change Icon":"Zm\u011Bnit ikonu",Rename:"P\u0159ejmenovat",Delete:"Smazat","Add command":"P\u0159idat p\u0159\xEDkaz","Add new":"P\u0159idat nov\xFD","This Command seems to have been removed. {{command_name}}":"Tento p\u0159\xEDkaz se zd\xE1 b\xFDt odstran\u011Bn. {{command_name}}","Choose a Command to add":"Vyberte p\u0159\xEDkaz k p\u0159id\xE1n\xED","to navigate":"pro navigaci","to choose an icon":"pro v\xFDb\u011Br ikony","to cancel":"pro zru\u0161en\xED","Use a custom name":"Pou\u017E\xEDt vlastn\xED jm\xE9no","Choose a custom Name for your new Command":"Vyberte vlastn\xED jm\xE9no pro v\xE1\u0161 nov\xFD p\u0159\xEDkaz","to save":"pro ulo\u017Een\xED","Choose a Icon for your new Command":"Vyberte ikonu pro v\xE1\u0161 nov\xFD p\u0159\xEDkaz","to choose a custom icon":"pro v\xFDb\u011Br vlastn\xED ikony","Remove Command":"Odstranit p\u0159\xEDkaz","Double click to rename":"Pro p\u0159ejmenov\xE1n\xED dvakr\xE1t klikn\u011Bte","This device":"Toto za\u0159\xEDzen\xED","Added by {{plugin_name}}.":"P\u0159id\xE1no pomoc\xED {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Varov\xE1n\xED: Tento p\u0159\xEDkaz je kontrolov\xE1n a nemus\xED fungovat ve v\u0161ech p\u0159\xEDpadech.","Move down":"P\u0159esunout dol\u016F","Move up":"P\u0159esunout nahoru","Change Mode (Currently: {{current_mode}})":"Zm\u011Bnit re\u017Eim (Nyn\xED: {{current_mode}})","Are you sure you want to delete the Command?":"Opravdu chcete smazat tento p\u0159\xEDkaz?","Remove and don't ask again":"Odstranit a u\u017E se neptat",Remove:"Odstranit",Cancel:"Zru\u0161it","Always ask before removing?":"V\u017Edy se pt\xE1t p\u0159ed odstran\u011Bn\xEDm?","Always show a Popup to confirm deletion of a Command.":"V\u017Edy zobrazovat vyskakovac\xED okno pro potvrzen\xED odstran\u011Bn\xED p\u0159\xEDkazu.",'Show "Add Command" Button':'Zobrazit tla\u010D\xEDtko "P\u0159idat p\u0159\xEDkaz"','Show the "Add Command" Button in every Menu. Requires restart.':'Zobrazit tla\u010D\xEDtko "P\u0159idat p\u0159\xEDkaz" ve v\u0161ech nab\xEDdk\xE1ch. Vy\u017Eaduje restart.',"Please restart Obsidian for these changes to take effect.":"Pros\xEDm restartujte Obsidian, aby se zm\u011Bny projevily.","Enable debugging":"Povolit lad\u011Bn\xED","Enable console output.":"Povolit v\xFDstup do konzole.",General:"Obecn\xE9","Editor Menu":"Kontextov\xE1 nab\xEDdka v editoru","File Menu":"Nab\xEDdka souboru","Left Ribbon":"Lev\xFD Ribbon","Right Ribbon":"Prav\xFD Ribbon",Titlebar:"Li\u0161ta aplikace",Statusbar:"Stavov\xE1 li\u0161ta","Page Header":"Hlavi\u010Dka str\xE1nky","Support development":"Podpo\u0159te v\xFDvoj","No commands here!":"Nejsou zde \u017E\xE1dn\xE9 p\u0159\xEDkazy!","Would you like to add one now?":"Chcete nyn\xED jeden p\u0159idat?","Hide Commands":"Skr\xFDt p\u0159\xEDkazy","Choose new":"Vyberte nov\xFD","Hide Commands of other Plugins":"Skr\xFDt p\u0159\xEDkazy jin\xFDch roz\u0161\xED\u0159en\xED",Icon:"Ikona",Name:"N\xE1zev","Custom Name":"Vlastn\xED n\xE1zev","Add command to all devices":"P\u0159idat p\u0159\xEDkaz na v\u0161echna za\u0159\xEDzen\xED","Add command only to mobile devices":"P\u0159idat p\u0159\xEDkaz pouze na mobiln\xED za\u0159\xEDzen\xED","Add command only to desktop devices":"P\u0159idat p\u0159\xEDkaz pouze na stoln\xED za\u0159\xEDzen\xED","Add command only to this device":"P\u0159idat p\u0159\xEDkaz pouze na toto za\u0159\xEDzen\xED",Done:"Hotovo","By Johnny\u2728 and phibr0":"Vytvo\u0159il Johnny\u2728 a phibr0","Leave feedback":"Zanechat zp\u011Btnou vazbu","Send feedback":"Zanechat zp\u011Btnou vazbu",Donate:"P\u0159isp\u011Bt","Share feedback, issues, and ideas with our feedback form.":"Sd\xEDlejte zp\u011Btnou vazbu, probl\xE9my a n\xE1pady pomoc\xED na\u0161eho formul\xE1\u0159e.","Consider donating to support development.":"Zva\u017Ete p\u0159\xEDsp\u011Bvek na podporu v\xFDvoje.",Save:"Ulo\u017Eit","This Command is not available on this device.":"Tento p\u0159\xEDkaz nen\xED dostupn\xFD na tomto za\u0159\xEDzen\xED.",Show:"Zobrazit",Hide:"Skr\xFDt","Hide other Commands":"Skr\xFDt ostatn\xED p\u0159\xEDkazy","Hide menu items":"Hide menu items",Add:"Add","Menu item name or /regex/":"Menu item name or /regex/","Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.":"Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.","Invalid regular expression \u2014 this entry is ignored.":"Invalid regular expression \u2014 this entry is ignored.","Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.":"Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.","Double click to enter custom value":"Dvakr\xE1t klikn\u011Bte pro zad\xE1n\xED vlastn\xED hodnoty","Restore default":"Restore default","Choose custom spacing for Command Buttons":"Vyberte vlastn\xED odsazen\xED pro tla\u010D\xEDtka p\u0159\xEDkaz\u016F","Change the spacing between commands. You can set different values on mobile and desktop.":"Zm\u011Bna odsazen\xED mezi p\u0159\xEDkazy. M\u016F\u017Eete nastavit r\u016Fzn\xE9 hodnoty na mobiln\xEDch a stoln\xEDch za\u0159\xEDzen\xEDch.",Warning:"Varov\xE1n\xED","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"Od verze Obsidian 0.16.0 je nutn\xE9 explicitn\u011B povolit z\xE1hlav\xED zobrazen\xED. Po povolen\xED je mo\u017En\xE9, \u017Ee budete muset restartovat Obsidian.","Open Appearance Settings":"Otev\u0159\xEDt nastaven\xED vzhledu",Explorer:"Pr\u016Fzkumn\xEDk"};var mo={};var co={"Open Commander Settings":"Commander Einstellungen \xF6ffnen","Open Macro Builder":"Makro Baukasten \xF6ffnen","Change Icon":"Symbol ver\xE4ndern",Rename:"Umbenennen",Delete:"L\xF6schen","Add command":"Befehl hinzuf\xFCgen","Add new":"Neuen Befehl hinzuf\xFCgen","This Command seems to have been removed. {{command_name}}":"Dieser Befehl wurde entfernt. {{command_name}}","Choose a Command to add":"W\xE4hle einen Befehl zum hinzuf\xFCgen","to navigate":"zum navigieren","to choose an icon":"um ein symbol auszuw\xE4hlen","to cancel":"zum abbrechen","Use a custom name":"Nutze einen benutzerdefinierten Namen","Choose a custom Name for your new Command":"W\xE4hle einen benutzerdefinierten Namen f\xFCr deinen neuen Befehl","to save":"zum speichern","Choose a Icon for your new Command":"W\xE4hle ein Symbol f\xFCr deinen neuen Befehl","to choose a custom icon":"um ein benutzerdefiniertes Symbol auszuw\xE4hlen","Remove Command":"Befehl entfernen","Double click to rename":"Zum umbenennen doppelklicken","This device":"Dieses Ger\xE4t","Added by {{plugin_name}}.":"Hinzugef\xFCgt von {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Warnung: Dieser Befehl wird nur unter bestimmten Vorraussetzungen ausgef\xFChrt.","Move down":"Nach unten","Move up":"Nach oben","Change Mode (Currently: {{current_mode}})":"Modus ver\xE4ndern (Momentan: {{current_mode}})","Are you sure you want to delete the Command?":"Bist du dir sicher, dass du diesen Befehl entfernen m\xF6chtest?","Remove and don't ask again":"Entfernen und Auswahl speichern",Remove:"Entfernen",Cancel:"Abbrechen","Always ask before removing?":"Immer fragen, bevor ein Befehl gel\xF6scht wird?","Always show a Popup to confirm deletion of a Command.":"Zeige immer ein Popup um L\xF6schen zu best\xE4tigen.",'Show "Add Command" Button':'Zeige "Befehl hinzuf\xFCgen" Knopf','Show the "Add Command" Button in every Menu. Requires restart.':'Zeige den "Befehl hinzuf\xFCgen" Knopf in jedem Men\xFC. Erfordert neustart.',"Please restart Obsidian for these changes to take effect.":"Bitte starte Obsidian neu, damit diese \xC4nderungen in Kraft treten.","Enable debugging":"Aktiviere debugging","Enable console output.":"Aktiviere Konsolen-Output (F\xFCr Entwickler)",General:"Allgemein","Editor Menu":"Editor-Men\xFC","File Menu":"Datei-Men\xFC","Left Ribbon":"Band","Right Ribbon":"Rechtes Band",Titlebar:"Titelleiste",Statusbar:"Statusleiste","Page Header":"Kopfzeile","Support development":"Entwicklung unterst\xFCtzen","No commands here!":"Keine Befehle da!","Would you like to add one now?":"M\xF6chtest du jetzt einen hinzuf\xFCgen?","Hide Commands":"Befehle verstecken","Choose new":"W\xE4hle neu","Hide Commands of other Plugins":"Hide Commands of other Plugins",Icon:"Symbol",Name:"Name","Custom Name":"Benutzerdefinierter Name","Add command to all devices":"F\xFCge Befehl allen Ger\xE4ten hinzu","Add command only to mobile devices":"F\xFCge Befehl nur Mobilen Ger\xE4ten hinzu","Add command only to desktop devices":"F\xFCge Befehl nur Desktop Ger\xE4ten hinzu","Add command only to this device":"F\xFCge Befehl nur diesem Ger\xE4t hinzu",Done:"Fertig","By Johnny\u2728 and phibr0":"Von Johnny\u2728 und phibr0","Leave feedback":"Feedback geben","Send feedback":"Feedback geben",Donate:"Spenden","Share feedback, issues, and ideas with our feedback form.":"Teile Feedback, Probleme und Ideen mit unserem Feedback Formular!","Consider donating to support development.":"Spende um die Entwicklung zu unterst\xFCtzen.",Save:"Speichern","This Command is not available on this device.":"Dieser Befehl ist auf diesem Ger\xE4t nicht verf\xFCgbar.",Show:"Anzeigen",Hide:"Verstecken","Hide other Commands":"Andere Befehle verstecken","Hide menu items":"Hide menu items",Add:"Add","Menu item name or /regex/":"Menu item name or /regex/","Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.":"Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.","Invalid regular expression \u2014 this entry is ignored.":"Invalid regular expression \u2014 this entry is ignored.","Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.":"Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.","Double click to enter custom value":"Doppelklicken um eigenen Wert einzutragen","Restore default":"Restore default","Choose custom spacing for Command Buttons":"W\xE4hle den Abstand zwischen Befehlen","Change the spacing between commands. You can set different values on mobile and desktop.":"Ver\xE4ndert den Abstand zwischen Befehlen.",Warning:"Achtung","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":'Ab Obsidian Version 0.16.0 m\xFCssen Sie den "View Header" explizit aktivieren. Anschlie\xDFend muss Obsidian neugestartet werden.',"Open Appearance Settings":"\xD6ffne Darstellungs-Einstellungen",Explorer:"Explorer"};var Mt={"Open Commander Settings":"Open Commander Settings","Open Macro Builder":"Open Macro Builder","Change Icon":"Change Icon",Rename:"Rename",Delete:"Delete","Add command":"Add command","Add new":"Add new command","This Command seems to have been removed. {{command_name}}":"This Command seems to have been removed. {{command_name}}","Choose a Command to add":"Choose a Command to add","to navigate":"to navigate","to choose an icon":"to choose an icon","to cancel":"to cancel","Use a custom name":"Use a custom name","Choose a custom Name for your new Command":"Choose a custom Name for your new Command","to save":"to save","Choose a Icon for your new Command":"Choose a Icon for your new Command","to choose a custom icon":"to choose a custom icon","Remove Command":"Remove Command","Double click to rename":"Double click to rename","This device":"This device","Added by {{plugin_name}}.":"Added by {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Warning: This is a checked Command, meaning it might not run under every circumstance.","Move down":"Move down","Move up":"Move up","Change Mode (Currently: {{current_mode}})":"Change Mode (Currently: {{current_mode}})","Are you sure you want to delete the Command?":"Are you sure you want to delete the Command?","Remove and don't ask again":"Remove and don't ask again",Remove:"Remove",Cancel:"Cancel","Always ask before removing?":"Always ask before removing?","Always show a Popup to confirm deletion of a Command.":"Always show a Popup to confirm deletion of a Command.",'Show "Add Command" Button':'Show "Add Command" Button','Show the "Add Command" Button in every Menu. Requires restart.':'Show the "Add Command" Button in every Menu. Requires restart.',"Please restart Obsidian for these changes to take effect.":"Please restart Obsidian for these changes to take effect.","Enable debugging":"Enable debugging","Enable console output.":"Enable console output.",General:"General","Editor Menu":"Editor Menu","File Menu":"File Menu","Left Ribbon":"Ribbon","Right Ribbon":"Right Ribbon",Titlebar:"Titlebar",Statusbar:"Status Bar","Page Header":"Tab Bar","Support development":"Support development","No commands here!":"No commands here!","Would you like to add one now?":"Would you like to add one now?","Hide Commands":"Hide Commands","Choose new":"Choose new","Hide Commands of other Plugins":"Hide Commands of other Plugins",Icon:"Icon",Name:"Name","Custom Name":"Custom Name","Add command to all devices":"Add command to all devices","Add command only to mobile devices":"Add command only to mobile devices","Add command only to desktop devices":"Add command only to desktop devices","Add command only to this device":"Add command only to this device",Done:"Done","By Johnny\u2728 and phibr0":"By Johnny\u2728 and phibr0","Leave feedback":"Leave feedback","Send feedback":"Send feedback",Donate:"Donate","Share feedback, issues, and ideas with our feedback form.":"Share feedback, issues, and ideas with our feedback form.","Consider donating to support development.":"Consider donating to support development.",Save:"Save","This Command is not available on this device.":"This Command is not available on this device.",Show:"Show",Hide:"Hide","Hide other Commands":"Hide other Commands","Hide menu items":"Hide menu items",Add:"Add","Menu item name or /regex/":"Menu item name or /regex/","Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.":"Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.","Invalid regular expression \u2014 this entry is ignored.":"Invalid regular expression \u2014 this entry is ignored.","Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.":"Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.","Double click to enter custom value":"Double click to enter custom value","Restore default":"Restore default","Choose custom spacing for Command Buttons":"Choose custom spacing for Command Buttons","Change the spacing between commands. You can set different values on mobile and desktop.":"Change the spacing between commands.",Warning:"Warning","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"As of Obsidian 0.16.0 you need to explicitly enable the Tab Title Bar. Once enabled, you might need to restart Obsidian.","Open Appearance Settings":"Open Appearance Settings",Explorer:"Explorer"};var lo={};var uo={};var po={"Open Commander Settings":"Ouvrir les param\xE8tres de Commander","Open Macro Builder":"Ouvrir le constructeur de Macro","Change Icon":"Changer l'ic\xF4ne",Rename:"Renommer",Delete:"Supprimer","Add command":"Ajouter une commande","Add new":"Ajouter une nouvelle commande","This Command seems to have been removed. {{command_name}}":"Cette commande semble avoir \xE9t\xE9 supprim\xE9e. {{command_name}}","Choose a Command to add":"Choisissez une commande \xE0 ajouter","to navigate":"pour naviguer","to choose an icon":"pour choisir une ic\xF4ne","to cancel":"pour annuler","Use a custom name":"Utiliser un nom personnalis\xE9","Choose a custom Name for your new Command":"Choisissez un nom personnalis\xE9 pour votre nouvelle commande","to save":"pour enregistrer","Choose a Icon for your new Command":"Choisissez une ic\xF4ne pour votre nouvelle commande","to choose a custom icon":"pour choisir une ic\xF4ne personnalis\xE9e","Remove Command":"Supprimer la commande","Double click to rename":"Double-cliquez pour renommer","This device":"Cet appareil","Added by {{plugin_name}}.":"Ajout\xE9 par {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Attention : Cette commande est coch\xE9e, ce qui signifie qu'elle pourrait ne pas fonctionner dans toutes les situations.","Move down":"Descendre","Move up":"Monter","Change Mode (Currently: {{current_mode}})":"Changer de mode (Actuellement : {{current_mode}})","Are you sure you want to delete the Command?":"\xCAtes-vous s\xFBr de vouloir supprimer la commande ?","Remove and don't ask again":"Supprimer et ne plus demander",Remove:"Supprimer",Cancel:"Annuler","Always ask before removing?":"Toujours demander avant de supprimer ?","Always show a Popup to confirm deletion of a Command.":"Toujours afficher une fen\xEAtre contextuelle pour confirmer la suppression d'une commande.",'Show "Add Command" Button':'Afficher le bouton "Ajouter une commande"','Show the "Add Command" Button in every Menu. Requires restart.':'Afficher le bouton "Ajouter une commande" dans chaque menu. N\xE9cessite un red\xE9marrage.',"Please restart Obsidian for these changes to take effect.":"Veuillez red\xE9marrer Obsidian pour que ces modifications prennent effet.","Enable debugging":"Activer le d\xE9bogage","Enable console output.":"Activer la sortie console.",General:"G\xE9n\xE9ral","Editor Menu":"Menu \xE9diteur","File Menu":"Menu fichier","Left Ribbon":"Ruban gauche","Right Ribbon":"Ruban droit",Titlebar:"Barre de titre",Statusbar:"Barre d'\xE9tat","Page Header":"En-t\xEAte de page","Support development":"Soutenir le d\xE9veloppement","No commands here!":"Aucune commande ici !","Would you like to add one now?":"Voulez-vous en ajouter une maintenant ?","Hide Commands":"Masquer les commandes","Choose new":"Choisir nouveau","Hide Commands of other Plugins":"Masquer les commandes d'autres plugins",Icon:"Ic\xF4ne",Name:"Nom","Custom Name":"Nom personnalis\xE9","Add command to all devices":"Ajouter la commande \xE0 tous les appareils","Add command only to mobile devices":"Ajouter la commande uniquement sur les appareils mobiles","Add command only to desktop devices":"Ajouter la commande uniquement sur les ordinateurs de bureau","Add command only to this device":"Ajouter la commande uniquement sur cet appareil",Done:"Termin\xE9","By Johnny\u2728 and phibr0":"Par Johnny\u2728 et phibr0","Leave feedback":"Laisser un commentaire","Send feedback":"Laisser un commentaire",Donate:"Faire un don","Share feedback, issues, and ideas with our feedback form.":"Partagez vos commentaires, probl\xE8mes et id\xE9es avec notre formulaire de retour d'information.","Consider donating to support development.":"Envisagez de faire un don pour soutenir le d\xE9veloppement.",Save:"Enregistrer","This Command is not available on this device.":"Cette commande n'est pas disponible sur cet appareil.",Show:"Afficher",Hide:"Masquer","Hide other Commands":"Masquer les autres commandes","Hide menu items":"Hide menu items",Add:"Add","Menu item name or /regex/":"Menu item name or /regex/","Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.":"Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.","Invalid regular expression \u2014 this entry is ignored.":"Invalid regular expression \u2014 this entry is ignored.","Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.":"Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.","Double click to enter custom value":"Double-cliquez pour entrer une valeur personnalis\xE9e","Restore default":"Restore default","Choose custom spacing for Command Buttons":"Choisissez un espacement personnalis\xE9 pour les boutons de commande","Change the spacing between commands. You can set different values on mobile and desktop.":"Modifier l'espacement entre les commandes.",Warning:"Avertissement","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"\xC0 partir d'Obsidian 0.16.0, vous devez activer explicitement la barre de titre des onglets. Une fois activ\xE9e, il se peut que vous deviez red\xE9marrer Obsidian.","Open Appearance Settings":"Ouvrir les param\xE8tres d'apparence",Explorer:"Explorateur"};var ho={};var fo={};var go={};var vo={};var bo={};var Co={"Open Commander Settings":"Open Commander Instellingen","Open Macro Builder":"Open Macro Bouwer","Change Icon":"Verander Icoon",Rename:"Hernoem",Delete:"Verwijder","Add command":"Voeg commando toe","Add new":"Voeg nieuw commando toe","This Command seems to have been removed. {{command_name}}":"Het lijkt er op dat dit commando is verwijderd. {{command_name}}","Choose a Command to add":"Kies een commando om toe te voegen","to navigate":"naar navigatie","to choose an icon":"naar kies een icoon","to cancel":"naar annuleren","Use a custom name":"Gebruik een aangepaste naam","Choose a custom Name for your new Command":"Kies een aangepaste naam voor je nieuwe commando","to save":"naar opslaan","Choose a Icon for your new Command":"Kies een icoon voor je nieuwe commando","to choose a custom icon":"to choose a custom icon","Remove Command":"Verwijder commando","Double click to rename":"Dubbel klik om te hernoemen","This device":"Dit apparaat","Added by {{plugin_name}}.":"Toegevoegd door {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"Waarschuwing: Dit is een aangevinkte opdracht, wat betekent dat deze mogelijk niet onder alle omstandigheden wordt uitgevoerd.","Move down":"Naar beneden","Move up":"Naar boven","Change Mode (Currently: {{current_mode}})":"Verander modus (Currently: {{current_mode}})","Are you sure you want to delete the Command?":"Weet je zeker dat je dit commando wilt verwijderen??","Remove and don't ask again":"Verwijder en vraag niet opnieuw",Remove:"Verwijder",Cancel:"Annuleer","Always ask before removing?":"Altijd vragen voor verwijderen?","Always show a Popup to confirm deletion of a Command.":"Laat altijd een venster zien om het verwijderen van een commando te bevestigen.",'Show "Add Command" Button':'Laat "Voeg Commando toe" knop zien','Show the "Add Command" Button in every Menu. Requires restart.':'Laat de "Voeg Commenado toe" knop zien in elk menu. Vereist herstart.',"Please restart Obsidian for these changes to take effect.":"Start Obsidian a.u.b. opnieuw op om deze wijzigingen toe te passen.","Enable debugging":"Activeer debugging","Enable console output.":"Activeer console output.",General:"Algemeen","Editor Menu":"Editor Menu","File Menu":"Bestand Menu","Left Ribbon":"Linkse Lint","Right Ribbon":"Rechtse Lint",Titlebar:"Titelbalk",Statusbar:"Statusbalk","Page Header":"Pagina Kop","Support development":"Steun ontwikkeling","No commands here!":"Geen commando's hier!","Would you like to add one now?":"Zou je er \xE9\xE9n willen toevoegen?","Hide Commands":"Verberg Commando's","Choose new":"Kies nieuw","Hide Commands of other Plugins":"Verberg Commando's van andere Plugins",Icon:"Icoon",Name:"Naam","Custom Name":"Aangepaste naam","Add command to all devices":"Voeg commando toe aan alle apparaten","Add command only to mobile devices":"Voeg commando toe aan alleen mobiele apparaten","Add command only to desktop devices":"Voeg commando toe aan alleen dekstop apparaten","Add command only to this device":"Voed commando toe aan alleen dit apparaat",Done:"Klaar","By Johnny\u2728 and phibr0":"Door Johnny\u2728 en phibr0","Leave feedback":"Laat feedback achter","Send feedback":"Laat feedback achter",Donate:"Doneer","Share feedback, issues, and ideas with our feedback form.":"Deel feedback, problemen en idee\xEBn met ons feedback formulier.","Consider donating to support development.":"Overweeg te doneren om ontwikkeling te steunen.",Save:"Opslaan","This Command is not available on this device.":"Dit Commando is niet beschikbaar op dit apparaat.",Show:"Laat zien",Hide:"Verberg","Hide other Commands":"Verberg andere Commando's","Hide menu items":"Hide menu items",Add:"Add","Menu item name or /regex/":"Menu item name or /regex/","Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.":"Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.","Invalid regular expression \u2014 this entry is ignored.":"Invalid regular expression \u2014 this entry is ignored.","Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.":"Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.","Double click to enter custom value":"Dubbel klik om een aangepaste waarde in te vullen","Restore default":"Restore default","Choose custom spacing for Command Buttons":"Kies aangepaste regelafstand voor Commando Knoppen","Change the spacing between commands. You can set different values on mobile and desktop.":"Verander regelafstand tussen Commando's. Dit kan verschillen tussen mobiel en dekstop.",Warning:"Waarschuwing","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"Sinds Obsidian 0.16.0 moet je de kop expliciet inschakelen. Wanneer ingeschakeld moet je mogelijk Obsidian herstarten.","Open Appearance Settings":"Open Weergave Instellingen",Explorer:"Verkenner"};var yo={};var wo={};var _o={};var ko={};var xo={};var Mo={"Open Commander Settings":'\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 "Commander"',"Open Macro Builder":"\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u043A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440 \u043C\u0430\u043A\u0440\u043E\u0441\u043E\u0432","Change Icon":"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0437\u043D\u0430\u0447\u043E\u043A",Rename:"\u041F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C",Delete:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C","Add command":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443","Add new":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043D\u043E\u0432\u0443\u044E \u043A\u043E\u043C\u0430\u043D\u0434\u0443","This Command seems to have been removed. {{command_name}}":"\u042D\u0442\u0430 \u043A\u043E\u043C\u0430\u043D\u0434\u0430, \u043A\u0430\u0436\u0435\u0442\u0441\u044F, \u0431\u044B\u043B\u0430 \u0443\u0434\u0430\u043B\u0435\u043D\u0430. {{command_name}}","Choose a Command to add":"\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u0434\u043B\u044F \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u044F","to navigate":"\u0434\u043B\u044F \u043D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438","to choose an icon":"\u0432\u044B\u0431\u0440\u0430\u0442\u044C \u0437\u043D\u0430\u0447\u043E\u043A","to cancel":"\u043E\u0442\u043C\u0435\u043D\u0438\u0442\u044C","Use a custom name":"\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0441\u043E\u0431\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0435 \u0438\u043C\u044F","Choose a custom Name for your new Command":"\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u043E\u0435 \u0438\u043C\u044F \u0434\u043B\u044F \u0432\u0430\u0448\u0435\u0439 \u043D\u043E\u0432\u043E\u0439 \u043A\u043E\u043C\u0430\u043D\u0434\u044B","to save":"\u0441\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C","Choose a Icon for your new Command":"\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u043E\u043A \u0434\u043B\u044F \u0432\u0430\u0448\u0435\u0439 \u043D\u043E\u0432\u043E\u0439 \u043A\u043E\u043C\u0430\u043D\u0434\u044B","to choose a custom icon":"\u0432\u044B\u0431\u0440\u0430\u0442\u044C \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0439 \u0437\u043D\u0430\u0447\u043E\u043A","Remove Command":"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443","Double click to rename":"\u0414\u0432\u0430\u0436\u0434\u044B \u0449\u0435\u043B\u043A\u043D\u0438\u0442\u0435, \u0447\u0442\u043E\u0431\u044B \u043F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C","This device":"\u042D\u0442\u043E \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u043E","Added by {{plugin_name}}.":"\u0414\u043E\u0431\u0430\u0432\u043B\u0435\u043D \u043F\u043B\u0430\u0433\u0438\u043D\u043E\u043C {{plugin_name}}.","Warning: This is a checked Command, meaning it might not run under every circumstance.":"\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435: \u044D\u0442\u043E \u043F\u0440\u043E\u0432\u0435\u0440\u0435\u043D\u043D\u0430\u044F \u043A\u043E\u043C\u0430\u043D\u0434\u0430, \u0442\u043E \u0435\u0441\u0442\u044C \u043E\u043D\u0430 \u043C\u043E\u0436\u0435\u0442 \u043D\u0435 \u0432\u044B\u043F\u043E\u043B\u043D\u044F\u0442\u044C\u0441\u044F \u043F\u0440\u0438 \u043B\u044E\u0431\u044B\u0445 \u043E\u0431\u0441\u0442\u043E\u044F\u0442\u0435\u043B\u044C\u0441\u0442\u0432\u0430\u0445.","Move down":"\u0412\u043D\u0438\u0437","Move up":"\u0412\u0432\u0435\u0440\u0445","Change Mode (Currently: {{current_mode}})":"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0440\u0435\u0436\u0438\u043C (\u0421\u0435\u0439\u0447\u0430\u0441: {{current_mode}})","Are you sure you want to delete the Command?":"\u0412\u044B \u0443\u0432\u0435\u0440\u0435\u043D\u044B, \u0447\u0442\u043E \u0445\u043E\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443?","Remove and don't ask again":"\u0423\u0434\u0430\u043B\u0438\u0442\u0435 \u0438 \u0431\u043E\u043B\u044C\u0448\u0435 \u043D\u0435 \u0441\u043F\u0440\u0430\u0448\u0438\u0432\u0430\u0439\u0442\u0435",Remove:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C",Cancel:"\u041E\u0442\u043C\u0435\u043D\u0430","Always ask before removing?":"\u0412\u0441\u0435\u0433\u0434\u0430 \u0441\u043F\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044C \u043F\u0435\u0440\u0435\u0434 \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u0435\u043C?","Always show a Popup to confirm deletion of a Command.":"\u0412\u0441\u0435\u0433\u0434\u0430 \u043F\u043E\u043A\u0430\u0437\u044B\u0432\u0430\u0442\u044C \u0432\u0441\u043F\u043B\u044B\u0432\u0430\u044E\u0449\u0435\u0435 \u043E\u043A\u043D\u043E \u0434\u043B\u044F \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u044F \u043A\u043E\u043C\u0430\u043D\u0434\u044B.",'Show "Add Command" Button':"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u043A\u043D\u043E\u043F\u043A\u0443 \xAB\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443\xBB",'Show the "Add Command" Button in every Menu. Requires restart.':"\u041F\u043E\u043A\u0430\u0437\u044B\u0432\u0430\u0442\u044C \u043A\u043D\u043E\u043F\u043A\u0443 \xAB\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443\xBB \u0432 \u043A\u0430\u0436\u0434\u043E\u043C \u043C\u0435\u043D\u044E. \u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044F \u043F\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0430.","Please restart Obsidian for these changes to take effect.":"\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u0435\u0440\u0435\u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u0435 Obsidian, \u0447\u0442\u043E\u0431\u044B \u044D\u0442\u0438 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F \u0432\u0441\u0442\u0443\u043F\u0438\u043B\u0438 \u0432 \u0441\u0438\u043B\u0443.","Enable debugging":"\u0412\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u043E\u0442\u043B\u0430\u0434\u043A\u0443","Enable console output.":"\u0412\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0432\u044B\u0432\u043E\u0434 \u043A\u043E\u043D\u0441\u043E\u043B\u0438.",General:"\u041E\u0431\u0449\u0435\u0435","Editor Menu":"\u041C\u0435\u043D\u044E \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0430","File Menu":"\u041C\u0435\u043D\u044E \xAB\u0424\u0430\u0439\u043B\xBB","Left Ribbon":"\u041B\u0435\u0432\u0430\u044F \u041B\u0435\u043D\u0442\u0430","Right Ribbon":"\u041F\u0440\u0430\u0432\u0430\u044F \u041B\u0435\u043D\u0442\u0430",Titlebar:"\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A",Statusbar:"\u0421\u0442\u0430\u0442\u0443\u0441 \u0431\u0430\u0440","Page Header":"\u041F\u0430\u043D\u0435\u043B\u044C \u0432\u043A\u043B\u0430\u0434\u043E\u043A","Support development":"\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043E\u0442\u043A\u0438","No commands here!":"\u0417\u0434\u0435\u0441\u044C \u043D\u0435\u0442 \u043A\u043E\u043C\u0430\u043D\u0434!","Would you like to add one now?":"\u0425\u043E\u0442\u0438\u0442\u0435 \u0434\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0441\u0435\u0439\u0447\u0430\u0441?","Hide Commands":"\u0421\u043A\u0440\u044B\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u044B","Choose new":"\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u043D\u043E\u0432\u0443\u044E","Hide Commands of other Plugins":"\u0421\u043A\u0440\u044B\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u044B \u0434\u0440\u0443\u0433\u0438\u0445 \u043F\u043B\u0430\u0433\u0438\u043D\u043E\u0432",Icon:"\u0418\u043A\u043E\u043D\u043A\u0430",Name:"\u0418\u043C\u044F","Custom Name":"\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u043E\u0435 \u0438\u043C\u044F","Add command to all devices":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u043D\u0430 \u0432\u0441\u0435 \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0430","Add command only to mobile devices":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u0442\u043E\u043B\u044C\u043A\u043E \u0434\u043B\u044F \u043C\u043E\u0431\u0438\u043B\u044C\u043D\u044B\u0445 \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432","Add command only to desktop devices":'\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u0442\u043E\u043B\u044C\u043A\u043E \u0434\u043B\u044F "Desktop" \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432',"Add command only to this device":"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u0430\u043D\u0434\u0443 \u0442\u043E\u043B\u044C\u043A\u043E \u043D\u0430 \u044D\u0442\u043E \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u043E",Done:"\u0413\u043E\u0442\u043E\u0432\u043E","By Johnny\u2728 and phibr0":'\u0421\u0434\u0435\u043B\u0430\u043B\u0438: "Johnny\u2728" \u0438 "phibr0"',"Leave feedback":"\u041E\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u043E\u0442\u0437\u044B\u0432","Send feedback":"\u041E\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u043E\u0442\u0437\u044B\u0432",Donate:"\u041F\u043E\u0436\u0435\u0440\u0442\u0432\u043E\u0432\u0430\u0442\u044C","Share feedback, issues, and ideas with our feedback form.":"\u041F\u043E\u0434\u0435\u043B\u0438\u0442\u0435\u0441\u044C \u043E\u0442\u0437\u044B\u0432\u0430\u043C\u0438, \u043F\u0440\u043E\u0431\u043B\u0435\u043C\u0430\u043C\u0438 \u0438 \u0438\u0434\u0435\u044F\u043C\u0438 \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E \u043D\u0430\u0448\u0435\u0439 \u0444\u043E\u0440\u043C\u044B \u043E\u0431\u0440\u0430\u0442\u043D\u043E\u0439 \u0441\u0432\u044F\u0437\u0438.","Consider donating to support development.":"\u041F\u043E\u0434\u0443\u043C\u0430\u0439\u0442\u0435 \u043E \u043F\u043E\u0436\u0435\u0440\u0442\u0432\u043E\u0432\u0430\u043D\u0438\u0438 \u0434\u043B\u044F \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0438 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u044F.",Save:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C","This Command is not available on this device.":"This Command is not available on this device.",Show:"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C",Hide:"\u0421\u043F\u0440\u044F\u0442\u0430\u0442\u044C","Hide other Commands":"\u0421\u043F\u0440\u044F\u0442\u0430\u0442\u044C \u0434\u0440\u0443\u0433\u0438\u0435 \u043A\u043E\u043C\u0430\u043D\u0434\u044B","Hide menu items":"Hide menu items",Add:"Add","Menu item name or /regex/":"Menu item name or /regex/","Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.":"Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.","Invalid regular expression \u2014 this entry is ignored.":"Invalid regular expression \u2014 this entry is ignored.","Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.":"Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.","Double click to enter custom value":"\u0414\u0432\u0430\u0436\u0434\u044B \u0449\u0435\u043B\u043A\u043D\u0438\u0442\u0435, \u0447\u0442\u043E\u0431\u044B \u0432\u0432\u0435\u0441\u0442\u0438 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435","Restore default":"Restore default","Choose custom spacing for Command Buttons":"\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0439 \u0438\u043D\u0442\u0435\u0440\u0432\u0430\u043B \u043C\u0435\u0436\u0434\u0443 \u043A\u043E\u043C\u0430\u043D\u0434\u043D\u044B\u043C\u0438 \u043A\u043D\u043E\u043F\u043A\u0430\u043C\u0438","Change the spacing between commands. You can set different values on mobile and desktop.":"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u0435 \u0440\u0430\u0441\u0441\u0442\u043E\u044F\u043D\u0438\u0435 \u043C\u0435\u0436\u0434\u0443 \u043A\u043E\u043C\u0430\u043D\u0434\u0430\u043C\u0438.",Warning:"\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"\u041D\u0430\u0447\u0438\u043D\u0430\u044F \u0441 Obsidian 0.16.0 \u0432\u0430\u043C \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u044F\u0432\u043D\u043E \u0432\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443 \u0437\u0430\u0433\u043E\u043B\u043E\u0432\u043A\u0430 \u0432\u043A\u043B\u0430\u0434\u043A\u0438. \u041F\u043E\u0441\u043B\u0435 \u0432\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u044F \u0432\u0430\u043C \u043C\u043E\u0436\u0435\u0442 \u043F\u043E\u0442\u0440\u0435\u0431\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u043F\u0435\u0440\u0435\u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C Obsidian.","Open Appearance Settings":"\u041E\u0442\u043A\u0440\u043E\u0439\u0442\u0435 \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u0432\u043D\u0435\u0448\u043D\u0435\u0433\u043E \u0432\u0438\u0434\u0430",Explorer:"\u0424\u0430\u0439\u043B\u043E\u0432\u044B\u0439 \u043C\u0435\u043D\u0435\u0434\u0436\u0435\u0440"};var Eo={};var So={"Open Commander Settings":"\u6253\u5F00 Commander \u8BBE\u7F6E","Open Macro Builder":"\u6253\u5F00\u5B8F\u6307\u4EE4\u751F\u6210\u5668","Change Icon":"\u66F4\u6362\u56FE\u6807",Rename:"\u91CD\u547D\u540D",Delete:"\u5220\u9664","Add command":"\u6DFB\u52A0\u547D\u4EE4","Add new":"\u6DFB\u52A0\u65B0\u547D\u4EE4","This Command seems to have been removed. {{command_name}}":"\u8BE5\u547D\u4EE4\u4F3C\u4E4E\u5DF2\u88AB\u79FB\u9664\u3002{{command_name}}","Choose a Command to add":"\u9009\u62E9\u4E00\u4E2A\u547D\u4EE4\u5E76\u6DFB\u52A0","to navigate":"\u5BFC\u822A","to choose an icon":"\u9009\u4E2D\u4E00\u4E2A\u56FE\u6807","to cancel":"\u53D6\u6D88","Use a custom name":"\u4F7F\u7528\u4E00\u4E2A\u81EA\u5B9A\u4E49\u540D\u79F0","Choose a custom Name for your new Command":"\u4E3A\u4F60\u7684\u65B0\u547D\u4EE4\u9009\u62E9\u4E00\u4E2A\u81EA\u5B9A\u4E49\u540D\u79F0","to save":"\u4FDD\u5B58","Choose a Icon for your new Command":"\u4E3A\u4F60\u7684\u65B0\u547D\u4EE4\u9009\u62E9\u4E00\u4E2A\u56FE\u6807","to choose a custom icon":"\u9009\u62E9\u4E00\u4E2A\u81EA\u5B9A\u4E49\u56FE\u6807","Remove Command":"\u79FB\u9664\u547D\u4EE4","Double click to rename":"\u53CC\u51FB\u4EE5\u91CD\u547D\u540D","This device":"\u8BE5\u8BBE\u5907","Added by {{plugin_name}}.":"\u7531{{plugin_name}}\u6DFB\u52A0\u3002","Warning: This is a checked Command, meaning it might not run under every circumstance.":"\u8B66\u544A\uFF1A\u8FD9\u662F\u4E00\u4E2A\u53D7\u68C0\u7684\u547D\u4EE4\uFF0C\u8FD9\u610F\u5473\u7740\u5B83\u672A\u5FC5\u80FD\u5728\u6240\u6709\u73AF\u5883\u4E0B\u8FD0\u884C\u3002","Move down":"\u5411\u4E0B\u79FB\u52A8","Move up":"\u5411\u4E0A\u79FB\u52A8","Change Mode (Currently: {{current_mode}})":"\u5207\u6362\u6A21\u5F0F\uFF08\u5F53\u524D\uFF1A{{current_mode}}\uFF09","Are you sure you want to delete the Command?":"\u662F\u5426\u786E\u8BA4\u79FB\u9664\u8BE5\u547D\u4EE4\uFF1F","Remove and don't ask again":"\u79FB\u9664\u4E14\u4E0D\u8981\u518D\u8BE2\u95EE",Remove:"\u79FB\u9664",Cancel:"\u53D6\u6D88","Always ask before removing?":"\u5728\u79FB\u9664\u524D\u603B\u662F\u8BE2\u95EE\uFF1F","Always show a Popup to confirm deletion of a Command.":"\u5728\u786E\u8BA4\u79FB\u9664\u547D\u4EE4\u524D\u603B\u662F\u5F39\u7A97\u3002",'Show "Add Command" Button':"\u663E\u793A\u201C\u6DFB\u52A0\u547D\u4EE4\u201D\u6309\u94AE",'Show the "Add Command" Button in every Menu. Requires restart.':"\u5728\u6BCF\u4E2A\u83DC\u5355\u90FD\u5C55\u793A\u201C\u6DFB\u52A0\u547D\u4EE4\u201D\u6309\u94AE\u3002\u9700\u8981\u91CD\u542F\u3002","Please restart Obsidian for these changes to take effect.":"\u8BF7\u91CD\u542F Obsidian \u4EE5\u4F7F\u8FD9\u4E9B\u66F4\u6539\u751F\u6548\u3002","Enable debugging":"\u542F\u7528\u9664\u9519","Enable console output.":"\u542F\u7528\u63A7\u5236\u53F0\u8F93\u51FA\u3002",General:"\u901A\u7528","Editor Menu":"\u7F16\u8F91\u5668\u83DC\u5355","File Menu":"\u6587\u4EF6\u83DC\u5355","Left Ribbon":"\u5DE6\u4FA7\u8FB9\u680F","Right Ribbon":"\u53F3\u4FA7\u8FB9\u680F",Titlebar:"\u6807\u9898\u680F",Statusbar:"\u72B6\u6001\u680F","Page Header":"\u9875\u9996","Support development":"\u652F\u6301\u5F00\u53D1","No commands here!":"\u8FD9\u91CC\u6CA1\u6709\u547D\u4EE4\uFF01","Would you like to add one now?":"\u4F60\u73B0\u5728\u60F3\u8981\u52A0\u4E00\u4E2A\u5417\uFF1F","Hide Commands":"\u9690\u85CF\u547D\u4EE4","Choose new":"\u9009\u62E9\u65B0\u7684","Hide Commands of other Plugins":"\u9690\u85CF\u5176\u4ED6\u63D2\u4EF6\u7684\u547D\u4EE4",Icon:"\u56FE\u6807",Name:"\u540D\u79F0","Custom Name":"\u81EA\u5B9A\u4E49\u540D\u79F0","Add command to all devices":"\u5411\u6240\u6709\u8BBE\u5907\u6DFB\u52A0\u547D\u4EE4","Add command only to mobile devices":"\u53EA\u5411\u79FB\u52A8\u8BBE\u5907\u6DFB\u52A0\u547D\u4EE4","Add command only to desktop devices":"\u53EA\u5411\u684C\u9762\u8BBE\u5907\u6DFB\u52A0\u547D\u4EE4","Add command only to this device":"\u53EA\u5411\u5F53\u524D\u8BBE\u5907\u6DFB\u52A0\u547D\u4EE4",Done:"\u5B8C\u6210","By Johnny\u2728 and phibr0":"\u7531 Johnny\u2728 \u548C phibr0 \u5F00\u53D1","Leave feedback":"\u7559\u4E0B\u53CD\u9988","Send feedback":"\u7559\u4E0B\u53CD\u9988",Donate:"\u6350\u8D60","Share feedback, issues, and ideas with our feedback form.":"\u4EE5\u6211\u4EEC\u7684\u53CD\u9988\u8868\uFF0C\u5206\u4EAB\u53CD\u9988\u3001\u8BAE\u9898\u6216\u8005\u4F60\u7684\u60F3\u6CD5\u3002","Consider donating to support development.":"\u8003\u8651\u6350\u8D60\u4EE5\u652F\u6301\u5F00\u53D1\u3002",Save:"\u4FDD\u5B58","This Command is not available on this device.":"\u8FD9\u4E00\u547D\u4EE4\u5728\u5F53\u524D\u8BBE\u5907\u4E0D\u53EF\u7528\u3002",Show:"\u663E\u793A",Hide:"\u9690\u85CF","Hide other Commands":"\u9690\u85CF\u5176\u4F59\u547D\u4EE4","Hide menu items":"Hide menu items",Add:"Add","Menu item name or /regex/":"Menu item name or /regex/","Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.":"Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.","Invalid regular expression \u2014 this entry is ignored.":"Invalid regular expression \u2014 this entry is ignored.","Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.":"Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.","Double click to enter custom value":"\u53CC\u51FB\u4EE5\u6DFB\u52A0\u81EA\u5B9A\u4E49\u503C","Restore default":"Restore default","Choose custom spacing for Command Buttons":"\u4E3A\u547D\u4EE4\u6309\u94AE\u9009\u62E9\u81EA\u5B9A\u4E49\u95F4\u8DDD","Change the spacing between commands. You can set different values on mobile and desktop.":"\u6539\u53D8\u547D\u4EE4\u4E4B\u95F4\u7684\u95F4\u8DDD\u3002\u4F60\u53EF\u4EE5\u4E3A\u79FB\u52A8\u548C\u684C\u9762\u8BBE\u5907\u8BBE\u7F6E\u4E0D\u540C\u7684\u503C\u3002",Warning:"\u8B66\u544A","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"\u4ECE Obsidian 0.16.0 \u5F00\u59CB\uFF0C\u4F60\u9700\u8981\u663E\u5F0F\u542F\u7528\u6807\u7B7E\u9875\u6807\u9898\u680F\u3002\u542F\u7528\u540E\uFF0C\u9700\u8981\u91CD\u542F Obsidian \u624D\u80FD\u751F\u6548\u3002","Open Appearance Settings":"\u6253\u5F00\u5916\u89C2\u8BBE\u7F6E",Explorer:"\u6587\u4EF6\u7BA1\u7406\u5668"};var Io={"Open Commander Settings":"\u958B\u555F Commander \u8A2D\u5B9A","Open Macro Builder":"\u958B\u555F\u5DE8\u96C6\u5EFA\u7ACB\u5668","Change Icon":"\u8B8A\u66F4\u5716\u793A",Rename:"\u91CD\u65B0\u547D\u540D",Delete:"\u522A\u9664","Add command":"\u65B0\u589E\u547D\u4EE4","Add new":"\u65B0\u589E","This Command seems to have been removed. {{command_name}}":"\u6B64\u547D\u4EE4\u4F3C\u4E4E\u5DF2\u88AB\u79FB\u9664\u3002{{command_name}}","Choose a Command to add":"\u9078\u64C7\u8981\u65B0\u589E\u7684\u547D\u4EE4","to navigate":"\u5C0E\u89BD","to choose an icon":"\u9078\u64C7\u5716\u793A","to cancel":"\u53D6\u6D88","Use a custom name":"\u4F7F\u7528\u81EA\u8A02\u540D\u7A31","Choose a custom Name for your new Command":"\u70BA\u65B0\u547D\u4EE4\u9078\u64C7\u4E00\u500B\u81EA\u8A02\u540D\u7A31","to save":"\u5132\u5B58","Choose a Icon for your new Command":"\u70BA\u65B0\u547D\u4EE4\u9078\u64C7\u4E00\u500B\u5716\u793A","to choose a custom icon":"\u9078\u64C7\u81EA\u8A02\u5716\u793A","Remove Command":"\u79FB\u9664\u547D\u4EE4","Double click to rename":"\u9023\u6309\u5169\u4E0B\u4EE5\u91CD\u65B0\u547D\u540D","This device":"\u6B64\u88DD\u7F6E","Added by {{plugin_name}}.":"\u7531 {{plugin_name}} \u65B0\u589E\u3002","Warning: This is a checked Command, meaning it might not run under every circumstance.":"\u8B66\u544A\uFF1A\u6B64\u547D\u4EE4\u5305\u542B\u689D\u4EF6\u6AA2\u67E5\uFF0C\u4EE3\u8868\u5B83\u53EF\u80FD\u7121\u6CD5\u5728\u6240\u6709\u60C5\u6CC1\u4E0B\u57F7\u884C\u3002","Move down":"\u5411\u4E0B\u79FB\u52D5","Move up":"\u5411\u4E0A\u79FB\u52D5","Change Mode (Currently: {{current_mode}})":"\u5207\u63DB\u6A21\u5F0F\uFF08\u76EE\u524D\uFF1A{{current_mode}}\uFF09","Are you sure you want to delete the Command?":"\u78BA\u5B9A\u8981\u522A\u9664\u6B64\u547D\u4EE4\u55CE\uFF1F","Remove and don't ask again":"\u79FB\u9664\u4E14\u4E0D\u518D\u8A62\u554F",Remove:"\u79FB\u9664",Cancel:"\u53D6\u6D88","Always ask before removing?":"\u79FB\u9664\u524D\u4E00\u5F8B\u8A62\u554F\uFF1F","Always show a Popup to confirm deletion of a Command.":"\u522A\u9664\u547D\u4EE4\u6642\u4E00\u5F8B\u986F\u793A\u78BA\u8A8D\u5F48\u51FA\u8996\u7A97\u3002",'Show "Add Command" Button':"\u986F\u793A\u300C\u65B0\u589E\u547D\u4EE4\u300D\u6309\u9215",'Show the "Add Command" Button in every Menu. Requires restart.':"\u5728\u6BCF\u500B\u9078\u55AE\u4E2D\u986F\u793A\u300C\u65B0\u589E\u547D\u4EE4\u300D\u6309\u9215\u3002\u9700\u8981\u91CD\u65B0\u555F\u52D5\u3002","Please restart Obsidian for these changes to take effect.":"\u8ACB\u91CD\u65B0\u555F\u52D5 Obsidian \u4EE5\u4F7F\u9019\u4E9B\u8B8A\u66F4\u751F\u6548\u3002","Enable debugging":"\u555F\u7528\u9664\u932F","Enable console output.":"\u555F\u7528\u4E3B\u63A7\u53F0\u8F38\u51FA\u3002",General:"\u4E00\u822C","Editor Menu":"\u7DE8\u8F2F\u5668\u9078\u55AE","File Menu":"\u6A94\u6848\u9078\u55AE","Left Ribbon":"\u5DE6\u5074\u908A\u6B04","Right Ribbon":"\u53F3\u5074\u908A\u6B04",Titlebar:"\u6A19\u984C\u5217",Statusbar:"\u72C0\u614B\u5217","Page Header":"\u9801\u9996","Support development":"\u8D0A\u52A9\u958B\u767C","No commands here!":"\u9019\u88E1\u4EC0\u9EBC\u90FD\u6C92\u6709\uFF01","Would you like to add one now?":"\u8981\u589E\u52A0\u65B0\u7684\u547D\u4EE4\u55CE\uFF1F","Hide Commands":"\u96B1\u85CF\u547D\u4EE4","Choose new":"\u9078\u64C7\u65B0\u7684","Hide Commands of other Plugins":"\u96B1\u85CF\u5176\u4ED6\u5916\u639B\u7684\u547D\u4EE4",Icon:"\u5716\u793A",Name:"\u540D\u7A31","Custom Name":"\u81EA\u8A02\u540D\u7A31","Add command to all devices":"\u65B0\u589E\u547D\u4EE4\u81F3\u6240\u6709\u88DD\u7F6E","Add command only to mobile devices":"\u50C5\u65B0\u589E\u547D\u4EE4\u81F3\u884C\u52D5\u88DD\u7F6E","Add command only to desktop devices":"\u50C5\u65B0\u589E\u547D\u4EE4\u81F3\u684C\u9762\u88DD\u7F6E","Add command only to this device":"\u50C5\u65B0\u589E\u547D\u4EE4\u81F3\u6B64\u88DD\u7F6E",Done:"\u5B8C\u6210","By Johnny\u2728 and phibr0":"\u7531 Johnny\u2728 \u548C phibr0 \u958B\u767C","Leave feedback":"\u7559\u4E0B\u610F\u898B\u56DE\u994B","Send feedback":"\u7559\u4E0B\u610F\u898B\u56DE\u994B",Donate:"\u8D0A\u52A9","Share feedback, issues, and ideas with our feedback form.":"\u900F\u904E\u8868\u55AE\uFF0C\u5206\u4EAB\u610F\u898B\u3001\u554F\u984C\u6216\u60A8\u7684\u60F3\u6CD5\u3002","Consider donating to support development.":"\u5354\u52A9\u6211\u5011\u958B\u767C\uFF0C\u6B61\u8FCE\u8D0A\u52A9\uFF01",Save:"\u5132\u5B58","This Command is not available on this device.":"\u6B64\u547D\u4EE4\u5728\u6B64\u88DD\u7F6E\u4E0A\u7121\u6CD5\u4F7F\u7528\u3002",Show:"\u986F\u793A",Hide:"\u96B1\u85CF","Hide other Commands":"\u96B1\u85CF\u5176\u4ED6\u547D\u4EE4","Hide menu items":"Hide menu items",Add:"Add","Menu item name or /regex/":"Menu item name or /regex/","Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.":"Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied.","Invalid regular expression \u2014 this entry is ignored.":"Invalid regular expression \u2014 this entry is ignored.","Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.":"Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.","Double click to enter custom value":"\u9023\u6309\u5169\u4E0B\u4EE5\u8F38\u5165\u81EA\u8A02\u503C","Restore default":"Restore default","Choose custom spacing for Command Buttons":"\u9078\u64C7\u547D\u4EE4\u6309\u9215\u7684\u81EA\u8A02\u9593\u8DDD","Change the spacing between commands. You can set different values on mobile and desktop.":"\u8B8A\u66F4\u547D\u4EE4\u4E4B\u9593\u7684\u9593\u8DDD\u3002\u60A8\u53EF\u4EE5\u70BA\u884C\u52D5\u548C\u684C\u9762\u88DD\u7F6E\u8A2D\u5B9A\u4E0D\u540C\u7684\u503C\u3002",Warning:"\u8B66\u544A","As of Obsidian 0.16.0 you need to explicitly enable the View Header.":"\u81EA Obsidian 0.16.0 \u8D77\uFF0C\u60A8\u9700\u8981\u660E\u78BA\u555F\u7528\u300C\u6AA2\u8996\u6A19\u984C (View Header)\u300D\u3002","Open Appearance Settings":"\u958B\u555F\u5916\u89C0\u8A2D\u5B9A",Explorer:"\u6A94\u6848\u7E3D\u7BA1"};var ki={ar:ro,cs:so,da:mo,de:co,en:Mt,"en-gb":lo,es:uo,fr:po,hi:ho,id:fo,it:go,ja:vo,ko:bo,nl:Co,nn:yo,pl:wo,pt:_o,"pt-br":ko,ro:xo,ru:Mo,tr:Eo,"zh-cn":So,"zh-tw":Io},Et=ki[St.moment.locale()];function u(o){return Et||console.error("Error: dictionary locale not found",St.moment.locale()),Et&&Et[o]||Mt[o]}var ae=class extends Je.FuzzySuggestModal{constructor(e){super(e.app),this.plugin=e,this.commands=Object.values(e.app.commands.commands),this.setPlaceholder(u("Choose a Command to add")),this.setInstructions([{command:"\u2191\u2193",purpose:u("to navigate")},{command:"\u21B5",purpose:u("to choose an icon")},{command:"esc",purpose:u("to cancel")}])}async awaitSelection(){return this.open(),new Promise((e,t)=>{this.onChooseItem=n=>e(n),this.onClose=()=>window.setTimeout(()=>t(new Error("No Command selected")),0)})}renderSuggestion(e,t){if(t.addClass("mod-complex"),t.createDiv({cls:"suggestion-content"}).createDiv({cls:"suggestion-title"}).setText(e.item.name),e.item.icon){let i=t.createDiv({cls:"suggestion-aux"});(0,Je.setIcon)(i.createSpan({cls:"suggestion-flair"}),e.item.icon)}}getItems(){return this.commands}getItemText(e){return e.name}onChooseItem(e,t){}};var $e=require("obsidian"),ee={confirmDeletion:!0,showAddCommand:!1,debug:!1,editorMenu:[],fileMenu:[],leftRibbon:[],rightRibbon:[],titleBar:[],statusBar:[],pageHeader:[],macros:[],explorer:[],textToolbarCommands:[],hide:{statusbar:[],leftRibbon:[],editorMenuItems:[],fileMenuItems:[]},spacing:0,advancedToolbar:{rowHeight:48,rowCount:1,spacing:0,buttonWidth:48,columnLayout:!1,mappedIcons:[],tooltips:!1,heightOffset:0}},Po=(0,$e.requireApiVersion)("1.7.3")?(0,$e.getIconIds)():["activity","airplay","alarm-check","alarm-clock-off","alarm-clock","alarm-minus","alarm-plus","album","alert-circle","alert-octagon","alert-triangle","align-center-horizontal","align-center-vertical","align-center","align-end-horizontal","align-end-vertical","align-horizontal-distribute-center","align-horizontal-distribute-end","align-horizontal-distribute-start","align-horizontal-justify-center","align-horizontal-justify-end","align-horizontal-justify-start","align-horizontal-space-around","align-horizontal-space-between","align-justify","align-left","align-right","align-start-horizontal","align-start-vertical","align-vertical-distribute-center","align-vertical-distribute-end","align-vertical-distribute-start","align-vertical-justify-center","align-vertical-justify-end","align-vertical-justify-start","align-vertical-space-around","align-vertical-space-between","anchor","aperture","archive","arrow-big-down","arrow-big-left","arrow-big-right","arrow-big-up","arrow-down-circle","arrow-down-left","arrow-down-right","arrow-down","arrow-left-circle","arrow-left-right","arrow-left","arrow-right-circle","arrow-right","arrow-up-circle","arrow-up-left","arrow-up-right","arrow-up","asterisk","at-sign","award","axe","banknote","bar-chart-2","bar-chart","baseline","battery-charging","battery-full","battery-low","battery-medium","battery","beaker","bell-minus","bell-off","bell-plus","bell-ring","bell","bike","binary","bitcoin","bluetooth-connected","bluetooth-off","bluetooth-searching","bluetooth","bold","book-open","book","bookmark-minus","bookmark-plus","bookmark","bot","box-select","box","briefcase","brush","bug","building-2","building","bus","calculator","calendar","camera-off","camera","car","carrot","cast","check-circle-2","check-circle","check-square","check","chevron-down","chevron-first","chevron-last","chevron-left","chevron-right","chevron-up","chevrons-down-up","chevrons-down","chevrons-left","chevrons-right","chevrons-up-down","chevrons-up","chrome","circle-slashed","circle","clipboard-check","clipboard-copy","clipboard-list","clipboard-x","clipboard","clock-1","clock-10","clock-11","clock-12","clock-2","clock-3","clock-4","clock-5","clock-6","clock-7","clock-8","clock-9","lucide-clock","cloud-drizzle","cloud-fog","cloud-hail","cloud-lightning","cloud-moon","cloud-off","cloud-rain-wind","cloud-rain","cloud-snow","cloud-sun","lucide-cloud","cloudy","clover","code-2","code","codepen","codesandbox","coffee","coins","columns","command","compass","contact","contrast","cookie","copy","copyleft","copyright","corner-down-left","corner-down-right","corner-left-down","corner-left-up","corner-right-down","corner-right-up","corner-up-left","corner-up-right","cpu","credit-card","crop","lucide-cross","crosshair","crown","currency","database","delete","dice-1","dice-2","dice-3","dice-4","dice-5","dice-6","disc","divide-circle","divide-square","divide","dollar-sign","download-cloud","download","dribbble","droplet","droplets","drumstick","edit-2","edit-3","edit","egg","equal-not","equal","eraser","euro","expand","external-link","eye-off","eye","facebook","fast-forward","feather","figma","file-check-2","file-check","file-code","file-digit","file-input","file-minus-2","file-minus","file-output","file-plus-2","file-plus","file-search","file-text","file-x-2","file-x","file","files","film","filter","flag-off","flag-triangle-left","flag-triangle-right","flag","flame","flashlight-off","flashlight","flask-conical","flask-round","folder-minus","folder-open","folder-plus","lucide-folder","form-input","forward","frame","framer","frown","function-square","gamepad-2","gamepad","gauge","gavel","gem","ghost","gift","git-branch-plus","git-branch","git-commit","git-fork","git-merge","git-pull-request","github","gitlab","glasses","globe-2","globe","grab","graduation-cap","grid","grip-horizontal","grip-vertical","hammer","hand-metal","hand","hard-drive","hard-hat","hash","haze","headphones","heart","help-circle","hexagon","highlighter","history","home","image-minus","image-off","image-plus","image","import","inbox","indent","indian-rupee","infinity","lucide-info","inspect","instagram","italic","japanese-yen","key","keyboard","landmark","lucide-languages","laptop-2","laptop","lasso-select","lasso","layers","layout-dashboard","layout-grid","layout-list","layout-template","layout","library","life-buoy","lightbulb-off","lightbulb","link-2-off","link-2","lucide-link","linkedin","list-checks","list-minus","list-ordered","list-plus","list-x","list","loader-2","loader","locate-fixed","locate-off","locate","lock","log-in","log-out","mail","map-pin","map","maximize-2","maximize","megaphone","meh","menu","message-circle","message-square","mic-off","mic","minimize-2","minimize","minus-circle","minus-square","minus","monitor-off","monitor-speaker","monitor","moon","more-horizontal","more-vertical","mountain-snow","mountain","mouse-pointer-2","mouse-pointer-click","mouse-pointer","mouse","move-diagonal-2","move-diagonal","move-horizontal","move-vertical","move","music","navigation-2","navigation","network","octagon","option","outdent","package-check","package-minus","package-plus","package-search","package-x","package","palette","palmtree","paperclip","pause-circle","pause-octagon","pause","pen-tool","lucide-pencil","percent","person-standing","phone-call","phone-forwarded","phone-incoming","phone-missed","phone-off","phone-outgoing","phone","pie-chart","piggy-bank","lucide-pin","pipette","plane","play-circle","play","plug-zap","plus-circle","plus-square","plus","pocket","podcast","pointer","pound-sterling","power-off","power","printer","qr-code","quote","radio-receiver","radio","redo","refresh-ccw","refresh-cw","regex","repeat-1","repeat","reply-all","reply","rewind","rocket","rocking-chair","rotate-ccw","rotate-cw","rss","ruler","russian-ruble","save","scale","scan-line","scan","scissors","screen-share-off","screen-share","lucide-search","send","separator-horizontal","separator-vertical","server-crash","server-off","server","settings-2","settings","share-2","share","sheet","shield-alert","shield-check","shield-close","shield-off","shield","shirt","shopping-bag","shopping-cart","shovel","shrink","shuffle","sidebar-close","sidebar-open","sidebar","sigma","signal-high","signal-low","signal-medium","signal-zero","signal","skip-back","skip-forward","skull","slack","slash","sliders","smartphone-charging","smartphone","smile","snowflake","sort-asc","sort-desc","speaker","sprout","square","star-half","lucide-star","stop-circle","stretch-horizontal","stretch-vertical","strikethrough","subscript","sun","sunrise","sunset","superscript","swiss-franc","switch-camera","table","tablet","tag","target","tent","terminal-square","terminal","text-cursor-input","text-cursor","thermometer-snowflake","thermometer-sun","thermometer","thumbs-down","thumbs-up","ticket","timer-off","timer-reset","timer","toggle-left","toggle-right","tornado","trash-2","lucide-trash","trello","trending-down","trending-up","triangle","truck","tv-2","tv","twitch","twitter","type","umbrella","underline","undo","unlink-2","unlink","unlock","upload-cloud","upload","user-check","user-minus","user-plus","user-x","user","users","verified","vibrate","video-off","video","view","voicemail","volume-1","volume-2","volume-x","volume","wallet","wand","watch","waves","webcam","wifi-off","wifi","wind","wrap-text","wrench","x-circle","x-octagon","x-square","x","youtube","zap-off","zap","zoom-in","zoom-out","search-large"];var Xe=require("obsidian");var D=class extends Xe.FuzzySuggestModal{constructor(e){super(e.app),this.plugin=e,this.setPlaceholder(u("Choose a Icon for your new Command")),this.setInstructions([{command:"\u2191\u2193",purpose:u("to navigate")},{command:"\u21B5",purpose:u("to choose a custom icon")},{command:"esc",purpose:u("to cancel")}])}async awaitSelection(){return this.open(),new Promise((e,t)=>{this.onChooseItem=n=>e(n),this.onClose=()=>window.setTimeout(()=>t(new Error("No Icon selected")),0)})}renderSuggestion(e,t){t.addClass("mod-complex"),t.createDiv({cls:"suggestion-content"}).createDiv({cls:"suggestion-title"}).setText(e.item.replace("lucide-","").replace(/-/g," ").replace(/(^\w{1})|(\s+\w{1})/g,a=>a.toUpperCase()));let i=t.createDiv({cls:"suggestion-aux"});(0,Xe.setIcon)(i.createSpan({cls:"suggestion-flair"}),e.item)}getItems(){return Po}getItemText(e){return e}onChooseItem(e,t){}};var st=require("obsidian");var To=require("obsidian");var U=class extends To.SuggestModal{constructor(t,n){super(n.app);this.defaultName=t;this.plugin=n;this.setPlaceholder(u("Use a custom name")),this.resultContainerEl.addClass("cmdr-hide-suggestions"),this.setInstructions([{command:"",purpose:u("Choose a custom Name for your new Command")},{command:"\u21B5",purpose:u("to save")},{command:"esc",purpose:u("to cancel")}])}onOpen(){super.onOpen(),this.inputEl.value=this.defaultName;let t=this.inputEl.parentElement,n=createDiv({cls:"cmdr-name-input-wrapper"});t==null||t.insertBefore(n,this.inputEl);let i=n.createDiv({cls:"cmdr-name-input-field"});i.appendChild(this.inputEl);let a=t==null?void 0:t.querySelector(".search-input-clear-button");a&&i.appendChild(a),t==null||t.addClass("cmdr-name-input-wrapper-parent");let s=createEl("button",{text:u("Save"),cls:"mod-cta"});s.onclick=m=>this.selectSuggestion(this.inputEl.value,m),n.appendChild(s)}async awaitSelection(){return this.open(),new Promise((t,n)=>{this.onChooseSuggestion=i=>t(i),this.onClose=()=>window.setTimeout(()=>n(new Error("No Name selected")),0)})}getSuggestions(t){return[t]}renderSuggestion(t,n){}onChooseSuggestion(t,n){}};var et,w,Ho,xi,ke,Ao,Do,Ge={},Oo=[],Mi=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function re(o,e){for(var t in e)o[t]=e[t];return o}function Bo(o){var e=o.parentNode;e&&e.removeChild(o)}function r(o,e,t){var n,i,a,s={};for(a in e)a=="key"?n=e[a]:a=="ref"?i=e[a]:s[a]=e[a];if(arguments.length>2&&(s.children=arguments.length>3?et.call(arguments,2):t),typeof o=="function"&&o.defaultProps!=null)for(a in o.defaultProps)s[a]===void 0&&(s[a]=o.defaultProps[a]);return Ye(o,s,n,i,null)}function Ye(o,e,t,n,i){var a={type:o,props:e,key:t,ref:n,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:i==null?++Ho:i};return i==null&&w.vnode!=null&&w.vnode(a),a}function P(o){return o.children}function K(o,e){this.props=o,this.context=e}function xe(o,e){if(e==null)return o.__?xe(o.__,o.__.__k.indexOf(o)+1):null;for(var t;e0?Ye(f.type,f.props,f.key,f.ref?f.ref:null,f.__v):f)!=null){if(f.__=t,f.__b=t.__b+1,(C=_[d])===null||C&&f.key==C.key&&f.type===C.type)_[d]=void 0;else for(y=0;y=t.__.length&&t.__.push({__V:ot}),t.__[o]}function x(o){return it=1,en(tn,o)}function en(o,e,t){var n=at(Ee++,2);if(n.t=o,!n.__c&&(n.__=[t?t(e):tn(void 0,e),function(a){var s=n.__N?n.__N[0]:n.__[0],m=n.t(s,a);s!==m&&(n.__N=[m,n.__[1]],n.__c.setState({}))}],n.__c=O,!O.u)){O.u=!0;var i=O.shouldComponentUpdate;O.shouldComponentUpdate=function(a,s,m){if(!n.__c.__H)return!0;var c=n.__c.__H.__.filter(function(d){return d.__c});if(c.every(function(d){return!d.__N}))return!i||i.call(this,a,s,m);var h=!1;return c.forEach(function(d){if(d.__N){var y=d.__[0];d.__=d.__N,d.__N=void 0,y!==d.__[0]&&(h=!0)}}),!(!h&&n.__c.props===a)&&(!i||i.call(this,a,s,m))}}return n.__N||n.__}function B(o,e){var t=at(Ee++,3);!w.__s&&Nt(t.__H,e)&&(t.__=o,t.i=e,O.__H.__h.push(t))}function Lt(o,e){var t=at(Ee++,4);!w.__s&&Nt(t.__H,e)&&(t.__=o,t.i=e,O.__h.push(t))}function Q(o){return it=5,rt(function(){return{current:o}},[])}function rt(o,e){var t=at(Ee++,7);return Nt(t.__H,e)?(t.__V=o(),t.i=e,t.__h=o,t.__V):t.__}function Pi(){for(var o;o=Qo.shift();)if(o.__P&&o.__H)try{o.__H.__h.forEach(nt),o.__H.__h.forEach(At),o.__H.__h=[]}catch(e){o.__H.__h=[],w.__e(e,o.__v)}}w.__b=function(o){O=null,Jo&&Jo(o)},w.__r=function(o){$o&&$o(o),Ee=0;var e=(O=o.__c).__H;e&&(Tt===O?(e.__h=[],O.__h=[],e.__.forEach(function(t){t.__N&&(t.__=t.__N),t.__V=ot,t.__N=t.i=void 0})):(e.__h.forEach(nt),e.__h.forEach(At),e.__h=[])),Tt=O},w.diffed=function(o){Xo&&Xo(o);var e=o.__c;e&&e.__H&&(e.__H.__h.length&&(Qo.push(e)!==1&&Zo===w.requestAnimationFrame||((Zo=w.requestAnimationFrame)||Ti)(Pi)),e.__H.__.forEach(function(t){t.i&&(t.__H=t.i),t.__V!==ot&&(t.__=t.__V),t.i=void 0,t.__V=ot})),Tt=O=null},w.__c=function(o,e){e.some(function(t){try{t.__h.forEach(nt),t.__h=t.__h.filter(function(n){return!n.__||At(n)})}catch(n){e.some(function(i){i.__h&&(i.__h=[])}),e=[],w.__e(n,t.__v)}}),Yo&&Yo(o,e)},w.unmount=function(o){Go&&Go(o);var e,t=o.__c;t&&t.__H&&(t.__H.__.forEach(function(n){try{nt(n)}catch(i){e=i}}),t.__H=void 0,e&&w.__e(e,t.__v))};var Ko=typeof requestAnimationFrame=="function";function Ti(o){var e,t=function(){clearTimeout(n),Ko&&cancelAnimationFrame(e),setTimeout(o)},n=setTimeout(t,100);Ko&&(e=requestAnimationFrame(t))}function nt(o){var e=O,t=o.__c;typeof t=="function"&&(o.__c=void 0,t()),O=e}function At(o){var e=O;o.__c=o.__(),O=e}function Nt(o,e){return!o||o.length!==e.length||e.some(function(t,n){return t!==o[n]})}function tn(o,e){return typeof e=="function"?e(o):e}var Rt={};(function o(e,t,n,i){var a=!!(e.Worker&&e.Blob&&e.Promise&&e.OffscreenCanvas&&e.OffscreenCanvasRenderingContext2D&&e.HTMLCanvasElement&&e.HTMLCanvasElement.prototype.transferControlToOffscreen&&e.URL&&e.URL.createObjectURL);function s(){}function m(p){var l=t.exports.Promise,I=l!==void 0?l:e.Promise;return typeof I=="function"?new I(p):(p(s,s),null)}var c=(function(){var p=Math.floor(16.666666666666668),l,I,M={},L=0;return typeof requestAnimationFrame=="function"&&typeof cancelAnimationFrame=="function"?(l=function(T){var E=Math.random();return M[E]=requestAnimationFrame(function S(H){L===H||L+p-1{(0,st.setIcon)(a.current,o)},[o,e]),r("div",G({ref:a},t))}function Z(o,e){let{isMobile:t,appId:n}=e.app;return o==="any"||o===n||o==="mobile"&&t||o==="desktop"&&!t}function Se(o){var t,n;let e="";for(let i of(t=o.hide.leftRibbon)!=null?t:[])e+=`div.side-dock-ribbon-action[aria-label="${i}"] {display: none !important; content-visibility: hidden;}`;for(let i of o.hide.statusbar)e+=`div.status-bar-item.plugin-${i} {display: none !important; content-visibility: hidden;}`;(n=document.head.querySelector("style#cmdr"))==null||n.remove(),e&&document.head.appendChild(createEl("style",{attr:{id:"cmdr"},text:e,type:"text/css"}))}async function nn({target:o}){let e=createEl("canvas",{cls:"cmdr-confetti-canvas"});activeDocument.body.appendChild(e);let t=on.create(e,{resize:!0,useWorker:!0}),n=o.getBoundingClientRect();await t({particleCount:st.Platform.isDesktop?160:80,startVelocity:55,spread:75,angle:90,drift:-1,ticks:250,origin:{x:(n.x+n.width/2)/activeWindow.innerWidth,y:(n.y+n.height/2)/activeWindow.innerHeight}}),e.remove()}function dt(o){let{style:e,classList:t}=document.body;o>0?(e.setProperty("--cmdr-spacing",`${o}px`),t.add("cmdr-custom-spacing")):(e.removeProperty("--cmdr-spacing"),t.remove("cmdr-custom-spacing"))}function Ie(o){let e=Object.keys(o.app.commands.commands).filter(n=>n.startsWith("cmdr:macro-"));for(let n of e)o.app.commands.removeCommand(n);let t=o.settings.macros;for(let[n,i]of t.entries())o.addCommand({id:`macro-${n}`,name:i.name,icon:i.icon,callback:()=>{o.executeMacro(Number(n))}})}function ne(o){var n,i;let{classList:e,style:t}=document.body;t.setProperty("--at-button-height",((n=o.rowHeight)!=null?n:48)+"px"),t.setProperty("--at-button-width",((i=o.buttonWidth)!=null?i:48)+"px"),t.setProperty("--at-row-count",o.rowCount.toString()),t.setProperty("--at-spacing",o.spacing+"px"),t.setProperty("--at-offset",o.heightOffset+"px"),e.toggle("AT-multirow",o.rowCount>1),e.toggle("AT-row",!o.columnLayout),e.toggle("AT-column",o.columnLayout),e.toggle("AT-no-toolbar",o.rowCount===0)}function an(){let{classList:o,style:e}=document.body;e.removeProperty("--at-button-height"),e.removeProperty("--at-button-width"),e.removeProperty("--at-row-count"),e.removeProperty("--at-spacing"),e.removeProperty("--at-offset"),e.removeProperty("--cmdr-spacing"),o.remove("cmdr-custom-spacing"),o.remove("AT-multirow"),o.remove("AT-row"),o.remove("AT-column"),o.remove("AT-no-toolbar"),o.remove("advanced-toolbar")}function mt(o,e){o.mappedIcons.forEach(t=>{let n=e.app.commands.commands[t.commandID];n&&(n.icon=t.iconID)})}var Bn=require("obsidian");var Pe=require("obsidian");var sn=require("obsidian");function rn({modal:o}){return r(P,null,r("p",null,u("Are you sure you want to delete the Command?")),r("div",{className:"modal-button-container"},r("button",{className:"mod-warning",onClick:async()=>{o.plugin.settings.confirmDeletion=!1,await o.plugin.saveSettings(),o.remove=!0,o.close()}},u("Remove and don't ask again")),r("button",{className:"mod-warning",onClick:()=>{o.remove=!0,o.close()}},u("Remove")),r("button",{onClick:()=>{o.remove=!1,o.close()}},u("Cancel"))))}var z=class extends sn.Modal{constructor(t){super(t.app);this.plugin=t}async onOpen(){this.titleEl.innerText=u("Remove Command"),this.containerEl.addClass("cmdr-confirm-delete-modal"),F(r(rn,{modal:this}),this.contentEl)}async didChooseRemove(){return this.open(),new Promise(t=>{this.onClose=()=>{var n;return t((n=this.remove)!=null?n:!1)}})}onClose(){F(null,this.contentEl)}};var V=class{constructor(e,t){this.plugin=e,this.pairs=t}};var Ce=class extends V{constructor(t,n){super(t,n);this.actions=new Map;this.init(),this.plugin.register(()=>this.actions.forEach((i,a)=>this.removeAction(a)))}getFileExplorers(){return this.plugin.app.workspace.getLeavesOfType("file-explorer")}init(){this.plugin.app.workspace.onLayoutReady(()=>{for(let t of this.pairs)Z(t.mode,this.plugin)&&(this.plugin.app.workspace.onLayoutReady(()=>{this.getFileExplorers().forEach(i=>{this.addAction(t,i)})}),this.plugin.registerEvent(this.plugin.app.workspace.on("layout-change",()=>{this.getFileExplorers().forEach(i=>{this.addAction(t,i)})})))})}reorder(){this.actions.forEach((t,n)=>this.removeAction(n,!0)),this.init()}async addCommand(t){this.pairs.push(t),this.plugin.app.workspace.onLayoutReady(()=>{this.getFileExplorers().forEach(i=>{this.addAction(t,i)})}),this.plugin.registerEvent(this.plugin.app.workspace.on("layout-change",()=>{this.getFileExplorers().forEach(i=>{this.addAction(t,i)})})),await this.plugin.saveSettings()}async removeCommand(t){this.pairs.remove(t),this.removeAction(t),await this.plugin.saveSettings()}buttonExists(t,n){return[...t.view.containerEl.querySelectorAll("div.nav-buttons-container > .cmdr.clickable-icon")].some(i=>i.getAttribute("data-cmdr")===n.icon+n.name)}addAction(t,n){var c,h,d,y,C;if(this.buttonExists(n,t))return;let i=createDiv({cls:"cmdr clickable-icon",attr:{"aria-label-position":"top","aria-label":t.name,"data-cmdr":t.icon+t.name}});this.actions.set(t,i),i.style.color=t.color==="#000000"||t.color===void 0?"inherit":t.color;let a=!1,s=()=>{i.empty(),(0,Pe.setIcon)(i,t.icon),i.onclick=()=>this.plugin.app.commands.executeCommandById(t.id)},m=()=>{i.empty(),(0,Pe.setIcon)(i,"trash"),i.onclick=async()=>{(!this.plugin.settings.confirmDeletion||await new z(this.plugin).didChooseRemove())&&await this.removeCommand(t)}};i.addEventListener("mouseleave",()=>{s(),a=!1}),i.addEventListener("mousemove",f=>{f.preventDefault(),f.stopImmediatePropagation(),f.shiftKey&&(a||m(),a=!0)}),i.addEventListener("contextmenu",f=>{f.stopImmediatePropagation(),new Pe.Menu().addItem(v=>{v.setTitle(u("Add command")).setIcon("command").onClick(async()=>{let g=await q(this.plugin);await this.addCommand(g)})}).addSeparator().addItem(v=>{v.setTitle(u("Change Icon")).setIcon("box").onClick(async()=>{let g=await new D(this.plugin).awaitSelection();g&&g!==t.icon&&(t.icon=g,await this.plugin.saveSettings(),this.reorder())})}).addItem(v=>{v.setTitle(u("Rename")).setIcon("text-cursor-input").onClick(async()=>{let g=await new U(t.name,this.plugin).awaitSelection();g&&g!==t.name&&(t.name=g,await this.plugin.saveSettings(),this.reorder())})}).addItem(v=>{v.dom.addClass("is-warning"),v.setTitle(u("Delete")).setIcon("lucide-trash").onClick(async()=>{(!this.plugin.settings.confirmDeletion||await new z(this.plugin).didChooseRemove())&&await this.removeCommand(t)})}).showAtMouseEvent(f)}),s(),(C=(y=(d=(h=(c=n.view)==null?void 0:c.containerEl)==null?void 0:h.querySelector)==null?void 0:d.call(h,"div.nav-buttons-container"))==null?void 0:y.appendChild)==null||C.call(y,i)}removeAction(t,n=!1){let i=this.actions.get(t);if(i){if(n){i.remove(),this.actions.delete(t);return}i.addClass("cmdr-ribbon-removing"),i.addEventListener("transitionend",()=>{i.remove(),this.actions.delete(t)})}}};function dn(o){var t,n,i;return(i=(n=(t=o.app.plugins)==null?void 0:t.plugins)==null?void 0:n["text-formatting-toolbar"])==null?void 0:i.api}var se=class extends V{constructor(e,t){super(e,t)}sync(){let e=dn(this.plugin);e&&e.setCommands(this.pairs.map(t=>({id:t.id,icon:t.icon,name:t.name})))}static isAvailable(e){return dn(e)!==void 0}async addCommand(e){this.pairs.push(e),await this.plugin.saveSettings(),this.sync()}async removeCommand(e){this.pairs.remove(e),await this.plugin.saveSettings(),this.sync()}reorder(){this.sync()}};var ce=require("obsidian");var ct=class extends V{async addCommand(e){this.pairs.push(e),await this.plugin.saveSettings()}async removeCommand(e){this.pairs.remove(e),await this.plugin.saveSettings()}reorder(){}addRemovableCommand(e,t,n,i,a){return s=>{var f;s.dom.addClass("cmdr","cmdr-menu-item"),s.dom.style.color=t.color==="#000000"||t.color===void 0?"inherit":t.color,s.setSection("cmdr");let m=createDiv({cls:"cmdr-menu-more-options"}),c=null;m.addEventListener("click",v=>{v.preventDefault(),v.stopImmediatePropagation(),c?(c.hide(),c=null):c=new ce.Menu().addItem(g=>{g.setTitle(u("Change Icon")).setIcon("box").onClick(async()=>{let b=await new D(n).awaitSelection();b&&b!==t.icon&&(t.icon=b,await n.saveSettings())})}).addItem(g=>{g.setTitle(u("Rename")).setIcon("text-cursor-input").onClick(async()=>{let b=await new U(t.name,n).awaitSelection();b&&b!==t.name&&(t.name=b,await n.saveSettings())})}).addItem(g=>{g.dom.addClass("is-warning"),g.setTitle(u("Delete")).setIcon("lucide-trash").onClick(async()=>{(!n.settings.confirmDeletion||await new z(n).didChooseRemove())&&await C()})}).showAtMouseEvent(v)}),(0,ce.setIcon)(m,"more-vertical"),s.dom.append(m),s.setTitle((f=t.name)!=null?f:e.name).setIcon(t.icon).onClick(()=>n.app.commands.executeCommandById(t.id));let h=!1,d=()=>{m.removeClass("is-visible")},y=()=>{m.addClass("is-visible")},C=async()=>{s.dom.addClass("cmdr-removing"),i.registerDomEvent(s.dom,"transitionend",()=>{s.dom.remove()}),a.remove(t),await n.saveSettings()};i.registerDomEvent(s.dom,"mousemove",v=>{v.preventDefault(),v.stopImmediatePropagation(),h||y(),h=!0}),i.registerDomEvent(s.dom,"mouseleave",()=>{d(),h=!1}),d()}}addCommandAddButton(e,t,n){e.settings.showAddCommand&&t.addItem(i=>{i.setTitle(u("Add command")).setIcon("plus-circle").setSection("cmdr").onClick(async()=>{try{let a=await q(e);n.push(a),await e.saveSettings()}catch(a){}})})}},Te=class extends ct{applyEditorMenuCommands(e){return async(t,n,i)=>{this.addCommandAddButton(e,t,e.settings.editorMenu);for(let a of e.settings.editorMenu){let s=te(a.id,e);s&&Z(a.mode,e)&&(s.checkCallback&&!s.checkCallback(!0)||s.editorCheckCallback&&!s.editorCheckCallback(!0,n,i)||t.addItem(this.addRemovableCommand(s,a,e,t,e.settings.editorMenu)))}}}},Ae=class extends ct{applyFileMenuCommands(e){return async(t,n,i,a)=>{this.addCommandAddButton(e,t,e.settings.fileMenu);for(let s of e.settings.fileMenu){let m=te(s.id,e);if(m&&!(m.checkCallback&&!m.checkCallback(!0))){if(m.editorCallback){if(!((a==null?void 0:a.view)instanceof ce.MarkdownView))continue}else if(m.editorCheckCallback)if((a==null?void 0:a.view)instanceof ce.MarkdownView){if(!m.editorCheckCallback(!0,a.view.editor,a.view))continue}else continue;t.addItem(this.addRemovableCommand(m,s,e,t,e.settings.fileMenu))}}}}};var le=require("obsidian");var ye=class extends V{constructor(t,n){super(t,n);this.buttons=new WeakMap;this.init()}addPageHeaderButton(t,n){let{id:i,icon:a,name:s}=n,{view:m}=t;if(!(m instanceof le.ItemView))return;let c=this.buttonsFor(t,!0);if(!c||c.has(i))return;let h=m.addAction(a,s,()=>{this.plugin.app.workspace.setActiveLeaf(t,{focus:!0}),this.plugin.app.commands.executeCommandById(i)});c.set(i,h),h.addClasses(["cmdr-page-header",i]),h.style.color=n.color==="#000000"||n.color===void 0?"inherit":n.color,h.addEventListener("contextmenu",d=>{d.stopImmediatePropagation(),new le.Menu().addItem(y=>{y.setTitle(u("Add command")).setIcon("command").onClick(async()=>{let C=await q(this.plugin);await this.addCommand(C)})}).addSeparator().addItem(y=>{y.setTitle(u("Change Icon")).setIcon("box").onClick(async()=>{let C=await new D(this.plugin).awaitSelection();C&&C!==n.icon&&(n.icon=C,await this.plugin.saveSettings(),await this.reorder())})}).addItem(y=>{y.setTitle(u("Rename")).setIcon("text-cursor-input").onClick(async()=>{let C=await new U(n.name,this.plugin).awaitSelection();C&&C!==n.name&&(n.name=C,await this.plugin.saveSettings(),await this.reorder())})}).addItem(y=>{y.dom.addClass("is-warning"),y.setTitle(u("Delete")).setIcon("lucide-trash").onClick(async()=>{(!this.plugin.settings.confirmDeletion||await new z(this.plugin).didChooseRemove())&&await this.removeCommand(n)})}).showAtMouseEvent(d)})}init(){this.plugin.register(()=>{this.removeButtonsFromAllLeaves()}),this.plugin.registerEvent(this.plugin.app.workspace.on("layout-change",()=>{this.addButtonsToAllLeaves()})),this.plugin.app.workspace.onLayoutReady(()=>window.setTimeout(()=>this.addButtonsToAllLeaves(),100))}addAdderButton(t){var s;let{view:n}=t,i="cmdr-adder";if(!(n instanceof le.ItemView)||(s=this.buttons.get(n))!=null&&s.has(i))return;let a=n.addAction("plus",u("Add new"),async()=>{await this.addCommand(await q(this.plugin))});a.addClasses(["cmdr",i]),this.buttons.has(n)||this.buttons.set(n,new Map),this.buttons.get(n).set(i,a)}addButtonsToAllLeaves(t=!1){window.requestAnimationFrame(()=>this.plugin.app.workspace.iterateAllLeaves(n=>this.addButtonsToLeaf(n,t)))}removeButtonsFromAllLeaves(){window.requestAnimationFrame(()=>this.plugin.app.workspace.iterateAllLeaves(t=>this.removeButtonsFromLeaf(t)))}buttonsFor(t,n=!1){if(t.view instanceof le.ItemView)return n&&!this.buttons.has(t.view)&&this.buttons.set(t.view,new Map),this.buttons.get(t.view)}addButtonsToLeaf(t,n=!1){var i;if(t.view instanceof le.ItemView){if(n)this.removeButtonsFromLeaf(t);else if((i=this.buttonsFor(t))!=null&&i.size)return;for(let a=this.pairs.length-1;a>=0;a--){let s=this.pairs[a];Z(s.mode,this.plugin)&&this.addPageHeaderButton(t,s)}this.plugin.settings.showAddCommand&&this.addAdderButton(t)}}removeButtonsFromLeaf(t){let n=this.buttonsFor(t);if(n){for(let i of n.values())i.detach();n==null||n.clear()}}reorder(){this.addButtonsToAllLeaves(!0)}async addCommand(t){this.pairs.push(t),this.addButtonsToAllLeaves(!0),await this.plugin.saveSettings()}async removeCommand(t){this.pairs.remove(t),this.addButtonsToAllLeaves(!0),await this.plugin.saveSettings()}};var ue=require("obsidian");var we=class extends V{constructor(t,n){super(t,n);this.actions=new Map;this.addBtn=createDiv({cls:"cmdr status-bar-item cmdr-adder",attr:{"data-tooltip-position":"top","aria-label":u("Add new")}});this.init(),this.plugin.register(()=>this.actions.forEach((i,a)=>this.removeAction(a)))}init(){this.plugin.app.workspace.onLayoutReady(()=>{this.container=this.plugin.app.statusBar.containerEl;for(let t of this.pairs)te(t.id,this.plugin)&&Z(t.mode,this.plugin)&&this.addAction(t);this.plugin.registerDomEvent(this.container,"contextmenu",t=>{t.target===this.container&&new ue.Menu().addItem(n=>{n.setTitle(u("Add command")).setIcon("command").onClick(async()=>{let i=await q(this.plugin);await this.addCommand(i)})}).showAtMouseEvent(t)}),this.plugin.register(()=>this.addBtn.remove()),(0,ue.setIcon)(this.addBtn,"plus"),this.addBtn.onclick=async()=>{let t=await q(this.plugin);await this.addCommand(t),this.reorder()},this.plugin.settings.showAddCommand&&this.container.prepend(this.addBtn)})}reorder(){this.addBtn.remove(),this.actions.forEach((t,n)=>this.removeAction(n,!0)),this.init()}async addCommand(t){this.pairs.push(t),this.addAction(t),await this.plugin.saveSettings()}async removeCommand(t){this.pairs.remove(t),this.removeAction(t),await this.plugin.saveSettings()}addAction(t){let n=createDiv({cls:"cmdr status-bar-item clickable-icon",attr:{"data-tooltip-position":"top","aria-label":t.name}});this.actions.set(t,n),n.style.color=t.color==="#000000"||t.color===void 0?"inherit":t.color;let i=!1,a=()=>{n.empty(),(0,ue.setIcon)(n,t.icon),n.onclick=()=>this.plugin.app.commands.executeCommandById(t.id)},s=()=>{n.empty(),(0,ue.setIcon)(n,"trash"),n.onclick=async()=>{(!this.plugin.settings.confirmDeletion||await new z(this.plugin).didChooseRemove())&&await this.removeCommand(t)}};n.addEventListener("mouseleave",()=>{a(),i=!1}),n.addEventListener("mousemove",m=>{m.preventDefault(),m.stopImmediatePropagation(),m.shiftKey&&(i||s(),i=!0)}),n.addEventListener("contextmenu",m=>{m.stopImmediatePropagation(),new ue.Menu().addItem(c=>{c.setTitle(u("Add command")).setIcon("command").onClick(async()=>{let h=await q(this.plugin);await this.addCommand(h)})}).addSeparator().addItem(c=>{c.setTitle(u("Change Icon")).setIcon("box").onClick(async()=>{let h=await new D(this.plugin).awaitSelection();h&&h!==t.icon&&(t.icon=h,await this.plugin.saveSettings(),this.reorder())})}).addItem(c=>{c.setTitle(u("Rename")).setIcon("text-cursor-input").onClick(async()=>{let h=await new U(t.name,this.plugin).awaitSelection();h&&h!==t.name&&(t.name=h,await this.plugin.saveSettings(),this.reorder())})}).addItem(c=>{c.dom.addClass("is-warning"),c.setTitle(u("Delete")).setIcon("lucide-trash").onClick(async()=>{(!this.plugin.settings.confirmDeletion||await new z(this.plugin).didChooseRemove())&&await this.removeCommand(t)})}).showAtMouseEvent(m)}),a(),this.container.prepend(n)}removeAction(t,n=!1){let i=this.actions.get(t);if(i){if(n){i.remove(),this.actions.delete(t);return}i.addClass("cmdr-ribbon-removing"),i.addEventListener("transitionend",()=>{i.remove(),this.actions.delete(t)})}}};var mn=require("obsidian");var vt=require("obsidian");var J=require("obsidian");var cn=["https://github.com/jsmorabito","https://github.com/phibr0","https://www.youtube.com/watch?v=dQw4w9WgXcQ"];function Ht(){let[o,e]=x(0);return r("div",{className:"cmdr-credits"},r("span",{onClick:()=>{e(t=>t+1),location.replace(cn[o%cn.length])}},u("By Johnny\u2728 and phibr0")))}function Li(o,e){for(var t in e)o[t]=e[t];return o}function Ot(o,e){for(var t in o)if(t!=="__source"&&!(t in e))return!0;for(var n in e)if(n!=="__source"&&o[n]!==e[n])return!0;return!1}function ln(o){this.props=o}function Cn(o,e){function t(i){var a=this.props.ref,s=a==i.ref;return!s&&a&&(a.call?a(null):a.current=null),e?!e(this.props,i)||!s:Ot(this.props,i)}function n(i){return this.shouldComponentUpdate=t,r(o,i)}return n.displayName="Memo("+(o.displayName||o.name)+")",n.prototype.isReactComponent=!0,n.__f=!0,n}(ln.prototype=new K).isPureReactComponent=!0,ln.prototype.shouldComponentUpdate=function(o,e){return Ot(this.props,o)||Ot(this.state,e)};var un=w.__b;w.__b=function(o){o.type&&o.type.__f&&o.ref&&(o.props.ref=o.ref,o.ref=null),un&&un(o)};var Vs=typeof Symbol!="undefined"&&Symbol.for&&Symbol.for("react.forward_ref")||3911;var Ni=w.__e;w.__e=function(o,e,t,n){if(o.then){for(var i,a=e;a=a.__;)if((i=a.__c)&&i.__c)return e.__e==null&&(e.__e=t.__e,e.__k=t.__k),i.__c(o,e)}Ni(o,e,t,n)};var pn=w.unmount;function yn(o,e,t){return o&&(o.__c&&o.__c.__H&&(o.__c.__H.__.forEach(function(n){typeof n.__c=="function"&&n.__c()}),o.__c.__H=null),(o=Li({},o)).__c!=null&&(o.__c.__P===t&&(o.__c.__P=e),o.__c=null),o.__k=o.__k&&o.__k.map(function(n){return yn(n,e,t)})),o}function wn(o,e,t){return o&&(o.__v=null,o.__k=o.__k&&o.__k.map(function(n){return wn(n,e,t)}),o.__c&&o.__c.__P===e&&(o.__e&&t.insertBefore(o.__e,o.__d),o.__c.__e=!0,o.__c.__P=t)),o}function Dt(){this.__u=0,this.t=null,this.__b=null}function _n(o){var e=o.__.__c;return e&&e.__a&&e.__a(o)}function lt(){this.u=null,this.o=null}w.unmount=function(o){var e=o.__c;e&&e.__R&&e.__R(),e&&o.__h===!0&&(o.type=null),pn&&pn(o)},(Dt.prototype=new K).__c=function(o,e){var t=e.__c,n=this;n.t==null&&(n.t=[]),n.t.push(t);var i=_n(n.__v),a=!1,s=function(){a||(a=!0,t.__R=null,i?i(m):m())};t.__R=s;var m=function(){if(!--n.__u){if(n.state.__a){var h=n.state.__a;n.__v.__k[0]=wn(h,h.__c.__P,h.__c.__O)}var d;for(n.setState({__a:n.__b=null});d=n.t.pop();)d.forceUpdate()}},c=e.__h===!0;n.__u++||c||n.setState({__a:n.__b=n.__v.__k[0]}),o.then(s,s)},Dt.prototype.componentWillUnmount=function(){this.t=[]},Dt.prototype.render=function(o,e){if(this.__b){if(this.__v.__k){var t=document.createElement("div"),n=this.__v.__k[0].__c;this.__v.__k[0]=yn(this.__b,t,n.__O=n.__P)}this.__b=null}var i=e.__a&&r(P,null,o.fallback);return i&&(i.__h=null),[r(P,null,e.__a?null:o.children),i]};var hn=function(o,e,t){if(++t[1]===t[0]&&o.o.delete(e),o.props.revealOrder&&(o.props.revealOrder[0]!=="t"||!o.o.size))for(t=o.u;t;){for(;t.length>3;)t.pop()();if(t[1]n=>{n.preventDefault(),nn(n),window.setTimeout(()=>location.replace(t),Math.random()*800+500)};return r("div",{className:"cmdr-about"},r(_e,null),r("b",null,o.name),r(Ht,null),r("div",{className:"cmdr-about-links"},r("a",{href:"https://forms.gle/hPjn61G9bqqFb3256",onClick:e("https://forms.gle/hPjn61G9bqqFb3256")},u("Send feedback")),r("a",{href:"https://buymeacoffee.com/johnny1093",onClick:e("https://buymeacoffee.com/johnny1093")},u("Donate"))),r("a",{className:"cmdr-version",href:"https://github.com/phibr0/obsidian-commander/releases/tag/"+o.version},o.version))}var W=require("obsidian");function zt(o,e){let t,n;new W.Setting(o).setName(e.name).setDesc(e.desc).addSlider(i=>{n=i,i.setLimits(e.min,e.max,e.step).setValue(e.value).setDynamicTooltip().onChange(async a=>{await e.onChange(a),t.setDisabled(a===e.defaultValue)})}).addExtraButton(i=>{t=i,i.setIcon("reset").setTooltip(u("Restore default")).setDisabled(e.value===e.defaultValue).onClick(async()=>{n.setValue(e.defaultValue),await e.onChange(e.defaultValue),t.setDisabled(!0)})})}function Ft(o,e){if(o.empty(),zt(o,{name:"Toolbar row count",desc:"Set how many rows the mobile toolbar should have. Set this to 0 to remove the toolbar.",min:0,max:5,step:1,value:e.settings.advancedToolbar.rowCount,defaultValue:ee.advancedToolbar.rowCount,onChange:async n=>{e.settings.advancedToolbar.rowCount=n,await e.saveSettings(),ne(e.settings.advancedToolbar)}}),new W.Setting(o).setName("Column layout").setDesc("Use a column based layout instead of the default row. This makes it easier to arrange the commands.").addToggle(n=>n.setValue(e.settings.advancedToolbar.columnLayout).onChange(async i=>{e.settings.advancedToolbar.columnLayout=i,await e.saveSettings(),ne(e.settings.advancedToolbar)})),zt(o,{name:"Bottom offset",desc:"Offset the toolbar from the bottom of the screen. This is useful if the toolbar is partially obscured by other UI elements.",min:0,max:32,step:1,value:e.settings.advancedToolbar.heightOffset,defaultValue:ee.advancedToolbar.heightOffset,onChange:async n=>{e.settings.advancedToolbar.heightOffset=n,await e.saveSettings(),ne(e.settings.advancedToolbar)}}),W.Platform.isMobile){let n=createFragment();n.appendChild(createEl("h3",{text:"Custom icons"})),o.appendChild(n),e.getCommandsWithoutIcons().forEach(i=>{new W.Setting(o).setName(i.name).setDesc(`ID: ${i.id}`).addButton(a=>{var m;let s=a.buttonEl.createDiv({cls:"AT-settings-icon"});if(i.icon)(0,W.setIcon)(s,i.icon);else{let c=(m=e.settings.advancedToolbar.mappedIcons.find(h=>h.commandID===i.id))==null?void 0:m.iconID;c?(0,W.setIcon)(s,c):a.setButtonText("No icon")}a.onClick(async()=>{let c=await new D(e).awaitSelection(),h=e.settings.advancedToolbar.mappedIcons.find(d=>d.commandID===i.id);h?h.iconID=c:e.settings.advancedToolbar.mappedIcons.push({commandID:i.id,iconID:c}),await e.saveSettings(),mt(e.settings.advancedToolbar,e),Ft(o,e)})}).addExtraButton(a=>{a.setIcon("reset").setTooltip("Reset to default - requires a restart").onClick(async()=>{e.settings.advancedToolbar.mappedIcons=e.settings.advancedToolbar.mappedIcons.filter(s=>s.commandID!==i.id),delete i.icon,delete e.app.commands.commands[i.id].icon,await e.saveSettings(),Ft(o,e),new W.Notice("If the default icon doesn't appear, you might have to restart Obsidian.")})})})}let t=o.appendChild(createDiv({cls:"cmdr-sep-con",attr:{style:"margin-top: 64px"}}));t.appendChild(createDiv({text:"Advanced settings",attr:{style:"margin-bottom: 8px; font-weight: bold"}})),new W.Setting(t).setName("Button height").setDesc("Change the height of each button inside the mobile toolbar (in px).").addText(n=>{var i,a;return n.setValue((a=(i=e.settings.advancedToolbar.rowHeight)==null?void 0:i.toString())!=null?a:"48").setPlaceholder("48").onChange(async s=>{let m=Number(s),c=isNaN(m);n.inputEl.toggleClass("is-invalid",c),c||(e.settings.advancedToolbar.rowHeight=m,await e.saveSettings(),ne(e.settings.advancedToolbar))})}),new W.Setting(t).setName("Button width").setDesc("Change the width of each button inside the mobile toolbar (in px).").addText(n=>{var i,a;return n.setValue((a=(i=e.settings.advancedToolbar.buttonWidth)==null?void 0:i.toString())!=null?a:"48").setPlaceholder("48").onChange(async s=>{let m=Number(s),c=isNaN(m);n.inputEl.toggleClass("is-invalid",c),c||(e.settings.advancedToolbar.buttonWidth=m,await e.saveSettings(),ne(e.settings.advancedToolbar))})}),zt(t,{name:"Toolbar extra spacing",desc:"Some themes need extra spacing in the toolbar. If your toolbar doesn't wrap properly, try increasing this value.",min:0,max:64,step:1,value:e.settings.advancedToolbar.spacing,defaultValue:ee.advancedToolbar.spacing,onChange:async n=>{e.settings.advancedToolbar.spacing=n,await e.saveSettings(),ne(e.settings.advancedToolbar)}})}function Vt({plugin:o}){let e=Q(null);return B(()=>(e.current&&Ft(e.current,o),()=>{e.current&&e.current.empty()}),[]),r(P,null,r("div",{className:"cmdr-sep-con callout","data-callout":"info"},r("span",{className:"cmdr-callout-warning"},r(k,{icon:"alert-circle"})," ","Info"),r("p",{className:"cmdr-warning-description"},"The Toolbar is only available in Obsidian Mobile. ",W.Platform.isMobile&&r(P,null,"To configure which Commands show up in the Toolbar, open the Mobile Settings.")),W.Platform.isMobile&&r("button",{onClick:()=>{o.app.setting.openTabById("interface")},className:"mod-cta"},"Open mobile settings")),r("div",{ref:e,className:"cmdr-advanced-toolbar-settings",style:{paddingBottom:"128px"}}))}var he=require("obsidian");var In=require("obsidian");var Sn=require("obsidian");var ut=({initialColor:o,onChange:e})=>{let t=Q(null);return B(()=>(t.current&&new Sn.ColorComponent(t.current).setValue(o).onChange(e),()=>{var n,i;(i=(n=t.current)==null?void 0:n.empty)==null||i.call(n)}),[e,o]),r("div",{ref:t,className:"cmdr-flex cmdr-items-center"})};function Wt({plugin:o,modal:e}){var n;let[,t]=x(0);return B(()=>{let i=()=>{t(a=>a+1)};return addEventListener("cmdr-icon-changed",i),()=>removeEventListener("cmdr-icon-changed",i)},[]),r("div",{className:"cmdr-mobile-modify-grid"},r("div",{className:"cmdr-mobile-modify-option",onClick:e.handleNewIcon},r("span",null,u("Icon")),r("span",{className:"cmdr-flex cmdr-gap-1"},r(k,{icon:e.pair.icon,size:20,className:"clickable-icon",style:{marginRight:"0px"}}),r(ut,{initialColor:(n=e.pair.color)!=null?n:"#000",onChange:e.handleColorChange}))),r("div",{className:"cmdr-mobile-modify-option"},r("span",null,u("Name")),r("input",{onBlur:({currentTarget:i})=>e.handleRename(i.value),type:"text",placeholder:u("Custom Name"),value:e.pair.name})),r("div",{className:"cmdr-mobile-modify-option"},r("select",{className:"dropdown",value:e.pair.mode,onChange:({currentTarget:i})=>e.handleModeChange(i.value)},r("option",{value:"any"},u("Add command to all devices")),r("option",{value:"mobile"},u("Add command only to mobile devices")),r("option",{value:"desktop"},u("Add command only to desktop devices")),r("option",{value:o.app.appId},u("Add command only to this device")))),r("div",{className:"modal-button-container"},r("button",{className:"mod-cta",onClick:()=>e.close()},u("Done"))))}var pe=class extends In.Modal{constructor(t,n,i,a,s,m){super(t.app);this.plugin=t;this.pair=n;this.handleRename=i;this.handleNewIcon=a;this.handleModeChange=s;this.handleColorChange=m}async onOpen(){this.titleEl.innerText=this.pair.name,F(r(Wt,{plugin:this.plugin,modal:this}),this.contentEl)}onClose(){F(null,this.contentEl)}};function Le({value:o,handleChange:e,ariaLabel:t}){let[n,i]=x(!1),a=Q(null),[s,m]=x(0);return B(()=>{var c,h;(c=a==null?void 0:a.current)==null||c.select(),(h=a==null?void 0:a.current)==null||h.focus()}),r("div",{class:"cmdr-editable"},n?r("input",{type:"text",value:o,style:{width:s+25+"px"},onKeyDown:c=>{c.key==="Enter"&&c.target.value.length>0&&(i(!1),e(c))},onBlur:()=>i(!1),ref:a}):r("span",{onDblClick:({target:c})=>{var h;m((h=c==null?void 0:c.offsetWidth)!=null?h:0),i(!0)},"aria-label":t},o))}function jt({plugin:o,pair:e,handleRemove:t,handleDown:n,handleUp:i,handleNewIcon:a,handleRename:s,handleModeChange:m,handleColorChange:c,sortable:h=!0}){var _;let d=te(e.id,o);if(!d)return r(P,null,he.Platform.isDesktop&&r("div",{className:"setting-item mod-toggle"},r(k,{icon:"alert-triangle",size:20,className:"cmdr-icon clickable-icon mod-warning"}),r("div",{className:"setting-item-info"},r("div",{className:"setting-item-name"},e.name),r("div",{className:"setting-item-description"},u("This Command is not available on this device."))),r("div",{className:"setting-item-control"},r("button",{className:"mod-warning",style:"display: flex",onClick:t,"aria-label":u("Delete")},r(k,{icon:"lucide-trash"})))),he.Platform.isMobile&&r("div",{className:"mobile-option-setting-item",onClick:()=>{new he.Notice(u("This Command is not available on this device."))}},r("span",{className:"mobile-option-setting-item-remove-icon",onClick:t},r(k,{icon:"minus-with-circle",size:22,style:{color:"var(--text-error)"}})),r("span",{className:"mobile-option-setting-item-option-icon mod-warning"},r(k,{icon:"alert-triangle",size:22})),r("span",{className:"mobile-option-setting-item-name"},e.name)));let y=d.id.split(":").first(),C=o.app.plugins.manifests[y],f=!C,v=Object.prototype.hasOwnProperty.call(d,"checkCallback")||Object.prototype.hasOwnProperty.call(d,"editorCheckCallback"),g=Ji(e.mode),b=e.mode.match(/desktop|mobile|any/)?e.mode[0].toUpperCase()+e.mode.substring(1):u("This device");return r(P,null,he.Platform.isDesktop&&r("div",{className:"setting-item mod-toggle"},r(k,{icon:e.icon,size:20,"aria-label":u("Choose new"),onClick:a,className:"cmdr-icon clickable-icon"}),r("div",{className:"setting-item-info"},r("div",{className:"setting-item-name"},r(Le,{ariaLabel:u("Double click to rename"),handleChange:({target:A})=>{var X;s((X=A==null?void 0:A.value)!=null?X:"")},value:e.name}),e.name!==d.name&&r("span",{style:"margin-left: .8ex"},"(",d.name,")")),r("div",{className:"setting-item-description"},u("Added by {{plugin_name}}.".replace("{{plugin_name}}",f?"Obsidian":C.name))," ",v?u("Warning: This is a checked Command, meaning it might not run under every circumstance."):"")),r("div",{className:"setting-item-control"},r(ut,{initialColor:(_=e.color)!=null?_:"#000",onChange:c}),h&&r(P,null,r(k,{icon:"arrow-down",className:"setting-editor-extra-setting-button clickable-icon",onClick:n,"aria-label":u("Move down")}),r(k,{icon:"arrow-up",className:"setting-editor-extra-setting-button clickable-icon",onClick:i,"aria-label":u("Move up")})),r(k,{icon:g,className:"setting-editor-extra-setting-button clickable-icon",onClick:()=>m(),"aria-label":u("Change Mode (Currently: {{current_mode}})").replace("{{current_mode}}",b)}),r("button",{className:"mod-warning",style:"display: flex",onClick:t,"aria-label":u("Delete")},r(k,{icon:"lucide-trash"})))),he.Platform.isMobile&&r("div",{className:"mobile-option-setting-item"},r("span",{className:"mobile-option-setting-item-remove-icon",onClick:t},r(k,{icon:"minus-with-circle",size:22,style:{color:"var(--text-error)"}})),r("span",{className:"mobile-option-setting-item-option-icon"},r(k,{icon:e.icon,size:22,onClick:()=>{new pe(o,e,s,a,m,c).open()}})),r("span",{className:"mobile-option-setting-item-name",onClick:()=>{new pe(o,e,s,a,m,c).open()}},e.name,e.name!==d.name&&r("span",{className:"cmdr-option-setting-name"},"(",d.name,")")),r("span",{className:"mobile-option-setting-item-option-icon"},h&&r(P,null,r(k,{icon:"arrow-down",className:"clickable-icon",onClick:n}),r(k,{icon:"arrow-up",className:"clickable-icon",onClick:i})),r(k,{icon:"three-horizontal-bars",className:"clickable-icon",onClick:()=>{new pe(o,e,s,a,m,c).open()}}))))}function Ji(o){return o==="mobile"?"smartphone":o==="desktop"?"monitor":o==="any"?"cmdr-all-devices":"airplay"}function Ut(o,e,t){let n=e<0?o.length+e:e;if(n>=0&&ni(s=>s+1);return r(P,null,r($i.Provider,{value:o},r("div",{className:"cmdr-sep-con"},o.pairs.map((s,m)=>{if(s.mode.match(/desktop|mobile|any/)||s.mode===e.app.appId)return r(jt,{plugin:e,sortable:n,key:s.id,pair:s,handleRemove:async()=>{(!e.settings.confirmDeletion||await new z(e).didChooseRemove())&&(await o.removeCommand(s),a())},handleUp:()=>{Ut(o.pairs,m,m-1),o.reorder(),a()},handleDown:()=>{Ut(o.pairs,m,m+1),o.reorder(),a()},handleRename:async c=>{s.name=c,await e.saveSettings(),await o.reorder(),a()},handleNewIcon:async()=>{let c=await new D(e).awaitSelection();c&&c!==s.icon&&(s.icon=c,await e.saveSettings(),await o.reorder(),a()),dispatchEvent(new Event("cmdr-icon-changed"))},handleModeChange:async c=>{let h=["any","desktop","mobile",e.app.appId],d=h.indexOf(s.mode);d===3&&(d=-1),s.mode=c||h[d+1],await e.saveSettings(),await o.reorder(),a()},handleColorChange:async c=>{s.color=c,await e.saveSettings(),await o.reorder(),a()}})})),!o.pairs.some(s=>Z(s.mode,e)||s.mode.match(/mobile|desktop/))&&r("div",{class:"cmdr-commands-empty"},r(_e,null),r("h3",null,u("No commands here!")),r("span",null,u("Would you like to add one now?"))),Pn.Platform.isMobile&&r("hr",null),r("div",{className:"cmdr-add-new-wrapper"},r("button",{className:"mod-cta",onClick:async()=>{let s=await q(e);await o.addCommand(s),await o.reorder(),a()}},u("Add command")))),t)}var ht=require("obsidian"),qt=/^\/(.*)\/([dgimsuy]*)$/,Xi=250;function Zt(o){return qt.test(o.trim())}function An(o){let e=o.trim().match(qt);if(!e)return!1;if(e[1]==="")return!0;try{return new RegExp(e[1],e[2]),!1}catch(t){return!0}}function Tn(o){let e=[];for(let t of o){let n=t.trim();if(!n)continue;let i=n.match(qt);if(i){if(i[1]==="")continue;try{let s=new RegExp(i[1],i[2]);e.push({source:n,test:m=>s.test(m)})}catch(s){}continue}let a=n.toLowerCase();e.push({source:n,test:s=>s.toLowerCase()===a})}return e}function Yi(o,e){if(!o)return!1;for(let t of e)if(t.test(o))return!0;return!1}function pt(o){return!!o&&typeof o.setTitle=="function"}var Ne=class{constructor(e){this.matchers={editorMenuItems:[],fileMenuItems:[]};this.seen={editorMenuItems:new Set,fileMenuItems:new Set};this.changeListeners=new Set;this.plugin=e,this.recompile(),this.patch()}recompile(){this.matchers.editorMenuItems=Tn(this.plugin.settings.hide.editorMenuItems),this.matchers.fileMenuItems=Tn(this.plugin.settings.hide.fileMenuItems)}tag(e,t){e.__cmdrMenuScope=t}getSeen(e){return[...this.seen[e]].sort((t,n)=>t.localeCompare(n))}onChange(e){return this.changeListeners.add(e),()=>{this.changeListeners.delete(e)}}emitChange(){for(let e of this.changeListeners)try{e()}catch(t){console.error("[cmdr] menu hider listener failed:",t)}}itemTitles(e){var n;let t=[];for(let i of(n=e.items)!=null?n:[]){if(!pt(i))continue;let a=this.titleOf(i).trim();a&&t.push(a)}return t}recordSeen(e,t){if(t.length===0)return;let n=this.seen[e],i=!1;for(let a of t)n.has(a)||(n.add(a),i=!0);if(i){for(;n.size>Xi;)n.delete(n.values().next().value);this.emitChange()}}resolveScope(e){var n;let t=e;for(let i=0;t&&i<32;i++){let a=t.__cmdrMenuScope;if(a)return a;t=(n=t.parentMenu)!=null?n:null}return null}titleOf(e){var i,a,s,m;let t=e.__cmdrMenuItemTitle;if(typeof t=="string"&&t)return t;if((i=e.titleEl)!=null&&i.textContent)return e.titleEl.textContent;let n=e.dom;return(m=(s=(a=n==null?void 0:n.querySelector(".menu-item-title"))==null?void 0:a.textContent)!=null?s:n==null?void 0:n.textContent)!=null?m:""}handleShow(e){let t=e;if(t.__cmdrMenuFiltered)return;let n=this.resolveScope(e);if(!n)return;t.__cmdrMenuFiltered=!0;let i=e.items;if(!i)return;this.recordSeen(n,this.itemTitles(e));let a=this.matchers[n];if(a.length===0)return;let s=!1;for(let m=i.length-1;m>=0;m--){let c=i[m];pt(c)&&Yi(this.titleOf(c).trim(),a)&&(i.splice(m,1),s=!0)}s&&this.collapseSeparators(i)}collapseSeparators(e){for(let t=e.length-1;t>=0;t--){if(pt(e[t]))continue;let n=t===0,i=t===e.length-1,a=t>0&&!pt(e[t-1]);(n||i||a)&&e.splice(t,1)}}patch(){let e=m=>{try{this.handleShow(m)}catch(c){console.error("[cmdr] menu hider failed:",c)}},t=ht.Menu.prototype,n=ht.MenuItem.prototype,i=n.setTitle;n.setTitle=function(m){var c;try{this.__cmdrMenuItemTitle=typeof m=="string"?m:(c=m.textContent)!=null?c:""}catch(h){}return i.call(this,m)};let a=t.showAtMouseEvent;t.showAtMouseEvent=function(m){return e(this),a.call(this,m)};let s=t.showAtPosition;t.showAtPosition=function(m,c){return e(this),s.call(this,m,c)},this.plugin.register(()=>{n.setTitle=i,t.showAtMouseEvent=a,t.showAtPosition=s})}};function Re({title:o,children:e}){let[t,n]=x(!1);return r("div",{className:"cmdr-accordion cmdr-sep-con","aria-expanded":t},r("div",{className:"cmdr-accordion-header cmdr-mb-1",onClick:()=>{n(!t)}},r(k,{className:"cmdr-accordion-chevron clickable-icon",icon:"chevron-down",size:24}),r("span",null,o)),r("div",{className:"cmdr-accordion-content",style:{maxHeight:[e].flat().length*120+"px"}},e))}function Jt({name:o,description:e,children:t,className:n}){return r("div",{className:`setting-item ${n}`},r("div",{className:"setting-item-info"},r("div",{className:"setting-item-name"},o),r("div",{className:"setting-item-description"},e)),r("div",{className:"setting-item-control"},t))}function $t(o){let[e,t]=x(o.value);return r(Jt,{name:o.name,description:o.description,className:"mod-toggle"},r("div",{className:`checkbox-container ${e?"is-enabled":""}`,onClick:()=>{t(!e),o.changeHandler(e)}}))}function ft({name:o,description:e,changeHandler:t,value:n,hideLabel:i,showLabel:a}){let[s,m]=x(n);return r(Jt,{name:o,description:e,className:"mod-toggle"},r(k,{"aria-label":s?a:i,icon:s?"eye-off":"eye",size:20,className:"clickable-icon",onClick:()=>{m(!s),t(s)}}))}function gt(t){var n=t,{defaultValue:o}=n,e=Ze(n,["defaultValue"]);var s,m,c;let[i,a]=x(e.value);return r(Jt,{description:e.description,name:e.name,className:"cmdr-slider"},r("div",{class:"cmdr-slider-control"},o!==void 0&&r(k,{"aria-label":u("Restore default"),icon:"reset",size:16,className:`clickable-icon${i===o?" is-disabled":""}`,"aria-disabled":i===o,onClick:i===o?void 0:()=>{a(o),e.changeHandler(o)}}),r(Le,{ariaLabel:u("Double click to enter custom value"),value:i.toString(),handleChange:({target:h})=>{let d=Number(h.value);!isNaN(d)&&i!==d&&(a(d),e.changeHandler(d))}}),r("input",{class:"slider",type:"range",min:(s=e.min)!=null?s:"0",max:(m=e.max)!=null?m:"32",step:(c=e.step)!=null?c:"1",value:i,onInput:({target:h})=>{let d=Number(h.value);!isNaN(d)&&i!==d&&(a(d),e.changeHandler(d))}})))}function Ln({plugin:o}){let[e,t]=x([]),n=o.settings.hide.leftRibbon;return B(()=>{t(o.app.workspace.leftRibbon.items.map(i=>({name:i.title,icon:i.icon})))},[]),r(P,null,r("hr",null),r(Re,{title:u("Hide other Commands")},e.map(i=>r(ft,{name:i.name,description:"",hideLabel:u("Hide"),showLabel:u("Show"),changeHandler:async a=>{a?n.contains(i.name)&&n.remove(i.name):n.push(i.name),Se(o.settings),await o.saveSettings()},value:n.contains(i.name)}))))}function Nn({plugin:o}){let e=o.settings.hide.statusbar,[t,n]=x([]);return B(()=>{let a=[...o.app.statusBar.containerEl.getElementsByClassName("status-bar-item")].map(s=>[...s.classList].find(m=>m.startsWith("plugin-"))).filter(s=>s).map(s=>s.substring(7));n(a.map(s=>o.app.plugins.manifests[s]||{id:s,name:s.replace(/-/g," ").replace(/(^\w{1})|(\s+\w{1})/g,m=>m.toUpperCase()),description:"Core Plugin"}))},[]),r(P,null,r("hr",null),r(Re,{title:u("Hide other Commands")},t.map(i=>r(ft,{name:i.name,description:i.description,value:e.contains(i.id),hideLabel:u("Hide"),showLabel:u("Show"),changeHandler:async a=>{a?e.contains(i.id)&&e.remove(i.id):e.push(i.id),Se(o.settings),await o.saveSettings()}}))))}function Xt({plugin:o,scope:e}){let t=o.settings.hide[e],[,n]=x(0),i=()=>n(g=>g+1),[a,s]=x(""),[m,c]=x([]);B(()=>(c(o.manager.menuHider.getSeen(e)),o.manager.menuHider.onChange(()=>{c(o.manager.menuHider.getSeen(e))})),[e]);let h=async()=>{o.manager.menuHider.recompile(),await o.saveSettings(),i()},d=async()=>{let g=a.trim();if(!g||t.includes(g)){s("");return}t.push(g),s(""),await h()},y=async(g,b)=>{b&&!t.includes(g)&&t.push(g),!b&&t.includes(g)&&t.remove(g),await h()},C=t.filter(Zt),f=[...new Set([...m,...t.filter(g=>!Zt(g))])].sort((g,b)=>g.localeCompare(b)),v=[r("p",{className:"cmdr-menu-hider-description",key:"cmdr-mh-desc"},u("Remove items from this menu by their exact name (case-insensitive), or by a regular expression wrapped in slashes, e.g. /^Open in default app$/i.")),r("div",{className:"cmdr-menu-hider-add",key:"cmdr-mh-add"},r("input",{type:"text",placeholder:u("Menu item name or /regex/"),value:a,onInput:g=>s(g.target.value),onKeyDown:g=>{g.key==="Enter"&&(g.preventDefault(),d())}}),r("button",{className:"mod-cta",onClick:()=>{d()}},u("Add")))];for(let g of C){let b=An(g);v.push(r("div",{className:"setting-item cmdr-menu-hider-row",key:`re:${g}`},r("div",{className:"setting-item-info"},r("code",{className:b?"cmdr-menu-hider-invalid":""},g),b&&r("div",{className:"setting-item-description cmdr-menu-hider-invalid"},u("Invalid regular expression \u2014 this entry is ignored."))),r("div",{className:"setting-item-control"},r(k,{icon:"trash",size:16,className:"clickable-icon","aria-label":u("Remove"),onClick:async()=>{t.remove(g),await h()}}))))}v.push(r("div",{className:"cmdr-menu-hider-hint",key:"cmdr-mh-hint"},r(k,{icon:"info",size:14}),r("span",null,u("Open this menu once and its items will appear here to toggle. Regexes and names typed above are always applied."))));for(let g of f){let b=t.includes(g);v.push(r(ft,{key:`t:${b?"1":"0"}:${g}`,name:g,description:"",hideLabel:u("Hide"),showLabel:u("Show"),value:b,changeHandler:_=>{y(g,!_)}}))}return r(P,null,r("hr",null),r(Re,{title:u("Hide menu items")},v))}var Dn=require("obsidian");var Hn=require("obsidian");function Rn({plugin:o,macro:e,onSave:t,onCancel:n}){let[i,a]=x(e.name||"Macro Name"),[s,m]=x(e.icon||"star"),[c,h]=x(e.startup||!1),[d,y]=x(JSON.parse(JSON.stringify(e.macro))||[]),C=async()=>{let v=await new ae(o).awaitSelection();v&&y([...d,{action:0,commandId:v.id}])},f=async()=>{y([...d,{action:1,delay:250}])};return r("div",null,r("div",{class:"setting-item cmdr-mm-item"},r("div",null,r("span",null,"Name"),r("input",{type:"text",placeholder:"Macro Name",value:i,onChange:v=>a(v.currentTarget.value),width:"100%"})),r("div",null,r("span",null,"Icon"),r("button",{onClick:async()=>m(await new D(o).awaitSelection())},r(k,{icon:s})))),d.map((v,g)=>{switch(v.action){case 0:{let b=te(v.commandId,o);return r("div",{class:"setting-item cmdr-mm-item"},r("div",null,r("button",{onClick:async()=>{let _=await new ae(o).awaitSelection();y(d.map((A,X)=>X===g?qe(G({},A),{commandId:_.id}):A))}},(b==null?void 0:b.name)||"Cannot find Command")),r("div",null,r("div",{class:"cmdr-mm-action-options"},r(k,{class:"clickable-icon",icon:"arrow-down",onClick:()=>{if(g===d.length-1)return;let _=[...d],A=_[g];_[g]=_[g+1],_[g+1]=A,y(_)}}),r(k,{class:"clickable-icon",icon:"arrow-up",onClick:()=>{if(g===0)return;let _=[...d],A=_[g];_[g]=_[g-1],_[g-1]=A,y(_)}}),r(k,{class:"clickable-icon",icon:"cross",onClick:()=>{y(d.filter((_,A)=>A!==g))}}))))}case 1:return r("div",{class:"setting-item cmdr-mm-item"},r("div",null,r(gt,{name:"Delay",min:0,max:1e4,step:50,description:"Delay in milliseconds",value:v.delay,changeHandler:b=>{v.delay=b}})),r("div",null,r("div",{class:"cmdr-mm-action-options"},r(k,{class:"clickable-icon",icon:"arrow-down",onClick:()=>{if(g===d.length-1)return;let b=[...d],_=b[g];b[g]=b[g+1],b[g+1]=_,y(b)}}),r(k,{class:"clickable-icon",icon:"arrow-up",onClick:()=>{if(g===0)return;let b=[...d],_=b[g];b[g]=b[g-1],b[g-1]=_,y(b)}}),r(k,{class:"clickable-icon",icon:"cross",onClick:()=>{y(d.filter((b,_)=>_!==g))}}))));case 2:return r("div",null,"Editor: ",v.action);case 3:return r("div",null,"Loop: ",v.times)}}),r("div",{className:"setting-item cmdr-mm-actions cmdr-justify-between"},r("div",{className:"cmdr-flex cmdr-items-center cmdr-justify-self-start"},r("input",{type:"checkbox",id:"checkbox",checked:c,onChange:({target:v})=>{var g;h((g=v==null?void 0:v.checked)!=null?g:!1)}}),r("label",{htmlFor:"checkbox"},"Auto-Run on Startup")),r("div",null,r("button",{onClick:C},"Add Command"),r("button",{onClick:f},"Add Delay"))),r("div",{className:"cmdr-mm-control"},r("button",{class:d.length===0?"disabled":"mod-cta",disabled:d.length===0,onClick:()=>{d.length&&t({macro:d,name:i,icon:s,startup:c})}},"Save"),r("button",{onClick:n},"Cancel")))}var He=class extends Hn.Modal{constructor(e,t,n){super(e.app),this.macro=t,this.plugin=e,this.onSave=n}onOpen(){this.titleEl.setText("Macro builder"),F(r(Rn,{plugin:this.plugin,macro:this.macro,onSave:this.onSave,onCancel:()=>this.close()}),this.contentEl)}onClose(){F(null,this.contentEl)}};function Yt({plugin:o,macros:e}){let[,t]=x(0),n=()=>t(s=>s+1),i=(s,m)=>{let c=d=>{e.splice(m!==void 0?m:e.length,m!==void 0?1:0,d),o.saveSettings(),n(),Ie(o),h.close()},h=new He(o,s,c);h.open()},a=s=>{e.splice(s,1),o.saveSettings(),n(),Ie(o)};return r(P,null,r("div",{className:"cmdr-sep-con"},e.map((s,m)=>r("div",{class:"setting-item mod-toggle"},r("div",{className:"setting-item-info"},r("div",{className:"setting-item-name"},s.name),r("div",{className:"setting-item-description"},s.macro.length," Actions")),r("div",{className:"setting-item-control"},r("button",{"aria-label":"Edit Macro",onClick:()=>i(s,m)},r(k,{icon:"lucide-pencil"})),r("button",{"aria-label":"Delete",class:"mod-warning",onClick:async()=>{(!o.settings.confirmDeletion||await new z(o).didChooseRemove())&&a(m)}},r(k,{icon:"trash"})))))),!e.length&&r("div",{class:"cmdr-commands-empty"},r(_e,null),r("h3",null,"No Macros yet!"),r("span",null,u("Would you like to add one now?"))),Dn.Platform.isMobile&&r("hr",null),r("div",{className:"cmdr-add-new-wrapper"},r("button",{class:"mod-cta",onClick:()=>i({name:"",macro:[],icon:"star"})},"Add Macro")))}function De({plugin:o,mobileMode:e}){let[t,n]=x(0),[i,a]=x(!0),s=({key:c,shiftKey:h})=>{h&&c==="Tab"?t>0?n((t-1)%m.length):n(m.length-1):c==="Tab"&&n((t+1)%m.length)};B(()=>(addEventListener("keydown",s),()=>removeEventListener("keydown",s)),[t]),J.Platform.isMobile&&B(()=>{let c=document.querySelector(".modal-setting-back-button"),h=c.cloneNode(!0);c.parentNode.replaceChild(h,c),a(!0)},[]),B(()=>{let c=document.querySelector(".modal-setting-back-button");c&&(i?(c.parentElement.lastChild.textContent="Commander",c.onclick=()=>o.app.setting.closeActiveTab()):(c.parentElement.lastChild.textContent=m[t].name,c.onclick=()=>a(!0)))},[i]);let m=rt(()=>[{name:u("General"),tab:r(P,null,r($t,{name:u("Always ask before removing?"),description:u("Always show a Popup to confirm deletion of a Command."),value:o.settings.confirmDeletion,changeHandler:async c=>{o.settings.confirmDeletion=!c,await o.saveSettings()}}),r($t,{value:o.settings.showAddCommand,name:u('Show "Add Command" Button'),description:'Show the "Add Command" Button in every Menu.',changeHandler:async c=>{o.settings.showAddCommand=!c,await o.manager.pageHeader.reorder(),await o.saveSettings()}}),r(gt,{value:o.settings.spacing,defaultValue:ee.spacing,name:u("Choose custom spacing for Command Buttons"),description:u("Change the spacing between commands. You can set different values on mobile and desktop."),changeHandler:async c=>{dt(c),o.settings.spacing=c,await o.saveSettings()}}))},{name:u("Left Ribbon"),tab:r(ie,{manager:o.manager.leftRibbon,plugin:o,sortable:!1},r(Ln,{plugin:o}),r("div",{className:"cmdr-sep-con callout","data-callout":"warning"},r("span",{className:"cmdr-callout-warning"},r(k,{icon:"alert-triangle"})," ","Reordering and Sorting"),r("p",{className:"cmdr-warning-description"},"As of Obsidian 1.1.0 you can reorder the Buttons in the left ribbon by dragging. This will replace the old sorting feature.")))},{name:u("Page Header"),tab:r(ie,{manager:o.manager.pageHeader,plugin:o},r("hr",null),r("div",{className:"cmdr-sep-con callout","data-callout":"warning"},r("span",{className:"cmdr-callout-warning"},r(k,{icon:"alert-triangle"})," ",u("Warning")),r("p",{className:"cmdr-warning-description"},u("As of Obsidian 0.16.0 you need to explicitly enable the View Header.")),r("button",{onClick:()=>{o.app.setting.openTabById("appearance"),window.setTimeout(()=>{var c,h,d,y;o.app.setting.activeTab.containerEl.scroll({behavior:"smooth",top:250}),(y=(d=(h=(c=o.app.setting.activeTab.containerEl.querySelectorAll(".setting-item-heading")[1].nextSibling)==null?void 0:c.nextSibling)==null?void 0:h.nextSibling)==null?void 0:d.addClass)==null||y.call(d,"cmdr-cta")},50)},className:"mod-cta"},u("Open Appearance Settings"))))},{name:u("Statusbar"),tab:r(ie,{manager:o.manager.statusBar,plugin:o},r(Nn,{plugin:o}))},{name:u("Editor Menu"),tab:r(ie,{manager:o.manager.editorMenu,plugin:o},r(Xt,{plugin:o,scope:"editorMenuItems"}))},{name:u("File Menu"),tab:r(ie,{manager:o.manager.fileMenu,plugin:o},r(Xt,{plugin:o,scope:"fileMenuItems"}))},{name:u("Explorer"),tab:r(ie,{manager:o.manager.explorerManager,plugin:o},r("hr",null),r("div",{className:"cmdr-sep-con callout","data-callout":"warning"},r("span",{className:"cmdr-callout-warning"},r(k,{icon:"alert-triangle"})," ",u("Warning")),r("p",{className:"cmdr-warning-description"},"When clicking on a Command in the Explorer, the Explorer view will become focused. This might interfere with Commands that are supposed to be executed on an active File/Explorer.")))},...se.isAvailable(o)?[{name:"Text Toolbar",tab:r(ie,{manager:o.manager.textToolbarIntegration,plugin:o})}]:[],{name:J.Platform.isMobile?"Mobile Toolbar":"Toolbar",tab:r(Vt,{plugin:o})},{name:"Macros",tab:r(Yt,{plugin:o,macros:o.settings.macros})}],[]);return r(P,null,J.Platform.isDesktop&&r("div",{className:"cmdr-setting-title"},r("h1",null,o.manifest.name)),(J.Platform.isDesktop||i)&&r(Ki,{tabs:m,activeTab:t,setActiveTab:n,setOpen:a}),r("div",{class:`cmdr-setting-content ${e?"cmdr-mobile":""}`},(J.Platform.isDesktop||!i)&&m[t].tab,(J.Platform.isMobile&&i||J.Platform.isDesktop&&t===0)&&r(Bt,{manifest:o.manifest})))}function Ki({tabs:o,activeTab:e,setActiveTab:t,setOpen:n}){let i=Q(null),a=s=>{var m;s.preventDefault(),(m=i.current)==null||m.scrollBy({left:s.deltaY>0?16:-16})};return B(()=>{let s=i.current;if(!(!s||J.Platform.isMobile))return s.addEventListener("wheel",a),()=>s.removeEventListener("wheel",a)},[]),B(()=>{var s;return(s=document.querySelector(".cmdr-tab-active"))==null?void 0:s.scrollIntoView({behavior:"smooth",block:"nearest"})},[e]),r("nav",{class:`cmdr-setting-header ${J.Platform.isMobile?"cmdr-mobile":""}`,ref:i},r("div",{class:`cmdr-setting-tab-group ${J.Platform.isMobile?"vertical-tab-header-group-items":""}`},o.map((s,m)=>r("div",{className:`cmdr-tab ${e===m?"cmdr-tab-active":""} ${J.Platform.isMobile?"vertical-tab-nav-item":""}`,onClick:()=>{t(m),n(!1)}},s.name,J.Platform.isMobile&&r(k,{className:"vertical-tab-nav-item-chevron cmdr-block",icon:"chevron-right",size:24})))),J.Platform.isDesktop&&r("div",{className:"cmdr-fill"}))}var Oe=class extends vt.PluginSettingTab{constructor(e){super(e.app,e),this.plugin=e}display(){F(r(De,{plugin:this.plugin,mobileMode:vt.Platform.isMobile}),this.containerEl)}hide(){F(null,this.containerEl)}};var bt=require("obsidian");var Be=class extends bt.Modal{constructor(e){super(e.app),this.plugin=e,this.containerEl.addClass("cmdr-setting-modal")}onOpen(){let e=bt.Platform.isMobile;F(r(De,{plugin:this.plugin,mobileMode:e}),this.contentEl)}onClose(){F(null,this.contentEl)}};var On=require("obsidian");function Gt(){(0,On.addIcon)("cmdr-all-devices",'')}var ze=class extends V{constructor(e){super(e,e.settings.leftRibbon),this.plugin=e,this.plugin.settings.leftRibbon.forEach(t=>{this.addCommand(t,!1)}),this.plugin.register(()=>this.plugin.settings.leftRibbon.forEach(t=>{this.removeCommand(t,!1)})),this.plugin.registerEvent(this.plugin.app.workspace.on("layout-change",()=>this.reinject()))}findItem(e){return this.plugin.app.workspace.leftRibbon.items.find(t=>t.icon===e.icon&&t.title===e.name)}reinject(){var t;let e=!1;for(let n of this.plugin.settings.leftRibbon){if(!Z(n.mode,this.plugin))continue;let i=this.findItem(n);(t=i==null?void 0:i.buttonEl)!=null&&t.isConnected||(i&&this.plugin.app.workspace.leftRibbon.items.remove(i),this.addCommand(n,!1),e=!0)}e&&this.applyOrder()}applyOrder(){var i;let e=this.plugin.app.workspace.leftRibbon.ribbonItemsEl;if(!e)return;let t=[];for(let a of this.plugin.settings.leftRibbon){let s=(i=this.findItem(a))==null?void 0:i.buttonEl;s!=null&&s.isConnected&&t.push(s)}if(!(t.length<2||Array.from(e.children).filter(a=>t.includes(a)).every((a,s)=>a===t[s])))for(let a of t)e.appendChild(a)}async addCommand(e,t=!0){var i,a;if(t&&(this.plugin.settings.leftRibbon.push(e),await this.plugin.saveSettings()),!Z(e.mode,this.plugin))return;(a=(i=this.findItem(e))==null?void 0:i.buttonEl)!=null&&a.isConnected||this.plugin.addRibbonIcon(e.icon,e.name,()=>this.plugin.app.commands.executeCommandById(e.id));let n=this.findItem(e);n&&(n.buttonEl.style.color=e.color==="#000000"||e.color===void 0?"inherit":e.color)}async removeCommand(e,t=!0){t&&(this.plugin.settings.leftRibbon.remove(e),await this.plugin.saveSettings());let n=this.findItem(e);n&&(n.buttonEl.remove(),this.plugin.app.workspace.leftRibbon.items.remove(n))}reorder(){this.plugin.settings.leftRibbon.forEach(e=>{this.removeCommand(e,!1),this.addCommand(e,!1)}),this.applyOrder()}};var Ct=class extends Bn.Plugin{async executeStartupMacros(){this.settings.macros.forEach((e,t)=>{e.startup&&this.executeMacro(t)})}async executeMacro(e){let t=this.settings.macros[e];if(!t)throw new Error("Macro not found");for(let n of t.macro)switch(n.action){case 0:{this.app.commands.executeCommandById(n.commandId);continue}case 1:{await new Promise(i=>window.setTimeout(i,n.delay));continue}case 2:continue;case 3:{for(let i=0;inew Be(this).open()});let t=this.manager.editorMenu.applyEditorMenuCommands(this);this.registerEvent(this.app.workspace.on("editor-menu",(d,y,C)=>(this.manager.menuHider.tag(d,"editorMenuItems"),t(d,y,C))));let n=this.manager.fileMenu.applyFileMenuCommands(this);this.registerEvent(this.app.workspace.on("file-menu",(d,y,C,f)=>(this.manager.menuHider.tag(d,"fileMenuItems"),n(d,y,C,f)))),this.app.workspace.onLayoutReady(()=>{Se(this.settings),Ie(this),dt(this.settings.spacing),ne(this.settings.advancedToolbar),mt(this.settings.advancedToolbar,this),this.executeStartupMacros(),this.manager.textToolbarIntegration.reorder()})}onunload(){var e;(e=document.head.querySelector("style#cmdr"))==null||e.remove(),an()}async loadSettings(){let e=await this.loadData(),t=s=>!!s&&typeof s=="object"&&!Array.isArray(s),n=t(e)?e:{},i=t(n.hide)?n.hide:void 0,a=t(n.advancedToolbar)?n.advancedToolbar:void 0;if(this.settings=qe(G(G({},ee),n),{hide:G(G({},ee.hide),i),advancedToolbar:G(G({},ee.advancedToolbar),a)}),this.settings.spacingReset===void 0&&(this.settings.spacing===8&&(this.settings.spacing=0),this.settings.spacingReset=!0,t(e)))try{await this.saveSettings()}catch(s){console.error("Commander: could not persist spacing migration",s)}}async saveSettings(){await this.saveData(this.settings)}listActiveToolbarCommands(){return this.app.vault.getConfig("mobileToolbarCommands")}getCommands(){let e=[];return this.listActiveToolbarCommands().forEach(t=>{let n=this.app.commands.commands[t];n&&e.push(n)}),e}getCommandsWithoutIcons(e=!0){let t=[];return this.getCommands().forEach(n=>{n&&!n.icon&&t.push(n)}),e&&this.getCommands().forEach(n=>{this.settings.advancedToolbar.mappedIcons.find(i=>i.commandID===n.id)&&t.push(n)}),t}}; /* by phibr0 */ /* nosourcemap */