@profoundlogic/coderflow-server 0.5.3 → 0.5.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/coder-server.js +1 -1
- package/dist/config.js +1 -1
- package/dist/lib/agent-keepalive.js +1 -1
- package/dist/lib/agent-models.js +1 -1
- package/dist/lib/api-keys.js +1 -1
- package/dist/lib/apiKeys.js +1 -1
- package/dist/lib/app-server-ports.js +1 -1
- package/dist/lib/auto-judge.js +1 -1
- package/dist/lib/automation-service.js +1 -1
- package/dist/lib/basic-auth.js +1 -1
- package/dist/lib/bindings.js +1 -1
- package/dist/lib/build-history.js +1 -1
- package/dist/lib/build-output-service.js +1 -1
- package/dist/lib/build-scheduler.js +1 -1
- package/dist/lib/build-service.js +1 -1
- package/dist/lib/ca-certificates.js +1 -1
- package/dist/lib/claude-oauth-refresh.js +1 -1
- package/dist/lib/cli/build.js +1 -1
- package/dist/lib/cli/cleanup-users.js +1 -1
- package/dist/lib/cli/config-command.js +1 -1
- package/dist/lib/cli/config.js +1 -1
- package/dist/lib/cli/create-user.js +1 -1
- package/dist/lib/cli/grant-admin.js +1 -1
- package/dist/lib/cli/init.js +1 -1
- package/dist/lib/cli/jira.js +1 -1
- package/dist/lib/cli/license.js +1 -1
- package/dist/lib/cli/list-roles.js +1 -1
- package/dist/lib/cli/list-users.js +1 -1
- package/dist/lib/cli/server-manager.js +1 -1
- package/dist/lib/cli/set-password.js +1 -1
- package/dist/lib/config-migration.js +1 -1
- package/dist/lib/container-credential-sync.js +1 -1
- package/dist/lib/container-tokens.js +1 -1
- package/dist/lib/data-dir.js +1 -1
- package/dist/lib/deployment-history.js +1 -1
- package/dist/lib/deployment-service.js +1 -1
- package/dist/lib/docker-utils.js +1 -1
- package/dist/lib/email.js +1 -1
- package/dist/lib/emailTemplates.js +1 -1
- package/dist/lib/entitlement.js +1 -1
- package/dist/lib/external-connections.js +1 -1
- package/dist/lib/fetch-utils.js +1 -1
- package/dist/lib/git-commit-details-route.js +1 -1
- package/dist/lib/git-history-diff-guardrails.js +1 -1
- package/dist/lib/git-provider-service.js +1 -1
- package/dist/lib/git-provider-setup/github-setup-handler.js +1 -1
- package/dist/lib/git-provider-setup/index.js +1 -1
- package/dist/lib/git-provider-setup/setup-factory.js +1 -1
- package/dist/lib/git-provider-setup/setup-interface.js +1 -1
- package/dist/lib/git-providers/azure-devops-provider.js +1 -1
- package/dist/lib/git-providers/github-app-provider.js +1 -1
- package/dist/lib/git-providers/index.js +1 -1
- package/dist/lib/git-providers/provider-factory.js +1 -1
- package/dist/lib/git-providers/provider-interface.js +1 -1
- package/dist/lib/github-urls.js +1 -1
- package/dist/lib/group-objective-linking.js +1 -1
- package/dist/lib/ibmi-sync.js +1 -1
- package/dist/lib/jira-client.js +1 -1
- package/dist/lib/judge-blinding.js +1 -1
- package/dist/lib/logger.js +1 -1
- package/dist/lib/migration-to-scoped-rbac.js +1 -1
- package/dist/lib/model-fetcher.js +1 -1
- package/dist/lib/notifications.js +1 -1
- package/dist/lib/objective-context.js +1 -1
- package/dist/lib/oidc-auth.js +1 -1
- package/dist/lib/oidc-device-flow.js +1 -1
- package/dist/lib/passwordTokens.js +1 -1
- package/dist/lib/permission-resolver.js +1 -1
- package/dist/lib/pin-cascade.js +1 -1
- package/dist/lib/provider-accounts.js +1 -1
- package/dist/lib/provider-oauth.js +1 -1
- package/dist/lib/provider-profile.js +1 -1
- package/dist/lib/provider-token-refresh.js +1 -1
- package/dist/lib/rbac-user-state.js +1 -1
- package/dist/lib/request-url.js +1 -1
- package/dist/lib/rewind.js +1 -1
- package/dist/lib/role-definitions.js +1 -1
- package/dist/lib/roles.js +1 -1
- package/dist/lib/secrets.js +1 -1
- package/dist/lib/setup-repo-git-auth.js +1 -1
- package/dist/lib/state-capture.js +1 -1
- package/dist/lib/static-files.js +1 -1
- package/dist/lib/task-name-format.js +1 -1
- package/dist/lib/task-name-generator.js +1 -1
- package/dist/lib/task-source-metadata.js +1 -1
- package/dist/lib/teams.js +1 -1
- package/dist/lib/user-git-oauth.js +1 -1
- package/dist/lib/user-git-tokens.js +1 -1
- package/dist/lib/users.js +1 -1
- package/dist/middleware/requireAuth.js +1 -1
- package/dist/middleware/requireInit.js +1 -1
- package/dist/middleware/requirePermission.js +1 -1
- package/dist/package.json +1 -1
- package/dist/playwright.config.js +1 -1
- package/dist/routes/apiKeys.js +1 -1
- package/dist/routes/auth-oidc.js +1 -1
- package/dist/routes/auth.js +1 -1
- package/dist/routes/automations.js +1 -1
- package/dist/routes/bindings.js +1 -1
- package/dist/routes/build.js +1 -1
- package/dist/routes/containers.js +1 -1
- package/dist/routes/deploy-task.js +1 -1
- package/dist/routes/environment-management.js +1 -1
- package/dist/routes/environments.js +1 -1
- package/dist/routes/external-skills.js +1 -1
- package/dist/routes/git-credentials.js +1 -1
- package/dist/routes/git-oauth.js +1 -1
- package/dist/routes/git-provider-setup.js +1 -1
- package/dist/routes/health.js +1 -1
- package/dist/routes/jira.js +1 -1
- package/dist/routes/objective-management.js +1 -1
- package/dist/routes/password.js +1 -1
- package/dist/routes/prompt.js +1 -1
- package/dist/routes/provider-auth.js +1 -1
- package/dist/routes/qa.js +1 -1
- package/dist/routes/roles.js +1 -1
- package/dist/routes/settings.js +1 -1
- package/dist/routes/skill-management.js +1 -1
- package/dist/routes/skills.js +1 -1
- package/dist/routes/tasks.js +1 -1
- package/dist/routes/teams.js +1 -1
- package/dist/routes/templates.js +1 -1
- package/dist/routes/test-task.js +1 -1
- package/dist/routes/test.js +1 -1
- package/dist/routes/users.js +1 -1
- package/dist/routes/visualizations.js +1 -1
- package/dist/scripts/create-user.js +1 -1
- package/dist/scripts/migrate-config-to-data-dir.js +1 -1
- package/dist/start.js +1 -1
- package/dist/web-ui/public/activity-detail-modal.js +1 -1
- package/dist/web-ui/public/activity-feed.js +1 -1
- package/dist/web-ui/public/activity-formatters.js +1 -1
- package/dist/web-ui/public/agent-event-parser.js +1 -1
- package/dist/web-ui/public/app.js +1 -1
- package/dist/web-ui/public/approve-dialog.js +1 -1
- package/dist/web-ui/public/automation-links.js +1 -1
- package/dist/web-ui/public/automation-schedule.js +1 -1
- package/dist/web-ui/public/comments-widget.js +1 -1
- package/dist/web-ui/public/diff-utils.js +1 -1
- package/dist/web-ui/public/environments.html +6 -6
- package/dist/web-ui/public/environments.js +1 -1
- package/dist/web-ui/public/feedback-widget.js +1 -1
- package/dist/web-ui/public/git-history-lazy-utils.js +1 -1
- package/dist/web-ui/public/git-history.html +4 -4
- package/dist/web-ui/public/git-history.js +1 -1
- package/dist/web-ui/public/git-status.js +1 -1
- package/dist/web-ui/public/index.html +4 -4
- package/dist/web-ui/public/index.js +1 -1
- package/dist/web-ui/public/login.html +2 -2
- package/dist/web-ui/public/login.js +1 -1
- package/dist/web-ui/public/markdown-editor.js +1 -1
- package/dist/web-ui/public/markdown-file-editor.js +1 -1
- package/dist/web-ui/public/modal-maximize.js +1 -1
- package/dist/web-ui/public/notifications.js +1 -1
- package/dist/web-ui/public/pr-dialog.js +1 -1
- package/dist/web-ui/public/roles.html +1 -1
- package/dist/web-ui/public/roles.js +1 -1
- package/dist/web-ui/public/server-health.js +1 -1
- package/dist/web-ui/public/settings.html +4 -4
- package/dist/web-ui/public/settings.js +1 -1
- package/dist/web-ui/public/setup-password.html +2 -2
- package/dist/web-ui/public/setup-password.js +1 -1
- package/dist/web-ui/public/skills.html +6 -6
- package/dist/web-ui/public/skills.js +1 -1
- package/dist/web-ui/public/sse-client.js +1 -1
- package/dist/web-ui/public/sse-shared-worker.js +1 -1
- package/dist/web-ui/public/task.html +5 -5
- package/dist/web-ui/public/task.js +1 -1
- package/dist/web-ui/public/teams.html +1 -1
- package/dist/web-ui/public/teams.js +1 -1
- package/dist/web-ui/public/terminal.html +2 -2
- package/dist/web-ui/public/terminal.js +1 -1
- package/dist/web-ui/public/theme.js +1 -1
- package/dist/web-ui/public/users.html +2 -2
- package/dist/web-ui/public/users.js +1 -1
- package/dist/web-ui/public/variant-grouping.js +1 -1
- package/package.json +1 -1
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
}
|
|
23
23
|
})();
|
|
24
24
|
</script>
|
|
25
|
-
<link rel="stylesheet" href="styles.css?v=
|
|
26
|
-
<script type="module" src="login.js?v=
|
|
25
|
+
<link rel="stylesheet" href="styles.css?v=84">
|
|
26
|
+
<script type="module" src="login.js?v=57"></script>
|
|
27
27
|
<style>
|
|
28
28
|
body {
|
|
29
29
|
display: flex;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{initTheme,mountThemeToggle}from'./theme.js';const OIDC_ERRORS={'oidc_init_failed':'Failed\x20to\x20connect\x20to\x20the\x20identity\x20provider.\x20Please\x20try\x20again.','oidc_not_configured':'Single\x20sign-on\x20is\x20not\x20configured.\x20Please\x20use\x20local\x20login.','oidc_error':'Authentication\x20was\x20cancelled\x20or\x20failed.','oidc_invalid_callback':'Invalid\x20authentication\x20response.\x20Please\x20try\x20again.','oidc_no_email':'Your\x20identity\x20provider\x20did\x20not\x20provide\x20an\x20email\x20address.\x20Please\x20contact\x20your\x20administrator.','oidc_user_not_found':'Your\x20account\x20is\x20not\x20authorized\x20to\x20access\x20this\x20application.\x20Please\x20contact\x20your\x20administrator.','oidc_invalid_state':'Authentication\x20session\x20expired.\x20Please\x20try\x20again.','oidc_session_expired':'Authentication\x20session\x20expired.\x20Please\x20try\x20again.','oidc_callback_failed':'Authentication\x20failed.\x20Please\x20try\x20again.','session_failed':'Failed\x20to\x20create\x20session.\x20Please\x20try\x20again.'};async function loadOidcConfig(){try{const
|
|
1
|
+
import{initTheme,mountThemeToggle}from'./theme.js';const OIDC_ERRORS={'oidc_init_failed':'Failed\x20to\x20connect\x20to\x20the\x20identity\x20provider.\x20Please\x20try\x20again.','oidc_not_configured':'Single\x20sign-on\x20is\x20not\x20configured.\x20Please\x20use\x20local\x20login.','oidc_error':'Authentication\x20was\x20cancelled\x20or\x20failed.','oidc_invalid_callback':'Invalid\x20authentication\x20response.\x20Please\x20try\x20again.','oidc_no_email':'Your\x20identity\x20provider\x20did\x20not\x20provide\x20an\x20email\x20address.\x20Please\x20contact\x20your\x20administrator.','oidc_user_not_found':'Your\x20account\x20is\x20not\x20authorized\x20to\x20access\x20this\x20application.\x20Please\x20contact\x20your\x20administrator.','oidc_invalid_state':'Authentication\x20session\x20expired.\x20Please\x20try\x20again.','oidc_session_expired':'Authentication\x20session\x20expired.\x20Please\x20try\x20again.','oidc_callback_failed':'Authentication\x20failed.\x20Please\x20try\x20again.','session_failed':'Failed\x20to\x20create\x20session.\x20Please\x20try\x20again.'};async function loadOidcConfig(){try{const _0x236e00=await fetch('/auth/oidc/config');if(_0x236e00['ok'])return await _0x236e00['json']();}catch(_0x18019b){console['error']('Failed\x20to\x20load\x20OIDC\x20configuration:',_0x18019b);}return{'enabled':![]};}function initializeSsoUi(_0x4d2521){const _0x8ea8a=document['getElementById']('sso-section'),_0x213912=document['getElementById']('sso-divider'),_0x227a99=document['getElementById']('sso-button-text'),_0x236223=document['getElementById']('sso-button'),_0x4a3309=document['querySelector']('.local-auth-section');_0x4d2521['enabled']&&(_0x8ea8a['classList']['add']('visible'),_0x227a99['textContent']=_0x4d2521['display_name']||'Sign\x20in\x20with\x20SSO',_0x236223['addEventListener']('click',()=>{window['location']['href']='/auth/oidc/login';}),!_0x4d2521['allow_local_auth']&&(_0x4a3309['classList']['add']('hidden'),_0x213912['style']['display']='none'));}function checkOidcErrors(){const _0x9b645=new URLSearchParams(window['location']['search']),_0xb0c49b=_0x9b645['get']('error'),_0x338980=_0x9b645['get']('message');if(_0xb0c49b){const _0x381f5b=document['getElementById']('login-error'),_0x123d66=_0x338980||OIDC_ERRORS[_0xb0c49b]||'Authentication\x20error:\x20'+_0xb0c49b;_0x381f5b['textContent']=_0x123d66,_0x381f5b['classList']['add']('visible'),window['history']['replaceState']({},document['title'],window['location']['pathname']);}}async function handleLogin(_0x1ce3b0){_0x1ce3b0['preventDefault']();const _0x4b25e6=_0x1ce3b0['target'],_0x19c0c7=_0x4b25e6['username']['value']['trim'](),_0x50952b=_0x4b25e6['password']['value'],_0x1b78ea=_0x4b25e6['querySelector']('button[type=\x22submit\x22]'),_0x176ada=document['getElementById']('login-error');_0x176ada['classList']['remove']('visible'),_0x176ada['textContent']='',_0x1b78ea['disabled']=!![],_0x1b78ea['textContent']='Signing\x20in...';try{const _0x4698dc=await fetch('/auth/login',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'username':_0x19c0c7,'password':_0x50952b})}),_0x1e158d=await _0x4698dc['json']();if(!_0x4698dc['ok'])throw new Error(_0x1e158d['message']||'Login\x20failed');window['location']['href']='index.html';}catch(_0x41ca5d){_0x176ada['textContent']=_0x41ca5d['message']||'An\x20error\x20occurred\x20during\x20login',_0x176ada['classList']['add']('visible'),_0x1b78ea['disabled']=![],_0x1b78ea['textContent']='Sign\x20In',_0x4b25e6['password']['value']='',_0x4b25e6['password']['focus']();}}document['addEventListener']('DOMContentLoaded',async()=>{initTheme(),mountThemeToggle(),checkOidcErrors();const _0x136c54=await loadOidcConfig();initializeSsoUi(_0x136c54);const _0x3be080=document['getElementById']('login-form');_0x3be080&&_0x3be080['addEventListener']('submit',handleLogin);});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const ATTACHMENT_SCHEME='attachment:',INTERNAL_DRAG_MIME='application/x-profound-editor-image',LINK_DIALOG_STYLE_ID='markdown-editor-link-dialog-styles',ICONS={'bold':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M6\x204h8a4\x204\x200\x200\x201\x204\x204\x204\x204\x200\x200\x201-4\x204H6z\x22></path><path\x20d=\x22M6\x2012h9a4\x204\x200\x200\x201\x204\x204\x204\x204\x200\x200\x201-4\x204H6z\x22></path></svg>','italic':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x2219\x22\x20y1=\x224\x22\x20x2=\x2210\x22\x20y2=\x224\x22></line><line\x20x1=\x2214\x22\x20y1=\x2220\x22\x20x2=\x225\x22\x20y2=\x2220\x22></line><line\x20x1=\x2215\x22\x20y1=\x224\x22\x20x2=\x229\x22\x20y2=\x2220\x22></line></svg>','strike':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x225\x22\x20y1=\x2212\x22\x20x2=\x2219\x22\x20y2=\x2212\x22></line><path\x20d=\x22M16\x206a4\x204\x200\x200\x200-4-4c-2.48\x200-4\x201.79-4\x204\x200\x201.25.5\x202.5\x201.5\x203\x22></path><path\x20d=\x22M9\x2018c0\x201.79\x201.79\x203\x204\x203\x202.48\x200\x204-1.79\x204-4\x200-1.25-.5-2.5-1.5-3\x22></path></svg>','link':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M10\x2013a5\x205\x200\x200\x200\x207.54.54l3-3a5\x205\x200\x200\x200-7.07-7.07l-1.72\x201.71\x22></path><path\x20d=\x22M14\x2011a5\x205\x200\x200\x200-7.54-.54l-3\x203a5\x205\x200\x200\x200\x207.07\x207.07l1.71-1.71\x22></path></svg>','code':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><polyline\x20points=\x2216\x2018\x2022\x2012\x2016\x206\x22></polyline><polyline\x20points=\x228\x206\x202\x2012\x208\x2018\x22></polyline></svg>','listBullet':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x228\x22\x20y1=\x226\x22\x20x2=\x2221\x22\x20y2=\x226\x22></line><line\x20x1=\x228\x22\x20y1=\x2212\x22\x20x2=\x2221\x22\x20y2=\x2212\x22></line><line\x20x1=\x228\x22\x20y1=\x2218\x22\x20x2=\x2221\x22\x20y2=\x2218\x22></line><line\x20x1=\x223\x22\x20y1=\x226\x22\x20x2=\x223.01\x22\x20y2=\x226\x22></line><line\x20x1=\x223\x22\x20y1=\x2212\x22\x20x2=\x223.01\x22\x20y2=\x2212\x22></line><line\x20x1=\x223\x22\x20y1=\x2218\x22\x20x2=\x223.01\x22\x20y2=\x2218\x22></line></svg>','listOrdered':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x2210\x22\x20y1=\x226\x22\x20x2=\x2221\x22\x20y2=\x226\x22></line><line\x20x1=\x2210\x22\x20y1=\x2212\x22\x20x2=\x2221\x22\x20y2=\x2212\x22></line><line\x20x1=\x2210\x22\x20y1=\x2218\x22\x20x2=\x2221\x22\x20y2=\x2218\x22></line><path\x20d=\x22M4\x206h1v4\x22></path><path\x20d=\x22M4\x2010h2\x22></path><path\x20d=\x22M6\x2018H4c0-1\x202-2\x202-3s-1-1.5-2-1\x22></path></svg>','blockquote':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M21\x2015a2\x202\x200\x200\x201-2\x202H7l-4\x204V5a2\x202\x200\x200\x201\x202-2h14a2\x202\x200\x200\x201\x202\x202z\x22></path></svg>','codeBlock':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><rect\x20x=\x223\x22\x20y=\x223\x22\x20width=\x2218\x22\x20height=\x2218\x22\x20rx=\x222\x22\x20ry=\x222\x22></rect><polyline\x20points=\x229\x208\x205\x2012\x209\x2016\x22></polyline><polyline\x20points=\x2215\x208\x2019\x2012\x2015\x2016\x22></polyline></svg>','header':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M4\x2012h8\x22></path><path\x20d=\x22M4\x2018V6\x22></path><path\x20d=\x22M12\x2018V6\x22></path><path\x20d=\x22M17\x2012l3-2v8\x22></path></svg>','color':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M4\x2020h16\x22></path><path\x20d=\x22M6\x2016l6-14\x206\x2014\x22></path><path\x20d=\x22M8\x2012h8\x22></path></svg>'},LINK_DIALOG_STYLES='\x0a.markdown-editor-link-modal\x20{\x0a\x20\x20position:\x20fixed;\x0a\x20\x20inset:\x200;\x0a\x20\x20display:\x20flex;\x0a\x20\x20align-items:\x20center;\x0a\x20\x20justify-content:\x20center;\x0a\x20\x20z-index:\x2010020;\x0a}\x0a\x0a.markdown-editor-link-modal[hidden]\x20{\x0a\x20\x20display:\x20none\x20!important;\x0a}\x0a\x0a.markdown-editor-link-backdrop\x20{\x0a\x20\x20position:\x20absolute;\x0a\x20\x20inset:\x200;\x0a\x20\x20background:\x20rgba(15,\x2023,\x2042,\x200.45);\x0a}\x0a\x0a.markdown-editor-link-dialog\x20{\x0a\x20\x20position:\x20relative;\x0a\x20\x20width:\x20min(460px,\x20calc(100vw\x20-\x2024px));\x0a\x20\x20background:\x20var(--color-surface,\x20var(--feedback-surface,\x20#ffffff));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a\x20\x20border:\x201px\x20solid\x20var(--color-border,\x20var(--feedback-border,\x20#d1d5db));\x0a\x20\x20border-radius:\x20var(--radius-medium,\x2010px);\x0a\x20\x20box-shadow:\x200\x2018px\x2042px\x20rgba(15,\x2023,\x2042,\x200.25);\x0a\x20\x20padding:\x2014px;\x0a\x20\x20display:\x20flex;\x0a\x20\x20flex-direction:\x20column;\x0a\x20\x20gap:\x2012px;\x0a}\x0a\x0a.markdown-editor-link-header\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20align-items:\x20center;\x0a\x20\x20justify-content:\x20space-between;\x0a\x20\x20gap:\x208px;\x0a}\x0a\x0a.markdown-editor-link-title\x20{\x0a\x20\x20margin:\x200;\x0a\x20\x20font-size:\x2016px;\x0a\x20\x20font-weight:\x20600;\x0a}\x0a\x0a.markdown-editor-link-close\x20{\x0a\x20\x20width:\x2028px;\x0a\x20\x20height:\x2028px;\x0a\x20\x20border:\x20none;\x0a\x20\x20border-radius:\x20var(--radius-small,\x208px);\x0a\x20\x20background:\x20transparent;\x0a\x20\x20color:\x20var(--color-text-muted,\x20var(--feedback-text-muted,\x20#6b7280));\x0a\x20\x20font-size:\x2020px;\x0a\x20\x20line-height:\x201;\x0a\x20\x20cursor:\x20pointer;\x0a}\x0a\x0a.markdown-editor-link-close:hover\x20{\x0a\x20\x20background:\x20var(--color-surface-muted,\x20var(--feedback-surface-muted,\x20#f3f4f6));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a}\x0a\x0a.markdown-editor-link-form\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20flex-direction:\x20column;\x0a\x20\x20gap:\x2010px;\x0a}\x0a\x0a.markdown-editor-link-field-grid\x20{\x0a\x20\x20display:\x20grid;\x0a\x20\x20gap:\x2010px;\x0a}\x0a\x0a.markdown-editor-link-label\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20flex-direction:\x20column;\x0a\x20\x20gap:\x206px;\x0a\x20\x20font-size:\x2012px;\x0a\x20\x20font-weight:\x20600;\x0a\x20\x20color:\x20var(--color-text-muted,\x20var(--feedback-text-muted,\x20#4b5563));\x0a}\x0a\x0a.markdown-editor-link-input\x20{\x0a\x20\x20width:\x20100%;\x0a\x20\x20padding:\x209px\x2010px;\x0a\x20\x20border:\x201px\x20solid\x20var(--color-border,\x20var(--feedback-border,\x20#d1d5db));\x0a\x20\x20border-radius:\x20var(--radius-small,\x208px);\x0a\x20\x20background:\x20var(--color-surface,\x20var(--feedback-surface,\x20#ffffff));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a\x20\x20font-size:\x2014px;\x0a}\x0a\x0a.markdown-editor-link-input:focus\x20{\x0a\x20\x20outline:\x20none;\x0a\x20\x20border-color:\x20var(--color-primary,\x20#3f72ff);\x0a\x20\x20box-shadow:\x200\x200\x200\x203px\x20rgba(63,\x20114,\x20255,\x200.2);\x0a}\x0a\x0a.markdown-editor-link-actions\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20justify-content:\x20flex-end;\x0a\x20\x20gap:\x208px;\x0a}\x0a\x0a.markdown-editor-link-btn\x20{\x0a\x20\x20border:\x201px\x20solid\x20transparent;\x0a\x20\x20border-radius:\x20var(--radius-small,\x208px);\x0a\x20\x20padding:\x207px\x2012px;\x0a\x20\x20font-size:\x2013px;\x0a\x20\x20font-weight:\x20600;\x0a\x20\x20cursor:\x20pointer;\x0a}\x0a\x0a.markdown-editor-link-btn-secondary\x20{\x0a\x20\x20background:\x20var(--color-surface-muted,\x20var(--feedback-surface-muted,\x20#f3f4f6));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a\x20\x20border-color:\x20var(--color-border,\x20var(--feedback-border,\x20#d1d5db));\x0a}\x0a\x0a.markdown-editor-link-btn-secondary:hover\x20{\x0a\x20\x20background:\x20var(--color-bg-secondary,\x20var(--feedback-surface-hover,\x20#e5e7eb));\x0a}\x0a\x0a.markdown-editor-link-btn-danger\x20{\x0a\x20\x20background:\x20transparent;\x0a\x20\x20color:\x20var(--color-danger,\x20#dc2626);\x0a\x20\x20border-color:\x20rgba(220,\x2038,\x2038,\x200.35);\x0a}\x0a\x0a.markdown-editor-link-btn-danger:hover\x20{\x0a\x20\x20background:\x20rgba(220,\x2038,\x2038,\x200.08);\x0a}\x0a\x0a.markdown-editor-link-btn-primary\x20{\x0a\x20\x20background:\x20var(--color-primary,\x20#3f72ff);\x0a\x20\x20color:\x20#ffffff;\x0a}\x0a\x0a.markdown-editor-link-btn-primary:hover\x20{\x0a\x20\x20background:\x20var(--color-accent,\x20#2563eb);\x0a}\x0a\x0a[data-theme=\x22dark\x22]\x20.markdown-editor-link-backdrop\x20{\x0a\x20\x20background:\x20rgba(2,\x206,\x2023,\x200.65);\x0a}\x0a\x0a[data-theme=\x22dark\x22]\x20.markdown-editor-link-dialog\x20{\x0a\x20\x20box-shadow:\x200\x2018px\x2042px\x20rgba(0,\x200,\x200,\x200.5);\x0a}\x0a\x0a@media\x20(max-width:\x20480px)\x20{\x0a\x20\x20.markdown-editor-link-dialog\x20{\x0a\x20\x20\x20\x20width:\x20calc(100vw\x20-\x2016px);\x0a\x20\x20\x20\x20padding:\x2012px;\x0a\x20\x20}\x0a\x0a\x20\x20.markdown-editor-link-actions\x20{\x0a\x20\x20\x20\x20flex-wrap:\x20wrap;\x0a\x20\x20}\x0a\x0a\x20\x20.markdown-editor-link-btn\x20{\x0a\x20\x20\x20\x20flex:\x201\x201\x20calc(50%\x20-\x206px);\x0a\x20\x20\x20\x20text-align:\x20center;\x0a\x20\x20}\x0a}\x0a';export class MarkdownEditor{constructor(_0xe06438,_0x435d92={}){this['element']=_0xe06438,this['options']={'placeholder':_0x435d92['placeholder']||'Start\x20typing...','editable':_0x435d92['editable']!==![],'onChange':_0x435d92['onChange']||null,'minHeight':_0x435d92['minHeight']||'100px','toolbar':_0x435d92['toolbar']||![],'onAddAttachments':_0x435d92['onAddAttachments']||null,'resolveAttachmentUrl':_0x435d92['resolveAttachmentUrl']||null,'isAttachmentNameTaken':_0x435d92['isAttachmentNameTaken']||null,'fetchUsers':_0x435d92['fetchUsers']||null},this['mentionState']={'active':![],'query':'','startOffset':0x0,'startNode':null,'users':[],'filteredUsers':[],'selectedIndex':0x0},this['mentionDropdown']=null,this['usersCache']=null,this['linkDialog']=null,this['linkDialogContext']=null;const _0x55bb00=window['TurndownService'];this['turndownService']=new _0x55bb00({'headingStyle':'atx','codeBlockStyle':'fenced','emDelimiter':'_','bulletListMarker':'-'}),this['attachmentObjectUrls']=new Map(),this['registerTurndownRules'](),this['init']();}['registerTurndownRules'](){this['turndownService']['addRule']('profoundAttachmentImage',{'filter':_0x479ea3=>{return _0x479ea3&&_0x479ea3['nodeName']==='IMG'&&_0x479ea3['getAttribute']&&_0x479ea3['getAttribute']('data-attachment-name');},'replacement':(_0x59b1ca,_0xedb0bc)=>{const _0x4fd016=_0xedb0bc['getAttribute']('data-attachment-name')||'',_0x5d76a5=_0xedb0bc['getAttribute']('alt')||'',_0x596a7e=_0x4fd016['trim'](),_0x5153af=this['escapeAltText'](_0x5d76a5||_0x596a7e),_0x5e79fa=encodeURIComponent(_0x596a7e);return'';}}),this['turndownService']['addRule']('profoundMention',{'filter':_0x465220=>{return _0x465220&&_0x465220['nodeName']==='SPAN'&&_0x465220['getAttribute']&&_0x465220['getAttribute']('data-mention-user-id');},'replacement':(_0x5e89c2,_0x1cee08)=>{const _0x313232=_0x1cee08['getAttribute']('data-mention-user-id')||'',_0x3dbc12=_0x1cee08['textContent']||'',_0x3dea95=_0x3dbc12['startsWith']('@')?_0x3dbc12['slice'](0x1):_0x3dbc12;return'['+_0x3dea95+'](mention:'+_0x313232+')';}}),this['turndownService']['addRule']('profoundColoredText',{'filter':_0x2171ef=>{if(!_0x2171ef)return![];if(_0x2171ef['nodeName']==='FONT'&&_0x2171ef['getAttribute']&&_0x2171ef['getAttribute']('color'))return!![];if(_0x2171ef['nodeName']==='SPAN'&&_0x2171ef['style']&&_0x2171ef['style']['color']){if(_0x2171ef['getAttribute']&&_0x2171ef['getAttribute']('data-mention-user-id'))return![];return!![];}return![];},'replacement':(_0x1f83ea,_0x1a5aad)=>{if(!_0x1f83ea['trim']())return _0x1f83ea;let _0x17d444='';if(_0x1a5aad['nodeName']==='FONT')_0x17d444=_0x1a5aad['getAttribute']('color')||'';else _0x1a5aad['style']&&_0x1a5aad['style']['color']&&(_0x17d444=this['rgbToHex'](_0x1a5aad['style']['color']));if(!_0x17d444)return _0x1f83ea;return'{color:'+_0x17d444+'}'+_0x1f83ea+'{/color}';}});}['rgbToHex'](_0x2f4dce){if(!_0x2f4dce)return'';if(_0x2f4dce['startsWith']('#'))return _0x2f4dce;const _0x29db5e=_0x2f4dce['match'](/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(!_0x29db5e)return _0x2f4dce;const _0x4e2449=parseInt(_0x29db5e[0x1],0xa),_0x4f60f8=parseInt(_0x29db5e[0x2],0xa),_0x243cf7=parseInt(_0x29db5e[0x3],0xa);return'#'+[_0x4e2449,_0x4f60f8,_0x243cf7]['map'](_0x4a521b=>_0x4a521b['toString'](0x10)['padStart'](0x2,'0'))['join']('')['toUpperCase']();}['escapeAltText'](_0x166828){return String(_0x166828||'')['replace'](/\]/g,'\x5c]');}['init'](){this['editor']=document['createElement']('div'),this['editor']['className']='markdown-editor',this['editor']['contentEditable']=this['options']['editable'],this['editor']['setAttribute']('role','textbox'),this['editor']['setAttribute']('aria-multiline','true'),this['editor']['style']['minHeight']=this['options']['minHeight'];this['options']['placeholder']&&this['editor']['setAttribute']('data-placeholder',this['options']['placeholder']);this['options']['toolbar']?(this['container']=document['createElement']('div'),this['container']['className']='markdown-editor-wrapper',this['container']['style']['display']='flex',this['container']['style']['flexDirection']='column',this['createToolbar'](),this['container']['appendChild'](this['toolbar']),this['container']['appendChild'](this['editor']),this['element']['parentNode']['insertBefore'](this['container'],this['element'])):this['element']['parentNode']['insertBefore'](this['editor'],this['element']);this['element']['style']['display']='none',this['isMac']=navigator['platform']['toUpperCase']()['indexOf']('MAC')>=0x0,this['linkHintText']=this['isMac']?'⌘+click\x20to\x20follow':'Ctrl+click\x20to\x20follow';this['options']['editable']&&this['bindEvents']();const _0x2880cc=this['element']['textContent']||this['element']['value']||'';_0x2880cc['trim']()&&this['setMarkdown'](_0x2880cc);}['createToolbar'](){this['toolbar']=document['createElement']('div'),this['toolbar']['className']='markdown-editor-toolbar',this['toolbarButtons']={};const _0x34193f=[{'id':'header','icon':ICONS['header'],'title':'Heading','action':'header','isDropdown':!![]},{'separator':!![]},{'id':'bold','icon':ICONS['bold'],'title':'Bold\x20(Ctrl+B)','action':'bold','command':'bold'},{'id':'italic','icon':ICONS['italic'],'title':'Italic\x20(Ctrl+I)','action':'italic','command':'italic'},{'id':'strike','icon':ICONS['strike'],'title':'Strikethrough','action':'strikeThrough','command':'strikeThrough'},{'id':'color','icon':ICONS['color'],'title':'Text\x20Color','action':'color','isDropdown':!![]},{'separator':!![]},{'id':'link','icon':ICONS['link'],'title':'Link\x20(Ctrl+K)','action':'link','tagName':'A'},{'id':'code','icon':ICONS['code'],'title':'Inline\x20Code','action':'code','tagName':'CODE'},{'id':'codeBlock','icon':ICONS['codeBlock'],'title':'Code\x20Block','action':'codeBlock','tagName':'PRE'},{'separator':!![]},{'id':'list-bullet','icon':ICONS['listBullet'],'title':'Bullet\x20List','action':'insertUnorderedList','command':'insertUnorderedList'},{'id':'list-ordered','icon':ICONS['listOrdered'],'title':'Numbered\x20List','action':'insertOrderedList','command':'insertOrderedList'}];_0x34193f['forEach'](_0x583b10=>{if(_0x583b10['separator']){const _0x4d45c9=document['createElement']('div');_0x4d45c9['className']='markdown-toolbar-separator',_0x4d45c9['style']['width']='1px',_0x4d45c9['style']['height']='16px',_0x4d45c9['style']['background']='var(--color-border)',_0x4d45c9['style']['margin']='0\x206px',_0x4d45c9['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x4d45c9);}else{if(_0x583b10['isDropdown']){const _0x1e3514=document['createElement']('div');_0x1e3514['className']='markdown-toolbar-dropdown',_0x1e3514['style']['position']='relative';const _0x3983f4=document['createElement']('button');_0x3983f4['type']='button',_0x3983f4['className']='markdown-editor-toolbar-btn\x20markdown-toolbar-dropdown-btn',_0x3983f4['tabIndex']=-0x1,_0x3983f4['innerHTML']=_0x583b10['icon']+'<svg\x20class=\x22dropdown-arrow\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2210\x22\x20height=\x2210\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22><polyline\x20points=\x226\x209\x2012\x2015\x2018\x209\x22></polyline></svg>',_0x3983f4['title']=_0x583b10['title'],_0x3983f4['dataset']['action']=_0x583b10['action'];const _0x1e8ffb=document['createElement']('div');_0x1e8ffb['className']='markdown-toolbar-dropdown-menu',_0x1e8ffb['style']['display']='none';if(_0x583b10['action']==='header')this['createHeaderDropdown'](_0x1e8ffb);else _0x583b10['action']==='color'&&this['createColorDropdown'](_0x1e8ffb);_0x3983f4['addEventListener']('click',_0x4e980c=>{_0x4e980c['preventDefault'](),_0x4e980c['stopPropagation'](),this['toggleDropdown'](_0x1e8ffb,_0x3983f4);}),_0x1e3514['appendChild'](_0x3983f4),_0x1e3514['appendChild'](_0x1e8ffb),this['toolbar']['appendChild'](_0x1e3514),this['toolbarButtons'][_0x583b10['id']]={'button':_0x3983f4,'dropdown':_0x1e8ffb,'command':_0x583b10['command'],'tagName':_0x583b10['tagName']};}else{const _0x3cdd53=document['createElement']('button');_0x3cdd53['type']='button',_0x3cdd53['className']='markdown-editor-toolbar-btn',_0x3cdd53['tabIndex']=-0x1,_0x3cdd53['innerHTML']=_0x583b10['icon'],_0x3cdd53['title']=_0x583b10['title'],_0x3cdd53['dataset']['action']=_0x583b10['action'],_0x3cdd53['addEventListener']('click',_0x2d4d8f=>{_0x2d4d8f['preventDefault'](),this['handleToolbarAction'](_0x583b10['action']);}),this['toolbar']['appendChild'](_0x3cdd53),this['toolbarButtons'][_0x583b10['id']]={'button':_0x3cdd53,'command':_0x583b10['command'],'tagName':_0x583b10['tagName']};}}}),document['addEventListener']('click',_0x4c9b2d=>{!this['toolbar']['contains'](_0x4c9b2d['target'])&&this['closeAllDropdowns']();});}['createHeaderDropdown'](_0x399361){const _0x29cb75=[{'level':0x1,'label':'Heading\x201','tag':'H1'},{'level':0x2,'label':'Heading\x202','tag':'H2'},{'level':0x3,'label':'Heading\x203','tag':'H3'},{'level':0x4,'label':'Heading\x204','tag':'H4'},{'level':0x0,'label':'Normal\x20Text','tag':'P'}];_0x29cb75['forEach'](_0x1e40d7=>{const _0xccd23=document['createElement']('button');_0xccd23['type']='button',_0xccd23['className']='markdown-dropdown-item',_0xccd23['tabIndex']=-0x1,_0xccd23['innerHTML']='<span\x20style=\x22font-size:\x20'+(_0x1e40d7['level']===0x0?'14px':0x14-_0x1e40d7['level']*0x2+'px')+';\x20font-weight:\x20'+(_0x1e40d7['level']===0x0?'normal':'bold')+'\x22>'+_0x1e40d7['label']+'</span>',_0xccd23['addEventListener']('click',_0xba9b6=>{_0xba9b6['preventDefault'](),_0xba9b6['stopPropagation'](),this['applyHeader'](_0x1e40d7['level']),this['closeAllDropdowns']();}),_0x399361['appendChild'](_0xccd23);});}['createColorDropdown'](_0x3d9f1a){const _0x65d5f8=[{'value':'#000000','label':'Black'},{'value':'#374151','label':'Gray'},{'value':'#DC2626','label':'Red'},{'value':'#EA580C','label':'Orange'},{'value':'#CA8A04','label':'Yellow'},{'value':'#16A34A','label':'Green'},{'value':'#2563EB','label':'Blue'},{'value':'#7C3AED','label':'Purple'},{'value':'#DB2777','label':'Pink'}],_0x3f60da=document['createElement']('div');_0x3f60da['className']='markdown-color-grid',_0x3f60da['style']['display']='grid',_0x3f60da['style']['gridTemplateColumns']='repeat(3,\x201fr)',_0x3f60da['style']['gap']='4px',_0x3f60da['style']['padding']='8px',_0x65d5f8['forEach'](_0x4dae85=>{const _0x2614a8=document['createElement']('button');_0x2614a8['type']='button',_0x2614a8['className']='markdown-color-btn',_0x2614a8['tabIndex']=-0x1,_0x2614a8['style']['width']='24px',_0x2614a8['style']['height']='24px',_0x2614a8['style']['backgroundColor']=_0x4dae85['value'],_0x2614a8['style']['border']='1px\x20solid\x20var(--color-border)',_0x2614a8['style']['borderRadius']='4px',_0x2614a8['style']['cursor']='pointer',_0x2614a8['title']=_0x4dae85['label'],_0x2614a8['addEventListener']('click',_0x43e167=>{_0x43e167['preventDefault'](),_0x43e167['stopPropagation'](),this['applyColor'](_0x4dae85['value']),this['closeAllDropdowns']();}),_0x3f60da['appendChild'](_0x2614a8);}),_0x3d9f1a['appendChild'](_0x3f60da);const _0x28c881=document['createElement']('button');_0x28c881['type']='button',_0x28c881['className']='markdown-dropdown-item',_0x28c881['innerHTML']='<span>Remove\x20Color</span>',_0x28c881['style']['borderTop']='1px\x20solid\x20var(--color-border)',_0x28c881['style']['marginTop']='4px',_0x28c881['style']['paddingTop']='8px',_0x28c881['addEventListener']('click',_0x23e1ba=>{_0x23e1ba['preventDefault'](),_0x23e1ba['stopPropagation'](),this['removeColor'](),this['closeAllDropdowns']();}),_0x3d9f1a['appendChild'](_0x28c881);}['toggleDropdown'](_0x47d571,_0x10d04d){const _0x4c06ee=_0x47d571['style']['display']!=='none';this['toolbar']&&this['closeAllDropdowns'](),!_0x4c06ee&&(_0x47d571['style']['display']='block',_0x10d04d['classList']['add']('active'));}['closeAllDropdowns'](){const _0x1bd1be=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-menu');_0x1bd1be['forEach'](_0x316b86=>_0x316b86['style']['display']='none');const _0x3b0000=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-btn');_0x3b0000['forEach'](_0x557d82=>_0x557d82['classList']['remove']('active'));}['applyHeader'](_0xd90e01){this['editor']['focus']();const _0x3e6f64=window['getSelection']();if(!_0x3e6f64||_0x3e6f64['rangeCount']===0x0)return;const _0x706444=_0x3e6f64['getRangeAt'](0x0);let _0x414f6e=_0x706444['startContainer'];while(_0x414f6e&&_0x414f6e!==this['editor']){if(_0x414f6e['nodeType']===Node['ELEMENT_NODE']){const _0x3a7cb6=window['getComputedStyle'](_0x414f6e)['display'];if(_0x3a7cb6==='block'||['P','H1','H2','H3','H4','H5','H6','DIV']['includes'](_0x414f6e['tagName']))break;}_0x414f6e=_0x414f6e['parentNode'];}_0xd90e01===0x0?document['execCommand']('formatBlock',![],'p'):document['execCommand']('formatBlock',![],'h'+_0xd90e01),this['editor']['dispatchEvent'](new Event('input'));}['applyColor'](_0x231d8d){this['editor']['focus'](),document['execCommand']('foreColor',![],_0x231d8d),this['editor']['dispatchEvent'](new Event('input'));}['removeColor'](){this['editor']['focus'](),document['execCommand']('removeFormat',![],null),this['editor']['dispatchEvent'](new Event('input'));}['handleToolbarAction'](_0x2dd637){this['editor']['focus']();switch(_0x2dd637){case'bold':case'italic':case'strikeThrough':case'insertUnorderedList':case'insertOrderedList':document['execCommand'](_0x2dd637,![],null);break;case'link':this['openLinkDialog']();return;case'code':this['toggleInlineCode']();break;case'codeBlock':this['insertCodeBlock']();break;}this['updateToolbarState'](),this['editor']['dispatchEvent'](new Event('input'));}['ensureLinkDialog'](){if(this['linkDialog'])return;this['ensureLinkDialogStyles']();const _0x4ff14f=document['createElement']('div');_0x4ff14f['className']='markdown-editor-link-modal',_0x4ff14f['hidden']=!![],_0x4ff14f['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-backdrop\x22></div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-dialog\x22\x20role=\x22dialog\x22\x20aria-modal=\x22true\x22\x20aria-label=\x22Edit\x20link\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<h3\x20class=\x22markdown-editor-link-title\x22>Insert\x20Link</h3>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22markdown-editor-link-close\x22\x20aria-label=\x22Close\x22>×</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<form\x20class=\x22markdown-editor-link-form\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-field-grid\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22markdown-editor-link-label\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20URL\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20class=\x22markdown-editor-link-input\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20data-link-field=\x22url\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type=\x22text\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20placeholder=\x22https://example.com\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20autocomplete=\x22off\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20spellcheck=\x22false\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22markdown-editor-link-label\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Display\x20text\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20class=\x22markdown-editor-link-input\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20data-link-field=\x22text\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type=\x22text\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20placeholder=\x22Text\x20shown\x20to\x20readers\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20autocomplete=\x22off\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20spellcheck=\x22false\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-actions\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22markdown-editor-link-btn\x20markdown-editor-link-btn-secondary\x22\x20data-action=\x22cancel\x22>Cancel</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22markdown-editor-link-btn\x20markdown-editor-link-btn-danger\x22\x20data-action=\x22remove\x22\x20hidden>Remove\x20Link</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22submit\x22\x20class=\x22markdown-editor-link-btn\x20markdown-editor-link-btn-primary\x22>Insert\x20Link</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</form>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20',document['body']['appendChild'](_0x4ff14f),this['linkDialog']=_0x4ff14f,this['linkDialogElements']={'backdrop':_0x4ff14f['querySelector']('.markdown-editor-link-backdrop'),'title':_0x4ff14f['querySelector']('.markdown-editor-link-title'),'close':_0x4ff14f['querySelector']('.markdown-editor-link-close'),'form':_0x4ff14f['querySelector']('.markdown-editor-link-form'),'urlInput':_0x4ff14f['querySelector']('[data-link-field=\x22url\x22]'),'textInput':_0x4ff14f['querySelector']('[data-link-field=\x22text\x22]'),'remove':_0x4ff14f['querySelector']('[data-action=\x22remove\x22]'),'cancel':_0x4ff14f['querySelector']('[data-action=\x22cancel\x22]'),'submit':_0x4ff14f['querySelector']('.markdown-editor-link-btn-primary')},this['linkDialogElements']['backdrop']['addEventListener']('click',()=>{this['closeLinkDialog']({'restoreSelection':!![]});}),this['linkDialogElements']['close']['addEventListener']('click',()=>{this['closeLinkDialog']({'restoreSelection':!![]});}),this['linkDialogElements']['cancel']['addEventListener']('click',()=>{this['closeLinkDialog']({'restoreSelection':!![]});}),this['linkDialogElements']['remove']['addEventListener']('click',()=>{this['applyLinkDialogResult']({'remove':!![]});}),this['linkDialogElements']['form']['addEventListener']('submit',_0x4b69f3=>{_0x4b69f3['preventDefault'](),this['applyLinkDialogResult']();}),this['linkDialog']['addEventListener']('keydown',_0x573e41=>{_0x573e41['key']==='Escape'&&(_0x573e41['preventDefault'](),this['closeLinkDialog']({'restoreSelection':!![]}));});}['openLinkDialog'](){const _0x4e01fb=window['getSelection']();if(!_0x4e01fb||_0x4e01fb['rangeCount']===0x0)return;const _0x1262d7=_0x4e01fb['getRangeAt'](0x0),_0x170eac=this['editor']['contains'](_0x1262d7['commonAncestorContainer'])||this['editor']===_0x1262d7['commonAncestorContainer'];if(!_0x170eac)return;this['toolbar']&&this['closeAllDropdowns']();this['ensureLinkDialog']();const _0x447ee9=_0x1262d7['cloneRange'](),_0x4368af=this['findLinkAtRange'](_0x447ee9),_0x309846=_0x4368af?_0x4368af['getAttribute']('href')||'':'',_0xa69bf4=_0x4368af?_0x4368af['textContent']||'':_0x447ee9['toString']();this['linkDialogContext']={'range':_0x447ee9,'existingLink':_0x4368af,'selectedText':_0xa69bf4},this['linkDialogElements']['title']['textContent']=_0x4368af?'Edit\x20Link':'Insert\x20Link',this['linkDialogElements']['submit']['textContent']=_0x4368af?'Save\x20Link':'Insert\x20Link',this['linkDialogElements']['remove']['hidden']=!_0x4368af,this['linkDialogElements']['urlInput']['value']=_0x309846,this['linkDialogElements']['textInput']['value']=_0xa69bf4,this['linkDialog']['hidden']=![],this['linkDialogElements']['urlInput']['focus'](),this['linkDialogElements']['urlInput']['select']();}['closeLinkDialog']({restoreSelection:restoreSelection=![]}={}){if(!this['linkDialog'])return;const _0x56428d=this['linkDialogContext'];this['linkDialog']['hidden']=!![],restoreSelection&&_0x56428d?.['range']&&(this['editor']['focus'](),this['restoreRange'](_0x56428d['range'])),this['linkDialogContext']=null;}['applyLinkDialogResult']({remove:remove=![]}={}){if(!this['linkDialog']||!this['linkDialogContext'])return;const _0x339864=this['linkDialogContext'],_0x37685e=(this['linkDialogElements']['urlInput']['value']||'')['trim'](),_0x5e309f=this['linkDialogElements']['textInput']['value']||'',_0x4f3ab4=_0x5e309f['trim']();if(!remove&&!_0x37685e){this['linkDialogElements']['urlInput']['focus']();return;}this['closeLinkDialog'](),this['editor']['focus'](),this['restoreRange'](_0x339864['range']);if(remove)_0x339864['existingLink']&&_0x339864['existingLink']['parentNode']?this['unwrapLinkElement'](_0x339864['existingLink']):document['execCommand']('unlink',![],null);else{if(_0x339864['existingLink']&&_0x339864['existingLink']['parentNode'])_0x339864['existingLink']['setAttribute']('href',_0x37685e),_0x339864['existingLink']['textContent']=_0x4f3ab4||_0x37685e;else{const _0x73a301=window['getSelection']();if(!_0x73a301||_0x73a301['rangeCount']===0x0)return;const _0x1f788f=_0x73a301['getRangeAt'](0x0),_0x1c1d0d=(_0x339864['selectedText']||'')['trim'](),_0x2eee07=_0x4f3ab4||_0x1c1d0d||_0x37685e;_0x1f788f['deleteContents']();const _0x17ae1b=document['createElement']('a');_0x17ae1b['href']=_0x37685e,_0x17ae1b['textContent']=_0x2eee07,_0x1f788f['insertNode'](_0x17ae1b),_0x1f788f['setStartAfter'](_0x17ae1b),_0x1f788f['collapse'](!![]),_0x73a301['removeAllRanges'](),_0x73a301['addRange'](_0x1f788f);}}this['addLinkHints'](),this['updateToolbarState'](),this['editor']['dispatchEvent'](new Event('input'));}['ensureLinkDialogStyles'](){if(document['getElementById'](LINK_DIALOG_STYLE_ID))return;const _0x198a6b=document['createElement']('style');_0x198a6b['id']=LINK_DIALOG_STYLE_ID,_0x198a6b['textContent']=LINK_DIALOG_STYLES,document['head']['appendChild'](_0x198a6b);}['restoreRange'](_0x188f15){const _0x56c8f0=window['getSelection']();if(!_0x56c8f0)return;try{_0x56c8f0['removeAllRanges'](),_0x56c8f0['addRange'](_0x188f15);return;}catch(_0x17e1f2){}const _0x388fb1=document['createRange']();_0x388fb1['selectNodeContents'](this['editor']),_0x388fb1['collapse'](![]),_0x56c8f0['removeAllRanges'](),_0x56c8f0['addRange'](_0x388fb1);}['findLinkAtRange'](_0x46b782){if(!_0x46b782)return null;const _0x45c484=this['findParentLink'](_0x46b782['startContainer']);if(_0x46b782['collapsed'])return _0x45c484;const _0x1b164b=this['findParentLink'](_0x46b782['endContainer']);if(_0x45c484&&_0x45c484===_0x1b164b)return _0x45c484;if(_0x45c484&&_0x45c484['contains'](_0x46b782['endContainer']))return _0x45c484;if(_0x1b164b&&_0x1b164b['contains'](_0x46b782['startContainer']))return _0x1b164b;return null;}['findParentLink'](_0x4aaaae){let _0x47667e=_0x4aaaae;while(_0x47667e&&_0x47667e!==this['editor']){if(_0x47667e['nodeType']===Node['ELEMENT_NODE']&&_0x47667e['tagName']==='A'){const _0x16d4db=_0x47667e['getAttribute']('href')||'';if(_0x16d4db['startsWith']('mention:'))return null;return _0x47667e;}_0x47667e=_0x47667e['parentNode'];}return null;}['unwrapLinkElement'](_0x43d27b){const _0x4cdc2c=_0x43d27b['parentNode'];if(!_0x4cdc2c)return;while(_0x43d27b['firstChild']){_0x4cdc2c['insertBefore'](_0x43d27b['firstChild'],_0x43d27b);}_0x4cdc2c['removeChild'](_0x43d27b);}['isSelectionInTag'](_0x3a771d){const _0x28486e=window['getSelection']();if(!_0x28486e||_0x28486e['rangeCount']===0x0)return![];let _0x51d4df=_0x28486e['anchorNode'];while(_0x51d4df&&_0x51d4df!==this['editor']){if(_0x51d4df['nodeType']===Node['ELEMENT_NODE']&&_0x51d4df['tagName']===_0x3a771d)return!![];_0x51d4df=_0x51d4df['parentNode'];}return![];}['updateToolbarState'](){if(!this['toolbarButtons'])return;for(const [_0x47a788,_0x2a6512]of Object['entries'](this['toolbarButtons'])){let _0xcd19f6=![];if(_0x2a6512['command'])try{_0xcd19f6=document['queryCommandState'](_0x2a6512['command']);}catch(_0x280458){_0xcd19f6=![];}else _0x2a6512['tagName']&&(_0xcd19f6=this['isSelectionInTag'](_0x2a6512['tagName']));_0x2a6512['button']['classList']['toggle']('active',_0xcd19f6);}}['bindEvents'](){this['editor']['addEventListener']('keydown',_0x43c024=>this['handleKeydown'](_0x43c024)),this['editor']['addEventListener']('input',_0x1404ba=>{this['handleMentionInput'](_0x1404ba),this['handleAutoFormat'](_0x1404ba);}),this['editor']['addEventListener']('input',()=>{const _0x275aff=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');!_0x275aff&&(this['editor']['innerHTML']='');this['updatePlaceholder']();const _0x5f572c=this['getMarkdown']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x5f572c:this['element']['textContent']=_0x5f572c,this['options']['onChange']&&this['options']['onChange'](_0x5f572c);}),this['editor']['addEventListener']('paste',_0x1f3e32=>this['handlePaste'](_0x1f3e32)),this['editor']['addEventListener']('dragover',_0x55be7e=>this['handleDragOver'](_0x55be7e)),this['editor']['addEventListener']('drop',_0x463e36=>this['handleDrop'](_0x463e36)),this['editor']['addEventListener']('dragstart',_0x1a23ac=>this['handleDragStart'](_0x1a23ac)),this['options']['toolbar']&&(this['selectionChangeHandler']=()=>{(this['editor']['contains'](document['activeElement'])||this['editor']===document['activeElement'])&&this['updateToolbarState']();},document['addEventListener']('selectionchange',this['selectionChangeHandler']),this['editor']['addEventListener']('keyup',()=>this['updateToolbarState']()),this['editor']['addEventListener']('mouseup',()=>this['updateToolbarState']()),this['editor']['addEventListener']('focus',()=>this['updateToolbarState']())),this['linkClickHandler']=_0x39c3c9=>this['handleLinkClick'](_0x39c3c9),this['editor']['addEventListener']('click',this['linkClickHandler']),this['linkMouseEnterHandler']=_0x54ea66=>this['handleLinkMouseEnter'](_0x54ea66),this['linkMouseLeaveHandler']=_0x248329=>this['handleLinkMouseLeave'](_0x248329),this['editor']['addEventListener']('mouseover',this['linkMouseEnterHandler']),this['editor']['addEventListener']('mouseout',this['linkMouseLeaveHandler']),this['updatePlaceholder']();}['handleAutoFormat'](_0x1cc7ab){if(_0x1cc7ab['inputType']==='deleteContentBackward')return;const _0x4e228c=window['getSelection']();if(!_0x4e228c||_0x4e228c['rangeCount']===0x0)return;const _0x35d8f2=_0x4e228c['getRangeAt'](0x0),_0x5ea157=_0x35d8f2['startContainer'];if(_0x5ea157['nodeType']!==Node['TEXT_NODE'])return;if(this['isSelectionInTag']('CODE')||this['isSelectionInTag']('PRE'))return;const _0x1a386a=_0x5ea157['textContent'],_0x2da60b=_0x35d8f2['startOffset'],_0x3197d5=_0x1a386a['slice'](0x0,_0x2da60b);if(_0x3197d5['endsWith']('```')){_0x35d8f2['setStart'](_0x5ea157,_0x2da60b-0x3),_0x35d8f2['setEnd'](_0x5ea157,_0x2da60b),_0x35d8f2['deleteContents'](),this['insertCodeBlock']();return;}const _0x85a7b2=/`([^`]+)`$/,_0x42ea43=_0x3197d5['match'](_0x85a7b2);if(_0x42ea43){const _0x4b5461=_0x42ea43[0x1];if(_0x4b5461){const _0x71c4f2=_0x42ea43['index'],_0x41c001=_0x71c4f2+_0x4b5461['length']+0x2;_0x35d8f2['setStart'](_0x5ea157,_0x71c4f2),_0x35d8f2['setEnd'](_0x5ea157,_0x2da60b),_0x35d8f2['deleteContents']();const _0xe6db05=document['createElement']('code');_0xe6db05['textContent']=_0x4b5461,_0x35d8f2['insertNode'](_0xe6db05),_0x35d8f2['setStartAfter'](_0xe6db05),_0x35d8f2['setEndAfter'](_0xe6db05);const _0x174c50=document['createTextNode']('');_0x35d8f2['insertNode'](_0x174c50),_0x35d8f2['setStartAfter'](_0x174c50),_0x35d8f2['setEndAfter'](_0x174c50),_0x4e228c['removeAllRanges'](),_0x4e228c['addRange'](_0x35d8f2);return;}}const _0xf7fc3=_0x3197d5['match'](/^[-*][\s\u00A0]$/);if(_0xf7fc3&&this['isAtStartOfBlock'](_0x5ea157)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x35d8f2['setStart'](_0x5ea157,Math['max'](_0x2da60b-0x2,0x0)),_0x35d8f2['setEnd'](_0x5ea157,_0x2da60b),_0x35d8f2['deleteContents']();const _0x40547c=this['ensureListInsertionAnchor'](_0x5ea157);document['execCommand']('insertUnorderedList',![],null);_0x40547c&&_0x40547c['parentNode']&&_0x40547c['parentNode']['removeChild'](_0x40547c);this['updateToolbarState']();return;}const _0x2aacb0=_0x3197d5['match'](/^1\.[\s\u00A0]$/);if(_0x2aacb0&&this['isAtStartOfBlock'](_0x5ea157)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x35d8f2['setStart'](_0x5ea157,Math['max'](_0x2da60b-0x3,0x0)),_0x35d8f2['setEnd'](_0x5ea157,_0x2da60b),_0x35d8f2['deleteContents']();const _0x198224=this['ensureListInsertionAnchor'](_0x5ea157);document['execCommand']('insertOrderedList',![],null);_0x198224&&_0x198224['parentNode']&&_0x198224['parentNode']['removeChild'](_0x198224);this['updateToolbarState']();return;}}['isAtStartOfBlock'](_0x49cdce){let _0x57a820=_0x49cdce;while(_0x57a820&&_0x57a820!==this['editor']){const _0x2448e4=_0x57a820['parentNode'];if(!_0x2448e4)break;const _0x5d0834=_0x2448e4['tagName'];if(_0x5d0834==='DIV'||_0x5d0834==='P'||_0x5d0834==='LI'||_0x2448e4===this['editor']){let _0x2ae7e8=_0x2448e4['firstChild'];while(_0x2ae7e8&&(_0x2ae7e8['nodeType']===Node['TEXT_NODE']&&_0x2ae7e8['textContent']===''||_0x2ae7e8['nodeType']===Node['ELEMENT_NODE']&&_0x2ae7e8['tagName']==='BR')){_0x2ae7e8=_0x2ae7e8['nextSibling'];}return _0x2ae7e8===_0x49cdce||_0x2ae7e8===_0x57a820;}_0x57a820=_0x2448e4;}if(_0x57a820===this['editor']||_0x49cdce['parentNode']===this['editor']){let _0x373bd8=this['editor']['firstChild'];while(_0x373bd8&&(_0x373bd8['nodeType']===Node['TEXT_NODE']&&_0x373bd8['textContent']===''||_0x373bd8['nodeType']===Node['ELEMENT_NODE']&&_0x373bd8['tagName']==='BR')){_0x373bd8=_0x373bd8['nextSibling'];}return _0x373bd8===_0x49cdce;}return![];}['getClosestBlockElement'](_0xbe581d){let _0x3f9c0a=_0xbe581d;while(_0x3f9c0a&&_0x3f9c0a!==this['editor']){const _0x509fa0=_0x3f9c0a['parentNode'];if(!_0x509fa0)break;const _0x2b9cca=_0x509fa0['tagName'];if(_0x2b9cca==='DIV'||_0x2b9cca==='P'||_0x2b9cca==='LI'||_0x509fa0===this['editor'])return _0x509fa0;_0x3f9c0a=_0x509fa0;}return this['editor'];}['ensureListInsertionAnchor'](_0x1e97ae){const _0x4a3273=window['getSelection']();if(!_0x4a3273||_0x4a3273['rangeCount']===0x0)return null;const _0x191a0b=this['getClosestBlockElement'](_0x1e97ae);if(!_0x191a0b||_0x191a0b===this['editor'])return null;const _0x5cc4bd=_0x191a0b['textContent']['replace'](/\u200B/g,'');if(_0x5cc4bd!=='')return null;const _0x1ea5cb=document['createTextNode']('');_0x191a0b['appendChild'](_0x1ea5cb);const _0x3ebfc8=document['createRange']();return _0x3ebfc8['setStart'](_0x1ea5cb,0x1),_0x3ebfc8['setEnd'](_0x1ea5cb,0x1),_0x4a3273['removeAllRanges'](),_0x4a3273['addRange'](_0x3ebfc8),_0x1ea5cb;}['getContainingListItem'](){const _0x294de8=window['getSelection']();if(!_0x294de8||_0x294de8['rangeCount']===0x0)return null;let _0x3aec60=_0x294de8['anchorNode'];while(_0x3aec60&&_0x3aec60!==this['editor']){if(_0x3aec60['nodeType']===Node['ELEMENT_NODE']&&_0x3aec60['tagName']==='LI')return _0x3aec60;_0x3aec60=_0x3aec60['parentNode'];}return null;}['isEmptyListItem'](_0x10ca4b){if(!_0x10ca4b)return![];const _0x96f0ea=_0x10ca4b['textContent']['replace'](/\u200B/g,'')['trim']();if(_0x96f0ea!=='')return![];const _0x3009fd=_0x10ca4b['querySelector']('img');if(_0x3009fd)return![];const _0x500ea5=_0x10ca4b['querySelector']('ul,\x20ol');if(_0x500ea5)return![];return!![];}['isCursorAtStartOfListItem'](_0x4dea59){if(!_0x4dea59)return![];const _0x174ef9=window['getSelection']();if(!_0x174ef9||_0x174ef9['rangeCount']===0x0||!_0x174ef9['isCollapsed'])return![];const _0x227259=_0x174ef9['getRangeAt'](0x0),_0x1c7619=_0x227259['startContainer'];if(_0x1c7619!==_0x4dea59&&!_0x4dea59['contains'](_0x1c7619))return![];const _0x58ad9d=_0x227259['cloneRange']();_0x58ad9d['setStart'](_0x4dea59,0x0),_0x58ad9d['setEnd'](_0x1c7619,_0x227259['startOffset']);const _0x1f508e=_0x58ad9d['toString']()['replace'](/\u200B/g,'')['replace'](/\u00A0/g,'\x20');return _0x1f508e['trim']()==='';}['indentListItem'](_0x573188){const _0xe860d9=_0x573188['previousElementSibling'];if(!_0xe860d9||_0xe860d9['tagName']!=='LI')return;const _0x297574=_0x573188['parentNode'],_0x13529a=_0x297574['tagName'];let _0x1cbc08=_0xe860d9['querySelector'](':scope\x20>\x20ul,\x20:scope\x20>\x20ol');!_0x1cbc08&&(_0x1cbc08=document['createElement'](_0x13529a),_0xe860d9['appendChild'](_0x1cbc08)),_0x1cbc08['appendChild'](_0x573188),this['placeCursorInListItem'](_0x573188);}['outdentListItem'](_0x25f5b0){const _0x4b75fc=_0x25f5b0['parentNode'];if(!_0x4b75fc||_0x4b75fc['tagName']!=='UL'&&_0x4b75fc['tagName']!=='OL')return;const _0x3ae4f7=_0x4b75fc['parentNode'];if(_0x3ae4f7&&_0x3ae4f7['tagName']==='LI'){const _0x2045a6=_0x3ae4f7['parentNode'];_0x2045a6['insertBefore'](_0x25f5b0,_0x3ae4f7['nextSibling']),_0x4b75fc['children']['length']===0x0&&_0x4b75fc['remove'](),this['placeCursorInListItem'](_0x25f5b0);}else return;}['exitListOnEmptyBullet'](_0x4e099a){const _0x2230b5=_0x4e099a['parentNode'];if(!_0x2230b5)return;const _0x59f658=_0x2230b5['parentNode'];if(_0x59f658&&_0x59f658['tagName']==='LI'){this['outdentListItem'](_0x4e099a);return;}const _0xc1dce=_0x2230b5['parentNode'],_0x3ff9f2=document['createElement']('p');_0x3ff9f2['innerHTML']='<br>',_0xc1dce['insertBefore'](_0x3ff9f2,_0x2230b5['nextSibling']),_0x4e099a['remove']();_0x2230b5['children']['length']===0x0&&_0x2230b5['remove']();const _0x47906b=window['getSelection'](),_0x2eed21=document['createRange']();_0x2eed21['setStart'](_0x3ff9f2,0x0),_0x2eed21['collapse'](!![]),_0x47906b['removeAllRanges'](),_0x47906b['addRange'](_0x2eed21);}['placeCursorInListItem'](_0x3a2ed3){const _0x45fc4a=window['getSelection'](),_0x5647fe=document['createRange'](),_0x167325=document['createTreeWalker'](_0x3a2ed3,NodeFilter['SHOW_TEXT'],null,![]),_0x20ce00=_0x167325['nextNode']();_0x20ce00?_0x5647fe['setStart'](_0x20ce00,0x0):_0x5647fe['setStart'](_0x3a2ed3,0x0),_0x5647fe['collapse'](!![]),_0x45fc4a['removeAllRanges'](),_0x45fc4a['addRange'](_0x5647fe);}['handleLinkClick'](_0x5c2528){const _0x59bda5=this['isMac']?_0x5c2528['metaKey']:_0x5c2528['ctrlKey'];if(!_0x59bda5)return;let _0x18a02c=_0x5c2528['target'];while(_0x18a02c&&_0x18a02c!==this['editor']){if(_0x18a02c['tagName']==='A'){_0x5c2528['preventDefault'](),_0x5c2528['stopPropagation']();const _0x17cf29=_0x18a02c['getAttribute']('href');if(!_0x17cf29)return;if(_0x17cf29['startsWith']('mention:'))return;const _0x3f930d=/^https?:\/\//i['test'](_0x17cf29);_0x3f930d?window['open'](_0x17cf29,'_blank','noopener,noreferrer'):window['location']['href']=_0x17cf29;return;}_0x18a02c=_0x18a02c['parentNode'];}}['handleLinkMouseEnter'](_0x2f53b5){const _0x1bf847=_0x2f53b5['target'];if(_0x1bf847['tagName']!=='A')return;const _0x2cc0cb=_0x1bf847['getAttribute']('href')||'';if(_0x2cc0cb['startsWith']('mention:'))return;this['linkTooltipTimeout']&&clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=setTimeout(()=>{this['showLinkTooltip'](_0x1bf847);},0x12c);}['handleLinkMouseLeave'](_0x32f83e){const _0x565f49=_0x32f83e['target'];if(_0x565f49['tagName']!=='A')return;this['linkTooltipTimeout']&&(clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=null),this['hideLinkTooltip']();}['showLinkTooltip'](_0x544526){!this['linkTooltip']&&(this['linkTooltip']=document['createElement']('div'),this['linkTooltip']['className']='markdown-editor-link-tooltip',document['body']['appendChild'](this['linkTooltip']));this['linkTooltip']['textContent']=this['linkHintText']||'Ctrl+click\x20to\x20follow';const _0x3c2fec=_0x544526['getBoundingClientRect'](),_0xa32ec4=this['linkTooltip']['getBoundingClientRect']();let _0x5dc436=_0x3c2fec['bottom']+0x4,_0x25671c=_0x3c2fec['left']+_0x3c2fec['width']/0x2;_0x5dc436+0x1e>window['innerHeight']&&(_0x5dc436=_0x3c2fec['top']-0x1e);const _0x4b3a0c=0x78;if(_0x25671c-_0x4b3a0c/0x2<0xa)_0x25671c=_0x4b3a0c/0x2+0xa;else _0x25671c+_0x4b3a0c/0x2>window['innerWidth']-0xa&&(_0x25671c=window['innerWidth']-_0x4b3a0c/0x2-0xa);this['linkTooltip']['style']['top']=_0x5dc436+'px',this['linkTooltip']['style']['left']=_0x25671c+'px',this['linkTooltip']['style']['transform']='translateX(-50%)',this['linkTooltip']['classList']['add']('visible');}['hideLinkTooltip'](){this['linkTooltip']&&this['linkTooltip']['classList']['remove']('visible');}['handleKeydown'](_0x412378){if(this['mentionState']['active']){if(_0x412378['key']==='ArrowDown'){_0x412378['preventDefault'](),this['mentionNavigate'](0x1);return;}if(_0x412378['key']==='ArrowUp'){_0x412378['preventDefault'](),this['mentionNavigate'](-0x1);return;}if(_0x412378['key']==='Enter'||_0x412378['key']==='Tab'){if(this['mentionState']['filteredUsers']['length']>0x0){_0x412378['preventDefault'](),this['insertMention'](this['mentionState']['filteredUsers'][this['mentionState']['selectedIndex']]);return;}}if(_0x412378['key']==='Escape'){_0x412378['preventDefault'](),this['closeMentionDropdown']();return;}}if(_0x412378['key']==='Tab'&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x428f40=this['getContainingListItem']();if(_0x428f40&&this['isCursorAtStartOfListItem'](_0x428f40)){_0x412378['preventDefault']();_0x412378['shiftKey']?this['outdentListItem'](_0x428f40):this['indentListItem'](_0x428f40);this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x412378['key']==='Enter'&&!_0x412378['shiftKey']&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x428c1f=this['getContainingListItem']();if(_0x428c1f&&this['isEmptyListItem'](_0x428c1f)){_0x412378['preventDefault'](),this['exitListOnEmptyBullet'](_0x428c1f),this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x412378['key']==='Enter'&&!_0x412378['shiftKey']&&this['isSelectionInTag']('PRE')){_0x412378['preventDefault']();const _0x4bf0e3=window['getSelection']();if(_0x4bf0e3['rangeCount']>0x0){const _0x4f2b5b=_0x4bf0e3['getRangeAt'](0x0);_0x4f2b5b['deleteContents']();const _0x47be9b=document['createTextNode']('\x0a');_0x4f2b5b['insertNode'](_0x47be9b),_0x4f2b5b['setStartAfter'](_0x47be9b),_0x4f2b5b['setEndAfter'](_0x47be9b),_0x4bf0e3['removeAllRanges'](),_0x4bf0e3['addRange'](_0x4f2b5b),this['handleInput']();}return;}(_0x412378['ctrlKey']||_0x412378['metaKey'])&&_0x412378['key']==='b'&&(_0x412378['preventDefault'](),document['execCommand']('bold',![],null));(_0x412378['ctrlKey']||_0x412378['metaKey'])&&_0x412378['key']==='i'&&(_0x412378['preventDefault'](),document['execCommand']('italic',![],null));if((_0x412378['ctrlKey']||_0x412378['metaKey'])&&_0x412378['key']==='k'){_0x412378['preventDefault'](),this['openLinkDialog']();return;}}['handlePaste'](_0x1388e0){const _0xacdbe5=_0x1388e0['clipboardData'];if(_0xacdbe5&&this['options']['onAddAttachments']){const _0xd013de=this['extractImageFilesFromClipboard'](_0xacdbe5);if(_0xd013de['length']>0x0){_0x1388e0['preventDefault'](),this['addAndInsertImages'](_0xd013de);return;}}_0x1388e0['preventDefault']();const _0x1dd589=_0x1388e0['clipboardData']['getData']('text/html');if(_0x1dd589&&_0x1dd589['trim']()){const _0xeeb7ea=this['convertPastedHtmlToMarkdown'](_0x1dd589);if(_0xeeb7ea&&_0xeeb7ea['trim']()){this['insertMarkdownAsRichText'](_0xeeb7ea);return;}}const _0x122a0d=_0x1388e0['clipboardData']['getData']('text/plain');document['execCommand']('insertText',![],_0x122a0d);}['convertPastedHtmlToMarkdown'](_0x112ad0){const _0x2caf05=document['createElement']('div');_0x2caf05['innerHTML']=_0x112ad0;const _0x41f1ca=_0x2caf05['querySelectorAll']('style,\x20script,\x20meta,\x20link,\x20head,\x20title');_0x41f1ca['forEach'](_0xd9478c=>_0xd9478c['remove']());const _0x164486=_0x2caf05['querySelectorAll']('*');_0x164486['forEach'](_0x3d7963=>{const _0x341be3=Array['from'](_0x3d7963['attributes']);_0x341be3['forEach'](_0x419785=>{_0x419785['name']['startsWith']('data-')&&_0x419785['name']!=='data-attachment-name'&&_0x419785['name']!=='data-mention-user-id'&&_0x3d7963['removeAttribute'](_0x419785['name']);});}),_0x2caf05['querySelectorAll']('font[color]')['forEach'](_0x1c5ad9=>{_0x1c5ad9['replaceWith'](..._0x1c5ad9['childNodes']);}),_0x2caf05['querySelectorAll']('span')['forEach'](_0x3a7fb6=>{_0x3a7fb6['style']['color']&&_0x3a7fb6['style']['removeProperty']('color'),!_0x3a7fb6['getAttribute']('style')&&!_0x3a7fb6['getAttribute']('data-mention-user-id')&&!_0x3a7fb6['getAttribute']('data-attachment-name')&&_0x3a7fb6['replaceWith'](..._0x3a7fb6['childNodes']);});try{return this['turndownService']['turndown'](_0x2caf05['innerHTML']);}catch(_0x31568b){return console['warn']('Failed\x20to\x20convert\x20HTML\x20to\x20markdown:',_0x31568b),null;}}['insertMarkdownAsRichText'](_0x2c635e){const _0x367063=window['marked'];if(!_0x367063){document['execCommand']('insertText',![],_0x2c635e);return;}try{const _0x41a434=this['preprocessColorSyntax'](_0x2c635e),_0x59f970=_0x367063['parse'](_0x41a434),_0x2b0f64=document['createElement']('div');_0x2b0f64['innerHTML']=_0x59f970,this['processHtmlForEditor'](_0x2b0f64),document['execCommand']('insertHTML',![],_0x2b0f64['innerHTML']);}catch(_0x31a7d2){console['warn']('Failed\x20to\x20convert\x20markdown\x20to\x20HTML:',_0x31a7d2),document['execCommand']('insertText',![],_0x2c635e);}}['processHtmlForEditor'](_0x39276e){const _0x656075=_0x39276e['querySelectorAll']('pre');_0x656075['forEach'](_0x3d458c=>{const _0x2d40d4=_0x3d458c['querySelector']('code');if(_0x2d40d4){const _0x17281a=Array['from'](_0x2d40d4['classList'])['find'](_0x4d8b22=>_0x4d8b22['startsWith']('language-')),_0x21e6fe=_0x17281a?_0x17281a['replace']('language-',''):'',_0x27e636=document['createElement']('pre');_0x21e6fe&&_0x27e636['setAttribute']('data-language',_0x21e6fe),_0x27e636['textContent']=_0x2d40d4['textContent'],_0x3d458c['replaceWith'](_0x27e636);}});const _0x9f1c88=_0x39276e['querySelectorAll']('a');_0x9f1c88['forEach'](_0x31dac7=>{_0x31dac7['setAttribute']('target','_blank'),_0x31dac7['setAttribute']('rel','noopener\x20noreferrer');});}['handleDragStart'](_0x570dd5){const _0x2e087c=_0x570dd5['target'];if(!_0x2e087c||_0x2e087c['tagName']!=='IMG')return;if(!_0x570dd5['dataTransfer'])return;const _0x97d1c3=_0x2e087c['getAttribute']('data-attachment-name')||'';try{_0x570dd5['dataTransfer']['setData'](INTERNAL_DRAG_MIME,_0x97d1c3||'1');}catch{}_0x570dd5['dataTransfer']['effectAllowed']='move';}['handleDragOver'](_0x468c11){if(!this['isExternalFileTransfer'](_0x468c11['dataTransfer']))return;_0x468c11['preventDefault'](),_0x468c11['dataTransfer']['dropEffect']='copy';}['handleDrop'](_0x270283){if(!this['isExternalFileTransfer'](_0x270283['dataTransfer']))return;const _0x36041e=_0x270283['dataTransfer'],_0x332259=Array['from'](_0x36041e['files']||[])['filter'](_0x128a25=>_0x128a25&&typeof _0x128a25['type']==='string'),_0x3bd5f8=_0x332259['filter'](_0x240cbc=>_0x240cbc['type']['startsWith']('image/'));if(_0x3bd5f8['length']===0x0)return;_0x270283['preventDefault'](),_0x270283['stopPropagation'](),this['cleanupParentDragState'](),this['moveSelectionToDropPoint'](_0x270283),this['addAndInsertImages'](_0x3bd5f8);}['cleanupParentDragState'](){let _0x214655=this['editor']['parentElement'];while(_0x214655){_0x214655['classList']&&_0x214655['classList']['contains']('drag-over')&&_0x214655['classList']['remove']('drag-over'),_0x214655=_0x214655['parentElement'];}}['isExternalFileTransfer'](_0x5c2530){if(!_0x5c2530)return![];const _0x2346a2=Array['from'](_0x5c2530['types']||[]);if(!_0x2346a2['includes']('Files'))return![];if(_0x2346a2['includes'](INTERNAL_DRAG_MIME))return![];if(_0x5c2530['files']&&_0x5c2530['files']['length']>0x0)return!![];if(_0x5c2530['items']&&Array['from'](_0x5c2530['items'])['some'](_0x4976ba=>_0x4976ba['kind']==='file'))return!![];return![];}['moveSelectionToDropPoint'](_0xf875e7){const _0x12ef85=_0xf875e7['clientX'],_0x7bbd61=_0xf875e7['clientY'];let _0x43bbee=null;if(document['caretRangeFromPoint'])_0x43bbee=document['caretRangeFromPoint'](_0x12ef85,_0x7bbd61);else{if(document['caretPositionFromPoint']){const _0x3be016=document['caretPositionFromPoint'](_0x12ef85,_0x7bbd61);_0x3be016&&(_0x43bbee=document['createRange'](),_0x43bbee['setStart'](_0x3be016['offsetNode'],_0x3be016['offset']),_0x43bbee['collapse'](!![]));}}if(_0x43bbee){const _0x49c149=window['getSelection']();_0x49c149['removeAllRanges'](),_0x49c149['addRange'](_0x43bbee);}}['extractImageFilesFromClipboard'](_0x2d0003){const _0x5d7f16=Array['from'](_0x2d0003['items']||[]),_0x124b39=[];for(const _0x5bfa79 of _0x5d7f16){if(_0x5bfa79['kind']==='file'&&_0x5bfa79['type']&&_0x5bfa79['type']['startsWith']('image/')){const _0xdf67cc=_0x5bfa79['getAsFile']();if(_0xdf67cc)_0x124b39['push'](_0xdf67cc);}}return _0x124b39;}['addAndInsertImages'](_0x5dff47){const _0x5ba45a=_0x5dff47['map'](_0x2bcb61=>this['prepareAttachmentFile'](_0x2bcb61))['filter'](Boolean);if(_0x5ba45a['length']===0x0)return;const _0xa26275=_0x5ba45a['map'](_0x1ddfb7=>_0x1ddfb7['file']);try{this['options']['onAddAttachments'](_0xa26275);}catch(_0x1b94c1){console['error']('Failed\x20to\x20add\x20attachments:',_0x1b94c1);}for(const {name:_0xd3b6c2,objectUrl:_0x2e4f71}of _0x5ba45a){this['insertAttachmentImage'](_0xd3b6c2,_0x2e4f71);}this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));}['prepareAttachmentFile'](_0x44d774){const _0x379b94=this['sanitizeFilename'](_0x44d774['name']||this['defaultImageName'](_0x44d774['type']));if(!_0x379b94)return null;const _0x3f18d0=this['getUniqueAttachmentName'](_0x379b94),_0x3a8070=_0x3f18d0===_0x44d774['name']?_0x44d774:new File([_0x44d774],_0x3f18d0,{'type':_0x44d774['type'],'lastModified':_0x44d774['lastModified']}),_0x84080c=URL['createObjectURL'](_0x3a8070);return this['attachmentObjectUrls']['set'](_0x3f18d0,_0x84080c),{'name':_0x3f18d0,'file':_0x3a8070,'objectUrl':_0x84080c};}['getUniqueAttachmentName'](_0x35f87f){const _0x280226=_0xe44b33=>{if(this['attachmentObjectUrls']['has'](_0xe44b33))return!![];if(this['options']['isAttachmentNameTaken'])try{return Boolean(this['options']['isAttachmentNameTaken'](_0xe44b33));}catch{return![];}return![];};if(!_0x280226(_0x35f87f))return _0x35f87f;const {stem:_0x54709a,ext:_0x1efa0c}=this['splitFilename'](_0x35f87f);for(let _0x458400=0x2;_0x458400<0x3e8;_0x458400++){const _0x2cad76=_0x54709a+'-'+_0x458400+_0x1efa0c;if(!_0x280226(_0x2cad76))return _0x2cad76;}return _0x54709a+'-'+Date['now']()+_0x1efa0c;}['splitFilename'](_0x4f2208){const _0x2d5196=_0x4f2208['lastIndexOf']('.');if(_0x2d5196<=0x0||_0x2d5196===_0x4f2208['length']-0x1)return{'stem':_0x4f2208,'ext':''};return{'stem':_0x4f2208['slice'](0x0,_0x2d5196),'ext':_0x4f2208['slice'](_0x2d5196)};}['sanitizeFilename'](_0xb21269){const _0x5efeb9=String(_0xb21269||'')['split']('/')['pop']()['split']('\x5c')['pop']();return _0x5efeb9['replace'](/[\u0000-\u001F\u007F]/g,'')['trim']();}['defaultImageName'](_0x484b64){const _0x538fe2=this['extensionForMime'](_0x484b64);return'pasted-image-'+Date['now']()+_0x538fe2;}['extensionForMime'](_0x3c45a4){switch(_0x3c45a4){case'image/png':return'.png';case'image/jpeg':return'.jpg';case'image/gif':return'.gif';case'image/webp':return'.webp';case'image/svg+xml':return'.svg';default:return'.png';}}['insertAttachmentImage'](_0x315841,_0x379152){const _0xd5cefe=document['createElement']('img');_0xd5cefe['src']=_0x379152,_0xd5cefe['alt']=_0x315841,_0xd5cefe['setAttribute']('data-attachment-name',_0x315841),_0xd5cefe['draggable']=!![];const _0x5dbff5=window['getSelection']();let _0xc1a7db=![];if(_0x5dbff5&&_0x5dbff5['rangeCount']>0x0){const _0x2d9e15=_0x5dbff5['getRangeAt'](0x0);_0xc1a7db=this['editor']['contains'](_0x2d9e15['commonAncestorContainer'])||this['editor']===_0x2d9e15['commonAncestorContainer'];}if(!_0xc1a7db){this['editor']['appendChild'](_0xd5cefe);const _0xa54d73=document['createRange']();_0xa54d73['setStartAfter'](_0xd5cefe),_0xa54d73['collapse'](!![]),_0x5dbff5['removeAllRanges'](),_0x5dbff5['addRange'](_0xa54d73);return;}const _0xac3688=_0x5dbff5['getRangeAt'](0x0);_0xac3688['deleteContents'](),_0xac3688['insertNode'](_0xd5cefe),_0xac3688['setStartAfter'](_0xd5cefe),_0xac3688['collapse'](!![]),_0x5dbff5['removeAllRanges'](),_0x5dbff5['addRange'](_0xac3688);}['toggleInlineCode'](){const _0x372dbe=window['getSelection']();if(_0x372dbe['rangeCount']===0x0)return;const _0x1cb817=_0x372dbe['getRangeAt'](0x0),_0x121a12=_0x1cb817['toString']();if(_0x121a12){const _0x3c5319=document['createElement']('code');_0x3c5319['textContent']=_0x121a12,_0x1cb817['deleteContents'](),_0x1cb817['insertNode'](_0x3c5319),_0x1cb817['setStartAfter'](_0x3c5319),_0x1cb817['setEndAfter'](_0x3c5319),_0x372dbe['removeAllRanges'](),_0x372dbe['addRange'](_0x1cb817);}}['insertCodeBlock'](){const _0x47ec0f=window['getSelection']();if(_0x47ec0f['rangeCount']===0x0)return;const _0x51b0ee=_0x47ec0f['getRangeAt'](0x0),_0x1c8fca=_0x51b0ee['toString'](),_0x9a0612=document['createElement']('pre'),_0x330837=document['createElement']('code');_0x330837['textContent']=_0x1c8fca||'\x0a',_0x9a0612['appendChild'](_0x330837),_0x51b0ee['deleteContents'](),_0x51b0ee['insertNode'](_0x9a0612);const _0x2072e3=document['createElement']('p');_0x2072e3['innerHTML']='<br>',_0x9a0612['parentNode']['insertBefore'](_0x2072e3,_0x9a0612['nextSibling']);const _0x2fe180=document['createRange']();!_0x1c8fca?(_0x2fe180['setStart'](_0x330837['firstChild'],0x0),_0x2fe180['setEnd'](_0x330837['firstChild'],0x0)):(_0x2fe180['selectNodeContents'](_0x330837),_0x2fe180['collapse'](![])),_0x47ec0f['removeAllRanges'](),_0x47ec0f['addRange'](_0x2fe180);}['updatePlaceholder'](){const _0xa5f090=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');_0xa5f090?this['editor']['classList']['remove']('empty'):this['editor']['classList']['add']('empty');}['setMarkdown'](_0x1f3b07){if(!_0x1f3b07||!_0x1f3b07['trim']()){this['editor']['innerHTML']='',this['updatePlaceholder']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']='':this['element']['textContent']='';return;}const _0x1183e3=this['preprocessColorSyntax'](_0x1f3b07),_0x203e6d=window['marked']['parse'](_0x1183e3);this['editor']['innerHTML']=_0x203e6d,this['rewriteAttachmentImages'](),this['rewriteMentionLinks'](),this['addLinkHints'](),this['updatePlaceholder'](),this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x1f3b07:this['element']['textContent']=_0x1f3b07;}['rewriteAttachmentImages'](){const _0xbee8ff=this['editor']['querySelectorAll']('img');_0xbee8ff['forEach'](_0x7935b1=>{const _0xda024a=_0x7935b1['getAttribute']('data-attachment-name'),_0x158c00=_0x7935b1['getAttribute']('src')||'',_0x2c30a8=this['parseAttachmentReference'](_0x158c00)||this['parseTaskAttachmentUrl'](_0x158c00),_0x55a3fe=_0xda024a||(_0x2c30a8?_0x2c30a8['name']:null);if(!_0x55a3fe)return;_0x7935b1['setAttribute']('data-attachment-name',_0x55a3fe);const _0xd213e=this['attachmentObjectUrls']['get'](_0x55a3fe)||(this['options']['resolveAttachmentUrl']?this['options']['resolveAttachmentUrl'](_0x55a3fe):null);_0xd213e&&(_0x7935b1['src']=_0xd213e);});}['rewriteMentionLinks'](){const _0x5f1796=this['editor']['querySelectorAll']('a[href^=\x22mention:\x22]');_0x5f1796['forEach'](_0x476850=>{const _0x240a4b=_0x476850['getAttribute']('href')||'',_0x2e5896=_0x240a4b['replace']('mention:',''),_0x15042a=_0x476850['textContent']||'',_0x2233f3=document['createElement']('span');_0x2233f3['className']='mention',_0x2233f3['setAttribute']('data-mention-user-id',_0x2e5896),_0x2233f3['setAttribute']('contenteditable','false'),_0x2233f3['textContent']='@'+_0x15042a;const _0x4cb376=_0x476850['previousSibling'];_0x4cb376&&_0x4cb376['nodeType']===Node['TEXT_NODE']&&_0x4cb376['textContent']['endsWith']('@')&&(_0x4cb376['textContent']=_0x4cb376['textContent']['slice'](0x0,-0x1)),_0x476850['parentNode']['replaceChild'](_0x2233f3,_0x476850);});}['addLinkHints'](){if(!this['options']['editable'])return;const _0x1af88a=this['editor']['querySelectorAll']('a');_0x1af88a['forEach'](_0x5a39a7=>{const _0x1b08a7=_0x5a39a7['getAttribute']('href')||'';if(_0x1b08a7['startsWith']('mention:'))return;const _0x242a53=_0x5a39a7['textContent']||_0x1b08a7,_0xa80b94=_0x242a53+'\x20('+(this['linkHintText']||'Ctrl+click\x20to\x20follow')+')';_0x5a39a7['setAttribute']('aria-label',_0xa80b94);});}['preprocessColorSyntax'](_0x29162b){if(!_0x29162b)return _0x29162b;const _0x42e880=_0x70c8de=>{return String(_0x70c8de)['replace'](/\{color:(#[0-9A-Fa-f]{3,6})\}([\s\S]*?)\{\/color\}/g,(_0x499cbe,_0x26b3df,_0x47b85e)=>{const _0x20e0d1=_0x42e880(_0x47b85e);return'<span\x20style=\x22color:\x20'+_0x26b3df+'\x22>'+_0x20e0d1+'</span>';});};return _0x42e880(_0x29162b);}['parseAttachmentReference'](_0x4c59b0){if(!_0x4c59b0||typeof _0x4c59b0!=='string')return null;if(!_0x4c59b0['startsWith'](ATTACHMENT_SCHEME)&&!_0x4c59b0['startsWith'](ATTACHMENT_SCHEME+'//'))return null;const _0x4b74ce=_0x4c59b0['replace'](ATTACHMENT_SCHEME+'//','')['replace'](ATTACHMENT_SCHEME,'');if(!_0x4b74ce)return null;try{return{'name':decodeURIComponent(_0x4b74ce)};}catch{return{'name':_0x4b74ce};}}['parseTaskAttachmentUrl'](_0x51c14b){if(!_0x51c14b||typeof _0x51c14b!=='string')return null;const _0x270fa4=_0x51c14b['match'](/\/tasks\/[^/]+\/attachments\/([^?#]+)/);if(!_0x270fa4)return null;const _0x5c0a09=_0x270fa4[0x1];try{return{'name':decodeURIComponent(_0x5c0a09)};}catch{return{'name':_0x5c0a09};}}['updateAttachmentFile'](_0x576f45,_0x499683){const _0x537e32=this['attachmentObjectUrls']['get'](_0x576f45);if(_0x537e32)try{URL['revokeObjectURL'](_0x537e32);}catch{}const _0xeecbf8=URL['createObjectURL'](_0x499683);this['attachmentObjectUrls']['set'](_0x576f45,_0xeecbf8);const _0x11c0ba=this['editor']['querySelector']('img[data-attachment-name=\x22'+CSS['escape'](_0x576f45)+'\x22]');return _0x11c0ba&&(_0x11c0ba['src']=_0xeecbf8),_0xeecbf8;}['getMarkdown'](){const _0x262271=this['editor']['innerHTML'];if(!_0x262271||_0x262271['trim']()===''||_0x262271==='<br>')return'';return this['turndownService']['turndown'](_0x262271)['replace'](/\u200B/g,'');}['getValue'](){return this['getMarkdown']();}['setValue'](_0x28fcd4){this['setMarkdown'](_0x28fcd4);}['focus'](){this['editor']['focus']();}['clear'](){this['editor']['innerHTML']='',this['updatePlaceholder']();}['setEditable'](_0x6a900){this['editor']['contentEditable']=_0x6a900,this['options']['editable']=_0x6a900;}['handleMentionInput'](_0xf4dc34){if(!this['options']['fetchUsers'])return;const _0x340ac9=window['getSelection']();if(!_0x340ac9||_0x340ac9['rangeCount']===0x0){this['closeMentionDropdown']();return;}const _0x5ece16=_0x340ac9['getRangeAt'](0x0),_0x2757ad=_0x5ece16['startContainer'];if(_0x2757ad['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x155634=_0x2757ad['textContent']||'',_0x44cdd9=_0x5ece16['startOffset'],_0x503bb1=_0x155634['slice'](0x0,_0x44cdd9),_0x2b97e3=_0x503bb1['lastIndexOf']('@');if(_0x2b97e3===-0x1){this['closeMentionDropdown']();return;}const _0x4efdf3=_0x2b97e3>0x0?_0x503bb1[_0x2b97e3-0x1]:'\x20';if(!/\s/['test'](_0x4efdf3)&&_0x2b97e3!==0x0){this['closeMentionDropdown']();return;}const _0x187cbe=_0x503bb1['slice'](_0x2b97e3+0x1);if(/[\s\n]/['test'](_0x187cbe)){this['closeMentionDropdown']();return;}this['mentionState']['active']=!![],this['mentionState']['query']=_0x187cbe['toLowerCase'](),this['mentionState']['startOffset']=_0x2b97e3,this['mentionState']['startNode']=_0x2757ad,this['showMentionDropdown']();}async['showMentionDropdown'](){if(!this['usersCache'])try{const _0x40863f=await this['options']['fetchUsers']();this['usersCache']=_0x40863f['users']||_0x40863f||[];}catch(_0x3d2946){console['error']('Failed\x20to\x20fetch\x20users\x20for\x20@mention:',_0x3d2946),this['closeMentionDropdown']();return;}this['mentionState']['users']=this['usersCache'];const _0x24febd=this['mentionState']['query'];this['mentionState']['filteredUsers']=this['mentionState']['users']['filter'](_0x390bf3=>{const _0x14946b=(_0x390bf3['name']||'')['toLowerCase'](),_0x5a5c57=(_0x390bf3['username']||'')['toLowerCase']();return _0x14946b['includes'](_0x24febd)||_0x5a5c57['includes'](_0x24febd);})['slice'](0x0,0x8),this['mentionState']['selectedIndex']=0x0;if(this['mentionState']['filteredUsers']['length']===0x0){this['closeMentionDropdown']();return;}this['renderMentionDropdown'](),this['positionMentionDropdown']();}['renderMentionDropdown'](){!this['mentionDropdown']&&(this['mentionDropdown']=document['createElement']('div'),this['mentionDropdown']['className']='mention-dropdown',document['body']['appendChild'](this['mentionDropdown']),this['mentionClickOutsideHandler']=_0x155fc0=>{!this['mentionDropdown']['contains'](_0x155fc0['target'])&&!this['editor']['contains'](_0x155fc0['target'])&&this['closeMentionDropdown']();},document['addEventListener']('click',this['mentionClickOutsideHandler']),this['mentionScrollHandler']=()=>{this['mentionState']['active']&&this['positionMentionDropdown']();},window['addEventListener']('scroll',this['mentionScrollHandler'],!![]));const _0xe3fcfd=this['mentionState']['filteredUsers'];this['mentionDropdown']['innerHTML']=_0xe3fcfd['map']((_0x1cbd66,_0xaa7eaf)=>{const _0x340633=_0xaa7eaf===this['mentionState']['selectedIndex'],_0x5a9667=_0x1cbd66['name']||_0x1cbd66['username']||'Unknown',_0x2fa234=_0x1cbd66['username']||'',_0x4f91c5=this['getInitials'](_0x5a9667),_0x5548a9=this['getAvatarColorIndex'](_0x2fa234||_0x1cbd66['id']||_0x5a9667);return'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22mention-option\x20'+(_0x340633?'mention-option-selected':'')+'\x22\x20data-index=\x22'+_0xaa7eaf+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-avatar\x20avatar-color-'+_0x5548a9+'\x22>'+this['escapeHtmlForMention'](_0x4f91c5)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-option-name\x22>'+this['escapeHtmlForMention'](_0x5a9667)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x2fa234?'<span\x20class=\x22mention-option-username\x22>@'+this['escapeHtmlForMention'](_0x2fa234)+'</span>':'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20';})['join'](''),this['mentionDropdown']['querySelectorAll']('.mention-option')['forEach'](_0x42c062=>{_0x42c062['addEventListener']('mousedown',_0xd99c8b=>{_0xd99c8b['preventDefault']();const _0x327095=parseInt(_0x42c062['dataset']['index'],0xa);this['insertMention'](this['mentionState']['filteredUsers'][_0x327095]);}),_0x42c062['addEventListener']('mouseenter',()=>{const _0x3287b8=parseInt(_0x42c062['dataset']['index'],0xa);this['mentionState']['selectedIndex']=_0x3287b8,this['updateMentionSelection']();});}),this['mentionDropdown']['style']['display']='block';}['positionMentionDropdown'](){if(!this['mentionDropdown'])return;const _0x40722c=window['getSelection']();if(!_0x40722c||_0x40722c['rangeCount']===0x0)return;const _0x50731e=_0x40722c['getRangeAt'](0x0),_0x534675=_0x50731e['getBoundingClientRect'](),_0x9e0760=0x104,_0x46ef77=Math['min'](0xf0,this['mentionState']['filteredUsers']['length']*0x24+0x8),_0x28c28=window['innerWidth'],_0x749719=window['innerHeight'],_0x5395d9=_0x749719-_0x534675['bottom'],_0x476820=_0x534675['top'],_0x116e52=_0x5395d9<_0x46ef77+0xa&&_0x476820>_0x5395d9;let _0x2f9ba8,_0x4b3053;_0x116e52?_0x2f9ba8=_0x534675['top']+window['scrollY']-_0x46ef77-0x4:_0x2f9ba8=_0x534675['bottom']+window['scrollY']+0x4,_0x4b3053=_0x534675['left']+window['scrollX'],_0x4b3053+_0x9e0760>_0x28c28-0xa&&(_0x4b3053=_0x28c28-_0x9e0760-0xa),_0x4b3053<0xa&&(_0x4b3053=0xa),this['mentionDropdown']['style']['position']='absolute',this['mentionDropdown']['style']['top']=_0x2f9ba8+'px',this['mentionDropdown']['style']['left']=_0x4b3053+'px';}['mentionNavigate'](_0x6edb08){const _0x15d62b=this['mentionState']['filteredUsers']['length'];if(_0x15d62b===0x0)return;this['mentionState']['selectedIndex']=(this['mentionState']['selectedIndex']+_0x6edb08+_0x15d62b)%_0x15d62b,this['updateMentionSelection']();}['updateMentionSelection'](){if(!this['mentionDropdown'])return;const _0x5302cb=this['mentionDropdown']['querySelectorAll']('.mention-option');_0x5302cb['forEach']((_0xd4a2f5,_0x50fc8b)=>{_0x50fc8b===this['mentionState']['selectedIndex']?(_0xd4a2f5['classList']['add']('mention-option-selected'),_0xd4a2f5['scrollIntoView']({'block':'nearest'})):_0xd4a2f5['classList']['remove']('mention-option-selected');});}['insertMention'](_0x5515b3){if(!_0x5515b3)return;const _0x55c077=window['getSelection']();if(!_0x55c077||_0x55c077['rangeCount']===0x0)return;const _0x3d9686=_0x55c077['getRangeAt'](0x0),_0x1db2b6=this['mentionState']['startNode'];if(!_0x1db2b6||_0x1db2b6['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x736cf2=_0x1db2b6['textContent']||'',_0x46e583=this['mentionState']['startOffset'],_0x199fda=_0x3d9686['startOffset'],_0x49e9ac=_0x736cf2['slice'](0x0,_0x46e583),_0x2c9926=_0x736cf2['slice'](_0x199fda),_0x5e35d5=document['createElement']('span');_0x5e35d5['className']='mention',_0x5e35d5['setAttribute']('data-mention-user-id',_0x5515b3['id']),_0x5e35d5['setAttribute']('contenteditable','false'),_0x5e35d5['textContent']='@'+(_0x5515b3['name']||_0x5515b3['username']);const _0x4282c9=document['createTextNode'](_0x49e9ac),_0x3d1a81=document['createTextNode']('\x20'+_0x2c9926),_0xcc22e0=_0x1db2b6['parentNode'];_0xcc22e0['insertBefore'](_0x4282c9,_0x1db2b6),_0xcc22e0['insertBefore'](_0x5e35d5,_0x1db2b6),_0xcc22e0['insertBefore'](_0x3d1a81,_0x1db2b6),_0xcc22e0['removeChild'](_0x1db2b6);const _0x56e6af=document['createRange']();_0x56e6af['setStart'](_0x3d1a81,0x1),_0x56e6af['collapse'](!![]),_0x55c077['removeAllRanges'](),_0x55c077['addRange'](_0x56e6af),this['closeMentionDropdown'](),this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));}['closeMentionDropdown'](){this['mentionState']['active']=![],this['mentionState']['query']='',this['mentionState']['filteredUsers']=[],this['mentionState']['selectedIndex']=0x0,this['mentionDropdown']&&(this['mentionDropdown']['style']['display']='none');}['escapeHtmlForMention'](_0x39407f){const _0x45439d=document['createElement']('div');return _0x45439d['textContent']=_0x39407f,_0x45439d['innerHTML'];}['getInitials'](_0xc1522f){if(!_0xc1522f)return'?';const _0x35e1e2=_0xc1522f['trim']()['split'](/\s+/);if(_0x35e1e2['length']>=0x2)return(_0x35e1e2[0x0][0x0]+_0x35e1e2[_0x35e1e2['length']-0x1][0x0])['toUpperCase']();return _0xc1522f['substring'](0x0,0x2)['toUpperCase']();}['getAvatarColorIndex'](_0x18afdd){if(!_0x18afdd)return 0x6;let _0x5daae8=0x0;for(let _0x58297f=0x0;_0x58297f<_0x18afdd['length'];_0x58297f++){_0x5daae8=_0x18afdd['charCodeAt'](_0x58297f)+((_0x5daae8<<0x5)-_0x5daae8);}return Math['abs'](_0x5daae8)%0xa;}['destroy'](){this['selectionChangeHandler']&&document['removeEventListener']('selectionchange',this['selectionChangeHandler']);this['linkClickHandler']&&this['editor']['removeEventListener']('click',this['linkClickHandler']);this['linkMouseEnterHandler']&&this['editor']['removeEventListener']('mouseover',this['linkMouseEnterHandler']);this['linkMouseLeaveHandler']&&this['editor']['removeEventListener']('mouseout',this['linkMouseLeaveHandler']);this['linkTooltipTimeout']&&clearTimeout(this['linkTooltipTimeout']);this['linkTooltip']&&(this['linkTooltip']['remove'](),this['linkTooltip']=null);this['linkDialog']&&(this['linkDialog']['remove'](),this['linkDialog']=null,this['linkDialogContext']=null,this['linkDialogElements']=null);this['mentionDropdown']&&(this['mentionDropdown']['remove'](),this['mentionDropdown']=null);this['mentionClickOutsideHandler']&&document['removeEventListener']('click',this['mentionClickOutsideHandler']);this['mentionScrollHandler']&&window['removeEventListener']('scroll',this['mentionScrollHandler'],!![]);for(const _0x1a4263 of this['attachmentObjectUrls']['values']()){try{URL['revokeObjectURL'](_0x1a4263);}catch{}}this['attachmentObjectUrls']['clear'](),this['container']?this['container']['remove']():this['editor']['remove'](),this['element']['style']['display']='';}}typeof window!=='undefined'&&(window['MarkdownEditor']=MarkdownEditor);
|
|
1
|
+
const ATTACHMENT_SCHEME='attachment:',INTERNAL_DRAG_MIME='application/x-profound-editor-image',LINK_DIALOG_STYLE_ID='markdown-editor-link-dialog-styles',ICONS={'bold':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M6\x204h8a4\x204\x200\x200\x201\x204\x204\x204\x204\x200\x200\x201-4\x204H6z\x22></path><path\x20d=\x22M6\x2012h9a4\x204\x200\x200\x201\x204\x204\x204\x204\x200\x200\x201-4\x204H6z\x22></path></svg>','italic':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x2219\x22\x20y1=\x224\x22\x20x2=\x2210\x22\x20y2=\x224\x22></line><line\x20x1=\x2214\x22\x20y1=\x2220\x22\x20x2=\x225\x22\x20y2=\x2220\x22></line><line\x20x1=\x2215\x22\x20y1=\x224\x22\x20x2=\x229\x22\x20y2=\x2220\x22></line></svg>','strike':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x225\x22\x20y1=\x2212\x22\x20x2=\x2219\x22\x20y2=\x2212\x22></line><path\x20d=\x22M16\x206a4\x204\x200\x200\x200-4-4c-2.48\x200-4\x201.79-4\x204\x200\x201.25.5\x202.5\x201.5\x203\x22></path><path\x20d=\x22M9\x2018c0\x201.79\x201.79\x203\x204\x203\x202.48\x200\x204-1.79\x204-4\x200-1.25-.5-2.5-1.5-3\x22></path></svg>','link':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M10\x2013a5\x205\x200\x200\x200\x207.54.54l3-3a5\x205\x200\x200\x200-7.07-7.07l-1.72\x201.71\x22></path><path\x20d=\x22M14\x2011a5\x205\x200\x200\x200-7.54-.54l-3\x203a5\x205\x200\x200\x200\x207.07\x207.07l1.71-1.71\x22></path></svg>','code':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><polyline\x20points=\x2216\x2018\x2022\x2012\x2016\x206\x22></polyline><polyline\x20points=\x228\x206\x202\x2012\x208\x2018\x22></polyline></svg>','listBullet':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x228\x22\x20y1=\x226\x22\x20x2=\x2221\x22\x20y2=\x226\x22></line><line\x20x1=\x228\x22\x20y1=\x2212\x22\x20x2=\x2221\x22\x20y2=\x2212\x22></line><line\x20x1=\x228\x22\x20y1=\x2218\x22\x20x2=\x2221\x22\x20y2=\x2218\x22></line><line\x20x1=\x223\x22\x20y1=\x226\x22\x20x2=\x223.01\x22\x20y2=\x226\x22></line><line\x20x1=\x223\x22\x20y1=\x2212\x22\x20x2=\x223.01\x22\x20y2=\x2212\x22></line><line\x20x1=\x223\x22\x20y1=\x2218\x22\x20x2=\x223.01\x22\x20y2=\x2218\x22></line></svg>','listOrdered':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x2210\x22\x20y1=\x226\x22\x20x2=\x2221\x22\x20y2=\x226\x22></line><line\x20x1=\x2210\x22\x20y1=\x2212\x22\x20x2=\x2221\x22\x20y2=\x2212\x22></line><line\x20x1=\x2210\x22\x20y1=\x2218\x22\x20x2=\x2221\x22\x20y2=\x2218\x22></line><path\x20d=\x22M4\x206h1v4\x22></path><path\x20d=\x22M4\x2010h2\x22></path><path\x20d=\x22M6\x2018H4c0-1\x202-2\x202-3s-1-1.5-2-1\x22></path></svg>','blockquote':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M21\x2015a2\x202\x200\x200\x201-2\x202H7l-4\x204V5a2\x202\x200\x200\x201\x202-2h14a2\x202\x200\x200\x201\x202\x202z\x22></path></svg>','codeBlock':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><rect\x20x=\x223\x22\x20y=\x223\x22\x20width=\x2218\x22\x20height=\x2218\x22\x20rx=\x222\x22\x20ry=\x222\x22></rect><polyline\x20points=\x229\x208\x205\x2012\x209\x2016\x22></polyline><polyline\x20points=\x2215\x208\x2019\x2012\x2015\x2016\x22></polyline></svg>','header':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M4\x2012h8\x22></path><path\x20d=\x22M4\x2018V6\x22></path><path\x20d=\x22M12\x2018V6\x22></path><path\x20d=\x22M17\x2012l3-2v8\x22></path></svg>','color':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M4\x2020h16\x22></path><path\x20d=\x22M6\x2016l6-14\x206\x2014\x22></path><path\x20d=\x22M8\x2012h8\x22></path></svg>'},LINK_DIALOG_STYLES='\x0a.markdown-editor-link-modal\x20{\x0a\x20\x20position:\x20fixed;\x0a\x20\x20inset:\x200;\x0a\x20\x20display:\x20flex;\x0a\x20\x20align-items:\x20center;\x0a\x20\x20justify-content:\x20center;\x0a\x20\x20z-index:\x2010020;\x0a}\x0a\x0a.markdown-editor-link-modal[hidden]\x20{\x0a\x20\x20display:\x20none\x20!important;\x0a}\x0a\x0a.markdown-editor-link-backdrop\x20{\x0a\x20\x20position:\x20absolute;\x0a\x20\x20inset:\x200;\x0a\x20\x20background:\x20rgba(15,\x2023,\x2042,\x200.45);\x0a}\x0a\x0a.markdown-editor-link-dialog\x20{\x0a\x20\x20position:\x20relative;\x0a\x20\x20width:\x20min(460px,\x20calc(100vw\x20-\x2024px));\x0a\x20\x20background:\x20var(--color-surface,\x20var(--feedback-surface,\x20#ffffff));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a\x20\x20border:\x201px\x20solid\x20var(--color-border,\x20var(--feedback-border,\x20#d1d5db));\x0a\x20\x20border-radius:\x20var(--radius-medium,\x2010px);\x0a\x20\x20box-shadow:\x200\x2018px\x2042px\x20rgba(15,\x2023,\x2042,\x200.25);\x0a\x20\x20padding:\x2014px;\x0a\x20\x20display:\x20flex;\x0a\x20\x20flex-direction:\x20column;\x0a\x20\x20gap:\x2012px;\x0a}\x0a\x0a.markdown-editor-link-header\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20align-items:\x20center;\x0a\x20\x20justify-content:\x20space-between;\x0a\x20\x20gap:\x208px;\x0a}\x0a\x0a.markdown-editor-link-title\x20{\x0a\x20\x20margin:\x200;\x0a\x20\x20font-size:\x2016px;\x0a\x20\x20font-weight:\x20600;\x0a}\x0a\x0a.markdown-editor-link-close\x20{\x0a\x20\x20width:\x2028px;\x0a\x20\x20height:\x2028px;\x0a\x20\x20border:\x20none;\x0a\x20\x20border-radius:\x20var(--radius-small,\x208px);\x0a\x20\x20background:\x20transparent;\x0a\x20\x20color:\x20var(--color-text-muted,\x20var(--feedback-text-muted,\x20#6b7280));\x0a\x20\x20font-size:\x2020px;\x0a\x20\x20line-height:\x201;\x0a\x20\x20cursor:\x20pointer;\x0a}\x0a\x0a.markdown-editor-link-close:hover\x20{\x0a\x20\x20background:\x20var(--color-surface-muted,\x20var(--feedback-surface-muted,\x20#f3f4f6));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a}\x0a\x0a.markdown-editor-link-form\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20flex-direction:\x20column;\x0a\x20\x20gap:\x2010px;\x0a}\x0a\x0a.markdown-editor-link-field-grid\x20{\x0a\x20\x20display:\x20grid;\x0a\x20\x20gap:\x2010px;\x0a}\x0a\x0a.markdown-editor-link-label\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20flex-direction:\x20column;\x0a\x20\x20gap:\x206px;\x0a\x20\x20font-size:\x2012px;\x0a\x20\x20font-weight:\x20600;\x0a\x20\x20color:\x20var(--color-text-muted,\x20var(--feedback-text-muted,\x20#4b5563));\x0a}\x0a\x0a.markdown-editor-link-input\x20{\x0a\x20\x20width:\x20100%;\x0a\x20\x20padding:\x209px\x2010px;\x0a\x20\x20border:\x201px\x20solid\x20var(--color-border,\x20var(--feedback-border,\x20#d1d5db));\x0a\x20\x20border-radius:\x20var(--radius-small,\x208px);\x0a\x20\x20background:\x20var(--color-surface,\x20var(--feedback-surface,\x20#ffffff));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a\x20\x20font-size:\x2014px;\x0a}\x0a\x0a.markdown-editor-link-input:focus\x20{\x0a\x20\x20outline:\x20none;\x0a\x20\x20border-color:\x20var(--color-primary,\x20#3f72ff);\x0a\x20\x20box-shadow:\x200\x200\x200\x203px\x20rgba(63,\x20114,\x20255,\x200.2);\x0a}\x0a\x0a.markdown-editor-link-actions\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20justify-content:\x20flex-end;\x0a\x20\x20gap:\x208px;\x0a}\x0a\x0a.markdown-editor-link-btn\x20{\x0a\x20\x20border:\x201px\x20solid\x20transparent;\x0a\x20\x20border-radius:\x20var(--radius-small,\x208px);\x0a\x20\x20padding:\x207px\x2012px;\x0a\x20\x20font-size:\x2013px;\x0a\x20\x20font-weight:\x20600;\x0a\x20\x20cursor:\x20pointer;\x0a}\x0a\x0a.markdown-editor-link-btn-secondary\x20{\x0a\x20\x20background:\x20var(--color-surface-muted,\x20var(--feedback-surface-muted,\x20#f3f4f6));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a\x20\x20border-color:\x20var(--color-border,\x20var(--feedback-border,\x20#d1d5db));\x0a}\x0a\x0a.markdown-editor-link-btn-secondary:hover\x20{\x0a\x20\x20background:\x20var(--color-bg-secondary,\x20var(--feedback-surface-hover,\x20#e5e7eb));\x0a}\x0a\x0a.markdown-editor-link-btn-danger\x20{\x0a\x20\x20background:\x20transparent;\x0a\x20\x20color:\x20var(--color-danger,\x20#dc2626);\x0a\x20\x20border-color:\x20rgba(220,\x2038,\x2038,\x200.35);\x0a}\x0a\x0a.markdown-editor-link-btn-danger:hover\x20{\x0a\x20\x20background:\x20rgba(220,\x2038,\x2038,\x200.08);\x0a}\x0a\x0a.markdown-editor-link-btn-primary\x20{\x0a\x20\x20background:\x20var(--color-primary,\x20#3f72ff);\x0a\x20\x20color:\x20#ffffff;\x0a}\x0a\x0a.markdown-editor-link-btn-primary:hover\x20{\x0a\x20\x20background:\x20var(--color-accent,\x20#2563eb);\x0a}\x0a\x0a[data-theme=\x22dark\x22]\x20.markdown-editor-link-backdrop\x20{\x0a\x20\x20background:\x20rgba(2,\x206,\x2023,\x200.65);\x0a}\x0a\x0a[data-theme=\x22dark\x22]\x20.markdown-editor-link-dialog\x20{\x0a\x20\x20box-shadow:\x200\x2018px\x2042px\x20rgba(0,\x200,\x200,\x200.5);\x0a}\x0a\x0a@media\x20(max-width:\x20480px)\x20{\x0a\x20\x20.markdown-editor-link-dialog\x20{\x0a\x20\x20\x20\x20width:\x20calc(100vw\x20-\x2016px);\x0a\x20\x20\x20\x20padding:\x2012px;\x0a\x20\x20}\x0a\x0a\x20\x20.markdown-editor-link-actions\x20{\x0a\x20\x20\x20\x20flex-wrap:\x20wrap;\x0a\x20\x20}\x0a\x0a\x20\x20.markdown-editor-link-btn\x20{\x0a\x20\x20\x20\x20flex:\x201\x201\x20calc(50%\x20-\x206px);\x0a\x20\x20\x20\x20text-align:\x20center;\x0a\x20\x20}\x0a}\x0a';export class MarkdownEditor{constructor(_0x134303,_0x3cbbe7={}){this['element']=_0x134303,this['options']={'placeholder':_0x3cbbe7['placeholder']||'Start\x20typing...','editable':_0x3cbbe7['editable']!==![],'onChange':_0x3cbbe7['onChange']||null,'minHeight':_0x3cbbe7['minHeight']||'100px','toolbar':_0x3cbbe7['toolbar']||![],'onAddAttachments':_0x3cbbe7['onAddAttachments']||null,'resolveAttachmentUrl':_0x3cbbe7['resolveAttachmentUrl']||null,'isAttachmentNameTaken':_0x3cbbe7['isAttachmentNameTaken']||null,'fetchUsers':_0x3cbbe7['fetchUsers']||null},this['mentionState']={'active':![],'query':'','startOffset':0x0,'startNode':null,'users':[],'filteredUsers':[],'selectedIndex':0x0},this['mentionDropdown']=null,this['usersCache']=null,this['linkDialog']=null,this['linkDialogContext']=null;const _0x52a066=window['TurndownService'];this['turndownService']=new _0x52a066({'headingStyle':'atx','codeBlockStyle':'fenced','emDelimiter':'_','bulletListMarker':'-'}),this['attachmentObjectUrls']=new Map(),this['registerTurndownRules'](),this['init']();}['registerTurndownRules'](){this['turndownService']['addRule']('profoundAttachmentImage',{'filter':_0x2c6dec=>{return _0x2c6dec&&_0x2c6dec['nodeName']==='IMG'&&_0x2c6dec['getAttribute']&&_0x2c6dec['getAttribute']('data-attachment-name');},'replacement':(_0x1b9f3e,_0x87cd0a)=>{const _0x4e3592=_0x87cd0a['getAttribute']('data-attachment-name')||'',_0x1dbcb6=_0x87cd0a['getAttribute']('alt')||'',_0x534ff9=_0x4e3592['trim'](),_0x10c242=this['escapeAltText'](_0x1dbcb6||_0x534ff9),_0x525492=encodeURIComponent(_0x534ff9);return'';}}),this['turndownService']['addRule']('profoundMention',{'filter':_0x204166=>{return _0x204166&&_0x204166['nodeName']==='SPAN'&&_0x204166['getAttribute']&&_0x204166['getAttribute']('data-mention-user-id');},'replacement':(_0x5deb54,_0x224718)=>{const _0x1ae21e=_0x224718['getAttribute']('data-mention-user-id')||'',_0x1fe75e=_0x224718['textContent']||'',_0x434be4=_0x1fe75e['startsWith']('@')?_0x1fe75e['slice'](0x1):_0x1fe75e;return'['+_0x434be4+'](mention:'+_0x1ae21e+')';}}),this['turndownService']['addRule']('profoundColoredText',{'filter':_0x3be3d4=>{if(!_0x3be3d4)return![];if(_0x3be3d4['nodeName']==='FONT'&&_0x3be3d4['getAttribute']&&_0x3be3d4['getAttribute']('color'))return!![];if(_0x3be3d4['nodeName']==='SPAN'&&_0x3be3d4['style']&&_0x3be3d4['style']['color']){if(_0x3be3d4['getAttribute']&&_0x3be3d4['getAttribute']('data-mention-user-id'))return![];return!![];}return![];},'replacement':(_0x5cecf6,_0x4f8daa)=>{if(!_0x5cecf6['trim']())return _0x5cecf6;let _0xa8b541='';if(_0x4f8daa['nodeName']==='FONT')_0xa8b541=_0x4f8daa['getAttribute']('color')||'';else _0x4f8daa['style']&&_0x4f8daa['style']['color']&&(_0xa8b541=this['rgbToHex'](_0x4f8daa['style']['color']));if(!_0xa8b541)return _0x5cecf6;return'{color:'+_0xa8b541+'}'+_0x5cecf6+'{/color}';}});}['rgbToHex'](_0x34a4a2){if(!_0x34a4a2)return'';if(_0x34a4a2['startsWith']('#'))return _0x34a4a2;const _0x82229b=_0x34a4a2['match'](/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(!_0x82229b)return _0x34a4a2;const _0x5d8dae=parseInt(_0x82229b[0x1],0xa),_0x3648be=parseInt(_0x82229b[0x2],0xa),_0x3e8cee=parseInt(_0x82229b[0x3],0xa);return'#'+[_0x5d8dae,_0x3648be,_0x3e8cee]['map'](_0x1e9106=>_0x1e9106['toString'](0x10)['padStart'](0x2,'0'))['join']('')['toUpperCase']();}['escapeAltText'](_0x200911){return String(_0x200911||'')['replace'](/\]/g,'\x5c]');}['init'](){this['editor']=document['createElement']('div'),this['editor']['className']='markdown-editor',this['editor']['contentEditable']=this['options']['editable'],this['editor']['setAttribute']('role','textbox'),this['editor']['setAttribute']('aria-multiline','true'),this['editor']['style']['minHeight']=this['options']['minHeight'];this['options']['placeholder']&&this['editor']['setAttribute']('data-placeholder',this['options']['placeholder']);this['options']['toolbar']?(this['container']=document['createElement']('div'),this['container']['className']='markdown-editor-wrapper',this['container']['style']['display']='flex',this['container']['style']['flexDirection']='column',this['createToolbar'](),this['container']['appendChild'](this['toolbar']),this['container']['appendChild'](this['editor']),this['element']['parentNode']['insertBefore'](this['container'],this['element'])):this['element']['parentNode']['insertBefore'](this['editor'],this['element']);this['element']['style']['display']='none',this['isMac']=navigator['platform']['toUpperCase']()['indexOf']('MAC')>=0x0,this['linkHintText']=this['isMac']?'⌘+click\x20to\x20follow':'Ctrl+click\x20to\x20follow';this['options']['editable']&&this['bindEvents']();const _0x88b228=this['element']['textContent']||this['element']['value']||'';_0x88b228['trim']()&&this['setMarkdown'](_0x88b228);}['createToolbar'](){this['toolbar']=document['createElement']('div'),this['toolbar']['className']='markdown-editor-toolbar',this['toolbarButtons']={};const _0x4883f7=[{'id':'header','icon':ICONS['header'],'title':'Heading','action':'header','isDropdown':!![]},{'separator':!![]},{'id':'bold','icon':ICONS['bold'],'title':'Bold\x20(Ctrl+B)','action':'bold','command':'bold'},{'id':'italic','icon':ICONS['italic'],'title':'Italic\x20(Ctrl+I)','action':'italic','command':'italic'},{'id':'strike','icon':ICONS['strike'],'title':'Strikethrough','action':'strikeThrough','command':'strikeThrough'},{'id':'color','icon':ICONS['color'],'title':'Text\x20Color','action':'color','isDropdown':!![]},{'separator':!![]},{'id':'link','icon':ICONS['link'],'title':'Link\x20(Ctrl+K)','action':'link','tagName':'A'},{'id':'code','icon':ICONS['code'],'title':'Inline\x20Code','action':'code','tagName':'CODE'},{'id':'codeBlock','icon':ICONS['codeBlock'],'title':'Code\x20Block','action':'codeBlock','tagName':'PRE'},{'separator':!![]},{'id':'list-bullet','icon':ICONS['listBullet'],'title':'Bullet\x20List','action':'insertUnorderedList','command':'insertUnorderedList'},{'id':'list-ordered','icon':ICONS['listOrdered'],'title':'Numbered\x20List','action':'insertOrderedList','command':'insertOrderedList'}];_0x4883f7['forEach'](_0x2da06a=>{if(_0x2da06a['separator']){const _0x427d72=document['createElement']('div');_0x427d72['className']='markdown-toolbar-separator',_0x427d72['style']['width']='1px',_0x427d72['style']['height']='16px',_0x427d72['style']['background']='var(--color-border)',_0x427d72['style']['margin']='0\x206px',_0x427d72['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x427d72);}else{if(_0x2da06a['isDropdown']){const _0x1aa55a=document['createElement']('div');_0x1aa55a['className']='markdown-toolbar-dropdown',_0x1aa55a['style']['position']='relative';const _0x54c320=document['createElement']('button');_0x54c320['type']='button',_0x54c320['className']='markdown-editor-toolbar-btn\x20markdown-toolbar-dropdown-btn',_0x54c320['tabIndex']=-0x1,_0x54c320['innerHTML']=_0x2da06a['icon']+'<svg\x20class=\x22dropdown-arrow\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2210\x22\x20height=\x2210\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22><polyline\x20points=\x226\x209\x2012\x2015\x2018\x209\x22></polyline></svg>',_0x54c320['title']=_0x2da06a['title'],_0x54c320['dataset']['action']=_0x2da06a['action'];const _0x467d58=document['createElement']('div');_0x467d58['className']='markdown-toolbar-dropdown-menu',_0x467d58['style']['display']='none';if(_0x2da06a['action']==='header')this['createHeaderDropdown'](_0x467d58);else _0x2da06a['action']==='color'&&this['createColorDropdown'](_0x467d58);_0x54c320['addEventListener']('click',_0x1533c6=>{_0x1533c6['preventDefault'](),_0x1533c6['stopPropagation'](),this['toggleDropdown'](_0x467d58,_0x54c320);}),_0x1aa55a['appendChild'](_0x54c320),_0x1aa55a['appendChild'](_0x467d58),this['toolbar']['appendChild'](_0x1aa55a),this['toolbarButtons'][_0x2da06a['id']]={'button':_0x54c320,'dropdown':_0x467d58,'command':_0x2da06a['command'],'tagName':_0x2da06a['tagName']};}else{const _0x3bb36b=document['createElement']('button');_0x3bb36b['type']='button',_0x3bb36b['className']='markdown-editor-toolbar-btn',_0x3bb36b['tabIndex']=-0x1,_0x3bb36b['innerHTML']=_0x2da06a['icon'],_0x3bb36b['title']=_0x2da06a['title'],_0x3bb36b['dataset']['action']=_0x2da06a['action'],_0x3bb36b['addEventListener']('click',_0x5bdfa2=>{_0x5bdfa2['preventDefault'](),this['handleToolbarAction'](_0x2da06a['action']);}),this['toolbar']['appendChild'](_0x3bb36b),this['toolbarButtons'][_0x2da06a['id']]={'button':_0x3bb36b,'command':_0x2da06a['command'],'tagName':_0x2da06a['tagName']};}}}),document['addEventListener']('click',_0x168c3e=>{!this['toolbar']['contains'](_0x168c3e['target'])&&this['closeAllDropdowns']();});}['createHeaderDropdown'](_0x36b3e3){const _0x36b6bc=[{'level':0x1,'label':'Heading\x201','tag':'H1'},{'level':0x2,'label':'Heading\x202','tag':'H2'},{'level':0x3,'label':'Heading\x203','tag':'H3'},{'level':0x4,'label':'Heading\x204','tag':'H4'},{'level':0x0,'label':'Normal\x20Text','tag':'P'}];_0x36b6bc['forEach'](_0x1c5b31=>{const _0x34d2c0=document['createElement']('button');_0x34d2c0['type']='button',_0x34d2c0['className']='markdown-dropdown-item',_0x34d2c0['tabIndex']=-0x1,_0x34d2c0['innerHTML']='<span\x20style=\x22font-size:\x20'+(_0x1c5b31['level']===0x0?'14px':0x14-_0x1c5b31['level']*0x2+'px')+';\x20font-weight:\x20'+(_0x1c5b31['level']===0x0?'normal':'bold')+'\x22>'+_0x1c5b31['label']+'</span>',_0x34d2c0['addEventListener']('click',_0x2cff1=>{_0x2cff1['preventDefault'](),_0x2cff1['stopPropagation'](),this['applyHeader'](_0x1c5b31['level']),this['closeAllDropdowns']();}),_0x36b3e3['appendChild'](_0x34d2c0);});}['createColorDropdown'](_0x59fd8b){const _0x50f841=[{'value':'#000000','label':'Black'},{'value':'#374151','label':'Gray'},{'value':'#DC2626','label':'Red'},{'value':'#EA580C','label':'Orange'},{'value':'#CA8A04','label':'Yellow'},{'value':'#16A34A','label':'Green'},{'value':'#2563EB','label':'Blue'},{'value':'#7C3AED','label':'Purple'},{'value':'#DB2777','label':'Pink'}],_0x115002=document['createElement']('div');_0x115002['className']='markdown-color-grid',_0x115002['style']['display']='grid',_0x115002['style']['gridTemplateColumns']='repeat(3,\x201fr)',_0x115002['style']['gap']='4px',_0x115002['style']['padding']='8px',_0x50f841['forEach'](_0x2eca43=>{const _0x40443d=document['createElement']('button');_0x40443d['type']='button',_0x40443d['className']='markdown-color-btn',_0x40443d['tabIndex']=-0x1,_0x40443d['style']['width']='24px',_0x40443d['style']['height']='24px',_0x40443d['style']['backgroundColor']=_0x2eca43['value'],_0x40443d['style']['border']='1px\x20solid\x20var(--color-border)',_0x40443d['style']['borderRadius']='4px',_0x40443d['style']['cursor']='pointer',_0x40443d['title']=_0x2eca43['label'],_0x40443d['addEventListener']('click',_0x203c90=>{_0x203c90['preventDefault'](),_0x203c90['stopPropagation'](),this['applyColor'](_0x2eca43['value']),this['closeAllDropdowns']();}),_0x115002['appendChild'](_0x40443d);}),_0x59fd8b['appendChild'](_0x115002);const _0x5022fe=document['createElement']('button');_0x5022fe['type']='button',_0x5022fe['className']='markdown-dropdown-item',_0x5022fe['innerHTML']='<span>Remove\x20Color</span>',_0x5022fe['style']['borderTop']='1px\x20solid\x20var(--color-border)',_0x5022fe['style']['marginTop']='4px',_0x5022fe['style']['paddingTop']='8px',_0x5022fe['addEventListener']('click',_0x4c1dac=>{_0x4c1dac['preventDefault'](),_0x4c1dac['stopPropagation'](),this['removeColor'](),this['closeAllDropdowns']();}),_0x59fd8b['appendChild'](_0x5022fe);}['toggleDropdown'](_0x47ad82,_0x1a90e9){const _0x5e9383=_0x47ad82['style']['display']!=='none';this['toolbar']&&this['closeAllDropdowns'](),!_0x5e9383&&(_0x47ad82['style']['display']='block',_0x1a90e9['classList']['add']('active'));}['closeAllDropdowns'](){const _0x486e06=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-menu');_0x486e06['forEach'](_0x3c37ea=>_0x3c37ea['style']['display']='none');const _0x20af4e=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-btn');_0x20af4e['forEach'](_0x4be1ce=>_0x4be1ce['classList']['remove']('active'));}['applyHeader'](_0x1c821c){this['editor']['focus']();const _0x4b43b9=window['getSelection']();if(!_0x4b43b9||_0x4b43b9['rangeCount']===0x0)return;const _0x43cebe=_0x4b43b9['getRangeAt'](0x0);let _0x993a12=_0x43cebe['startContainer'];while(_0x993a12&&_0x993a12!==this['editor']){if(_0x993a12['nodeType']===Node['ELEMENT_NODE']){const _0x135ef5=window['getComputedStyle'](_0x993a12)['display'];if(_0x135ef5==='block'||['P','H1','H2','H3','H4','H5','H6','DIV']['includes'](_0x993a12['tagName']))break;}_0x993a12=_0x993a12['parentNode'];}_0x1c821c===0x0?document['execCommand']('formatBlock',![],'p'):document['execCommand']('formatBlock',![],'h'+_0x1c821c),this['editor']['dispatchEvent'](new Event('input'));}['applyColor'](_0x270d73){this['editor']['focus'](),document['execCommand']('foreColor',![],_0x270d73),this['editor']['dispatchEvent'](new Event('input'));}['removeColor'](){this['editor']['focus'](),document['execCommand']('removeFormat',![],null),this['editor']['dispatchEvent'](new Event('input'));}['handleToolbarAction'](_0x1a1b5c){this['editor']['focus']();switch(_0x1a1b5c){case'bold':case'italic':case'strikeThrough':case'insertUnorderedList':case'insertOrderedList':document['execCommand'](_0x1a1b5c,![],null);break;case'link':this['openLinkDialog']();return;case'code':this['toggleInlineCode']();break;case'codeBlock':this['insertCodeBlock']();break;}this['updateToolbarState'](),this['editor']['dispatchEvent'](new Event('input'));}['ensureLinkDialog'](){if(this['linkDialog'])return;this['ensureLinkDialogStyles']();const _0x5ca02f=document['createElement']('div');_0x5ca02f['className']='markdown-editor-link-modal',_0x5ca02f['hidden']=!![],_0x5ca02f['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-backdrop\x22></div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-dialog\x22\x20role=\x22dialog\x22\x20aria-modal=\x22true\x22\x20aria-label=\x22Edit\x20link\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<h3\x20class=\x22markdown-editor-link-title\x22>Insert\x20Link</h3>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22markdown-editor-link-close\x22\x20aria-label=\x22Close\x22>×</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<form\x20class=\x22markdown-editor-link-form\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-field-grid\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22markdown-editor-link-label\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20URL\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20class=\x22markdown-editor-link-input\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20data-link-field=\x22url\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type=\x22text\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20placeholder=\x22https://example.com\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20autocomplete=\x22off\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20spellcheck=\x22false\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22markdown-editor-link-label\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Display\x20text\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20class=\x22markdown-editor-link-input\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20data-link-field=\x22text\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type=\x22text\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20placeholder=\x22Text\x20shown\x20to\x20readers\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20autocomplete=\x22off\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20spellcheck=\x22false\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-actions\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22markdown-editor-link-btn\x20markdown-editor-link-btn-secondary\x22\x20data-action=\x22cancel\x22>Cancel</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22markdown-editor-link-btn\x20markdown-editor-link-btn-danger\x22\x20data-action=\x22remove\x22\x20hidden>Remove\x20Link</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22submit\x22\x20class=\x22markdown-editor-link-btn\x20markdown-editor-link-btn-primary\x22>Insert\x20Link</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</form>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20',document['body']['appendChild'](_0x5ca02f),this['linkDialog']=_0x5ca02f,this['linkDialogElements']={'backdrop':_0x5ca02f['querySelector']('.markdown-editor-link-backdrop'),'title':_0x5ca02f['querySelector']('.markdown-editor-link-title'),'close':_0x5ca02f['querySelector']('.markdown-editor-link-close'),'form':_0x5ca02f['querySelector']('.markdown-editor-link-form'),'urlInput':_0x5ca02f['querySelector']('[data-link-field=\x22url\x22]'),'textInput':_0x5ca02f['querySelector']('[data-link-field=\x22text\x22]'),'remove':_0x5ca02f['querySelector']('[data-action=\x22remove\x22]'),'cancel':_0x5ca02f['querySelector']('[data-action=\x22cancel\x22]'),'submit':_0x5ca02f['querySelector']('.markdown-editor-link-btn-primary')},this['linkDialogElements']['backdrop']['addEventListener']('click',()=>{this['closeLinkDialog']({'restoreSelection':!![]});}),this['linkDialogElements']['close']['addEventListener']('click',()=>{this['closeLinkDialog']({'restoreSelection':!![]});}),this['linkDialogElements']['cancel']['addEventListener']('click',()=>{this['closeLinkDialog']({'restoreSelection':!![]});}),this['linkDialogElements']['remove']['addEventListener']('click',()=>{this['applyLinkDialogResult']({'remove':!![]});}),this['linkDialogElements']['form']['addEventListener']('submit',_0x4cec5e=>{_0x4cec5e['preventDefault'](),this['applyLinkDialogResult']();}),this['linkDialog']['addEventListener']('keydown',_0x4e2b31=>{_0x4e2b31['key']==='Escape'&&(_0x4e2b31['preventDefault'](),this['closeLinkDialog']({'restoreSelection':!![]}));});}['openLinkDialog'](){const _0xe3f6a0=window['getSelection']();if(!_0xe3f6a0||_0xe3f6a0['rangeCount']===0x0)return;const _0x46b230=_0xe3f6a0['getRangeAt'](0x0),_0x447313=this['editor']['contains'](_0x46b230['commonAncestorContainer'])||this['editor']===_0x46b230['commonAncestorContainer'];if(!_0x447313)return;this['toolbar']&&this['closeAllDropdowns']();this['ensureLinkDialog']();const _0x5aba96=_0x46b230['cloneRange'](),_0x41cc51=this['findLinkAtRange'](_0x5aba96),_0xbfcae5=_0x41cc51?_0x41cc51['getAttribute']('href')||'':'',_0x15432f=_0x41cc51?_0x41cc51['textContent']||'':_0x5aba96['toString']();this['linkDialogContext']={'range':_0x5aba96,'existingLink':_0x41cc51,'selectedText':_0x15432f},this['linkDialogElements']['title']['textContent']=_0x41cc51?'Edit\x20Link':'Insert\x20Link',this['linkDialogElements']['submit']['textContent']=_0x41cc51?'Save\x20Link':'Insert\x20Link',this['linkDialogElements']['remove']['hidden']=!_0x41cc51,this['linkDialogElements']['urlInput']['value']=_0xbfcae5,this['linkDialogElements']['textInput']['value']=_0x15432f,this['linkDialog']['hidden']=![],this['linkDialogElements']['urlInput']['focus'](),this['linkDialogElements']['urlInput']['select']();}['closeLinkDialog']({restoreSelection:restoreSelection=![]}={}){if(!this['linkDialog'])return;const _0x484876=this['linkDialogContext'];this['linkDialog']['hidden']=!![],restoreSelection&&_0x484876?.['range']&&(this['editor']['focus'](),this['restoreRange'](_0x484876['range'])),this['linkDialogContext']=null;}['applyLinkDialogResult']({remove:remove=![]}={}){if(!this['linkDialog']||!this['linkDialogContext'])return;const _0x3a7908=this['linkDialogContext'],_0x59d0da=(this['linkDialogElements']['urlInput']['value']||'')['trim'](),_0x28be66=this['linkDialogElements']['textInput']['value']||'',_0x19458c=_0x28be66['trim']();if(!remove&&!_0x59d0da){this['linkDialogElements']['urlInput']['focus']();return;}this['closeLinkDialog'](),this['editor']['focus'](),this['restoreRange'](_0x3a7908['range']);if(remove)_0x3a7908['existingLink']&&_0x3a7908['existingLink']['parentNode']?this['unwrapLinkElement'](_0x3a7908['existingLink']):document['execCommand']('unlink',![],null);else{if(_0x3a7908['existingLink']&&_0x3a7908['existingLink']['parentNode'])_0x3a7908['existingLink']['setAttribute']('href',_0x59d0da),_0x3a7908['existingLink']['textContent']=_0x19458c||_0x59d0da;else{const _0x1e0cfd=window['getSelection']();if(!_0x1e0cfd||_0x1e0cfd['rangeCount']===0x0)return;const _0x4bfbaf=_0x1e0cfd['getRangeAt'](0x0),_0x2e9bc0=(_0x3a7908['selectedText']||'')['trim'](),_0xf0840c=_0x19458c||_0x2e9bc0||_0x59d0da;_0x4bfbaf['deleteContents']();const _0x2b4fee=document['createElement']('a');_0x2b4fee['href']=_0x59d0da,_0x2b4fee['textContent']=_0xf0840c,_0x4bfbaf['insertNode'](_0x2b4fee),_0x4bfbaf['setStartAfter'](_0x2b4fee),_0x4bfbaf['collapse'](!![]),_0x1e0cfd['removeAllRanges'](),_0x1e0cfd['addRange'](_0x4bfbaf);}}this['addLinkHints'](),this['updateToolbarState'](),this['editor']['dispatchEvent'](new Event('input'));}['ensureLinkDialogStyles'](){if(document['getElementById'](LINK_DIALOG_STYLE_ID))return;const _0x12e546=document['createElement']('style');_0x12e546['id']=LINK_DIALOG_STYLE_ID,_0x12e546['textContent']=LINK_DIALOG_STYLES,document['head']['appendChild'](_0x12e546);}['restoreRange'](_0x337af2){const _0x373bc5=window['getSelection']();if(!_0x373bc5)return;try{_0x373bc5['removeAllRanges'](),_0x373bc5['addRange'](_0x337af2);return;}catch(_0x4ca782){}const _0x3bf15c=document['createRange']();_0x3bf15c['selectNodeContents'](this['editor']),_0x3bf15c['collapse'](![]),_0x373bc5['removeAllRanges'](),_0x373bc5['addRange'](_0x3bf15c);}['findLinkAtRange'](_0x5ceeb5){if(!_0x5ceeb5)return null;const _0x4d6364=this['findParentLink'](_0x5ceeb5['startContainer']);if(_0x5ceeb5['collapsed'])return _0x4d6364;const _0x2cb988=this['findParentLink'](_0x5ceeb5['endContainer']);if(_0x4d6364&&_0x4d6364===_0x2cb988)return _0x4d6364;if(_0x4d6364&&_0x4d6364['contains'](_0x5ceeb5['endContainer']))return _0x4d6364;if(_0x2cb988&&_0x2cb988['contains'](_0x5ceeb5['startContainer']))return _0x2cb988;return null;}['findParentLink'](_0x1f3efc){let _0x17dd33=_0x1f3efc;while(_0x17dd33&&_0x17dd33!==this['editor']){if(_0x17dd33['nodeType']===Node['ELEMENT_NODE']&&_0x17dd33['tagName']==='A'){const _0x1b1c09=_0x17dd33['getAttribute']('href')||'';if(_0x1b1c09['startsWith']('mention:'))return null;return _0x17dd33;}_0x17dd33=_0x17dd33['parentNode'];}return null;}['unwrapLinkElement'](_0x1e6aeb){const _0x3ec5a1=_0x1e6aeb['parentNode'];if(!_0x3ec5a1)return;while(_0x1e6aeb['firstChild']){_0x3ec5a1['insertBefore'](_0x1e6aeb['firstChild'],_0x1e6aeb);}_0x3ec5a1['removeChild'](_0x1e6aeb);}['isSelectionInTag'](_0x2dc15f){const _0x556ed0=window['getSelection']();if(!_0x556ed0||_0x556ed0['rangeCount']===0x0)return![];let _0x4a187e=_0x556ed0['anchorNode'];while(_0x4a187e&&_0x4a187e!==this['editor']){if(_0x4a187e['nodeType']===Node['ELEMENT_NODE']&&_0x4a187e['tagName']===_0x2dc15f)return!![];_0x4a187e=_0x4a187e['parentNode'];}return![];}['updateToolbarState'](){if(!this['toolbarButtons'])return;for(const [_0x2d5a1f,_0x385494]of Object['entries'](this['toolbarButtons'])){let _0x6d2258=![];if(_0x385494['command'])try{_0x6d2258=document['queryCommandState'](_0x385494['command']);}catch(_0x5c0929){_0x6d2258=![];}else _0x385494['tagName']&&(_0x6d2258=this['isSelectionInTag'](_0x385494['tagName']));_0x385494['button']['classList']['toggle']('active',_0x6d2258);}}['bindEvents'](){this['editor']['addEventListener']('keydown',_0x4d2dcd=>this['handleKeydown'](_0x4d2dcd)),this['editor']['addEventListener']('input',_0x3d2488=>{this['handleMentionInput'](_0x3d2488),this['handleAutoFormat'](_0x3d2488);}),this['editor']['addEventListener']('input',()=>{const _0xb97d79=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');!_0xb97d79&&(this['editor']['innerHTML']='');this['updatePlaceholder']();const _0x1b98d1=this['getMarkdown']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x1b98d1:this['element']['textContent']=_0x1b98d1,this['options']['onChange']&&this['options']['onChange'](_0x1b98d1);}),this['editor']['addEventListener']('paste',_0x2ed704=>this['handlePaste'](_0x2ed704)),this['editor']['addEventListener']('dragover',_0x3ee331=>this['handleDragOver'](_0x3ee331)),this['editor']['addEventListener']('drop',_0xa14c58=>this['handleDrop'](_0xa14c58)),this['editor']['addEventListener']('dragstart',_0x2d2dcb=>this['handleDragStart'](_0x2d2dcb)),this['options']['toolbar']&&(this['selectionChangeHandler']=()=>{(this['editor']['contains'](document['activeElement'])||this['editor']===document['activeElement'])&&this['updateToolbarState']();},document['addEventListener']('selectionchange',this['selectionChangeHandler']),this['editor']['addEventListener']('keyup',()=>this['updateToolbarState']()),this['editor']['addEventListener']('mouseup',()=>this['updateToolbarState']()),this['editor']['addEventListener']('focus',()=>this['updateToolbarState']())),this['linkClickHandler']=_0x4da58f=>this['handleLinkClick'](_0x4da58f),this['editor']['addEventListener']('click',this['linkClickHandler']),this['linkMouseEnterHandler']=_0x1137d6=>this['handleLinkMouseEnter'](_0x1137d6),this['linkMouseLeaveHandler']=_0x470559=>this['handleLinkMouseLeave'](_0x470559),this['editor']['addEventListener']('mouseover',this['linkMouseEnterHandler']),this['editor']['addEventListener']('mouseout',this['linkMouseLeaveHandler']),this['updatePlaceholder']();}['handleAutoFormat'](_0x1dbc84){if(_0x1dbc84['inputType']==='deleteContentBackward')return;const _0x2f5e80=window['getSelection']();if(!_0x2f5e80||_0x2f5e80['rangeCount']===0x0)return;const _0x29f18d=_0x2f5e80['getRangeAt'](0x0),_0x5b0718=_0x29f18d['startContainer'];if(_0x5b0718['nodeType']!==Node['TEXT_NODE'])return;if(this['isSelectionInTag']('CODE')||this['isSelectionInTag']('PRE'))return;const _0x4895a7=_0x5b0718['textContent'],_0x2e44b7=_0x29f18d['startOffset'],_0x289f57=_0x4895a7['slice'](0x0,_0x2e44b7);if(_0x289f57['endsWith']('```')){_0x29f18d['setStart'](_0x5b0718,_0x2e44b7-0x3),_0x29f18d['setEnd'](_0x5b0718,_0x2e44b7),_0x29f18d['deleteContents'](),this['insertCodeBlock']();return;}const _0x4c4441=/`([^`]+)`$/,_0x37f737=_0x289f57['match'](_0x4c4441);if(_0x37f737){const _0x57489c=_0x37f737[0x1];if(_0x57489c){const _0x394db6=_0x37f737['index'],_0x953ef0=_0x394db6+_0x57489c['length']+0x2;_0x29f18d['setStart'](_0x5b0718,_0x394db6),_0x29f18d['setEnd'](_0x5b0718,_0x2e44b7),_0x29f18d['deleteContents']();const _0x5c9777=document['createElement']('code');_0x5c9777['textContent']=_0x57489c,_0x29f18d['insertNode'](_0x5c9777),_0x29f18d['setStartAfter'](_0x5c9777),_0x29f18d['setEndAfter'](_0x5c9777);const _0x2e84d9=document['createTextNode']('');_0x29f18d['insertNode'](_0x2e84d9),_0x29f18d['setStartAfter'](_0x2e84d9),_0x29f18d['setEndAfter'](_0x2e84d9),_0x2f5e80['removeAllRanges'](),_0x2f5e80['addRange'](_0x29f18d);return;}}const _0x2f8343=_0x289f57['match'](/^[-*][\s\u00A0]$/);if(_0x2f8343&&this['isAtStartOfBlock'](_0x5b0718)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x29f18d['setStart'](_0x5b0718,Math['max'](_0x2e44b7-0x2,0x0)),_0x29f18d['setEnd'](_0x5b0718,_0x2e44b7),_0x29f18d['deleteContents']();const _0x37c6c5=this['ensureListInsertionAnchor'](_0x5b0718);document['execCommand']('insertUnorderedList',![],null);_0x37c6c5&&_0x37c6c5['parentNode']&&_0x37c6c5['parentNode']['removeChild'](_0x37c6c5);this['updateToolbarState']();return;}const _0x36317f=_0x289f57['match'](/^1\.[\s\u00A0]$/);if(_0x36317f&&this['isAtStartOfBlock'](_0x5b0718)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x29f18d['setStart'](_0x5b0718,Math['max'](_0x2e44b7-0x3,0x0)),_0x29f18d['setEnd'](_0x5b0718,_0x2e44b7),_0x29f18d['deleteContents']();const _0x5c35f9=this['ensureListInsertionAnchor'](_0x5b0718);document['execCommand']('insertOrderedList',![],null);_0x5c35f9&&_0x5c35f9['parentNode']&&_0x5c35f9['parentNode']['removeChild'](_0x5c35f9);this['updateToolbarState']();return;}}['isAtStartOfBlock'](_0x3db351){let _0x366ef0=_0x3db351;while(_0x366ef0&&_0x366ef0!==this['editor']){const _0x253976=_0x366ef0['parentNode'];if(!_0x253976)break;const _0x2bc2ab=_0x253976['tagName'];if(_0x2bc2ab==='DIV'||_0x2bc2ab==='P'||_0x2bc2ab==='LI'||_0x253976===this['editor']){let _0x1f393d=_0x253976['firstChild'];while(_0x1f393d&&(_0x1f393d['nodeType']===Node['TEXT_NODE']&&_0x1f393d['textContent']===''||_0x1f393d['nodeType']===Node['ELEMENT_NODE']&&_0x1f393d['tagName']==='BR')){_0x1f393d=_0x1f393d['nextSibling'];}return _0x1f393d===_0x3db351||_0x1f393d===_0x366ef0;}_0x366ef0=_0x253976;}if(_0x366ef0===this['editor']||_0x3db351['parentNode']===this['editor']){let _0x224b3b=this['editor']['firstChild'];while(_0x224b3b&&(_0x224b3b['nodeType']===Node['TEXT_NODE']&&_0x224b3b['textContent']===''||_0x224b3b['nodeType']===Node['ELEMENT_NODE']&&_0x224b3b['tagName']==='BR')){_0x224b3b=_0x224b3b['nextSibling'];}return _0x224b3b===_0x3db351;}return![];}['getClosestBlockElement'](_0x4459b0){let _0x3dbc08=_0x4459b0;while(_0x3dbc08&&_0x3dbc08!==this['editor']){const _0x145cf6=_0x3dbc08['parentNode'];if(!_0x145cf6)break;const _0x39af67=_0x145cf6['tagName'];if(_0x39af67==='DIV'||_0x39af67==='P'||_0x39af67==='LI'||_0x145cf6===this['editor'])return _0x145cf6;_0x3dbc08=_0x145cf6;}return this['editor'];}['ensureListInsertionAnchor'](_0x25109b){const _0x37f9da=window['getSelection']();if(!_0x37f9da||_0x37f9da['rangeCount']===0x0)return null;const _0x55adfd=this['getClosestBlockElement'](_0x25109b);if(!_0x55adfd||_0x55adfd===this['editor'])return null;const _0x1829f6=_0x55adfd['textContent']['replace'](/\u200B/g,'');if(_0x1829f6!=='')return null;const _0x5ec52f=document['createTextNode']('');_0x55adfd['appendChild'](_0x5ec52f);const _0x4247ad=document['createRange']();return _0x4247ad['setStart'](_0x5ec52f,0x1),_0x4247ad['setEnd'](_0x5ec52f,0x1),_0x37f9da['removeAllRanges'](),_0x37f9da['addRange'](_0x4247ad),_0x5ec52f;}['getContainingListItem'](){const _0x36146e=window['getSelection']();if(!_0x36146e||_0x36146e['rangeCount']===0x0)return null;let _0x1d1c88=_0x36146e['anchorNode'];while(_0x1d1c88&&_0x1d1c88!==this['editor']){if(_0x1d1c88['nodeType']===Node['ELEMENT_NODE']&&_0x1d1c88['tagName']==='LI')return _0x1d1c88;_0x1d1c88=_0x1d1c88['parentNode'];}return null;}['isEmptyListItem'](_0x565b9b){if(!_0x565b9b)return![];const _0xd3922b=_0x565b9b['textContent']['replace'](/\u200B/g,'')['trim']();if(_0xd3922b!=='')return![];const _0x3e791f=_0x565b9b['querySelector']('img');if(_0x3e791f)return![];const _0x4d44fb=_0x565b9b['querySelector']('ul,\x20ol');if(_0x4d44fb)return![];return!![];}['isCursorAtStartOfListItem'](_0x225d23){if(!_0x225d23)return![];const _0x5c1c80=window['getSelection']();if(!_0x5c1c80||_0x5c1c80['rangeCount']===0x0||!_0x5c1c80['isCollapsed'])return![];const _0x1176e9=_0x5c1c80['getRangeAt'](0x0),_0x310cae=_0x1176e9['startContainer'];if(_0x310cae!==_0x225d23&&!_0x225d23['contains'](_0x310cae))return![];const _0x511f10=_0x1176e9['cloneRange']();_0x511f10['setStart'](_0x225d23,0x0),_0x511f10['setEnd'](_0x310cae,_0x1176e9['startOffset']);const _0x3414dc=_0x511f10['toString']()['replace'](/\u200B/g,'')['replace'](/\u00A0/g,'\x20');return _0x3414dc['trim']()==='';}['indentListItem'](_0x491d09){const _0x3cc9b4=_0x491d09['previousElementSibling'];if(!_0x3cc9b4||_0x3cc9b4['tagName']!=='LI')return;const _0x4ae855=_0x491d09['parentNode'],_0x41d103=_0x4ae855['tagName'];let _0x32e997=_0x3cc9b4['querySelector'](':scope\x20>\x20ul,\x20:scope\x20>\x20ol');!_0x32e997&&(_0x32e997=document['createElement'](_0x41d103),_0x3cc9b4['appendChild'](_0x32e997)),_0x32e997['appendChild'](_0x491d09),this['placeCursorInListItem'](_0x491d09);}['outdentListItem'](_0x570324){const _0x3733b1=_0x570324['parentNode'];if(!_0x3733b1||_0x3733b1['tagName']!=='UL'&&_0x3733b1['tagName']!=='OL')return;const _0x525dc6=_0x3733b1['parentNode'];if(_0x525dc6&&_0x525dc6['tagName']==='LI'){const _0xae21b1=_0x525dc6['parentNode'];_0xae21b1['insertBefore'](_0x570324,_0x525dc6['nextSibling']),_0x3733b1['children']['length']===0x0&&_0x3733b1['remove'](),this['placeCursorInListItem'](_0x570324);}else return;}['exitListOnEmptyBullet'](_0x435746){const _0x450937=_0x435746['parentNode'];if(!_0x450937)return;const _0x3a9841=_0x450937['parentNode'];if(_0x3a9841&&_0x3a9841['tagName']==='LI'){this['outdentListItem'](_0x435746);return;}const _0x5935c4=_0x450937['parentNode'],_0x2ccec8=document['createElement']('p');_0x2ccec8['innerHTML']='<br>',_0x5935c4['insertBefore'](_0x2ccec8,_0x450937['nextSibling']),_0x435746['remove']();_0x450937['children']['length']===0x0&&_0x450937['remove']();const _0x4e2fb7=window['getSelection'](),_0x3cbfa3=document['createRange']();_0x3cbfa3['setStart'](_0x2ccec8,0x0),_0x3cbfa3['collapse'](!![]),_0x4e2fb7['removeAllRanges'](),_0x4e2fb7['addRange'](_0x3cbfa3);}['placeCursorInListItem'](_0x53e1a1){const _0x2005b0=window['getSelection'](),_0x52cc08=document['createRange'](),_0x15ed9b=document['createTreeWalker'](_0x53e1a1,NodeFilter['SHOW_TEXT'],null,![]),_0x5d25f7=_0x15ed9b['nextNode']();_0x5d25f7?_0x52cc08['setStart'](_0x5d25f7,0x0):_0x52cc08['setStart'](_0x53e1a1,0x0),_0x52cc08['collapse'](!![]),_0x2005b0['removeAllRanges'](),_0x2005b0['addRange'](_0x52cc08);}['handleLinkClick'](_0x1ebe6c){const _0x2574c9=this['isMac']?_0x1ebe6c['metaKey']:_0x1ebe6c['ctrlKey'];if(!_0x2574c9)return;let _0x2ac8a3=_0x1ebe6c['target'];while(_0x2ac8a3&&_0x2ac8a3!==this['editor']){if(_0x2ac8a3['tagName']==='A'){_0x1ebe6c['preventDefault'](),_0x1ebe6c['stopPropagation']();const _0x1f8de4=_0x2ac8a3['getAttribute']('href');if(!_0x1f8de4)return;if(_0x1f8de4['startsWith']('mention:'))return;const _0x371dc8=/^https?:\/\//i['test'](_0x1f8de4);_0x371dc8?window['open'](_0x1f8de4,'_blank','noopener,noreferrer'):window['location']['href']=_0x1f8de4;return;}_0x2ac8a3=_0x2ac8a3['parentNode'];}}['handleLinkMouseEnter'](_0x12a77a){const _0x53823c=_0x12a77a['target'];if(_0x53823c['tagName']!=='A')return;const _0x519f7c=_0x53823c['getAttribute']('href')||'';if(_0x519f7c['startsWith']('mention:'))return;this['linkTooltipTimeout']&&clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=setTimeout(()=>{this['showLinkTooltip'](_0x53823c);},0x12c);}['handleLinkMouseLeave'](_0x5a7e83){const _0x52563=_0x5a7e83['target'];if(_0x52563['tagName']!=='A')return;this['linkTooltipTimeout']&&(clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=null),this['hideLinkTooltip']();}['showLinkTooltip'](_0x1d2356){!this['linkTooltip']&&(this['linkTooltip']=document['createElement']('div'),this['linkTooltip']['className']='markdown-editor-link-tooltip',document['body']['appendChild'](this['linkTooltip']));this['linkTooltip']['textContent']=this['linkHintText']||'Ctrl+click\x20to\x20follow';const _0x4c6a66=_0x1d2356['getBoundingClientRect'](),_0x44224f=this['linkTooltip']['getBoundingClientRect']();let _0x2b6572=_0x4c6a66['bottom']+0x4,_0x561167=_0x4c6a66['left']+_0x4c6a66['width']/0x2;_0x2b6572+0x1e>window['innerHeight']&&(_0x2b6572=_0x4c6a66['top']-0x1e);const _0x28d0c3=0x78;if(_0x561167-_0x28d0c3/0x2<0xa)_0x561167=_0x28d0c3/0x2+0xa;else _0x561167+_0x28d0c3/0x2>window['innerWidth']-0xa&&(_0x561167=window['innerWidth']-_0x28d0c3/0x2-0xa);this['linkTooltip']['style']['top']=_0x2b6572+'px',this['linkTooltip']['style']['left']=_0x561167+'px',this['linkTooltip']['style']['transform']='translateX(-50%)',this['linkTooltip']['classList']['add']('visible');}['hideLinkTooltip'](){this['linkTooltip']&&this['linkTooltip']['classList']['remove']('visible');}['handleKeydown'](_0x3be86c){if(this['mentionState']['active']){if(_0x3be86c['key']==='ArrowDown'){_0x3be86c['preventDefault'](),this['mentionNavigate'](0x1);return;}if(_0x3be86c['key']==='ArrowUp'){_0x3be86c['preventDefault'](),this['mentionNavigate'](-0x1);return;}if(_0x3be86c['key']==='Enter'||_0x3be86c['key']==='Tab'){if(this['mentionState']['filteredUsers']['length']>0x0){_0x3be86c['preventDefault'](),this['insertMention'](this['mentionState']['filteredUsers'][this['mentionState']['selectedIndex']]);return;}}if(_0x3be86c['key']==='Escape'){_0x3be86c['preventDefault'](),this['closeMentionDropdown']();return;}}if(_0x3be86c['key']==='Tab'&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x42f4a7=this['getContainingListItem']();if(_0x42f4a7&&this['isCursorAtStartOfListItem'](_0x42f4a7)){_0x3be86c['preventDefault']();_0x3be86c['shiftKey']?this['outdentListItem'](_0x42f4a7):this['indentListItem'](_0x42f4a7);this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x3be86c['key']==='Enter'&&!_0x3be86c['shiftKey']&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x2dc158=this['getContainingListItem']();if(_0x2dc158&&this['isEmptyListItem'](_0x2dc158)){_0x3be86c['preventDefault'](),this['exitListOnEmptyBullet'](_0x2dc158),this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x3be86c['key']==='Enter'&&!_0x3be86c['shiftKey']&&this['isSelectionInTag']('PRE')){_0x3be86c['preventDefault']();const _0x3c7b1e=window['getSelection']();if(_0x3c7b1e['rangeCount']>0x0){const _0x310362=_0x3c7b1e['getRangeAt'](0x0);_0x310362['deleteContents']();const _0x364125=document['createTextNode']('\x0a');_0x310362['insertNode'](_0x364125),_0x310362['setStartAfter'](_0x364125),_0x310362['setEndAfter'](_0x364125),_0x3c7b1e['removeAllRanges'](),_0x3c7b1e['addRange'](_0x310362),this['handleInput']();}return;}(_0x3be86c['ctrlKey']||_0x3be86c['metaKey'])&&_0x3be86c['key']==='b'&&(_0x3be86c['preventDefault'](),document['execCommand']('bold',![],null));(_0x3be86c['ctrlKey']||_0x3be86c['metaKey'])&&_0x3be86c['key']==='i'&&(_0x3be86c['preventDefault'](),document['execCommand']('italic',![],null));if((_0x3be86c['ctrlKey']||_0x3be86c['metaKey'])&&_0x3be86c['key']==='k'){_0x3be86c['preventDefault'](),this['openLinkDialog']();return;}}['handlePaste'](_0x47dcd7){const _0x502845=_0x47dcd7['clipboardData'];if(_0x502845&&this['options']['onAddAttachments']){const _0x3794e7=this['extractImageFilesFromClipboard'](_0x502845);if(_0x3794e7['length']>0x0){_0x47dcd7['preventDefault'](),this['addAndInsertImages'](_0x3794e7);return;}}_0x47dcd7['preventDefault']();const _0xbd2745=_0x47dcd7['clipboardData']['getData']('text/html');if(_0xbd2745&&_0xbd2745['trim']()){const _0x249a73=this['convertPastedHtmlToMarkdown'](_0xbd2745);if(_0x249a73&&_0x249a73['trim']()){this['insertMarkdownAsRichText'](_0x249a73);return;}}const _0xe320f7=_0x47dcd7['clipboardData']['getData']('text/plain');document['execCommand']('insertText',![],_0xe320f7);}['convertPastedHtmlToMarkdown'](_0x2125e8){const _0x46c53f=document['createElement']('div');_0x46c53f['innerHTML']=_0x2125e8;const _0x29093a=_0x46c53f['querySelectorAll']('style,\x20script,\x20meta,\x20link,\x20head,\x20title');_0x29093a['forEach'](_0x2a817f=>_0x2a817f['remove']());const _0x595eac=_0x46c53f['querySelectorAll']('*');_0x595eac['forEach'](_0x1c9a6b=>{const _0x307873=Array['from'](_0x1c9a6b['attributes']);_0x307873['forEach'](_0x17c817=>{_0x17c817['name']['startsWith']('data-')&&_0x17c817['name']!=='data-attachment-name'&&_0x17c817['name']!=='data-mention-user-id'&&_0x1c9a6b['removeAttribute'](_0x17c817['name']);});}),_0x46c53f['querySelectorAll']('font[color]')['forEach'](_0x3501fa=>{_0x3501fa['replaceWith'](..._0x3501fa['childNodes']);}),_0x46c53f['querySelectorAll']('span')['forEach'](_0x22ce63=>{_0x22ce63['style']['color']&&_0x22ce63['style']['removeProperty']('color'),!_0x22ce63['getAttribute']('style')&&!_0x22ce63['getAttribute']('data-mention-user-id')&&!_0x22ce63['getAttribute']('data-attachment-name')&&_0x22ce63['replaceWith'](..._0x22ce63['childNodes']);});try{return this['turndownService']['turndown'](_0x46c53f['innerHTML']);}catch(_0x5d3354){return console['warn']('Failed\x20to\x20convert\x20HTML\x20to\x20markdown:',_0x5d3354),null;}}['insertMarkdownAsRichText'](_0x434b56){const _0x367047=window['marked'];if(!_0x367047){document['execCommand']('insertText',![],_0x434b56);return;}try{const _0x32cf12=this['preprocessColorSyntax'](_0x434b56),_0x7a4bc=_0x367047['parse'](_0x32cf12),_0x193af8=document['createElement']('div');_0x193af8['innerHTML']=_0x7a4bc,this['processHtmlForEditor'](_0x193af8),document['execCommand']('insertHTML',![],_0x193af8['innerHTML']);}catch(_0x1fe55e){console['warn']('Failed\x20to\x20convert\x20markdown\x20to\x20HTML:',_0x1fe55e),document['execCommand']('insertText',![],_0x434b56);}}['processHtmlForEditor'](_0x2508ac){const _0x215cea=_0x2508ac['querySelectorAll']('pre');_0x215cea['forEach'](_0x59ce55=>{const _0x1759f7=_0x59ce55['querySelector']('code');if(_0x1759f7){const _0x180e32=Array['from'](_0x1759f7['classList'])['find'](_0x43702e=>_0x43702e['startsWith']('language-')),_0x3e5e4a=_0x180e32?_0x180e32['replace']('language-',''):'',_0x32591b=document['createElement']('pre');_0x3e5e4a&&_0x32591b['setAttribute']('data-language',_0x3e5e4a),_0x32591b['textContent']=_0x1759f7['textContent'],_0x59ce55['replaceWith'](_0x32591b);}});const _0x34f30e=_0x2508ac['querySelectorAll']('a');_0x34f30e['forEach'](_0x2dbb31=>{_0x2dbb31['setAttribute']('target','_blank'),_0x2dbb31['setAttribute']('rel','noopener\x20noreferrer');});}['handleDragStart'](_0x56fb55){const _0x14afa7=_0x56fb55['target'];if(!_0x14afa7||_0x14afa7['tagName']!=='IMG')return;if(!_0x56fb55['dataTransfer'])return;const _0xdd94=_0x14afa7['getAttribute']('data-attachment-name')||'';try{_0x56fb55['dataTransfer']['setData'](INTERNAL_DRAG_MIME,_0xdd94||'1');}catch{}_0x56fb55['dataTransfer']['effectAllowed']='move';}['handleDragOver'](_0x4dab58){if(!this['isExternalFileTransfer'](_0x4dab58['dataTransfer']))return;_0x4dab58['preventDefault'](),_0x4dab58['dataTransfer']['dropEffect']='copy';}['handleDrop'](_0x300bd0){if(!this['isExternalFileTransfer'](_0x300bd0['dataTransfer']))return;const _0x293242=_0x300bd0['dataTransfer'],_0x1ca09e=Array['from'](_0x293242['files']||[])['filter'](_0x2592a7=>_0x2592a7&&typeof _0x2592a7['type']==='string'),_0x20ce98=_0x1ca09e['filter'](_0xce19bc=>_0xce19bc['type']['startsWith']('image/'));if(_0x20ce98['length']===0x0)return;_0x300bd0['preventDefault'](),_0x300bd0['stopPropagation'](),this['cleanupParentDragState'](),this['moveSelectionToDropPoint'](_0x300bd0),this['addAndInsertImages'](_0x20ce98);}['cleanupParentDragState'](){let _0x24d0fe=this['editor']['parentElement'];while(_0x24d0fe){_0x24d0fe['classList']&&_0x24d0fe['classList']['contains']('drag-over')&&_0x24d0fe['classList']['remove']('drag-over'),_0x24d0fe=_0x24d0fe['parentElement'];}}['isExternalFileTransfer'](_0x4c57be){if(!_0x4c57be)return![];const _0x168a13=Array['from'](_0x4c57be['types']||[]);if(!_0x168a13['includes']('Files'))return![];if(_0x168a13['includes'](INTERNAL_DRAG_MIME))return![];if(_0x4c57be['files']&&_0x4c57be['files']['length']>0x0)return!![];if(_0x4c57be['items']&&Array['from'](_0x4c57be['items'])['some'](_0x243efa=>_0x243efa['kind']==='file'))return!![];return![];}['moveSelectionToDropPoint'](_0x523789){const _0x498474=_0x523789['clientX'],_0x2946a8=_0x523789['clientY'];let _0x149c21=null;if(document['caretRangeFromPoint'])_0x149c21=document['caretRangeFromPoint'](_0x498474,_0x2946a8);else{if(document['caretPositionFromPoint']){const _0x37b880=document['caretPositionFromPoint'](_0x498474,_0x2946a8);_0x37b880&&(_0x149c21=document['createRange'](),_0x149c21['setStart'](_0x37b880['offsetNode'],_0x37b880['offset']),_0x149c21['collapse'](!![]));}}if(_0x149c21){const _0x26b6b1=window['getSelection']();_0x26b6b1['removeAllRanges'](),_0x26b6b1['addRange'](_0x149c21);}}['extractImageFilesFromClipboard'](_0x45a535){const _0x3b2c0a=Array['from'](_0x45a535['items']||[]),_0x420cef=[];for(const _0x1427c4 of _0x3b2c0a){if(_0x1427c4['kind']==='file'&&_0x1427c4['type']&&_0x1427c4['type']['startsWith']('image/')){const _0x5973a4=_0x1427c4['getAsFile']();if(_0x5973a4)_0x420cef['push'](_0x5973a4);}}return _0x420cef;}['addAndInsertImages'](_0x5abedd){const _0x2ce267=_0x5abedd['map'](_0x1a4352=>this['prepareAttachmentFile'](_0x1a4352))['filter'](Boolean);if(_0x2ce267['length']===0x0)return;const _0xfd3159=_0x2ce267['map'](_0x183cbe=>_0x183cbe['file']);try{this['options']['onAddAttachments'](_0xfd3159);}catch(_0xb0e078){console['error']('Failed\x20to\x20add\x20attachments:',_0xb0e078);}for(const {name:_0x438d98,objectUrl:_0xec9220}of _0x2ce267){this['insertAttachmentImage'](_0x438d98,_0xec9220);}this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));}['prepareAttachmentFile'](_0xae53b2){const _0x2e4090=this['sanitizeFilename'](_0xae53b2['name']||this['defaultImageName'](_0xae53b2['type']));if(!_0x2e4090)return null;const _0x51e55e=this['getUniqueAttachmentName'](_0x2e4090),_0x1d04af=_0x51e55e===_0xae53b2['name']?_0xae53b2:new File([_0xae53b2],_0x51e55e,{'type':_0xae53b2['type'],'lastModified':_0xae53b2['lastModified']}),_0x358c4f=URL['createObjectURL'](_0x1d04af);return this['attachmentObjectUrls']['set'](_0x51e55e,_0x358c4f),{'name':_0x51e55e,'file':_0x1d04af,'objectUrl':_0x358c4f};}['getUniqueAttachmentName'](_0x37711f){const _0x1082c5=_0x58b8df=>{if(this['attachmentObjectUrls']['has'](_0x58b8df))return!![];if(this['options']['isAttachmentNameTaken'])try{return Boolean(this['options']['isAttachmentNameTaken'](_0x58b8df));}catch{return![];}return![];};if(!_0x1082c5(_0x37711f))return _0x37711f;const {stem:_0x5f4ead,ext:_0x174146}=this['splitFilename'](_0x37711f);for(let _0x5712ca=0x2;_0x5712ca<0x3e8;_0x5712ca++){const _0x40cf47=_0x5f4ead+'-'+_0x5712ca+_0x174146;if(!_0x1082c5(_0x40cf47))return _0x40cf47;}return _0x5f4ead+'-'+Date['now']()+_0x174146;}['splitFilename'](_0x2d5bc9){const _0x251ceb=_0x2d5bc9['lastIndexOf']('.');if(_0x251ceb<=0x0||_0x251ceb===_0x2d5bc9['length']-0x1)return{'stem':_0x2d5bc9,'ext':''};return{'stem':_0x2d5bc9['slice'](0x0,_0x251ceb),'ext':_0x2d5bc9['slice'](_0x251ceb)};}['sanitizeFilename'](_0x1dd9f4){const _0x2793d1=String(_0x1dd9f4||'')['split']('/')['pop']()['split']('\x5c')['pop']();return _0x2793d1['replace'](/[\u0000-\u001F\u007F]/g,'')['trim']();}['defaultImageName'](_0x59edfe){const _0x2ca65f=this['extensionForMime'](_0x59edfe);return'pasted-image-'+Date['now']()+_0x2ca65f;}['extensionForMime'](_0x1a640b){switch(_0x1a640b){case'image/png':return'.png';case'image/jpeg':return'.jpg';case'image/gif':return'.gif';case'image/webp':return'.webp';case'image/svg+xml':return'.svg';default:return'.png';}}['insertAttachmentImage'](_0x19c70d,_0x4ecd75){const _0x2f7655=document['createElement']('img');_0x2f7655['src']=_0x4ecd75,_0x2f7655['alt']=_0x19c70d,_0x2f7655['setAttribute']('data-attachment-name',_0x19c70d),_0x2f7655['draggable']=!![];const _0x3c86a0=window['getSelection']();let _0xd3ba42=![];if(_0x3c86a0&&_0x3c86a0['rangeCount']>0x0){const _0x5b4fa6=_0x3c86a0['getRangeAt'](0x0);_0xd3ba42=this['editor']['contains'](_0x5b4fa6['commonAncestorContainer'])||this['editor']===_0x5b4fa6['commonAncestorContainer'];}if(!_0xd3ba42){this['editor']['appendChild'](_0x2f7655);const _0x1ede43=document['createRange']();_0x1ede43['setStartAfter'](_0x2f7655),_0x1ede43['collapse'](!![]),_0x3c86a0['removeAllRanges'](),_0x3c86a0['addRange'](_0x1ede43);return;}const _0x4cbf7e=_0x3c86a0['getRangeAt'](0x0);_0x4cbf7e['deleteContents'](),_0x4cbf7e['insertNode'](_0x2f7655),_0x4cbf7e['setStartAfter'](_0x2f7655),_0x4cbf7e['collapse'](!![]),_0x3c86a0['removeAllRanges'](),_0x3c86a0['addRange'](_0x4cbf7e);}['toggleInlineCode'](){const _0x451305=window['getSelection']();if(_0x451305['rangeCount']===0x0)return;const _0x55031c=_0x451305['getRangeAt'](0x0),_0x153a3a=_0x55031c['toString']();if(_0x153a3a){const _0x432a55=document['createElement']('code');_0x432a55['textContent']=_0x153a3a,_0x55031c['deleteContents'](),_0x55031c['insertNode'](_0x432a55),_0x55031c['setStartAfter'](_0x432a55),_0x55031c['setEndAfter'](_0x432a55),_0x451305['removeAllRanges'](),_0x451305['addRange'](_0x55031c);}}['insertCodeBlock'](){const _0x38f174=window['getSelection']();if(_0x38f174['rangeCount']===0x0)return;const _0x53dd9e=_0x38f174['getRangeAt'](0x0),_0x3da40b=_0x53dd9e['toString'](),_0x1ec16a=document['createElement']('pre'),_0x28abeb=document['createElement']('code');_0x28abeb['textContent']=_0x3da40b||'\x0a',_0x1ec16a['appendChild'](_0x28abeb),_0x53dd9e['deleteContents'](),_0x53dd9e['insertNode'](_0x1ec16a);const _0xa31a40=document['createElement']('p');_0xa31a40['innerHTML']='<br>',_0x1ec16a['parentNode']['insertBefore'](_0xa31a40,_0x1ec16a['nextSibling']);const _0x3e2b0e=document['createRange']();!_0x3da40b?(_0x3e2b0e['setStart'](_0x28abeb['firstChild'],0x0),_0x3e2b0e['setEnd'](_0x28abeb['firstChild'],0x0)):(_0x3e2b0e['selectNodeContents'](_0x28abeb),_0x3e2b0e['collapse'](![])),_0x38f174['removeAllRanges'](),_0x38f174['addRange'](_0x3e2b0e);}['updatePlaceholder'](){const _0x2476ed=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');_0x2476ed?this['editor']['classList']['remove']('empty'):this['editor']['classList']['add']('empty');}['setMarkdown'](_0x19b10d){if(!_0x19b10d||!_0x19b10d['trim']()){this['editor']['innerHTML']='',this['updatePlaceholder']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']='':this['element']['textContent']='';return;}const _0x1916ff=this['preprocessColorSyntax'](_0x19b10d),_0x2c5d44=window['marked']['parse'](_0x1916ff);this['editor']['innerHTML']=_0x2c5d44,this['rewriteAttachmentImages'](),this['rewriteMentionLinks'](),this['addLinkHints'](),this['updatePlaceholder'](),this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x19b10d:this['element']['textContent']=_0x19b10d;}['rewriteAttachmentImages'](){const _0xfe4184=this['editor']['querySelectorAll']('img');_0xfe4184['forEach'](_0x2128df=>{const _0x35cbf2=_0x2128df['getAttribute']('data-attachment-name'),_0x18ef40=_0x2128df['getAttribute']('src')||'',_0x2b0f46=this['parseAttachmentReference'](_0x18ef40)||this['parseTaskAttachmentUrl'](_0x18ef40),_0x269124=_0x35cbf2||(_0x2b0f46?_0x2b0f46['name']:null);if(!_0x269124)return;_0x2128df['setAttribute']('data-attachment-name',_0x269124);const _0xb38eef=this['attachmentObjectUrls']['get'](_0x269124)||(this['options']['resolveAttachmentUrl']?this['options']['resolveAttachmentUrl'](_0x269124):null);_0xb38eef&&(_0x2128df['src']=_0xb38eef);});}['rewriteMentionLinks'](){const _0xa7e238=this['editor']['querySelectorAll']('a[href^=\x22mention:\x22]');_0xa7e238['forEach'](_0xd5c87=>{const _0x3538bc=_0xd5c87['getAttribute']('href')||'',_0x47f899=_0x3538bc['replace']('mention:',''),_0x2f5151=_0xd5c87['textContent']||'',_0x4842d2=document['createElement']('span');_0x4842d2['className']='mention',_0x4842d2['setAttribute']('data-mention-user-id',_0x47f899),_0x4842d2['setAttribute']('contenteditable','false'),_0x4842d2['textContent']='@'+_0x2f5151;const _0x344077=_0xd5c87['previousSibling'];_0x344077&&_0x344077['nodeType']===Node['TEXT_NODE']&&_0x344077['textContent']['endsWith']('@')&&(_0x344077['textContent']=_0x344077['textContent']['slice'](0x0,-0x1)),_0xd5c87['parentNode']['replaceChild'](_0x4842d2,_0xd5c87);});}['addLinkHints'](){if(!this['options']['editable'])return;const _0x40ecee=this['editor']['querySelectorAll']('a');_0x40ecee['forEach'](_0x392a0b=>{const _0x5b25e3=_0x392a0b['getAttribute']('href')||'';if(_0x5b25e3['startsWith']('mention:'))return;const _0x3bb924=_0x392a0b['textContent']||_0x5b25e3,_0x1ec4f6=_0x3bb924+'\x20('+(this['linkHintText']||'Ctrl+click\x20to\x20follow')+')';_0x392a0b['setAttribute']('aria-label',_0x1ec4f6);});}['preprocessColorSyntax'](_0x15a971){if(!_0x15a971)return _0x15a971;const _0x343b5c=_0x102dd1=>{return String(_0x102dd1)['replace'](/\{color:(#[0-9A-Fa-f]{3,6})\}([\s\S]*?)\{\/color\}/g,(_0x2f6583,_0x1ab7d4,_0x4ec432)=>{const _0xecd8ea=_0x343b5c(_0x4ec432);return'<span\x20style=\x22color:\x20'+_0x1ab7d4+'\x22>'+_0xecd8ea+'</span>';});};return _0x343b5c(_0x15a971);}['parseAttachmentReference'](_0x67a6bd){if(!_0x67a6bd||typeof _0x67a6bd!=='string')return null;if(!_0x67a6bd['startsWith'](ATTACHMENT_SCHEME)&&!_0x67a6bd['startsWith'](ATTACHMENT_SCHEME+'//'))return null;const _0x1783c9=_0x67a6bd['replace'](ATTACHMENT_SCHEME+'//','')['replace'](ATTACHMENT_SCHEME,'');if(!_0x1783c9)return null;try{return{'name':decodeURIComponent(_0x1783c9)};}catch{return{'name':_0x1783c9};}}['parseTaskAttachmentUrl'](_0x497048){if(!_0x497048||typeof _0x497048!=='string')return null;const _0xa1d5e7=_0x497048['match'](/\/tasks\/[^/]+\/attachments\/([^?#]+)/);if(!_0xa1d5e7)return null;const _0x5651b2=_0xa1d5e7[0x1];try{return{'name':decodeURIComponent(_0x5651b2)};}catch{return{'name':_0x5651b2};}}['updateAttachmentFile'](_0xcb40a6,_0x21725c){const _0xa7ab01=this['attachmentObjectUrls']['get'](_0xcb40a6);if(_0xa7ab01)try{URL['revokeObjectURL'](_0xa7ab01);}catch{}const _0x4b692d=URL['createObjectURL'](_0x21725c);this['attachmentObjectUrls']['set'](_0xcb40a6,_0x4b692d);const _0x3f6633=this['editor']['querySelector']('img[data-attachment-name=\x22'+CSS['escape'](_0xcb40a6)+'\x22]');return _0x3f6633&&(_0x3f6633['src']=_0x4b692d),_0x4b692d;}['getMarkdown'](){const _0x4bbd1f=this['editor']['innerHTML'];if(!_0x4bbd1f||_0x4bbd1f['trim']()===''||_0x4bbd1f==='<br>')return'';return this['turndownService']['turndown'](_0x4bbd1f)['replace'](/\u200B/g,'');}['getValue'](){return this['getMarkdown']();}['setValue'](_0x18aa13){this['setMarkdown'](_0x18aa13);}['focus'](){this['editor']['focus']();}['clear'](){this['editor']['innerHTML']='',this['updatePlaceholder']();}['setEditable'](_0x94bba0){this['editor']['contentEditable']=_0x94bba0,this['options']['editable']=_0x94bba0;}['handleMentionInput'](_0x174c1d){if(!this['options']['fetchUsers'])return;const _0x48ecb2=window['getSelection']();if(!_0x48ecb2||_0x48ecb2['rangeCount']===0x0){this['closeMentionDropdown']();return;}const _0x1752ec=_0x48ecb2['getRangeAt'](0x0),_0x28e8f1=_0x1752ec['startContainer'];if(_0x28e8f1['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x350f2e=_0x28e8f1['textContent']||'',_0x291631=_0x1752ec['startOffset'],_0x858277=_0x350f2e['slice'](0x0,_0x291631),_0x214a85=_0x858277['lastIndexOf']('@');if(_0x214a85===-0x1){this['closeMentionDropdown']();return;}const _0x29ec69=_0x214a85>0x0?_0x858277[_0x214a85-0x1]:'\x20';if(!/\s/['test'](_0x29ec69)&&_0x214a85!==0x0){this['closeMentionDropdown']();return;}const _0x157ce8=_0x858277['slice'](_0x214a85+0x1);if(/[\s\n]/['test'](_0x157ce8)){this['closeMentionDropdown']();return;}this['mentionState']['active']=!![],this['mentionState']['query']=_0x157ce8['toLowerCase'](),this['mentionState']['startOffset']=_0x214a85,this['mentionState']['startNode']=_0x28e8f1,this['showMentionDropdown']();}async['showMentionDropdown'](){if(!this['usersCache'])try{const _0x3e5f87=await this['options']['fetchUsers']();this['usersCache']=_0x3e5f87['users']||_0x3e5f87||[];}catch(_0x19ec07){console['error']('Failed\x20to\x20fetch\x20users\x20for\x20@mention:',_0x19ec07),this['closeMentionDropdown']();return;}this['mentionState']['users']=this['usersCache'];const _0x12dbeb=this['mentionState']['query'];this['mentionState']['filteredUsers']=this['mentionState']['users']['filter'](_0x309672=>{const _0x1d8369=(_0x309672['name']||'')['toLowerCase'](),_0x28b5f7=(_0x309672['username']||'')['toLowerCase']();return _0x1d8369['includes'](_0x12dbeb)||_0x28b5f7['includes'](_0x12dbeb);})['slice'](0x0,0x8),this['mentionState']['selectedIndex']=0x0;if(this['mentionState']['filteredUsers']['length']===0x0){this['closeMentionDropdown']();return;}this['renderMentionDropdown'](),this['positionMentionDropdown']();}['renderMentionDropdown'](){!this['mentionDropdown']&&(this['mentionDropdown']=document['createElement']('div'),this['mentionDropdown']['className']='mention-dropdown',document['body']['appendChild'](this['mentionDropdown']),this['mentionClickOutsideHandler']=_0x59ba0a=>{!this['mentionDropdown']['contains'](_0x59ba0a['target'])&&!this['editor']['contains'](_0x59ba0a['target'])&&this['closeMentionDropdown']();},document['addEventListener']('click',this['mentionClickOutsideHandler']),this['mentionScrollHandler']=()=>{this['mentionState']['active']&&this['positionMentionDropdown']();},window['addEventListener']('scroll',this['mentionScrollHandler'],!![]));const _0x4ba412=this['mentionState']['filteredUsers'];this['mentionDropdown']['innerHTML']=_0x4ba412['map']((_0x5ae125,_0x4f2fdf)=>{const _0x64a5ca=_0x4f2fdf===this['mentionState']['selectedIndex'],_0x21a562=_0x5ae125['name']||_0x5ae125['username']||'Unknown',_0x597065=_0x5ae125['username']||'',_0x31e0df=this['getInitials'](_0x21a562),_0x3f774e=this['getAvatarColorIndex'](_0x597065||_0x5ae125['id']||_0x21a562);return'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22mention-option\x20'+(_0x64a5ca?'mention-option-selected':'')+'\x22\x20data-index=\x22'+_0x4f2fdf+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-avatar\x20avatar-color-'+_0x3f774e+'\x22>'+this['escapeHtmlForMention'](_0x31e0df)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-option-name\x22>'+this['escapeHtmlForMention'](_0x21a562)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x597065?'<span\x20class=\x22mention-option-username\x22>@'+this['escapeHtmlForMention'](_0x597065)+'</span>':'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20';})['join'](''),this['mentionDropdown']['querySelectorAll']('.mention-option')['forEach'](_0x3f686c=>{_0x3f686c['addEventListener']('mousedown',_0x30a6ad=>{_0x30a6ad['preventDefault']();const _0x193715=parseInt(_0x3f686c['dataset']['index'],0xa);this['insertMention'](this['mentionState']['filteredUsers'][_0x193715]);}),_0x3f686c['addEventListener']('mouseenter',()=>{const _0x125de2=parseInt(_0x3f686c['dataset']['index'],0xa);this['mentionState']['selectedIndex']=_0x125de2,this['updateMentionSelection']();});}),this['mentionDropdown']['style']['display']='block';}['positionMentionDropdown'](){if(!this['mentionDropdown'])return;const _0x161c6e=window['getSelection']();if(!_0x161c6e||_0x161c6e['rangeCount']===0x0)return;const _0xf231b7=_0x161c6e['getRangeAt'](0x0),_0x148c39=_0xf231b7['getBoundingClientRect'](),_0xc4e080=0x104,_0x400500=Math['min'](0xf0,this['mentionState']['filteredUsers']['length']*0x24+0x8),_0x1e9f27=window['innerWidth'],_0x4c443f=window['innerHeight'],_0x39c90a=_0x4c443f-_0x148c39['bottom'],_0x520cdf=_0x148c39['top'],_0x11ab4c=_0x39c90a<_0x400500+0xa&&_0x520cdf>_0x39c90a;let _0x4df562,_0x1c34a3;_0x11ab4c?_0x4df562=_0x148c39['top']+window['scrollY']-_0x400500-0x4:_0x4df562=_0x148c39['bottom']+window['scrollY']+0x4,_0x1c34a3=_0x148c39['left']+window['scrollX'],_0x1c34a3+_0xc4e080>_0x1e9f27-0xa&&(_0x1c34a3=_0x1e9f27-_0xc4e080-0xa),_0x1c34a3<0xa&&(_0x1c34a3=0xa),this['mentionDropdown']['style']['position']='absolute',this['mentionDropdown']['style']['top']=_0x4df562+'px',this['mentionDropdown']['style']['left']=_0x1c34a3+'px';}['mentionNavigate'](_0x5ac8db){const _0xa4de92=this['mentionState']['filteredUsers']['length'];if(_0xa4de92===0x0)return;this['mentionState']['selectedIndex']=(this['mentionState']['selectedIndex']+_0x5ac8db+_0xa4de92)%_0xa4de92,this['updateMentionSelection']();}['updateMentionSelection'](){if(!this['mentionDropdown'])return;const _0x352818=this['mentionDropdown']['querySelectorAll']('.mention-option');_0x352818['forEach']((_0x18daf9,_0x2c2372)=>{_0x2c2372===this['mentionState']['selectedIndex']?(_0x18daf9['classList']['add']('mention-option-selected'),_0x18daf9['scrollIntoView']({'block':'nearest'})):_0x18daf9['classList']['remove']('mention-option-selected');});}['insertMention'](_0x4e2fe6){if(!_0x4e2fe6)return;const _0x58f9c6=window['getSelection']();if(!_0x58f9c6||_0x58f9c6['rangeCount']===0x0)return;const _0x3add26=_0x58f9c6['getRangeAt'](0x0),_0x336463=this['mentionState']['startNode'];if(!_0x336463||_0x336463['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x10d3c5=_0x336463['textContent']||'',_0x8dbc6e=this['mentionState']['startOffset'],_0x391f28=_0x3add26['startOffset'],_0x2ab197=_0x10d3c5['slice'](0x0,_0x8dbc6e),_0x40df0f=_0x10d3c5['slice'](_0x391f28),_0x28fd05=document['createElement']('span');_0x28fd05['className']='mention',_0x28fd05['setAttribute']('data-mention-user-id',_0x4e2fe6['id']),_0x28fd05['setAttribute']('contenteditable','false'),_0x28fd05['textContent']='@'+(_0x4e2fe6['name']||_0x4e2fe6['username']);const _0x1f1c42=document['createTextNode'](_0x2ab197),_0x2f555f=document['createTextNode']('\x20'+_0x40df0f),_0x1cc51e=_0x336463['parentNode'];_0x1cc51e['insertBefore'](_0x1f1c42,_0x336463),_0x1cc51e['insertBefore'](_0x28fd05,_0x336463),_0x1cc51e['insertBefore'](_0x2f555f,_0x336463),_0x1cc51e['removeChild'](_0x336463);const _0x1a0307=document['createRange']();_0x1a0307['setStart'](_0x2f555f,0x1),_0x1a0307['collapse'](!![]),_0x58f9c6['removeAllRanges'](),_0x58f9c6['addRange'](_0x1a0307),this['closeMentionDropdown'](),this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));}['closeMentionDropdown'](){this['mentionState']['active']=![],this['mentionState']['query']='',this['mentionState']['filteredUsers']=[],this['mentionState']['selectedIndex']=0x0,this['mentionDropdown']&&(this['mentionDropdown']['style']['display']='none');}['escapeHtmlForMention'](_0x427bbd){const _0x590a74=document['createElement']('div');return _0x590a74['textContent']=_0x427bbd,_0x590a74['innerHTML'];}['getInitials'](_0x3a905a){if(!_0x3a905a)return'?';const _0x1d04d1=_0x3a905a['trim']()['split'](/\s+/);if(_0x1d04d1['length']>=0x2)return(_0x1d04d1[0x0][0x0]+_0x1d04d1[_0x1d04d1['length']-0x1][0x0])['toUpperCase']();return _0x3a905a['substring'](0x0,0x2)['toUpperCase']();}['getAvatarColorIndex'](_0x16c340){if(!_0x16c340)return 0x6;let _0x2304a9=0x0;for(let _0x157792=0x0;_0x157792<_0x16c340['length'];_0x157792++){_0x2304a9=_0x16c340['charCodeAt'](_0x157792)+((_0x2304a9<<0x5)-_0x2304a9);}return Math['abs'](_0x2304a9)%0xa;}['destroy'](){this['selectionChangeHandler']&&document['removeEventListener']('selectionchange',this['selectionChangeHandler']);this['linkClickHandler']&&this['editor']['removeEventListener']('click',this['linkClickHandler']);this['linkMouseEnterHandler']&&this['editor']['removeEventListener']('mouseover',this['linkMouseEnterHandler']);this['linkMouseLeaveHandler']&&this['editor']['removeEventListener']('mouseout',this['linkMouseLeaveHandler']);this['linkTooltipTimeout']&&clearTimeout(this['linkTooltipTimeout']);this['linkTooltip']&&(this['linkTooltip']['remove'](),this['linkTooltip']=null);this['linkDialog']&&(this['linkDialog']['remove'](),this['linkDialog']=null,this['linkDialogContext']=null,this['linkDialogElements']=null);this['mentionDropdown']&&(this['mentionDropdown']['remove'](),this['mentionDropdown']=null);this['mentionClickOutsideHandler']&&document['removeEventListener']('click',this['mentionClickOutsideHandler']);this['mentionScrollHandler']&&window['removeEventListener']('scroll',this['mentionScrollHandler'],!![]);for(const _0x2fb4cc of this['attachmentObjectUrls']['values']()){try{URL['revokeObjectURL'](_0x2fb4cc);}catch{}}this['attachmentObjectUrls']['clear'](),this['container']?this['container']['remove']():this['editor']['remove'](),this['element']['style']['display']='';}}typeof window!=='undefined'&&(window['MarkdownEditor']=MarkdownEditor);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
let monacoLoadPromise=null;async function ensureMonacoLoaded(){if(typeof monaco!=='undefined')return;if(monacoLoadPromise)return monacoLoadPromise;const _0x7c63d4=document['querySelector']('script[src*=\x22monaco-editor\x22][src*=\x22loader.min.js\x22]');if(_0x7c63d4)return monacoLoadPromise=new Promise((_0x32fdf0,_0x5aaf44)=>{const _0x19dc8d=setInterval(()=>{typeof monaco!=='undefined'&&(clearInterval(_0x19dc8d),_0x32fdf0());},0x32);setTimeout(()=>{clearInterval(_0x19dc8d),_0x5aaf44(new Error('Monaco\x20loading\x20timeout'));},0x2710);}),monacoLoadPromise;return monacoLoadPromise=new Promise((_0x17d47c,_0xdba0bb)=>{const _0x22f966=document['createElement']('script');_0x22f966['src']='https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.45.0/min/vs/loader.min.js',_0x22f966['onload']=()=>{require['config']({'paths':{'vs':'https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.45.0/min/vs'}}),require(['vs/editor/editor.main'],()=>{_0x17d47c();});},_0x22f966['onerror']=()=>_0xdba0bb(new Error('Failed\x20to\x20load\x20Monaco\x20Editor')),document['head']['appendChild'](_0x22f966);}),monacoLoadPromise;}function getMonacoTheme(){const _0x49230b=document['documentElement']['getAttribute']('data-theme')==='dark';return _0x49230b?'vs-dark':'vs';}function isMarkdownFile(_0x10df88){if(!_0x10df88)return![];const _0x9d7253=_0x10df88['split']('.')['pop']()['toLowerCase']();return _0x9d7253==='md'||_0x9d7253==='markdown';}function createMarkdownFileEditor(_0x5bfa82){const {container:_0x59d78b,content:content='',readOnly:readOnly=![],height:height='400px',onChange:onChange=null,placeholder:placeholder='Enter\x20markdown\x20content...',enableModeToggle:enableModeToggle=!![],initialMode:initialMode='visual'}=_0x5bfa82;_0x59d78b['innerHTML']='';let _0xdf84c7='visual',_0x560d56=content,_0x2e4e70=null,_0x4a32dc=null,_0x148ae0=![],_0x53cfbb=initialMode==='source';const _0x1d7f6e=document['createElement']('div');_0x1d7f6e['className']='markdown-file-editor-wrapper',_0x1d7f6e['style']['height']=height,_0x1d7f6e['style']['display']='flex',_0x1d7f6e['style']['flexDirection']='column',_0x1d7f6e['style']['border']='1px\x20solid\x20var(--color-border)',_0x1d7f6e['style']['borderRadius']='var(--radius-small)',_0x1d7f6e['style']['overflow']='hidden';let _0x274c41=null,_0x314537=null,_0x3e8e29=null;!readOnly&&enableModeToggle&&(_0x274c41=document['createElement']('div'),_0x274c41['className']='markdown-editor-mode-toggle',_0x274c41['style']['display']='flex',_0x274c41['style']['alignItems']='center',_0x274c41['style']['padding']='4px\x208px',_0x274c41['style']['borderBottom']='1px\x20solid\x20var(--color-border)',_0x274c41['style']['background']='var(--color-surface-secondary)',_0x274c41['style']['gap']='4px',_0x274c41['style']['flexShrink']='0',_0x314537=document['createElement']('button'),_0x314537['type']='button',_0x314537['className']='markdown-mode-btn',_0x314537['innerHTML']='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22><path\x20d=\x22M1\x2012s4-8\x2011-8\x2011\x208\x2011\x208-4\x208-11\x208-11-8-11-8z\x22></path><circle\x20cx=\x2212\x22\x20cy=\x2212\x22\x20r=\x223\x22></circle></svg>\x20Visual',_0x314537['title']='Visual\x20editing\x20mode\x20(WYSIWYG)',_0x3e8e29=document['createElement']('button'),_0x3e8e29['type']='button',_0x3e8e29['className']='markdown-mode-btn',_0x3e8e29['innerHTML']='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22><polyline\x20points=\x2216\x2018\x2022\x2012\x2016\x206\x22></polyline><polyline\x20points=\x228\x206\x202\x2012\x208\x2018\x22></polyline></svg>\x20Source',_0x3e8e29['title']='Source\x20editing\x20mode\x20(Monaco\x20Editor)',_0x274c41['appendChild'](_0x314537),_0x274c41['appendChild'](_0x3e8e29),_0x1d7f6e['appendChild'](_0x274c41));const _0x16c30a=document['createElement']('div');_0x16c30a['className']='markdown-visual-container',_0x16c30a['style']['flex']='1',_0x16c30a['style']['display']='flex',_0x16c30a['style']['flexDirection']='column',_0x16c30a['style']['overflow']='hidden',_0x16c30a['style']['minHeight']='0';const _0x7439cb=document['createElement']('textarea');_0x7439cb['style']['display']='none',_0x7439cb['value']=content,_0x16c30a['appendChild'](_0x7439cb),_0x1d7f6e['appendChild'](_0x16c30a);const _0x4504a3=document['createElement']('div');_0x4504a3['className']='markdown-source-container',_0x4504a3['style']['flex']='1',_0x4504a3['style']['display']='none',_0x4504a3['style']['overflow']='hidden',_0x4504a3['style']['minHeight']='0',_0x1d7f6e['appendChild'](_0x4504a3),_0x59d78b['appendChild'](_0x1d7f6e),_0x2e4e70=new window['MarkdownEditor'](_0x7439cb,{'placeholder':placeholder,'editable':!readOnly,'minHeight':'100%','toolbar':!readOnly,'onChange':_0x15b1ff=>{_0x560d56=_0x15b1ff,onChange&&onChange(_0x15b1ff);}});_0x2e4e70['container']&&(_0x2e4e70['container']['style']['flex']='1',_0x2e4e70['container']['style']['display']='flex',_0x2e4e70['container']['style']['flexDirection']='column',_0x2e4e70['container']['style']['overflow']='hidden');_0x2e4e70['editor']&&(_0x2e4e70['editor']['style']['flex']='1',_0x2e4e70['editor']['style']['overflow']='auto',_0x2e4e70['editor']['style']['minHeight']='0',_0x2e4e70['editor']['style']['border']='none',_0x2e4e70['editor']['style']['borderRadius']='0',_0x2e4e70['editor']['style']['padding']='16px',_0x2e4e70['editor']['style']['fontSize']='14px',_0x2e4e70['editor']['style']['lineHeight']='1.6');_0x2e4e70['toolbar']&&(_0x2e4e70['toolbar']['style']['borderRadius']='0',_0x2e4e70['toolbar']['style']['flexShrink']='0');content&&_0x2e4e70['setMarkdown'](content);function _0x1d845e(){if(!_0x314537||!_0x3e8e29)return;_0xdf84c7==='visual'?(_0x314537['classList']['add']('active'),_0x3e8e29['classList']['remove']('active')):(_0x314537['classList']['remove']('active'),_0x3e8e29['classList']['add']('active'));}async function _0x55b016(){if(_0x148ae0)return;try{await ensureMonacoLoaded(),_0x4a32dc=monaco['editor']['create'](_0x4504a3,{'value':_0x560d56,'language':'markdown','theme':getMonacoTheme(),'readOnly':readOnly,'minimap':{'enabled':![]},'automaticLayout':!![],'wordWrap':'on','lineNumbers':'on','scrollBeyondLastLine':![],'fontSize':0xe,'lineHeight':0x16,'padding':{'top':0x10,'bottom':0x10},'renderWhitespace':'selection','tabSize':0x2,'insertSpaces':!![]}),_0x4a32dc['onDidChangeModelContent'](()=>{_0x560d56=_0x4a32dc['getValue'](),onChange&&onChange(_0x560d56);}),_0x148ae0=!![];}catch(_0x105022){console['error']('Failed\x20to\x20initialize\x20Monaco\x20editor:',_0x105022);throw _0x105022;}}async function _0x56413f(_0x514c39){if(_0x514c39===_0xdf84c7)return;if(_0xdf84c7==='visual')_0x560d56=_0x2e4e70['getMarkdown']();else _0x4a32dc&&(_0x560d56=_0x4a32dc['getValue']());_0xdf84c7=_0x514c39;if(_0x514c39==='visual')_0x4504a3['style']['display']='none',_0x16c30a['style']['display']='flex',_0x2e4e70['setMarkdown'](_0x560d56),_0x2e4e70['focus']();else{_0x16c30a['style']['display']='none',_0x4504a3['style']['display']='block';if(!_0x148ae0)try{await _0x55b016();}catch(_0xe820e1){console['error']('Failed\x20to\x20switch\x20to\x20source\x20mode:',_0xe820e1),_0xdf84c7='visual',_0x4504a3['style']['display']='none',_0x16c30a['style']['display']='flex',_0x1d845e();return;}_0x4a32dc&&(_0x4a32dc['setValue'](_0x560d56),_0x4a32dc['focus'](),_0x4a32dc['layout']());}_0x1d845e();}_0x314537&&_0x3e8e29&&(_0x314537['addEventListener']('click',_0x3fcf8f=>{_0x3fcf8f['preventDefault'](),_0x56413f('visual');}),_0x3e8e29['addEventListener']('click',_0x2b6062=>{_0x2b6062['preventDefault'](),_0x56413f('source');}),_0x1d845e());_0x53cfbb&&setTimeout(()=>_0x56413f('source'),0x0);const _0x3e1bbf={'getValue':()=>{if(_0xdf84c7==='visual')return _0x2e4e70['getMarkdown']();else{if(_0x4a32dc)return _0x4a32dc['getValue']();}return _0x560d56;},'setValue':_0x33663c=>{_0x560d56=_0x33663c||'';if(_0xdf84c7==='visual')_0x2e4e70['setMarkdown'](_0x560d56);else _0x4a32dc&&_0x4a32dc['setValue'](_0x560d56);},'focus':()=>{if(_0xdf84c7==='visual')_0x2e4e70['focus']();else _0x4a32dc&&_0x4a32dc['focus']();},'setEditable':_0x53948d=>{_0x2e4e70['setEditable'](_0x53948d),_0x4a32dc&&_0x4a32dc['updateOptions']({'readOnly':!_0x53948d});},'destroy':()=>{_0x2e4e70['destroy'](),_0x4a32dc&&(_0x4a32dc['dispose'](),_0x4a32dc=null),_0x59d78b['innerHTML']='';},'getMode':()=>_0xdf84c7,'setMode':_0x225065=>_0x56413f(_0x225065),'toggleMode':()=>_0x56413f(_0xdf84c7==='visual'?'source':'visual'),'_visualEditor':_0x2e4e70,'_getSourceEditor':()=>_0x4a32dc,'_container':_0x59d78b,'_isMarkdownFileEditor':!![],'_hasModeToggle':enableModeToggle};return _0x3e1bbf;}const markdownFileEditors=new Map();function getOrCreateMarkdownFileEditor(_0x384d8c,_0x456f10,_0x2b8597=![],_0x342f03='400px',_0x409c08=null,_0x1fae17={}){const _0x3aaae1=document['getElementById'](_0x384d8c);if(!_0x3aaae1)return console['error']('Container\x20not\x20found:\x20'+_0x384d8c),null;const _0x592cd1=markdownFileEditors['get'](_0x384d8c);if(_0x592cd1){try{_0x592cd1['destroy']();}catch(_0x35eb67){console['warn']('Failed\x20to\x20destroy\x20existing\x20markdown\x20editor:',_0x35eb67);}markdownFileEditors['delete'](_0x384d8c);}const _0x4bbc27=createMarkdownFileEditor({'container':_0x3aaae1,'content':_0x456f10,'readOnly':_0x2b8597,'height':_0x342f03,'onChange':_0x409c08,..._0x1fae17});return markdownFileEditors['set'](_0x384d8c,_0x4bbc27),_0x4bbc27;}function getMarkdownFileEditorValue(_0x5f0299){const _0x51f1c8=markdownFileEditors['get'](_0x5f0299);if(!_0x51f1c8)return null;return _0x51f1c8['getValue']();}function setMarkdownFileEditorValue(_0x46df72,_0x16938e){const _0x3bc85b=markdownFileEditors['get'](_0x46df72);_0x3bc85b&&_0x3bc85b['setValue'](_0x16938e||'');}function disposeMarkdownFileEditor(_0x261f68){const _0x2e8290=markdownFileEditors['get'](_0x261f68);if(_0x2e8290){try{_0x2e8290['destroy']();}catch(_0x1445c3){console['warn']('Failed\x20to\x20dispose\x20markdown\x20editor:',_0x1445c3);}markdownFileEditors['delete'](_0x261f68);}}function hasMarkdownFileEditor(_0x4a0b87){return markdownFileEditors['has'](_0x4a0b87);}function getMarkdownFileEditorMode(_0x52c9ce){const _0x583202=markdownFileEditors['get'](_0x52c9ce);if(!_0x583202||!_0x583202['getMode'])return null;return _0x583202['getMode']();}function setMarkdownFileEditorMode(_0x9c230d,_0x10061a){const _0xaaabd8=markdownFileEditors['get'](_0x9c230d);_0xaaabd8&&_0xaaabd8['setMode']&&_0xaaabd8['setMode'](_0x10061a);}typeof window!=='undefined'&&(window['MarkdownFileEditor']={'isMarkdownFile':isMarkdownFile,'create':createMarkdownFileEditor,'getOrCreate':getOrCreateMarkdownFileEditor,'getValue':getMarkdownFileEditorValue,'setValue':setMarkdownFileEditorValue,'dispose':disposeMarkdownFileEditor,'has':hasMarkdownFileEditor,'getMode':getMarkdownFileEditorMode,'setMode':setMarkdownFileEditorMode,'editors':markdownFileEditors,'ensureMonacoLoaded':ensureMonacoLoaded});
|
|
1
|
+
let monacoLoadPromise=null;async function ensureMonacoLoaded(){if(typeof monaco!=='undefined')return;if(monacoLoadPromise)return monacoLoadPromise;const _0x40b7b9=document['querySelector']('script[src*=\x22monaco-editor\x22][src*=\x22loader.min.js\x22]');if(_0x40b7b9)return monacoLoadPromise=new Promise((_0x2c3037,_0x2f46f6)=>{const _0x51d726=setInterval(()=>{typeof monaco!=='undefined'&&(clearInterval(_0x51d726),_0x2c3037());},0x32);setTimeout(()=>{clearInterval(_0x51d726),_0x2f46f6(new Error('Monaco\x20loading\x20timeout'));},0x2710);}),monacoLoadPromise;return monacoLoadPromise=new Promise((_0x3d8634,_0x2f8d52)=>{const _0x3063d3=document['createElement']('script');_0x3063d3['src']='https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.45.0/min/vs/loader.min.js',_0x3063d3['onload']=()=>{require['config']({'paths':{'vs':'https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.45.0/min/vs'}}),require(['vs/editor/editor.main'],()=>{_0x3d8634();});},_0x3063d3['onerror']=()=>_0x2f8d52(new Error('Failed\x20to\x20load\x20Monaco\x20Editor')),document['head']['appendChild'](_0x3063d3);}),monacoLoadPromise;}function getMonacoTheme(){const _0x4de0a3=document['documentElement']['getAttribute']('data-theme')==='dark';return _0x4de0a3?'vs-dark':'vs';}function isMarkdownFile(_0x2aff3e){if(!_0x2aff3e)return![];const _0x4115eb=_0x2aff3e['split']('.')['pop']()['toLowerCase']();return _0x4115eb==='md'||_0x4115eb==='markdown';}function createMarkdownFileEditor(_0x403998){const {container:_0x5e5aaf,content:content='',readOnly:readOnly=![],height:height='400px',onChange:onChange=null,placeholder:placeholder='Enter\x20markdown\x20content...',enableModeToggle:enableModeToggle=!![],initialMode:initialMode='visual'}=_0x403998;_0x5e5aaf['innerHTML']='';let _0x1e1e4a='visual',_0x426cdc=content,_0x1bd882=null,_0x5463be=null,_0x4d7c0f=![],_0x21e078=initialMode==='source';const _0x275e9=document['createElement']('div');_0x275e9['className']='markdown-file-editor-wrapper',_0x275e9['style']['height']=height,_0x275e9['style']['display']='flex',_0x275e9['style']['flexDirection']='column',_0x275e9['style']['border']='1px\x20solid\x20var(--color-border)',_0x275e9['style']['borderRadius']='var(--radius-small)',_0x275e9['style']['overflow']='hidden';let _0xe047dd=null,_0x5b4b13=null,_0x269ad6=null;!readOnly&&enableModeToggle&&(_0xe047dd=document['createElement']('div'),_0xe047dd['className']='markdown-editor-mode-toggle',_0xe047dd['style']['display']='flex',_0xe047dd['style']['alignItems']='center',_0xe047dd['style']['padding']='4px\x208px',_0xe047dd['style']['borderBottom']='1px\x20solid\x20var(--color-border)',_0xe047dd['style']['background']='var(--color-surface-secondary)',_0xe047dd['style']['gap']='4px',_0xe047dd['style']['flexShrink']='0',_0x5b4b13=document['createElement']('button'),_0x5b4b13['type']='button',_0x5b4b13['className']='markdown-mode-btn',_0x5b4b13['innerHTML']='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22><path\x20d=\x22M1\x2012s4-8\x2011-8\x2011\x208\x2011\x208-4\x208-11\x208-11-8-11-8z\x22></path><circle\x20cx=\x2212\x22\x20cy=\x2212\x22\x20r=\x223\x22></circle></svg>\x20Visual',_0x5b4b13['title']='Visual\x20editing\x20mode\x20(WYSIWYG)',_0x269ad6=document['createElement']('button'),_0x269ad6['type']='button',_0x269ad6['className']='markdown-mode-btn',_0x269ad6['innerHTML']='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22><polyline\x20points=\x2216\x2018\x2022\x2012\x2016\x206\x22></polyline><polyline\x20points=\x228\x206\x202\x2012\x208\x2018\x22></polyline></svg>\x20Source',_0x269ad6['title']='Source\x20editing\x20mode\x20(Monaco\x20Editor)',_0xe047dd['appendChild'](_0x5b4b13),_0xe047dd['appendChild'](_0x269ad6),_0x275e9['appendChild'](_0xe047dd));const _0x516625=document['createElement']('div');_0x516625['className']='markdown-visual-container',_0x516625['style']['flex']='1',_0x516625['style']['display']='flex',_0x516625['style']['flexDirection']='column',_0x516625['style']['overflow']='hidden',_0x516625['style']['minHeight']='0';const _0x5ce430=document['createElement']('textarea');_0x5ce430['style']['display']='none',_0x5ce430['value']=content,_0x516625['appendChild'](_0x5ce430),_0x275e9['appendChild'](_0x516625);const _0x17adde=document['createElement']('div');_0x17adde['className']='markdown-source-container',_0x17adde['style']['flex']='1',_0x17adde['style']['display']='none',_0x17adde['style']['overflow']='hidden',_0x17adde['style']['minHeight']='0',_0x275e9['appendChild'](_0x17adde),_0x5e5aaf['appendChild'](_0x275e9),_0x1bd882=new window['MarkdownEditor'](_0x5ce430,{'placeholder':placeholder,'editable':!readOnly,'minHeight':'100%','toolbar':!readOnly,'onChange':_0x1ca5df=>{_0x426cdc=_0x1ca5df,onChange&&onChange(_0x1ca5df);}});_0x1bd882['container']&&(_0x1bd882['container']['style']['flex']='1',_0x1bd882['container']['style']['display']='flex',_0x1bd882['container']['style']['flexDirection']='column',_0x1bd882['container']['style']['overflow']='hidden');_0x1bd882['editor']&&(_0x1bd882['editor']['style']['flex']='1',_0x1bd882['editor']['style']['overflow']='auto',_0x1bd882['editor']['style']['minHeight']='0',_0x1bd882['editor']['style']['border']='none',_0x1bd882['editor']['style']['borderRadius']='0',_0x1bd882['editor']['style']['padding']='16px',_0x1bd882['editor']['style']['fontSize']='14px',_0x1bd882['editor']['style']['lineHeight']='1.6');_0x1bd882['toolbar']&&(_0x1bd882['toolbar']['style']['borderRadius']='0',_0x1bd882['toolbar']['style']['flexShrink']='0');content&&_0x1bd882['setMarkdown'](content);function _0x167f6e(){if(!_0x5b4b13||!_0x269ad6)return;_0x1e1e4a==='visual'?(_0x5b4b13['classList']['add']('active'),_0x269ad6['classList']['remove']('active')):(_0x5b4b13['classList']['remove']('active'),_0x269ad6['classList']['add']('active'));}async function _0x2ec8cb(){if(_0x4d7c0f)return;try{await ensureMonacoLoaded(),_0x5463be=monaco['editor']['create'](_0x17adde,{'value':_0x426cdc,'language':'markdown','theme':getMonacoTheme(),'readOnly':readOnly,'minimap':{'enabled':![]},'automaticLayout':!![],'wordWrap':'on','lineNumbers':'on','scrollBeyondLastLine':![],'fontSize':0xe,'lineHeight':0x16,'padding':{'top':0x10,'bottom':0x10},'renderWhitespace':'selection','tabSize':0x2,'insertSpaces':!![]}),_0x5463be['onDidChangeModelContent'](()=>{_0x426cdc=_0x5463be['getValue'](),onChange&&onChange(_0x426cdc);}),_0x4d7c0f=!![];}catch(_0x1f638d){console['error']('Failed\x20to\x20initialize\x20Monaco\x20editor:',_0x1f638d);throw _0x1f638d;}}async function _0x411281(_0x161c20){if(_0x161c20===_0x1e1e4a)return;if(_0x1e1e4a==='visual')_0x426cdc=_0x1bd882['getMarkdown']();else _0x5463be&&(_0x426cdc=_0x5463be['getValue']());_0x1e1e4a=_0x161c20;if(_0x161c20==='visual')_0x17adde['style']['display']='none',_0x516625['style']['display']='flex',_0x1bd882['setMarkdown'](_0x426cdc),_0x1bd882['focus']();else{_0x516625['style']['display']='none',_0x17adde['style']['display']='block';if(!_0x4d7c0f)try{await _0x2ec8cb();}catch(_0x360c74){console['error']('Failed\x20to\x20switch\x20to\x20source\x20mode:',_0x360c74),_0x1e1e4a='visual',_0x17adde['style']['display']='none',_0x516625['style']['display']='flex',_0x167f6e();return;}_0x5463be&&(_0x5463be['setValue'](_0x426cdc),_0x5463be['focus'](),_0x5463be['layout']());}_0x167f6e();}_0x5b4b13&&_0x269ad6&&(_0x5b4b13['addEventListener']('click',_0xd23b1f=>{_0xd23b1f['preventDefault'](),_0x411281('visual');}),_0x269ad6['addEventListener']('click',_0x471180=>{_0x471180['preventDefault'](),_0x411281('source');}),_0x167f6e());_0x21e078&&setTimeout(()=>_0x411281('source'),0x0);const _0xfe0aa0={'getValue':()=>{if(_0x1e1e4a==='visual')return _0x1bd882['getMarkdown']();else{if(_0x5463be)return _0x5463be['getValue']();}return _0x426cdc;},'setValue':_0xb5b86d=>{_0x426cdc=_0xb5b86d||'';if(_0x1e1e4a==='visual')_0x1bd882['setMarkdown'](_0x426cdc);else _0x5463be&&_0x5463be['setValue'](_0x426cdc);},'focus':()=>{if(_0x1e1e4a==='visual')_0x1bd882['focus']();else _0x5463be&&_0x5463be['focus']();},'setEditable':_0x28d692=>{_0x1bd882['setEditable'](_0x28d692),_0x5463be&&_0x5463be['updateOptions']({'readOnly':!_0x28d692});},'destroy':()=>{_0x1bd882['destroy'](),_0x5463be&&(_0x5463be['dispose'](),_0x5463be=null),_0x5e5aaf['innerHTML']='';},'getMode':()=>_0x1e1e4a,'setMode':_0x351b2f=>_0x411281(_0x351b2f),'toggleMode':()=>_0x411281(_0x1e1e4a==='visual'?'source':'visual'),'_visualEditor':_0x1bd882,'_getSourceEditor':()=>_0x5463be,'_container':_0x5e5aaf,'_isMarkdownFileEditor':!![],'_hasModeToggle':enableModeToggle};return _0xfe0aa0;}const markdownFileEditors=new Map();function getOrCreateMarkdownFileEditor(_0x49ca40,_0x2ab33f,_0x906cb3=![],_0x6655f3='400px',_0x3c10af=null,_0x2493ec={}){const _0x2670f7=document['getElementById'](_0x49ca40);if(!_0x2670f7)return console['error']('Container\x20not\x20found:\x20'+_0x49ca40),null;const _0x5d8a1b=markdownFileEditors['get'](_0x49ca40);if(_0x5d8a1b){try{_0x5d8a1b['destroy']();}catch(_0x291822){console['warn']('Failed\x20to\x20destroy\x20existing\x20markdown\x20editor:',_0x291822);}markdownFileEditors['delete'](_0x49ca40);}const _0x376744=createMarkdownFileEditor({'container':_0x2670f7,'content':_0x2ab33f,'readOnly':_0x906cb3,'height':_0x6655f3,'onChange':_0x3c10af,..._0x2493ec});return markdownFileEditors['set'](_0x49ca40,_0x376744),_0x376744;}function getMarkdownFileEditorValue(_0x166214){const _0x23125a=markdownFileEditors['get'](_0x166214);if(!_0x23125a)return null;return _0x23125a['getValue']();}function setMarkdownFileEditorValue(_0x2ca4c5,_0x4eb2aa){const _0x52fe81=markdownFileEditors['get'](_0x2ca4c5);_0x52fe81&&_0x52fe81['setValue'](_0x4eb2aa||'');}function disposeMarkdownFileEditor(_0x19338d){const _0x263a79=markdownFileEditors['get'](_0x19338d);if(_0x263a79){try{_0x263a79['destroy']();}catch(_0x5cd6c8){console['warn']('Failed\x20to\x20dispose\x20markdown\x20editor:',_0x5cd6c8);}markdownFileEditors['delete'](_0x19338d);}}function hasMarkdownFileEditor(_0x2011c5){return markdownFileEditors['has'](_0x2011c5);}function getMarkdownFileEditorMode(_0x160d08){const _0x4c4fb4=markdownFileEditors['get'](_0x160d08);if(!_0x4c4fb4||!_0x4c4fb4['getMode'])return null;return _0x4c4fb4['getMode']();}function setMarkdownFileEditorMode(_0x135fa0,_0x5d8df7){const _0x34fccc=markdownFileEditors['get'](_0x135fa0);_0x34fccc&&_0x34fccc['setMode']&&_0x34fccc['setMode'](_0x5d8df7);}typeof window!=='undefined'&&(window['MarkdownFileEditor']={'isMarkdownFile':isMarkdownFile,'create':createMarkdownFileEditor,'getOrCreate':getOrCreateMarkdownFileEditor,'getValue':getMarkdownFileEditorValue,'setValue':setMarkdownFileEditorValue,'dispose':disposeMarkdownFileEditor,'has':hasMarkdownFileEditor,'getMode':getMarkdownFileEditorMode,'setMode':setMarkdownFileEditorMode,'editors':markdownFileEditors,'ensureMonacoLoaded':ensureMonacoLoaded});
|