@profoundlogic/coderflow-server 0.7.5 → 0.7.7
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/base-image/agent-wrapper.sh +3 -1
- 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/memory-utils.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-aliases.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/playwright.task-terminal.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/shipped-skills/environment-templates/SKILL.md +152 -17
- 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.js +1 -1
- package/dist/web-ui/public/feedback-widget.css +6 -0
- package/dist/web-ui/public/feedback-widget.js +1 -1
- package/dist/web-ui/public/file-selection-tree.js +1 -1
- package/dist/web-ui/public/git-history-lazy-utils.js +1 -1
- 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/ibmi-file-filter.js +1 -1
- package/dist/web-ui/public/index.js +1 -1
- 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/permissions.js +1 -1
- package/dist/web-ui/public/pr-dialog.js +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.js +1 -1
- package/dist/web-ui/public/setup-password.js +1 -1
- 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-judging-helpers.js +1 -1
- package/dist/web-ui/public/task.js +1 -1
- package/dist/web-ui/public/teams.js +1 -1
- package/dist/web-ui/public/terminal.js +1 -1
- package/dist/web-ui/public/theme.js +1 -1
- package/dist/web-ui/public/users.js +1 -1
- package/dist/web-ui/public/variant-grouping.js +1 -1
- package/package.json +1 -1
|
@@ -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 _0x299d5c=await fetch('/auth/oidc/config');if(_0x299d5c['ok'])return await _0x299d5c['json']();}catch(_0x3ca7eb){console['error']('Failed\x20to\x20load\x20OIDC\x20configuration:',_0x3ca7eb);}return{'enabled':![]};}function initializeSsoUi(_0x54409e){const _0x353bfe=document['getElementById']('sso-section'),_0x1d8d60=document['getElementById']('sso-divider'),_0x4a8f19=document['getElementById']('sso-button-text'),_0x2cda67=document['getElementById']('sso-button'),_0x495abe=document['querySelector']('.local-auth-section');_0x54409e['enabled']&&(_0x353bfe['classList']['add']('visible'),_0x4a8f19['textContent']=_0x54409e['display_name']||'Sign\x20in\x20with\x20SSO',_0x2cda67['addEventListener']('click',()=>{window['location']['href']='/auth/oidc/login';}),!_0x54409e['allow_local_auth']&&(_0x495abe['classList']['add']('hidden'),_0x1d8d60['style']['display']='none'));}function checkOidcErrors(){const _0x31e2c6=new URLSearchParams(window['location']['search']),_0x4c7dd3=_0x31e2c6['get']('error'),_0xe53979=_0x31e2c6['get']('message');if(_0x4c7dd3){const _0x454813=document['getElementById']('login-error'),_0x1c6f26=_0xe53979||OIDC_ERRORS[_0x4c7dd3]||'Authentication\x20error:\x20'+_0x4c7dd3;_0x454813['textContent']=_0x1c6f26,_0x454813['classList']['add']('visible'),window['history']['replaceState']({},document['title'],window['location']['pathname']);}}async function handleLogin(_0x227491){_0x227491['preventDefault']();const _0x573442=_0x227491['target'],_0x5fd4b5=_0x573442['username']['value']['trim'](),_0x13e4f2=_0x573442['password']['value'],_0x44399a=_0x573442['querySelector']('button[type=\x22submit\x22]'),_0x402e76=document['getElementById']('login-error');_0x402e76['classList']['remove']('visible'),_0x402e76['textContent']='',_0x44399a['disabled']=!![],_0x44399a['textContent']='Signing\x20in...';try{const _0x2818bc=await fetch('/auth/login',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'username':_0x5fd4b5,'password':_0x13e4f2})}),_0x7ba723=await _0x2818bc['json']();if(!_0x2818bc['ok'])throw new Error(_0x7ba723['message']||'Login\x20failed');window['location']['href']='index.html';}catch(_0xb1408f){_0x402e76['textContent']=_0xb1408f['message']||'An\x20error\x20occurred\x20during\x20login',_0x402e76['classList']['add']('visible'),_0x44399a['disabled']=![],_0x44399a['textContent']='Sign\x20In',_0x573442['password']['value']='',_0x573442['password']['focus']();}}document['addEventListener']('DOMContentLoaded',async()=>{initTheme(),mountThemeToggle(),checkOidcErrors();const _0x37ac7b=await loadOidcConfig();initializeSsoUi(_0x37ac7b);const _0x298260=document['getElementById']('login-form');_0x298260&&_0x298260['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>','sourceToggle':'<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>'},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(_0x2f3d4d,_0x2be240={}){this['element']=_0x2f3d4d,this['options']={'placeholder':_0x2be240['placeholder']||'Start\x20typing...','editable':_0x2be240['editable']!==![],'onChange':_0x2be240['onChange']||null,'minHeight':_0x2be240['minHeight']||'100px','toolbar':_0x2be240['toolbar']||![],'onAddAttachments':_0x2be240['onAddAttachments']||null,'resolveAttachmentUrl':_0x2be240['resolveAttachmentUrl']||null,'isAttachmentNameTaken':_0x2be240['isAttachmentNameTaken']||null,'fetchUsers':_0x2be240['fetchUsers']||null,'sourceToggle':_0x2be240['sourceToggle']||![],'sourceLineNumbers':_0x2be240['sourceLineNumbers']||![]},this['_sourceMode']=![],this['_monacoEditor']=null,this['_monacoInitialized']=![],this['_monacoLoading']=![],this['_sourceContainer']=null,this['_sourceToggleBtn']=null,this['_destroyed']=![],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 _0x20c36a=window['TurndownService'];this['turndownService']=new _0x20c36a({'headingStyle':'atx','codeBlockStyle':'fenced','emDelimiter':'_','bulletListMarker':'-'}),this['attachmentObjectUrls']=new Map(),this['registerTurndownRules'](),this['init']();}['registerTurndownRules'](){this['turndownService']['addRule']('profoundAttachmentImage',{'filter':_0x4ad82b=>{return _0x4ad82b&&_0x4ad82b['nodeName']==='IMG'&&_0x4ad82b['getAttribute']&&_0x4ad82b['getAttribute']('data-attachment-name');},'replacement':(_0x5dfca1,_0x50dae9)=>{const _0x4d0fdb=_0x50dae9['getAttribute']('data-attachment-name')||'',_0x763d7b=_0x50dae9['getAttribute']('alt')||'',_0x538377=_0x4d0fdb['trim'](),_0x4ead60=this['escapeAltText'](_0x763d7b||_0x538377),_0x3368d8=encodeURIComponent(_0x538377);return'';}}),this['turndownService']['addRule']('profoundMention',{'filter':_0x247557=>{return _0x247557&&_0x247557['nodeName']==='SPAN'&&_0x247557['getAttribute']&&_0x247557['getAttribute']('data-mention-user-id');},'replacement':(_0x48a885,_0x5e0cb7)=>{const _0x32e597=_0x5e0cb7['getAttribute']('data-mention-user-id')||'',_0x3a1f28=_0x5e0cb7['textContent']||'',_0x177acc=_0x3a1f28['startsWith']('@')?_0x3a1f28['slice'](0x1):_0x3a1f28;return'['+_0x177acc+'](mention:'+_0x32e597+')';}}),this['turndownService']['addRule']('profoundColoredText',{'filter':_0x4f8e30=>{if(!_0x4f8e30)return![];if(_0x4f8e30['nodeName']==='FONT'&&_0x4f8e30['getAttribute']&&_0x4f8e30['getAttribute']('color'))return!![];if(_0x4f8e30['nodeName']==='SPAN'&&_0x4f8e30['style']&&_0x4f8e30['style']['color']){if(_0x4f8e30['getAttribute']&&_0x4f8e30['getAttribute']('data-mention-user-id'))return![];return!![];}return![];},'replacement':(_0x46b4ec,_0x16680a)=>{if(!_0x46b4ec['trim']())return _0x46b4ec;let _0x2ab9be='';if(_0x16680a['nodeName']==='FONT')_0x2ab9be=_0x16680a['getAttribute']('color')||'';else _0x16680a['style']&&_0x16680a['style']['color']&&(_0x2ab9be=this['rgbToHex'](_0x16680a['style']['color']));if(!_0x2ab9be)return _0x46b4ec;return'{color:'+_0x2ab9be+'}'+_0x46b4ec+'{/color}';}});}['rgbToHex'](_0x48d538){if(!_0x48d538)return'';if(_0x48d538['startsWith']('#'))return _0x48d538;const _0x3f728b=_0x48d538['match'](/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(!_0x3f728b)return _0x48d538;const _0xd3ebb9=parseInt(_0x3f728b[0x1],0xa),_0x1a0773=parseInt(_0x3f728b[0x2],0xa),_0x3a1ecf=parseInt(_0x3f728b[0x3],0xa);return'#'+[_0xd3ebb9,_0x1a0773,_0x3a1ecf]['map'](_0x318a7d=>_0x318a7d['toString'](0x10)['padStart'](0x2,'0'))['join']('')['toUpperCase']();}['escapeAltText'](_0x4390f1){return String(_0x4390f1||'')['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 _0x198baf=this['element']['textContent']||this['element']['value']||'';_0x198baf['trim']()&&this['setMarkdown'](_0x198baf);}['createToolbar'](){this['toolbar']=document['createElement']('div'),this['toolbar']['className']='markdown-editor-toolbar',this['toolbarButtons']={};const _0x2de5fa=[{'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'}];_0x2de5fa['forEach'](_0x33734d=>{if(_0x33734d['separator']){const _0x2567ca=document['createElement']('div');_0x2567ca['className']='markdown-toolbar-separator',_0x2567ca['style']['width']='1px',_0x2567ca['style']['height']='16px',_0x2567ca['style']['background']='var(--color-border)',_0x2567ca['style']['margin']='0\x206px',_0x2567ca['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x2567ca);}else{if(_0x33734d['isDropdown']){const _0x4737c5=document['createElement']('div');_0x4737c5['className']='markdown-toolbar-dropdown',_0x4737c5['style']['position']='relative';const _0x32e2f1=document['createElement']('button');_0x32e2f1['type']='button',_0x32e2f1['className']='markdown-editor-toolbar-btn\x20markdown-toolbar-dropdown-btn',_0x32e2f1['tabIndex']=-0x1,_0x32e2f1['innerHTML']=_0x33734d['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>',_0x32e2f1['title']=_0x33734d['title'],_0x32e2f1['dataset']['action']=_0x33734d['action'];const _0x31c1a2=document['createElement']('div');_0x31c1a2['className']='markdown-toolbar-dropdown-menu',_0x31c1a2['style']['display']='none';if(_0x33734d['action']==='header')this['createHeaderDropdown'](_0x31c1a2);else _0x33734d['action']==='color'&&this['createColorDropdown'](_0x31c1a2);_0x32e2f1['addEventListener']('click',_0x7f10a9=>{_0x7f10a9['preventDefault'](),_0x7f10a9['stopPropagation'](),this['toggleDropdown'](_0x31c1a2,_0x32e2f1);}),_0x4737c5['appendChild'](_0x32e2f1),_0x4737c5['appendChild'](_0x31c1a2),this['toolbar']['appendChild'](_0x4737c5),this['toolbarButtons'][_0x33734d['id']]={'button':_0x32e2f1,'dropdown':_0x31c1a2,'command':_0x33734d['command'],'tagName':_0x33734d['tagName']};}else{const _0x9caebc=document['createElement']('button');_0x9caebc['type']='button',_0x9caebc['className']='markdown-editor-toolbar-btn',_0x9caebc['tabIndex']=-0x1,_0x9caebc['innerHTML']=_0x33734d['icon'],_0x9caebc['title']=_0x33734d['title'],_0x9caebc['dataset']['action']=_0x33734d['action'],_0x9caebc['addEventListener']('click',_0x48a695=>{_0x48a695['preventDefault'](),this['handleToolbarAction'](_0x33734d['action']);}),this['toolbar']['appendChild'](_0x9caebc),this['toolbarButtons'][_0x33734d['id']]={'button':_0x9caebc,'command':_0x33734d['command'],'tagName':_0x33734d['tagName']};}}});if(this['options']['sourceToggle']){const _0x3370a5=document['createElement']('div');_0x3370a5['style']['marginLeft']='auto',this['toolbar']['appendChild'](_0x3370a5);const _0x3e3df7=document['createElement']('div');_0x3e3df7['className']='markdown-toolbar-separator\x20markdown-source-toggle-separator',_0x3e3df7['style']['width']='1px',_0x3e3df7['style']['height']='16px',_0x3e3df7['style']['background']='var(--color-border)',_0x3e3df7['style']['margin']='0\x206px',_0x3e3df7['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x3e3df7);const _0x1db00b=document['createElement']('button');_0x1db00b['type']='button',_0x1db00b['className']='markdown-editor-toolbar-btn\x20markdown-source-toggle-btn',_0x1db00b['tabIndex']=-0x1,_0x1db00b['innerHTML']=ICONS['sourceToggle'],_0x1db00b['title']='Switch\x20to\x20source\x20mode',_0x1db00b['addEventListener']('click',_0x38f24f=>{_0x38f24f['preventDefault'](),_0x38f24f['stopPropagation'](),this['toggleSourceMode']();}),this['toolbar']['appendChild'](_0x1db00b),this['_sourceToggleBtn']=_0x1db00b;}document['addEventListener']('click',_0xcc7c51=>{!this['toolbar']['contains'](_0xcc7c51['target'])&&this['closeAllDropdowns']();});}['createHeaderDropdown'](_0x52e380){const _0x21277a=[{'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'}];_0x21277a['forEach'](_0x12fcec=>{const _0x4736ef=document['createElement']('button');_0x4736ef['type']='button',_0x4736ef['className']='markdown-dropdown-item',_0x4736ef['tabIndex']=-0x1,_0x4736ef['innerHTML']='<span\x20style=\x22font-size:\x20'+(_0x12fcec['level']===0x0?'14px':0x14-_0x12fcec['level']*0x2+'px')+';\x20font-weight:\x20'+(_0x12fcec['level']===0x0?'normal':'bold')+'\x22>'+_0x12fcec['label']+'</span>',_0x4736ef['addEventListener']('click',_0xb2fc83=>{_0xb2fc83['preventDefault'](),_0xb2fc83['stopPropagation'](),this['applyHeader'](_0x12fcec['level']),this['closeAllDropdowns']();}),_0x52e380['appendChild'](_0x4736ef);});}['createColorDropdown'](_0x4568a9){const _0x4bfa76=[{'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'}],_0x56ac3f=document['createElement']('div');_0x56ac3f['className']='markdown-color-grid',_0x56ac3f['style']['display']='grid',_0x56ac3f['style']['gridTemplateColumns']='repeat(3,\x201fr)',_0x56ac3f['style']['gap']='4px',_0x56ac3f['style']['padding']='8px',_0x4bfa76['forEach'](_0x45bcb0=>{const _0x4a14bd=document['createElement']('button');_0x4a14bd['type']='button',_0x4a14bd['className']='markdown-color-btn',_0x4a14bd['tabIndex']=-0x1,_0x4a14bd['style']['width']='24px',_0x4a14bd['style']['height']='24px',_0x4a14bd['style']['backgroundColor']=_0x45bcb0['value'],_0x4a14bd['style']['border']='1px\x20solid\x20var(--color-border)',_0x4a14bd['style']['borderRadius']='4px',_0x4a14bd['style']['cursor']='pointer',_0x4a14bd['title']=_0x45bcb0['label'],_0x4a14bd['addEventListener']('click',_0x455b23=>{_0x455b23['preventDefault'](),_0x455b23['stopPropagation'](),this['applyColor'](_0x45bcb0['value']),this['closeAllDropdowns']();}),_0x56ac3f['appendChild'](_0x4a14bd);}),_0x4568a9['appendChild'](_0x56ac3f);const _0x222626=document['createElement']('button');_0x222626['type']='button',_0x222626['className']='markdown-dropdown-item',_0x222626['innerHTML']='<span>Remove\x20Color</span>',_0x222626['style']['borderTop']='1px\x20solid\x20var(--color-border)',_0x222626['style']['marginTop']='4px',_0x222626['style']['paddingTop']='8px',_0x222626['addEventListener']('click',_0x38816c=>{_0x38816c['preventDefault'](),_0x38816c['stopPropagation'](),this['removeColor'](),this['closeAllDropdowns']();}),_0x4568a9['appendChild'](_0x222626);}['toggleDropdown'](_0x4aa9da,_0x14657a){const _0x286824=_0x4aa9da['style']['display']!=='none';this['toolbar']&&this['closeAllDropdowns'](),!_0x286824&&(_0x4aa9da['style']['display']='block',_0x14657a['classList']['add']('active'));}['closeAllDropdowns'](){const _0x1682ba=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-menu');_0x1682ba['forEach'](_0x4fca60=>_0x4fca60['style']['display']='none');const _0x30bdbc=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-btn');_0x30bdbc['forEach'](_0x4ada3c=>_0x4ada3c['classList']['remove']('active'));}['applyHeader'](_0x279db7){this['editor']['focus']();const _0x1e6616=window['getSelection']();if(!_0x1e6616||_0x1e6616['rangeCount']===0x0)return;const _0x48edd1=_0x1e6616['getRangeAt'](0x0);let _0x383291=_0x48edd1['startContainer'];while(_0x383291&&_0x383291!==this['editor']){if(_0x383291['nodeType']===Node['ELEMENT_NODE']){const _0x17cca8=window['getComputedStyle'](_0x383291)['display'];if(_0x17cca8==='block'||['P','H1','H2','H3','H4','H5','H6','DIV']['includes'](_0x383291['tagName']))break;}_0x383291=_0x383291['parentNode'];}_0x279db7===0x0?document['execCommand']('formatBlock',![],'p'):document['execCommand']('formatBlock',![],'h'+_0x279db7),this['editor']['dispatchEvent'](new Event('input'));}['applyColor'](_0x57a32b){this['editor']['focus'](),document['execCommand']('foreColor',![],_0x57a32b),this['editor']['dispatchEvent'](new Event('input'));}['removeColor'](){this['editor']['focus'](),document['execCommand']('removeFormat',![],null),this['editor']['dispatchEvent'](new Event('input'));}['handleToolbarAction'](_0x20ba06){this['editor']['focus']();switch(_0x20ba06){case'bold':case'italic':case'strikeThrough':case'insertUnorderedList':case'insertOrderedList':document['execCommand'](_0x20ba06,![],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 _0x25c957=document['createElement']('div');_0x25c957['className']='markdown-editor-link-modal',_0x25c957['hidden']=!![],_0x25c957['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'](_0x25c957),this['linkDialog']=_0x25c957,this['linkDialogElements']={'backdrop':_0x25c957['querySelector']('.markdown-editor-link-backdrop'),'title':_0x25c957['querySelector']('.markdown-editor-link-title'),'close':_0x25c957['querySelector']('.markdown-editor-link-close'),'form':_0x25c957['querySelector']('.markdown-editor-link-form'),'urlInput':_0x25c957['querySelector']('[data-link-field=\x22url\x22]'),'textInput':_0x25c957['querySelector']('[data-link-field=\x22text\x22]'),'remove':_0x25c957['querySelector']('[data-action=\x22remove\x22]'),'cancel':_0x25c957['querySelector']('[data-action=\x22cancel\x22]'),'submit':_0x25c957['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',_0x1cd55c=>{_0x1cd55c['preventDefault'](),this['applyLinkDialogResult']();}),this['linkDialog']['addEventListener']('keydown',_0x4c4b65=>{_0x4c4b65['key']==='Escape'&&(_0x4c4b65['preventDefault'](),this['closeLinkDialog']({'restoreSelection':!![]}));});}['openLinkDialog'](){const _0x3a6495=window['getSelection']();if(!_0x3a6495||_0x3a6495['rangeCount']===0x0)return;const _0x2305b9=_0x3a6495['getRangeAt'](0x0),_0x17fd46=this['editor']['contains'](_0x2305b9['commonAncestorContainer'])||this['editor']===_0x2305b9['commonAncestorContainer'];if(!_0x17fd46)return;this['toolbar']&&this['closeAllDropdowns']();this['ensureLinkDialog']();const _0x4570ed=_0x2305b9['cloneRange'](),_0x3f83c4=this['findLinkAtRange'](_0x4570ed),_0x2fc46c=_0x3f83c4?_0x3f83c4['getAttribute']('href')||'':'',_0x2c7557=_0x3f83c4?_0x3f83c4['textContent']||'':_0x4570ed['toString']();this['linkDialogContext']={'range':_0x4570ed,'existingLink':_0x3f83c4,'selectedText':_0x2c7557},this['linkDialogElements']['title']['textContent']=_0x3f83c4?'Edit\x20Link':'Insert\x20Link',this['linkDialogElements']['submit']['textContent']=_0x3f83c4?'Save\x20Link':'Insert\x20Link',this['linkDialogElements']['remove']['hidden']=!_0x3f83c4,this['linkDialogElements']['urlInput']['value']=_0x2fc46c,this['linkDialogElements']['textInput']['value']=_0x2c7557,this['linkDialog']['hidden']=![],this['linkDialogElements']['urlInput']['focus'](),this['linkDialogElements']['urlInput']['select']();}['closeLinkDialog']({restoreSelection:restoreSelection=![]}={}){if(!this['linkDialog'])return;const _0x1698c2=this['linkDialogContext'];this['linkDialog']['hidden']=!![],restoreSelection&&_0x1698c2?.['range']&&(this['editor']['focus'](),this['restoreRange'](_0x1698c2['range'])),this['linkDialogContext']=null;}['applyLinkDialogResult']({remove:remove=![]}={}){if(!this['linkDialog']||!this['linkDialogContext'])return;const _0x3ff27f=this['linkDialogContext'],_0x83e633=(this['linkDialogElements']['urlInput']['value']||'')['trim'](),_0x3739c2=this['linkDialogElements']['textInput']['value']||'',_0x52e018=_0x3739c2['trim']();if(!remove&&!_0x83e633){this['linkDialogElements']['urlInput']['focus']();return;}this['closeLinkDialog'](),this['editor']['focus'](),this['restoreRange'](_0x3ff27f['range']);if(remove)_0x3ff27f['existingLink']&&_0x3ff27f['existingLink']['parentNode']?this['unwrapLinkElement'](_0x3ff27f['existingLink']):document['execCommand']('unlink',![],null);else{if(_0x3ff27f['existingLink']&&_0x3ff27f['existingLink']['parentNode'])_0x3ff27f['existingLink']['setAttribute']('href',_0x83e633),_0x3ff27f['existingLink']['textContent']=_0x52e018||_0x83e633;else{const _0x372a72=window['getSelection']();if(!_0x372a72||_0x372a72['rangeCount']===0x0)return;const _0x35397f=_0x372a72['getRangeAt'](0x0),_0x464e47=(_0x3ff27f['selectedText']||'')['trim'](),_0x3ef4f8=_0x52e018||_0x464e47||_0x83e633;_0x35397f['deleteContents']();const _0x5808b7=document['createElement']('a');_0x5808b7['href']=_0x83e633,_0x5808b7['textContent']=_0x3ef4f8,_0x35397f['insertNode'](_0x5808b7),_0x35397f['setStartAfter'](_0x5808b7),_0x35397f['collapse'](!![]),_0x372a72['removeAllRanges'](),_0x372a72['addRange'](_0x35397f);}}this['addLinkHints'](),this['updateToolbarState'](),this['editor']['dispatchEvent'](new Event('input'));}['ensureLinkDialogStyles'](){if(document['getElementById'](LINK_DIALOG_STYLE_ID))return;const _0x4fdcb3=document['createElement']('style');_0x4fdcb3['id']=LINK_DIALOG_STYLE_ID,_0x4fdcb3['textContent']=LINK_DIALOG_STYLES,document['head']['appendChild'](_0x4fdcb3);}['restoreRange'](_0x5bdad){const _0x348a04=window['getSelection']();if(!_0x348a04)return;try{_0x348a04['removeAllRanges'](),_0x348a04['addRange'](_0x5bdad);return;}catch(_0x24a031){}const _0x2e3d17=document['createRange']();_0x2e3d17['selectNodeContents'](this['editor']),_0x2e3d17['collapse'](![]),_0x348a04['removeAllRanges'](),_0x348a04['addRange'](_0x2e3d17);}['findLinkAtRange'](_0x25d660){if(!_0x25d660)return null;const _0x51f347=this['findParentLink'](_0x25d660['startContainer']);if(_0x25d660['collapsed'])return _0x51f347;const _0x5a2fdf=this['findParentLink'](_0x25d660['endContainer']);if(_0x51f347&&_0x51f347===_0x5a2fdf)return _0x51f347;if(_0x51f347&&_0x51f347['contains'](_0x25d660['endContainer']))return _0x51f347;if(_0x5a2fdf&&_0x5a2fdf['contains'](_0x25d660['startContainer']))return _0x5a2fdf;return null;}['findParentLink'](_0x1c5f55){let _0x2ba5cb=_0x1c5f55;while(_0x2ba5cb&&_0x2ba5cb!==this['editor']){if(_0x2ba5cb['nodeType']===Node['ELEMENT_NODE']&&_0x2ba5cb['tagName']==='A'){const _0x13b618=_0x2ba5cb['getAttribute']('href')||'';if(_0x13b618['startsWith']('mention:'))return null;return _0x2ba5cb;}_0x2ba5cb=_0x2ba5cb['parentNode'];}return null;}['unwrapLinkElement'](_0x29051a){const _0x133d3b=_0x29051a['parentNode'];if(!_0x133d3b)return;while(_0x29051a['firstChild']){_0x133d3b['insertBefore'](_0x29051a['firstChild'],_0x29051a);}_0x133d3b['removeChild'](_0x29051a);}['isSelectionInTag'](_0x4c4670){const _0x1b8f31=window['getSelection']();if(!_0x1b8f31||_0x1b8f31['rangeCount']===0x0)return![];let _0x255932=_0x1b8f31['anchorNode'];while(_0x255932&&_0x255932!==this['editor']){if(_0x255932['nodeType']===Node['ELEMENT_NODE']&&_0x255932['tagName']===_0x4c4670)return!![];_0x255932=_0x255932['parentNode'];}return![];}['updateToolbarState'](){if(!this['toolbarButtons'])return;for(const [_0x17474f,_0x135c53]of Object['entries'](this['toolbarButtons'])){let _0x4fd2dd=![];if(_0x135c53['command'])try{_0x4fd2dd=document['queryCommandState'](_0x135c53['command']);}catch(_0xd36a9){_0x4fd2dd=![];}else _0x135c53['tagName']&&(_0x4fd2dd=this['isSelectionInTag'](_0x135c53['tagName']));_0x135c53['button']['classList']['toggle']('active',_0x4fd2dd);}}['bindEvents'](){this['editor']['addEventListener']('keydown',_0x597f99=>this['handleKeydown'](_0x597f99)),this['editor']['addEventListener']('input',_0x4a4fda=>{this['handleMentionInput'](_0x4a4fda),this['handleAutoFormat'](_0x4a4fda);}),this['editor']['addEventListener']('input',()=>{const _0x8d6fce=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');!_0x8d6fce&&(this['editor']['innerHTML']='');this['updatePlaceholder']();const _0x282529=this['getMarkdown']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x282529:this['element']['textContent']=_0x282529,this['options']['onChange']&&this['options']['onChange'](_0x282529);}),this['editor']['addEventListener']('paste',_0x3bb5c3=>this['handlePaste'](_0x3bb5c3)),this['editor']['addEventListener']('dragover',_0x4884e0=>this['handleDragOver'](_0x4884e0)),this['editor']['addEventListener']('drop',_0x5829ee=>this['handleDrop'](_0x5829ee)),this['editor']['addEventListener']('dragstart',_0x25295f=>this['handleDragStart'](_0x25295f)),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']=_0x3c2ca8=>this['handleLinkClick'](_0x3c2ca8),this['editor']['addEventListener']('click',this['linkClickHandler']),this['linkMouseEnterHandler']=_0x4a3e7f=>this['handleLinkMouseEnter'](_0x4a3e7f),this['linkMouseLeaveHandler']=_0x3c7629=>this['handleLinkMouseLeave'](_0x3c7629),this['editor']['addEventListener']('mouseover',this['linkMouseEnterHandler']),this['editor']['addEventListener']('mouseout',this['linkMouseLeaveHandler']),this['updatePlaceholder']();}['handleAutoFormat'](_0x27e6c4){if(_0x27e6c4['inputType']==='deleteContentBackward')return;const _0x52c4db=window['getSelection']();if(!_0x52c4db||_0x52c4db['rangeCount']===0x0)return;const _0x37054d=_0x52c4db['getRangeAt'](0x0),_0xf782a9=_0x37054d['startContainer'];if(_0xf782a9['nodeType']!==Node['TEXT_NODE'])return;if(this['isSelectionInTag']('CODE')||this['isSelectionInTag']('PRE'))return;const _0x5f1038=_0xf782a9['textContent'],_0x3e827a=_0x37054d['startOffset'],_0x5b923f=_0x5f1038['slice'](0x0,_0x3e827a);if(_0x5b923f['endsWith']('```')){_0x37054d['setStart'](_0xf782a9,_0x3e827a-0x3),_0x37054d['setEnd'](_0xf782a9,_0x3e827a),_0x37054d['deleteContents'](),this['insertCodeBlock']();return;}const _0x1958a5=/`([^`]+)`$/,_0xaaa46e=_0x5b923f['match'](_0x1958a5);if(_0xaaa46e){const _0x247359=_0xaaa46e[0x1];if(_0x247359){const _0x3e2780=_0xaaa46e['index'],_0x53a99a=_0x3e2780+_0x247359['length']+0x2;_0x37054d['setStart'](_0xf782a9,_0x3e2780),_0x37054d['setEnd'](_0xf782a9,_0x3e827a),_0x37054d['deleteContents']();const _0x5cd0dd=document['createElement']('code');_0x5cd0dd['textContent']=_0x247359,_0x37054d['insertNode'](_0x5cd0dd),_0x37054d['setStartAfter'](_0x5cd0dd),_0x37054d['setEndAfter'](_0x5cd0dd);const _0x323735=document['createTextNode']('');_0x37054d['insertNode'](_0x323735),_0x37054d['setStartAfter'](_0x323735),_0x37054d['setEndAfter'](_0x323735),_0x52c4db['removeAllRanges'](),_0x52c4db['addRange'](_0x37054d);return;}}const _0x48e97a=_0x5b923f['match'](/^[-*][\s\u00A0]$/);if(_0x48e97a&&this['isAtStartOfBlock'](_0xf782a9)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x37054d['setStart'](_0xf782a9,Math['max'](_0x3e827a-0x2,0x0)),_0x37054d['setEnd'](_0xf782a9,_0x3e827a),_0x37054d['deleteContents']();const _0x1156e8=this['ensureListInsertionAnchor'](_0xf782a9);document['execCommand']('insertUnorderedList',![],null);_0x1156e8&&_0x1156e8['parentNode']&&_0x1156e8['parentNode']['removeChild'](_0x1156e8);this['updateToolbarState']();return;}const _0x510d62=_0x5b923f['match'](/^1\.[\s\u00A0]$/);if(_0x510d62&&this['isAtStartOfBlock'](_0xf782a9)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x37054d['setStart'](_0xf782a9,Math['max'](_0x3e827a-0x3,0x0)),_0x37054d['setEnd'](_0xf782a9,_0x3e827a),_0x37054d['deleteContents']();const _0x523e4e=this['ensureListInsertionAnchor'](_0xf782a9);document['execCommand']('insertOrderedList',![],null);_0x523e4e&&_0x523e4e['parentNode']&&_0x523e4e['parentNode']['removeChild'](_0x523e4e);this['updateToolbarState']();return;}}['isAtStartOfBlock'](_0x51d870){let _0x404c4a=_0x51d870;while(_0x404c4a&&_0x404c4a!==this['editor']){const _0x16e230=_0x404c4a['parentNode'];if(!_0x16e230)break;const _0x4fab9d=_0x16e230['tagName'];if(_0x4fab9d==='DIV'||_0x4fab9d==='P'||_0x4fab9d==='LI'||_0x16e230===this['editor']){let _0x47fe1d=_0x16e230['firstChild'];while(_0x47fe1d&&(_0x47fe1d['nodeType']===Node['TEXT_NODE']&&_0x47fe1d['textContent']===''||_0x47fe1d['nodeType']===Node['ELEMENT_NODE']&&_0x47fe1d['tagName']==='BR')){_0x47fe1d=_0x47fe1d['nextSibling'];}return _0x47fe1d===_0x51d870||_0x47fe1d===_0x404c4a;}_0x404c4a=_0x16e230;}if(_0x404c4a===this['editor']||_0x51d870['parentNode']===this['editor']){let _0x13c466=this['editor']['firstChild'];while(_0x13c466&&(_0x13c466['nodeType']===Node['TEXT_NODE']&&_0x13c466['textContent']===''||_0x13c466['nodeType']===Node['ELEMENT_NODE']&&_0x13c466['tagName']==='BR')){_0x13c466=_0x13c466['nextSibling'];}return _0x13c466===_0x51d870;}return![];}['getClosestBlockElement'](_0x24da66){let _0x32a880=_0x24da66;while(_0x32a880&&_0x32a880!==this['editor']){const _0x24f9b0=_0x32a880['parentNode'];if(!_0x24f9b0)break;const _0xf4503d=_0x24f9b0['tagName'];if(_0xf4503d==='DIV'||_0xf4503d==='P'||_0xf4503d==='LI'||_0x24f9b0===this['editor'])return _0x24f9b0;_0x32a880=_0x24f9b0;}return this['editor'];}['ensureListInsertionAnchor'](_0x16d94c){const _0x3253fb=window['getSelection']();if(!_0x3253fb||_0x3253fb['rangeCount']===0x0)return null;const _0x481ae0=this['getClosestBlockElement'](_0x16d94c);if(!_0x481ae0||_0x481ae0===this['editor'])return null;const _0x5a337f=_0x481ae0['textContent']['replace'](/\u200B/g,'');if(_0x5a337f!=='')return null;const _0x2223f5=document['createTextNode']('');_0x481ae0['appendChild'](_0x2223f5);const _0x3b8bbe=document['createRange']();return _0x3b8bbe['setStart'](_0x2223f5,0x1),_0x3b8bbe['setEnd'](_0x2223f5,0x1),_0x3253fb['removeAllRanges'](),_0x3253fb['addRange'](_0x3b8bbe),_0x2223f5;}['getContainingListItem'](){const _0x52d223=window['getSelection']();if(!_0x52d223||_0x52d223['rangeCount']===0x0)return null;let _0x1a0806=_0x52d223['anchorNode'];while(_0x1a0806&&_0x1a0806!==this['editor']){if(_0x1a0806['nodeType']===Node['ELEMENT_NODE']&&_0x1a0806['tagName']==='LI')return _0x1a0806;_0x1a0806=_0x1a0806['parentNode'];}return null;}['isEmptyListItem'](_0x52af0d){if(!_0x52af0d)return![];const _0x48600f=_0x52af0d['textContent']['replace'](/\u200B/g,'')['trim']();if(_0x48600f!=='')return![];const _0x55bdc3=_0x52af0d['querySelector']('img');if(_0x55bdc3)return![];const _0x12e751=_0x52af0d['querySelector']('ul,\x20ol');if(_0x12e751)return![];return!![];}['isCursorAtStartOfListItem'](_0x20066f){if(!_0x20066f)return![];const _0x562606=window['getSelection']();if(!_0x562606||_0x562606['rangeCount']===0x0||!_0x562606['isCollapsed'])return![];const _0x53cc27=_0x562606['getRangeAt'](0x0),_0x4eaee3=_0x53cc27['startContainer'];if(_0x4eaee3!==_0x20066f&&!_0x20066f['contains'](_0x4eaee3))return![];const _0x1f1cbb=_0x53cc27['cloneRange']();_0x1f1cbb['setStart'](_0x20066f,0x0),_0x1f1cbb['setEnd'](_0x4eaee3,_0x53cc27['startOffset']);const _0xfd7636=_0x1f1cbb['toString']()['replace'](/\u200B/g,'')['replace'](/\u00A0/g,'\x20');return _0xfd7636['trim']()==='';}['indentListItem'](_0x2b19f0){const _0x3ea463=_0x2b19f0['previousElementSibling'];if(!_0x3ea463||_0x3ea463['tagName']!=='LI')return;const _0x4fb9ca=_0x2b19f0['parentNode'],_0x274202=_0x4fb9ca['tagName'];let _0x43df77=_0x3ea463['querySelector'](':scope\x20>\x20ul,\x20:scope\x20>\x20ol');!_0x43df77&&(_0x43df77=document['createElement'](_0x274202),_0x3ea463['appendChild'](_0x43df77)),_0x43df77['appendChild'](_0x2b19f0),this['placeCursorInListItem'](_0x2b19f0);}['outdentListItem'](_0xe603c1){const _0x5abf2e=_0xe603c1['parentNode'];if(!_0x5abf2e||_0x5abf2e['tagName']!=='UL'&&_0x5abf2e['tagName']!=='OL')return;const _0x49fd4b=_0x5abf2e['parentNode'];if(_0x49fd4b&&_0x49fd4b['tagName']==='LI'){const _0x49cdd5=_0x49fd4b['parentNode'];_0x49cdd5['insertBefore'](_0xe603c1,_0x49fd4b['nextSibling']),_0x5abf2e['children']['length']===0x0&&_0x5abf2e['remove'](),this['placeCursorInListItem'](_0xe603c1);}else return;}['exitListOnEmptyBullet'](_0x4758ee){const _0xfcf726=_0x4758ee['parentNode'];if(!_0xfcf726)return;const _0xeccf68=_0xfcf726['parentNode'];if(_0xeccf68&&_0xeccf68['tagName']==='LI'){this['outdentListItem'](_0x4758ee);return;}const _0x37e553=_0xfcf726['parentNode'],_0x17b20a=document['createElement']('p');_0x17b20a['innerHTML']='<br>',_0x37e553['insertBefore'](_0x17b20a,_0xfcf726['nextSibling']),_0x4758ee['remove']();_0xfcf726['children']['length']===0x0&&_0xfcf726['remove']();const _0x7e57a8=window['getSelection'](),_0x15f478=document['createRange']();_0x15f478['setStart'](_0x17b20a,0x0),_0x15f478['collapse'](!![]),_0x7e57a8['removeAllRanges'](),_0x7e57a8['addRange'](_0x15f478);}['placeCursorInListItem'](_0x4845b){const _0x2357a9=window['getSelection'](),_0x861888=document['createRange'](),_0x20676a=document['createTreeWalker'](_0x4845b,NodeFilter['SHOW_TEXT'],null,![]),_0x41e685=_0x20676a['nextNode']();_0x41e685?_0x861888['setStart'](_0x41e685,0x0):_0x861888['setStart'](_0x4845b,0x0),_0x861888['collapse'](!![]),_0x2357a9['removeAllRanges'](),_0x2357a9['addRange'](_0x861888);}['handleLinkClick'](_0x3a3096){const _0x1328f6=this['isMac']?_0x3a3096['metaKey']:_0x3a3096['ctrlKey'];if(!_0x1328f6)return;let _0x246c01=_0x3a3096['target'];while(_0x246c01&&_0x246c01!==this['editor']){if(_0x246c01['tagName']==='A'){_0x3a3096['preventDefault'](),_0x3a3096['stopPropagation']();const _0x4d484a=_0x246c01['getAttribute']('href');if(!_0x4d484a)return;if(_0x4d484a['startsWith']('mention:'))return;const _0x25d1fb=/^https?:\/\//i['test'](_0x4d484a);_0x25d1fb?window['open'](_0x4d484a,'_blank','noopener,noreferrer'):window['location']['href']=_0x4d484a;return;}_0x246c01=_0x246c01['parentNode'];}}['handleLinkMouseEnter'](_0x2bd797){const _0x3a48e7=_0x2bd797['target'];if(_0x3a48e7['tagName']!=='A')return;const _0x49ebff=_0x3a48e7['getAttribute']('href')||'';if(_0x49ebff['startsWith']('mention:'))return;this['linkTooltipTimeout']&&clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=setTimeout(()=>{this['showLinkTooltip'](_0x3a48e7);},0x12c);}['handleLinkMouseLeave'](_0x84cafc){const _0x3e11fd=_0x84cafc['target'];if(_0x3e11fd['tagName']!=='A')return;this['linkTooltipTimeout']&&(clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=null),this['hideLinkTooltip']();}['showLinkTooltip'](_0x344ccd){!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 _0x37f960=_0x344ccd['getBoundingClientRect'](),_0x5f55c2=this['linkTooltip']['getBoundingClientRect']();let _0x1c0a7a=_0x37f960['bottom']+0x4,_0xf42c0e=_0x37f960['left']+_0x37f960['width']/0x2;_0x1c0a7a+0x1e>window['innerHeight']&&(_0x1c0a7a=_0x37f960['top']-0x1e);const _0x59ad52=0x78;if(_0xf42c0e-_0x59ad52/0x2<0xa)_0xf42c0e=_0x59ad52/0x2+0xa;else _0xf42c0e+_0x59ad52/0x2>window['innerWidth']-0xa&&(_0xf42c0e=window['innerWidth']-_0x59ad52/0x2-0xa);this['linkTooltip']['style']['top']=_0x1c0a7a+'px',this['linkTooltip']['style']['left']=_0xf42c0e+'px',this['linkTooltip']['style']['transform']='translateX(-50%)',this['linkTooltip']['classList']['add']('visible');}['hideLinkTooltip'](){this['linkTooltip']&&this['linkTooltip']['classList']['remove']('visible');}['handleKeydown'](_0xddd97f){if(this['mentionState']['active']){if(_0xddd97f['key']==='ArrowDown'){_0xddd97f['preventDefault'](),this['mentionNavigate'](0x1);return;}if(_0xddd97f['key']==='ArrowUp'){_0xddd97f['preventDefault'](),this['mentionNavigate'](-0x1);return;}if(_0xddd97f['key']==='Enter'||_0xddd97f['key']==='Tab'){if(this['mentionState']['filteredUsers']['length']>0x0){_0xddd97f['preventDefault'](),this['insertMention'](this['mentionState']['filteredUsers'][this['mentionState']['selectedIndex']]);return;}}if(_0xddd97f['key']==='Escape'){_0xddd97f['preventDefault'](),this['closeMentionDropdown']();return;}}if(_0xddd97f['key']==='Tab'&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x4c5453=this['getContainingListItem']();if(_0x4c5453&&this['isCursorAtStartOfListItem'](_0x4c5453)){_0xddd97f['preventDefault']();_0xddd97f['shiftKey']?this['outdentListItem'](_0x4c5453):this['indentListItem'](_0x4c5453);this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0xddd97f['key']==='Enter'&&!_0xddd97f['shiftKey']&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x3918be=this['getContainingListItem']();if(_0x3918be&&this['isEmptyListItem'](_0x3918be)){_0xddd97f['preventDefault'](),this['exitListOnEmptyBullet'](_0x3918be),this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0xddd97f['key']==='Enter'&&!_0xddd97f['shiftKey']&&this['isSelectionInTag']('PRE')){_0xddd97f['preventDefault']();const _0x438eb2=window['getSelection']();if(_0x438eb2['rangeCount']>0x0){const _0xc9dd1a=_0x438eb2['getRangeAt'](0x0);_0xc9dd1a['deleteContents']();const _0x5d22a8=document['createTextNode']('\x0a');_0xc9dd1a['insertNode'](_0x5d22a8),_0xc9dd1a['setStartAfter'](_0x5d22a8),_0xc9dd1a['setEndAfter'](_0x5d22a8),_0x438eb2['removeAllRanges'](),_0x438eb2['addRange'](_0xc9dd1a),this['handleInput']();}return;}(_0xddd97f['ctrlKey']||_0xddd97f['metaKey'])&&_0xddd97f['key']==='b'&&(_0xddd97f['preventDefault'](),document['execCommand']('bold',![],null));(_0xddd97f['ctrlKey']||_0xddd97f['metaKey'])&&_0xddd97f['key']==='i'&&(_0xddd97f['preventDefault'](),document['execCommand']('italic',![],null));if((_0xddd97f['ctrlKey']||_0xddd97f['metaKey'])&&_0xddd97f['key']==='k'){_0xddd97f['preventDefault'](),this['openLinkDialog']();return;}}['handlePaste'](_0x314765){const _0x55c4ae=_0x314765['clipboardData'];if(_0x55c4ae&&this['options']['onAddAttachments']){const _0x15ef91=this['extractImageFilesFromClipboard'](_0x55c4ae);if(_0x15ef91['length']>0x0){_0x314765['preventDefault'](),this['addAndInsertImages'](_0x15ef91);return;}}_0x314765['preventDefault']();const _0x33020b=_0x314765['clipboardData']['getData']('text/html');if(_0x33020b&&_0x33020b['trim']()){const _0x517f59=this['convertPastedHtmlToMarkdown'](_0x33020b);if(_0x517f59&&_0x517f59['trim']()){this['insertMarkdownAsRichText'](_0x517f59);return;}}const _0x522a7a=_0x314765['clipboardData']['getData']('text/plain');document['execCommand']('insertText',![],_0x522a7a);}['convertPastedHtmlToMarkdown'](_0x489ce4){const _0x13a023=document['createElement']('div');_0x13a023['innerHTML']=_0x489ce4;const _0x328250=_0x13a023['querySelectorAll']('style,\x20script,\x20meta,\x20link,\x20head,\x20title');_0x328250['forEach'](_0x50be98=>_0x50be98['remove']());const _0x246dad=_0x13a023['querySelectorAll']('*');_0x246dad['forEach'](_0x37bd60=>{const _0x5232af=Array['from'](_0x37bd60['attributes']);_0x5232af['forEach'](_0x512216=>{_0x512216['name']['startsWith']('data-')&&_0x512216['name']!=='data-attachment-name'&&_0x512216['name']!=='data-mention-user-id'&&_0x37bd60['removeAttribute'](_0x512216['name']);});}),_0x13a023['querySelectorAll']('font[color]')['forEach'](_0x988676=>{_0x988676['replaceWith'](..._0x988676['childNodes']);}),_0x13a023['querySelectorAll']('span')['forEach'](_0x530693=>{_0x530693['style']['color']&&_0x530693['style']['removeProperty']('color'),!_0x530693['getAttribute']('style')&&!_0x530693['getAttribute']('data-mention-user-id')&&!_0x530693['getAttribute']('data-attachment-name')&&_0x530693['replaceWith'](..._0x530693['childNodes']);});try{return this['turndownService']['turndown'](_0x13a023['innerHTML']);}catch(_0x17ae63){return console['warn']('Failed\x20to\x20convert\x20HTML\x20to\x20markdown:',_0x17ae63),null;}}['insertMarkdownAsRichText'](_0x2491af){const _0x5dc245=window['marked'];if(!_0x5dc245){document['execCommand']('insertText',![],_0x2491af);return;}try{const _0x276c87=this['preprocessColorSyntax'](_0x2491af),_0x42e9de=_0x5dc245['parse'](_0x276c87),_0x110e67=document['createElement']('div');_0x110e67['innerHTML']=_0x42e9de,this['processHtmlForEditor'](_0x110e67),document['execCommand']('insertHTML',![],_0x110e67['innerHTML']);}catch(_0x59b5e8){console['warn']('Failed\x20to\x20convert\x20markdown\x20to\x20HTML:',_0x59b5e8),document['execCommand']('insertText',![],_0x2491af);}}['processHtmlForEditor'](_0x268744){const _0x116456=_0x268744['querySelectorAll']('pre');_0x116456['forEach'](_0x5a2ce1=>{const _0x15d04e=_0x5a2ce1['querySelector']('code');if(_0x15d04e){const _0x24ce80=Array['from'](_0x15d04e['classList'])['find'](_0xafdd6f=>_0xafdd6f['startsWith']('language-')),_0x20a273=_0x24ce80?_0x24ce80['replace']('language-',''):'',_0x53b1a8=document['createElement']('pre');_0x20a273&&_0x53b1a8['setAttribute']('data-language',_0x20a273),_0x53b1a8['textContent']=_0x15d04e['textContent'],_0x5a2ce1['replaceWith'](_0x53b1a8);}});const _0x54638f=_0x268744['querySelectorAll']('a');_0x54638f['forEach'](_0x4064a8=>{_0x4064a8['setAttribute']('target','_blank'),_0x4064a8['setAttribute']('rel','noopener\x20noreferrer');});}['handleDragStart'](_0x1c093f){const _0x2a709b=_0x1c093f['target'];if(!_0x2a709b||_0x2a709b['tagName']!=='IMG')return;if(!_0x1c093f['dataTransfer'])return;const _0x329032=_0x2a709b['getAttribute']('data-attachment-name')||'';try{_0x1c093f['dataTransfer']['setData'](INTERNAL_DRAG_MIME,_0x329032||'1');}catch{}_0x1c093f['dataTransfer']['effectAllowed']='move';}['handleDragOver'](_0x1f6fa4){if(!this['isExternalFileTransfer'](_0x1f6fa4['dataTransfer']))return;_0x1f6fa4['preventDefault'](),_0x1f6fa4['dataTransfer']['dropEffect']='copy';}['handleDrop'](_0x4ab306){if(!this['isExternalFileTransfer'](_0x4ab306['dataTransfer']))return;const _0x3d36e6=_0x4ab306['dataTransfer'],_0x401e03=Array['from'](_0x3d36e6['files']||[])['filter'](_0x1e9dd0=>_0x1e9dd0&&typeof _0x1e9dd0['type']==='string'),_0x4f6b30=_0x401e03['filter'](_0x314487=>_0x314487['type']['startsWith']('image/'));if(_0x4f6b30['length']===0x0)return;_0x4ab306['preventDefault'](),_0x4ab306['stopPropagation'](),this['cleanupParentDragState'](),this['moveSelectionToDropPoint'](_0x4ab306),this['addAndInsertImages'](_0x4f6b30);}['cleanupParentDragState'](){let _0x15c6a8=this['editor']['parentElement'];while(_0x15c6a8){_0x15c6a8['classList']&&_0x15c6a8['classList']['contains']('drag-over')&&_0x15c6a8['classList']['remove']('drag-over'),_0x15c6a8=_0x15c6a8['parentElement'];}}['isExternalFileTransfer'](_0x5169db){if(!_0x5169db)return![];const _0x1e361d=Array['from'](_0x5169db['types']||[]);if(!_0x1e361d['includes']('Files'))return![];if(_0x1e361d['includes'](INTERNAL_DRAG_MIME))return![];if(_0x5169db['files']&&_0x5169db['files']['length']>0x0)return!![];if(_0x5169db['items']&&Array['from'](_0x5169db['items'])['some'](_0x3faeac=>_0x3faeac['kind']==='file'))return!![];return![];}['moveSelectionToDropPoint'](_0x25bda2){const _0x3c703c=_0x25bda2['clientX'],_0x394f97=_0x25bda2['clientY'];let _0x2ce1b4=null;if(document['caretRangeFromPoint'])_0x2ce1b4=document['caretRangeFromPoint'](_0x3c703c,_0x394f97);else{if(document['caretPositionFromPoint']){const _0x377fe9=document['caretPositionFromPoint'](_0x3c703c,_0x394f97);_0x377fe9&&(_0x2ce1b4=document['createRange'](),_0x2ce1b4['setStart'](_0x377fe9['offsetNode'],_0x377fe9['offset']),_0x2ce1b4['collapse'](!![]));}}if(_0x2ce1b4){const _0x3673b4=window['getSelection']();_0x3673b4['removeAllRanges'](),_0x3673b4['addRange'](_0x2ce1b4);}}['extractImageFilesFromClipboard'](_0x55b35d){const _0x202d18=Array['from'](_0x55b35d['items']||[]),_0x3ee0f9=[];for(const _0x5e4a0e of _0x202d18){if(_0x5e4a0e['kind']==='file'&&_0x5e4a0e['type']&&_0x5e4a0e['type']['startsWith']('image/')){const _0x4ce10c=_0x5e4a0e['getAsFile']();if(_0x4ce10c)_0x3ee0f9['push'](_0x4ce10c);}}return _0x3ee0f9;}['addAndInsertImages'](_0x38bb21){const _0x4475b2=_0x38bb21['map'](_0x7e1d4b=>this['prepareAttachmentFile'](_0x7e1d4b))['filter'](Boolean);if(_0x4475b2['length']===0x0)return;const _0xa633e9=_0x4475b2['map'](_0x2fab10=>_0x2fab10['file']);try{this['options']['onAddAttachments'](_0xa633e9);}catch(_0x1faf5e){console['error']('Failed\x20to\x20add\x20attachments:',_0x1faf5e);}for(const {name:_0x2594b8,objectUrl:_0x1e136d}of _0x4475b2){this['insertAttachmentImage'](_0x2594b8,_0x1e136d);}this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));}['prepareAttachmentFile'](_0x2d3161){const _0x469eb7=this['sanitizeFilename'](_0x2d3161['name']||this['defaultImageName'](_0x2d3161['type']));if(!_0x469eb7)return null;const _0x386e22=this['getUniqueAttachmentName'](_0x469eb7),_0x5acae6=_0x386e22===_0x2d3161['name']?_0x2d3161:new File([_0x2d3161],_0x386e22,{'type':_0x2d3161['type'],'lastModified':_0x2d3161['lastModified']}),_0x585a29=URL['createObjectURL'](_0x5acae6);return this['attachmentObjectUrls']['set'](_0x386e22,_0x585a29),{'name':_0x386e22,'file':_0x5acae6,'objectUrl':_0x585a29};}['getUniqueAttachmentName'](_0x1659a8){const _0x4340a8=_0x401836=>{if(this['attachmentObjectUrls']['has'](_0x401836))return!![];if(this['options']['isAttachmentNameTaken'])try{return Boolean(this['options']['isAttachmentNameTaken'](_0x401836));}catch{return![];}return![];};if(!_0x4340a8(_0x1659a8))return _0x1659a8;const {stem:_0x7b09b6,ext:_0x55509c}=this['splitFilename'](_0x1659a8);for(let _0x204c6a=0x2;_0x204c6a<0x3e8;_0x204c6a++){const _0x230886=_0x7b09b6+'-'+_0x204c6a+_0x55509c;if(!_0x4340a8(_0x230886))return _0x230886;}return _0x7b09b6+'-'+Date['now']()+_0x55509c;}['splitFilename'](_0x44177a){const _0x3e98fb=_0x44177a['lastIndexOf']('.');if(_0x3e98fb<=0x0||_0x3e98fb===_0x44177a['length']-0x1)return{'stem':_0x44177a,'ext':''};return{'stem':_0x44177a['slice'](0x0,_0x3e98fb),'ext':_0x44177a['slice'](_0x3e98fb)};}['sanitizeFilename'](_0x1e5a24){const _0x1c571=String(_0x1e5a24||'')['split']('/')['pop']()['split']('\x5c')['pop']();return _0x1c571['replace'](/[\u0000-\u001F\u007F]/g,'')['trim']();}['defaultImageName'](_0x264113){const _0x1835d3=this['extensionForMime'](_0x264113);return'pasted-image-'+Date['now']()+_0x1835d3;}['extensionForMime'](_0xed78a2){switch(_0xed78a2){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'](_0x33fb55,_0x375168){const _0x5aa1ce=document['createElement']('img');_0x5aa1ce['src']=_0x375168,_0x5aa1ce['alt']=_0x33fb55,_0x5aa1ce['setAttribute']('data-attachment-name',_0x33fb55),_0x5aa1ce['draggable']=!![];const _0x5c98c2=window['getSelection']();let _0x5e59b2=![];if(_0x5c98c2&&_0x5c98c2['rangeCount']>0x0){const _0xc7d922=_0x5c98c2['getRangeAt'](0x0);_0x5e59b2=this['editor']['contains'](_0xc7d922['commonAncestorContainer'])||this['editor']===_0xc7d922['commonAncestorContainer'];}if(!_0x5e59b2){this['editor']['appendChild'](_0x5aa1ce);const _0x13cc72=document['createRange']();_0x13cc72['setStartAfter'](_0x5aa1ce),_0x13cc72['collapse'](!![]),_0x5c98c2['removeAllRanges'](),_0x5c98c2['addRange'](_0x13cc72);return;}const _0xe11d75=_0x5c98c2['getRangeAt'](0x0);_0xe11d75['deleteContents'](),_0xe11d75['insertNode'](_0x5aa1ce),_0xe11d75['setStartAfter'](_0x5aa1ce),_0xe11d75['collapse'](!![]),_0x5c98c2['removeAllRanges'](),_0x5c98c2['addRange'](_0xe11d75);}['toggleInlineCode'](){const _0x21dde2=window['getSelection']();if(_0x21dde2['rangeCount']===0x0)return;const _0x446f36=_0x21dde2['getRangeAt'](0x0),_0x5bb292=_0x446f36['toString']();if(_0x5bb292){const _0x178026=document['createElement']('code');_0x178026['textContent']=_0x5bb292,_0x446f36['deleteContents'](),_0x446f36['insertNode'](_0x178026),_0x446f36['setStartAfter'](_0x178026),_0x446f36['setEndAfter'](_0x178026),_0x21dde2['removeAllRanges'](),_0x21dde2['addRange'](_0x446f36);}}['insertCodeBlock'](){const _0xdfe9e3=window['getSelection']();if(_0xdfe9e3['rangeCount']===0x0)return;const _0x78117b=_0xdfe9e3['getRangeAt'](0x0),_0x2e64b3=_0x78117b['toString'](),_0x23098f=document['createElement']('pre'),_0x3bc151=document['createElement']('code');_0x3bc151['textContent']=_0x2e64b3||'\x0a',_0x23098f['appendChild'](_0x3bc151),_0x78117b['deleteContents'](),_0x78117b['insertNode'](_0x23098f);const _0x4b23c9=document['createElement']('p');_0x4b23c9['innerHTML']='<br>',_0x23098f['parentNode']['insertBefore'](_0x4b23c9,_0x23098f['nextSibling']);const _0x453118=document['createRange']();!_0x2e64b3?(_0x453118['setStart'](_0x3bc151['firstChild'],0x0),_0x453118['setEnd'](_0x3bc151['firstChild'],0x0)):(_0x453118['selectNodeContents'](_0x3bc151),_0x453118['collapse'](![])),_0xdfe9e3['removeAllRanges'](),_0xdfe9e3['addRange'](_0x453118);}['updatePlaceholder'](){const _0x42b002=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');_0x42b002?this['editor']['classList']['remove']('empty'):this['editor']['classList']['add']('empty');}['setMarkdown'](_0x588550){if(this['_sourceMode']&&this['_monacoEditor']){this['_monacoEditor']['setValue'](_0x588550||'');return;}if(!_0x588550||!_0x588550['trim']()){this['editor']['innerHTML']='',this['updatePlaceholder']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']='':this['element']['textContent']='';return;}const _0x101a61=this['preprocessColorSyntax'](_0x588550),_0x4c262a=window['marked']['parse'](_0x101a61);this['editor']['innerHTML']=_0x4c262a,this['rewriteAttachmentImages'](),this['rewriteMentionLinks'](),this['addLinkHints'](),this['updatePlaceholder'](),this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x588550:this['element']['textContent']=_0x588550;}['rewriteAttachmentImages'](){const _0x388a70=this['editor']['querySelectorAll']('img');_0x388a70['forEach'](_0x3bc52c=>{const _0x1e16cc=_0x3bc52c['getAttribute']('data-attachment-name'),_0x4e1ded=_0x3bc52c['getAttribute']('src')||'',_0x30ba51=this['parseAttachmentReference'](_0x4e1ded)||this['parseTaskAttachmentUrl'](_0x4e1ded),_0x22b87c=_0x1e16cc||(_0x30ba51?_0x30ba51['name']:null);if(!_0x22b87c)return;_0x3bc52c['setAttribute']('data-attachment-name',_0x22b87c);const _0x586262=this['attachmentObjectUrls']['get'](_0x22b87c)||(this['options']['resolveAttachmentUrl']?this['options']['resolveAttachmentUrl'](_0x22b87c):null);_0x586262&&(_0x3bc52c['src']=_0x586262);});}['rewriteMentionLinks'](){const _0x5ed14d=this['editor']['querySelectorAll']('a[href^=\x22mention:\x22]');_0x5ed14d['forEach'](_0x3b8281=>{const _0x1917f3=_0x3b8281['getAttribute']('href')||'',_0x5a1db3=_0x1917f3['replace']('mention:',''),_0x330680=_0x3b8281['textContent']||'',_0x157d97=document['createElement']('span');_0x157d97['className']='mention',_0x157d97['setAttribute']('data-mention-user-id',_0x5a1db3),_0x157d97['setAttribute']('contenteditable','false'),_0x157d97['textContent']='@'+_0x330680;const _0x54000e=_0x3b8281['previousSibling'];_0x54000e&&_0x54000e['nodeType']===Node['TEXT_NODE']&&_0x54000e['textContent']['endsWith']('@')&&(_0x54000e['textContent']=_0x54000e['textContent']['slice'](0x0,-0x1)),_0x3b8281['parentNode']['replaceChild'](_0x157d97,_0x3b8281);});}['addLinkHints'](){if(!this['options']['editable'])return;const _0x1d78e0=this['editor']['querySelectorAll']('a');_0x1d78e0['forEach'](_0x72a9c3=>{const _0x58b5d6=_0x72a9c3['getAttribute']('href')||'';if(_0x58b5d6['startsWith']('mention:'))return;const _0x3c22db=_0x72a9c3['textContent']||_0x58b5d6,_0x4f4e6d=_0x3c22db+'\x20('+(this['linkHintText']||'Ctrl+click\x20to\x20follow')+')';_0x72a9c3['setAttribute']('aria-label',_0x4f4e6d);});}['preprocessColorSyntax'](_0x5de77b){if(!_0x5de77b)return _0x5de77b;const _0x19754c=_0x299a01=>{return String(_0x299a01)['replace'](/\{color:(#[0-9A-Fa-f]{3,6})\}([\s\S]*?)\{\/color\}/g,(_0x336365,_0x13d993,_0x1505aa)=>{const _0x29dcab=_0x19754c(_0x1505aa);return'<span\x20style=\x22color:\x20'+_0x13d993+'\x22>'+_0x29dcab+'</span>';});};return _0x19754c(_0x5de77b);}['parseAttachmentReference'](_0x2ea444){if(!_0x2ea444||typeof _0x2ea444!=='string')return null;if(!_0x2ea444['startsWith'](ATTACHMENT_SCHEME)&&!_0x2ea444['startsWith'](ATTACHMENT_SCHEME+'//'))return null;const _0x4823a0=_0x2ea444['replace'](ATTACHMENT_SCHEME+'//','')['replace'](ATTACHMENT_SCHEME,'');if(!_0x4823a0)return null;try{return{'name':decodeURIComponent(_0x4823a0)};}catch{return{'name':_0x4823a0};}}['parseTaskAttachmentUrl'](_0x23a41b){if(!_0x23a41b||typeof _0x23a41b!=='string')return null;const _0x22c513=_0x23a41b['match'](/\/tasks\/[^/]+\/attachments\/([^?#]+)/);if(!_0x22c513)return null;const _0x5129bc=_0x22c513[0x1];try{return{'name':decodeURIComponent(_0x5129bc)};}catch{return{'name':_0x5129bc};}}['updateAttachmentFile'](_0x1decc4,_0x28f868){const _0x38f2e1=this['attachmentObjectUrls']['get'](_0x1decc4);if(_0x38f2e1)try{URL['revokeObjectURL'](_0x38f2e1);}catch{}const _0x560613=URL['createObjectURL'](_0x28f868);this['attachmentObjectUrls']['set'](_0x1decc4,_0x560613);const _0x5d893=this['editor']['querySelector']('img[data-attachment-name=\x22'+CSS['escape'](_0x1decc4)+'\x22]');return _0x5d893&&(_0x5d893['src']=_0x560613),_0x560613;}['getMarkdown'](){if(this['_sourceMode']&&this['_monacoEditor'])return this['_monacoEditor']['getValue']();const _0x4dfa3d=this['editor']['innerHTML'];if(!_0x4dfa3d||_0x4dfa3d['trim']()===''||_0x4dfa3d==='<br>')return'';return this['turndownService']['turndown'](_0x4dfa3d)['replace'](/\u200B/g,'');}['getValue'](){return this['getMarkdown']();}['setValue'](_0x35f039){this['setMarkdown'](_0x35f039);}['focus'](){if(this['_sourceMode']&&this['_monacoEditor']){this['_monacoEditor']['focus']();return;}this['editor']['focus']();}['clear'](){this['_sourceMode']&&(this['_sourceMode']=![],this['editor']['style']['display']='',this['_sourceContainer']&&(this['_sourceContainer']['style']['display']='none'),this['_updateSourceToggleUI']()),this['editor']['innerHTML']='',this['updatePlaceholder']();}['setEditable'](_0x14b0d5){this['editor']['contentEditable']=_0x14b0d5,this['options']['editable']=_0x14b0d5,this['_monacoEditor']&&this['_monacoEditor']['updateOptions']({'readOnly':!_0x14b0d5});}['getMode'](){return this['_sourceMode']?'source':'visual';}['setMode'](_0x2eea06){_0x2eea06==='source'?this['switchToSource']():this['switchToVisual']();}['toggleMode'](){this['toggleSourceMode']();}['toggleSourceMode'](){this['_sourceMode']?this['switchToVisual']():this['switchToSource']();}async['switchToSource'](){if(this['_sourceMode']||this['_destroyed']||this['_monacoLoading'])return;const _0x3480eb=this['getMarkdown']();!this['_sourceContainer']&&(this['_sourceContainer']=document['createElement']('div'),this['_sourceContainer']['className']='markdown-editor-source-container',this['_sourceContainer']['style']['flex']='1',this['_sourceContainer']['style']['minHeight']=this['options']['minHeight'],this['_sourceContainer']['style']['overflow']='hidden',this['container']?this['container']['appendChild'](this['_sourceContainer']):this['editor']['parentNode']['insertBefore'](this['_sourceContainer'],this['editor']['nextSibling']));this['editor']['style']['display']='none',this['_sourceContainer']['style']['display']='block';if(!this['_monacoInitialized']){this['_monacoLoading']=!![];try{await this['_ensureMonacoLoaded']();if(this['_destroyed'])return;this['_monacoEditor']=monaco['editor']['create'](this['_sourceContainer'],{'value':_0x3480eb,'language':'markdown','theme':this['_getMonacoTheme'](),'minimap':{'enabled':![]},'automaticLayout':!![],'wordWrap':'on','lineNumbers':this['options']['sourceLineNumbers']?'on':'off','glyphMargin':![],'folding':![],'lineDecorationsWidth':0x4,'lineNumbersMinChars':this['options']['sourceLineNumbers']?0x3:0x0,'scrollBeyondLastLine':![],'fontSize':0xe,'lineHeight':0x16,'padding':{'top':0x8,'bottom':0x8},'renderWhitespace':'selection','tabSize':0x2,'insertSpaces':!![],'readOnly':!this['options']['editable'],'quickSuggestions':![],'suggestOnTriggerCharacters':![],'parameterHints':{'enabled':![]},'wordBasedSuggestions':'off'}),this['_monacoEditor']['onDidChangeModelContent'](()=>{this['_sourceMode']&&this['options']['onChange']&&this['options']['onChange'](this['_monacoEditor']['getValue']());}),this['_monacoEditor']['addCommand'](monaco['KeyMod']['CtrlCmd']|monaco['KeyCode']['Enter'],()=>{this['editor']['dispatchEvent'](new KeyboardEvent('keydown',{'key':'Enter','ctrlKey':!![],'bubbles':!![]}));}),this['_monacoEditor']['addCommand'](monaco['KeyCode']['Escape'],()=>{this['editor']['dispatchEvent'](new KeyboardEvent('keydown',{'key':'Escape','bubbles':!![]}));}),this['_monacoInitialized']=!![];}catch(_0x206bce){console['error']('Failed\x20to\x20load\x20Monaco\x20for\x20source\x20mode:',_0x206bce),this['editor']['style']['display']='',this['_sourceContainer']['style']['display']='none',this['_monacoLoading']=![];return;}this['_monacoLoading']=![];}else this['_monacoEditor']['setValue'](_0x3480eb);this['_sourceMode']=!![],this['_updateSourceToggleUI'](),this['_monacoEditor']['focus'](),this['_monacoEditor']['layout']();}['switchToVisual'](){if(!this['_sourceMode']||this['_destroyed'])return;let _0x214881='';this['_monacoEditor']&&(_0x214881=this['_monacoEditor']['getValue']()),this['editor']['style']['display']='',this['_sourceContainer']&&(this['_sourceContainer']['style']['display']='none'),this['_sourceMode']=![],this['setMarkdown'](_0x214881),this['_updateSourceToggleUI'](),this['editor']['focus']();}['_updateSourceToggleUI'](){if(!this['_sourceToggleBtn'])return;this['_sourceMode']?(this['_sourceToggleBtn']['title']='Switch\x20to\x20visual\x20mode',this['_sourceToggleBtn']['classList']['add']('active')):(this['_sourceToggleBtn']['title']='Switch\x20to\x20source\x20mode',this['_sourceToggleBtn']['classList']['remove']('active')),this['_setFormattingButtonsEnabled'](!this['_sourceMode']);}['_setFormattingButtonsEnabled'](_0x482e6c){if(!this['toolbarButtons'])return;for(const [_0x2bc8c0,_0x464cc3]of Object['entries'](this['toolbarButtons'])){_0x464cc3['button']['disabled']=!_0x482e6c,_0x464cc3['button']['style']['opacity']=_0x482e6c?'':'0.35',_0x464cc3['button']['style']['pointerEvents']=_0x482e6c?'':'none';}}async['_ensureMonacoLoaded'](){if(window['MarkdownFileEditor']&&window['MarkdownFileEditor']['ensureMonacoLoaded'])return window['MarkdownFileEditor']['ensureMonacoLoaded']();if(typeof monaco!=='undefined')return;return new Promise((_0x399813,_0x3c0327)=>{const _0x4f2c9e=document['querySelector']('script[src*=\x22monaco-editor\x22][src*=\x22loader.js\x22]');if(_0x4f2c9e){const _0x4a58a6=setInterval(()=>{typeof monaco!=='undefined'&&(clearInterval(_0x4a58a6),_0x399813());},0x32);setTimeout(()=>{clearInterval(_0x4a58a6),_0x3c0327(new Error('Monaco\x20loading\x20timeout'));},0x2710);return;}const _0x1d6014=document['createElement']('script');_0x1d6014['src']='/vendor/monaco-editor/0.45.0/min/vs/loader.js',_0x1d6014['onload']=()=>{require['config']({'paths':{'vs':'/vendor/monaco-editor/0.45.0/min/vs'}}),require(['vs/editor/editor.main'],()=>_0x399813());},_0x1d6014['onerror']=()=>_0x3c0327(new Error('Failed\x20to\x20load\x20Monaco\x20Editor')),document['head']['appendChild'](_0x1d6014);});}['_getMonacoTheme'](){const _0x27cd77=document['documentElement']['getAttribute']('data-theme')==='dark';return _0x27cd77?'vs-dark':'vs';}['handleMentionInput'](_0x264627){if(!this['options']['fetchUsers'])return;const _0x47aafa=window['getSelection']();if(!_0x47aafa||_0x47aafa['rangeCount']===0x0){this['closeMentionDropdown']();return;}const _0x1960fa=_0x47aafa['getRangeAt'](0x0),_0x3fe51=_0x1960fa['startContainer'];if(_0x3fe51['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x598679=_0x3fe51['textContent']||'',_0x5573cd=_0x1960fa['startOffset'],_0x1506ee=_0x598679['slice'](0x0,_0x5573cd),_0x425063=_0x1506ee['lastIndexOf']('@');if(_0x425063===-0x1){this['closeMentionDropdown']();return;}const _0x3a2c67=_0x425063>0x0?_0x1506ee[_0x425063-0x1]:'\x20';if(!/\s/['test'](_0x3a2c67)&&_0x425063!==0x0){this['closeMentionDropdown']();return;}const _0x5033f9=_0x1506ee['slice'](_0x425063+0x1);if(/[\s\n]/['test'](_0x5033f9)){this['closeMentionDropdown']();return;}this['mentionState']['active']=!![],this['mentionState']['query']=_0x5033f9['toLowerCase'](),this['mentionState']['startOffset']=_0x425063,this['mentionState']['startNode']=_0x3fe51,this['showMentionDropdown']();}async['showMentionDropdown'](){if(!this['usersCache'])try{const _0x2bdfd0=await this['options']['fetchUsers']();this['usersCache']=_0x2bdfd0['users']||_0x2bdfd0||[];}catch(_0xba8d36){console['error']('Failed\x20to\x20fetch\x20users\x20for\x20@mention:',_0xba8d36),this['closeMentionDropdown']();return;}this['mentionState']['users']=this['usersCache'];const _0x2716b6=this['mentionState']['query'];this['mentionState']['filteredUsers']=this['mentionState']['users']['filter'](_0x426ec4=>{const _0x15132a=(_0x426ec4['name']||'')['toLowerCase'](),_0x167290=(_0x426ec4['username']||'')['toLowerCase']();return _0x15132a['includes'](_0x2716b6)||_0x167290['includes'](_0x2716b6);})['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']=_0x294e7b=>{!this['mentionDropdown']['contains'](_0x294e7b['target'])&&!this['editor']['contains'](_0x294e7b['target'])&&this['closeMentionDropdown']();},document['addEventListener']('click',this['mentionClickOutsideHandler']),this['mentionScrollHandler']=()=>{this['mentionState']['active']&&this['positionMentionDropdown']();},window['addEventListener']('scroll',this['mentionScrollHandler'],!![]));const _0x2d1ef4=this['mentionState']['filteredUsers'];this['mentionDropdown']['innerHTML']=_0x2d1ef4['map']((_0x2a35ce,_0x4c86c4)=>{const _0x3dec48=_0x4c86c4===this['mentionState']['selectedIndex'],_0xe33d2e=_0x2a35ce['name']||_0x2a35ce['username']||'Unknown',_0x3f75b4=_0x2a35ce['username']||'',_0x5c9bc0=this['getInitials'](_0xe33d2e),_0x3e4257=this['getAvatarColorIndex'](_0x3f75b4||_0x2a35ce['id']||_0xe33d2e);return'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22mention-option\x20'+(_0x3dec48?'mention-option-selected':'')+'\x22\x20data-index=\x22'+_0x4c86c4+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-avatar\x20avatar-color-'+_0x3e4257+'\x22>'+this['escapeHtmlForMention'](_0x5c9bc0)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-option-name\x22>'+this['escapeHtmlForMention'](_0xe33d2e)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x3f75b4?'<span\x20class=\x22mention-option-username\x22>@'+this['escapeHtmlForMention'](_0x3f75b4)+'</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'](_0x4f92b2=>{_0x4f92b2['addEventListener']('mousedown',_0x46f632=>{_0x46f632['preventDefault']();const _0x5c636a=parseInt(_0x4f92b2['dataset']['index'],0xa);this['insertMention'](this['mentionState']['filteredUsers'][_0x5c636a]);}),_0x4f92b2['addEventListener']('mouseenter',()=>{const _0xf83fee=parseInt(_0x4f92b2['dataset']['index'],0xa);this['mentionState']['selectedIndex']=_0xf83fee,this['updateMentionSelection']();});}),this['mentionDropdown']['style']['display']='block';}['positionMentionDropdown'](){if(!this['mentionDropdown'])return;const _0x9cda6b=window['getSelection']();if(!_0x9cda6b||_0x9cda6b['rangeCount']===0x0)return;const _0x3f4ba0=_0x9cda6b['getRangeAt'](0x0),_0x2508e4=_0x3f4ba0['getBoundingClientRect'](),_0x2f4e06=0x104,_0x4bc757=Math['min'](0xf0,this['mentionState']['filteredUsers']['length']*0x24+0x8),_0x454001=window['innerWidth'],_0x32d8bf=window['innerHeight'],_0x41b69f=_0x32d8bf-_0x2508e4['bottom'],_0x78dca8=_0x2508e4['top'],_0x5e8e85=_0x41b69f<_0x4bc757+0xa&&_0x78dca8>_0x41b69f;let _0x27c2c3,_0xd44119;_0x5e8e85?_0x27c2c3=_0x2508e4['top']+window['scrollY']-_0x4bc757-0x4:_0x27c2c3=_0x2508e4['bottom']+window['scrollY']+0x4,_0xd44119=_0x2508e4['left']+window['scrollX'],_0xd44119+_0x2f4e06>_0x454001-0xa&&(_0xd44119=_0x454001-_0x2f4e06-0xa),_0xd44119<0xa&&(_0xd44119=0xa),this['mentionDropdown']['style']['position']='absolute',this['mentionDropdown']['style']['top']=_0x27c2c3+'px',this['mentionDropdown']['style']['left']=_0xd44119+'px';}['mentionNavigate'](_0x5943b7){const _0x4cc5d0=this['mentionState']['filteredUsers']['length'];if(_0x4cc5d0===0x0)return;this['mentionState']['selectedIndex']=(this['mentionState']['selectedIndex']+_0x5943b7+_0x4cc5d0)%_0x4cc5d0,this['updateMentionSelection']();}['updateMentionSelection'](){if(!this['mentionDropdown'])return;const _0x334962=this['mentionDropdown']['querySelectorAll']('.mention-option');_0x334962['forEach']((_0x5e10a2,_0x4fc80b)=>{_0x4fc80b===this['mentionState']['selectedIndex']?(_0x5e10a2['classList']['add']('mention-option-selected'),_0x5e10a2['scrollIntoView']({'block':'nearest'})):_0x5e10a2['classList']['remove']('mention-option-selected');});}['insertMention'](_0x2ed084){if(!_0x2ed084)return;const _0x282e56=window['getSelection']();if(!_0x282e56||_0x282e56['rangeCount']===0x0)return;const _0x3713ac=_0x282e56['getRangeAt'](0x0),_0x10f130=this['mentionState']['startNode'];if(!_0x10f130||_0x10f130['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x29ef17=_0x10f130['textContent']||'',_0xb1ef99=this['mentionState']['startOffset'],_0x4aeb0a=_0x3713ac['startOffset'],_0x221084=_0x29ef17['slice'](0x0,_0xb1ef99),_0x41555a=_0x29ef17['slice'](_0x4aeb0a),_0x501975=document['createElement']('span');_0x501975['className']='mention',_0x501975['setAttribute']('data-mention-user-id',_0x2ed084['id']),_0x501975['setAttribute']('contenteditable','false'),_0x501975['textContent']='@'+(_0x2ed084['name']||_0x2ed084['username']);const _0x1e5c6e=document['createTextNode'](_0x221084),_0x71886e=document['createTextNode']('\x20'+_0x41555a),_0x107b66=_0x10f130['parentNode'];_0x107b66['insertBefore'](_0x1e5c6e,_0x10f130),_0x107b66['insertBefore'](_0x501975,_0x10f130),_0x107b66['insertBefore'](_0x71886e,_0x10f130),_0x107b66['removeChild'](_0x10f130);const _0x53096f=document['createRange']();_0x53096f['setStart'](_0x71886e,0x1),_0x53096f['collapse'](!![]),_0x282e56['removeAllRanges'](),_0x282e56['addRange'](_0x53096f),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'](_0xa92d06){const _0x28f6dc=document['createElement']('div');return _0x28f6dc['textContent']=_0xa92d06,_0x28f6dc['innerHTML'];}['getInitials'](_0x5bf079){if(!_0x5bf079)return'?';const _0xc8e617=_0x5bf079['trim']()['split'](/\s+/);if(_0xc8e617['length']>=0x2)return(_0xc8e617[0x0][0x0]+_0xc8e617[_0xc8e617['length']-0x1][0x0])['toUpperCase']();return _0x5bf079['substring'](0x0,0x2)['toUpperCase']();}['getAvatarColorIndex'](_0x227249){if(!_0x227249)return 0x6;let _0x89cfe9=0x0;for(let _0x2009b2=0x0;_0x2009b2<_0x227249['length'];_0x2009b2++){_0x89cfe9=_0x227249['charCodeAt'](_0x2009b2)+((_0x89cfe9<<0x5)-_0x89cfe9);}return Math['abs'](_0x89cfe9)%0xa;}['destroy'](){this['_destroyed']=!![];this['_monacoEditor']&&(this['_monacoEditor']['dispose'](),this['_monacoEditor']=null);this['_sourceContainer']&&(this['_sourceContainer']['remove'](),this['_sourceContainer']=null);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 _0x257119 of this['attachmentObjectUrls']['values']()){try{URL['revokeObjectURL'](_0x257119);}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>','sourceToggle':'<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>'},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(_0x9139c8,_0x131528={}){this['element']=_0x9139c8,this['options']={'placeholder':_0x131528['placeholder']||'Start\x20typing...','editable':_0x131528['editable']!==![],'onChange':_0x131528['onChange']||null,'minHeight':_0x131528['minHeight']||'100px','toolbar':_0x131528['toolbar']||![],'onAddAttachments':_0x131528['onAddAttachments']||null,'resolveAttachmentUrl':_0x131528['resolveAttachmentUrl']||null,'isAttachmentNameTaken':_0x131528['isAttachmentNameTaken']||null,'fetchUsers':_0x131528['fetchUsers']||null,'sourceToggle':_0x131528['sourceToggle']||![],'sourceLineNumbers':_0x131528['sourceLineNumbers']||![]},this['_sourceMode']=![],this['_monacoEditor']=null,this['_monacoInitialized']=![],this['_monacoLoading']=![],this['_sourceContainer']=null,this['_sourceToggleBtn']=null,this['_destroyed']=![],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 _0x586d29=window['TurndownService'];this['turndownService']=new _0x586d29({'headingStyle':'atx','codeBlockStyle':'fenced','emDelimiter':'_','bulletListMarker':'-'}),this['attachmentObjectUrls']=new Map(),this['registerTurndownRules'](),this['init']();}['registerTurndownRules'](){this['turndownService']['addRule']('profoundAttachmentImage',{'filter':_0x568790=>{return _0x568790&&_0x568790['nodeName']==='IMG'&&_0x568790['getAttribute']&&_0x568790['getAttribute']('data-attachment-name');},'replacement':(_0x1e7b33,_0x3bbab7)=>{const _0x4bb10c=_0x3bbab7['getAttribute']('data-attachment-name')||'',_0x3c54c2=_0x3bbab7['getAttribute']('alt')||'',_0xf7513a=_0x4bb10c['trim'](),_0x4fcc4f=this['escapeAltText'](_0x3c54c2||_0xf7513a),_0x5c640c=encodeURIComponent(_0xf7513a);return'';}}),this['turndownService']['addRule']('profoundMention',{'filter':_0x37f28b=>{return _0x37f28b&&_0x37f28b['nodeName']==='SPAN'&&_0x37f28b['getAttribute']&&_0x37f28b['getAttribute']('data-mention-user-id');},'replacement':(_0x91b88f,_0x413423)=>{const _0x49dfcc=_0x413423['getAttribute']('data-mention-user-id')||'',_0x8df695=_0x413423['textContent']||'',_0xe7e970=_0x8df695['startsWith']('@')?_0x8df695['slice'](0x1):_0x8df695;return'['+_0xe7e970+'](mention:'+_0x49dfcc+')';}}),this['turndownService']['addRule']('profoundColoredText',{'filter':_0x1876c6=>{if(!_0x1876c6)return![];if(_0x1876c6['nodeName']==='FONT'&&_0x1876c6['getAttribute']&&_0x1876c6['getAttribute']('color'))return!![];if(_0x1876c6['nodeName']==='SPAN'&&_0x1876c6['style']&&_0x1876c6['style']['color']){if(_0x1876c6['getAttribute']&&_0x1876c6['getAttribute']('data-mention-user-id'))return![];return!![];}return![];},'replacement':(_0x4536b5,_0x38a846)=>{if(!_0x4536b5['trim']())return _0x4536b5;let _0x3d41b1='';if(_0x38a846['nodeName']==='FONT')_0x3d41b1=_0x38a846['getAttribute']('color')||'';else _0x38a846['style']&&_0x38a846['style']['color']&&(_0x3d41b1=this['rgbToHex'](_0x38a846['style']['color']));if(!_0x3d41b1)return _0x4536b5;return'{color:'+_0x3d41b1+'}'+_0x4536b5+'{/color}';}});}['rgbToHex'](_0x2d6241){if(!_0x2d6241)return'';if(_0x2d6241['startsWith']('#'))return _0x2d6241;const _0x5767b9=_0x2d6241['match'](/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(!_0x5767b9)return _0x2d6241;const _0x16e973=parseInt(_0x5767b9[0x1],0xa),_0x4343dd=parseInt(_0x5767b9[0x2],0xa),_0x131d4=parseInt(_0x5767b9[0x3],0xa);return'#'+[_0x16e973,_0x4343dd,_0x131d4]['map'](_0x183a30=>_0x183a30['toString'](0x10)['padStart'](0x2,'0'))['join']('')['toUpperCase']();}['escapeAltText'](_0x4935d9){return String(_0x4935d9||'')['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 _0x4a1229=this['element']['textContent']||this['element']['value']||'';_0x4a1229['trim']()&&this['setMarkdown'](_0x4a1229);}['createToolbar'](){this['toolbar']=document['createElement']('div'),this['toolbar']['className']='markdown-editor-toolbar',this['toolbarButtons']={};const _0x1e87b4=[{'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'}];_0x1e87b4['forEach'](_0x2e4706=>{if(_0x2e4706['separator']){const _0x40057f=document['createElement']('div');_0x40057f['className']='markdown-toolbar-separator',_0x40057f['style']['width']='1px',_0x40057f['style']['height']='16px',_0x40057f['style']['background']='var(--color-border)',_0x40057f['style']['margin']='0\x206px',_0x40057f['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x40057f);}else{if(_0x2e4706['isDropdown']){const _0x2ab85a=document['createElement']('div');_0x2ab85a['className']='markdown-toolbar-dropdown',_0x2ab85a['style']['position']='relative';const _0x25cd62=document['createElement']('button');_0x25cd62['type']='button',_0x25cd62['className']='markdown-editor-toolbar-btn\x20markdown-toolbar-dropdown-btn',_0x25cd62['tabIndex']=-0x1,_0x25cd62['innerHTML']=_0x2e4706['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>',_0x25cd62['title']=_0x2e4706['title'],_0x25cd62['dataset']['action']=_0x2e4706['action'];const _0x1a5ddc=document['createElement']('div');_0x1a5ddc['className']='markdown-toolbar-dropdown-menu',_0x1a5ddc['style']['display']='none';if(_0x2e4706['action']==='header')this['createHeaderDropdown'](_0x1a5ddc);else _0x2e4706['action']==='color'&&this['createColorDropdown'](_0x1a5ddc);_0x25cd62['addEventListener']('click',_0x4296d1=>{_0x4296d1['preventDefault'](),_0x4296d1['stopPropagation'](),this['toggleDropdown'](_0x1a5ddc,_0x25cd62);}),_0x2ab85a['appendChild'](_0x25cd62),_0x2ab85a['appendChild'](_0x1a5ddc),this['toolbar']['appendChild'](_0x2ab85a),this['toolbarButtons'][_0x2e4706['id']]={'button':_0x25cd62,'dropdown':_0x1a5ddc,'command':_0x2e4706['command'],'tagName':_0x2e4706['tagName']};}else{const _0x3a26f6=document['createElement']('button');_0x3a26f6['type']='button',_0x3a26f6['className']='markdown-editor-toolbar-btn',_0x3a26f6['tabIndex']=-0x1,_0x3a26f6['innerHTML']=_0x2e4706['icon'],_0x3a26f6['title']=_0x2e4706['title'],_0x3a26f6['dataset']['action']=_0x2e4706['action'],_0x3a26f6['addEventListener']('click',_0x4625f2=>{_0x4625f2['preventDefault'](),this['handleToolbarAction'](_0x2e4706['action']);}),this['toolbar']['appendChild'](_0x3a26f6),this['toolbarButtons'][_0x2e4706['id']]={'button':_0x3a26f6,'command':_0x2e4706['command'],'tagName':_0x2e4706['tagName']};}}});if(this['options']['sourceToggle']){const _0x414451=document['createElement']('div');_0x414451['style']['marginLeft']='auto',this['toolbar']['appendChild'](_0x414451);const _0x494486=document['createElement']('div');_0x494486['className']='markdown-toolbar-separator\x20markdown-source-toggle-separator',_0x494486['style']['width']='1px',_0x494486['style']['height']='16px',_0x494486['style']['background']='var(--color-border)',_0x494486['style']['margin']='0\x206px',_0x494486['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x494486);const _0x440c99=document['createElement']('button');_0x440c99['type']='button',_0x440c99['className']='markdown-editor-toolbar-btn\x20markdown-source-toggle-btn',_0x440c99['tabIndex']=-0x1,_0x440c99['innerHTML']=ICONS['sourceToggle'],_0x440c99['title']='Switch\x20to\x20source\x20mode',_0x440c99['addEventListener']('click',_0x10927b=>{_0x10927b['preventDefault'](),_0x10927b['stopPropagation'](),this['toggleSourceMode']();}),this['toolbar']['appendChild'](_0x440c99),this['_sourceToggleBtn']=_0x440c99;}document['addEventListener']('click',_0x3ea76e=>{!this['toolbar']['contains'](_0x3ea76e['target'])&&this['closeAllDropdowns']();});}['createHeaderDropdown'](_0x59dd45){const _0x2a3a7d=[{'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'}];_0x2a3a7d['forEach'](_0x2eca1f=>{const _0x1d0a12=document['createElement']('button');_0x1d0a12['type']='button',_0x1d0a12['className']='markdown-dropdown-item',_0x1d0a12['tabIndex']=-0x1,_0x1d0a12['innerHTML']='<span\x20style=\x22font-size:\x20'+(_0x2eca1f['level']===0x0?'14px':0x14-_0x2eca1f['level']*0x2+'px')+';\x20font-weight:\x20'+(_0x2eca1f['level']===0x0?'normal':'bold')+'\x22>'+_0x2eca1f['label']+'</span>',_0x1d0a12['addEventListener']('click',_0x2407c4=>{_0x2407c4['preventDefault'](),_0x2407c4['stopPropagation'](),this['applyHeader'](_0x2eca1f['level']),this['closeAllDropdowns']();}),_0x59dd45['appendChild'](_0x1d0a12);});}['createColorDropdown'](_0x525393){const _0x5a4cad=[{'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'}],_0x7249a8=document['createElement']('div');_0x7249a8['className']='markdown-color-grid',_0x7249a8['style']['display']='grid',_0x7249a8['style']['gridTemplateColumns']='repeat(3,\x201fr)',_0x7249a8['style']['gap']='4px',_0x7249a8['style']['padding']='8px',_0x5a4cad['forEach'](_0x12786e=>{const _0x2add02=document['createElement']('button');_0x2add02['type']='button',_0x2add02['className']='markdown-color-btn',_0x2add02['tabIndex']=-0x1,_0x2add02['style']['width']='24px',_0x2add02['style']['height']='24px',_0x2add02['style']['backgroundColor']=_0x12786e['value'],_0x2add02['style']['border']='1px\x20solid\x20var(--color-border)',_0x2add02['style']['borderRadius']='4px',_0x2add02['style']['cursor']='pointer',_0x2add02['title']=_0x12786e['label'],_0x2add02['addEventListener']('click',_0x1ed011=>{_0x1ed011['preventDefault'](),_0x1ed011['stopPropagation'](),this['applyColor'](_0x12786e['value']),this['closeAllDropdowns']();}),_0x7249a8['appendChild'](_0x2add02);}),_0x525393['appendChild'](_0x7249a8);const _0x5eccbd=document['createElement']('button');_0x5eccbd['type']='button',_0x5eccbd['className']='markdown-dropdown-item',_0x5eccbd['innerHTML']='<span>Remove\x20Color</span>',_0x5eccbd['style']['borderTop']='1px\x20solid\x20var(--color-border)',_0x5eccbd['style']['marginTop']='4px',_0x5eccbd['style']['paddingTop']='8px',_0x5eccbd['addEventListener']('click',_0x309c06=>{_0x309c06['preventDefault'](),_0x309c06['stopPropagation'](),this['removeColor'](),this['closeAllDropdowns']();}),_0x525393['appendChild'](_0x5eccbd);}['toggleDropdown'](_0x1964e7,_0x385cfe){const _0xd455a4=_0x1964e7['style']['display']!=='none';this['toolbar']&&this['closeAllDropdowns'](),!_0xd455a4&&(_0x1964e7['style']['display']='block',_0x385cfe['classList']['add']('active'));}['closeAllDropdowns'](){const _0xdcb4c8=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-menu');_0xdcb4c8['forEach'](_0x5db2e7=>_0x5db2e7['style']['display']='none');const _0x2ecde1=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-btn');_0x2ecde1['forEach'](_0x52002d=>_0x52002d['classList']['remove']('active'));}['applyHeader'](_0x5439ba){this['editor']['focus']();const _0x563bd1=window['getSelection']();if(!_0x563bd1||_0x563bd1['rangeCount']===0x0)return;const _0x1a71a2=_0x563bd1['getRangeAt'](0x0);let _0x320ab1=_0x1a71a2['startContainer'];while(_0x320ab1&&_0x320ab1!==this['editor']){if(_0x320ab1['nodeType']===Node['ELEMENT_NODE']){const _0x38bc3a=window['getComputedStyle'](_0x320ab1)['display'];if(_0x38bc3a==='block'||['P','H1','H2','H3','H4','H5','H6','DIV']['includes'](_0x320ab1['tagName']))break;}_0x320ab1=_0x320ab1['parentNode'];}_0x5439ba===0x0?document['execCommand']('formatBlock',![],'p'):document['execCommand']('formatBlock',![],'h'+_0x5439ba),this['editor']['dispatchEvent'](new Event('input'));}['applyColor'](_0x28e0d3){this['editor']['focus'](),document['execCommand']('foreColor',![],_0x28e0d3),this['editor']['dispatchEvent'](new Event('input'));}['removeColor'](){this['editor']['focus'](),document['execCommand']('removeFormat',![],null),this['editor']['dispatchEvent'](new Event('input'));}['handleToolbarAction'](_0x3ada1c){this['editor']['focus']();switch(_0x3ada1c){case'bold':case'italic':case'strikeThrough':case'insertUnorderedList':case'insertOrderedList':document['execCommand'](_0x3ada1c,![],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 _0x3ae16f=document['createElement']('div');_0x3ae16f['className']='markdown-editor-link-modal',_0x3ae16f['hidden']=!![],_0x3ae16f['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'](_0x3ae16f),this['linkDialog']=_0x3ae16f,this['linkDialogElements']={'backdrop':_0x3ae16f['querySelector']('.markdown-editor-link-backdrop'),'title':_0x3ae16f['querySelector']('.markdown-editor-link-title'),'close':_0x3ae16f['querySelector']('.markdown-editor-link-close'),'form':_0x3ae16f['querySelector']('.markdown-editor-link-form'),'urlInput':_0x3ae16f['querySelector']('[data-link-field=\x22url\x22]'),'textInput':_0x3ae16f['querySelector']('[data-link-field=\x22text\x22]'),'remove':_0x3ae16f['querySelector']('[data-action=\x22remove\x22]'),'cancel':_0x3ae16f['querySelector']('[data-action=\x22cancel\x22]'),'submit':_0x3ae16f['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',_0x5271a9=>{_0x5271a9['preventDefault'](),this['applyLinkDialogResult']();}),this['linkDialog']['addEventListener']('keydown',_0x3a7ad6=>{_0x3a7ad6['key']==='Escape'&&(_0x3a7ad6['preventDefault'](),this['closeLinkDialog']({'restoreSelection':!![]}));});}['openLinkDialog'](){const _0x14a4a5=window['getSelection']();if(!_0x14a4a5||_0x14a4a5['rangeCount']===0x0)return;const _0x4165b3=_0x14a4a5['getRangeAt'](0x0),_0x1c2aea=this['editor']['contains'](_0x4165b3['commonAncestorContainer'])||this['editor']===_0x4165b3['commonAncestorContainer'];if(!_0x1c2aea)return;this['toolbar']&&this['closeAllDropdowns']();this['ensureLinkDialog']();const _0x3a5460=_0x4165b3['cloneRange'](),_0x108e31=this['findLinkAtRange'](_0x3a5460),_0xfbefa1=_0x108e31?_0x108e31['getAttribute']('href')||'':'',_0x2b50f3=_0x108e31?_0x108e31['textContent']||'':_0x3a5460['toString']();this['linkDialogContext']={'range':_0x3a5460,'existingLink':_0x108e31,'selectedText':_0x2b50f3},this['linkDialogElements']['title']['textContent']=_0x108e31?'Edit\x20Link':'Insert\x20Link',this['linkDialogElements']['submit']['textContent']=_0x108e31?'Save\x20Link':'Insert\x20Link',this['linkDialogElements']['remove']['hidden']=!_0x108e31,this['linkDialogElements']['urlInput']['value']=_0xfbefa1,this['linkDialogElements']['textInput']['value']=_0x2b50f3,this['linkDialog']['hidden']=![],this['linkDialogElements']['urlInput']['focus'](),this['linkDialogElements']['urlInput']['select']();}['closeLinkDialog']({restoreSelection:restoreSelection=![]}={}){if(!this['linkDialog'])return;const _0x17d5a2=this['linkDialogContext'];this['linkDialog']['hidden']=!![],restoreSelection&&_0x17d5a2?.['range']&&(this['editor']['focus'](),this['restoreRange'](_0x17d5a2['range'])),this['linkDialogContext']=null;}['applyLinkDialogResult']({remove:remove=![]}={}){if(!this['linkDialog']||!this['linkDialogContext'])return;const _0x2d0850=this['linkDialogContext'],_0x39af89=(this['linkDialogElements']['urlInput']['value']||'')['trim'](),_0x50e687=this['linkDialogElements']['textInput']['value']||'',_0x3213d6=_0x50e687['trim']();if(!remove&&!_0x39af89){this['linkDialogElements']['urlInput']['focus']();return;}this['closeLinkDialog'](),this['editor']['focus'](),this['restoreRange'](_0x2d0850['range']);if(remove)_0x2d0850['existingLink']&&_0x2d0850['existingLink']['parentNode']?this['unwrapLinkElement'](_0x2d0850['existingLink']):document['execCommand']('unlink',![],null);else{if(_0x2d0850['existingLink']&&_0x2d0850['existingLink']['parentNode'])_0x2d0850['existingLink']['setAttribute']('href',_0x39af89),_0x2d0850['existingLink']['textContent']=_0x3213d6||_0x39af89;else{const _0x2ac0fd=window['getSelection']();if(!_0x2ac0fd||_0x2ac0fd['rangeCount']===0x0)return;const _0x29ecfd=_0x2ac0fd['getRangeAt'](0x0),_0x26c187=(_0x2d0850['selectedText']||'')['trim'](),_0x3f6266=_0x3213d6||_0x26c187||_0x39af89;_0x29ecfd['deleteContents']();const _0x2f90d0=document['createElement']('a');_0x2f90d0['href']=_0x39af89,_0x2f90d0['textContent']=_0x3f6266,_0x29ecfd['insertNode'](_0x2f90d0),_0x29ecfd['setStartAfter'](_0x2f90d0),_0x29ecfd['collapse'](!![]),_0x2ac0fd['removeAllRanges'](),_0x2ac0fd['addRange'](_0x29ecfd);}}this['addLinkHints'](),this['updateToolbarState'](),this['editor']['dispatchEvent'](new Event('input'));}['ensureLinkDialogStyles'](){if(document['getElementById'](LINK_DIALOG_STYLE_ID))return;const _0x274150=document['createElement']('style');_0x274150['id']=LINK_DIALOG_STYLE_ID,_0x274150['textContent']=LINK_DIALOG_STYLES,document['head']['appendChild'](_0x274150);}['restoreRange'](_0x8035d5){const _0x3182e3=window['getSelection']();if(!_0x3182e3)return;try{_0x3182e3['removeAllRanges'](),_0x3182e3['addRange'](_0x8035d5);return;}catch(_0x7cbb95){}const _0x29c644=document['createRange']();_0x29c644['selectNodeContents'](this['editor']),_0x29c644['collapse'](![]),_0x3182e3['removeAllRanges'](),_0x3182e3['addRange'](_0x29c644);}['findLinkAtRange'](_0x1603aa){if(!_0x1603aa)return null;const _0x5be2e7=this['findParentLink'](_0x1603aa['startContainer']);if(_0x1603aa['collapsed'])return _0x5be2e7;const _0x1a8c67=this['findParentLink'](_0x1603aa['endContainer']);if(_0x5be2e7&&_0x5be2e7===_0x1a8c67)return _0x5be2e7;if(_0x5be2e7&&_0x5be2e7['contains'](_0x1603aa['endContainer']))return _0x5be2e7;if(_0x1a8c67&&_0x1a8c67['contains'](_0x1603aa['startContainer']))return _0x1a8c67;return null;}['findParentLink'](_0x3ed218){let _0x248396=_0x3ed218;while(_0x248396&&_0x248396!==this['editor']){if(_0x248396['nodeType']===Node['ELEMENT_NODE']&&_0x248396['tagName']==='A'){const _0x34687d=_0x248396['getAttribute']('href')||'';if(_0x34687d['startsWith']('mention:'))return null;return _0x248396;}_0x248396=_0x248396['parentNode'];}return null;}['unwrapLinkElement'](_0x4b3411){const _0x4c93fd=_0x4b3411['parentNode'];if(!_0x4c93fd)return;while(_0x4b3411['firstChild']){_0x4c93fd['insertBefore'](_0x4b3411['firstChild'],_0x4b3411);}_0x4c93fd['removeChild'](_0x4b3411);}['isSelectionInTag'](_0x462069){const _0x27bf88=window['getSelection']();if(!_0x27bf88||_0x27bf88['rangeCount']===0x0)return![];let _0x1c3609=_0x27bf88['anchorNode'];while(_0x1c3609&&_0x1c3609!==this['editor']){if(_0x1c3609['nodeType']===Node['ELEMENT_NODE']&&_0x1c3609['tagName']===_0x462069)return!![];_0x1c3609=_0x1c3609['parentNode'];}return![];}['updateToolbarState'](){if(!this['toolbarButtons'])return;for(const [_0x29909d,_0x340624]of Object['entries'](this['toolbarButtons'])){let _0x3c66b0=![];if(_0x340624['command'])try{_0x3c66b0=document['queryCommandState'](_0x340624['command']);}catch(_0x442b83){_0x3c66b0=![];}else _0x340624['tagName']&&(_0x3c66b0=this['isSelectionInTag'](_0x340624['tagName']));_0x340624['button']['classList']['toggle']('active',_0x3c66b0);}}['bindEvents'](){this['editor']['addEventListener']('keydown',_0x304172=>this['handleKeydown'](_0x304172)),this['editor']['addEventListener']('input',_0x1c243c=>{this['handleMentionInput'](_0x1c243c),this['handleAutoFormat'](_0x1c243c);}),this['editor']['addEventListener']('input',()=>{const _0x29a3c3=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');!_0x29a3c3&&(this['editor']['innerHTML']='');this['updatePlaceholder']();const _0x172c48=this['getMarkdown']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x172c48:this['element']['textContent']=_0x172c48,this['options']['onChange']&&this['options']['onChange'](_0x172c48);}),this['editor']['addEventListener']('paste',_0x7cbfee=>this['handlePaste'](_0x7cbfee)),this['editor']['addEventListener']('dragover',_0x1d9183=>this['handleDragOver'](_0x1d9183)),this['editor']['addEventListener']('drop',_0x17e0f1=>this['handleDrop'](_0x17e0f1)),this['editor']['addEventListener']('dragstart',_0x463d9f=>this['handleDragStart'](_0x463d9f)),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']=_0x3d75f9=>this['handleLinkClick'](_0x3d75f9),this['editor']['addEventListener']('click',this['linkClickHandler']),this['linkMouseEnterHandler']=_0x4e2901=>this['handleLinkMouseEnter'](_0x4e2901),this['linkMouseLeaveHandler']=_0x203d08=>this['handleLinkMouseLeave'](_0x203d08),this['editor']['addEventListener']('mouseover',this['linkMouseEnterHandler']),this['editor']['addEventListener']('mouseout',this['linkMouseLeaveHandler']),this['updatePlaceholder']();}['handleAutoFormat'](_0x33109f){if(_0x33109f['inputType']==='deleteContentBackward')return;const _0x18ae47=window['getSelection']();if(!_0x18ae47||_0x18ae47['rangeCount']===0x0)return;const _0x34953f=_0x18ae47['getRangeAt'](0x0),_0x58ecb7=_0x34953f['startContainer'];if(_0x58ecb7['nodeType']!==Node['TEXT_NODE'])return;if(this['isSelectionInTag']('CODE')||this['isSelectionInTag']('PRE'))return;const _0x331779=_0x58ecb7['textContent'],_0x36f8fc=_0x34953f['startOffset'],_0x394ff9=_0x331779['slice'](0x0,_0x36f8fc);if(_0x394ff9['endsWith']('```')){_0x34953f['setStart'](_0x58ecb7,_0x36f8fc-0x3),_0x34953f['setEnd'](_0x58ecb7,_0x36f8fc),_0x34953f['deleteContents'](),this['insertCodeBlock']();return;}const _0x526ed0=/`([^`]+)`$/,_0x1f9b77=_0x394ff9['match'](_0x526ed0);if(_0x1f9b77){const _0xd092b=_0x1f9b77[0x1];if(_0xd092b){const _0x4ad000=_0x1f9b77['index'],_0x295123=_0x4ad000+_0xd092b['length']+0x2;_0x34953f['setStart'](_0x58ecb7,_0x4ad000),_0x34953f['setEnd'](_0x58ecb7,_0x36f8fc),_0x34953f['deleteContents']();const _0xd28822=document['createElement']('code');_0xd28822['textContent']=_0xd092b,_0x34953f['insertNode'](_0xd28822),_0x34953f['setStartAfter'](_0xd28822),_0x34953f['setEndAfter'](_0xd28822);const _0xcd7b92=document['createTextNode']('');_0x34953f['insertNode'](_0xcd7b92),_0x34953f['setStartAfter'](_0xcd7b92),_0x34953f['setEndAfter'](_0xcd7b92),_0x18ae47['removeAllRanges'](),_0x18ae47['addRange'](_0x34953f);return;}}const _0x50cbd4=_0x394ff9['match'](/^[-*][\s\u00A0]$/);if(_0x50cbd4&&this['isAtStartOfBlock'](_0x58ecb7)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x34953f['setStart'](_0x58ecb7,Math['max'](_0x36f8fc-0x2,0x0)),_0x34953f['setEnd'](_0x58ecb7,_0x36f8fc),_0x34953f['deleteContents']();const _0x51bd41=this['ensureListInsertionAnchor'](_0x58ecb7);document['execCommand']('insertUnorderedList',![],null);_0x51bd41&&_0x51bd41['parentNode']&&_0x51bd41['parentNode']['removeChild'](_0x51bd41);this['updateToolbarState']();return;}const _0x5cf081=_0x394ff9['match'](/^1\.[\s\u00A0]$/);if(_0x5cf081&&this['isAtStartOfBlock'](_0x58ecb7)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x34953f['setStart'](_0x58ecb7,Math['max'](_0x36f8fc-0x3,0x0)),_0x34953f['setEnd'](_0x58ecb7,_0x36f8fc),_0x34953f['deleteContents']();const _0x46bd87=this['ensureListInsertionAnchor'](_0x58ecb7);document['execCommand']('insertOrderedList',![],null);_0x46bd87&&_0x46bd87['parentNode']&&_0x46bd87['parentNode']['removeChild'](_0x46bd87);this['updateToolbarState']();return;}}['isAtStartOfBlock'](_0x1a5886){let _0x5cee70=_0x1a5886;while(_0x5cee70&&_0x5cee70!==this['editor']){const _0x55d35f=_0x5cee70['parentNode'];if(!_0x55d35f)break;const _0x10d3b7=_0x55d35f['tagName'];if(_0x10d3b7==='DIV'||_0x10d3b7==='P'||_0x10d3b7==='LI'||_0x55d35f===this['editor']){let _0x3e0354=_0x55d35f['firstChild'];while(_0x3e0354&&(_0x3e0354['nodeType']===Node['TEXT_NODE']&&_0x3e0354['textContent']===''||_0x3e0354['nodeType']===Node['ELEMENT_NODE']&&_0x3e0354['tagName']==='BR')){_0x3e0354=_0x3e0354['nextSibling'];}return _0x3e0354===_0x1a5886||_0x3e0354===_0x5cee70;}_0x5cee70=_0x55d35f;}if(_0x5cee70===this['editor']||_0x1a5886['parentNode']===this['editor']){let _0x262cb7=this['editor']['firstChild'];while(_0x262cb7&&(_0x262cb7['nodeType']===Node['TEXT_NODE']&&_0x262cb7['textContent']===''||_0x262cb7['nodeType']===Node['ELEMENT_NODE']&&_0x262cb7['tagName']==='BR')){_0x262cb7=_0x262cb7['nextSibling'];}return _0x262cb7===_0x1a5886;}return![];}['getClosestBlockElement'](_0x341c81){let _0x4deedd=_0x341c81;while(_0x4deedd&&_0x4deedd!==this['editor']){const _0x3d027d=_0x4deedd['parentNode'];if(!_0x3d027d)break;const _0x2a0a4a=_0x3d027d['tagName'];if(_0x2a0a4a==='DIV'||_0x2a0a4a==='P'||_0x2a0a4a==='LI'||_0x3d027d===this['editor'])return _0x3d027d;_0x4deedd=_0x3d027d;}return this['editor'];}['ensureListInsertionAnchor'](_0x57cf3d){const _0x11d549=window['getSelection']();if(!_0x11d549||_0x11d549['rangeCount']===0x0)return null;const _0x390a1e=this['getClosestBlockElement'](_0x57cf3d);if(!_0x390a1e||_0x390a1e===this['editor'])return null;const _0x4d2aa0=_0x390a1e['textContent']['replace'](/\u200B/g,'');if(_0x4d2aa0!=='')return null;const _0x58278e=document['createTextNode']('');_0x390a1e['appendChild'](_0x58278e);const _0x8e062f=document['createRange']();return _0x8e062f['setStart'](_0x58278e,0x1),_0x8e062f['setEnd'](_0x58278e,0x1),_0x11d549['removeAllRanges'](),_0x11d549['addRange'](_0x8e062f),_0x58278e;}['getContainingListItem'](){const _0x63610c=window['getSelection']();if(!_0x63610c||_0x63610c['rangeCount']===0x0)return null;let _0x2edd86=_0x63610c['anchorNode'];while(_0x2edd86&&_0x2edd86!==this['editor']){if(_0x2edd86['nodeType']===Node['ELEMENT_NODE']&&_0x2edd86['tagName']==='LI')return _0x2edd86;_0x2edd86=_0x2edd86['parentNode'];}return null;}['isEmptyListItem'](_0x4c11c2){if(!_0x4c11c2)return![];const _0x134ac7=_0x4c11c2['textContent']['replace'](/\u200B/g,'')['trim']();if(_0x134ac7!=='')return![];const _0x4a32a3=_0x4c11c2['querySelector']('img');if(_0x4a32a3)return![];const _0x2ad4bb=_0x4c11c2['querySelector']('ul,\x20ol');if(_0x2ad4bb)return![];return!![];}['isCursorAtStartOfListItem'](_0x22c8f7){if(!_0x22c8f7)return![];const _0x400f20=window['getSelection']();if(!_0x400f20||_0x400f20['rangeCount']===0x0||!_0x400f20['isCollapsed'])return![];const _0x41d969=_0x400f20['getRangeAt'](0x0),_0x50657e=_0x41d969['startContainer'];if(_0x50657e!==_0x22c8f7&&!_0x22c8f7['contains'](_0x50657e))return![];const _0x3ab92d=_0x41d969['cloneRange']();_0x3ab92d['setStart'](_0x22c8f7,0x0),_0x3ab92d['setEnd'](_0x50657e,_0x41d969['startOffset']);const _0x5c0e57=_0x3ab92d['toString']()['replace'](/\u200B/g,'')['replace'](/\u00A0/g,'\x20');return _0x5c0e57['trim']()==='';}['indentListItem'](_0x52f13e){const _0x4a871d=_0x52f13e['previousElementSibling'];if(!_0x4a871d||_0x4a871d['tagName']!=='LI')return;const _0x276c35=_0x52f13e['parentNode'],_0x6131ff=_0x276c35['tagName'];let _0x491500=_0x4a871d['querySelector'](':scope\x20>\x20ul,\x20:scope\x20>\x20ol');!_0x491500&&(_0x491500=document['createElement'](_0x6131ff),_0x4a871d['appendChild'](_0x491500)),_0x491500['appendChild'](_0x52f13e),this['placeCursorInListItem'](_0x52f13e);}['outdentListItem'](_0x2df6fe){const _0x194394=_0x2df6fe['parentNode'];if(!_0x194394||_0x194394['tagName']!=='UL'&&_0x194394['tagName']!=='OL')return;const _0x5ced7c=_0x194394['parentNode'];if(_0x5ced7c&&_0x5ced7c['tagName']==='LI'){const _0xc536f6=_0x5ced7c['parentNode'];_0xc536f6['insertBefore'](_0x2df6fe,_0x5ced7c['nextSibling']),_0x194394['children']['length']===0x0&&_0x194394['remove'](),this['placeCursorInListItem'](_0x2df6fe);}else return;}['exitListOnEmptyBullet'](_0x295812){const _0x34c6e6=_0x295812['parentNode'];if(!_0x34c6e6)return;const _0x5cd190=_0x34c6e6['parentNode'];if(_0x5cd190&&_0x5cd190['tagName']==='LI'){this['outdentListItem'](_0x295812);return;}const _0x156ef3=_0x34c6e6['parentNode'],_0x418bf3=document['createElement']('p');_0x418bf3['innerHTML']='<br>',_0x156ef3['insertBefore'](_0x418bf3,_0x34c6e6['nextSibling']),_0x295812['remove']();_0x34c6e6['children']['length']===0x0&&_0x34c6e6['remove']();const _0x44bb2e=window['getSelection'](),_0x5c9849=document['createRange']();_0x5c9849['setStart'](_0x418bf3,0x0),_0x5c9849['collapse'](!![]),_0x44bb2e['removeAllRanges'](),_0x44bb2e['addRange'](_0x5c9849);}['placeCursorInListItem'](_0x2aa870){const _0x1edc6=window['getSelection'](),_0x1e892c=document['createRange'](),_0xae266a=document['createTreeWalker'](_0x2aa870,NodeFilter['SHOW_TEXT'],null,![]),_0x99254a=_0xae266a['nextNode']();_0x99254a?_0x1e892c['setStart'](_0x99254a,0x0):_0x1e892c['setStart'](_0x2aa870,0x0),_0x1e892c['collapse'](!![]),_0x1edc6['removeAllRanges'](),_0x1edc6['addRange'](_0x1e892c);}['handleLinkClick'](_0x1ae9cf){const _0x38e3f8=this['isMac']?_0x1ae9cf['metaKey']:_0x1ae9cf['ctrlKey'];if(!_0x38e3f8)return;let _0xd4be1=_0x1ae9cf['target'];while(_0xd4be1&&_0xd4be1!==this['editor']){if(_0xd4be1['tagName']==='A'){_0x1ae9cf['preventDefault'](),_0x1ae9cf['stopPropagation']();const _0x125aa0=_0xd4be1['getAttribute']('href');if(!_0x125aa0)return;if(_0x125aa0['startsWith']('mention:'))return;const _0x8454e0=/^https?:\/\//i['test'](_0x125aa0);_0x8454e0?window['open'](_0x125aa0,'_blank','noopener,noreferrer'):window['location']['href']=_0x125aa0;return;}_0xd4be1=_0xd4be1['parentNode'];}}['handleLinkMouseEnter'](_0xe65e94){const _0x17d724=_0xe65e94['target'];if(_0x17d724['tagName']!=='A')return;const _0x2c4843=_0x17d724['getAttribute']('href')||'';if(_0x2c4843['startsWith']('mention:'))return;this['linkTooltipTimeout']&&clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=setTimeout(()=>{this['showLinkTooltip'](_0x17d724);},0x12c);}['handleLinkMouseLeave'](_0x47b235){const _0x49edc1=_0x47b235['target'];if(_0x49edc1['tagName']!=='A')return;this['linkTooltipTimeout']&&(clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=null),this['hideLinkTooltip']();}['showLinkTooltip'](_0x8662a3){!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 _0x36c180=_0x8662a3['getBoundingClientRect'](),_0x523a12=this['linkTooltip']['getBoundingClientRect']();let _0x380326=_0x36c180['bottom']+0x4,_0x4d6feb=_0x36c180['left']+_0x36c180['width']/0x2;_0x380326+0x1e>window['innerHeight']&&(_0x380326=_0x36c180['top']-0x1e);const _0x445206=0x78;if(_0x4d6feb-_0x445206/0x2<0xa)_0x4d6feb=_0x445206/0x2+0xa;else _0x4d6feb+_0x445206/0x2>window['innerWidth']-0xa&&(_0x4d6feb=window['innerWidth']-_0x445206/0x2-0xa);this['linkTooltip']['style']['top']=_0x380326+'px',this['linkTooltip']['style']['left']=_0x4d6feb+'px',this['linkTooltip']['style']['transform']='translateX(-50%)',this['linkTooltip']['classList']['add']('visible');}['hideLinkTooltip'](){this['linkTooltip']&&this['linkTooltip']['classList']['remove']('visible');}['handleKeydown'](_0x50ac96){if(this['mentionState']['active']){if(_0x50ac96['key']==='ArrowDown'){_0x50ac96['preventDefault'](),this['mentionNavigate'](0x1);return;}if(_0x50ac96['key']==='ArrowUp'){_0x50ac96['preventDefault'](),this['mentionNavigate'](-0x1);return;}if(_0x50ac96['key']==='Enter'||_0x50ac96['key']==='Tab'){if(this['mentionState']['filteredUsers']['length']>0x0){_0x50ac96['preventDefault'](),this['insertMention'](this['mentionState']['filteredUsers'][this['mentionState']['selectedIndex']]);return;}}if(_0x50ac96['key']==='Escape'){_0x50ac96['preventDefault'](),this['closeMentionDropdown']();return;}}if(_0x50ac96['key']==='Tab'&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x577e4c=this['getContainingListItem']();if(_0x577e4c&&this['isCursorAtStartOfListItem'](_0x577e4c)){_0x50ac96['preventDefault']();_0x50ac96['shiftKey']?this['outdentListItem'](_0x577e4c):this['indentListItem'](_0x577e4c);this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x50ac96['key']==='Enter'&&!_0x50ac96['shiftKey']&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x5defb4=this['getContainingListItem']();if(_0x5defb4&&this['isEmptyListItem'](_0x5defb4)){_0x50ac96['preventDefault'](),this['exitListOnEmptyBullet'](_0x5defb4),this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x50ac96['key']==='Enter'&&!_0x50ac96['shiftKey']&&this['isSelectionInTag']('PRE')){_0x50ac96['preventDefault']();const _0x22a9f8=window['getSelection']();if(_0x22a9f8['rangeCount']>0x0){const _0x3f6a0f=_0x22a9f8['getRangeAt'](0x0);_0x3f6a0f['deleteContents']();const _0x4002c8=document['createTextNode']('\x0a');_0x3f6a0f['insertNode'](_0x4002c8),_0x3f6a0f['setStartAfter'](_0x4002c8),_0x3f6a0f['setEndAfter'](_0x4002c8),_0x22a9f8['removeAllRanges'](),_0x22a9f8['addRange'](_0x3f6a0f),this['handleInput']();}return;}(_0x50ac96['ctrlKey']||_0x50ac96['metaKey'])&&_0x50ac96['key']==='b'&&(_0x50ac96['preventDefault'](),document['execCommand']('bold',![],null));(_0x50ac96['ctrlKey']||_0x50ac96['metaKey'])&&_0x50ac96['key']==='i'&&(_0x50ac96['preventDefault'](),document['execCommand']('italic',![],null));if((_0x50ac96['ctrlKey']||_0x50ac96['metaKey'])&&_0x50ac96['key']==='k'){_0x50ac96['preventDefault'](),this['openLinkDialog']();return;}}['handlePaste'](_0x44ef85){const _0x443f08=_0x44ef85['clipboardData'];if(_0x443f08&&this['options']['onAddAttachments']){const _0x41f9dd=this['extractImageFilesFromClipboard'](_0x443f08);if(_0x41f9dd['length']>0x0){_0x44ef85['preventDefault'](),this['addAndInsertImages'](_0x41f9dd);return;}}_0x44ef85['preventDefault']();const _0x442113=_0x44ef85['clipboardData']['getData']('text/html');if(_0x442113&&_0x442113['trim']()){const _0x228bab=this['convertPastedHtmlToMarkdown'](_0x442113);if(_0x228bab&&_0x228bab['trim']()){this['insertMarkdownAsRichText'](_0x228bab);return;}}const _0x47ec65=_0x44ef85['clipboardData']['getData']('text/plain');document['execCommand']('insertText',![],_0x47ec65);}['convertPastedHtmlToMarkdown'](_0x4e7d33){const _0x417d53=document['createElement']('div');_0x417d53['innerHTML']=_0x4e7d33;const _0x3650d8=_0x417d53['querySelectorAll']('style,\x20script,\x20meta,\x20link,\x20head,\x20title');_0x3650d8['forEach'](_0x1ffd56=>_0x1ffd56['remove']());const _0x24b9fe=_0x417d53['querySelectorAll']('*');_0x24b9fe['forEach'](_0x393e3b=>{const _0x2ce0ff=Array['from'](_0x393e3b['attributes']);_0x2ce0ff['forEach'](_0x11dc68=>{_0x11dc68['name']['startsWith']('data-')&&_0x11dc68['name']!=='data-attachment-name'&&_0x11dc68['name']!=='data-mention-user-id'&&_0x393e3b['removeAttribute'](_0x11dc68['name']);});}),_0x417d53['querySelectorAll']('font[color]')['forEach'](_0x119f6b=>{_0x119f6b['replaceWith'](..._0x119f6b['childNodes']);}),_0x417d53['querySelectorAll']('span')['forEach'](_0x1ae50d=>{_0x1ae50d['style']['color']&&_0x1ae50d['style']['removeProperty']('color'),!_0x1ae50d['getAttribute']('style')&&!_0x1ae50d['getAttribute']('data-mention-user-id')&&!_0x1ae50d['getAttribute']('data-attachment-name')&&_0x1ae50d['replaceWith'](..._0x1ae50d['childNodes']);});try{return this['turndownService']['turndown'](_0x417d53['innerHTML']);}catch(_0x4fa2ff){return console['warn']('Failed\x20to\x20convert\x20HTML\x20to\x20markdown:',_0x4fa2ff),null;}}['insertMarkdownAsRichText'](_0x3b796c){const _0x233012=window['marked'];if(!_0x233012){document['execCommand']('insertText',![],_0x3b796c);return;}try{const _0x369a0f=this['preprocessColorSyntax'](_0x3b796c),_0x5cee11=_0x233012['parse'](_0x369a0f),_0x23d430=document['createElement']('div');_0x23d430['innerHTML']=_0x5cee11,this['processHtmlForEditor'](_0x23d430),document['execCommand']('insertHTML',![],_0x23d430['innerHTML']);}catch(_0x1adeae){console['warn']('Failed\x20to\x20convert\x20markdown\x20to\x20HTML:',_0x1adeae),document['execCommand']('insertText',![],_0x3b796c);}}['processHtmlForEditor'](_0x8ab64){const _0x44d60b=_0x8ab64['querySelectorAll']('pre');_0x44d60b['forEach'](_0x2c5764=>{const _0x1e3888=_0x2c5764['querySelector']('code');if(_0x1e3888){const _0x3e52d2=Array['from'](_0x1e3888['classList'])['find'](_0x4247cc=>_0x4247cc['startsWith']('language-')),_0x260777=_0x3e52d2?_0x3e52d2['replace']('language-',''):'',_0x36f346=document['createElement']('pre');_0x260777&&_0x36f346['setAttribute']('data-language',_0x260777),_0x36f346['textContent']=_0x1e3888['textContent'],_0x2c5764['replaceWith'](_0x36f346);}});const _0x15a446=_0x8ab64['querySelectorAll']('a');_0x15a446['forEach'](_0x3dada2=>{_0x3dada2['setAttribute']('target','_blank'),_0x3dada2['setAttribute']('rel','noopener\x20noreferrer');});}['handleDragStart'](_0x18f500){const _0x1b3e3f=_0x18f500['target'];if(!_0x1b3e3f||_0x1b3e3f['tagName']!=='IMG')return;if(!_0x18f500['dataTransfer'])return;const _0x3b4384=_0x1b3e3f['getAttribute']('data-attachment-name')||'';try{_0x18f500['dataTransfer']['setData'](INTERNAL_DRAG_MIME,_0x3b4384||'1');}catch{}_0x18f500['dataTransfer']['effectAllowed']='move';}['handleDragOver'](_0x36d47b){if(!this['isExternalFileTransfer'](_0x36d47b['dataTransfer']))return;_0x36d47b['preventDefault'](),_0x36d47b['dataTransfer']['dropEffect']='copy';}['handleDrop'](_0x43bcc7){if(!this['isExternalFileTransfer'](_0x43bcc7['dataTransfer']))return;const _0x2799d4=_0x43bcc7['dataTransfer'],_0x370099=Array['from'](_0x2799d4['files']||[])['filter'](_0x23f0bf=>_0x23f0bf&&typeof _0x23f0bf['type']==='string'),_0x296be8=_0x370099['filter'](_0x370a46=>_0x370a46['type']['startsWith']('image/'));if(_0x296be8['length']===0x0)return;_0x43bcc7['preventDefault'](),_0x43bcc7['stopPropagation'](),this['cleanupParentDragState'](),this['moveSelectionToDropPoint'](_0x43bcc7),this['addAndInsertImages'](_0x296be8);}['cleanupParentDragState'](){let _0x3caad5=this['editor']['parentElement'];while(_0x3caad5){_0x3caad5['classList']&&_0x3caad5['classList']['contains']('drag-over')&&_0x3caad5['classList']['remove']('drag-over'),_0x3caad5=_0x3caad5['parentElement'];}}['isExternalFileTransfer'](_0x29bada){if(!_0x29bada)return![];const _0x1ae4dd=Array['from'](_0x29bada['types']||[]);if(!_0x1ae4dd['includes']('Files'))return![];if(_0x1ae4dd['includes'](INTERNAL_DRAG_MIME))return![];if(_0x29bada['files']&&_0x29bada['files']['length']>0x0)return!![];if(_0x29bada['items']&&Array['from'](_0x29bada['items'])['some'](_0x2c05a4=>_0x2c05a4['kind']==='file'))return!![];return![];}['moveSelectionToDropPoint'](_0x54ec68){const _0x19bdd9=_0x54ec68['clientX'],_0x2aef39=_0x54ec68['clientY'];let _0x4f1849=null;if(document['caretRangeFromPoint'])_0x4f1849=document['caretRangeFromPoint'](_0x19bdd9,_0x2aef39);else{if(document['caretPositionFromPoint']){const _0x58aa9a=document['caretPositionFromPoint'](_0x19bdd9,_0x2aef39);_0x58aa9a&&(_0x4f1849=document['createRange'](),_0x4f1849['setStart'](_0x58aa9a['offsetNode'],_0x58aa9a['offset']),_0x4f1849['collapse'](!![]));}}if(_0x4f1849){const _0x2c3cbb=window['getSelection']();_0x2c3cbb['removeAllRanges'](),_0x2c3cbb['addRange'](_0x4f1849);}}['extractImageFilesFromClipboard'](_0x37c972){const _0x15f263=Array['from'](_0x37c972['items']||[]),_0x2a30bd=[];for(const _0x3d0c6b of _0x15f263){if(_0x3d0c6b['kind']==='file'&&_0x3d0c6b['type']&&_0x3d0c6b['type']['startsWith']('image/')){const _0x43f328=_0x3d0c6b['getAsFile']();if(_0x43f328)_0x2a30bd['push'](_0x43f328);}}return _0x2a30bd;}['addAndInsertImages'](_0x1464eb){const _0x538ff6=_0x1464eb['map'](_0x2ab08b=>this['prepareAttachmentFile'](_0x2ab08b))['filter'](Boolean);if(_0x538ff6['length']===0x0)return;const _0x5b93f1=_0x538ff6['map'](_0x2cc99a=>_0x2cc99a['file']);try{this['options']['onAddAttachments'](_0x5b93f1);}catch(_0x2efe0e){console['error']('Failed\x20to\x20add\x20attachments:',_0x2efe0e);}for(const {name:_0x5c3f53,objectUrl:_0x11cbec}of _0x538ff6){this['insertAttachmentImage'](_0x5c3f53,_0x11cbec);}this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));}['prepareAttachmentFile'](_0x1642dd){const _0x4c32e1=this['sanitizeFilename'](_0x1642dd['name']||this['defaultImageName'](_0x1642dd['type']));if(!_0x4c32e1)return null;const _0x1aa37a=this['getUniqueAttachmentName'](_0x4c32e1),_0x3649a1=_0x1aa37a===_0x1642dd['name']?_0x1642dd:new File([_0x1642dd],_0x1aa37a,{'type':_0x1642dd['type'],'lastModified':_0x1642dd['lastModified']}),_0x3614fc=URL['createObjectURL'](_0x3649a1);return this['attachmentObjectUrls']['set'](_0x1aa37a,_0x3614fc),{'name':_0x1aa37a,'file':_0x3649a1,'objectUrl':_0x3614fc};}['getUniqueAttachmentName'](_0x5dad17){const _0x48de63=_0x13e3d8=>{if(this['attachmentObjectUrls']['has'](_0x13e3d8))return!![];if(this['options']['isAttachmentNameTaken'])try{return Boolean(this['options']['isAttachmentNameTaken'](_0x13e3d8));}catch{return![];}return![];};if(!_0x48de63(_0x5dad17))return _0x5dad17;const {stem:_0x37c54a,ext:_0x6e1bd3}=this['splitFilename'](_0x5dad17);for(let _0x14416c=0x2;_0x14416c<0x3e8;_0x14416c++){const _0x46f0fd=_0x37c54a+'-'+_0x14416c+_0x6e1bd3;if(!_0x48de63(_0x46f0fd))return _0x46f0fd;}return _0x37c54a+'-'+Date['now']()+_0x6e1bd3;}['splitFilename'](_0x3d6a2a){const _0x2cd7aa=_0x3d6a2a['lastIndexOf']('.');if(_0x2cd7aa<=0x0||_0x2cd7aa===_0x3d6a2a['length']-0x1)return{'stem':_0x3d6a2a,'ext':''};return{'stem':_0x3d6a2a['slice'](0x0,_0x2cd7aa),'ext':_0x3d6a2a['slice'](_0x2cd7aa)};}['sanitizeFilename'](_0x49fd77){const _0x51687e=String(_0x49fd77||'')['split']('/')['pop']()['split']('\x5c')['pop']();return _0x51687e['replace'](/[\u0000-\u001F\u007F]/g,'')['trim']();}['defaultImageName'](_0x5dddb8){const _0x4a75ce=this['extensionForMime'](_0x5dddb8);return'pasted-image-'+Date['now']()+_0x4a75ce;}['extensionForMime'](_0x168c99){switch(_0x168c99){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'](_0x58d195,_0x17ee66){const _0x1e1990=document['createElement']('img');_0x1e1990['src']=_0x17ee66,_0x1e1990['alt']=_0x58d195,_0x1e1990['setAttribute']('data-attachment-name',_0x58d195),_0x1e1990['draggable']=!![];const _0x33a891=window['getSelection']();let _0x575f0a=![];if(_0x33a891&&_0x33a891['rangeCount']>0x0){const _0x58a106=_0x33a891['getRangeAt'](0x0);_0x575f0a=this['editor']['contains'](_0x58a106['commonAncestorContainer'])||this['editor']===_0x58a106['commonAncestorContainer'];}if(!_0x575f0a){this['editor']['appendChild'](_0x1e1990);const _0x42ba6f=document['createRange']();_0x42ba6f['setStartAfter'](_0x1e1990),_0x42ba6f['collapse'](!![]),_0x33a891['removeAllRanges'](),_0x33a891['addRange'](_0x42ba6f);return;}const _0x3932cd=_0x33a891['getRangeAt'](0x0);_0x3932cd['deleteContents'](),_0x3932cd['insertNode'](_0x1e1990),_0x3932cd['setStartAfter'](_0x1e1990),_0x3932cd['collapse'](!![]),_0x33a891['removeAllRanges'](),_0x33a891['addRange'](_0x3932cd);}['toggleInlineCode'](){const _0x32ea3c=window['getSelection']();if(_0x32ea3c['rangeCount']===0x0)return;const _0x1aed4b=_0x32ea3c['getRangeAt'](0x0),_0xdf007a=_0x1aed4b['toString']();if(_0xdf007a){const _0x4a3176=document['createElement']('code');_0x4a3176['textContent']=_0xdf007a,_0x1aed4b['deleteContents'](),_0x1aed4b['insertNode'](_0x4a3176),_0x1aed4b['setStartAfter'](_0x4a3176),_0x1aed4b['setEndAfter'](_0x4a3176),_0x32ea3c['removeAllRanges'](),_0x32ea3c['addRange'](_0x1aed4b);}}['insertCodeBlock'](){const _0x3d5d38=window['getSelection']();if(_0x3d5d38['rangeCount']===0x0)return;const _0x336c0b=_0x3d5d38['getRangeAt'](0x0),_0xedb6fa=_0x336c0b['toString'](),_0x517ce9=document['createElement']('pre'),_0x4a8548=document['createElement']('code');_0x4a8548['textContent']=_0xedb6fa||'\x0a',_0x517ce9['appendChild'](_0x4a8548),_0x336c0b['deleteContents'](),_0x336c0b['insertNode'](_0x517ce9);const _0x40ec81=document['createElement']('p');_0x40ec81['innerHTML']='<br>',_0x517ce9['parentNode']['insertBefore'](_0x40ec81,_0x517ce9['nextSibling']);const _0x36bfdd=document['createRange']();!_0xedb6fa?(_0x36bfdd['setStart'](_0x4a8548['firstChild'],0x0),_0x36bfdd['setEnd'](_0x4a8548['firstChild'],0x0)):(_0x36bfdd['selectNodeContents'](_0x4a8548),_0x36bfdd['collapse'](![])),_0x3d5d38['removeAllRanges'](),_0x3d5d38['addRange'](_0x36bfdd);}['updatePlaceholder'](){const _0x3d1d76=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');_0x3d1d76?this['editor']['classList']['remove']('empty'):this['editor']['classList']['add']('empty');}['setMarkdown'](_0x14b458){if(this['_sourceMode']&&this['_monacoEditor']){this['_monacoEditor']['setValue'](_0x14b458||'');return;}if(!_0x14b458||!_0x14b458['trim']()){this['editor']['innerHTML']='',this['updatePlaceholder']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']='':this['element']['textContent']='';return;}const _0x1c42e6=this['preprocessColorSyntax'](_0x14b458),_0x5b4efd=window['marked']['parse'](_0x1c42e6);this['editor']['innerHTML']=_0x5b4efd,this['rewriteAttachmentImages'](),this['rewriteMentionLinks'](),this['addLinkHints'](),this['updatePlaceholder'](),this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x14b458:this['element']['textContent']=_0x14b458;}['rewriteAttachmentImages'](){const _0x1fad7b=this['editor']['querySelectorAll']('img');_0x1fad7b['forEach'](_0x3c506f=>{const _0x5d442c=_0x3c506f['getAttribute']('data-attachment-name'),_0x1142b2=_0x3c506f['getAttribute']('src')||'',_0x393f5a=this['parseAttachmentReference'](_0x1142b2)||this['parseTaskAttachmentUrl'](_0x1142b2),_0x119187=_0x5d442c||(_0x393f5a?_0x393f5a['name']:null);if(!_0x119187)return;_0x3c506f['setAttribute']('data-attachment-name',_0x119187);const _0x7c912e=this['attachmentObjectUrls']['get'](_0x119187)||(this['options']['resolveAttachmentUrl']?this['options']['resolveAttachmentUrl'](_0x119187):null);_0x7c912e&&(_0x3c506f['src']=_0x7c912e);});}['rewriteMentionLinks'](){const _0x346a3f=this['editor']['querySelectorAll']('a[href^=\x22mention:\x22]');_0x346a3f['forEach'](_0x3e11ca=>{const _0x17079e=_0x3e11ca['getAttribute']('href')||'',_0x40fe17=_0x17079e['replace']('mention:',''),_0x1d4de2=_0x3e11ca['textContent']||'',_0x386ece=document['createElement']('span');_0x386ece['className']='mention',_0x386ece['setAttribute']('data-mention-user-id',_0x40fe17),_0x386ece['setAttribute']('contenteditable','false'),_0x386ece['textContent']='@'+_0x1d4de2;const _0x46c2c2=_0x3e11ca['previousSibling'];_0x46c2c2&&_0x46c2c2['nodeType']===Node['TEXT_NODE']&&_0x46c2c2['textContent']['endsWith']('@')&&(_0x46c2c2['textContent']=_0x46c2c2['textContent']['slice'](0x0,-0x1)),_0x3e11ca['parentNode']['replaceChild'](_0x386ece,_0x3e11ca);});}['addLinkHints'](){if(!this['options']['editable'])return;const _0x372da6=this['editor']['querySelectorAll']('a');_0x372da6['forEach'](_0x43b632=>{const _0x446b96=_0x43b632['getAttribute']('href')||'';if(_0x446b96['startsWith']('mention:'))return;const _0x5e4ff0=_0x43b632['textContent']||_0x446b96,_0x1439fb=_0x5e4ff0+'\x20('+(this['linkHintText']||'Ctrl+click\x20to\x20follow')+')';_0x43b632['setAttribute']('aria-label',_0x1439fb);});}['preprocessColorSyntax'](_0x19961d){if(!_0x19961d)return _0x19961d;const _0x3c1396=_0x1b3e55=>{return String(_0x1b3e55)['replace'](/\{color:(#[0-9A-Fa-f]{3,6})\}([\s\S]*?)\{\/color\}/g,(_0xdcecbd,_0x5687c1,_0x560321)=>{const _0x4ed3b5=_0x3c1396(_0x560321);return'<span\x20style=\x22color:\x20'+_0x5687c1+'\x22>'+_0x4ed3b5+'</span>';});};return _0x3c1396(_0x19961d);}['parseAttachmentReference'](_0xe89fd8){if(!_0xe89fd8||typeof _0xe89fd8!=='string')return null;if(!_0xe89fd8['startsWith'](ATTACHMENT_SCHEME)&&!_0xe89fd8['startsWith'](ATTACHMENT_SCHEME+'//'))return null;const _0x3447a4=_0xe89fd8['replace'](ATTACHMENT_SCHEME+'//','')['replace'](ATTACHMENT_SCHEME,'');if(!_0x3447a4)return null;try{return{'name':decodeURIComponent(_0x3447a4)};}catch{return{'name':_0x3447a4};}}['parseTaskAttachmentUrl'](_0x589ad1){if(!_0x589ad1||typeof _0x589ad1!=='string')return null;const _0x38d8cf=_0x589ad1['match'](/\/tasks\/[^/]+\/attachments\/([^?#]+)/);if(!_0x38d8cf)return null;const _0x3a06fc=_0x38d8cf[0x1];try{return{'name':decodeURIComponent(_0x3a06fc)};}catch{return{'name':_0x3a06fc};}}['updateAttachmentFile'](_0x3d33e1,_0x5a8cff){const _0x4f3389=this['attachmentObjectUrls']['get'](_0x3d33e1);if(_0x4f3389)try{URL['revokeObjectURL'](_0x4f3389);}catch{}const _0x5cd8f5=URL['createObjectURL'](_0x5a8cff);this['attachmentObjectUrls']['set'](_0x3d33e1,_0x5cd8f5);const _0x379487=this['editor']['querySelector']('img[data-attachment-name=\x22'+CSS['escape'](_0x3d33e1)+'\x22]');return _0x379487&&(_0x379487['src']=_0x5cd8f5),_0x5cd8f5;}['getMarkdown'](){if(this['_sourceMode']&&this['_monacoEditor'])return this['_monacoEditor']['getValue']();const _0x35050e=this['editor']['innerHTML'];if(!_0x35050e||_0x35050e['trim']()===''||_0x35050e==='<br>')return'';return this['turndownService']['turndown'](_0x35050e)['replace'](/\u200B/g,'');}['getValue'](){return this['getMarkdown']();}['setValue'](_0x1fd9a4){this['setMarkdown'](_0x1fd9a4);}['focus'](){if(this['_sourceMode']&&this['_monacoEditor']){this['_monacoEditor']['focus']();return;}this['editor']['focus']();}['clear'](){this['_sourceMode']&&(this['_sourceMode']=![],this['editor']['style']['display']='',this['_sourceContainer']&&(this['_sourceContainer']['style']['display']='none'),this['_updateSourceToggleUI']()),this['editor']['innerHTML']='',this['updatePlaceholder']();}['setEditable'](_0x1cf4cb){this['editor']['contentEditable']=_0x1cf4cb,this['options']['editable']=_0x1cf4cb,this['_monacoEditor']&&this['_monacoEditor']['updateOptions']({'readOnly':!_0x1cf4cb});}['getMode'](){return this['_sourceMode']?'source':'visual';}['setMode'](_0xd951b5){_0xd951b5==='source'?this['switchToSource']():this['switchToVisual']();}['toggleMode'](){this['toggleSourceMode']();}['toggleSourceMode'](){this['_sourceMode']?this['switchToVisual']():this['switchToSource']();}async['switchToSource'](){if(this['_sourceMode']||this['_destroyed']||this['_monacoLoading'])return;const _0x20552e=this['getMarkdown']();!this['_sourceContainer']&&(this['_sourceContainer']=document['createElement']('div'),this['_sourceContainer']['className']='markdown-editor-source-container',this['_sourceContainer']['style']['flex']='1',this['_sourceContainer']['style']['minHeight']=this['options']['minHeight'],this['_sourceContainer']['style']['overflow']='hidden',this['container']?this['container']['appendChild'](this['_sourceContainer']):this['editor']['parentNode']['insertBefore'](this['_sourceContainer'],this['editor']['nextSibling']));this['editor']['style']['display']='none',this['_sourceContainer']['style']['display']='block';if(!this['_monacoInitialized']){this['_monacoLoading']=!![];try{await this['_ensureMonacoLoaded']();if(this['_destroyed'])return;this['_monacoEditor']=monaco['editor']['create'](this['_sourceContainer'],{'value':_0x20552e,'language':'markdown','theme':this['_getMonacoTheme'](),'minimap':{'enabled':![]},'automaticLayout':!![],'wordWrap':'on','lineNumbers':this['options']['sourceLineNumbers']?'on':'off','glyphMargin':![],'folding':![],'lineDecorationsWidth':0x4,'lineNumbersMinChars':this['options']['sourceLineNumbers']?0x3:0x0,'scrollBeyondLastLine':![],'fontSize':0xe,'lineHeight':0x16,'padding':{'top':0x8,'bottom':0x8},'renderWhitespace':'selection','tabSize':0x2,'insertSpaces':!![],'readOnly':!this['options']['editable'],'quickSuggestions':![],'suggestOnTriggerCharacters':![],'parameterHints':{'enabled':![]},'wordBasedSuggestions':'off'}),this['_monacoEditor']['onDidChangeModelContent'](()=>{this['_sourceMode']&&this['options']['onChange']&&this['options']['onChange'](this['_monacoEditor']['getValue']());}),this['_monacoEditor']['addCommand'](monaco['KeyMod']['CtrlCmd']|monaco['KeyCode']['Enter'],()=>{this['editor']['dispatchEvent'](new KeyboardEvent('keydown',{'key':'Enter','ctrlKey':!![],'bubbles':!![]}));}),this['_monacoEditor']['addCommand'](monaco['KeyCode']['Escape'],()=>{this['editor']['dispatchEvent'](new KeyboardEvent('keydown',{'key':'Escape','bubbles':!![]}));}),this['_monacoInitialized']=!![];}catch(_0x1ce16d){console['error']('Failed\x20to\x20load\x20Monaco\x20for\x20source\x20mode:',_0x1ce16d),this['editor']['style']['display']='',this['_sourceContainer']['style']['display']='none',this['_monacoLoading']=![];return;}this['_monacoLoading']=![];}else this['_monacoEditor']['setValue'](_0x20552e);this['_sourceMode']=!![],this['_updateSourceToggleUI'](),this['_monacoEditor']['focus'](),this['_monacoEditor']['layout']();}['switchToVisual'](){if(!this['_sourceMode']||this['_destroyed'])return;let _0xe47479='';this['_monacoEditor']&&(_0xe47479=this['_monacoEditor']['getValue']()),this['editor']['style']['display']='',this['_sourceContainer']&&(this['_sourceContainer']['style']['display']='none'),this['_sourceMode']=![],this['setMarkdown'](_0xe47479),this['_updateSourceToggleUI'](),this['editor']['focus']();}['_updateSourceToggleUI'](){if(!this['_sourceToggleBtn'])return;this['_sourceMode']?(this['_sourceToggleBtn']['title']='Switch\x20to\x20visual\x20mode',this['_sourceToggleBtn']['classList']['add']('active')):(this['_sourceToggleBtn']['title']='Switch\x20to\x20source\x20mode',this['_sourceToggleBtn']['classList']['remove']('active')),this['_setFormattingButtonsEnabled'](!this['_sourceMode']);}['_setFormattingButtonsEnabled'](_0x582b32){if(!this['toolbarButtons'])return;for(const [_0x2309f3,_0x4efb4c]of Object['entries'](this['toolbarButtons'])){_0x4efb4c['button']['disabled']=!_0x582b32,_0x4efb4c['button']['style']['opacity']=_0x582b32?'':'0.35',_0x4efb4c['button']['style']['pointerEvents']=_0x582b32?'':'none';}}async['_ensureMonacoLoaded'](){if(window['MarkdownFileEditor']&&window['MarkdownFileEditor']['ensureMonacoLoaded'])return window['MarkdownFileEditor']['ensureMonacoLoaded']();if(typeof monaco!=='undefined')return;return new Promise((_0x272dc9,_0x3c311b)=>{const _0x3814d6=document['querySelector']('script[src*=\x22monaco-editor\x22][src*=\x22loader.js\x22]');if(_0x3814d6){const _0xb88c24=setInterval(()=>{typeof monaco!=='undefined'&&(clearInterval(_0xb88c24),_0x272dc9());},0x32);setTimeout(()=>{clearInterval(_0xb88c24),_0x3c311b(new Error('Monaco\x20loading\x20timeout'));},0x2710);return;}const _0x3e8bbf=document['createElement']('script');_0x3e8bbf['src']='/vendor/monaco-editor/0.45.0/min/vs/loader.js',_0x3e8bbf['onload']=()=>{require['config']({'paths':{'vs':'/vendor/monaco-editor/0.45.0/min/vs'}}),require(['vs/editor/editor.main'],()=>_0x272dc9());},_0x3e8bbf['onerror']=()=>_0x3c311b(new Error('Failed\x20to\x20load\x20Monaco\x20Editor')),document['head']['appendChild'](_0x3e8bbf);});}['_getMonacoTheme'](){const _0x279ac1=document['documentElement']['getAttribute']('data-theme')==='dark';return _0x279ac1?'vs-dark':'vs';}['handleMentionInput'](_0x293b9f){if(!this['options']['fetchUsers'])return;const _0x541475=window['getSelection']();if(!_0x541475||_0x541475['rangeCount']===0x0){this['closeMentionDropdown']();return;}const _0x22a378=_0x541475['getRangeAt'](0x0),_0x50b019=_0x22a378['startContainer'];if(_0x50b019['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x1651f6=_0x50b019['textContent']||'',_0xb413b1=_0x22a378['startOffset'],_0x2f415f=_0x1651f6['slice'](0x0,_0xb413b1),_0x357afa=_0x2f415f['lastIndexOf']('@');if(_0x357afa===-0x1){this['closeMentionDropdown']();return;}const _0x5343e5=_0x357afa>0x0?_0x2f415f[_0x357afa-0x1]:'\x20';if(!/\s/['test'](_0x5343e5)&&_0x357afa!==0x0){this['closeMentionDropdown']();return;}const _0xa7f168=_0x2f415f['slice'](_0x357afa+0x1);if(/[\s\n]/['test'](_0xa7f168)){this['closeMentionDropdown']();return;}this['mentionState']['active']=!![],this['mentionState']['query']=_0xa7f168['toLowerCase'](),this['mentionState']['startOffset']=_0x357afa,this['mentionState']['startNode']=_0x50b019,this['showMentionDropdown']();}async['showMentionDropdown'](){if(!this['usersCache'])try{const _0x8796c9=await this['options']['fetchUsers']();this['usersCache']=_0x8796c9['users']||_0x8796c9||[];}catch(_0x4b7ba4){console['error']('Failed\x20to\x20fetch\x20users\x20for\x20@mention:',_0x4b7ba4),this['closeMentionDropdown']();return;}this['mentionState']['users']=this['usersCache'];const _0x3969ad=this['mentionState']['query'];this['mentionState']['filteredUsers']=this['mentionState']['users']['filter'](_0x9a6c05=>{const _0x1c7871=(_0x9a6c05['name']||'')['toLowerCase'](),_0x58b97c=(_0x9a6c05['username']||'')['toLowerCase']();return _0x1c7871['includes'](_0x3969ad)||_0x58b97c['includes'](_0x3969ad);})['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']=_0x1045e9=>{!this['mentionDropdown']['contains'](_0x1045e9['target'])&&!this['editor']['contains'](_0x1045e9['target'])&&this['closeMentionDropdown']();},document['addEventListener']('click',this['mentionClickOutsideHandler']),this['mentionScrollHandler']=()=>{this['mentionState']['active']&&this['positionMentionDropdown']();},window['addEventListener']('scroll',this['mentionScrollHandler'],!![]));const _0x46650d=this['mentionState']['filteredUsers'];this['mentionDropdown']['innerHTML']=_0x46650d['map']((_0x562412,_0x3db996)=>{const _0x45bab3=_0x3db996===this['mentionState']['selectedIndex'],_0x1d918e=_0x562412['name']||_0x562412['username']||'Unknown',_0x3df3ab=_0x562412['username']||'',_0xb0f3f1=this['getInitials'](_0x1d918e),_0x397771=this['getAvatarColorIndex'](_0x3df3ab||_0x562412['id']||_0x1d918e);return'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22mention-option\x20'+(_0x45bab3?'mention-option-selected':'')+'\x22\x20data-index=\x22'+_0x3db996+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-avatar\x20avatar-color-'+_0x397771+'\x22>'+this['escapeHtmlForMention'](_0xb0f3f1)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-option-name\x22>'+this['escapeHtmlForMention'](_0x1d918e)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x3df3ab?'<span\x20class=\x22mention-option-username\x22>@'+this['escapeHtmlForMention'](_0x3df3ab)+'</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'](_0x3266e6=>{_0x3266e6['addEventListener']('mousedown',_0x22fb91=>{_0x22fb91['preventDefault']();const _0x96ca8f=parseInt(_0x3266e6['dataset']['index'],0xa);this['insertMention'](this['mentionState']['filteredUsers'][_0x96ca8f]);}),_0x3266e6['addEventListener']('mouseenter',()=>{const _0x157b39=parseInt(_0x3266e6['dataset']['index'],0xa);this['mentionState']['selectedIndex']=_0x157b39,this['updateMentionSelection']();});}),this['mentionDropdown']['style']['display']='block';}['positionMentionDropdown'](){if(!this['mentionDropdown'])return;const _0x4e613e=window['getSelection']();if(!_0x4e613e||_0x4e613e['rangeCount']===0x0)return;const _0x29538c=_0x4e613e['getRangeAt'](0x0),_0x487288=_0x29538c['getBoundingClientRect'](),_0x50fde2=0x104,_0x12dd31=Math['min'](0xf0,this['mentionState']['filteredUsers']['length']*0x24+0x8),_0x303e76=window['innerWidth'],_0x3dc909=window['innerHeight'],_0x574bb5=_0x3dc909-_0x487288['bottom'],_0x50ec33=_0x487288['top'],_0x50d3e6=_0x574bb5<_0x12dd31+0xa&&_0x50ec33>_0x574bb5;let _0x2438de,_0x3de566;_0x50d3e6?_0x2438de=_0x487288['top']+window['scrollY']-_0x12dd31-0x4:_0x2438de=_0x487288['bottom']+window['scrollY']+0x4,_0x3de566=_0x487288['left']+window['scrollX'],_0x3de566+_0x50fde2>_0x303e76-0xa&&(_0x3de566=_0x303e76-_0x50fde2-0xa),_0x3de566<0xa&&(_0x3de566=0xa),this['mentionDropdown']['style']['position']='absolute',this['mentionDropdown']['style']['top']=_0x2438de+'px',this['mentionDropdown']['style']['left']=_0x3de566+'px';}['mentionNavigate'](_0x4469ad){const _0x261fd3=this['mentionState']['filteredUsers']['length'];if(_0x261fd3===0x0)return;this['mentionState']['selectedIndex']=(this['mentionState']['selectedIndex']+_0x4469ad+_0x261fd3)%_0x261fd3,this['updateMentionSelection']();}['updateMentionSelection'](){if(!this['mentionDropdown'])return;const _0x423f07=this['mentionDropdown']['querySelectorAll']('.mention-option');_0x423f07['forEach']((_0x51dc22,_0x5c2279)=>{_0x5c2279===this['mentionState']['selectedIndex']?(_0x51dc22['classList']['add']('mention-option-selected'),_0x51dc22['scrollIntoView']({'block':'nearest'})):_0x51dc22['classList']['remove']('mention-option-selected');});}['insertMention'](_0x4e8b31){if(!_0x4e8b31)return;const _0x1d9909=window['getSelection']();if(!_0x1d9909||_0x1d9909['rangeCount']===0x0)return;const _0x5e4768=_0x1d9909['getRangeAt'](0x0),_0x1876d3=this['mentionState']['startNode'];if(!_0x1876d3||_0x1876d3['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x4df210=_0x1876d3['textContent']||'',_0x210d44=this['mentionState']['startOffset'],_0x3edca3=_0x5e4768['startOffset'],_0x1128b3=_0x4df210['slice'](0x0,_0x210d44),_0x5150bc=_0x4df210['slice'](_0x3edca3),_0x434bb3=document['createElement']('span');_0x434bb3['className']='mention',_0x434bb3['setAttribute']('data-mention-user-id',_0x4e8b31['id']),_0x434bb3['setAttribute']('contenteditable','false'),_0x434bb3['textContent']='@'+(_0x4e8b31['name']||_0x4e8b31['username']);const _0x245209=document['createTextNode'](_0x1128b3),_0x471390=document['createTextNode']('\x20'+_0x5150bc),_0x438e17=_0x1876d3['parentNode'];_0x438e17['insertBefore'](_0x245209,_0x1876d3),_0x438e17['insertBefore'](_0x434bb3,_0x1876d3),_0x438e17['insertBefore'](_0x471390,_0x1876d3),_0x438e17['removeChild'](_0x1876d3);const _0x231141=document['createRange']();_0x231141['setStart'](_0x471390,0x1),_0x231141['collapse'](!![]),_0x1d9909['removeAllRanges'](),_0x1d9909['addRange'](_0x231141),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'](_0x5e79d3){const _0x358b14=document['createElement']('div');return _0x358b14['textContent']=_0x5e79d3,_0x358b14['innerHTML'];}['getInitials'](_0x579683){if(!_0x579683)return'?';const _0x4648f5=_0x579683['trim']()['split'](/\s+/);if(_0x4648f5['length']>=0x2)return(_0x4648f5[0x0][0x0]+_0x4648f5[_0x4648f5['length']-0x1][0x0])['toUpperCase']();return _0x579683['substring'](0x0,0x2)['toUpperCase']();}['getAvatarColorIndex'](_0x308ed0){if(!_0x308ed0)return 0x6;let _0x23e3d1=0x0;for(let _0x2ad783=0x0;_0x2ad783<_0x308ed0['length'];_0x2ad783++){_0x23e3d1=_0x308ed0['charCodeAt'](_0x2ad783)+((_0x23e3d1<<0x5)-_0x23e3d1);}return Math['abs'](_0x23e3d1)%0xa;}['destroy'](){this['_destroyed']=!![];this['_monacoEditor']&&(this['_monacoEditor']['dispose'](),this['_monacoEditor']=null);this['_sourceContainer']&&(this['_sourceContainer']['remove'](),this['_sourceContainer']=null);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 _0x55b8a0 of this['attachmentObjectUrls']['values']()){try{URL['revokeObjectURL'](_0x55b8a0);}catch{}}this['attachmentObjectUrls']['clear'](),this['container']?this['container']['remove']():this['editor']['remove'](),this['element']['style']['display']='';}}typeof window!=='undefined'&&(window['MarkdownEditor']=MarkdownEditor);
|