From 34207f15b93476736eac306612324fb879727821 Mon Sep 17 00:00:00 2001 From: Nathan Price Date: Sun, 19 Jan 2025 03:08:22 -0500 Subject: [PATCH] Initial commit after history reset --- .gitignore | 3 + .obsidian/app.json | 3 + .obsidian/appearance.json | 1 + .obsidian/community-plugins.json | 9 + .obsidian/core-plugins.json | 30 + .obsidian/graph.json | 22 + .obsidian/plugins/editing-toolbar/main.js | 12 + .../plugins/editing-toolbar/manifest.json | 11 + .obsidian/plugins/editing-toolbar/styles.css | 971 + .../github-copilot/copilot-1.0.11/agent.cjs | 1091 + .../resources/cl100k_base.tiktoken | 100256 ++++++++ .../resources/cl100k_base.tiktoken.noindex | 100256 ++++++++ .../resources/o200k_base.tiktoken | 199998 +++++++++++++++ .../resources/o200k_base.tiktoken.noindex | 199998 +++++++++++++++ .obsidian/plugins/github-copilot/data.json | 22 + .obsidian/plugins/github-copilot/main.js | 28626 +++ .../plugins/github-copilot/manifest.json | 10 + .obsidian/plugins/github-copilot/styles.css | 107 + .../plugins/obsidian-auto-link-title/main.js | 771 + .../obsidian-auto-link-title/manifest.json | 10 + .../obsidian-auto-link-title/styles.css | 1 + .obsidian/plugins/obsidian-git/data.json | 59 + .obsidian/plugins/obsidian-git/main.js | 414 + .obsidian/plugins/obsidian-git/manifest.json | 10 + .../plugins/obsidian-git/obsidian_askpass.sh | 23 + .obsidian/plugins/obsidian-git/styles.css | 576 + .obsidian/plugins/obsidian-linter/data.json | 292 + .obsidian/plugins/obsidian-linter/main.js | 325 + .../plugins/obsidian-linter/manifest.json | 11 + .obsidian/plugins/obsidian-linter/styles.css | 1 + .../plugins/templater-obsidian/data.json | 37 + .../plugins/templater-obsidian/manifest.json | 11 + .../plugins/templater-obsidian/styles.css | 220 + Docker Images/bluesky-pds.md | 115 + Docker Images/bluesky-pds/cloudflare.png | Bin 0 -> 22620 bytes Docker Images/bluesky-pds/middleware.md | 21 + Docker Images/bluesky-pds/standalone.md | 24 + Docker Images/bluesky-pds/traefik.md | 41 + Docker Images/quartz.md | 113 + .../quartz/Developing with Quartz.md | 33 + Tutorials/Docker/Proxy Network.md | 17 + Tutorials/Docker/getting started.md | 5 + Tutorials/Traefik/CloudFlare.md | 23 + index.md | 21 + templates/primary.md | 6 + utilities/fail2ban-manager.md | 96 + utilities/fail2ban-manager/base.md | 274 + .../fail2ban-manager/plugins/cloudflare.md | 113 + utilities/fail2ban-manager/plugins/hetzner.md | 176 + .../fail2ban-manager/plugins/telegram.md | 144 + 50 files changed, 635409 insertions(+) create mode 100644 .gitignore create mode 100644 .obsidian/app.json create mode 100644 .obsidian/appearance.json create mode 100644 .obsidian/community-plugins.json create mode 100644 .obsidian/core-plugins.json create mode 100644 .obsidian/graph.json create mode 100644 .obsidian/plugins/editing-toolbar/main.js create mode 100644 .obsidian/plugins/editing-toolbar/manifest.json create mode 100644 .obsidian/plugins/editing-toolbar/styles.css create mode 100644 .obsidian/plugins/github-copilot/copilot-1.0.11/agent.cjs create mode 100644 .obsidian/plugins/github-copilot/copilot-1.0.11/resources/cl100k_base.tiktoken create mode 100644 .obsidian/plugins/github-copilot/copilot-1.0.11/resources/cl100k_base.tiktoken.noindex create mode 100644 .obsidian/plugins/github-copilot/copilot-1.0.11/resources/o200k_base.tiktoken create mode 100644 .obsidian/plugins/github-copilot/copilot-1.0.11/resources/o200k_base.tiktoken.noindex create mode 100644 .obsidian/plugins/github-copilot/data.json create mode 100644 .obsidian/plugins/github-copilot/main.js create mode 100644 .obsidian/plugins/github-copilot/manifest.json create mode 100644 .obsidian/plugins/github-copilot/styles.css create mode 100644 .obsidian/plugins/obsidian-auto-link-title/main.js create mode 100644 .obsidian/plugins/obsidian-auto-link-title/manifest.json create mode 100644 .obsidian/plugins/obsidian-auto-link-title/styles.css create mode 100644 .obsidian/plugins/obsidian-git/data.json create mode 100644 .obsidian/plugins/obsidian-git/main.js create mode 100644 .obsidian/plugins/obsidian-git/manifest.json create mode 100755 .obsidian/plugins/obsidian-git/obsidian_askpass.sh create mode 100644 .obsidian/plugins/obsidian-git/styles.css create mode 100644 .obsidian/plugins/obsidian-linter/data.json create mode 100644 .obsidian/plugins/obsidian-linter/main.js create mode 100644 .obsidian/plugins/obsidian-linter/manifest.json create mode 100644 .obsidian/plugins/obsidian-linter/styles.css create mode 100644 .obsidian/plugins/templater-obsidian/data.json create mode 100644 .obsidian/plugins/templater-obsidian/manifest.json create mode 100644 .obsidian/plugins/templater-obsidian/styles.css create mode 100644 Docker Images/bluesky-pds.md create mode 100644 Docker Images/bluesky-pds/cloudflare.png create mode 100644 Docker Images/bluesky-pds/middleware.md create mode 100644 Docker Images/bluesky-pds/standalone.md create mode 100644 Docker Images/bluesky-pds/traefik.md create mode 100644 Docker Images/quartz.md create mode 100644 Docker Images/quartz/Developing with Quartz.md create mode 100644 Tutorials/Docker/Proxy Network.md create mode 100644 Tutorials/Docker/getting started.md create mode 100644 Tutorials/Traefik/CloudFlare.md create mode 100644 index.md create mode 100644 templates/primary.md create mode 100644 utilities/fail2ban-manager.md create mode 100644 utilities/fail2ban-manager/base.md create mode 100644 utilities/fail2ban-manager/plugins/cloudflare.md create mode 100644 utilities/fail2ban-manager/plugins/hetzner.md create mode 100644 utilities/fail2ban-manager/plugins/telegram.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ac34453 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +.obsidian/plugins/ +.obsidian/workspace.json +.copilot-index/ diff --git a/.obsidian/app.json b/.obsidian/app.json new file mode 100644 index 0000000..6abe4c1 --- /dev/null +++ b/.obsidian/app.json @@ -0,0 +1,3 @@ +{ + "alwaysUpdateLinks": true +} \ No newline at end of file diff --git a/.obsidian/appearance.json b/.obsidian/appearance.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/.obsidian/appearance.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/.obsidian/community-plugins.json b/.obsidian/community-plugins.json new file mode 100644 index 0000000..e7c4e38 --- /dev/null +++ b/.obsidian/community-plugins.json @@ -0,0 +1,9 @@ +[ + "templater-obsidian", + "obsidian-git", + "obsidian-linter", + "editing-toolbar", + "obsidian-auto-link-title", + "editor-width-slider", + "emoji-shortcodes" +] \ No newline at end of file diff --git a/.obsidian/core-plugins.json b/.obsidian/core-plugins.json new file mode 100644 index 0000000..2e8d37c --- /dev/null +++ b/.obsidian/core-plugins.json @@ -0,0 +1,30 @@ +{ + "file-explorer": true, + "global-search": true, + "switcher": false, + "graph": true, + "backlink": true, + "canvas": false, + "outgoing-link": true, + "tag-pane": false, + "properties": false, + "page-preview": true, + "daily-notes": false, + "templates": false, + "note-composer": true, + "command-palette": true, + "slash-command": false, + "editor-status": true, + "bookmarks": false, + "markdown-importer": false, + "zk-prefixer": false, + "random-note": false, + "outline": true, + "word-count": true, + "slides": false, + "audio-recorder": false, + "workspaces": false, + "file-recovery": false, + "publish": false, + "sync": false +} \ No newline at end of file diff --git a/.obsidian/graph.json b/.obsidian/graph.json new file mode 100644 index 0000000..e21a18d --- /dev/null +++ b/.obsidian/graph.json @@ -0,0 +1,22 @@ +{ + "collapse-filter": true, + "search": "", + "showTags": false, + "showAttachments": false, + "hideUnresolved": false, + "showOrphans": true, + "collapse-color-groups": true, + "colorGroups": [], + "collapse-display": true, + "showArrow": false, + "textFadeMultiplier": 0, + "nodeSizeMultiplier": 1, + "lineSizeMultiplier": 1, + "collapse-forces": true, + "centerStrength": 0.518713248970312, + "repelStrength": 10, + "linkStrength": 1, + "linkDistance": 250, + "scale": 1, + "close": false +} \ No newline at end of file diff --git a/.obsidian/plugins/editing-toolbar/main.js b/.obsidian/plugins/editing-toolbar/main.js new file mode 100644 index 0000000..7389995 --- /dev/null +++ b/.obsidian/plugins/editing-toolbar/main.js @@ -0,0 +1,12 @@ +"use strict";var e=require("obsidian");function t(e,t,o,n){return new(o||(o=Promise))((function(i,a){function l(e){try{s(n.next(e))}catch(e){a(e)}}function r(e){try{s(n.throw(e))}catch(e){a(e)}}function s(e){var t;e.done?i(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(l,r)}s((n=n.apply(e,t||[])).next())}))}function o(e){return t(this,void 0,void 0,(function*(){return new Promise((t=>setTimeout(t,e)))}))}function n(e){let t=Date.now().toString(36);return t+=Math.random().toString(36).substr(3,e),t}function i(e,t,o){let n,i={index:-1,subindex:-1},a=e.settings.menuCommands;return o?a.forEach(((e,o)=>{if("SubmenuCommands"in e&&(n=e.SubmenuCommands.findIndex((e=>e.id==t.id)),n>=0))return i={index:o,subindex:n},i})):(n=a.findIndex((e=>e.id==t.id)),i={index:n,subindex:-1}),i}"function"==typeof SuppressedError&&SuppressedError;const a=["Custom","cMenuToolbar","cMenuToolbarSub","cMenuToolbarAdd","cMenuToolbarDelete","cMenuToolbarReload","codeblock-glyph","underline-glyph","superscript-glyph","subscript-glyph","bot-glyph","header-1","header-2","header-3","header-4","header-5","header-6","header-n","obsidian","accessibility","activity","air-vent","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","angry","annoyed","aperture","apple","archive-restore","archive","armchair","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","axis-3d","baby","backpack","baggage-claim","banana","banknote","bar-chart-2","bar-chart-3","bar-chart-4","bar-chart-horizontal","bar-chart","baseline","bath","battery-charging","battery-full","battery-low","battery-medium","battery","beaker","bed-double","bed-single","bed","beer","bell-minus","bell-off","bell-plus","bell-ring","bell","bike","binary","bitcoin","bluetooth-connected","bluetooth-off","bluetooth-searching","bluetooth","bold","bomb","bone","book-open","book","bookmark-minus","bookmark-plus","bookmark","bot","box-select","box","boxes","briefcase","brush","bug","building-2","building","bus","cake","calculator","calendar-check-2","calendar-check","calendar-clock","calendar-days","calendar-heart","calendar-minus","calendar-off","calendar-plus","calendar-range","calendar-search","calendar-x2","calendar-x","calendar","camera-off","camera","car","carrot","cast","check-circle-2","check-circle","check-square","check","chef-hat","cherry","chevron-down","chevron-first","chevron-last","chevron-left","chevron-right","chevron-up","chevrons-down-up","chevrons-down","chevrons-left-right","chevrons-left","chevrons-right-left","chevrons-right","chevrons-up-down","chevrons-up","chrome","cigarette-off","cigarette","circle-dot","circle-ellipsis","circle-slashed","circle","citrus","clapperboard","clipboard-check","clipboard-copy","clipboard-edit","clipboard-list","clipboard-signature","clipboard-type","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","clock","cloud-cog","cloud-drizzle","cloud-fog","cloud-hail","cloud-lightning","cloud-moon-rain","cloud-moon","cloud-off","cloud-rain-wind","cloud-rain","cloud-snow","cloud-sun-rain","cloud-sun","cloud","cloudy","clover","code-2","code","codepen","codesandbox","coffee","cog","coins","columns","command","compass","component","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","croissant","crop","cross","crosshair","crown","cup-soda","curly-braces","currency","database","delete","diamond","dice-1","dice-2","dice-3","dice-4","dice-5","dice-6","dices","diff","disc","divide-circle","divide-square","divide","dollar-sign","download-cloud","download","dribbble","droplet","droplets","drumstick","edit-2","edit-3","edit","egg-fried","egg","equal-not","equal","eraser","euro","expand","external-link","eye-off","eye","facebook","factory","fast-forward","feather","figma","file-archive","file-audio-2","file-audio","file-axis-3d","file-badge-2","file-badge","file-bar-chart-2","file-bar-chart","file-box","file-check-2","file-check","file-clock","file-code","file-cog-2","file-cog","file-diff","file-digit","file-down","file-edit","file-heart","file-image","file-input","file-json-2","file-json","file-key-2","file-key","file-line-chart","file-lock-2","file-lock","file-minus-2","file-minus","file-output","file-pie-chart","file-plus-2","file-plus","file-question","file-scan","file-search-2","file-search","file-signature","file-spreadsheet","file-symlink","file-terminal","file-text","file-type-2","file-type","file-up","file-video-2","file-video","file-volume-2","file-volume","file-warning","file-x2","file-x","file","files","film","filter","fingerprint","flag-off","flag-triangle-left","flag-triangle-right","flag","flame","flashlight-off","flashlight","flask-conical","flask-round","flip-horizontal-2","flip-horizontal","flip-vertical-2","flip-vertical","flower-2","flower","focus","folder-archive","folder-check","folder-clock","folder-closed","folder-cog-2","folder-cog","folder-down","folder-edit","folder-heart","folder-input","folder-key","folder-lock","folder-minus","folder-open","folder-output","folder-plus","folder-search-2","folder-search","folder-symlink","folder-tree","folder-up","folder-x","folder","folders","form-input","forward","frame","framer","frown","fuel","function-square","gamepad-2","gamepad","gauge","gavel","gem","ghost","gift","git-branch-plus","git-branch","git-commit","git-compare","git-fork","git-merge","git-pull-request-closed","git-pull-request-draft","git-pull-request","github","gitlab","glass-water","glasses","globe-2","globe","grab","graduation-cap","grape","grid","grip-horizontal","grip-vertical","hammer","hand-metal","hand","hard-drive","hard-hat","hash","haze","headphones","heart-crack","heart-handshake","heart-off","heart-pulse","heart","help-circle","hexagon","highlighter","history","home","hourglass","ice-cream","image-minus","image-off","image-plus","image","import","inbox","indent","indian-rupee","infinity","info","inspect","instagram","italic","japanese-yen","joystick","key","keyboard","lamp-ceiling","lamp-desk","lamp-floor","lamp-wall-down","lamp-wall-up","lamp","landmark","languages","laptop-2","laptop","lasso-select","lasso","laugh","layers","layout-dashboard","layout-grid","layout-list","layout-template","layout","leaf","library","life-buoy","lightbulb-off","lightbulb","line-chart","link-2off","link-2","link","linkedin","list-checks","list-end","list-minus","list-music","list-ordered","list-plus","list-start","list-video","list-x","list","loader-2","loader","locate-fixed","locate-off","locate","lock","log-in","log-out","luggage","magnet","mail-check","mail-minus","mail-open","mail-plus","mail-question","mail-search","mail-warning","mail-x","mail","mails","map-pin-off","map-pin","map","martini","maximize-2","maximize","medal","megaphone-off","megaphone","meh","menu","message-circle","message-square","mic-2","mic-off","mic","microscope","milestone","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-3d","move-diagonal-2","move-diagonal","move-horizontal","move-vertical","move","music-2","music-3","music-4","music","navigation-2off","navigation-2","navigation-off","navigation","network","newspaper","octagon","option","outdent","package-2","package-check","package-minus","package-open","package-plus","package-search","package-x","package","paint-bucket","paintbrush-2","paintbrush","palette","palmtree","paperclip","party-popper","pause-circle","pause-octagon","pause","pen-tool","pencil","percent","person-standing","phone-call","phone-forwarded","phone-incoming","phone-missed","phone-off","phone-outgoing","phone","pie-chart","piggy-bank","pin-off","pin","pipette","pizza","plane","play-circle","play","plug-zap","plus-circle","plus-square","plus","pocket","podcast","pointer","pound-sterling","power-off","power","printer","puzzle","qr-code","quote","radio-receiver","radio","recycle","redo-2","redo","refresh-ccw","refresh-cw","regex","repeat-1","repeat","reply-all","reply","rewind","rocket","rocking-chair","rotate-3d","rotate-ccw","rotate-cw","rss","ruler","russian-ruble","save","scale-3d","scale","scaling","scan-face","scan-line","scan","scissors","screen-share-off","screen-share","scroll","search","send","separator-horizontal","separator-vertical","server-cog","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","shrub","shuffle","sidebar-close","sidebar-open","sidebar","sigma","signal-high","signal-low","signal-medium","signal-zero","signal","siren","skip-back","skip-forward","skull","slack","slash","slice","sliders-horizontal","sliders","smartphone-charging","smartphone","smile-plus","smile","snowflake","sofa","sort-asc","sort-desc","speaker","sprout","square","star-half","star-off","star","stethoscope","sticker","sticky-note","stop-circle","stretch-horizontal","stretch-vertical","strikethrough","subscript","sun-dim","sun-medium","sun-moon","sun-snow","sun","sunrise","sunset","superscript","swiss-franc","switch-camera","sword","swords","syringe","table-2","table","tablet","tag","tags","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","toy-brick","train","trash-2","trash","tree-deciduous","tree-pine","trees","trello","trending-down","trending-up","triangle","trophy","truck","tv-2","tv","twitch","twitter","type","umbrella","underline","undo-2","undo","unlink-2","unlink","unlock","upload-cloud","upload","usb","user-check","user-cog","user-minus","user-plus","user-x","user","users","utensils-crossed","utensils","venetian-mask","verified","vibrate-off","vibrate","video-off","video","view","voicemail","volume-1","volume-2","volume-x","volume","wallet","wand-2","wand","watch","waves","webcam","webhook","wifi-off","wifi","wind","wine","wrap-text","wrench","x-circle","x-octagon","x-square","x","youtube","zap-off","zap","zoom-in","zoom-out","create-new","trash","search","right-triangle","document","folder","pencil","left-arrow","right-arrow","three-horizontal-bars","dot-network","audio-file","image-file","pdf-file","gear","documents","blocks","go-to-file","presentation","cross-in-box","microphone","microphone-filled","two-columns","link","popup-open","checkmark","hashtag","left-arrow-with-tail","right-arrow-with-tail","up-arrow-with-tail","down-arrow-with-tail","lines-of-text","vertical-three-dots","pin","magnifying-glass","info","horizontal-split","vertical-split","calendar-with-checkmark","folder-minus","sheets-in-box","up-and-down-arrows","broken-link","cross","any-key","reset","star","crossed-star","dice","filled-pin","enter","help","vault","open-vault","paper-plane","bullet-list","uppercase-lowercase-a","star-list","expand-vertically","languages","switch","pane-layout","install","sync","check-in-circle","sync-small","check-small","paused","forward-arrow","stacked-levels","bracket-glyph","note-glyph","tag-glyph","price-tag-glyph","heading-glyph","bold-glyph","italic-glyph","strikethrough-glyph","highlight-glyph","code-glyph","quote-glyph","link-glyph","bullet-list-glyph","number-list-glyph","checkbox-glyph","undo-glyph","redo-glyph","up-chevron-glyph","down-chevron-glyph","left-chevron-glyph","right-chevron-glyph","percent-sign-glyph","keyboard-glyph","double-up-arrow-glyph","double-down-arrow-glyph","image-glyph","wrench-screwdriver-glyph","clock","plus-with-circle","minus-with-circle","indent-glyph","unindent-glyph","fullscreen","exit-fullscreen","cloud","run-command","compress-glyph","enlarge-glyph","scissors-glyph","up-curly-arrow-glyph","down-curly-arrow-glyph","plus-minus-glyph","links-going-out","links-coming-in","add-note-glyph","duplicate-glyph","clock-glyph","calendar-glyph","command-glyph","dice-glyph","file-explorer-glyph","graph-glyph","import-glyph","navigate-glyph","open-elsewhere-glyph","presentation-glyph","paper-plane-glyph","question-mark-glyph","restore-file-glyph","search-glyph","star-glyph","play-audio-glyph","stop-audio-glyph","tomorrow-glyph","wand-glyph","workspace-glyph","yesterday-glyph","box-glyph","merge-files-glyph","merge-files","two-blank-pages","scissors","paste","paste-text","split","select-all-text","wand","github-glyph","reading-glasses","user-manual-filled","discord-filled","chat-bubbles-filled","experiment-filled","bracket-glyph","box-glyph","check-small","dice-glyph","dice","discord","right-triangle","heading-glyph","help","keyboard-toggle","broken-link","experiment","left-arrow","link","link-glyph","links-coming-in","links-going-out","open-vault","paused","question-mark-glyph","right-arrow","sidebar-left","sidebar-right","sheets-in-box","star-list","sync-small","tabs","uppercase-lowercase-a","vault","stack-horizontal","stack-vertical","stretch-horizontal","stretch-vertical","distribute-space-horizontal","distribute-space-vertical"];let l;const r=t=>{l=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;let o=l.getElementById("cMenuToolbarModalBar");o&&(o.style.visibility=0==t?"hidden":"visible")},s=t=>{l=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;let o=l.getElementById("cMenuToolbarModalBar");o&&("following"!=t.positionStyle||(o.style.visibility="hidden"),"fixed"==t.positionStyle&&o.setAttribute("style",`left: calc(50% - calc(${o.offsetWidth}px / 2)); bottom: ${t.cMenuBottomValue}em; grid-template-columns: ${"1fr ".repeat(t.cMenuNumRows)}`))};var c={"Editing Toolbar append method":"Editing Toolbar append method","Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.":"Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.","Editing Toolbar aesthetic":"Editing Toolbar aesthetic","Choose between a glass morphism ,tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.":"Choose between a glass morphism ,tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.","Editing Toolbar position":"Editing Toolbar position","Choose between fixed position or cursor following mode.":"Choose between fixed position , cursor following or Top mode .","Editing Toolbar columns":"Editing Toolbar columns","Choose the number of columns per row to display on Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.":"Choose the number of columns per row to display on Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.","Editing Toolbar refresh":"Editing Toolbar refresh","Editing Toolbar commands":"Editing Toolbar commands","Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.":"Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.","Format Brush Off!":"Format Brush Off!","Hide & Show":"Hide & Show","Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to cMenuToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the cMenuToolbar status bar menu.":"Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to cMenuToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the cMenuToolbar status bar menu.","Font-Color formatting brush ON!":"Font-Color formatting brush ON!",More:"More","Font Colors":"Font Colors","Format Brush":"Format Brush","Background color":"Background color",Refresh:"Refresh",Add:"Add",Delete:"Delete","Change Command name":"Change Command name","Add submenu":"Add submenu","add hr":"add hr","Enter the icon code, it looks like .... format":"Enter the icon code, it looks like .... format","Please enter a new name:":"Please enter a new name:","Drag the slider to move the position":"Drag the slider to move the position","Plugin Settings":"Plugin Settings","Background-color formatting brush ON!":"Background-color formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush","Clear formatting brush ON!":"Clear formatting brush ON!","Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush":"Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush","The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden":"The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden","Editing Toolbar Auto-hide":"Editing Toolbar Auto-hide","Custom Backgroud Color":"Custom Backgroud Color","Custom Font Color":"Custom Font Color","🎨 Set custom background":"🎨 Set custom background","🖌️ Set custom font color":"🖌️ Set custom font color","Click on the picker to adjust the colour":"Click on the picker to adjust the colour","Mobile enabled or not":"Mobile enabled or not","Whether to enable the plugin for the mobile client, the default is enabled.":"Whether to enable the plugin for the mobile client, the default is enabled.","Whether to enable on mobile devices with device width less than 768px, the default is disable.":"Whether to enable on mobile devices with device width less than 768px, the default is disable."};const d={ar:{},cs:{},da:{},de:{},en:c,"en-gb":{},es:{},fr:{},hi:{},id:{},it:{},ja:{},ko:{},nl:{},nn:{},pl:{},pt:{},"pt-br":{},ro:{},ru:{},tr:{},"zh-cn":{"Editing Toolbar append method":"工具栏的附加方法。","Choose where Editing Toolbar will append upon regeneration. To see the change, hit the refresh button below, or in the status bar menu.":"工具栏在Obsidian中的追加的位置,只对固定和跟随模式有效。如果你遇到工具栏显示问题,可以选择body试试。请点击下面或者状态栏菜单中的刷新按钮生效。","Editing Toolbar aesthetic":"工具栏样式","Choose between a glass morphism ,tiny and default style for Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.":"样式有毛玻璃,简约和默认风格选择。请点击下面或者状态栏菜单中的刷新按钮生效。","Editing Toolbar position":"工具栏位置","Choose between fixed position or cursor following mode.":"在固定位置,光标跟随模式或者置顶模式之间进行选择。","Editing Toolbar columns":"工具栏栏目数","Choose the number of columns per row to display on Editing Toolbar. To see the change, hit the refresh button below, or in the status bar menu.":"选择在Editing Toolbar上显示的每行的列数。","Editing Toolbar refresh":"刷新工具栏","Editing Toolbar commands":"在工具栏中添加命令","Add a command onto Editing Toolbar from Obsidian's commands library. To reorder the commands, drag and drop the command items. To delete them, use the delete buttom to the right of the command item. Editing Toolbar will not automaticaly refresh after reordering commands. Use the refresh button above.":"从Obsidian的命令库中添加一个命令到工具栏。要重新排列命令,可以拖放命令项。要删除它们,请使用命令项右边的删除按钮。图标选择Custom可以自定义图标","Format Brush Off!":"关闭格式刷!","Hide & Show":"隐藏 & 显示","Editing Toolbar will only refresh automatically after you have either added or deleted a command from it. To see UI changes to cMenuToolbar (above settings changes) use the refresh button. If you forget to refresh in settings, no worries. There is also a refresh button in the cMenuToolbar status bar menu.":"对外观的更改生效需要使用刷新按钮。如果你忘记在设置中刷新,在状态栏菜单中也有一个刷新按钮。","Font-Color formatting brush ON!":"字体颜色格式刷开启\n点击鼠标中键或者右键关闭格式刷",More:"更多","Font Colors":"字体颜色","Format Brush":"格式刷","Background color":"背景颜色",Refresh:"刷新",Add:"添加",Delete:"删除","Change Command name":"更改命令名称","Add submenu":"添加子菜单","add hr":"添加分割线","Enter the icon code, it looks like .... format":"输入图标代码,类似.... 格式","Please enter a new name:":"请输入新名称:","Drag the slider to move the position":"拖动滑块来移动位置","Plugin Settings":"插件设置","Background-color formatting brush ON!":"开启背景色格式刷","Clear formatting brush ON!":"清除格式刷已开启","Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush":"清除格式刷已开启\n点击鼠标中键或者右键关闭格式刷","The toolbar is displayed when the mouse moves over it, otherwise it is automatically hidden":"当鼠标移到工具栏上方时,工具栏显示,否则自动隐藏","Editing Toolbar Auto-hide":"工具栏是否自动隐藏","Custom Backgroud Color":"设置自定义背景色","Custom Font Color":"设置自定义字体颜色","🎨 Set custom background":"🎨 设置自定义背景","🖌️ Set custom font color":"🖌️ 设置自定义字体颜色","Click on the picker to adjust the colour":"点击选取器来调整颜色","Mobile enabled or not":"是否在移动端启用","Whether to enable on mobile devices with device width less than 768px, the default is disable.":"是否在设备宽度小于768的移动设备启用。默认不启用"},"zh-tw":{}}[e.moment.locale()];function u(e){return d&&d[e]||c[e]}class h extends e.FuzzySuggestModal{constructor(e,t,o=!1){super(e.app),this.plugin=e,this.command=t,this.issub=o,this.setPlaceholder("Choose an icon")}capitalJoin(e){return e.split(" ").map((e=>e[0].toUpperCase()+e.substring(1))).join(" ")}getItems(){return a}getItemText(e){return this.capitalJoin(e.replace("feather-","").replace("remix-","").replace("bx-","").replace(/([A-Z])/g," $1").trim().replace(/-/gi," "))}renderSuggestion(t,o){const n=createSpan({cls:"cMenuToolbarIconPick"});o.appendChild(n),e.setIcon(n,t.item),super.renderSuggestion(t,o)}onChooseItem(e){return t(this,void 0,void 0,(function*(){if("Custom"===e)new g(this.app,this.plugin,this.command,this.issub).open();else{if(this.command.icon){let t=i(this.plugin,this.command,this.issub);this.issub?this.plugin.settings.menuCommands[t.index].SubmenuCommands[t.subindex].icon=e:this.plugin.settings.menuCommands[t.index].icon=e}else this.command.icon=e,this.plugin.settings.menuCommands.push(this.command);yield this.plugin.saveSettings(),setTimeout((()=>{dispatchEvent(new Event("cMenuToolbar-NewCommand"))}),100),console.log(`%cCommand '${this.command.name}' was added to cMenuToolbar`,"color: Violet")}}))}}class p extends e.FuzzySuggestModal{constructor(e){super(e.app),this.plugin=e,this.app,this.setPlaceholder("Choose a command")}getItems(){return app.commands.listCommands()}getItemText(e){return e.name}onChooseItem(o){return t(this,void 0,void 0,(function*(){this.plugin.settings.menuCommands.findIndex((e=>e.id==o.id))>-1?new e.Notice("The command"+o.name+"already exists",3e3):o.icon?(this.plugin.settings.menuCommands.push(o),yield this.plugin.saveSettings(),setTimeout((()=>{dispatchEvent(new Event("cMenuToolbar-NewCommand"))}),100),console.log(`%cCommand '${o.name}' was added to cMenuToolbar`,"color: Violet")):new h(this.plugin,o,!1).open()}))}}class g extends e.Modal{constructor(e,t,o,n){super(t.app),this.plugin=t,this.item=o,this.issub=n,this.containerEl.addClass("cMenuToolbar-Modal"),this.containerEl.addClass("customicon")}onOpen(){var o;const{contentEl:n}=this;n.createEl("b",{text:u("Enter the icon code, it looks like .... format")});const a=new e.TextAreaComponent(n);a.inputEl.classList.add("wideInputPromptInputEl"),a.setPlaceholder("").setValue(null!==(o=this.item.icon)&&void 0!==o?o:"").onChange(e.debounce((e=>t(this,void 0,void 0,(function*(){this.item.icon=e;let t=i(this.plugin,this.item,this.issub);if(this.issub){let o=t.subindex;-1===o?this.plugin.settings.menuCommands[t.index].SubmenuCommands.push(this.item):this.plugin.settings.menuCommands[t.index].SubmenuCommands[o].icon=e}else{let e=t.index;-1===e?this.plugin.settings.menuCommands.push(this.item):this.plugin.settings.menuCommands[e].icon=this.item.icon}yield this.plugin.saveSettings()}))),100,!0)).inputEl.addEventListener("keydown",this.submitEnterCallback)}onClose(){const{contentEl:e}=this;e.empty(),setTimeout((()=>{dispatchEvent(new Event("cMenuToolbar-NewCommand"))}),100)}}class m extends e.Modal{constructor(e,t,o,n){super(t.app),this.plugin=t,this.item=o,this.issub=n,this.containerEl.addClass("cMenuToolbar-Modal"),this.containerEl.addClass("changename")}onOpen(){var o;const{contentEl:n}=this;n.createEl("b",{text:u("Please enter a new name:")});const a=new e.TextComponent(n);a.inputEl.classList.add("InputPromptInputEl"),a.setPlaceholder("").setValue(null!==(o=this.item.name)&&void 0!==o?o:"").onChange(e.debounce((e=>t(this,void 0,void 0,(function*(){let t=i(this.plugin,this.item,this.issub);if(this.item.name=e,this.issub){let o=t.subindex;-1===o?this.plugin.settings.menuCommands[t.index].SubmenuCommands.push(this.item):this.plugin.settings.menuCommands[t.index].SubmenuCommands[o].name=e}else{let e=t.index;-1===e?this.plugin.settings.menuCommands.push(this.item):this.plugin.settings.menuCommands[e].name=this.item.name}yield this.plugin.saveSettings()}))),100,!0)).inputEl.addEventListener("keydown",this.submitEnterCallback)}onClose(){const{contentEl:e}=this;e.empty(),setTimeout((()=>{dispatchEvent(new Event("cMenuToolbar-NewCommand"))}),100)}}class f extends e.Modal{constructor(e,t){super(t.app),this.plugin=t,this.containerEl.addClass("cMenuToolbar-Modal")}onOpen(){const{contentEl:o}=this;if(o.createEl("p",{text:u("Drag the slider to move the position")}),"top"==this.plugin.settings.positionStyle){let n=5*(this.plugin.settings.cMenuBottomValue-4.25);new e.SliderComponent(o).setLimits(0,80,.5).setValue(n).onChange(e.debounce((e=>t(this,void 0,void 0,(function*(){console.log(`%c${e}px`,"color: Violet"),this.plugin.settings.cMenuBottomValue=e/5+4.25,s(this.plugin.settings),yield this.plugin.saveSettings(),setTimeout((()=>{dispatchEvent(new Event("cMenuToolbar-NewCommand"))}),100)}))),100,!0)).setDynamicTooltip()}else new e.SliderComponent(o).setLimits(2,18,.25).setValue(this.plugin.settings.cMenuBottomValue).onChange(e.debounce((e=>t(this,void 0,void 0,(function*(){console.log(`%c${e}em`,"color: Violet"),this.plugin.settings.cMenuBottomValue=e,s(this.plugin.settings),yield this.plugin.saveSettings(),setTimeout((()=>{dispatchEvent(new Event("cMenuToolbar-NewCommand"))}),100)}))),100,!0)).setDynamicTooltip()}onClose(){const{contentEl:e}=this;e.empty()}}const b=["body","workspace"],v=["glass","default","tiny"],y=["fixed","following","top"],w={aestheticStyle:"default",positionStyle:"top",menuCommands:[{id:"editing-toolbar:editor-undo",name:"undo editor",icon:"undo-glyph"},{id:"editing-toolbar:editor-redo",name:"redo editor",icon:"redo-glyph"},{id:"editing-toolbar:format-eraser",name:"Clear text formatting",icon:''},{id:"editing-toolbar:header2-text",name:"Header 2",icon:"header-2"},{id:"editing-toolbar:header3-text",name:"Header 3",icon:"header-3"},{id:"SubmenuCommands-header",name:"submenu",icon:"header-n",SubmenuCommands:[{id:"editing-toolbar:header1-text",name:"Header 1",icon:"header-1"},{id:"editing-toolbar:header4-text",name:"Header 4",icon:"header-4"},{id:"editing-toolbar:header5-text",name:"Header 5",icon:"header-5"},{id:"editing-toolbar:header6-text",name:"Header 6",icon:"header-6"}]},{id:"editing-toolbar:editor:toggle-bold",name:"Toggle bold",icon:"bold-glyph"},{id:"editing-toolbar:editor:toggle-italics",name:"Toggle italics",icon:"italic-glyph"},{id:"editing-toolbar:editor:toggle-strikethrough",name:"Toggle strikethrough",icon:"strikethrough-glyph"},{id:"editing-toolbar:underline",name:"Toggle underline",icon:"underline-glyph"},{id:"editor:toggle-highlight",name:"==Toggle highlight ==",icon:"highlight-glyph"},{id:"SubmenuCommands-lucdf3en5",name:"submenu",icon:"edit",SubmenuCommands:[{id:"editing-toolbar:editor-copy",name:" copy ",icon:"lucide-copy"},{id:"editing-toolbar:editor-cut",name:" cut ",icon:"lucide-scissors"},{id:"editing-toolbar:editor-paste",name:"paste ",icon:"lucide-clipboard-type"},{id:"editing-toolbar:editor:swap-line-down",name:"swap line down",icon:"lucide-corner-right-down"},{id:"editing-toolbar:editor:swap-line-up",name:"swap line up",icon:"lucide-corner-right-up"}]},{id:"editing-toolbar:editor:attach-file",name:"upload attach file",icon:"lucide-paperclip"},{id:"editing-toolbar:editor:insert-table",name:"Toggle table",icon:"lucide-table"},{id:"editing-toolbar:editor:cycle-list-checklist",name:"Toggle cycle list checklist",icon:"check-circle"},{id:"SubmenuCommands-luc8efull",name:"submenu",icon:"message-square",SubmenuCommands:[{id:"editing-toolbar:editor:toggle-blockquote",name:"Toggle blockquote",icon:"lucide-text-quote"},{id:"editing-toolbar:editor:insert-callout",name:"Toggle Callout ",icon:"lucide-quote"}]},{id:"SubmenuCommands-mdcmder",name:"submenu",icon:'',SubmenuCommands:[{id:"editing-toolbar:superscript",name:"Toggle superscript",icon:"superscript-glyph"},{id:"editing-toolbar:subscript",name:"Toggle subscript",icon:"subscript-glyph"},{id:"editing-toolbar:editor:toggle-code",name:"inline code",icon:"code-glyph"},{id:"editing-toolbar:codeblock",name:"Toggle codeblock",icon:"codeblock-glyph"},{id:"editing-toolbar:editor:insert-wikilink",name:"insert wikilink [[]]",icon:''},{id:"editing-toolbar:editor:insert-embed",name:"insert embed ![[]]",icon:"note-glyph"},{id:"editing-toolbar:editor:insert-link",name:"insert link []()",icon:"link-glyph"},{id:"editing-toolbar:hrline",name:"Horizontal divider",icon:''},{id:"editing-toolbar:editor:toggle-inline-math",name:"Toggle inline math",icon:"lucide-sigma"},{id:"editing-toolbar:editor:insert-mathblock",name:"Toggle MathBlock",icon:"lucide-sigma-square"}]},{id:"SubmenuCommands-list",name:"submenu-list",icon:"bullet-list-glyph",SubmenuCommands:[{id:"editing-toolbar:editor:toggle-checklist-status",name:"checklist",icon:"checkbox-glyph"},{id:"editor:toggle-numbered-list",name:"numbered list",icon:''},{id:"editor:toggle-bullet-list",name:"bullet list",icon:''},{id:"editing-toolbar:undent-list",name:"unindent-list",icon:''},{id:"editing-toolbar:indent-list",name:"indent list",icon:''}]},{id:"SubmenuCommands-aligin",name:"submenu-aligin",icon:'',SubmenuCommands:[{id:"editing-toolbar:justify",name:'

',icon:''},{id:"editing-toolbar:left",name:'

',icon:''},{id:"editing-toolbar:center",name:"
",icon:''},{id:"editing-toolbar:right",name:'

',icon:''}]},{id:"editing-toolbar:change-font-color",name:"Change font color[html]",icon:''},{id:"editing-toolbar:change-background-color",name:"Change Backgroundcolor[html]",icon:''},{id:"editing-toolbar:fullscreen-focus",name:"Fullscreen focus mode",icon:"fullscreen"},{id:"editing-toolbar:workplace-fullscreen-focus",name:"workplace-Fullscreen ",icon:"exit-fullscreen"}],appendMethod:"workspace",shouldShowMenuOnSelect:!1,cMenuVisibility:!0,cMenuBottomValue:4.25,cMenuNumRows:12,cMenuWidth:610,cMenuFontColor:"#2DC26B",cMenuBackgroundColor:"#d3f8b6",autohide:!1,custom_bg1:"#FFB78B8C",custom_bg2:"#CDF4698C",custom_bg3:"#A0CCF68C",custom_bg4:"#F0A7D88C",custom_bg5:"#ADEFEF8C",custom_fc1:"#D83931",custom_fc2:"#DE7802",custom_fc3:"#245BDB",custom_fc4:"#6425D0",custom_fc5:"#646A73",isLoadOnMobile:!1};let C;function k(){C=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;const t=C.getElementById("cMenuToolbarModalBar");t&&t.remove();const o=function(){const t=[];t.push(app.workspace.rootSplit);const o=app.workspace.floatingSplit;return null==o||o.children.forEach((o=>{o instanceof e.WorkspaceWindow&&t.push(o)})),t}();o&&o.forEach((e=>{(null==e?void 0:e.containerEl)&&(e=>{let t=e.querySelectorAll("#cMenuToolbarModalBar"),o=e.querySelectorAll("#cMenuToolbarPopoverBar");t.forEach((e=>{e&&(e.firstChild&&e.removeChild(e.firstChild),e.remove())})),o.forEach((e=>{e&&(e.firstChild&&e.removeChild(e.firstChild),e.remove())}))})(null==e?void 0:e.containerEl)}))}function q(t,o){var n,i;C=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;let a="top"==o.positionStyle?null===(i=null===(n=t.workspace.activeLeaf)||void 0===n?void 0:n.view.containerEl)||void 0===i?void 0:i.querySelector("#cMenuToolbarModalBar"):C.getElementById("cMenuToolbarModalBar");return a||null}const T=(e,t)=>t.reduce(((e,t)=>e&&"undefined"!==e[t]?e[t]:void 0),e);function M(e,t){return e&&void 0!==e[1][0]?t+e.flat(2).join("+").replace("Mod","Ctrl")+t:t+"–"+t}function E(e,t,o=!0){let n=e.commands.findCommand(t),i=o?"*":"";if(n){let t=n.hotkeys?[[T(n.hotkeys,[0,"modifiers"])],[T(n.hotkeys,[0,"key"])]]:void 0,o=e.hotkeyManager.customKeys[n.id];var a=o?[[T(o,[0,"modifiers"])],[T(o,[0,"key"])]]:void 0;return a?M(a,i):M(t,"")}return"–"}function _(t){const o=t.workspace.getActiveViewOfType(e.ItemView);if("markdown"===(null==o?void 0:o.getViewType())||"thino_view"===(null==o?void 0:o.getViewType())){const e=t.workspace.activeLeaf;if(e){const t=e.view;if(t)return"source"===t.getMode()}}return!1}function S(e){return/<[^>]+>/g.test(e)}function x(t,o,n){C=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;let i=q(t,o.settings),a=null==i?void 0:i.querySelector("#"+n);if(a){let e=a.rows,i=e.length;for(let a=1;a{t.style.fill=e}))}else if("x-backgroundcolor-picker-table"==n){o.settings.cMenuBackgroundColor=e,A(t,e),C.querySelectorAll("#change-background-color-icon").forEach((t=>{t.style.fill=e}))}o.saveSettings()}}}}}function B(e,t){var o;const n=null===(o=e.workspace.activeLeaf.view)||void 0===o?void 0:o.editor;let i=n.getSelection(),a=/^\]*\>([^\<\>]+)\<\/font\>$/,l='$1';/\]*font\>/g.test(i)||(/\]*\>[^\<\>]+\<\/font\>/g.test(i)?a.test(i)?(i=i.replace(/|<\/font>/g,""),i=i.replace(a,l)):i=i.replace(/\]*?\>|\<\/font\>/g,""):(i=i.replace(/[^<]+<\/font>/g,""),i=i.replace(/^(.+)$/gm,l)),n.replaceSelection(i),n.exec("goRight"),e.commands.executeCommandById("editor:focus"))}function A(e,t){var o;const n=null===(o=e.workspace.activeLeaf.view)||void 0===o?void 0:o.editor;let i=n.getSelection(),a=/^\]+:[0-9a-zA-Z#]+[\"'][^\<\>]*\>([^\<\>]+)\<\/span\>$/,l='$1';/\]*span\>/g.test(i)||(i=/\]+:[0-9a-zA-Z#]+[\"'][^\<\>]*\>[^\<\>]+\<\/span\>/g.test(i)?a.test(i)?i.replace(a,l):i.replace(/\]+:[0-9a-zA-Z#]+[\"'][^\<\>]*\>|\<\/span\>/g,""):i.replace(/^(.+)$/gm,l),n.replaceSelection(i),n.exec("goRight"),e.commands.executeCommandById("editor:focus"))}const D=function(e){let t=e;if(/^(rgb|RGB)/.test(t)){let e=t.replace(/(?:\(|\)|rgb|RGB)*/g,"").split(","),o="#";for(let t=0;t*(\[[!\w]+\])?\s*)#+\s/;let r;const s=i.match(l);s&&(r=s[0].trim()),e==r||""==e?n=i.replace(l,"$1"):(n=i.replace(/^\s*(#*|\>|\-|\d+\.)\s*/m,""),n=e+" "+n),a=""!=n?o.getRange(o.getCursor(),{line:o.getCursor().line,ch:i.length}):o.getRange(o.getCursor(),{line:o.getCursor().line,ch:0}),o.setLine(o.getCursor().line,n),o.setCursor({line:o.getCursor().line,ch:Number(n.length-a.length)})}function I(t,o){var n;const i=null===(n=t.workspace.activeLeaf.view)||void 0===n?void 0:n.editor;let a=i.getSelection();if(null==a||""==a)L(o),o.setEN_Text_Format_Brush(!0),o.Temp_Notice?o.Temp_Notice.noticeEl.innerText!=u("Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush")&&(o.Temp_Notice=new e.Notice(u("Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush"),0)):o.Temp_Notice=new e.Notice(u("Clear formatting brush ON!\nClick the mouse middle or right key to close the formatting-brush"),0);else{let e=/(^#+\s|^#(?=\s)|^\>|^\- \[( |x)\]|^\+ |\<[^\<\>]+?\>|^1\. |^\s*\- |^\-+$|^\*+$)/gm;a=a.replace(e,""),a=a.replace(/^[ ]+|[ ]+$/gm,""),a=a.replace(/\!?\[\[([^\[\]\|]*\|)*([^\(\)\[\]]+)\]\]/g,"$2"),a=a.replace(/\!?\[+([^\[\]\(\)]+)\]+\(([^\(\)]+)\)/g,"$1"),a=a.replace(/`([^`]+)`/g,"$1"),a=a.replace(/_([^_]+)_/g,"$1"),a=a.replace(/==([^=]+)==/g,"$1"),a=a.replace(/\*\*\*([^\*]+)\*\*\*/g,"$1"),a=a.replace(/\*\*?([^\*]+)\*\*?/g,"$1"),a=a.replace(/~~([^~]+)~~/g,"$1"),i.replaceSelection(a),t.commands.executeCommandById("editor:focus")}}const O=(e,t)=>{var o,n,i,a,l;let r=q(e,t);if(_(e)){if(r){const s=null===(o=e.workspace.activeLeaf.view)||void 0===o?void 0:o.editor;if(r.style.visibility=s.somethingSelected()?"visible":"hidden",r.style.height="tiny"===t.aestheticStyle?"30px":"40px",r.addClass("cMenuToolbarFlex"),r.removeClass("cMenuToolbarGrid"),"visible"===r.style.visibility){const e=s.containerEl.getBoundingClientRect(),t=r.offsetWidth,o=r.offsetHeight,c=(e=>{var t,o,n;let i,a=e.getCursor("head");if(e.getCursor("head").ch!==e.getCursor("from").ch&&(a.ch=Math.max(0,a.ch-1)),e.cursorCoords)i=e.cursorCoords(!0,"window");else{if(!e.coordsAtPos)return;{const l=e.posToOffset(a);i=null!==(n=null===(o=(t=e.cm).coordsAtPos)||void 0===o?void 0:o.call(t,l))&&void 0!==n?n:e.coordsAtPos(l)}}return i})(s),d=s.getCursor("head").ch==s.getCursor("from").ch,u=12,h=(null!==(i=null===(n=C.getElementsByClassName("mod-left-split")[0])||void 0===n?void 0:n.clientWidth)&&void 0!==i?i:0)+(null!==(l=null===(a=C.getElementsByClassName("side-dock-ribbon mod-left")[0])||void 0===a?void 0:a.clientWidth)&&void 0!==l?l:0);let p=c.left-h;p+t+u>=e.right&&(p=Math.max(0,e.right-t-h-u));let g=0;d?(g=c.top-o-10,g<=e.top&&(g=e.top+o)):(g=c.top+25,g>=e.bottom-o&&(g=e.bottom-2*o)),r.style.left=p+"px",r.style.top=g+"px"}}}else r.style.visibility="hidden"};function F(t,o){let n=o.settings;C=e.requireApiVersion("0.15.0")?activeWindow.document:window.document,function(){const i=()=>{var i,a;let l=0,r=0,s=createEl("div");if(s)if("top"==n.positionStyle){let e=5*(n.cMenuBottomValue-4.25);s.setAttribute("style",`position: relative; grid-template-columns: repeat(auto-fit, minmax(28px, 1fr));top: ${e}px;`),s.className+=" top",n.autohide&&(s.className+=" autohide")}else s.setAttribute("style",`left: calc(50% - calc(${s.offsetWidth}px / 2)); bottom: ${n.cMenuBottomValue}em; grid-template-columns: ${"1fr ".repeat(n.cMenuNumRows)}`);s.setAttribute("id","cMenuToolbarModalBar");let c=createEl("div");if(c.addClass("cMenuToolbarpopover"),c.addClass("cMenuToolbarTinyAesthetic"),c.setAttribute("id","cMenuToolbarPopoverBar"),c.style.visibility="hidden",c.style.height="0","default"==n.aestheticStyle?(s.addClass("cMenuToolbarDefaultAesthetic"),s.removeClass("cMenuToolbarTinyAesthetic"),s.removeClass("cMenuToolbarGlassAesthetic")):"tiny"==n.aestheticStyle?(s.addClass("cMenuToolbarTinyAesthetic"),s.removeClass("cMenuToolbarDefaultAesthetic"),s.removeClass("cMenuToolbarGlassAesthetic")):(s.addClass("cMenuToolbarGlassAesthetic"),s.removeClass("cMenuToolbarTinyAesthetic"),s.removeClass("cMenuToolbarDefaultAesthetic")),"top"==n.positionStyle){let e=t.workspace.activeLeaf.view.containerEl;if(!(null==e?void 0:e.querySelector("#cMenuToolbarPopoverBar"))){const t=null==e?void 0:e.querySelector(".markdown-source-view");if(!t)return;t.insertAdjacentElement("afterbegin",c)}const o=null==e?void 0:e.querySelector(".markdown-source-view");if(!o)return;o.insertAdjacentElement("afterbegin",s),r=null==e?void 0:e.querySelector(".markdown-source-view").offsetWidth}else"body"==n.appendMethod?C.body.appendChild(s):"workspace"==n.appendMethod&&(null===(i=C.body)||void 0===i||i.querySelector(".mod-vertical.mod-root").insertAdjacentElement("afterbegin",s));let d=null===(a=t.workspace.activeLeaf.view.containerEl)||void 0===a?void 0:a.querySelector("#cMenuToolbarPopoverBar");n.menuCommands.forEach(((i,a)=>{let c;if("SubmenuCommands"in i){let u;l>=r-104&&r>100?(o.setIS_MORE_Button(!0),u=new e.ButtonComponent(d)):u=new e.ButtonComponent(s),u.setClass("cMenuToolbarCommandsubItem"+a),a>=n.cMenuNumRows?u.setClass("cMenuToolbarSecond"):"top"!=n.positionStyle&&u.buttonEl.setAttribute("aria-label-position","top"),S(i.icon)?u.buttonEl.innerHTML=i.icon:u.setIcon(i.icon),l+=28;let h=function(e){let t=createEl("div");return t.addClass(e),t}("subitem");h&&i.SubmenuCommands.forEach((o=>{let i=E(t,o.id);c="–"==i?o.name:o.name+"("+i+")";let l=new e.ButtonComponent(h).setTooltip(c).setClass("menu-item").onClick((()=>{t.commands.executeCommandById(o.id),0==n.cMenuVisibility||"following"==n.positionStyle?s.style.visibility="hidden":s.style.visibility="visible"}));a{t.commands.executeCommandById(i.id),0==n.cMenuVisibility||"following"==n.positionStyle?s.style.visibility="hidden":s.style.visibility="visible"})),S(i.icon)?a.buttonEl.innerHTML=i.icon:a.setIcon(i.icon),l+=26;let r=createEl("div");if(r.addClass("subitem"),r){r.innerHTML=function(e){return`
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Theme Colors
Standard Colors
Custom Font Colors
\n
\n
`}(o),a.buttonEl.insertAdjacentElement("afterbegin",r),x(t,o,"x-color-picker-table");let n=r.querySelector(".x-color-picker-wrapper");new e.ButtonComponent(n).setIcon("paintbrush").setTooltip(u("Format Brush")).onClick((()=>{L(o),o.setEN_FontColor_Format_Brush(!0),o.Temp_Notice=new e.Notice(u("Font-Color formatting brush ON!"),0)})),new e.ButtonComponent(n).setIcon("palette").setTooltip(u("Custom Font Color")).onClick((()=>{t.setting.open(),t.setting.openTabById("editing-toolbar"),setTimeout((()=>{var e;let o=t.setting.activeTab.containerEl.querySelector(".custom_font");o&&(null===(e=o.addClass)||void 0===e||e.call(o,"toolbar-cta"))}),200)}))}}else if("editing-toolbar:change-background-color"==i.id){let a=new e.ButtonComponent(s);a.setClass("cMenuToolbarCommandsubItem-font-color").setTooltip(u("Background color")).onClick((()=>{t.commands.executeCommandById(i.id),0==n.cMenuVisibility||"following"==n.positionStyle?s.style.visibility="hidden":s.style.visibility="visible"})),S(i.icon)?a.buttonEl.innerHTML=i.icon:a.setIcon(i.icon),l+=26;let r=createEl("div");if(r.addClass("subitem"),r){r.innerHTML=function(e){return`
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Translucent Colors
Highlighter Colors
Custom Colors
\n
\n
`}(o),a.buttonEl.insertAdjacentElement("afterbegin",r),x(t,o,"x-backgroundcolor-picker-table");let n=r.querySelector(".x-color-picker-wrapper");new e.ButtonComponent(n).setIcon("paintbrush").setTooltip(u("Format Brush")).onClick((()=>{L(o),o.setEN_BG_Format_Brush(!0),o.Temp_Notice=new e.Notice(u("Font-Color formatting brush ON!"),0)})),new e.ButtonComponent(n).setIcon("palette").setTooltip(u("Custom Backgroud Color")).onClick((()=>{t.setting.open(),t.setting.openTabById("editing-toolbar"),setTimeout((()=>{var e;let o=t.setting.activeTab.containerEl.querySelector(".custom_bg");o&&(null===(e=o.addClass)||void 0===e||e.call(o,"toolbar-cta"))}),200)}))}}else{let u;l>=r-104&&r>100?(o.setIS_MORE_Button(!0),u=new e.ButtonComponent(d)):u=new e.ButtonComponent(s);let h=E(t,i.id);c="–"==h?i.name:i.name+"("+h+")",u.setTooltip(c).onClick((()=>{t.commands.executeCommandById(i.id),0==n.cMenuVisibility||"following"==n.positionStyle?s.style.visibility="hidden":s.style.visibility="visible"})),u.setClass("cMenuToolbarCommandItem"),a>=n.cMenuNumRows?u.setClass("cMenuToolbarSecond"):"top"!=n.positionStyle&&u.buttonEl.setAttribute("aria-label-position","top"),"cMenuToolbar-Divider-Line"==i.id&&u.setClass("cMenuToolbar-Divider-Line"),S(i.icon)?u.buttonEl.innerHTML=i.icon:u.setIcon(i.icon),l+=26}})),function(t,o,n){const i=t.workspace.getActiveViewOfType(e.ItemView);if("markdown"===(null==i?void 0:i.getViewType())||"thino_view"===(null==i?void 0:i.getViewType())){let t=i.containerEl.querySelector("#cMenuToolbarPopoverBar");if(!o.IS_MORE_Button)return;let a=n.createEl("span");a.addClass("more-menu");let l=new e.ButtonComponent(a);l.setClass("cMenuToolbarCommandItem").setTooltip(u("More")).onClick((()=>{"hidden"==t.style.visibility?(t.style.visibility="visible",t.style.height="32px"):(t.style.visibility="hidden",t.style.height="0")})),l.buttonEl.innerHTML='',o.setIS_MORE_Button(!1)}}(t,o,s),Math.abs(o.settings.cMenuWidth-Number(l))>30&&(o.settings.cMenuWidth=Number(l),setTimeout((()=>{o.saveSettings()}),100))};if(!o.isLoadMobile())return;const a=t.workspace.getActiveViewOfType(e.ItemView);"markdown"!==(null==a?void 0:a.getViewType())&&"thino_view"!==(null==a?void 0:a.getViewType())||q(t,o.settings)||(i(),s(n),function(t,o){C=e.requireApiVersion("0.15.0")?activeWindow.document:window.document;let n=C.querySelectorAll("#change-font-color-icon");n&&n.forEach((e=>{e.style.fill=t}));let i=C.querySelectorAll("#change-background-color-icon");i&&i.forEach((e=>{e.style.fill=o}))} +/**! + * Sortable 1.15.2 + * @author RubaXa + * @author owenm + * @license MIT + */(n.cMenuFontColor,n.cMenuBackgroundColor))}()}function $(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,n)}return o}function z(e){for(var t=1;t=0||(i[o]=e[o]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}function Z(e){if("undefined"!=typeof window&&window.navigator)return!!navigator.userAgent.match(e)}var j=Z(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),W=Z(/Edge/i),X=Z(/firefox/i),Y=Z(/safari/i)&&!Z(/chrome/i)&&!Z(/android/i),G=Z(/iP(ad|od|hone)/i),U=Z(/chrome/i)&&Z(/android/i),K={capture:!1,passive:!1};function J(e,t,o){e.addEventListener(t,o,!j&&K)}function Q(e,t,o){e.removeEventListener(t,o,!j&&K)}function ee(e,t){if(t){if(">"===t[0]&&(t=t.substring(1)),e)try{if(e.matches)return e.matches(t);if(e.msMatchesSelector)return e.msMatchesSelector(t);if(e.webkitMatchesSelector)return e.webkitMatchesSelector(t)}catch(e){return!1}return!1}}function te(e){return e.host&&e!==document&&e.host.nodeType?e.host:e.parentNode}function oe(e,t,o,n){if(e){o=o||document;do{if(null!=t&&(">"===t[0]?e.parentNode===o&&ee(e,t):ee(e,t))||n&&e===o)return e;if(e===o)break}while(e=te(e))}return null}var ne,ie=/\s+/g;function ae(e,t,o){if(e&&t)if(e.classList)e.classList[o?"add":"remove"](t);else{var n=(" "+e.className+" ").replace(ie," ").replace(" "+t+" "," ");e.className=(n+(o?" "+t:"")).replace(ie," ")}}function le(e,t,o){var n=e&&e.style;if(n){if(void 0===o)return document.defaultView&&document.defaultView.getComputedStyle?o=document.defaultView.getComputedStyle(e,""):e.currentStyle&&(o=e.currentStyle),void 0===t?o:o[t];t in n||-1!==t.indexOf("webkit")||(t="-webkit-"+t),n[t]=o+("string"==typeof o?"":"px")}}function re(e,t){var o="";if("string"==typeof e)o=e;else do{var n=le(e,"transform");n&&"none"!==n&&(o=n+" "+o)}while(!t&&(e=e.parentNode));var i=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return i&&new i(o)}function se(e,t,o){if(e){var n=e.getElementsByTagName(t),i=0,a=n.length;if(o)for(;i=a:i<=a))return n;if(n===ce())break;n=fe(n,!1)}return!1}function he(e,t,o,n){for(var i=0,a=0,l=e.children;a2&&void 0!==arguments[2]?arguments[2]:{},n=o.evt,i=R(o,_e);Ee.pluginEvent.bind(wt)(e,t,z({dragEl:Be,parentEl:Ae,ghostEl:De,rootEl:Le,nextEl:Ne,lastDownEl:Ie,cloneEl:Oe,cloneHidden:Fe,dragStarted:Ue,putSortable:Re,activeSortable:wt.active,originalEvent:n,oldIndex:$e,oldDraggableIndex:Ve,newIndex:ze,newDraggableIndex:Pe,hideGhostForTarget:ft,unhideGhostForTarget:bt,cloneNowHidden:function(){Fe=!0},cloneNowShown:function(){Fe=!1},dispatchSortableEvent:function(e){xe({sortable:t,name:e,originalEvent:n})}},i))};function xe(e){!function(e){var t=e.sortable,o=e.rootEl,n=e.name,i=e.targetEl,a=e.cloneEl,l=e.toEl,r=e.fromEl,s=e.oldIndex,c=e.newIndex,d=e.oldDraggableIndex,u=e.newDraggableIndex,h=e.originalEvent,p=e.putSortable,g=e.extraEventProperties;if(t=t||o&&o[ke]){var m,f=t.options,b="on"+n.charAt(0).toUpperCase()+n.substr(1);!window.CustomEvent||j||W?(m=document.createEvent("Event")).initEvent(n,!0,!0):m=new CustomEvent(n,{bubbles:!0,cancelable:!0}),m.to=l||o,m.from=r||o,m.item=i||o,m.clone=a,m.oldIndex=s,m.newIndex=c,m.oldDraggableIndex=d,m.newDraggableIndex=u,m.originalEvent=h,m.pullMode=p?p.lastPutMode:void 0;var v=z(z({},g),Ee.getEventProperties(n,t));for(var y in v)m[y]=v[y];o&&o.dispatchEvent(m),f[b]&&f[b].call(t,m)}}(z({putSortable:Re,cloneEl:Oe,targetEl:Be,rootEl:Le,oldIndex:$e,oldDraggableIndex:Ve,newIndex:ze,newDraggableIndex:Pe},e))}var Be,Ae,De,Le,Ne,Ie,Oe,Fe,$e,ze,Ve,Pe,He,Re,Ze,je,We,Xe,Ye,Ge,Ue,Ke,Je,Qe,et,tt=!1,ot=!1,nt=[],it=!1,at=!1,lt=[],rt=!1,st=[],ct="undefined"!=typeof document,dt=G,ut=W||j?"cssFloat":"float",ht=ct&&!U&&!G&&"draggable"in document.createElement("div"),pt=function(){if(ct){if(j)return!1;var e=document.createElement("x");return e.style.cssText="pointer-events:auto","auto"===e.style.pointerEvents}}(),gt=function(e,t){var o=le(e),n=parseInt(o.width)-parseInt(o.paddingLeft)-parseInt(o.paddingRight)-parseInt(o.borderLeftWidth)-parseInt(o.borderRightWidth),i=he(e,0,t),a=he(e,1,t),l=i&&le(i),r=a&&le(a),s=l&&parseInt(l.marginLeft)+parseInt(l.marginRight)+de(i).width,c=r&&parseInt(r.marginLeft)+parseInt(r.marginRight)+de(a).width;if("flex"===o.display)return"column"===o.flexDirection||"column-reverse"===o.flexDirection?"vertical":"horizontal";if("grid"===o.display)return o.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(i&&l.float&&"none"!==l.float){var d="left"===l.float?"left":"right";return!a||"both"!==r.clear&&r.clear!==d?"horizontal":"vertical"}return i&&("block"===l.display||"flex"===l.display||"table"===l.display||"grid"===l.display||s>=n&&"none"===o[ut]||a&&"none"===o[ut]&&s+c>n)?"vertical":"horizontal"},mt=function(e){function t(e,o){return function(n,i,a,l){var r=n.options.group.name&&i.options.group.name&&n.options.group.name===i.options.group.name;if(null==e&&(o||r))return!0;if(null==e||!1===e)return!1;if(o&&"clone"===e)return e;if("function"==typeof e)return t(e(n,i,a,l),o)(n,i,a,l);var s=(o?n:i).options.group.name;return!0===e||"string"==typeof e&&e===s||e.join&&e.indexOf(s)>-1}}var o={},n=e.group;n&&"object"==V(n)||(n={name:n}),o.name=n.name,o.checkPull=t(n.pull,!0),o.checkPut=t(n.put),o.revertClone=n.revertClone,e.group=o},ft=function(){!pt&&De&&le(De,"display","none")},bt=function(){!pt&&De&&le(De,"display","")};ct&&!U&&document.addEventListener("click",(function(e){if(ot)return e.preventDefault(),e.stopPropagation&&e.stopPropagation(),e.stopImmediatePropagation&&e.stopImmediatePropagation(),ot=!1,!1}),!0);var vt=function(e){if(Be){e=e.touches?e.touches[0]:e;var t=(i=e.clientX,a=e.clientY,nt.some((function(e){var t=e[ke].options.emptyInsertThreshold;if(t&&!pe(e)){var o=de(e),n=i>=o.left-t&&i<=o.right+t,r=a>=o.top-t&&a<=o.bottom+t;return n&&r?l=e:void 0}})),l);if(t){var o={};for(var n in e)e.hasOwnProperty(n)&&(o[n]=e[n]);o.target=o.rootEl=t,o.preventDefault=void 0,o.stopPropagation=void 0,t[ke]._onDragOver(o)}}var i,a,l},yt=function(e){Be&&Be.parentNode[ke]._isOutsideThisEl(e.target)};function wt(e,t){if(!e||!e.nodeType||1!==e.nodeType)throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(e));this.el=e,this.options=t=H({},t),e[ke]=this;var o={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(e.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return gt(e,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(e,t){e.setData("Text",t.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==wt.supportPointer&&"PointerEvent"in window&&!Y,emptyInsertThreshold:5};for(var n in Ee.initializePlugins(this,e,o),o)!(n in t)&&(t[n]=o[n]);for(var i in mt(t),this)"_"===i.charAt(0)&&"function"==typeof this[i]&&(this[i]=this[i].bind(this));this.nativeDraggable=!t.forceFallback&&ht,this.nativeDraggable&&(this.options.touchStartThreshold=1),t.supportPointer?J(e,"pointerdown",this._onTapStart):(J(e,"mousedown",this._onTapStart),J(e,"touchstart",this._onTapStart)),this.nativeDraggable&&(J(e,"dragover",this),J(e,"dragenter",this)),nt.push(this.el),t.store&&t.store.get&&this.sort(t.store.get(this)||[]),H(this,qe())}function Ct(e,t,o,n,i,a,l,r){var s,c,d=e[ke],u=d.options.onMove;return!window.CustomEvent||j||W?(s=document.createEvent("Event")).initEvent("move",!0,!0):s=new CustomEvent("move",{bubbles:!0,cancelable:!0}),s.to=t,s.from=e,s.dragged=o,s.draggedRect=n,s.related=i||t,s.relatedRect=a||de(t),s.willInsertAfter=r,s.originalEvent=l,e.dispatchEvent(s),u&&(c=u.call(d,s,l)),c}function kt(e){e.draggable=!1}function qt(){rt=!1}function Tt(e){for(var t=e.tagName+e.className+e.src+e.href+e.textContent,o=t.length,n=0;o--;)n+=t.charCodeAt(o);return n.toString(36)}function Mt(e){return setTimeout(e,0)}function Et(e){return clearTimeout(e)}wt.prototype={constructor:wt,_isOutsideThisEl:function(e){this.el.contains(e)||e===this.el||(Ke=null)},_getDirection:function(e,t){return"function"==typeof this.options.direction?this.options.direction.call(this,e,t,Be):this.options.direction},_onTapStart:function(e){if(e.cancelable){var t=this,o=this.el,n=this.options,i=n.preventOnFilter,a=e.type,l=e.touches&&e.touches[0]||e.pointerType&&"touch"===e.pointerType&&e,r=(l||e).target,s=e.target.shadowRoot&&(e.path&&e.path[0]||e.composedPath&&e.composedPath()[0])||r,c=n.filter;if(function(e){st.length=0;var t=e.getElementsByTagName("input"),o=t.length;for(;o--;){var n=t[o];n.checked&&st.push(n)}}(o),!Be&&!(/mousedown|pointerdown/.test(a)&&0!==e.button||n.disabled)&&!s.isContentEditable&&(this.nativeDraggable||!Y||!r||"SELECT"!==r.tagName.toUpperCase())&&!((r=oe(r,n.draggable,o,!1))&&r.animated||Ie===r)){if($e=ge(r),Ve=ge(r,n.draggable),"function"==typeof c){if(c.call(this,e,r,this))return xe({sortable:t,rootEl:s,name:"filter",targetEl:r,toEl:o,fromEl:o}),Se("filter",t,{evt:e}),void(i&&e.cancelable&&e.preventDefault())}else if(c&&(c=c.split(",").some((function(n){if(n=oe(s,n.trim(),o,!1))return xe({sortable:t,rootEl:n,name:"filter",targetEl:r,fromEl:o,toEl:o}),Se("filter",t,{evt:e}),!0}))))return void(i&&e.cancelable&&e.preventDefault());n.handle&&!oe(s,n.handle,o,!1)||this._prepareDragStart(e,l,r)}}},_prepareDragStart:function(e,t,o){var n,i=this,a=i.el,l=i.options,r=a.ownerDocument;if(o&&!Be&&o.parentNode===a){var s=de(o);if(Le=a,Ae=(Be=o).parentNode,Ne=Be.nextSibling,Ie=o,He=l.group,wt.dragged=Be,Ze={target:Be,clientX:(t||e).clientX,clientY:(t||e).clientY},Ye=Ze.clientX-s.left,Ge=Ze.clientY-s.top,this._lastX=(t||e).clientX,this._lastY=(t||e).clientY,Be.style["will-change"]="all",n=function(){Se("delayEnded",i,{evt:e}),wt.eventCanceled?i._onDrop():(i._disableDelayedDragEvents(),!X&&i.nativeDraggable&&(Be.draggable=!0),i._triggerDragStart(e,t),xe({sortable:i,name:"choose",originalEvent:e}),ae(Be,l.chosenClass,!0))},l.ignore.split(",").forEach((function(e){se(Be,e.trim(),kt)})),J(r,"dragover",vt),J(r,"mousemove",vt),J(r,"touchmove",vt),J(r,"mouseup",i._onDrop),J(r,"touchend",i._onDrop),J(r,"touchcancel",i._onDrop),X&&this.nativeDraggable&&(this.options.touchStartThreshold=4,Be.draggable=!0),Se("delayStart",this,{evt:e}),!l.delay||l.delayOnTouchOnly&&!t||this.nativeDraggable&&(W||j))n();else{if(wt.eventCanceled)return void this._onDrop();J(r,"mouseup",i._disableDelayedDrag),J(r,"touchend",i._disableDelayedDrag),J(r,"touchcancel",i._disableDelayedDrag),J(r,"mousemove",i._delayedDragTouchMoveHandler),J(r,"touchmove",i._delayedDragTouchMoveHandler),l.supportPointer&&J(r,"pointermove",i._delayedDragTouchMoveHandler),i._dragStartTimer=setTimeout(n,l.delay)}}},_delayedDragTouchMoveHandler:function(e){var t=e.touches?e.touches[0]:e;Math.max(Math.abs(t.clientX-this._lastX),Math.abs(t.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){Be&&kt(Be),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var e=this.el.ownerDocument;Q(e,"mouseup",this._disableDelayedDrag),Q(e,"touchend",this._disableDelayedDrag),Q(e,"touchcancel",this._disableDelayedDrag),Q(e,"mousemove",this._delayedDragTouchMoveHandler),Q(e,"touchmove",this._delayedDragTouchMoveHandler),Q(e,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,t){t=t||"touch"==e.pointerType&&e,!this.nativeDraggable||t?this.options.supportPointer?J(document,"pointermove",this._onTouchMove):J(document,t?"touchmove":"mousemove",this._onTouchMove):(J(Be,"dragend",this),J(Le,"dragstart",this._onDragStart));try{document.selection?Mt((function(){document.selection.empty()})):window.getSelection().removeAllRanges()}catch(e){}},_dragStarted:function(e,t){if(tt=!1,Le&&Be){Se("dragStarted",this,{evt:t}),this.nativeDraggable&&J(document,"dragover",yt);var o=this.options;!e&&ae(Be,o.dragClass,!1),ae(Be,o.ghostClass,!0),wt.active=this,e&&this._appendGhost(),xe({sortable:this,name:"start",originalEvent:t})}else this._nulling()},_emulateDragOver:function(){if(je){this._lastX=je.clientX,this._lastY=je.clientY,ft();for(var e=document.elementFromPoint(je.clientX,je.clientY),t=e;e&&e.shadowRoot&&(e=e.shadowRoot.elementFromPoint(je.clientX,je.clientY))!==t;)t=e;if(Be.parentNode[ke]._isOutsideThisEl(e),t)do{if(t[ke]){if(t[ke]._onDragOver({clientX:je.clientX,clientY:je.clientY,target:e,rootEl:t})&&!this.options.dragoverBubble)break}e=t}while(t=t.parentNode);bt()}},_onTouchMove:function(e){if(Ze){var t=this.options,o=t.fallbackTolerance,n=t.fallbackOffset,i=e.touches?e.touches[0]:e,a=De&&re(De,!0),l=De&&a&&a.a,r=De&&a&&a.d,s=dt&&et&&me(et),c=(i.clientX-Ze.clientX+n.x)/(l||1)+(s?s[0]-lt[0]:0)/(l||1),d=(i.clientY-Ze.clientY+n.y)/(r||1)+(s?s[1]-lt[1]:0)/(r||1);if(!wt.active&&!tt){if(o&&Math.max(Math.abs(i.clientX-this._lastX),Math.abs(i.clientY-this._lastY))i.right+a||e.clientY>n.bottom&&e.clientX>n.left:e.clientY>i.bottom+a||e.clientX>n.right&&e.clientY>n.top}(e,i,this)&&!m.animated){if(m===Be)return A(!1);if(m&&a===e.target&&(l=m),l&&(o=de(l)),!1!==Ct(Le,a,Be,t,l,o,e,!!l))return B(),m&&m.nextSibling?a.insertBefore(Be,m.nextSibling):a.appendChild(Be),Ae=a,D(),A(!0)}else if(m&&function(e,t,o){var n=de(he(o.el,0,o.options,!0)),i=Ce(o.el,o.options,De),a=10;return t?e.clientXd+c*a/2:su-Qe)return-Je}else if(s>d+c*(1-i)/2&&su-c*a/2))return s>d+c/2?1:-1;return 0}(e,l,o,i,C?1:r.swapThreshold,null==r.invertedSwapThreshold?r.swapThreshold:r.invertedSwapThreshold,at,Ke===l),0!==b){var M=ge(Be);do{M-=b,y=Ae.children[M]}while(y&&("none"===le(y,"display")||y===De))}if(0===b||y===l)return A(!1);Ke=l,Je=b;var E=l.nextElementSibling,_=!1,S=Ct(Le,a,Be,t,l,o,e,_=1===b);if(!1!==S)return 1!==S&&-1!==S||(_=1===S),rt=!0,setTimeout(qt,30),B(),_&&!E?a.appendChild(Be):l.parentNode.insertBefore(Be,_?E:l),q&&ye(q,0,T-q.scrollTop),Ae=Be.parentNode,void 0===v||at||(Qe=Math.abs(v-de(l)[k])),D(),A(!0)}if(a.contains(Be))return A(!1)}return!1}function x(r,s){Se(r,p,z({evt:e,isOwner:d,axis:i?"vertical":"horizontal",revert:n,dragRect:t,targetRect:o,canSort:u,fromSortable:h,target:l,completed:A,onMove:function(o,n){return Ct(Le,a,Be,t,o,de(o),e,n)},changed:D},s))}function B(){x("dragOverAnimationCapture"),p.captureAnimationState(),p!==h&&h.captureAnimationState()}function A(t){return x("dragOverCompleted",{insertion:t}),t&&(d?c._hideClone():c._showClone(p),p!==h&&(ae(Be,Re?Re.options.ghostClass:c.options.ghostClass,!1),ae(Be,r.ghostClass,!0)),Re!==p&&p!==wt.active?Re=p:p===wt.active&&Re&&(Re=null),h===p&&(p._ignoreWhileAnimating=l),p.animateAll((function(){x("dragOverAnimationComplete"),p._ignoreWhileAnimating=null})),p!==h&&(h.animateAll(),h._ignoreWhileAnimating=null)),(l===Be&&!Be.animated||l===a&&!l.animated)&&(Ke=null),r.dragoverBubble||e.rootEl||l===document||(Be.parentNode[ke]._isOutsideThisEl(e.target),!t&&vt(e)),!r.dragoverBubble&&e.stopPropagation&&e.stopPropagation(),g=!0}function D(){ze=ge(Be),Pe=ge(Be,r.draggable),xe({sortable:p,name:"change",toEl:a,newIndex:ze,newDraggableIndex:Pe,originalEvent:e})}},_ignoreWhileAnimating:null,_offMoveEvents:function(){Q(document,"mousemove",this._onTouchMove),Q(document,"touchmove",this._onTouchMove),Q(document,"pointermove",this._onTouchMove),Q(document,"dragover",vt),Q(document,"mousemove",vt),Q(document,"touchmove",vt)},_offUpEvents:function(){var e=this.el.ownerDocument;Q(e,"mouseup",this._onDrop),Q(e,"touchend",this._onDrop),Q(e,"pointerup",this._onDrop),Q(e,"touchcancel",this._onDrop),Q(document,"selectstart",this)},_onDrop:function(e){var t=this.el,o=this.options;ze=ge(Be),Pe=ge(Be,o.draggable),Se("drop",this,{evt:e}),Ae=Be&&Be.parentNode,ze=ge(Be),Pe=ge(Be,o.draggable),wt.eventCanceled||(tt=!1,at=!1,it=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),Et(this.cloneId),Et(this._dragStartId),this.nativeDraggable&&(Q(document,"drop",this),Q(t,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),Y&&le(document.body,"user-select",""),le(Be,"transform",""),e&&(Ue&&(e.cancelable&&e.preventDefault(),!o.dropBubble&&e.stopPropagation()),De&&De.parentNode&&De.parentNode.removeChild(De),(Le===Ae||Re&&"clone"!==Re.lastPutMode)&&Oe&&Oe.parentNode&&Oe.parentNode.removeChild(Oe),Be&&(this.nativeDraggable&&Q(Be,"dragend",this),kt(Be),Be.style["will-change"]="",Ue&&!tt&&ae(Be,Re?Re.options.ghostClass:this.options.ghostClass,!1),ae(Be,this.options.chosenClass,!1),xe({sortable:this,name:"unchoose",toEl:Ae,newIndex:null,newDraggableIndex:null,originalEvent:e}),Le!==Ae?(ze>=0&&(xe({rootEl:Ae,name:"add",toEl:Ae,fromEl:Le,originalEvent:e}),xe({sortable:this,name:"remove",toEl:Ae,originalEvent:e}),xe({rootEl:Ae,name:"sort",toEl:Ae,fromEl:Le,originalEvent:e}),xe({sortable:this,name:"sort",toEl:Ae,originalEvent:e})),Re&&Re.save()):ze!==$e&&ze>=0&&(xe({sortable:this,name:"update",toEl:Ae,originalEvent:e}),xe({sortable:this,name:"sort",toEl:Ae,originalEvent:e})),wt.active&&(null!=ze&&-1!==ze||(ze=$e,Pe=Ve),xe({sortable:this,name:"end",toEl:Ae,originalEvent:e}),this.save())))),this._nulling()},_nulling:function(){Se("nulling",this),Le=Be=Ae=De=Ne=Oe=Ie=Fe=Ze=je=Ue=ze=Pe=$e=Ve=Ke=Je=Re=He=wt.dragged=wt.ghost=wt.clone=wt.active=null,st.forEach((function(e){e.checked=!0})),st.length=We=Xe=0},handleEvent:function(e){switch(e.type){case"drop":case"dragend":this._onDrop(e);break;case"dragenter":case"dragover":Be&&(this._onDragOver(e),function(e){e.dataTransfer&&(e.dataTransfer.dropEffect="move");e.cancelable&&e.preventDefault()}(e));break;case"selectstart":e.preventDefault()}},toArray:function(){for(var e,t=[],o=this.el.children,n=0,i=o.length,a=this.options;n(()=>{var e={d:(t,o)=>{for(var n in o)e.o(o,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:o[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.d(t,{default:()=>E});var o={};function n(e,t,o,n,i={}){t instanceof HTMLCollection||t instanceof NodeList?t=Array.from(t):Array.isArray(t)||(t=[t]),Array.isArray(o)||(o=[o]);for(const a of t)for(const t of o)a[e](t,n,{capture:!1,...i});return Array.prototype.slice.call(arguments,1)}e.r(o),e.d(o,{adjustableInputNumbers:()=>d,createElementFromString:()=>l,createFromTemplate:()=>r,eventPath:()=>s,off:()=>a,on:()=>i,resolveElement:()=>c});const i=n.bind(null,"addEventListener"),a=n.bind(null,"removeEventListener");function l(e){const t=document.createElement("div");return t.innerHTML=e.trim(),t.firstElementChild}function r(e){const t=(e,t)=>{const o=e.getAttribute(t);return e.removeAttribute(t),o},o=(e,n={})=>{const i=t(e,":obj"),a=t(e,":ref"),l=i?n[i]={}:n;a&&(n[a]=e);for(const n of Array.from(e.children)){const e=t(n,":arr"),i=o(n,e?{}:l);e&&(l[e]||(l[e]=[])).push(Object.keys(i).length?i:n)}return n};return o(l(e))}function s(e){let t=e.path||e.composedPath&&e.composedPath();if(t)return t;let o=e.target.parentElement;for(t=[e.target,o];o=o.parentElement;)t.push(o);return t.push(document,window),t}function c(e){return e instanceof Element?e:"string"==typeof e?e.split(/>>/g).reduce(((e,t,o,n)=>(e=e.querySelector(t),oe)){function o(o){const n=[.001,.01,.1][Number(o.shiftKey||2*o.ctrlKey)]*(o.deltaY<0?1:-1);let i=0,a=e.selectionStart;e.value=e.value.replace(/[\d.]+/g,((e,o)=>o<=a&&o+e.length>=a?(a=o,t(Number(e),n,i)):(i++,e))),e.focus(),e.setSelectionRange(a,a),o.preventDefault(),e.dispatchEvent(new Event("input"))}i(e,"focus",(()=>i(window,"wheel",o,{passive:!1}))),i(e,"blur",(()=>a(window,"wheel",o)))}const{min:u,max:h,floor:p,round:g}=Math;function m(e,t,o){t/=100,o/=100;const n=p(e=e/360*6),i=e-n,a=o*(1-t),l=o*(1-i*t),r=o*(1-(1-i)*t),s=n%6;return[255*[o,l,a,a,r,o][s],255*[r,o,o,l,a,a][s],255*[a,a,r,o,o,l][s]]}function f(e,t,o){const n=(2-(t/=100))*(o/=100)/2;return 0!==n&&(t=1===n?0:n<.5?t*o/(2*n):t*o/(2-2*n)),[e,100*t,100*n]}function b(e,t,o){const n=u(e/=255,t/=255,o/=255),i=h(e,t,o),a=i-n;let l,r;if(0===a)l=r=0;else{r=a/i;const n=((i-e)/6+a/2)/a,s=((i-t)/6+a/2)/a,c=((i-o)/6+a/2)/a;e===i?l=c-s:t===i?l=1/3+n-c:o===i&&(l=2/3+s-n),l<0?l+=1:l>1&&(l-=1)}return[360*l,100*r,100*i]}function v(e,t,o,n){return t/=100,o/=100,[...b(255*(1-u(1,(e/=100)*(1-(n/=100))+n)),255*(1-u(1,t*(1-n)+n)),255*(1-u(1,o*(1-n)+n)))]}function y(e,t,o){t/=100;const n=2*(t*=(o/=100)<.5?o:1-o)/(o+t)*100,i=100*(o+t);return[e,isNaN(n)?0:n,i]}function w(e){return b(...e.match(/.{2}/g).map((e=>parseInt(e,16))))}function C(e=0,t=0,o=0,n=1){const i=(e,t)=>(o=-1)=>t(~o?e.map((e=>Number(e.toFixed(o)))):e),a={h:e,s:t,v:o,a:n,toHSVA(){const e=[a.h,a.s,a.v,a.a];return e.toString=i(e,(e=>`hsva(${e[0]}, ${e[1]}%, ${e[2]}%, ${a.a})`)),e},toHSLA(){const e=[...f(a.h,a.s,a.v),a.a];return e.toString=i(e,(e=>`hsla(${e[0]}, ${e[1]}%, ${e[2]}%, ${a.a})`)),e},toRGBA(){const e=[...m(a.h,a.s,a.v),a.a];return e.toString=i(e,(e=>`rgba(${e[0]}, ${e[1]}, ${e[2]}, ${a.a})`)),e},toCMYK(){const e=function(e,t,o){const n=m(e,t,o),i=n[0]/255,a=n[1]/255,l=n[2]/255,r=u(1-i,1-a,1-l);return[100*(1===r?0:(1-i-r)/(1-r)),100*(1===r?0:(1-a-r)/(1-r)),100*(1===r?0:(1-l-r)/(1-r)),100*r]}(a.h,a.s,a.v);return e.toString=i(e,(e=>`cmyk(${e[0]}%, ${e[1]}%, ${e[2]}%, ${e[3]}%)`)),e},toHEXA(){const e=function(e,t,o){return m(e,t,o).map((e=>g(e).toString(16).padStart(2,"0")))}(a.h,a.s,a.v),t=a.a>=1?"":Number((255*a.a).toFixed(0)).toString(16).toUpperCase().padStart(2,"0");return t&&e.push(t),e.toString=()=>`#${e.join("").toUpperCase()}`,e},clone:()=>C(a.h,a.s,a.v,a.a)};return a}const k=e=>Math.max(Math.min(e,1),0);function q(e){const t={options:Object.assign({lock:null,onchange:()=>0,onstop:()=>0},e),_keyboard(e){const{options:o}=t,{type:n,key:i}=e;if(document.activeElement===o.wrapper){const{lock:o}=t.options,a="ArrowUp"===i,l="ArrowRight"===i,r="ArrowDown"===i,s="ArrowLeft"===i;if("keydown"===n&&(a||l||r||s)){let n=0,i=0;"v"===o?n=a||l?1:-1:"h"===o?n=a||l?-1:1:(i=a?-1:r?1:0,n=s?-1:l?1:0),t.update(k(t.cache.x+.01*n),k(t.cache.y+.01*i)),e.preventDefault()}else i.startsWith("Arrow")&&(t.options.onstop(),e.preventDefault())}},_tapstart(e){i(document,["mouseup","touchend","touchcancel"],t._tapstop),i(document,["mousemove","touchmove"],t._tapmove),e.cancelable&&e.preventDefault(),t._tapmove(e)},_tapmove(e){const{options:o,cache:n}=t,{lock:i,element:a,wrapper:l}=o,r=l.getBoundingClientRect();let s=0,c=0;if(e){const t=e&&e.touches&&e.touches[0];s=e?(t||e).clientX:0,c=e?(t||e).clientY:0,sr.left+r.width&&(s=r.left+r.width),cr.top+r.height&&(c=r.top+r.height),s-=r.left,c-=r.top}else n&&(s=n.x*r.width,c=n.y*r.height);"h"!==i&&(a.style.left=`calc(${s/r.width*100}% - ${a.offsetWidth/2}px)`),"v"!==i&&(a.style.top=`calc(${c/r.height*100}% - ${a.offsetHeight/2}px)`),t.cache={x:s/r.width,y:c/r.height};const d=k(s/r.width),u=k(c/r.height);switch(i){case"v":return o.onchange(d);case"h":return o.onchange(u);default:return o.onchange(d,u)}},_tapstop(){t.options.onstop(),a(document,["mouseup","touchend","touchcancel"],t._tapstop),a(document,["mousemove","touchmove"],t._tapmove)},trigger(){t._tapmove()},update(e=0,o=0){const{left:n,top:i,width:a,height:l}=t.options.wrapper.getBoundingClientRect();"h"===t.options.lock&&(o=e),t._tapmove({clientX:n+a*e,clientY:i+l*o})},destroy(){const{options:e,_tapstart:o,_keyboard:n}=t;a(document,["keydown","keyup"],n),a([e.wrapper,e.element],"mousedown",o),a([e.wrapper,e.element],"touchstart",o,{passive:!1})}},{options:o,_tapstart:n,_keyboard:l}=t;return i([o.wrapper,o.element],"mousedown",n),i([o.wrapper,o.element],"touchstart",n,{passive:!1}),i(document,["keydown","keyup"],l),t}function T(e={}){e=Object.assign({onchange:()=>0,className:"",elements:[]},e);const t=i(e.elements,"click",(t=>{e.elements.forEach((o=>o.classList[t.target===o?"add":"remove"](e.className))),e.onchange(t),t.stopPropagation()}));return{destroy:()=>a(...t)}}const M={variantFlipOrder:{start:"sme",middle:"mse",end:"ems"},positionFlipOrder:{top:"tbrl",right:"rltb",bottom:"btrl",left:"lrbt"},position:"bottom",margin:8,padding:0};class E{static utils=o;static version="1.9.0";static I18N_DEFAULTS={"ui:dialog":"color picker dialog","btn:toggle":"toggle color picker dialog","btn:swatch":"color swatch","btn:last-color":"use previous color","btn:save":"Save","btn:cancel":"Cancel","btn:clear":"Clear","aria:btn:save":"save and close","aria:btn:cancel":"cancel and close","aria:btn:clear":"clear and close","aria:input":"color input field","aria:palette":"color selection area","aria:hue":"hue selection slider","aria:opacity":"selection slider"};static DEFAULT_OPTIONS={appClass:null,theme:"classic",useAsButton:!1,padding:8,disabled:!1,comparison:!0,closeOnScroll:!1,outputPrecision:0,lockOpacity:!1,autoReposition:!0,container:"body",components:{interaction:{}},i18n:{},swatches:null,inline:!1,sliders:null,default:"#42445a",defaultRepresentation:null,position:"bottom-middle",adjustableNumbers:!0,showAlways:!1,closeWithKey:"Escape"};_initializingActive=!0;_recalc=!0;_nanopop=null;_root=null;_color=C();_lastColor=C();_swatchColors=[];_setupAnimationFrame=null;_eventListener={init:[],save:[],hide:[],show:[],clear:[],change:[],changestop:[],cancel:[],swatchselect:[]};constructor(e){this.options=e=Object.assign({...E.DEFAULT_OPTIONS},e);const{swatches:t,components:o,theme:n,sliders:i,lockOpacity:a,padding:l}=e;["nano","monolith"].includes(n)&&!i&&(e.sliders="h"),o.interaction||(o.interaction={});const{preview:r,opacity:s,hue:c,palette:d}=o;o.opacity=!a&&s,o.palette=d||r||s||c,this._preBuild(),this._buildComponents(),this._bindEvents(),this._finalBuild(),t&&t.length&&t.forEach((e=>this.addSwatch(e)));const{button:u,app:h}=this._root;this._nanopop=((e,t,o)=>{const n="object"!=typeof e||e instanceof HTMLElement?{reference:e,popper:t,...o}:e;return{update(e=n){const{reference:t,popper:o}=Object.assign(n,e);if(!o||!t)throw new Error("Popper- or reference-element missing.");return((e,t,o)=>{const{container:n,arrow:i,margin:a,padding:l,position:r,variantFlipOrder:s,positionFlipOrder:c}={container:document.documentElement.getBoundingClientRect(),...M,...o},{left:d,top:u}=t.style;t.style.left="0",t.style.top="0";const h=e.getBoundingClientRect(),p=t.getBoundingClientRect(),g={t:h.top-p.height-a,b:h.bottom+a,r:h.right+a,l:h.left-p.width-a},m={vs:h.left,vm:h.left+h.width/2-p.width/2,ve:h.left+h.width-p.width,hs:h.top,hm:h.bottom-h.height/2-p.height/2,he:h.bottom-p.height},[f,b="middle"]=r.split("-"),v=c[f],y=s[b],{top:w,left:C,bottom:k,right:q}=n;for(const e of v){const o="t"===e||"b"===e;let n=g[e];const[a,r]=o?["top","left"]:["left","top"],[s,c]=o?[p.height,p.width]:[p.width,p.height],[d,u]=o?[k,q]:[q,k],[f,b]=o?[w,C]:[C,w];if(!(nd))for(const d of y){let g=m[(o?"v":"h")+d];if(!(gu)){if(g-=p[r],n-=p[a],t.style[r]=`${g}px`,t.style[a]=`${n}px`,i){const e=o?h.width/2:h.height/2,t=2*enew E(e);_preBuild(){const{options:e}=this;for(const t of["el","container"])e[t]=c(e[t]);this._root=(e=>{const{components:t,useAsButton:o,inline:n,appClass:i,theme:a,lockOpacity:l}=e.options,s=e=>e?"":'style="display:none" hidden',c=t=>e._t(t),d=r(`\n
\n\n ${o?"":''}\n\n
\n
\n
\n \n
\n
\n\n
\n
\n
\n
\n\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n\n
\n\n
\n \n\n \n \n \n \n \n\n \n \n \n
\n
\n
\n `),u=d.interaction;return u.options.find((e=>!e.hidden&&!e.classList.add("active"))),u.type=()=>u.options.find((e=>e.classList.contains("active"))),d})(this),e.useAsButton&&(this._root.button=e.el),e.container.appendChild(this._root.root)}_finalBuild(){const e=this.options,t=this._root;if(e.container.removeChild(t.root),e.inline){const o=e.el.parentElement;e.el.nextSibling?o.insertBefore(t.app,e.el.nextSibling):o.appendChild(t.app)}else e.container.appendChild(t.app);e.useAsButton?e.inline&&e.el.remove():e.el.parentNode.replaceChild(t.root,e.el),e.disabled&&this.disable(),e.comparison||(t.button.style.transition="none",e.useAsButton||(t.preview.lastColor.style.transition="none")),this.hide()}_buildComponents(){const e=this,t=this.options.components,o=(e.options.sliders||"v").repeat(2),[n,i]=o.match(/^[vh]+$/g)?o:[],a=()=>this._color||(this._color=this._lastColor.clone()),l={palette:q({element:e._root.palette.picker,wrapper:e._root.palette.palette,onstop:()=>e._emit("changestop","slider",e),onchange(o,n){if(!t.palette)return;const i=a(),{_root:l,options:r}=e,{lastColor:s,currentColor:c}=l.preview;e._recalc&&(i.s=100*o,i.v=100-100*n,i.v<0&&(i.v=0),e._updateOutput("slider"));const d=i.toRGBA().toString(0);this.element.style.background=d,this.wrapper.style.background=`\n linear-gradient(to top, rgba(0, 0, 0, ${i.a}), transparent),\n linear-gradient(to left, hsla(${i.h}, 100%, 50%, ${i.a}), rgba(255, 255, 255, ${i.a}))\n `,r.comparison?r.useAsButton||e._lastColor||s.style.setProperty("--pcr-color",d):(l.button.style.setProperty("--pcr-color",d),l.button.classList.remove("clear"));const u=i.toHEXA().toString();for(const{el:t,color:o}of e._swatchColors)t.classList[u===o.toHEXA().toString()?"add":"remove"]("pcr-active");c.style.setProperty("--pcr-color",d)}}),hue:q({lock:"v"===i?"h":"v",element:e._root.hue.picker,wrapper:e._root.hue.slider,onstop:()=>e._emit("changestop","slider",e),onchange(o){if(!t.hue||!t.palette)return;const n=a();e._recalc&&(n.h=360*o),this.element.style.backgroundColor=`hsl(${n.h}, 100%, 50%)`,l.palette.trigger()}}),opacity:q({lock:"v"===n?"h":"v",element:e._root.opacity.picker,wrapper:e._root.opacity.slider,onstop:()=>e._emit("changestop","slider",e),onchange(o){if(!t.opacity||!t.palette)return;const n=a();e._recalc&&(n.a=Math.round(100*o)/100),this.element.style.background=`rgba(0, 0, 0, ${n.a})`,l.palette.trigger()}}),selectable:T({elements:e._root.interaction.options,className:"active",onchange(t){e._representation=t.target.getAttribute("data-type").toUpperCase(),e._recalc&&e._updateOutput("swatch")}})};this._components=l}_bindEvents(){const{_root:e,options:t}=this,o=[i(e.interaction.clear,"click",(()=>this._clearColor())),i([e.interaction.cancel,e.preview.lastColor],"click",(()=>{this.setHSVA(...(this._lastColor||this._color).toHSVA(),!0),this._emit("cancel")})),i(e.interaction.save,"click",(()=>{!this.applyColor()&&!t.showAlways&&this.hide()})),i(e.interaction.result,["keyup","input"],(e=>{this.setColor(e.target.value,!0)&&!this._initializingActive&&(this._emit("change",this._color,"input",this),this._emit("changestop","input",this)),e.stopImmediatePropagation()})),i(e.interaction.result,["focus","blur"],(e=>{this._recalc="blur"===e.type,this._recalc&&this._updateOutput(null)})),i([e.palette.palette,e.palette.picker,e.hue.slider,e.hue.picker,e.opacity.slider,e.opacity.picker],["mousedown","touchstart"],(()=>this._recalc=!0),{passive:!0})];if(!t.showAlways){const n=t.closeWithKey;o.push(i(e.button,"click",(()=>this.isOpen()?this.hide():this.show())),i(document,"keyup",(e=>this.isOpen()&&(e.key===n||e.code===n)&&this.hide())),i(document,["touchstart","mousedown"],(t=>{this.isOpen()&&!s(t).some((t=>t===e.app||t===e.button))&&this.hide()}),{capture:!0}))}if(t.adjustableNumbers){const t={rgba:[255,255,255,1],hsva:[360,100,100,1],hsla:[360,100,100,1],cmyk:[100,100,100,100]};d(e.interaction.result,((e,o,n)=>{const i=t[this.getColorRepresentation().toLowerCase()];if(i){const t=i[n],a=e+(t>=100?1e3*o:o);return a<=0?0:Number((a{n.isOpen()&&(t.closeOnScroll&&n.hide(),null===e?(e=setTimeout((()=>e=null),100),requestAnimationFrame((function t(){n._rePositioningPicker(),null!==e&&requestAnimationFrame(t)}))):(clearTimeout(e),e=setTimeout((()=>e=null),100)))}),{capture:!0}))}this._eventBindings=o}_rePositioningPicker(){const{options:e}=this;if(!e.inline&&!this._nanopop.update({container:document.body.getBoundingClientRect(),position:e.position})){const e=this._root.app,t=e.getBoundingClientRect();e.style.top=(window.innerHeight-t.height)/2+"px",e.style.left=(window.innerWidth-t.width)/2+"px"}}_updateOutput(e){const{_root:t,_color:o,options:n}=this;if(t.interaction.type()){const e=`to${t.interaction.type().getAttribute("data-type")}`;t.interaction.result.value="function"==typeof o[e]?o[e]().toString(n.outputPrecision):""}!this._initializingActive&&this._recalc&&this._emit("change",o,e,this)}_clearColor(e=!1){const{_root:t,options:o}=this;o.useAsButton||t.button.style.setProperty("--pcr-color","rgba(0, 0, 0, 0.15)"),t.button.classList.add("clear"),o.showAlways||this.hide(),this._lastColor=null,this._initializingActive||e||(this._emit("save",null),this._emit("clear"))}_parseLocalColor(e){const{values:t,type:o,a:n}=function(e){e=e.match(/^[a-zA-Z]+$/)?function(e){if("black"===e.toLowerCase())return"#000";const t=document.createElement("canvas").getContext("2d");return t.fillStyle=e,"#000"===t.fillStyle?null:t.fillStyle}(e):e;const t={cmyk:/^cmyk\D+([\d.]+)\D+([\d.]+)\D+([\d.]+)\D+([\d.]+)/i,rgba:/^rgba?\D+([\d.]+)(%?)\D+([\d.]+)(%?)\D+([\d.]+)(%?)\D*?(([\d.]+)(%?)|$)/i,hsla:/^hsla?\D+([\d.]+)\D+([\d.]+)\D+([\d.]+)\D*?(([\d.]+)(%?)|$)/i,hsva:/^hsva?\D+([\d.]+)\D+([\d.]+)\D+([\d.]+)\D*?(([\d.]+)(%?)|$)/i,hexa:/^#?(([\dA-Fa-f]{3,4})|([\dA-Fa-f]{6})|([\dA-Fa-f]{8}))$/i},o=e=>e.map((e=>/^(|\d+)\.\d+|\d+$/.test(e)?Number(e):void 0));let n;e:for(const i in t)if(n=t[i].exec(e))switch(i){case"cmyk":{const[,e,t,a,l]=o(n);if(e>100||t>100||a>100||l>100)break e;return{values:v(e,t,a,l),type:i}}case"rgba":{let[,e,,t,,a,,,l]=o(n);if(e="%"===n[2]?e/100*255:e,t="%"===n[4]?t/100*255:t,a="%"===n[6]?a/100*255:a,l="%"===n[9]?l/100:l,e>255||t>255||a>255||l<0||l>1)break e;return{values:[...b(e,t,a),l],a:l,type:i}}case"hexa":{let[,e]=n;4!==e.length&&3!==e.length||(e=e.split("").map((e=>e+e)).join(""));const t=e.substring(0,6);let o=e.substring(6);return o=o?parseInt(o,16)/255:void 0,{values:[...w(t),o],a:o,type:i}}case"hsla":{let[,e,t,a,,l]=o(n);if(l="%"===n[6]?l/100:l,e>360||t>100||a>100||l<0||l>1)break e;return{values:[...y(e,t,a),l],a:l,type:i}}case"hsva":{let[,e,t,a,,l]=o(n);if(l="%"===n[6]?l/100:l,e>360||t>100||a>100||l<0||l>1)break e;return{values:[e,t,a,l],a:l,type:i}}}return{values:null,type:null}}(e),{lockOpacity:i}=this.options,a=void 0!==n&&1!==n;return t&&3===t.length&&(t[3]=void 0),{values:!t||i&&a?null:t,type:o}}_t(e){return this.options.i18n[e]||E.I18N_DEFAULTS[e]}_emit(e,...t){this._eventListener[e].forEach((e=>e(...t,this)))}on(e,t){return this._eventListener[e].push(t),this}off(e,t){const o=this._eventListener[e]||[],n=o.indexOf(t);return~n&&o.splice(n,1),this}addSwatch(e){const{values:t}=this._parseLocalColor(e);if(t){const{_swatchColors:e,_root:o}=this,n=C(...t),a=l(`