@profoundlogic/coderflow-server 0.6.4 → 0.6.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/coder-server.js +1 -1
- package/dist/config.js +1 -1
- package/dist/lib/agent-keepalive.js +1 -1
- package/dist/lib/agent-models.js +1 -1
- package/dist/lib/api-keys.js +1 -1
- package/dist/lib/apiKeys.js +1 -1
- package/dist/lib/app-server-ports.js +1 -1
- package/dist/lib/auto-judge.js +1 -1
- package/dist/lib/automation-service.js +1 -1
- package/dist/lib/basic-auth.js +1 -1
- package/dist/lib/bindings.js +1 -1
- package/dist/lib/build-history.js +1 -1
- package/dist/lib/build-output-service.js +1 -1
- package/dist/lib/build-scheduler.js +1 -1
- package/dist/lib/build-service.js +1 -1
- package/dist/lib/ca-certificates.js +1 -1
- package/dist/lib/claude-oauth-refresh.js +1 -1
- package/dist/lib/cli/build.js +1 -1
- package/dist/lib/cli/cleanup-users.js +1 -1
- package/dist/lib/cli/config-command.js +1 -1
- package/dist/lib/cli/config.js +1 -1
- package/dist/lib/cli/create-user.js +1 -1
- package/dist/lib/cli/grant-admin.js +1 -1
- package/dist/lib/cli/init.js +1 -1
- package/dist/lib/cli/jira.js +1 -1
- package/dist/lib/cli/license.js +1 -1
- package/dist/lib/cli/list-roles.js +1 -1
- package/dist/lib/cli/list-users.js +1 -1
- package/dist/lib/cli/server-manager.js +1 -1
- package/dist/lib/cli/set-password.js +1 -1
- package/dist/lib/config-migration.js +1 -1
- package/dist/lib/container-credential-sync.js +1 -1
- package/dist/lib/container-tokens.js +1 -1
- package/dist/lib/data-dir.js +1 -1
- package/dist/lib/deployment-history.js +1 -1
- package/dist/lib/deployment-service.js +1 -1
- package/dist/lib/docker-utils.js +1 -1
- package/dist/lib/email.js +1 -1
- package/dist/lib/emailTemplates.js +1 -1
- package/dist/lib/entitlement.js +1 -1
- package/dist/lib/external-connections.js +1 -1
- package/dist/lib/fetch-utils.js +1 -1
- package/dist/lib/git-commit-details-route.js +1 -1
- package/dist/lib/git-history-diff-guardrails.js +1 -1
- package/dist/lib/git-provider-service.js +1 -1
- package/dist/lib/git-provider-setup/github-setup-handler.js +1 -1
- package/dist/lib/git-provider-setup/index.js +1 -1
- package/dist/lib/git-provider-setup/setup-factory.js +1 -1
- package/dist/lib/git-provider-setup/setup-interface.js +1 -1
- package/dist/lib/git-providers/azure-devops-provider.js +1 -1
- package/dist/lib/git-providers/github-app-provider.js +1 -1
- package/dist/lib/git-providers/index.js +1 -1
- package/dist/lib/git-providers/provider-factory.js +1 -1
- package/dist/lib/git-providers/provider-interface.js +1 -1
- package/dist/lib/github-urls.js +1 -1
- package/dist/lib/group-objective-linking.js +1 -1
- package/dist/lib/ibmi-sync.js +1 -1
- package/dist/lib/jira-client.js +1 -1
- package/dist/lib/judge-blinding.js +1 -1
- package/dist/lib/logger.js +1 -1
- package/dist/lib/migration-to-scoped-rbac.js +1 -1
- package/dist/lib/model-fetcher.js +1 -1
- package/dist/lib/notifications.js +1 -1
- package/dist/lib/objective-context.js +1 -1
- package/dist/lib/oidc-auth.js +1 -1
- package/dist/lib/oidc-device-flow.js +1 -1
- package/dist/lib/passwordTokens.js +1 -1
- package/dist/lib/permission-resolver.js +1 -1
- package/dist/lib/pin-cascade.js +1 -1
- package/dist/lib/provider-accounts.js +1 -1
- package/dist/lib/provider-oauth.js +1 -1
- package/dist/lib/provider-profile.js +1 -1
- package/dist/lib/provider-token-refresh.js +1 -1
- package/dist/lib/rbac-user-state.js +1 -1
- package/dist/lib/request-url.js +1 -1
- package/dist/lib/rewind.js +1 -1
- package/dist/lib/role-definitions.js +1 -1
- package/dist/lib/roles.js +1 -1
- package/dist/lib/secrets.js +1 -1
- package/dist/lib/setup-repo-git-auth.js +1 -1
- package/dist/lib/state-capture.js +1 -1
- package/dist/lib/static-files.js +1 -1
- package/dist/lib/task-name-format.js +1 -1
- package/dist/lib/task-name-generator.js +1 -1
- package/dist/lib/task-source-metadata.js +1 -1
- package/dist/lib/teams.js +1 -1
- package/dist/lib/user-git-oauth.js +1 -1
- package/dist/lib/user-git-tokens.js +1 -1
- package/dist/lib/users.js +1 -1
- package/dist/middleware/requireAuth.js +1 -1
- package/dist/middleware/requireInit.js +1 -1
- package/dist/middleware/requirePermission.js +1 -1
- package/dist/package.json +1 -1
- package/dist/playwright.config.js +1 -1
- package/dist/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/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.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.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 _0x4afa29=await fetch('/auth/oidc/config');if(_0x4afa29['ok'])return await _0x4afa29['json']();}catch(_0x54d740){console['error']('Failed\x20to\x20load\x20OIDC\x20configuration:',_0x54d740);}return{'enabled':![]};}function initializeSsoUi(_0x2fcdbb){const _0x22e0ab=document['getElementById']('sso-section'),_0x9de915=document['getElementById']('sso-divider'),_0x5a95ba=document['getElementById']('sso-button-text'),_0x248571=document['getElementById']('sso-button'),_0x504c65=document['querySelector']('.local-auth-section');_0x2fcdbb['enabled']&&(_0x22e0ab['classList']['add']('visible'),_0x5a95ba['textContent']=_0x2fcdbb['display_name']||'Sign\x20in\x20with\x20SSO',_0x248571['addEventListener']('click',()=>{window['location']['href']='/auth/oidc/login';}),!_0x2fcdbb['allow_local_auth']&&(_0x504c65['classList']['add']('hidden'),_0x9de915['style']['display']='none'));}function checkOidcErrors(){const _0x260dbc=new URLSearchParams(window['location']['search']),_0x4d25dc=_0x260dbc['get']('error'),_0xdcf0fd=_0x260dbc['get']('message');if(_0x4d25dc){const _0x4894e5=document['getElementById']('login-error'),_0x1ecb94=_0xdcf0fd||OIDC_ERRORS[_0x4d25dc]||'Authentication\x20error:\x20'+_0x4d25dc;_0x4894e5['textContent']=_0x1ecb94,_0x4894e5['classList']['add']('visible'),window['history']['replaceState']({},document['title'],window['location']['pathname']);}}async function handleLogin(_0x10dbe9){_0x10dbe9['preventDefault']();const _0x8cc651=_0x10dbe9['target'],_0x426423=_0x8cc651['username']['value']['trim'](),_0x12f16e=_0x8cc651['password']['value'],_0x4189a8=_0x8cc651['querySelector']('button[type=\x22submit\x22]'),_0x5e30fe=document['getElementById']('login-error');_0x5e30fe['classList']['remove']('visible'),_0x5e30fe['textContent']='',_0x4189a8['disabled']=!![],_0x4189a8['textContent']='Signing\x20in...';try{const _0x32c8fb=await fetch('/auth/login',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'username':_0x426423,'password':_0x12f16e})}),_0x270e90=await _0x32c8fb['json']();if(!_0x32c8fb['ok'])throw new Error(_0x270e90['message']||'Login\x20failed');window['location']['href']='index.html';}catch(_0xb8ee44){_0x5e30fe['textContent']=_0xb8ee44['message']||'An\x20error\x20occurred\x20during\x20login',_0x5e30fe['classList']['add']('visible'),_0x4189a8['disabled']=![],_0x4189a8['textContent']='Sign\x20In',_0x8cc651['password']['value']='',_0x8cc651['password']['focus']();}}document['addEventListener']('DOMContentLoaded',async()=>{initTheme(),mountThemeToggle(),checkOidcErrors();const _0x1e8fac=await loadOidcConfig();initializeSsoUi(_0x1e8fac);const _0x1e5c8e=document['getElementById']('login-form');_0x1e5c8e&&_0x1e5c8e['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(_0x5a01b5,_0x57528a={}){this['element']=_0x5a01b5,this['options']={'placeholder':_0x57528a['placeholder']||'Start\x20typing...','editable':_0x57528a['editable']!==![],'onChange':_0x57528a['onChange']||null,'minHeight':_0x57528a['minHeight']||'100px','toolbar':_0x57528a['toolbar']||![],'onAddAttachments':_0x57528a['onAddAttachments']||null,'resolveAttachmentUrl':_0x57528a['resolveAttachmentUrl']||null,'isAttachmentNameTaken':_0x57528a['isAttachmentNameTaken']||null,'fetchUsers':_0x57528a['fetchUsers']||null,'sourceToggle':_0x57528a['sourceToggle']||![],'sourceLineNumbers':_0x57528a['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 _0x4f1cc5=window['TurndownService'];this['turndownService']=new _0x4f1cc5({'headingStyle':'atx','codeBlockStyle':'fenced','emDelimiter':'_','bulletListMarker':'-'}),this['attachmentObjectUrls']=new Map(),this['registerTurndownRules'](),this['init']();}['registerTurndownRules'](){this['turndownService']['addRule']('profoundAttachmentImage',{'filter':_0x21b510=>{return _0x21b510&&_0x21b510['nodeName']==='IMG'&&_0x21b510['getAttribute']&&_0x21b510['getAttribute']('data-attachment-name');},'replacement':(_0x4f75a4,_0xdf6d11)=>{const _0x2654a1=_0xdf6d11['getAttribute']('data-attachment-name')||'',_0x22a413=_0xdf6d11['getAttribute']('alt')||'',_0x22a933=_0x2654a1['trim'](),_0x5d9a90=this['escapeAltText'](_0x22a413||_0x22a933),_0x2d386a=encodeURIComponent(_0x22a933);return'';}}),this['turndownService']['addRule']('profoundMention',{'filter':_0x203ad4=>{return _0x203ad4&&_0x203ad4['nodeName']==='SPAN'&&_0x203ad4['getAttribute']&&_0x203ad4['getAttribute']('data-mention-user-id');},'replacement':(_0x2d0143,_0x38f0e6)=>{const _0xd8996f=_0x38f0e6['getAttribute']('data-mention-user-id')||'',_0x21e910=_0x38f0e6['textContent']||'',_0x2063ed=_0x21e910['startsWith']('@')?_0x21e910['slice'](0x1):_0x21e910;return'['+_0x2063ed+'](mention:'+_0xd8996f+')';}}),this['turndownService']['addRule']('profoundColoredText',{'filter':_0x575c84=>{if(!_0x575c84)return![];if(_0x575c84['nodeName']==='FONT'&&_0x575c84['getAttribute']&&_0x575c84['getAttribute']('color'))return!![];if(_0x575c84['nodeName']==='SPAN'&&_0x575c84['style']&&_0x575c84['style']['color']){if(_0x575c84['getAttribute']&&_0x575c84['getAttribute']('data-mention-user-id'))return![];return!![];}return![];},'replacement':(_0x211968,_0x1e2af)=>{if(!_0x211968['trim']())return _0x211968;let _0x34711d='';if(_0x1e2af['nodeName']==='FONT')_0x34711d=_0x1e2af['getAttribute']('color')||'';else _0x1e2af['style']&&_0x1e2af['style']['color']&&(_0x34711d=this['rgbToHex'](_0x1e2af['style']['color']));if(!_0x34711d)return _0x211968;return'{color:'+_0x34711d+'}'+_0x211968+'{/color}';}});}['rgbToHex'](_0x210431){if(!_0x210431)return'';if(_0x210431['startsWith']('#'))return _0x210431;const _0x275a19=_0x210431['match'](/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(!_0x275a19)return _0x210431;const _0x2728c5=parseInt(_0x275a19[0x1],0xa),_0x48d710=parseInt(_0x275a19[0x2],0xa),_0x193270=parseInt(_0x275a19[0x3],0xa);return'#'+[_0x2728c5,_0x48d710,_0x193270]['map'](_0x5d193c=>_0x5d193c['toString'](0x10)['padStart'](0x2,'0'))['join']('')['toUpperCase']();}['escapeAltText'](_0x2bc953){return String(_0x2bc953||'')['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 _0x23fada=this['element']['textContent']||this['element']['value']||'';_0x23fada['trim']()&&this['setMarkdown'](_0x23fada);}['createToolbar'](){this['toolbar']=document['createElement']('div'),this['toolbar']['className']='markdown-editor-toolbar',this['toolbarButtons']={};const _0x1f1ebe=[{'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'}];_0x1f1ebe['forEach'](_0x2e077b=>{if(_0x2e077b['separator']){const _0x4248a6=document['createElement']('div');_0x4248a6['className']='markdown-toolbar-separator',_0x4248a6['style']['width']='1px',_0x4248a6['style']['height']='16px',_0x4248a6['style']['background']='var(--color-border)',_0x4248a6['style']['margin']='0\x206px',_0x4248a6['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x4248a6);}else{if(_0x2e077b['isDropdown']){const _0x5ae4d4=document['createElement']('div');_0x5ae4d4['className']='markdown-toolbar-dropdown',_0x5ae4d4['style']['position']='relative';const _0x26c357=document['createElement']('button');_0x26c357['type']='button',_0x26c357['className']='markdown-editor-toolbar-btn\x20markdown-toolbar-dropdown-btn',_0x26c357['tabIndex']=-0x1,_0x26c357['innerHTML']=_0x2e077b['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>',_0x26c357['title']=_0x2e077b['title'],_0x26c357['dataset']['action']=_0x2e077b['action'];const _0x165570=document['createElement']('div');_0x165570['className']='markdown-toolbar-dropdown-menu',_0x165570['style']['display']='none';if(_0x2e077b['action']==='header')this['createHeaderDropdown'](_0x165570);else _0x2e077b['action']==='color'&&this['createColorDropdown'](_0x165570);_0x26c357['addEventListener']('click',_0x52a27b=>{_0x52a27b['preventDefault'](),_0x52a27b['stopPropagation'](),this['toggleDropdown'](_0x165570,_0x26c357);}),_0x5ae4d4['appendChild'](_0x26c357),_0x5ae4d4['appendChild'](_0x165570),this['toolbar']['appendChild'](_0x5ae4d4),this['toolbarButtons'][_0x2e077b['id']]={'button':_0x26c357,'dropdown':_0x165570,'command':_0x2e077b['command'],'tagName':_0x2e077b['tagName']};}else{const _0x19c312=document['createElement']('button');_0x19c312['type']='button',_0x19c312['className']='markdown-editor-toolbar-btn',_0x19c312['tabIndex']=-0x1,_0x19c312['innerHTML']=_0x2e077b['icon'],_0x19c312['title']=_0x2e077b['title'],_0x19c312['dataset']['action']=_0x2e077b['action'],_0x19c312['addEventListener']('click',_0xcc2c91=>{_0xcc2c91['preventDefault'](),this['handleToolbarAction'](_0x2e077b['action']);}),this['toolbar']['appendChild'](_0x19c312),this['toolbarButtons'][_0x2e077b['id']]={'button':_0x19c312,'command':_0x2e077b['command'],'tagName':_0x2e077b['tagName']};}}});if(this['options']['sourceToggle']){const _0x55e010=document['createElement']('div');_0x55e010['style']['marginLeft']='auto',this['toolbar']['appendChild'](_0x55e010);const _0x1fcd10=document['createElement']('div');_0x1fcd10['className']='markdown-toolbar-separator\x20markdown-source-toggle-separator',_0x1fcd10['style']['width']='1px',_0x1fcd10['style']['height']='16px',_0x1fcd10['style']['background']='var(--color-border)',_0x1fcd10['style']['margin']='0\x206px',_0x1fcd10['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x1fcd10);const _0x1b9185=document['createElement']('button');_0x1b9185['type']='button',_0x1b9185['className']='markdown-editor-toolbar-btn\x20markdown-source-toggle-btn',_0x1b9185['tabIndex']=-0x1,_0x1b9185['innerHTML']=ICONS['sourceToggle'],_0x1b9185['title']='Switch\x20to\x20source\x20mode',_0x1b9185['addEventListener']('click',_0x486bb3=>{_0x486bb3['preventDefault'](),_0x486bb3['stopPropagation'](),this['toggleSourceMode']();}),this['toolbar']['appendChild'](_0x1b9185),this['_sourceToggleBtn']=_0x1b9185;}document['addEventListener']('click',_0x66443c=>{!this['toolbar']['contains'](_0x66443c['target'])&&this['closeAllDropdowns']();});}['createHeaderDropdown'](_0x609986){const _0xeb0db4=[{'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'}];_0xeb0db4['forEach'](_0x385f3a=>{const _0x59ea9f=document['createElement']('button');_0x59ea9f['type']='button',_0x59ea9f['className']='markdown-dropdown-item',_0x59ea9f['tabIndex']=-0x1,_0x59ea9f['innerHTML']='<span\x20style=\x22font-size:\x20'+(_0x385f3a['level']===0x0?'14px':0x14-_0x385f3a['level']*0x2+'px')+';\x20font-weight:\x20'+(_0x385f3a['level']===0x0?'normal':'bold')+'\x22>'+_0x385f3a['label']+'</span>',_0x59ea9f['addEventListener']('click',_0x391733=>{_0x391733['preventDefault'](),_0x391733['stopPropagation'](),this['applyHeader'](_0x385f3a['level']),this['closeAllDropdowns']();}),_0x609986['appendChild'](_0x59ea9f);});}['createColorDropdown'](_0x31c07c){const _0x5a3731=[{'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'}],_0x4de2db=document['createElement']('div');_0x4de2db['className']='markdown-color-grid',_0x4de2db['style']['display']='grid',_0x4de2db['style']['gridTemplateColumns']='repeat(3,\x201fr)',_0x4de2db['style']['gap']='4px',_0x4de2db['style']['padding']='8px',_0x5a3731['forEach'](_0x44b3f0=>{const _0x53970e=document['createElement']('button');_0x53970e['type']='button',_0x53970e['className']='markdown-color-btn',_0x53970e['tabIndex']=-0x1,_0x53970e['style']['width']='24px',_0x53970e['style']['height']='24px',_0x53970e['style']['backgroundColor']=_0x44b3f0['value'],_0x53970e['style']['border']='1px\x20solid\x20var(--color-border)',_0x53970e['style']['borderRadius']='4px',_0x53970e['style']['cursor']='pointer',_0x53970e['title']=_0x44b3f0['label'],_0x53970e['addEventListener']('click',_0x1d2891=>{_0x1d2891['preventDefault'](),_0x1d2891['stopPropagation'](),this['applyColor'](_0x44b3f0['value']),this['closeAllDropdowns']();}),_0x4de2db['appendChild'](_0x53970e);}),_0x31c07c['appendChild'](_0x4de2db);const _0x1613df=document['createElement']('button');_0x1613df['type']='button',_0x1613df['className']='markdown-dropdown-item',_0x1613df['innerHTML']='<span>Remove\x20Color</span>',_0x1613df['style']['borderTop']='1px\x20solid\x20var(--color-border)',_0x1613df['style']['marginTop']='4px',_0x1613df['style']['paddingTop']='8px',_0x1613df['addEventListener']('click',_0x2e7ed3=>{_0x2e7ed3['preventDefault'](),_0x2e7ed3['stopPropagation'](),this['removeColor'](),this['closeAllDropdowns']();}),_0x31c07c['appendChild'](_0x1613df);}['toggleDropdown'](_0x4ced26,_0x21b360){const _0x3aedcf=_0x4ced26['style']['display']!=='none';this['toolbar']&&this['closeAllDropdowns'](),!_0x3aedcf&&(_0x4ced26['style']['display']='block',_0x21b360['classList']['add']('active'));}['closeAllDropdowns'](){const _0x3c51e4=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-menu');_0x3c51e4['forEach'](_0x5b720e=>_0x5b720e['style']['display']='none');const _0x3894b5=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-btn');_0x3894b5['forEach'](_0xa81804=>_0xa81804['classList']['remove']('active'));}['applyHeader'](_0x50a325){this['editor']['focus']();const _0x4792c=window['getSelection']();if(!_0x4792c||_0x4792c['rangeCount']===0x0)return;const _0x7cff60=_0x4792c['getRangeAt'](0x0);let _0x2d34ee=_0x7cff60['startContainer'];while(_0x2d34ee&&_0x2d34ee!==this['editor']){if(_0x2d34ee['nodeType']===Node['ELEMENT_NODE']){const _0x1371ea=window['getComputedStyle'](_0x2d34ee)['display'];if(_0x1371ea==='block'||['P','H1','H2','H3','H4','H5','H6','DIV']['includes'](_0x2d34ee['tagName']))break;}_0x2d34ee=_0x2d34ee['parentNode'];}_0x50a325===0x0?document['execCommand']('formatBlock',![],'p'):document['execCommand']('formatBlock',![],'h'+_0x50a325),this['editor']['dispatchEvent'](new Event('input'));}['applyColor'](_0x69902e){this['editor']['focus'](),document['execCommand']('foreColor',![],_0x69902e),this['editor']['dispatchEvent'](new Event('input'));}['removeColor'](){this['editor']['focus'](),document['execCommand']('removeFormat',![],null),this['editor']['dispatchEvent'](new Event('input'));}['handleToolbarAction'](_0x14e8fc){this['editor']['focus']();switch(_0x14e8fc){case'bold':case'italic':case'strikeThrough':case'insertUnorderedList':case'insertOrderedList':document['execCommand'](_0x14e8fc,![],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 _0x384e91=document['createElement']('div');_0x384e91['className']='markdown-editor-link-modal',_0x384e91['hidden']=!![],_0x384e91['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'](_0x384e91),this['linkDialog']=_0x384e91,this['linkDialogElements']={'backdrop':_0x384e91['querySelector']('.markdown-editor-link-backdrop'),'title':_0x384e91['querySelector']('.markdown-editor-link-title'),'close':_0x384e91['querySelector']('.markdown-editor-link-close'),'form':_0x384e91['querySelector']('.markdown-editor-link-form'),'urlInput':_0x384e91['querySelector']('[data-link-field=\x22url\x22]'),'textInput':_0x384e91['querySelector']('[data-link-field=\x22text\x22]'),'remove':_0x384e91['querySelector']('[data-action=\x22remove\x22]'),'cancel':_0x384e91['querySelector']('[data-action=\x22cancel\x22]'),'submit':_0x384e91['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',_0x5c4170=>{_0x5c4170['preventDefault'](),this['applyLinkDialogResult']();}),this['linkDialog']['addEventListener']('keydown',_0x8e0b54=>{_0x8e0b54['key']==='Escape'&&(_0x8e0b54['preventDefault'](),this['closeLinkDialog']({'restoreSelection':!![]}));});}['openLinkDialog'](){const _0x467be0=window['getSelection']();if(!_0x467be0||_0x467be0['rangeCount']===0x0)return;const _0x491487=_0x467be0['getRangeAt'](0x0),_0x297abb=this['editor']['contains'](_0x491487['commonAncestorContainer'])||this['editor']===_0x491487['commonAncestorContainer'];if(!_0x297abb)return;this['toolbar']&&this['closeAllDropdowns']();this['ensureLinkDialog']();const _0x2fb9e2=_0x491487['cloneRange'](),_0x546ee4=this['findLinkAtRange'](_0x2fb9e2),_0x384fce=_0x546ee4?_0x546ee4['getAttribute']('href')||'':'',_0x450b62=_0x546ee4?_0x546ee4['textContent']||'':_0x2fb9e2['toString']();this['linkDialogContext']={'range':_0x2fb9e2,'existingLink':_0x546ee4,'selectedText':_0x450b62},this['linkDialogElements']['title']['textContent']=_0x546ee4?'Edit\x20Link':'Insert\x20Link',this['linkDialogElements']['submit']['textContent']=_0x546ee4?'Save\x20Link':'Insert\x20Link',this['linkDialogElements']['remove']['hidden']=!_0x546ee4,this['linkDialogElements']['urlInput']['value']=_0x384fce,this['linkDialogElements']['textInput']['value']=_0x450b62,this['linkDialog']['hidden']=![],this['linkDialogElements']['urlInput']['focus'](),this['linkDialogElements']['urlInput']['select']();}['closeLinkDialog']({restoreSelection:restoreSelection=![]}={}){if(!this['linkDialog'])return;const _0x50b823=this['linkDialogContext'];this['linkDialog']['hidden']=!![],restoreSelection&&_0x50b823?.['range']&&(this['editor']['focus'](),this['restoreRange'](_0x50b823['range'])),this['linkDialogContext']=null;}['applyLinkDialogResult']({remove:remove=![]}={}){if(!this['linkDialog']||!this['linkDialogContext'])return;const _0x3d9356=this['linkDialogContext'],_0x212c2a=(this['linkDialogElements']['urlInput']['value']||'')['trim'](),_0x3a573b=this['linkDialogElements']['textInput']['value']||'',_0x352005=_0x3a573b['trim']();if(!remove&&!_0x212c2a){this['linkDialogElements']['urlInput']['focus']();return;}this['closeLinkDialog'](),this['editor']['focus'](),this['restoreRange'](_0x3d9356['range']);if(remove)_0x3d9356['existingLink']&&_0x3d9356['existingLink']['parentNode']?this['unwrapLinkElement'](_0x3d9356['existingLink']):document['execCommand']('unlink',![],null);else{if(_0x3d9356['existingLink']&&_0x3d9356['existingLink']['parentNode'])_0x3d9356['existingLink']['setAttribute']('href',_0x212c2a),_0x3d9356['existingLink']['textContent']=_0x352005||_0x212c2a;else{const _0x464832=window['getSelection']();if(!_0x464832||_0x464832['rangeCount']===0x0)return;const _0x5160c3=_0x464832['getRangeAt'](0x0),_0x2955e1=(_0x3d9356['selectedText']||'')['trim'](),_0x47d352=_0x352005||_0x2955e1||_0x212c2a;_0x5160c3['deleteContents']();const _0x22e164=document['createElement']('a');_0x22e164['href']=_0x212c2a,_0x22e164['textContent']=_0x47d352,_0x5160c3['insertNode'](_0x22e164),_0x5160c3['setStartAfter'](_0x22e164),_0x5160c3['collapse'](!![]),_0x464832['removeAllRanges'](),_0x464832['addRange'](_0x5160c3);}}this['addLinkHints'](),this['updateToolbarState'](),this['editor']['dispatchEvent'](new Event('input'));}['ensureLinkDialogStyles'](){if(document['getElementById'](LINK_DIALOG_STYLE_ID))return;const _0x41bccc=document['createElement']('style');_0x41bccc['id']=LINK_DIALOG_STYLE_ID,_0x41bccc['textContent']=LINK_DIALOG_STYLES,document['head']['appendChild'](_0x41bccc);}['restoreRange'](_0x597f8d){const _0x5c32af=window['getSelection']();if(!_0x5c32af)return;try{_0x5c32af['removeAllRanges'](),_0x5c32af['addRange'](_0x597f8d);return;}catch(_0xff735f){}const _0x31ef31=document['createRange']();_0x31ef31['selectNodeContents'](this['editor']),_0x31ef31['collapse'](![]),_0x5c32af['removeAllRanges'](),_0x5c32af['addRange'](_0x31ef31);}['findLinkAtRange'](_0x4d56b6){if(!_0x4d56b6)return null;const _0x2bfb4a=this['findParentLink'](_0x4d56b6['startContainer']);if(_0x4d56b6['collapsed'])return _0x2bfb4a;const _0x49a560=this['findParentLink'](_0x4d56b6['endContainer']);if(_0x2bfb4a&&_0x2bfb4a===_0x49a560)return _0x2bfb4a;if(_0x2bfb4a&&_0x2bfb4a['contains'](_0x4d56b6['endContainer']))return _0x2bfb4a;if(_0x49a560&&_0x49a560['contains'](_0x4d56b6['startContainer']))return _0x49a560;return null;}['findParentLink'](_0x57ea15){let _0x515c6b=_0x57ea15;while(_0x515c6b&&_0x515c6b!==this['editor']){if(_0x515c6b['nodeType']===Node['ELEMENT_NODE']&&_0x515c6b['tagName']==='A'){const _0x1db0c8=_0x515c6b['getAttribute']('href')||'';if(_0x1db0c8['startsWith']('mention:'))return null;return _0x515c6b;}_0x515c6b=_0x515c6b['parentNode'];}return null;}['unwrapLinkElement'](_0x24050a){const _0x3790c3=_0x24050a['parentNode'];if(!_0x3790c3)return;while(_0x24050a['firstChild']){_0x3790c3['insertBefore'](_0x24050a['firstChild'],_0x24050a);}_0x3790c3['removeChild'](_0x24050a);}['isSelectionInTag'](_0x5e28db){const _0x1824a1=window['getSelection']();if(!_0x1824a1||_0x1824a1['rangeCount']===0x0)return![];let _0x19d98c=_0x1824a1['anchorNode'];while(_0x19d98c&&_0x19d98c!==this['editor']){if(_0x19d98c['nodeType']===Node['ELEMENT_NODE']&&_0x19d98c['tagName']===_0x5e28db)return!![];_0x19d98c=_0x19d98c['parentNode'];}return![];}['updateToolbarState'](){if(!this['toolbarButtons'])return;for(const [_0xcfbbee,_0x3b1f20]of Object['entries'](this['toolbarButtons'])){let _0xa21985=![];if(_0x3b1f20['command'])try{_0xa21985=document['queryCommandState'](_0x3b1f20['command']);}catch(_0x2f8585){_0xa21985=![];}else _0x3b1f20['tagName']&&(_0xa21985=this['isSelectionInTag'](_0x3b1f20['tagName']));_0x3b1f20['button']['classList']['toggle']('active',_0xa21985);}}['bindEvents'](){this['editor']['addEventListener']('keydown',_0x1a4a6b=>this['handleKeydown'](_0x1a4a6b)),this['editor']['addEventListener']('input',_0x41419d=>{this['handleMentionInput'](_0x41419d),this['handleAutoFormat'](_0x41419d);}),this['editor']['addEventListener']('input',()=>{const _0x228d7e=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');!_0x228d7e&&(this['editor']['innerHTML']='');this['updatePlaceholder']();const _0x53ff88=this['getMarkdown']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x53ff88:this['element']['textContent']=_0x53ff88,this['options']['onChange']&&this['options']['onChange'](_0x53ff88);}),this['editor']['addEventListener']('paste',_0x3744f4=>this['handlePaste'](_0x3744f4)),this['editor']['addEventListener']('dragover',_0x5275a8=>this['handleDragOver'](_0x5275a8)),this['editor']['addEventListener']('drop',_0xbb4616=>this['handleDrop'](_0xbb4616)),this['editor']['addEventListener']('dragstart',_0x3fd229=>this['handleDragStart'](_0x3fd229)),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']=_0x17e383=>this['handleLinkClick'](_0x17e383),this['editor']['addEventListener']('click',this['linkClickHandler']),this['linkMouseEnterHandler']=_0x20ca5d=>this['handleLinkMouseEnter'](_0x20ca5d),this['linkMouseLeaveHandler']=_0x20e54a=>this['handleLinkMouseLeave'](_0x20e54a),this['editor']['addEventListener']('mouseover',this['linkMouseEnterHandler']),this['editor']['addEventListener']('mouseout',this['linkMouseLeaveHandler']),this['updatePlaceholder']();}['handleAutoFormat'](_0x206e7d){if(_0x206e7d['inputType']==='deleteContentBackward')return;const _0x12661c=window['getSelection']();if(!_0x12661c||_0x12661c['rangeCount']===0x0)return;const _0x590ccc=_0x12661c['getRangeAt'](0x0),_0x36cff4=_0x590ccc['startContainer'];if(_0x36cff4['nodeType']!==Node['TEXT_NODE'])return;if(this['isSelectionInTag']('CODE')||this['isSelectionInTag']('PRE'))return;const _0x14a353=_0x36cff4['textContent'],_0x5264fa=_0x590ccc['startOffset'],_0x8f0be=_0x14a353['slice'](0x0,_0x5264fa);if(_0x8f0be['endsWith']('```')){_0x590ccc['setStart'](_0x36cff4,_0x5264fa-0x3),_0x590ccc['setEnd'](_0x36cff4,_0x5264fa),_0x590ccc['deleteContents'](),this['insertCodeBlock']();return;}const _0x5f5706=/`([^`]+)`$/,_0x5b5304=_0x8f0be['match'](_0x5f5706);if(_0x5b5304){const _0x2396f9=_0x5b5304[0x1];if(_0x2396f9){const _0x1d614d=_0x5b5304['index'],_0x142b5b=_0x1d614d+_0x2396f9['length']+0x2;_0x590ccc['setStart'](_0x36cff4,_0x1d614d),_0x590ccc['setEnd'](_0x36cff4,_0x5264fa),_0x590ccc['deleteContents']();const _0x5a12fe=document['createElement']('code');_0x5a12fe['textContent']=_0x2396f9,_0x590ccc['insertNode'](_0x5a12fe),_0x590ccc['setStartAfter'](_0x5a12fe),_0x590ccc['setEndAfter'](_0x5a12fe);const _0x49e64a=document['createTextNode']('');_0x590ccc['insertNode'](_0x49e64a),_0x590ccc['setStartAfter'](_0x49e64a),_0x590ccc['setEndAfter'](_0x49e64a),_0x12661c['removeAllRanges'](),_0x12661c['addRange'](_0x590ccc);return;}}const _0xaed3ae=_0x8f0be['match'](/^[-*][\s\u00A0]$/);if(_0xaed3ae&&this['isAtStartOfBlock'](_0x36cff4)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x590ccc['setStart'](_0x36cff4,Math['max'](_0x5264fa-0x2,0x0)),_0x590ccc['setEnd'](_0x36cff4,_0x5264fa),_0x590ccc['deleteContents']();const _0x5a5a62=this['ensureListInsertionAnchor'](_0x36cff4);document['execCommand']('insertUnorderedList',![],null);_0x5a5a62&&_0x5a5a62['parentNode']&&_0x5a5a62['parentNode']['removeChild'](_0x5a5a62);this['updateToolbarState']();return;}const _0x14a86f=_0x8f0be['match'](/^1\.[\s\u00A0]$/);if(_0x14a86f&&this['isAtStartOfBlock'](_0x36cff4)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x590ccc['setStart'](_0x36cff4,Math['max'](_0x5264fa-0x3,0x0)),_0x590ccc['setEnd'](_0x36cff4,_0x5264fa),_0x590ccc['deleteContents']();const _0x390f79=this['ensureListInsertionAnchor'](_0x36cff4);document['execCommand']('insertOrderedList',![],null);_0x390f79&&_0x390f79['parentNode']&&_0x390f79['parentNode']['removeChild'](_0x390f79);this['updateToolbarState']();return;}}['isAtStartOfBlock'](_0x461fed){let _0x22e964=_0x461fed;while(_0x22e964&&_0x22e964!==this['editor']){const _0x14326b=_0x22e964['parentNode'];if(!_0x14326b)break;const _0x20b73e=_0x14326b['tagName'];if(_0x20b73e==='DIV'||_0x20b73e==='P'||_0x20b73e==='LI'||_0x14326b===this['editor']){let _0x571445=_0x14326b['firstChild'];while(_0x571445&&(_0x571445['nodeType']===Node['TEXT_NODE']&&_0x571445['textContent']===''||_0x571445['nodeType']===Node['ELEMENT_NODE']&&_0x571445['tagName']==='BR')){_0x571445=_0x571445['nextSibling'];}return _0x571445===_0x461fed||_0x571445===_0x22e964;}_0x22e964=_0x14326b;}if(_0x22e964===this['editor']||_0x461fed['parentNode']===this['editor']){let _0x250a63=this['editor']['firstChild'];while(_0x250a63&&(_0x250a63['nodeType']===Node['TEXT_NODE']&&_0x250a63['textContent']===''||_0x250a63['nodeType']===Node['ELEMENT_NODE']&&_0x250a63['tagName']==='BR')){_0x250a63=_0x250a63['nextSibling'];}return _0x250a63===_0x461fed;}return![];}['getClosestBlockElement'](_0x376c88){let _0x2bb781=_0x376c88;while(_0x2bb781&&_0x2bb781!==this['editor']){const _0x32fab4=_0x2bb781['parentNode'];if(!_0x32fab4)break;const _0x5a4da6=_0x32fab4['tagName'];if(_0x5a4da6==='DIV'||_0x5a4da6==='P'||_0x5a4da6==='LI'||_0x32fab4===this['editor'])return _0x32fab4;_0x2bb781=_0x32fab4;}return this['editor'];}['ensureListInsertionAnchor'](_0x38a854){const _0x5fd7f3=window['getSelection']();if(!_0x5fd7f3||_0x5fd7f3['rangeCount']===0x0)return null;const _0x410d1a=this['getClosestBlockElement'](_0x38a854);if(!_0x410d1a||_0x410d1a===this['editor'])return null;const _0x512dde=_0x410d1a['textContent']['replace'](/\u200B/g,'');if(_0x512dde!=='')return null;const _0x3008a5=document['createTextNode']('');_0x410d1a['appendChild'](_0x3008a5);const _0x2dcbd8=document['createRange']();return _0x2dcbd8['setStart'](_0x3008a5,0x1),_0x2dcbd8['setEnd'](_0x3008a5,0x1),_0x5fd7f3['removeAllRanges'](),_0x5fd7f3['addRange'](_0x2dcbd8),_0x3008a5;}['getContainingListItem'](){const _0x41e808=window['getSelection']();if(!_0x41e808||_0x41e808['rangeCount']===0x0)return null;let _0x7f2273=_0x41e808['anchorNode'];while(_0x7f2273&&_0x7f2273!==this['editor']){if(_0x7f2273['nodeType']===Node['ELEMENT_NODE']&&_0x7f2273['tagName']==='LI')return _0x7f2273;_0x7f2273=_0x7f2273['parentNode'];}return null;}['isEmptyListItem'](_0x3b8ca9){if(!_0x3b8ca9)return![];const _0x58c576=_0x3b8ca9['textContent']['replace'](/\u200B/g,'')['trim']();if(_0x58c576!=='')return![];const _0x177ecd=_0x3b8ca9['querySelector']('img');if(_0x177ecd)return![];const _0x3acbb0=_0x3b8ca9['querySelector']('ul,\x20ol');if(_0x3acbb0)return![];return!![];}['isCursorAtStartOfListItem'](_0x2dc9d1){if(!_0x2dc9d1)return![];const _0x44f2b4=window['getSelection']();if(!_0x44f2b4||_0x44f2b4['rangeCount']===0x0||!_0x44f2b4['isCollapsed'])return![];const _0x1eee8d=_0x44f2b4['getRangeAt'](0x0),_0x299adb=_0x1eee8d['startContainer'];if(_0x299adb!==_0x2dc9d1&&!_0x2dc9d1['contains'](_0x299adb))return![];const _0x32831f=_0x1eee8d['cloneRange']();_0x32831f['setStart'](_0x2dc9d1,0x0),_0x32831f['setEnd'](_0x299adb,_0x1eee8d['startOffset']);const _0x56e60e=_0x32831f['toString']()['replace'](/\u200B/g,'')['replace'](/\u00A0/g,'\x20');return _0x56e60e['trim']()==='';}['indentListItem'](_0x2dcdb5){const _0x2563d3=_0x2dcdb5['previousElementSibling'];if(!_0x2563d3||_0x2563d3['tagName']!=='LI')return;const _0x51fe01=_0x2dcdb5['parentNode'],_0x29f2e0=_0x51fe01['tagName'];let _0xdfa8e6=_0x2563d3['querySelector'](':scope\x20>\x20ul,\x20:scope\x20>\x20ol');!_0xdfa8e6&&(_0xdfa8e6=document['createElement'](_0x29f2e0),_0x2563d3['appendChild'](_0xdfa8e6)),_0xdfa8e6['appendChild'](_0x2dcdb5),this['placeCursorInListItem'](_0x2dcdb5);}['outdentListItem'](_0x4c462e){const _0x5d18fd=_0x4c462e['parentNode'];if(!_0x5d18fd||_0x5d18fd['tagName']!=='UL'&&_0x5d18fd['tagName']!=='OL')return;const _0xfbffcd=_0x5d18fd['parentNode'];if(_0xfbffcd&&_0xfbffcd['tagName']==='LI'){const _0x443fad=_0xfbffcd['parentNode'];_0x443fad['insertBefore'](_0x4c462e,_0xfbffcd['nextSibling']),_0x5d18fd['children']['length']===0x0&&_0x5d18fd['remove'](),this['placeCursorInListItem'](_0x4c462e);}else return;}['exitListOnEmptyBullet'](_0x3e0c90){const _0x50242f=_0x3e0c90['parentNode'];if(!_0x50242f)return;const _0x235bc4=_0x50242f['parentNode'];if(_0x235bc4&&_0x235bc4['tagName']==='LI'){this['outdentListItem'](_0x3e0c90);return;}const _0x267c08=_0x50242f['parentNode'],_0x1c2a77=document['createElement']('p');_0x1c2a77['innerHTML']='<br>',_0x267c08['insertBefore'](_0x1c2a77,_0x50242f['nextSibling']),_0x3e0c90['remove']();_0x50242f['children']['length']===0x0&&_0x50242f['remove']();const _0x57668f=window['getSelection'](),_0x22809d=document['createRange']();_0x22809d['setStart'](_0x1c2a77,0x0),_0x22809d['collapse'](!![]),_0x57668f['removeAllRanges'](),_0x57668f['addRange'](_0x22809d);}['placeCursorInListItem'](_0x49bb1d){const _0x44e7da=window['getSelection'](),_0x210abf=document['createRange'](),_0xff6a47=document['createTreeWalker'](_0x49bb1d,NodeFilter['SHOW_TEXT'],null,![]),_0x2a4bc7=_0xff6a47['nextNode']();_0x2a4bc7?_0x210abf['setStart'](_0x2a4bc7,0x0):_0x210abf['setStart'](_0x49bb1d,0x0),_0x210abf['collapse'](!![]),_0x44e7da['removeAllRanges'](),_0x44e7da['addRange'](_0x210abf);}['handleLinkClick'](_0xd267a8){const _0x8a6027=this['isMac']?_0xd267a8['metaKey']:_0xd267a8['ctrlKey'];if(!_0x8a6027)return;let _0x329329=_0xd267a8['target'];while(_0x329329&&_0x329329!==this['editor']){if(_0x329329['tagName']==='A'){_0xd267a8['preventDefault'](),_0xd267a8['stopPropagation']();const _0x3ca85c=_0x329329['getAttribute']('href');if(!_0x3ca85c)return;if(_0x3ca85c['startsWith']('mention:'))return;const _0x33ab40=/^https?:\/\//i['test'](_0x3ca85c);_0x33ab40?window['open'](_0x3ca85c,'_blank','noopener,noreferrer'):window['location']['href']=_0x3ca85c;return;}_0x329329=_0x329329['parentNode'];}}['handleLinkMouseEnter'](_0x4ed7c6){const _0x29ec55=_0x4ed7c6['target'];if(_0x29ec55['tagName']!=='A')return;const _0x465d85=_0x29ec55['getAttribute']('href')||'';if(_0x465d85['startsWith']('mention:'))return;this['linkTooltipTimeout']&&clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=setTimeout(()=>{this['showLinkTooltip'](_0x29ec55);},0x12c);}['handleLinkMouseLeave'](_0x49eeff){const _0x372839=_0x49eeff['target'];if(_0x372839['tagName']!=='A')return;this['linkTooltipTimeout']&&(clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=null),this['hideLinkTooltip']();}['showLinkTooltip'](_0x56cf5d){!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 _0x3d2043=_0x56cf5d['getBoundingClientRect'](),_0x52dde4=this['linkTooltip']['getBoundingClientRect']();let _0x135205=_0x3d2043['bottom']+0x4,_0x15cc43=_0x3d2043['left']+_0x3d2043['width']/0x2;_0x135205+0x1e>window['innerHeight']&&(_0x135205=_0x3d2043['top']-0x1e);const _0x548f7c=0x78;if(_0x15cc43-_0x548f7c/0x2<0xa)_0x15cc43=_0x548f7c/0x2+0xa;else _0x15cc43+_0x548f7c/0x2>window['innerWidth']-0xa&&(_0x15cc43=window['innerWidth']-_0x548f7c/0x2-0xa);this['linkTooltip']['style']['top']=_0x135205+'px',this['linkTooltip']['style']['left']=_0x15cc43+'px',this['linkTooltip']['style']['transform']='translateX(-50%)',this['linkTooltip']['classList']['add']('visible');}['hideLinkTooltip'](){this['linkTooltip']&&this['linkTooltip']['classList']['remove']('visible');}['handleKeydown'](_0x1c054f){if(this['mentionState']['active']){if(_0x1c054f['key']==='ArrowDown'){_0x1c054f['preventDefault'](),this['mentionNavigate'](0x1);return;}if(_0x1c054f['key']==='ArrowUp'){_0x1c054f['preventDefault'](),this['mentionNavigate'](-0x1);return;}if(_0x1c054f['key']==='Enter'||_0x1c054f['key']==='Tab'){if(this['mentionState']['filteredUsers']['length']>0x0){_0x1c054f['preventDefault'](),this['insertMention'](this['mentionState']['filteredUsers'][this['mentionState']['selectedIndex']]);return;}}if(_0x1c054f['key']==='Escape'){_0x1c054f['preventDefault'](),this['closeMentionDropdown']();return;}}if(_0x1c054f['key']==='Tab'&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x59b94e=this['getContainingListItem']();if(_0x59b94e&&this['isCursorAtStartOfListItem'](_0x59b94e)){_0x1c054f['preventDefault']();_0x1c054f['shiftKey']?this['outdentListItem'](_0x59b94e):this['indentListItem'](_0x59b94e);this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x1c054f['key']==='Enter'&&!_0x1c054f['shiftKey']&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x5851ad=this['getContainingListItem']();if(_0x5851ad&&this['isEmptyListItem'](_0x5851ad)){_0x1c054f['preventDefault'](),this['exitListOnEmptyBullet'](_0x5851ad),this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x1c054f['key']==='Enter'&&!_0x1c054f['shiftKey']&&this['isSelectionInTag']('PRE')){_0x1c054f['preventDefault']();const _0x345b7f=window['getSelection']();if(_0x345b7f['rangeCount']>0x0){const _0x382781=_0x345b7f['getRangeAt'](0x0);_0x382781['deleteContents']();const _0x427c9e=document['createTextNode']('\x0a');_0x382781['insertNode'](_0x427c9e),_0x382781['setStartAfter'](_0x427c9e),_0x382781['setEndAfter'](_0x427c9e),_0x345b7f['removeAllRanges'](),_0x345b7f['addRange'](_0x382781),this['handleInput']();}return;}(_0x1c054f['ctrlKey']||_0x1c054f['metaKey'])&&_0x1c054f['key']==='b'&&(_0x1c054f['preventDefault'](),document['execCommand']('bold',![],null));(_0x1c054f['ctrlKey']||_0x1c054f['metaKey'])&&_0x1c054f['key']==='i'&&(_0x1c054f['preventDefault'](),document['execCommand']('italic',![],null));if((_0x1c054f['ctrlKey']||_0x1c054f['metaKey'])&&_0x1c054f['key']==='k'){_0x1c054f['preventDefault'](),this['openLinkDialog']();return;}}['handlePaste'](_0x405c77){const _0x29f5ba=_0x405c77['clipboardData'];if(_0x29f5ba&&this['options']['onAddAttachments']){const _0x5a2678=this['extractImageFilesFromClipboard'](_0x29f5ba);if(_0x5a2678['length']>0x0){_0x405c77['preventDefault'](),this['addAndInsertImages'](_0x5a2678);return;}}_0x405c77['preventDefault']();const _0x2bcdfc=_0x405c77['clipboardData']['getData']('text/html');if(_0x2bcdfc&&_0x2bcdfc['trim']()){const _0x302d66=this['convertPastedHtmlToMarkdown'](_0x2bcdfc);if(_0x302d66&&_0x302d66['trim']()){this['insertMarkdownAsRichText'](_0x302d66);return;}}const _0x52d95a=_0x405c77['clipboardData']['getData']('text/plain');document['execCommand']('insertText',![],_0x52d95a);}['convertPastedHtmlToMarkdown'](_0x1a9d3f){const _0x3fc7d1=document['createElement']('div');_0x3fc7d1['innerHTML']=_0x1a9d3f;const _0x1cb50f=_0x3fc7d1['querySelectorAll']('style,\x20script,\x20meta,\x20link,\x20head,\x20title');_0x1cb50f['forEach'](_0x4dd321=>_0x4dd321['remove']());const _0x422650=_0x3fc7d1['querySelectorAll']('*');_0x422650['forEach'](_0x34a352=>{const _0x3c9dd2=Array['from'](_0x34a352['attributes']);_0x3c9dd2['forEach'](_0xd5590e=>{_0xd5590e['name']['startsWith']('data-')&&_0xd5590e['name']!=='data-attachment-name'&&_0xd5590e['name']!=='data-mention-user-id'&&_0x34a352['removeAttribute'](_0xd5590e['name']);});}),_0x3fc7d1['querySelectorAll']('font[color]')['forEach'](_0x17a1ad=>{_0x17a1ad['replaceWith'](..._0x17a1ad['childNodes']);}),_0x3fc7d1['querySelectorAll']('span')['forEach'](_0x4124d2=>{_0x4124d2['style']['color']&&_0x4124d2['style']['removeProperty']('color'),!_0x4124d2['getAttribute']('style')&&!_0x4124d2['getAttribute']('data-mention-user-id')&&!_0x4124d2['getAttribute']('data-attachment-name')&&_0x4124d2['replaceWith'](..._0x4124d2['childNodes']);});try{return this['turndownService']['turndown'](_0x3fc7d1['innerHTML']);}catch(_0x4006bc){return console['warn']('Failed\x20to\x20convert\x20HTML\x20to\x20markdown:',_0x4006bc),null;}}['insertMarkdownAsRichText'](_0x1c5bce){const _0x1bfb89=window['marked'];if(!_0x1bfb89){document['execCommand']('insertText',![],_0x1c5bce);return;}try{const _0x5964da=this['preprocessColorSyntax'](_0x1c5bce),_0x3f73a8=_0x1bfb89['parse'](_0x5964da),_0x489ad6=document['createElement']('div');_0x489ad6['innerHTML']=_0x3f73a8,this['processHtmlForEditor'](_0x489ad6),document['execCommand']('insertHTML',![],_0x489ad6['innerHTML']);}catch(_0x51e520){console['warn']('Failed\x20to\x20convert\x20markdown\x20to\x20HTML:',_0x51e520),document['execCommand']('insertText',![],_0x1c5bce);}}['processHtmlForEditor'](_0x422e6d){const _0x1a3b3c=_0x422e6d['querySelectorAll']('pre');_0x1a3b3c['forEach'](_0x342f4f=>{const _0x4cbb34=_0x342f4f['querySelector']('code');if(_0x4cbb34){const _0x4e4ac0=Array['from'](_0x4cbb34['classList'])['find'](_0x4331ba=>_0x4331ba['startsWith']('language-')),_0x189922=_0x4e4ac0?_0x4e4ac0['replace']('language-',''):'',_0x45e292=document['createElement']('pre');_0x189922&&_0x45e292['setAttribute']('data-language',_0x189922),_0x45e292['textContent']=_0x4cbb34['textContent'],_0x342f4f['replaceWith'](_0x45e292);}});const _0x4cba7d=_0x422e6d['querySelectorAll']('a');_0x4cba7d['forEach'](_0x477ac1=>{_0x477ac1['setAttribute']('target','_blank'),_0x477ac1['setAttribute']('rel','noopener\x20noreferrer');});}['handleDragStart'](_0x7d0fac){const _0xf4b179=_0x7d0fac['target'];if(!_0xf4b179||_0xf4b179['tagName']!=='IMG')return;if(!_0x7d0fac['dataTransfer'])return;const _0x37e358=_0xf4b179['getAttribute']('data-attachment-name')||'';try{_0x7d0fac['dataTransfer']['setData'](INTERNAL_DRAG_MIME,_0x37e358||'1');}catch{}_0x7d0fac['dataTransfer']['effectAllowed']='move';}['handleDragOver'](_0x2118ef){if(!this['isExternalFileTransfer'](_0x2118ef['dataTransfer']))return;_0x2118ef['preventDefault'](),_0x2118ef['dataTransfer']['dropEffect']='copy';}['handleDrop'](_0x2fc859){if(!this['isExternalFileTransfer'](_0x2fc859['dataTransfer']))return;const _0x2851c6=_0x2fc859['dataTransfer'],_0x208d6d=Array['from'](_0x2851c6['files']||[])['filter'](_0x12673a=>_0x12673a&&typeof _0x12673a['type']==='string'),_0x2bc555=_0x208d6d['filter'](_0x4dd937=>_0x4dd937['type']['startsWith']('image/'));if(_0x2bc555['length']===0x0)return;_0x2fc859['preventDefault'](),_0x2fc859['stopPropagation'](),this['cleanupParentDragState'](),this['moveSelectionToDropPoint'](_0x2fc859),this['addAndInsertImages'](_0x2bc555);}['cleanupParentDragState'](){let _0x20d0b5=this['editor']['parentElement'];while(_0x20d0b5){_0x20d0b5['classList']&&_0x20d0b5['classList']['contains']('drag-over')&&_0x20d0b5['classList']['remove']('drag-over'),_0x20d0b5=_0x20d0b5['parentElement'];}}['isExternalFileTransfer'](_0xdea4d0){if(!_0xdea4d0)return![];const _0x8a7cfa=Array['from'](_0xdea4d0['types']||[]);if(!_0x8a7cfa['includes']('Files'))return![];if(_0x8a7cfa['includes'](INTERNAL_DRAG_MIME))return![];if(_0xdea4d0['files']&&_0xdea4d0['files']['length']>0x0)return!![];if(_0xdea4d0['items']&&Array['from'](_0xdea4d0['items'])['some'](_0x414a50=>_0x414a50['kind']==='file'))return!![];return![];}['moveSelectionToDropPoint'](_0x6c3fa3){const _0x26cf86=_0x6c3fa3['clientX'],_0x43a5ac=_0x6c3fa3['clientY'];let _0x4a7f28=null;if(document['caretRangeFromPoint'])_0x4a7f28=document['caretRangeFromPoint'](_0x26cf86,_0x43a5ac);else{if(document['caretPositionFromPoint']){const _0x42f44d=document['caretPositionFromPoint'](_0x26cf86,_0x43a5ac);_0x42f44d&&(_0x4a7f28=document['createRange'](),_0x4a7f28['setStart'](_0x42f44d['offsetNode'],_0x42f44d['offset']),_0x4a7f28['collapse'](!![]));}}if(_0x4a7f28){const _0x3460b4=window['getSelection']();_0x3460b4['removeAllRanges'](),_0x3460b4['addRange'](_0x4a7f28);}}['extractImageFilesFromClipboard'](_0x1531cd){const _0x2ecfe9=Array['from'](_0x1531cd['items']||[]),_0x475cff=[];for(const _0x3cba95 of _0x2ecfe9){if(_0x3cba95['kind']==='file'&&_0x3cba95['type']&&_0x3cba95['type']['startsWith']('image/')){const _0x406c03=_0x3cba95['getAsFile']();if(_0x406c03)_0x475cff['push'](_0x406c03);}}return _0x475cff;}['addAndInsertImages'](_0x390476){const _0x1b6210=_0x390476['map'](_0x2f42ca=>this['prepareAttachmentFile'](_0x2f42ca))['filter'](Boolean);if(_0x1b6210['length']===0x0)return;const _0xe6d814=_0x1b6210['map'](_0x55fb0f=>_0x55fb0f['file']);try{this['options']['onAddAttachments'](_0xe6d814);}catch(_0x133d14){console['error']('Failed\x20to\x20add\x20attachments:',_0x133d14);}for(const {name:_0x2ef288,objectUrl:_0x41855b}of _0x1b6210){this['insertAttachmentImage'](_0x2ef288,_0x41855b);}this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));}['prepareAttachmentFile'](_0x160059){const _0x599fd8=this['sanitizeFilename'](_0x160059['name']||this['defaultImageName'](_0x160059['type']));if(!_0x599fd8)return null;const _0x1e94a3=this['getUniqueAttachmentName'](_0x599fd8),_0x225752=_0x1e94a3===_0x160059['name']?_0x160059:new File([_0x160059],_0x1e94a3,{'type':_0x160059['type'],'lastModified':_0x160059['lastModified']}),_0x1aee08=URL['createObjectURL'](_0x225752);return this['attachmentObjectUrls']['set'](_0x1e94a3,_0x1aee08),{'name':_0x1e94a3,'file':_0x225752,'objectUrl':_0x1aee08};}['getUniqueAttachmentName'](_0x49c2ed){const _0x532268=_0x51f073=>{if(this['attachmentObjectUrls']['has'](_0x51f073))return!![];if(this['options']['isAttachmentNameTaken'])try{return Boolean(this['options']['isAttachmentNameTaken'](_0x51f073));}catch{return![];}return![];};if(!_0x532268(_0x49c2ed))return _0x49c2ed;const {stem:_0x15188c,ext:_0x56717d}=this['splitFilename'](_0x49c2ed);for(let _0x4db12b=0x2;_0x4db12b<0x3e8;_0x4db12b++){const _0x2e7784=_0x15188c+'-'+_0x4db12b+_0x56717d;if(!_0x532268(_0x2e7784))return _0x2e7784;}return _0x15188c+'-'+Date['now']()+_0x56717d;}['splitFilename'](_0x5e6859){const _0x3c3e7c=_0x5e6859['lastIndexOf']('.');if(_0x3c3e7c<=0x0||_0x3c3e7c===_0x5e6859['length']-0x1)return{'stem':_0x5e6859,'ext':''};return{'stem':_0x5e6859['slice'](0x0,_0x3c3e7c),'ext':_0x5e6859['slice'](_0x3c3e7c)};}['sanitizeFilename'](_0x247bde){const _0x415e3b=String(_0x247bde||'')['split']('/')['pop']()['split']('\x5c')['pop']();return _0x415e3b['replace'](/[\u0000-\u001F\u007F]/g,'')['trim']();}['defaultImageName'](_0x5c4878){const _0x50942d=this['extensionForMime'](_0x5c4878);return'pasted-image-'+Date['now']()+_0x50942d;}['extensionForMime'](_0x9daa1c){switch(_0x9daa1c){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'](_0xfe541c,_0x32f668){const _0x2b8932=document['createElement']('img');_0x2b8932['src']=_0x32f668,_0x2b8932['alt']=_0xfe541c,_0x2b8932['setAttribute']('data-attachment-name',_0xfe541c),_0x2b8932['draggable']=!![];const _0x19d237=window['getSelection']();let _0x37be0c=![];if(_0x19d237&&_0x19d237['rangeCount']>0x0){const _0x3691d3=_0x19d237['getRangeAt'](0x0);_0x37be0c=this['editor']['contains'](_0x3691d3['commonAncestorContainer'])||this['editor']===_0x3691d3['commonAncestorContainer'];}if(!_0x37be0c){this['editor']['appendChild'](_0x2b8932);const _0x3c088d=document['createRange']();_0x3c088d['setStartAfter'](_0x2b8932),_0x3c088d['collapse'](!![]),_0x19d237['removeAllRanges'](),_0x19d237['addRange'](_0x3c088d);return;}const _0x4ab447=_0x19d237['getRangeAt'](0x0);_0x4ab447['deleteContents'](),_0x4ab447['insertNode'](_0x2b8932),_0x4ab447['setStartAfter'](_0x2b8932),_0x4ab447['collapse'](!![]),_0x19d237['removeAllRanges'](),_0x19d237['addRange'](_0x4ab447);}['toggleInlineCode'](){const _0x595f18=window['getSelection']();if(_0x595f18['rangeCount']===0x0)return;const _0x3cf7e3=_0x595f18['getRangeAt'](0x0),_0x57c5fe=_0x3cf7e3['toString']();if(_0x57c5fe){const _0x37141a=document['createElement']('code');_0x37141a['textContent']=_0x57c5fe,_0x3cf7e3['deleteContents'](),_0x3cf7e3['insertNode'](_0x37141a),_0x3cf7e3['setStartAfter'](_0x37141a),_0x3cf7e3['setEndAfter'](_0x37141a),_0x595f18['removeAllRanges'](),_0x595f18['addRange'](_0x3cf7e3);}}['insertCodeBlock'](){const _0x1e46ac=window['getSelection']();if(_0x1e46ac['rangeCount']===0x0)return;const _0x1289c0=_0x1e46ac['getRangeAt'](0x0),_0x215494=_0x1289c0['toString'](),_0x449851=document['createElement']('pre'),_0x133121=document['createElement']('code');_0x133121['textContent']=_0x215494||'\x0a',_0x449851['appendChild'](_0x133121),_0x1289c0['deleteContents'](),_0x1289c0['insertNode'](_0x449851);const _0x377612=document['createElement']('p');_0x377612['innerHTML']='<br>',_0x449851['parentNode']['insertBefore'](_0x377612,_0x449851['nextSibling']);const _0x207c14=document['createRange']();!_0x215494?(_0x207c14['setStart'](_0x133121['firstChild'],0x0),_0x207c14['setEnd'](_0x133121['firstChild'],0x0)):(_0x207c14['selectNodeContents'](_0x133121),_0x207c14['collapse'](![])),_0x1e46ac['removeAllRanges'](),_0x1e46ac['addRange'](_0x207c14);}['updatePlaceholder'](){const _0x47efbe=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');_0x47efbe?this['editor']['classList']['remove']('empty'):this['editor']['classList']['add']('empty');}['setMarkdown'](_0x24a613){if(this['_sourceMode']&&this['_monacoEditor']){this['_monacoEditor']['setValue'](_0x24a613||'');return;}if(!_0x24a613||!_0x24a613['trim']()){this['editor']['innerHTML']='',this['updatePlaceholder']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']='':this['element']['textContent']='';return;}const _0x266833=this['preprocessColorSyntax'](_0x24a613),_0x58f29e=window['marked']['parse'](_0x266833);this['editor']['innerHTML']=_0x58f29e,this['rewriteAttachmentImages'](),this['rewriteMentionLinks'](),this['addLinkHints'](),this['updatePlaceholder'](),this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x24a613:this['element']['textContent']=_0x24a613;}['rewriteAttachmentImages'](){const _0x25c5e6=this['editor']['querySelectorAll']('img');_0x25c5e6['forEach'](_0x55a5a7=>{const _0x3e1d99=_0x55a5a7['getAttribute']('data-attachment-name'),_0x3a2e21=_0x55a5a7['getAttribute']('src')||'',_0x2513ce=this['parseAttachmentReference'](_0x3a2e21)||this['parseTaskAttachmentUrl'](_0x3a2e21),_0x4221ec=_0x3e1d99||(_0x2513ce?_0x2513ce['name']:null);if(!_0x4221ec)return;_0x55a5a7['setAttribute']('data-attachment-name',_0x4221ec);const _0x4213ab=this['attachmentObjectUrls']['get'](_0x4221ec)||(this['options']['resolveAttachmentUrl']?this['options']['resolveAttachmentUrl'](_0x4221ec):null);_0x4213ab&&(_0x55a5a7['src']=_0x4213ab);});}['rewriteMentionLinks'](){const _0x573bae=this['editor']['querySelectorAll']('a[href^=\x22mention:\x22]');_0x573bae['forEach'](_0x2df487=>{const _0x5c1c50=_0x2df487['getAttribute']('href')||'',_0x10c464=_0x5c1c50['replace']('mention:',''),_0x1e8ec3=_0x2df487['textContent']||'',_0x4b4f83=document['createElement']('span');_0x4b4f83['className']='mention',_0x4b4f83['setAttribute']('data-mention-user-id',_0x10c464),_0x4b4f83['setAttribute']('contenteditable','false'),_0x4b4f83['textContent']='@'+_0x1e8ec3;const _0x25307a=_0x2df487['previousSibling'];_0x25307a&&_0x25307a['nodeType']===Node['TEXT_NODE']&&_0x25307a['textContent']['endsWith']('@')&&(_0x25307a['textContent']=_0x25307a['textContent']['slice'](0x0,-0x1)),_0x2df487['parentNode']['replaceChild'](_0x4b4f83,_0x2df487);});}['addLinkHints'](){if(!this['options']['editable'])return;const _0x4ba227=this['editor']['querySelectorAll']('a');_0x4ba227['forEach'](_0x31a2ac=>{const _0xe2b444=_0x31a2ac['getAttribute']('href')||'';if(_0xe2b444['startsWith']('mention:'))return;const _0x3988e6=_0x31a2ac['textContent']||_0xe2b444,_0x519e73=_0x3988e6+'\x20('+(this['linkHintText']||'Ctrl+click\x20to\x20follow')+')';_0x31a2ac['setAttribute']('aria-label',_0x519e73);});}['preprocessColorSyntax'](_0x5cdc15){if(!_0x5cdc15)return _0x5cdc15;const _0x50fadf=_0x184d87=>{return String(_0x184d87)['replace'](/\{color:(#[0-9A-Fa-f]{3,6})\}([\s\S]*?)\{\/color\}/g,(_0xbfca00,_0x4d4a2c,_0x2d1642)=>{const _0x3b64b8=_0x50fadf(_0x2d1642);return'<span\x20style=\x22color:\x20'+_0x4d4a2c+'\x22>'+_0x3b64b8+'</span>';});};return _0x50fadf(_0x5cdc15);}['parseAttachmentReference'](_0x470c4b){if(!_0x470c4b||typeof _0x470c4b!=='string')return null;if(!_0x470c4b['startsWith'](ATTACHMENT_SCHEME)&&!_0x470c4b['startsWith'](ATTACHMENT_SCHEME+'//'))return null;const _0x14aeed=_0x470c4b['replace'](ATTACHMENT_SCHEME+'//','')['replace'](ATTACHMENT_SCHEME,'');if(!_0x14aeed)return null;try{return{'name':decodeURIComponent(_0x14aeed)};}catch{return{'name':_0x14aeed};}}['parseTaskAttachmentUrl'](_0x412a98){if(!_0x412a98||typeof _0x412a98!=='string')return null;const _0xcf70c7=_0x412a98['match'](/\/tasks\/[^/]+\/attachments\/([^?#]+)/);if(!_0xcf70c7)return null;const _0x49baaf=_0xcf70c7[0x1];try{return{'name':decodeURIComponent(_0x49baaf)};}catch{return{'name':_0x49baaf};}}['updateAttachmentFile'](_0x13d2f0,_0x3f4dcf){const _0x34b6e2=this['attachmentObjectUrls']['get'](_0x13d2f0);if(_0x34b6e2)try{URL['revokeObjectURL'](_0x34b6e2);}catch{}const _0x5d9527=URL['createObjectURL'](_0x3f4dcf);this['attachmentObjectUrls']['set'](_0x13d2f0,_0x5d9527);const _0x3ff743=this['editor']['querySelector']('img[data-attachment-name=\x22'+CSS['escape'](_0x13d2f0)+'\x22]');return _0x3ff743&&(_0x3ff743['src']=_0x5d9527),_0x5d9527;}['getMarkdown'](){if(this['_sourceMode']&&this['_monacoEditor'])return this['_monacoEditor']['getValue']();const _0x53d478=this['editor']['innerHTML'];if(!_0x53d478||_0x53d478['trim']()===''||_0x53d478==='<br>')return'';return this['turndownService']['turndown'](_0x53d478)['replace'](/\u200B/g,'');}['getValue'](){return this['getMarkdown']();}['setValue'](_0xed1ec9){this['setMarkdown'](_0xed1ec9);}['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'](_0xf1e5ae){this['editor']['contentEditable']=_0xf1e5ae,this['options']['editable']=_0xf1e5ae,this['_monacoEditor']&&this['_monacoEditor']['updateOptions']({'readOnly':!_0xf1e5ae});}['getMode'](){return this['_sourceMode']?'source':'visual';}['setMode'](_0x296247){_0x296247==='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 _0x97a80e=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':_0x97a80e,'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(_0x11d17f){console['error']('Failed\x20to\x20load\x20Monaco\x20for\x20source\x20mode:',_0x11d17f),this['editor']['style']['display']='',this['_sourceContainer']['style']['display']='none',this['_monacoLoading']=![];return;}this['_monacoLoading']=![];}else this['_monacoEditor']['setValue'](_0x97a80e);this['_sourceMode']=!![],this['_updateSourceToggleUI'](),this['_monacoEditor']['focus'](),this['_monacoEditor']['layout']();}['switchToVisual'](){if(!this['_sourceMode']||this['_destroyed'])return;let _0x355d33='';this['_monacoEditor']&&(_0x355d33=this['_monacoEditor']['getValue']()),this['editor']['style']['display']='',this['_sourceContainer']&&(this['_sourceContainer']['style']['display']='none'),this['_sourceMode']=![],this['setMarkdown'](_0x355d33),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'](_0x1ab530){if(!this['toolbarButtons'])return;for(const [_0x59e5ec,_0x1b4e33]of Object['entries'](this['toolbarButtons'])){_0x1b4e33['button']['disabled']=!_0x1ab530,_0x1b4e33['button']['style']['opacity']=_0x1ab530?'':'0.35',_0x1b4e33['button']['style']['pointerEvents']=_0x1ab530?'':'none';}}async['_ensureMonacoLoaded'](){if(window['MarkdownFileEditor']&&window['MarkdownFileEditor']['ensureMonacoLoaded'])return window['MarkdownFileEditor']['ensureMonacoLoaded']();if(typeof monaco!=='undefined')return;return new Promise((_0x64992,_0x6e443a)=>{const _0x180381=document['querySelector']('script[src*=\x22monaco-editor\x22][src*=\x22loader.js\x22]');if(_0x180381){const _0x43f1de=setInterval(()=>{typeof monaco!=='undefined'&&(clearInterval(_0x43f1de),_0x64992());},0x32);setTimeout(()=>{clearInterval(_0x43f1de),_0x6e443a(new Error('Monaco\x20loading\x20timeout'));},0x2710);return;}const _0x1cf54a=document['createElement']('script');_0x1cf54a['src']='/vendor/monaco-editor/0.45.0/min/vs/loader.js',_0x1cf54a['onload']=()=>{require['config']({'paths':{'vs':'/vendor/monaco-editor/0.45.0/min/vs'}}),require(['vs/editor/editor.main'],()=>_0x64992());},_0x1cf54a['onerror']=()=>_0x6e443a(new Error('Failed\x20to\x20load\x20Monaco\x20Editor')),document['head']['appendChild'](_0x1cf54a);});}['_getMonacoTheme'](){const _0x4e561b=document['documentElement']['getAttribute']('data-theme')==='dark';return _0x4e561b?'vs-dark':'vs';}['handleMentionInput'](_0x2c6c76){if(!this['options']['fetchUsers'])return;const _0x4410ce=window['getSelection']();if(!_0x4410ce||_0x4410ce['rangeCount']===0x0){this['closeMentionDropdown']();return;}const _0x349db1=_0x4410ce['getRangeAt'](0x0),_0x43300c=_0x349db1['startContainer'];if(_0x43300c['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x5ef663=_0x43300c['textContent']||'',_0x187b0b=_0x349db1['startOffset'],_0x40db0e=_0x5ef663['slice'](0x0,_0x187b0b),_0x34acdd=_0x40db0e['lastIndexOf']('@');if(_0x34acdd===-0x1){this['closeMentionDropdown']();return;}const _0x48343f=_0x34acdd>0x0?_0x40db0e[_0x34acdd-0x1]:'\x20';if(!/\s/['test'](_0x48343f)&&_0x34acdd!==0x0){this['closeMentionDropdown']();return;}const _0x25fa93=_0x40db0e['slice'](_0x34acdd+0x1);if(/[\s\n]/['test'](_0x25fa93)){this['closeMentionDropdown']();return;}this['mentionState']['active']=!![],this['mentionState']['query']=_0x25fa93['toLowerCase'](),this['mentionState']['startOffset']=_0x34acdd,this['mentionState']['startNode']=_0x43300c,this['showMentionDropdown']();}async['showMentionDropdown'](){if(!this['usersCache'])try{const _0x196b86=await this['options']['fetchUsers']();this['usersCache']=_0x196b86['users']||_0x196b86||[];}catch(_0x57f106){console['error']('Failed\x20to\x20fetch\x20users\x20for\x20@mention:',_0x57f106),this['closeMentionDropdown']();return;}this['mentionState']['users']=this['usersCache'];const _0x38fdb3=this['mentionState']['query'];this['mentionState']['filteredUsers']=this['mentionState']['users']['filter'](_0x3ab108=>{const _0x49a438=(_0x3ab108['name']||'')['toLowerCase'](),_0x2ce726=(_0x3ab108['username']||'')['toLowerCase']();return _0x49a438['includes'](_0x38fdb3)||_0x2ce726['includes'](_0x38fdb3);})['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']=_0x245a93=>{!this['mentionDropdown']['contains'](_0x245a93['target'])&&!this['editor']['contains'](_0x245a93['target'])&&this['closeMentionDropdown']();},document['addEventListener']('click',this['mentionClickOutsideHandler']),this['mentionScrollHandler']=()=>{this['mentionState']['active']&&this['positionMentionDropdown']();},window['addEventListener']('scroll',this['mentionScrollHandler'],!![]));const _0x64c0f0=this['mentionState']['filteredUsers'];this['mentionDropdown']['innerHTML']=_0x64c0f0['map']((_0x18398b,_0x3f76bf)=>{const _0x5c0ada=_0x3f76bf===this['mentionState']['selectedIndex'],_0x40bc17=_0x18398b['name']||_0x18398b['username']||'Unknown',_0x20f023=_0x18398b['username']||'',_0x175c2c=this['getInitials'](_0x40bc17),_0x121e4b=this['getAvatarColorIndex'](_0x20f023||_0x18398b['id']||_0x40bc17);return'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22mention-option\x20'+(_0x5c0ada?'mention-option-selected':'')+'\x22\x20data-index=\x22'+_0x3f76bf+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-avatar\x20avatar-color-'+_0x121e4b+'\x22>'+this['escapeHtmlForMention'](_0x175c2c)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-option-name\x22>'+this['escapeHtmlForMention'](_0x40bc17)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x20f023?'<span\x20class=\x22mention-option-username\x22>@'+this['escapeHtmlForMention'](_0x20f023)+'</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'](_0x23b918=>{_0x23b918['addEventListener']('mousedown',_0x238d10=>{_0x238d10['preventDefault']();const _0x33195e=parseInt(_0x23b918['dataset']['index'],0xa);this['insertMention'](this['mentionState']['filteredUsers'][_0x33195e]);}),_0x23b918['addEventListener']('mouseenter',()=>{const _0x31ad1b=parseInt(_0x23b918['dataset']['index'],0xa);this['mentionState']['selectedIndex']=_0x31ad1b,this['updateMentionSelection']();});}),this['mentionDropdown']['style']['display']='block';}['positionMentionDropdown'](){if(!this['mentionDropdown'])return;const _0x1b844b=window['getSelection']();if(!_0x1b844b||_0x1b844b['rangeCount']===0x0)return;const _0x222441=_0x1b844b['getRangeAt'](0x0),_0x686abe=_0x222441['getBoundingClientRect'](),_0x439780=0x104,_0x5e706f=Math['min'](0xf0,this['mentionState']['filteredUsers']['length']*0x24+0x8),_0x28e7cd=window['innerWidth'],_0x415add=window['innerHeight'],_0x22726e=_0x415add-_0x686abe['bottom'],_0x5d7719=_0x686abe['top'],_0x47b7c8=_0x22726e<_0x5e706f+0xa&&_0x5d7719>_0x22726e;let _0x57c1ae,_0x23c257;_0x47b7c8?_0x57c1ae=_0x686abe['top']+window['scrollY']-_0x5e706f-0x4:_0x57c1ae=_0x686abe['bottom']+window['scrollY']+0x4,_0x23c257=_0x686abe['left']+window['scrollX'],_0x23c257+_0x439780>_0x28e7cd-0xa&&(_0x23c257=_0x28e7cd-_0x439780-0xa),_0x23c257<0xa&&(_0x23c257=0xa),this['mentionDropdown']['style']['position']='absolute',this['mentionDropdown']['style']['top']=_0x57c1ae+'px',this['mentionDropdown']['style']['left']=_0x23c257+'px';}['mentionNavigate'](_0x243fc2){const _0x177f59=this['mentionState']['filteredUsers']['length'];if(_0x177f59===0x0)return;this['mentionState']['selectedIndex']=(this['mentionState']['selectedIndex']+_0x243fc2+_0x177f59)%_0x177f59,this['updateMentionSelection']();}['updateMentionSelection'](){if(!this['mentionDropdown'])return;const _0x16d4f8=this['mentionDropdown']['querySelectorAll']('.mention-option');_0x16d4f8['forEach']((_0x40daee,_0x1cb831)=>{_0x1cb831===this['mentionState']['selectedIndex']?(_0x40daee['classList']['add']('mention-option-selected'),_0x40daee['scrollIntoView']({'block':'nearest'})):_0x40daee['classList']['remove']('mention-option-selected');});}['insertMention'](_0x527550){if(!_0x527550)return;const _0x2c0c54=window['getSelection']();if(!_0x2c0c54||_0x2c0c54['rangeCount']===0x0)return;const _0x194b57=_0x2c0c54['getRangeAt'](0x0),_0x44e2b0=this['mentionState']['startNode'];if(!_0x44e2b0||_0x44e2b0['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x43892b=_0x44e2b0['textContent']||'',_0x3648c2=this['mentionState']['startOffset'],_0x290dc1=_0x194b57['startOffset'],_0x562d3b=_0x43892b['slice'](0x0,_0x3648c2),_0x48be41=_0x43892b['slice'](_0x290dc1),_0x53c0f9=document['createElement']('span');_0x53c0f9['className']='mention',_0x53c0f9['setAttribute']('data-mention-user-id',_0x527550['id']),_0x53c0f9['setAttribute']('contenteditable','false'),_0x53c0f9['textContent']='@'+(_0x527550['name']||_0x527550['username']);const _0x4d893f=document['createTextNode'](_0x562d3b),_0x5baae0=document['createTextNode']('\x20'+_0x48be41),_0x3ba96e=_0x44e2b0['parentNode'];_0x3ba96e['insertBefore'](_0x4d893f,_0x44e2b0),_0x3ba96e['insertBefore'](_0x53c0f9,_0x44e2b0),_0x3ba96e['insertBefore'](_0x5baae0,_0x44e2b0),_0x3ba96e['removeChild'](_0x44e2b0);const _0x2b0488=document['createRange']();_0x2b0488['setStart'](_0x5baae0,0x1),_0x2b0488['collapse'](!![]),_0x2c0c54['removeAllRanges'](),_0x2c0c54['addRange'](_0x2b0488),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'](_0x583507){const _0x42451c=document['createElement']('div');return _0x42451c['textContent']=_0x583507,_0x42451c['innerHTML'];}['getInitials'](_0x49d5b3){if(!_0x49d5b3)return'?';const _0x59d526=_0x49d5b3['trim']()['split'](/\s+/);if(_0x59d526['length']>=0x2)return(_0x59d526[0x0][0x0]+_0x59d526[_0x59d526['length']-0x1][0x0])['toUpperCase']();return _0x49d5b3['substring'](0x0,0x2)['toUpperCase']();}['getAvatarColorIndex'](_0x104bb6){if(!_0x104bb6)return 0x6;let _0x2d5dc5=0x0;for(let _0x3082e9=0x0;_0x3082e9<_0x104bb6['length'];_0x3082e9++){_0x2d5dc5=_0x104bb6['charCodeAt'](_0x3082e9)+((_0x2d5dc5<<0x5)-_0x2d5dc5);}return Math['abs'](_0x2d5dc5)%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 _0x32507d of this['attachmentObjectUrls']['values']()){try{URL['revokeObjectURL'](_0x32507d);}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(_0x3f807a,_0x5ccc2c={}){this['element']=_0x3f807a,this['options']={'placeholder':_0x5ccc2c['placeholder']||'Start\x20typing...','editable':_0x5ccc2c['editable']!==![],'onChange':_0x5ccc2c['onChange']||null,'minHeight':_0x5ccc2c['minHeight']||'100px','toolbar':_0x5ccc2c['toolbar']||![],'onAddAttachments':_0x5ccc2c['onAddAttachments']||null,'resolveAttachmentUrl':_0x5ccc2c['resolveAttachmentUrl']||null,'isAttachmentNameTaken':_0x5ccc2c['isAttachmentNameTaken']||null,'fetchUsers':_0x5ccc2c['fetchUsers']||null,'sourceToggle':_0x5ccc2c['sourceToggle']||![],'sourceLineNumbers':_0x5ccc2c['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 _0x58b20a=window['TurndownService'];this['turndownService']=new _0x58b20a({'headingStyle':'atx','codeBlockStyle':'fenced','emDelimiter':'_','bulletListMarker':'-'}),this['attachmentObjectUrls']=new Map(),this['registerTurndownRules'](),this['init']();}['registerTurndownRules'](){this['turndownService']['addRule']('profoundAttachmentImage',{'filter':_0x1ba37a=>{return _0x1ba37a&&_0x1ba37a['nodeName']==='IMG'&&_0x1ba37a['getAttribute']&&_0x1ba37a['getAttribute']('data-attachment-name');},'replacement':(_0x55f29a,_0x357308)=>{const _0x198296=_0x357308['getAttribute']('data-attachment-name')||'',_0x442668=_0x357308['getAttribute']('alt')||'',_0x7e009f=_0x198296['trim'](),_0x57b116=this['escapeAltText'](_0x442668||_0x7e009f),_0x218da2=encodeURIComponent(_0x7e009f);return'';}}),this['turndownService']['addRule']('profoundMention',{'filter':_0xdcbec1=>{return _0xdcbec1&&_0xdcbec1['nodeName']==='SPAN'&&_0xdcbec1['getAttribute']&&_0xdcbec1['getAttribute']('data-mention-user-id');},'replacement':(_0x58b561,_0x27ca74)=>{const _0x456aa9=_0x27ca74['getAttribute']('data-mention-user-id')||'',_0x3dea13=_0x27ca74['textContent']||'',_0x3502bd=_0x3dea13['startsWith']('@')?_0x3dea13['slice'](0x1):_0x3dea13;return'['+_0x3502bd+'](mention:'+_0x456aa9+')';}}),this['turndownService']['addRule']('profoundColoredText',{'filter':_0x3bc1bd=>{if(!_0x3bc1bd)return![];if(_0x3bc1bd['nodeName']==='FONT'&&_0x3bc1bd['getAttribute']&&_0x3bc1bd['getAttribute']('color'))return!![];if(_0x3bc1bd['nodeName']==='SPAN'&&_0x3bc1bd['style']&&_0x3bc1bd['style']['color']){if(_0x3bc1bd['getAttribute']&&_0x3bc1bd['getAttribute']('data-mention-user-id'))return![];return!![];}return![];},'replacement':(_0xfc7114,_0x58bc84)=>{if(!_0xfc7114['trim']())return _0xfc7114;let _0xf49576='';if(_0x58bc84['nodeName']==='FONT')_0xf49576=_0x58bc84['getAttribute']('color')||'';else _0x58bc84['style']&&_0x58bc84['style']['color']&&(_0xf49576=this['rgbToHex'](_0x58bc84['style']['color']));if(!_0xf49576)return _0xfc7114;return'{color:'+_0xf49576+'}'+_0xfc7114+'{/color}';}});}['rgbToHex'](_0x4a504e){if(!_0x4a504e)return'';if(_0x4a504e['startsWith']('#'))return _0x4a504e;const _0x35b4dd=_0x4a504e['match'](/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(!_0x35b4dd)return _0x4a504e;const _0x4e06bf=parseInt(_0x35b4dd[0x1],0xa),_0x1cc4f0=parseInt(_0x35b4dd[0x2],0xa),_0x6cc6f8=parseInt(_0x35b4dd[0x3],0xa);return'#'+[_0x4e06bf,_0x1cc4f0,_0x6cc6f8]['map'](_0x30d888=>_0x30d888['toString'](0x10)['padStart'](0x2,'0'))['join']('')['toUpperCase']();}['escapeAltText'](_0x5aa952){return String(_0x5aa952||'')['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 _0xf27a1d=this['element']['textContent']||this['element']['value']||'';_0xf27a1d['trim']()&&this['setMarkdown'](_0xf27a1d);}['createToolbar'](){this['toolbar']=document['createElement']('div'),this['toolbar']['className']='markdown-editor-toolbar',this['toolbarButtons']={};const _0x325458=[{'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'}];_0x325458['forEach'](_0x52f64c=>{if(_0x52f64c['separator']){const _0x41e1c=document['createElement']('div');_0x41e1c['className']='markdown-toolbar-separator',_0x41e1c['style']['width']='1px',_0x41e1c['style']['height']='16px',_0x41e1c['style']['background']='var(--color-border)',_0x41e1c['style']['margin']='0\x206px',_0x41e1c['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x41e1c);}else{if(_0x52f64c['isDropdown']){const _0x470f40=document['createElement']('div');_0x470f40['className']='markdown-toolbar-dropdown',_0x470f40['style']['position']='relative';const _0x1d6213=document['createElement']('button');_0x1d6213['type']='button',_0x1d6213['className']='markdown-editor-toolbar-btn\x20markdown-toolbar-dropdown-btn',_0x1d6213['tabIndex']=-0x1,_0x1d6213['innerHTML']=_0x52f64c['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>',_0x1d6213['title']=_0x52f64c['title'],_0x1d6213['dataset']['action']=_0x52f64c['action'];const _0x2925e4=document['createElement']('div');_0x2925e4['className']='markdown-toolbar-dropdown-menu',_0x2925e4['style']['display']='none';if(_0x52f64c['action']==='header')this['createHeaderDropdown'](_0x2925e4);else _0x52f64c['action']==='color'&&this['createColorDropdown'](_0x2925e4);_0x1d6213['addEventListener']('click',_0x352af2=>{_0x352af2['preventDefault'](),_0x352af2['stopPropagation'](),this['toggleDropdown'](_0x2925e4,_0x1d6213);}),_0x470f40['appendChild'](_0x1d6213),_0x470f40['appendChild'](_0x2925e4),this['toolbar']['appendChild'](_0x470f40),this['toolbarButtons'][_0x52f64c['id']]={'button':_0x1d6213,'dropdown':_0x2925e4,'command':_0x52f64c['command'],'tagName':_0x52f64c['tagName']};}else{const _0x464c70=document['createElement']('button');_0x464c70['type']='button',_0x464c70['className']='markdown-editor-toolbar-btn',_0x464c70['tabIndex']=-0x1,_0x464c70['innerHTML']=_0x52f64c['icon'],_0x464c70['title']=_0x52f64c['title'],_0x464c70['dataset']['action']=_0x52f64c['action'],_0x464c70['addEventListener']('click',_0x1775fd=>{_0x1775fd['preventDefault'](),this['handleToolbarAction'](_0x52f64c['action']);}),this['toolbar']['appendChild'](_0x464c70),this['toolbarButtons'][_0x52f64c['id']]={'button':_0x464c70,'command':_0x52f64c['command'],'tagName':_0x52f64c['tagName']};}}});if(this['options']['sourceToggle']){const _0x27c20c=document['createElement']('div');_0x27c20c['style']['marginLeft']='auto',this['toolbar']['appendChild'](_0x27c20c);const _0x35af26=document['createElement']('div');_0x35af26['className']='markdown-toolbar-separator\x20markdown-source-toggle-separator',_0x35af26['style']['width']='1px',_0x35af26['style']['height']='16px',_0x35af26['style']['background']='var(--color-border)',_0x35af26['style']['margin']='0\x206px',_0x35af26['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x35af26);const _0x27fe5e=document['createElement']('button');_0x27fe5e['type']='button',_0x27fe5e['className']='markdown-editor-toolbar-btn\x20markdown-source-toggle-btn',_0x27fe5e['tabIndex']=-0x1,_0x27fe5e['innerHTML']=ICONS['sourceToggle'],_0x27fe5e['title']='Switch\x20to\x20source\x20mode',_0x27fe5e['addEventListener']('click',_0x52e65e=>{_0x52e65e['preventDefault'](),_0x52e65e['stopPropagation'](),this['toggleSourceMode']();}),this['toolbar']['appendChild'](_0x27fe5e),this['_sourceToggleBtn']=_0x27fe5e;}document['addEventListener']('click',_0x2b03b4=>{!this['toolbar']['contains'](_0x2b03b4['target'])&&this['closeAllDropdowns']();});}['createHeaderDropdown'](_0x340edf){const _0x245a03=[{'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'}];_0x245a03['forEach'](_0x552670=>{const _0x2b4c90=document['createElement']('button');_0x2b4c90['type']='button',_0x2b4c90['className']='markdown-dropdown-item',_0x2b4c90['tabIndex']=-0x1,_0x2b4c90['innerHTML']='<span\x20style=\x22font-size:\x20'+(_0x552670['level']===0x0?'14px':0x14-_0x552670['level']*0x2+'px')+';\x20font-weight:\x20'+(_0x552670['level']===0x0?'normal':'bold')+'\x22>'+_0x552670['label']+'</span>',_0x2b4c90['addEventListener']('click',_0x1bc8ca=>{_0x1bc8ca['preventDefault'](),_0x1bc8ca['stopPropagation'](),this['applyHeader'](_0x552670['level']),this['closeAllDropdowns']();}),_0x340edf['appendChild'](_0x2b4c90);});}['createColorDropdown'](_0x5f3863){const _0xe9eeb3=[{'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'}],_0x5bdb5a=document['createElement']('div');_0x5bdb5a['className']='markdown-color-grid',_0x5bdb5a['style']['display']='grid',_0x5bdb5a['style']['gridTemplateColumns']='repeat(3,\x201fr)',_0x5bdb5a['style']['gap']='4px',_0x5bdb5a['style']['padding']='8px',_0xe9eeb3['forEach'](_0x3e07e7=>{const _0x1b68af=document['createElement']('button');_0x1b68af['type']='button',_0x1b68af['className']='markdown-color-btn',_0x1b68af['tabIndex']=-0x1,_0x1b68af['style']['width']='24px',_0x1b68af['style']['height']='24px',_0x1b68af['style']['backgroundColor']=_0x3e07e7['value'],_0x1b68af['style']['border']='1px\x20solid\x20var(--color-border)',_0x1b68af['style']['borderRadius']='4px',_0x1b68af['style']['cursor']='pointer',_0x1b68af['title']=_0x3e07e7['label'],_0x1b68af['addEventListener']('click',_0x128d8e=>{_0x128d8e['preventDefault'](),_0x128d8e['stopPropagation'](),this['applyColor'](_0x3e07e7['value']),this['closeAllDropdowns']();}),_0x5bdb5a['appendChild'](_0x1b68af);}),_0x5f3863['appendChild'](_0x5bdb5a);const _0x25060a=document['createElement']('button');_0x25060a['type']='button',_0x25060a['className']='markdown-dropdown-item',_0x25060a['innerHTML']='<span>Remove\x20Color</span>',_0x25060a['style']['borderTop']='1px\x20solid\x20var(--color-border)',_0x25060a['style']['marginTop']='4px',_0x25060a['style']['paddingTop']='8px',_0x25060a['addEventListener']('click',_0x4d2d21=>{_0x4d2d21['preventDefault'](),_0x4d2d21['stopPropagation'](),this['removeColor'](),this['closeAllDropdowns']();}),_0x5f3863['appendChild'](_0x25060a);}['toggleDropdown'](_0x4de198,_0x45c998){const _0x5536c6=_0x4de198['style']['display']!=='none';this['toolbar']&&this['closeAllDropdowns'](),!_0x5536c6&&(_0x4de198['style']['display']='block',_0x45c998['classList']['add']('active'));}['closeAllDropdowns'](){const _0x47ad0d=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-menu');_0x47ad0d['forEach'](_0x3b7d68=>_0x3b7d68['style']['display']='none');const _0x504cf4=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-btn');_0x504cf4['forEach'](_0x3c5566=>_0x3c5566['classList']['remove']('active'));}['applyHeader'](_0x15bbc8){this['editor']['focus']();const _0x841b8=window['getSelection']();if(!_0x841b8||_0x841b8['rangeCount']===0x0)return;const _0x5411cb=_0x841b8['getRangeAt'](0x0);let _0x4077ef=_0x5411cb['startContainer'];while(_0x4077ef&&_0x4077ef!==this['editor']){if(_0x4077ef['nodeType']===Node['ELEMENT_NODE']){const _0x2e7cac=window['getComputedStyle'](_0x4077ef)['display'];if(_0x2e7cac==='block'||['P','H1','H2','H3','H4','H5','H6','DIV']['includes'](_0x4077ef['tagName']))break;}_0x4077ef=_0x4077ef['parentNode'];}_0x15bbc8===0x0?document['execCommand']('formatBlock',![],'p'):document['execCommand']('formatBlock',![],'h'+_0x15bbc8),this['editor']['dispatchEvent'](new Event('input'));}['applyColor'](_0x3ccd7e){this['editor']['focus'](),document['execCommand']('foreColor',![],_0x3ccd7e),this['editor']['dispatchEvent'](new Event('input'));}['removeColor'](){this['editor']['focus'](),document['execCommand']('removeFormat',![],null),this['editor']['dispatchEvent'](new Event('input'));}['handleToolbarAction'](_0x268e9c){this['editor']['focus']();switch(_0x268e9c){case'bold':case'italic':case'strikeThrough':case'insertUnorderedList':case'insertOrderedList':document['execCommand'](_0x268e9c,![],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 _0x3d2ff9=document['createElement']('div');_0x3d2ff9['className']='markdown-editor-link-modal',_0x3d2ff9['hidden']=!![],_0x3d2ff9['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'](_0x3d2ff9),this['linkDialog']=_0x3d2ff9,this['linkDialogElements']={'backdrop':_0x3d2ff9['querySelector']('.markdown-editor-link-backdrop'),'title':_0x3d2ff9['querySelector']('.markdown-editor-link-title'),'close':_0x3d2ff9['querySelector']('.markdown-editor-link-close'),'form':_0x3d2ff9['querySelector']('.markdown-editor-link-form'),'urlInput':_0x3d2ff9['querySelector']('[data-link-field=\x22url\x22]'),'textInput':_0x3d2ff9['querySelector']('[data-link-field=\x22text\x22]'),'remove':_0x3d2ff9['querySelector']('[data-action=\x22remove\x22]'),'cancel':_0x3d2ff9['querySelector']('[data-action=\x22cancel\x22]'),'submit':_0x3d2ff9['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',_0x42ef4e=>{_0x42ef4e['preventDefault'](),this['applyLinkDialogResult']();}),this['linkDialog']['addEventListener']('keydown',_0x4427e2=>{_0x4427e2['key']==='Escape'&&(_0x4427e2['preventDefault'](),this['closeLinkDialog']({'restoreSelection':!![]}));});}['openLinkDialog'](){const _0x2dffcc=window['getSelection']();if(!_0x2dffcc||_0x2dffcc['rangeCount']===0x0)return;const _0x51a5df=_0x2dffcc['getRangeAt'](0x0),_0x34fa8e=this['editor']['contains'](_0x51a5df['commonAncestorContainer'])||this['editor']===_0x51a5df['commonAncestorContainer'];if(!_0x34fa8e)return;this['toolbar']&&this['closeAllDropdowns']();this['ensureLinkDialog']();const _0x5984e0=_0x51a5df['cloneRange'](),_0x160f84=this['findLinkAtRange'](_0x5984e0),_0x561e9a=_0x160f84?_0x160f84['getAttribute']('href')||'':'',_0x3f4378=_0x160f84?_0x160f84['textContent']||'':_0x5984e0['toString']();this['linkDialogContext']={'range':_0x5984e0,'existingLink':_0x160f84,'selectedText':_0x3f4378},this['linkDialogElements']['title']['textContent']=_0x160f84?'Edit\x20Link':'Insert\x20Link',this['linkDialogElements']['submit']['textContent']=_0x160f84?'Save\x20Link':'Insert\x20Link',this['linkDialogElements']['remove']['hidden']=!_0x160f84,this['linkDialogElements']['urlInput']['value']=_0x561e9a,this['linkDialogElements']['textInput']['value']=_0x3f4378,this['linkDialog']['hidden']=![],this['linkDialogElements']['urlInput']['focus'](),this['linkDialogElements']['urlInput']['select']();}['closeLinkDialog']({restoreSelection:restoreSelection=![]}={}){if(!this['linkDialog'])return;const _0x29c998=this['linkDialogContext'];this['linkDialog']['hidden']=!![],restoreSelection&&_0x29c998?.['range']&&(this['editor']['focus'](),this['restoreRange'](_0x29c998['range'])),this['linkDialogContext']=null;}['applyLinkDialogResult']({remove:remove=![]}={}){if(!this['linkDialog']||!this['linkDialogContext'])return;const _0x2bad4b=this['linkDialogContext'],_0x3f90eb=(this['linkDialogElements']['urlInput']['value']||'')['trim'](),_0x56f99b=this['linkDialogElements']['textInput']['value']||'',_0x30d1f5=_0x56f99b['trim']();if(!remove&&!_0x3f90eb){this['linkDialogElements']['urlInput']['focus']();return;}this['closeLinkDialog'](),this['editor']['focus'](),this['restoreRange'](_0x2bad4b['range']);if(remove)_0x2bad4b['existingLink']&&_0x2bad4b['existingLink']['parentNode']?this['unwrapLinkElement'](_0x2bad4b['existingLink']):document['execCommand']('unlink',![],null);else{if(_0x2bad4b['existingLink']&&_0x2bad4b['existingLink']['parentNode'])_0x2bad4b['existingLink']['setAttribute']('href',_0x3f90eb),_0x2bad4b['existingLink']['textContent']=_0x30d1f5||_0x3f90eb;else{const _0x52cdf1=window['getSelection']();if(!_0x52cdf1||_0x52cdf1['rangeCount']===0x0)return;const _0x5209e2=_0x52cdf1['getRangeAt'](0x0),_0x572c59=(_0x2bad4b['selectedText']||'')['trim'](),_0x151a2c=_0x30d1f5||_0x572c59||_0x3f90eb;_0x5209e2['deleteContents']();const _0x35c7df=document['createElement']('a');_0x35c7df['href']=_0x3f90eb,_0x35c7df['textContent']=_0x151a2c,_0x5209e2['insertNode'](_0x35c7df),_0x5209e2['setStartAfter'](_0x35c7df),_0x5209e2['collapse'](!![]),_0x52cdf1['removeAllRanges'](),_0x52cdf1['addRange'](_0x5209e2);}}this['addLinkHints'](),this['updateToolbarState'](),this['editor']['dispatchEvent'](new Event('input'));}['ensureLinkDialogStyles'](){if(document['getElementById'](LINK_DIALOG_STYLE_ID))return;const _0x348296=document['createElement']('style');_0x348296['id']=LINK_DIALOG_STYLE_ID,_0x348296['textContent']=LINK_DIALOG_STYLES,document['head']['appendChild'](_0x348296);}['restoreRange'](_0xd5fcef){const _0x454e7d=window['getSelection']();if(!_0x454e7d)return;try{_0x454e7d['removeAllRanges'](),_0x454e7d['addRange'](_0xd5fcef);return;}catch(_0x4b7a30){}const _0x5f52b2=document['createRange']();_0x5f52b2['selectNodeContents'](this['editor']),_0x5f52b2['collapse'](![]),_0x454e7d['removeAllRanges'](),_0x454e7d['addRange'](_0x5f52b2);}['findLinkAtRange'](_0x21d127){if(!_0x21d127)return null;const _0x40e4b7=this['findParentLink'](_0x21d127['startContainer']);if(_0x21d127['collapsed'])return _0x40e4b7;const _0x457195=this['findParentLink'](_0x21d127['endContainer']);if(_0x40e4b7&&_0x40e4b7===_0x457195)return _0x40e4b7;if(_0x40e4b7&&_0x40e4b7['contains'](_0x21d127['endContainer']))return _0x40e4b7;if(_0x457195&&_0x457195['contains'](_0x21d127['startContainer']))return _0x457195;return null;}['findParentLink'](_0x1dbbb5){let _0x318236=_0x1dbbb5;while(_0x318236&&_0x318236!==this['editor']){if(_0x318236['nodeType']===Node['ELEMENT_NODE']&&_0x318236['tagName']==='A'){const _0x313ae7=_0x318236['getAttribute']('href')||'';if(_0x313ae7['startsWith']('mention:'))return null;return _0x318236;}_0x318236=_0x318236['parentNode'];}return null;}['unwrapLinkElement'](_0x35b1d3){const _0x2c13fb=_0x35b1d3['parentNode'];if(!_0x2c13fb)return;while(_0x35b1d3['firstChild']){_0x2c13fb['insertBefore'](_0x35b1d3['firstChild'],_0x35b1d3);}_0x2c13fb['removeChild'](_0x35b1d3);}['isSelectionInTag'](_0x1f81d7){const _0x4f772d=window['getSelection']();if(!_0x4f772d||_0x4f772d['rangeCount']===0x0)return![];let _0x2be77e=_0x4f772d['anchorNode'];while(_0x2be77e&&_0x2be77e!==this['editor']){if(_0x2be77e['nodeType']===Node['ELEMENT_NODE']&&_0x2be77e['tagName']===_0x1f81d7)return!![];_0x2be77e=_0x2be77e['parentNode'];}return![];}['updateToolbarState'](){if(!this['toolbarButtons'])return;for(const [_0x1ab9b4,_0x3108fa]of Object['entries'](this['toolbarButtons'])){let _0x4e8c6c=![];if(_0x3108fa['command'])try{_0x4e8c6c=document['queryCommandState'](_0x3108fa['command']);}catch(_0x1ad22e){_0x4e8c6c=![];}else _0x3108fa['tagName']&&(_0x4e8c6c=this['isSelectionInTag'](_0x3108fa['tagName']));_0x3108fa['button']['classList']['toggle']('active',_0x4e8c6c);}}['bindEvents'](){this['editor']['addEventListener']('keydown',_0x1aab49=>this['handleKeydown'](_0x1aab49)),this['editor']['addEventListener']('input',_0x32c219=>{this['handleMentionInput'](_0x32c219),this['handleAutoFormat'](_0x32c219);}),this['editor']['addEventListener']('input',()=>{const _0x3048e8=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');!_0x3048e8&&(this['editor']['innerHTML']='');this['updatePlaceholder']();const _0x37de66=this['getMarkdown']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x37de66:this['element']['textContent']=_0x37de66,this['options']['onChange']&&this['options']['onChange'](_0x37de66);}),this['editor']['addEventListener']('paste',_0x3ef6cc=>this['handlePaste'](_0x3ef6cc)),this['editor']['addEventListener']('dragover',_0x54f6e4=>this['handleDragOver'](_0x54f6e4)),this['editor']['addEventListener']('drop',_0x2eb966=>this['handleDrop'](_0x2eb966)),this['editor']['addEventListener']('dragstart',_0xaf29bd=>this['handleDragStart'](_0xaf29bd)),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']=_0x4cb8e8=>this['handleLinkClick'](_0x4cb8e8),this['editor']['addEventListener']('click',this['linkClickHandler']),this['linkMouseEnterHandler']=_0x529293=>this['handleLinkMouseEnter'](_0x529293),this['linkMouseLeaveHandler']=_0x1466ba=>this['handleLinkMouseLeave'](_0x1466ba),this['editor']['addEventListener']('mouseover',this['linkMouseEnterHandler']),this['editor']['addEventListener']('mouseout',this['linkMouseLeaveHandler']),this['updatePlaceholder']();}['handleAutoFormat'](_0x12d89f){if(_0x12d89f['inputType']==='deleteContentBackward')return;const _0x555637=window['getSelection']();if(!_0x555637||_0x555637['rangeCount']===0x0)return;const _0x57e7d3=_0x555637['getRangeAt'](0x0),_0x4e7651=_0x57e7d3['startContainer'];if(_0x4e7651['nodeType']!==Node['TEXT_NODE'])return;if(this['isSelectionInTag']('CODE')||this['isSelectionInTag']('PRE'))return;const _0x4fdef7=_0x4e7651['textContent'],_0x4083af=_0x57e7d3['startOffset'],_0x46c4b5=_0x4fdef7['slice'](0x0,_0x4083af);if(_0x46c4b5['endsWith']('```')){_0x57e7d3['setStart'](_0x4e7651,_0x4083af-0x3),_0x57e7d3['setEnd'](_0x4e7651,_0x4083af),_0x57e7d3['deleteContents'](),this['insertCodeBlock']();return;}const _0x2194d2=/`([^`]+)`$/,_0x4f40e7=_0x46c4b5['match'](_0x2194d2);if(_0x4f40e7){const _0x36db55=_0x4f40e7[0x1];if(_0x36db55){const _0x55b3bd=_0x4f40e7['index'],_0x49c391=_0x55b3bd+_0x36db55['length']+0x2;_0x57e7d3['setStart'](_0x4e7651,_0x55b3bd),_0x57e7d3['setEnd'](_0x4e7651,_0x4083af),_0x57e7d3['deleteContents']();const _0x44a51b=document['createElement']('code');_0x44a51b['textContent']=_0x36db55,_0x57e7d3['insertNode'](_0x44a51b),_0x57e7d3['setStartAfter'](_0x44a51b),_0x57e7d3['setEndAfter'](_0x44a51b);const _0x4f7b5c=document['createTextNode']('');_0x57e7d3['insertNode'](_0x4f7b5c),_0x57e7d3['setStartAfter'](_0x4f7b5c),_0x57e7d3['setEndAfter'](_0x4f7b5c),_0x555637['removeAllRanges'](),_0x555637['addRange'](_0x57e7d3);return;}}const _0x358548=_0x46c4b5['match'](/^[-*][\s\u00A0]$/);if(_0x358548&&this['isAtStartOfBlock'](_0x4e7651)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x57e7d3['setStart'](_0x4e7651,Math['max'](_0x4083af-0x2,0x0)),_0x57e7d3['setEnd'](_0x4e7651,_0x4083af),_0x57e7d3['deleteContents']();const _0x27e2fd=this['ensureListInsertionAnchor'](_0x4e7651);document['execCommand']('insertUnorderedList',![],null);_0x27e2fd&&_0x27e2fd['parentNode']&&_0x27e2fd['parentNode']['removeChild'](_0x27e2fd);this['updateToolbarState']();return;}const _0x3013b1=_0x46c4b5['match'](/^1\.[\s\u00A0]$/);if(_0x3013b1&&this['isAtStartOfBlock'](_0x4e7651)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x57e7d3['setStart'](_0x4e7651,Math['max'](_0x4083af-0x3,0x0)),_0x57e7d3['setEnd'](_0x4e7651,_0x4083af),_0x57e7d3['deleteContents']();const _0x557cb0=this['ensureListInsertionAnchor'](_0x4e7651);document['execCommand']('insertOrderedList',![],null);_0x557cb0&&_0x557cb0['parentNode']&&_0x557cb0['parentNode']['removeChild'](_0x557cb0);this['updateToolbarState']();return;}}['isAtStartOfBlock'](_0x7a793c){let _0x2c61bf=_0x7a793c;while(_0x2c61bf&&_0x2c61bf!==this['editor']){const _0x4f1f38=_0x2c61bf['parentNode'];if(!_0x4f1f38)break;const _0x39d219=_0x4f1f38['tagName'];if(_0x39d219==='DIV'||_0x39d219==='P'||_0x39d219==='LI'||_0x4f1f38===this['editor']){let _0xca02b9=_0x4f1f38['firstChild'];while(_0xca02b9&&(_0xca02b9['nodeType']===Node['TEXT_NODE']&&_0xca02b9['textContent']===''||_0xca02b9['nodeType']===Node['ELEMENT_NODE']&&_0xca02b9['tagName']==='BR')){_0xca02b9=_0xca02b9['nextSibling'];}return _0xca02b9===_0x7a793c||_0xca02b9===_0x2c61bf;}_0x2c61bf=_0x4f1f38;}if(_0x2c61bf===this['editor']||_0x7a793c['parentNode']===this['editor']){let _0x4fc486=this['editor']['firstChild'];while(_0x4fc486&&(_0x4fc486['nodeType']===Node['TEXT_NODE']&&_0x4fc486['textContent']===''||_0x4fc486['nodeType']===Node['ELEMENT_NODE']&&_0x4fc486['tagName']==='BR')){_0x4fc486=_0x4fc486['nextSibling'];}return _0x4fc486===_0x7a793c;}return![];}['getClosestBlockElement'](_0x48efc){let _0x2c2d33=_0x48efc;while(_0x2c2d33&&_0x2c2d33!==this['editor']){const _0x5d66d4=_0x2c2d33['parentNode'];if(!_0x5d66d4)break;const _0x5750a9=_0x5d66d4['tagName'];if(_0x5750a9==='DIV'||_0x5750a9==='P'||_0x5750a9==='LI'||_0x5d66d4===this['editor'])return _0x5d66d4;_0x2c2d33=_0x5d66d4;}return this['editor'];}['ensureListInsertionAnchor'](_0x5eca54){const _0x3abe15=window['getSelection']();if(!_0x3abe15||_0x3abe15['rangeCount']===0x0)return null;const _0x94d2fe=this['getClosestBlockElement'](_0x5eca54);if(!_0x94d2fe||_0x94d2fe===this['editor'])return null;const _0xff66b8=_0x94d2fe['textContent']['replace'](/\u200B/g,'');if(_0xff66b8!=='')return null;const _0x2a2a70=document['createTextNode']('');_0x94d2fe['appendChild'](_0x2a2a70);const _0x360e8e=document['createRange']();return _0x360e8e['setStart'](_0x2a2a70,0x1),_0x360e8e['setEnd'](_0x2a2a70,0x1),_0x3abe15['removeAllRanges'](),_0x3abe15['addRange'](_0x360e8e),_0x2a2a70;}['getContainingListItem'](){const _0x5b083d=window['getSelection']();if(!_0x5b083d||_0x5b083d['rangeCount']===0x0)return null;let _0x2ac39e=_0x5b083d['anchorNode'];while(_0x2ac39e&&_0x2ac39e!==this['editor']){if(_0x2ac39e['nodeType']===Node['ELEMENT_NODE']&&_0x2ac39e['tagName']==='LI')return _0x2ac39e;_0x2ac39e=_0x2ac39e['parentNode'];}return null;}['isEmptyListItem'](_0x17e3cf){if(!_0x17e3cf)return![];const _0x4dcf07=_0x17e3cf['textContent']['replace'](/\u200B/g,'')['trim']();if(_0x4dcf07!=='')return![];const _0x37a035=_0x17e3cf['querySelector']('img');if(_0x37a035)return![];const _0x135493=_0x17e3cf['querySelector']('ul,\x20ol');if(_0x135493)return![];return!![];}['isCursorAtStartOfListItem'](_0x201ae1){if(!_0x201ae1)return![];const _0x37b2b3=window['getSelection']();if(!_0x37b2b3||_0x37b2b3['rangeCount']===0x0||!_0x37b2b3['isCollapsed'])return![];const _0x583278=_0x37b2b3['getRangeAt'](0x0),_0x239747=_0x583278['startContainer'];if(_0x239747!==_0x201ae1&&!_0x201ae1['contains'](_0x239747))return![];const _0x549be6=_0x583278['cloneRange']();_0x549be6['setStart'](_0x201ae1,0x0),_0x549be6['setEnd'](_0x239747,_0x583278['startOffset']);const _0x26bde2=_0x549be6['toString']()['replace'](/\u200B/g,'')['replace'](/\u00A0/g,'\x20');return _0x26bde2['trim']()==='';}['indentListItem'](_0x102b46){const _0x5d011c=_0x102b46['previousElementSibling'];if(!_0x5d011c||_0x5d011c['tagName']!=='LI')return;const _0x566e2b=_0x102b46['parentNode'],_0x269c0d=_0x566e2b['tagName'];let _0x4f3325=_0x5d011c['querySelector'](':scope\x20>\x20ul,\x20:scope\x20>\x20ol');!_0x4f3325&&(_0x4f3325=document['createElement'](_0x269c0d),_0x5d011c['appendChild'](_0x4f3325)),_0x4f3325['appendChild'](_0x102b46),this['placeCursorInListItem'](_0x102b46);}['outdentListItem'](_0x497531){const _0x14985c=_0x497531['parentNode'];if(!_0x14985c||_0x14985c['tagName']!=='UL'&&_0x14985c['tagName']!=='OL')return;const _0x18b968=_0x14985c['parentNode'];if(_0x18b968&&_0x18b968['tagName']==='LI'){const _0x3a417d=_0x18b968['parentNode'];_0x3a417d['insertBefore'](_0x497531,_0x18b968['nextSibling']),_0x14985c['children']['length']===0x0&&_0x14985c['remove'](),this['placeCursorInListItem'](_0x497531);}else return;}['exitListOnEmptyBullet'](_0x7c8d4e){const _0x28462c=_0x7c8d4e['parentNode'];if(!_0x28462c)return;const _0x1090c9=_0x28462c['parentNode'];if(_0x1090c9&&_0x1090c9['tagName']==='LI'){this['outdentListItem'](_0x7c8d4e);return;}const _0x53f124=_0x28462c['parentNode'],_0x4bcd5e=document['createElement']('p');_0x4bcd5e['innerHTML']='<br>',_0x53f124['insertBefore'](_0x4bcd5e,_0x28462c['nextSibling']),_0x7c8d4e['remove']();_0x28462c['children']['length']===0x0&&_0x28462c['remove']();const _0xac4dbc=window['getSelection'](),_0x5e1545=document['createRange']();_0x5e1545['setStart'](_0x4bcd5e,0x0),_0x5e1545['collapse'](!![]),_0xac4dbc['removeAllRanges'](),_0xac4dbc['addRange'](_0x5e1545);}['placeCursorInListItem'](_0x2a78a3){const _0xc77ca6=window['getSelection'](),_0x317076=document['createRange'](),_0x289fcf=document['createTreeWalker'](_0x2a78a3,NodeFilter['SHOW_TEXT'],null,![]),_0x3d31f8=_0x289fcf['nextNode']();_0x3d31f8?_0x317076['setStart'](_0x3d31f8,0x0):_0x317076['setStart'](_0x2a78a3,0x0),_0x317076['collapse'](!![]),_0xc77ca6['removeAllRanges'](),_0xc77ca6['addRange'](_0x317076);}['handleLinkClick'](_0x14295a){const _0x58d051=this['isMac']?_0x14295a['metaKey']:_0x14295a['ctrlKey'];if(!_0x58d051)return;let _0x4960fb=_0x14295a['target'];while(_0x4960fb&&_0x4960fb!==this['editor']){if(_0x4960fb['tagName']==='A'){_0x14295a['preventDefault'](),_0x14295a['stopPropagation']();const _0x5c4105=_0x4960fb['getAttribute']('href');if(!_0x5c4105)return;if(_0x5c4105['startsWith']('mention:'))return;const _0x280877=/^https?:\/\//i['test'](_0x5c4105);_0x280877?window['open'](_0x5c4105,'_blank','noopener,noreferrer'):window['location']['href']=_0x5c4105;return;}_0x4960fb=_0x4960fb['parentNode'];}}['handleLinkMouseEnter'](_0x1ec88a){const _0x33e93d=_0x1ec88a['target'];if(_0x33e93d['tagName']!=='A')return;const _0x51789b=_0x33e93d['getAttribute']('href')||'';if(_0x51789b['startsWith']('mention:'))return;this['linkTooltipTimeout']&&clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=setTimeout(()=>{this['showLinkTooltip'](_0x33e93d);},0x12c);}['handleLinkMouseLeave'](_0x4808f0){const _0x524fe9=_0x4808f0['target'];if(_0x524fe9['tagName']!=='A')return;this['linkTooltipTimeout']&&(clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=null),this['hideLinkTooltip']();}['showLinkTooltip'](_0x2c3b5e){!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 _0x5621fc=_0x2c3b5e['getBoundingClientRect'](),_0x34bb7b=this['linkTooltip']['getBoundingClientRect']();let _0x41ddda=_0x5621fc['bottom']+0x4,_0x2013c7=_0x5621fc['left']+_0x5621fc['width']/0x2;_0x41ddda+0x1e>window['innerHeight']&&(_0x41ddda=_0x5621fc['top']-0x1e);const _0x494ba9=0x78;if(_0x2013c7-_0x494ba9/0x2<0xa)_0x2013c7=_0x494ba9/0x2+0xa;else _0x2013c7+_0x494ba9/0x2>window['innerWidth']-0xa&&(_0x2013c7=window['innerWidth']-_0x494ba9/0x2-0xa);this['linkTooltip']['style']['top']=_0x41ddda+'px',this['linkTooltip']['style']['left']=_0x2013c7+'px',this['linkTooltip']['style']['transform']='translateX(-50%)',this['linkTooltip']['classList']['add']('visible');}['hideLinkTooltip'](){this['linkTooltip']&&this['linkTooltip']['classList']['remove']('visible');}['handleKeydown'](_0x30b8ab){if(this['mentionState']['active']){if(_0x30b8ab['key']==='ArrowDown'){_0x30b8ab['preventDefault'](),this['mentionNavigate'](0x1);return;}if(_0x30b8ab['key']==='ArrowUp'){_0x30b8ab['preventDefault'](),this['mentionNavigate'](-0x1);return;}if(_0x30b8ab['key']==='Enter'||_0x30b8ab['key']==='Tab'){if(this['mentionState']['filteredUsers']['length']>0x0){_0x30b8ab['preventDefault'](),this['insertMention'](this['mentionState']['filteredUsers'][this['mentionState']['selectedIndex']]);return;}}if(_0x30b8ab['key']==='Escape'){_0x30b8ab['preventDefault'](),this['closeMentionDropdown']();return;}}if(_0x30b8ab['key']==='Tab'&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x13c905=this['getContainingListItem']();if(_0x13c905&&this['isCursorAtStartOfListItem'](_0x13c905)){_0x30b8ab['preventDefault']();_0x30b8ab['shiftKey']?this['outdentListItem'](_0x13c905):this['indentListItem'](_0x13c905);this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x30b8ab['key']==='Enter'&&!_0x30b8ab['shiftKey']&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x1400fb=this['getContainingListItem']();if(_0x1400fb&&this['isEmptyListItem'](_0x1400fb)){_0x30b8ab['preventDefault'](),this['exitListOnEmptyBullet'](_0x1400fb),this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x30b8ab['key']==='Enter'&&!_0x30b8ab['shiftKey']&&this['isSelectionInTag']('PRE')){_0x30b8ab['preventDefault']();const _0x456551=window['getSelection']();if(_0x456551['rangeCount']>0x0){const _0xe2c309=_0x456551['getRangeAt'](0x0);_0xe2c309['deleteContents']();const _0xc237e1=document['createTextNode']('\x0a');_0xe2c309['insertNode'](_0xc237e1),_0xe2c309['setStartAfter'](_0xc237e1),_0xe2c309['setEndAfter'](_0xc237e1),_0x456551['removeAllRanges'](),_0x456551['addRange'](_0xe2c309),this['handleInput']();}return;}(_0x30b8ab['ctrlKey']||_0x30b8ab['metaKey'])&&_0x30b8ab['key']==='b'&&(_0x30b8ab['preventDefault'](),document['execCommand']('bold',![],null));(_0x30b8ab['ctrlKey']||_0x30b8ab['metaKey'])&&_0x30b8ab['key']==='i'&&(_0x30b8ab['preventDefault'](),document['execCommand']('italic',![],null));if((_0x30b8ab['ctrlKey']||_0x30b8ab['metaKey'])&&_0x30b8ab['key']==='k'){_0x30b8ab['preventDefault'](),this['openLinkDialog']();return;}}['handlePaste'](_0x533760){const _0x618ee=_0x533760['clipboardData'];if(_0x618ee&&this['options']['onAddAttachments']){const _0x331437=this['extractImageFilesFromClipboard'](_0x618ee);if(_0x331437['length']>0x0){_0x533760['preventDefault'](),this['addAndInsertImages'](_0x331437);return;}}_0x533760['preventDefault']();const _0xfe4f94=_0x533760['clipboardData']['getData']('text/html');if(_0xfe4f94&&_0xfe4f94['trim']()){const _0x39ae9e=this['convertPastedHtmlToMarkdown'](_0xfe4f94);if(_0x39ae9e&&_0x39ae9e['trim']()){this['insertMarkdownAsRichText'](_0x39ae9e);return;}}const _0x302f82=_0x533760['clipboardData']['getData']('text/plain');document['execCommand']('insertText',![],_0x302f82);}['convertPastedHtmlToMarkdown'](_0x3127bf){const _0x2cf1e2=document['createElement']('div');_0x2cf1e2['innerHTML']=_0x3127bf;const _0x1227df=_0x2cf1e2['querySelectorAll']('style,\x20script,\x20meta,\x20link,\x20head,\x20title');_0x1227df['forEach'](_0x50c2fc=>_0x50c2fc['remove']());const _0xcdbe96=_0x2cf1e2['querySelectorAll']('*');_0xcdbe96['forEach'](_0x5bbfb4=>{const _0x15f2f2=Array['from'](_0x5bbfb4['attributes']);_0x15f2f2['forEach'](_0x35c135=>{_0x35c135['name']['startsWith']('data-')&&_0x35c135['name']!=='data-attachment-name'&&_0x35c135['name']!=='data-mention-user-id'&&_0x5bbfb4['removeAttribute'](_0x35c135['name']);});}),_0x2cf1e2['querySelectorAll']('font[color]')['forEach'](_0x51152b=>{_0x51152b['replaceWith'](..._0x51152b['childNodes']);}),_0x2cf1e2['querySelectorAll']('span')['forEach'](_0xca7b05=>{_0xca7b05['style']['color']&&_0xca7b05['style']['removeProperty']('color'),!_0xca7b05['getAttribute']('style')&&!_0xca7b05['getAttribute']('data-mention-user-id')&&!_0xca7b05['getAttribute']('data-attachment-name')&&_0xca7b05['replaceWith'](..._0xca7b05['childNodes']);});try{return this['turndownService']['turndown'](_0x2cf1e2['innerHTML']);}catch(_0x19c05f){return console['warn']('Failed\x20to\x20convert\x20HTML\x20to\x20markdown:',_0x19c05f),null;}}['insertMarkdownAsRichText'](_0x354d92){const _0x5c8879=window['marked'];if(!_0x5c8879){document['execCommand']('insertText',![],_0x354d92);return;}try{const _0x3616c7=this['preprocessColorSyntax'](_0x354d92),_0x2ba1b9=_0x5c8879['parse'](_0x3616c7),_0x29d701=document['createElement']('div');_0x29d701['innerHTML']=_0x2ba1b9,this['processHtmlForEditor'](_0x29d701),document['execCommand']('insertHTML',![],_0x29d701['innerHTML']);}catch(_0x2ab88c){console['warn']('Failed\x20to\x20convert\x20markdown\x20to\x20HTML:',_0x2ab88c),document['execCommand']('insertText',![],_0x354d92);}}['processHtmlForEditor'](_0x356d20){const _0xe3bf2f=_0x356d20['querySelectorAll']('pre');_0xe3bf2f['forEach'](_0x3ae771=>{const _0x4f737b=_0x3ae771['querySelector']('code');if(_0x4f737b){const _0x12022e=Array['from'](_0x4f737b['classList'])['find'](_0x3d936c=>_0x3d936c['startsWith']('language-')),_0xb6435b=_0x12022e?_0x12022e['replace']('language-',''):'',_0x28dbf6=document['createElement']('pre');_0xb6435b&&_0x28dbf6['setAttribute']('data-language',_0xb6435b),_0x28dbf6['textContent']=_0x4f737b['textContent'],_0x3ae771['replaceWith'](_0x28dbf6);}});const _0x15e8ea=_0x356d20['querySelectorAll']('a');_0x15e8ea['forEach'](_0x50d1cb=>{_0x50d1cb['setAttribute']('target','_blank'),_0x50d1cb['setAttribute']('rel','noopener\x20noreferrer');});}['handleDragStart'](_0x3fa2c5){const _0x3790e8=_0x3fa2c5['target'];if(!_0x3790e8||_0x3790e8['tagName']!=='IMG')return;if(!_0x3fa2c5['dataTransfer'])return;const _0x4c8ce2=_0x3790e8['getAttribute']('data-attachment-name')||'';try{_0x3fa2c5['dataTransfer']['setData'](INTERNAL_DRAG_MIME,_0x4c8ce2||'1');}catch{}_0x3fa2c5['dataTransfer']['effectAllowed']='move';}['handleDragOver'](_0x319fe5){if(!this['isExternalFileTransfer'](_0x319fe5['dataTransfer']))return;_0x319fe5['preventDefault'](),_0x319fe5['dataTransfer']['dropEffect']='copy';}['handleDrop'](_0x54651a){if(!this['isExternalFileTransfer'](_0x54651a['dataTransfer']))return;const _0x5d1c79=_0x54651a['dataTransfer'],_0x5b5ba2=Array['from'](_0x5d1c79['files']||[])['filter'](_0x5704be=>_0x5704be&&typeof _0x5704be['type']==='string'),_0x518ea8=_0x5b5ba2['filter'](_0x5235f4=>_0x5235f4['type']['startsWith']('image/'));if(_0x518ea8['length']===0x0)return;_0x54651a['preventDefault'](),_0x54651a['stopPropagation'](),this['cleanupParentDragState'](),this['moveSelectionToDropPoint'](_0x54651a),this['addAndInsertImages'](_0x518ea8);}['cleanupParentDragState'](){let _0x358311=this['editor']['parentElement'];while(_0x358311){_0x358311['classList']&&_0x358311['classList']['contains']('drag-over')&&_0x358311['classList']['remove']('drag-over'),_0x358311=_0x358311['parentElement'];}}['isExternalFileTransfer'](_0x5a37bc){if(!_0x5a37bc)return![];const _0x3e6bcc=Array['from'](_0x5a37bc['types']||[]);if(!_0x3e6bcc['includes']('Files'))return![];if(_0x3e6bcc['includes'](INTERNAL_DRAG_MIME))return![];if(_0x5a37bc['files']&&_0x5a37bc['files']['length']>0x0)return!![];if(_0x5a37bc['items']&&Array['from'](_0x5a37bc['items'])['some'](_0x177e17=>_0x177e17['kind']==='file'))return!![];return![];}['moveSelectionToDropPoint'](_0x4d614f){const _0x110654=_0x4d614f['clientX'],_0x46ec4b=_0x4d614f['clientY'];let _0x3ca4a8=null;if(document['caretRangeFromPoint'])_0x3ca4a8=document['caretRangeFromPoint'](_0x110654,_0x46ec4b);else{if(document['caretPositionFromPoint']){const _0x5ac064=document['caretPositionFromPoint'](_0x110654,_0x46ec4b);_0x5ac064&&(_0x3ca4a8=document['createRange'](),_0x3ca4a8['setStart'](_0x5ac064['offsetNode'],_0x5ac064['offset']),_0x3ca4a8['collapse'](!![]));}}if(_0x3ca4a8){const _0x350bcf=window['getSelection']();_0x350bcf['removeAllRanges'](),_0x350bcf['addRange'](_0x3ca4a8);}}['extractImageFilesFromClipboard'](_0x52a9d7){const _0x5bf545=Array['from'](_0x52a9d7['items']||[]),_0x1633bb=[];for(const _0x3ce975 of _0x5bf545){if(_0x3ce975['kind']==='file'&&_0x3ce975['type']&&_0x3ce975['type']['startsWith']('image/')){const _0x1b93cb=_0x3ce975['getAsFile']();if(_0x1b93cb)_0x1633bb['push'](_0x1b93cb);}}return _0x1633bb;}['addAndInsertImages'](_0x1b1158){const _0x203bc9=_0x1b1158['map'](_0x9f5eb0=>this['prepareAttachmentFile'](_0x9f5eb0))['filter'](Boolean);if(_0x203bc9['length']===0x0)return;const _0x1646c9=_0x203bc9['map'](_0x517e6c=>_0x517e6c['file']);try{this['options']['onAddAttachments'](_0x1646c9);}catch(_0x492424){console['error']('Failed\x20to\x20add\x20attachments:',_0x492424);}for(const {name:_0x406870,objectUrl:_0x456b56}of _0x203bc9){this['insertAttachmentImage'](_0x406870,_0x456b56);}this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));}['prepareAttachmentFile'](_0x451854){const _0x444ccd=this['sanitizeFilename'](_0x451854['name']||this['defaultImageName'](_0x451854['type']));if(!_0x444ccd)return null;const _0x3782c8=this['getUniqueAttachmentName'](_0x444ccd),_0x51786f=_0x3782c8===_0x451854['name']?_0x451854:new File([_0x451854],_0x3782c8,{'type':_0x451854['type'],'lastModified':_0x451854['lastModified']}),_0x1dee1e=URL['createObjectURL'](_0x51786f);return this['attachmentObjectUrls']['set'](_0x3782c8,_0x1dee1e),{'name':_0x3782c8,'file':_0x51786f,'objectUrl':_0x1dee1e};}['getUniqueAttachmentName'](_0x2812cc){const _0x2d3589=_0xac042f=>{if(this['attachmentObjectUrls']['has'](_0xac042f))return!![];if(this['options']['isAttachmentNameTaken'])try{return Boolean(this['options']['isAttachmentNameTaken'](_0xac042f));}catch{return![];}return![];};if(!_0x2d3589(_0x2812cc))return _0x2812cc;const {stem:_0x1e2521,ext:_0x1b6435}=this['splitFilename'](_0x2812cc);for(let _0x318d35=0x2;_0x318d35<0x3e8;_0x318d35++){const _0xbc1f78=_0x1e2521+'-'+_0x318d35+_0x1b6435;if(!_0x2d3589(_0xbc1f78))return _0xbc1f78;}return _0x1e2521+'-'+Date['now']()+_0x1b6435;}['splitFilename'](_0x4e3c23){const _0x5490ba=_0x4e3c23['lastIndexOf']('.');if(_0x5490ba<=0x0||_0x5490ba===_0x4e3c23['length']-0x1)return{'stem':_0x4e3c23,'ext':''};return{'stem':_0x4e3c23['slice'](0x0,_0x5490ba),'ext':_0x4e3c23['slice'](_0x5490ba)};}['sanitizeFilename'](_0x2bff41){const _0x455c4c=String(_0x2bff41||'')['split']('/')['pop']()['split']('\x5c')['pop']();return _0x455c4c['replace'](/[\u0000-\u001F\u007F]/g,'')['trim']();}['defaultImageName'](_0x353012){const _0x3e2931=this['extensionForMime'](_0x353012);return'pasted-image-'+Date['now']()+_0x3e2931;}['extensionForMime'](_0x4e8d9b){switch(_0x4e8d9b){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'](_0x3c1d2b,_0x4e1535){const _0x42712f=document['createElement']('img');_0x42712f['src']=_0x4e1535,_0x42712f['alt']=_0x3c1d2b,_0x42712f['setAttribute']('data-attachment-name',_0x3c1d2b),_0x42712f['draggable']=!![];const _0x4bd977=window['getSelection']();let _0x4a32b0=![];if(_0x4bd977&&_0x4bd977['rangeCount']>0x0){const _0x262fed=_0x4bd977['getRangeAt'](0x0);_0x4a32b0=this['editor']['contains'](_0x262fed['commonAncestorContainer'])||this['editor']===_0x262fed['commonAncestorContainer'];}if(!_0x4a32b0){this['editor']['appendChild'](_0x42712f);const _0x1932c3=document['createRange']();_0x1932c3['setStartAfter'](_0x42712f),_0x1932c3['collapse'](!![]),_0x4bd977['removeAllRanges'](),_0x4bd977['addRange'](_0x1932c3);return;}const _0x2fc091=_0x4bd977['getRangeAt'](0x0);_0x2fc091['deleteContents'](),_0x2fc091['insertNode'](_0x42712f),_0x2fc091['setStartAfter'](_0x42712f),_0x2fc091['collapse'](!![]),_0x4bd977['removeAllRanges'](),_0x4bd977['addRange'](_0x2fc091);}['toggleInlineCode'](){const _0x945525=window['getSelection']();if(_0x945525['rangeCount']===0x0)return;const _0x1d6bee=_0x945525['getRangeAt'](0x0),_0x1bc94b=_0x1d6bee['toString']();if(_0x1bc94b){const _0xe23633=document['createElement']('code');_0xe23633['textContent']=_0x1bc94b,_0x1d6bee['deleteContents'](),_0x1d6bee['insertNode'](_0xe23633),_0x1d6bee['setStartAfter'](_0xe23633),_0x1d6bee['setEndAfter'](_0xe23633),_0x945525['removeAllRanges'](),_0x945525['addRange'](_0x1d6bee);}}['insertCodeBlock'](){const _0x5aed7e=window['getSelection']();if(_0x5aed7e['rangeCount']===0x0)return;const _0x1036ea=_0x5aed7e['getRangeAt'](0x0),_0x364237=_0x1036ea['toString'](),_0x5d6d40=document['createElement']('pre'),_0x830d2f=document['createElement']('code');_0x830d2f['textContent']=_0x364237||'\x0a',_0x5d6d40['appendChild'](_0x830d2f),_0x1036ea['deleteContents'](),_0x1036ea['insertNode'](_0x5d6d40);const _0x252464=document['createElement']('p');_0x252464['innerHTML']='<br>',_0x5d6d40['parentNode']['insertBefore'](_0x252464,_0x5d6d40['nextSibling']);const _0xb64260=document['createRange']();!_0x364237?(_0xb64260['setStart'](_0x830d2f['firstChild'],0x0),_0xb64260['setEnd'](_0x830d2f['firstChild'],0x0)):(_0xb64260['selectNodeContents'](_0x830d2f),_0xb64260['collapse'](![])),_0x5aed7e['removeAllRanges'](),_0x5aed7e['addRange'](_0xb64260);}['updatePlaceholder'](){const _0x42bee8=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');_0x42bee8?this['editor']['classList']['remove']('empty'):this['editor']['classList']['add']('empty');}['setMarkdown'](_0x507e8f){if(this['_sourceMode']&&this['_monacoEditor']){this['_monacoEditor']['setValue'](_0x507e8f||'');return;}if(!_0x507e8f||!_0x507e8f['trim']()){this['editor']['innerHTML']='',this['updatePlaceholder']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']='':this['element']['textContent']='';return;}const _0x132935=this['preprocessColorSyntax'](_0x507e8f),_0x3440c8=window['marked']['parse'](_0x132935);this['editor']['innerHTML']=_0x3440c8,this['rewriteAttachmentImages'](),this['rewriteMentionLinks'](),this['addLinkHints'](),this['updatePlaceholder'](),this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x507e8f:this['element']['textContent']=_0x507e8f;}['rewriteAttachmentImages'](){const _0x4549f1=this['editor']['querySelectorAll']('img');_0x4549f1['forEach'](_0x5d2828=>{const _0x4c1940=_0x5d2828['getAttribute']('data-attachment-name'),_0xbe98b9=_0x5d2828['getAttribute']('src')||'',_0x3f77df=this['parseAttachmentReference'](_0xbe98b9)||this['parseTaskAttachmentUrl'](_0xbe98b9),_0x451a8d=_0x4c1940||(_0x3f77df?_0x3f77df['name']:null);if(!_0x451a8d)return;_0x5d2828['setAttribute']('data-attachment-name',_0x451a8d);const _0x545e3f=this['attachmentObjectUrls']['get'](_0x451a8d)||(this['options']['resolveAttachmentUrl']?this['options']['resolveAttachmentUrl'](_0x451a8d):null);_0x545e3f&&(_0x5d2828['src']=_0x545e3f);});}['rewriteMentionLinks'](){const _0x4e21bd=this['editor']['querySelectorAll']('a[href^=\x22mention:\x22]');_0x4e21bd['forEach'](_0x44b767=>{const _0x7794e0=_0x44b767['getAttribute']('href')||'',_0x1571a1=_0x7794e0['replace']('mention:',''),_0x42842f=_0x44b767['textContent']||'',_0x5ed4e0=document['createElement']('span');_0x5ed4e0['className']='mention',_0x5ed4e0['setAttribute']('data-mention-user-id',_0x1571a1),_0x5ed4e0['setAttribute']('contenteditable','false'),_0x5ed4e0['textContent']='@'+_0x42842f;const _0xa88370=_0x44b767['previousSibling'];_0xa88370&&_0xa88370['nodeType']===Node['TEXT_NODE']&&_0xa88370['textContent']['endsWith']('@')&&(_0xa88370['textContent']=_0xa88370['textContent']['slice'](0x0,-0x1)),_0x44b767['parentNode']['replaceChild'](_0x5ed4e0,_0x44b767);});}['addLinkHints'](){if(!this['options']['editable'])return;const _0x464f56=this['editor']['querySelectorAll']('a');_0x464f56['forEach'](_0x1f9406=>{const _0xb312eb=_0x1f9406['getAttribute']('href')||'';if(_0xb312eb['startsWith']('mention:'))return;const _0x33f14b=_0x1f9406['textContent']||_0xb312eb,_0x44a54f=_0x33f14b+'\x20('+(this['linkHintText']||'Ctrl+click\x20to\x20follow')+')';_0x1f9406['setAttribute']('aria-label',_0x44a54f);});}['preprocessColorSyntax'](_0x5509c1){if(!_0x5509c1)return _0x5509c1;const _0x16d67f=_0x2797c1=>{return String(_0x2797c1)['replace'](/\{color:(#[0-9A-Fa-f]{3,6})\}([\s\S]*?)\{\/color\}/g,(_0x412c10,_0x5a754a,_0x22bbc7)=>{const _0x1017f7=_0x16d67f(_0x22bbc7);return'<span\x20style=\x22color:\x20'+_0x5a754a+'\x22>'+_0x1017f7+'</span>';});};return _0x16d67f(_0x5509c1);}['parseAttachmentReference'](_0x161a7){if(!_0x161a7||typeof _0x161a7!=='string')return null;if(!_0x161a7['startsWith'](ATTACHMENT_SCHEME)&&!_0x161a7['startsWith'](ATTACHMENT_SCHEME+'//'))return null;const _0x278b67=_0x161a7['replace'](ATTACHMENT_SCHEME+'//','')['replace'](ATTACHMENT_SCHEME,'');if(!_0x278b67)return null;try{return{'name':decodeURIComponent(_0x278b67)};}catch{return{'name':_0x278b67};}}['parseTaskAttachmentUrl'](_0x47dcb2){if(!_0x47dcb2||typeof _0x47dcb2!=='string')return null;const _0x4112a7=_0x47dcb2['match'](/\/tasks\/[^/]+\/attachments\/([^?#]+)/);if(!_0x4112a7)return null;const _0x5df3bb=_0x4112a7[0x1];try{return{'name':decodeURIComponent(_0x5df3bb)};}catch{return{'name':_0x5df3bb};}}['updateAttachmentFile'](_0x320132,_0x16f4f7){const _0x4b9660=this['attachmentObjectUrls']['get'](_0x320132);if(_0x4b9660)try{URL['revokeObjectURL'](_0x4b9660);}catch{}const _0x13bce5=URL['createObjectURL'](_0x16f4f7);this['attachmentObjectUrls']['set'](_0x320132,_0x13bce5);const _0x2dfe5c=this['editor']['querySelector']('img[data-attachment-name=\x22'+CSS['escape'](_0x320132)+'\x22]');return _0x2dfe5c&&(_0x2dfe5c['src']=_0x13bce5),_0x13bce5;}['getMarkdown'](){if(this['_sourceMode']&&this['_monacoEditor'])return this['_monacoEditor']['getValue']();const _0x305223=this['editor']['innerHTML'];if(!_0x305223||_0x305223['trim']()===''||_0x305223==='<br>')return'';return this['turndownService']['turndown'](_0x305223)['replace'](/\u200B/g,'');}['getValue'](){return this['getMarkdown']();}['setValue'](_0x27fdb7){this['setMarkdown'](_0x27fdb7);}['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'](_0x1a16b1){this['editor']['contentEditable']=_0x1a16b1,this['options']['editable']=_0x1a16b1,this['_monacoEditor']&&this['_monacoEditor']['updateOptions']({'readOnly':!_0x1a16b1});}['getMode'](){return this['_sourceMode']?'source':'visual';}['setMode'](_0x56f0e9){_0x56f0e9==='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 _0x2fe5a1=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':_0x2fe5a1,'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(_0x213d98){console['error']('Failed\x20to\x20load\x20Monaco\x20for\x20source\x20mode:',_0x213d98),this['editor']['style']['display']='',this['_sourceContainer']['style']['display']='none',this['_monacoLoading']=![];return;}this['_monacoLoading']=![];}else this['_monacoEditor']['setValue'](_0x2fe5a1);this['_sourceMode']=!![],this['_updateSourceToggleUI'](),this['_monacoEditor']['focus'](),this['_monacoEditor']['layout']();}['switchToVisual'](){if(!this['_sourceMode']||this['_destroyed'])return;let _0x12b463='';this['_monacoEditor']&&(_0x12b463=this['_monacoEditor']['getValue']()),this['editor']['style']['display']='',this['_sourceContainer']&&(this['_sourceContainer']['style']['display']='none'),this['_sourceMode']=![],this['setMarkdown'](_0x12b463),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'](_0x3fc42f){if(!this['toolbarButtons'])return;for(const [_0x355ed7,_0x35e6cc]of Object['entries'](this['toolbarButtons'])){_0x35e6cc['button']['disabled']=!_0x3fc42f,_0x35e6cc['button']['style']['opacity']=_0x3fc42f?'':'0.35',_0x35e6cc['button']['style']['pointerEvents']=_0x3fc42f?'':'none';}}async['_ensureMonacoLoaded'](){if(window['MarkdownFileEditor']&&window['MarkdownFileEditor']['ensureMonacoLoaded'])return window['MarkdownFileEditor']['ensureMonacoLoaded']();if(typeof monaco!=='undefined')return;return new Promise((_0xe236fc,_0x288612)=>{const _0x569daf=document['querySelector']('script[src*=\x22monaco-editor\x22][src*=\x22loader.js\x22]');if(_0x569daf){const _0x559d8f=setInterval(()=>{typeof monaco!=='undefined'&&(clearInterval(_0x559d8f),_0xe236fc());},0x32);setTimeout(()=>{clearInterval(_0x559d8f),_0x288612(new Error('Monaco\x20loading\x20timeout'));},0x2710);return;}const _0x50db5a=document['createElement']('script');_0x50db5a['src']='/vendor/monaco-editor/0.45.0/min/vs/loader.js',_0x50db5a['onload']=()=>{require['config']({'paths':{'vs':'/vendor/monaco-editor/0.45.0/min/vs'}}),require(['vs/editor/editor.main'],()=>_0xe236fc());},_0x50db5a['onerror']=()=>_0x288612(new Error('Failed\x20to\x20load\x20Monaco\x20Editor')),document['head']['appendChild'](_0x50db5a);});}['_getMonacoTheme'](){const _0x4acf31=document['documentElement']['getAttribute']('data-theme')==='dark';return _0x4acf31?'vs-dark':'vs';}['handleMentionInput'](_0x5d6397){if(!this['options']['fetchUsers'])return;const _0x21f126=window['getSelection']();if(!_0x21f126||_0x21f126['rangeCount']===0x0){this['closeMentionDropdown']();return;}const _0x211b06=_0x21f126['getRangeAt'](0x0),_0x5f112b=_0x211b06['startContainer'];if(_0x5f112b['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x1b62c0=_0x5f112b['textContent']||'',_0x375def=_0x211b06['startOffset'],_0x58cf4b=_0x1b62c0['slice'](0x0,_0x375def),_0x3c7be5=_0x58cf4b['lastIndexOf']('@');if(_0x3c7be5===-0x1){this['closeMentionDropdown']();return;}const _0x1029e2=_0x3c7be5>0x0?_0x58cf4b[_0x3c7be5-0x1]:'\x20';if(!/\s/['test'](_0x1029e2)&&_0x3c7be5!==0x0){this['closeMentionDropdown']();return;}const _0x3acdc6=_0x58cf4b['slice'](_0x3c7be5+0x1);if(/[\s\n]/['test'](_0x3acdc6)){this['closeMentionDropdown']();return;}this['mentionState']['active']=!![],this['mentionState']['query']=_0x3acdc6['toLowerCase'](),this['mentionState']['startOffset']=_0x3c7be5,this['mentionState']['startNode']=_0x5f112b,this['showMentionDropdown']();}async['showMentionDropdown'](){if(!this['usersCache'])try{const _0x5d3ef6=await this['options']['fetchUsers']();this['usersCache']=_0x5d3ef6['users']||_0x5d3ef6||[];}catch(_0x33a592){console['error']('Failed\x20to\x20fetch\x20users\x20for\x20@mention:',_0x33a592),this['closeMentionDropdown']();return;}this['mentionState']['users']=this['usersCache'];const _0x33db49=this['mentionState']['query'];this['mentionState']['filteredUsers']=this['mentionState']['users']['filter'](_0x17c54b=>{const _0x2e6655=(_0x17c54b['name']||'')['toLowerCase'](),_0x2fb637=(_0x17c54b['username']||'')['toLowerCase']();return _0x2e6655['includes'](_0x33db49)||_0x2fb637['includes'](_0x33db49);})['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']=_0x2650e7=>{!this['mentionDropdown']['contains'](_0x2650e7['target'])&&!this['editor']['contains'](_0x2650e7['target'])&&this['closeMentionDropdown']();},document['addEventListener']('click',this['mentionClickOutsideHandler']),this['mentionScrollHandler']=()=>{this['mentionState']['active']&&this['positionMentionDropdown']();},window['addEventListener']('scroll',this['mentionScrollHandler'],!![]));const _0x4daa0e=this['mentionState']['filteredUsers'];this['mentionDropdown']['innerHTML']=_0x4daa0e['map']((_0x3231a4,_0xd0550f)=>{const _0xd37c48=_0xd0550f===this['mentionState']['selectedIndex'],_0x7f3f8e=_0x3231a4['name']||_0x3231a4['username']||'Unknown',_0x421aca=_0x3231a4['username']||'',_0x541dd3=this['getInitials'](_0x7f3f8e),_0xd3a11e=this['getAvatarColorIndex'](_0x421aca||_0x3231a4['id']||_0x7f3f8e);return'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22mention-option\x20'+(_0xd37c48?'mention-option-selected':'')+'\x22\x20data-index=\x22'+_0xd0550f+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-avatar\x20avatar-color-'+_0xd3a11e+'\x22>'+this['escapeHtmlForMention'](_0x541dd3)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-option-name\x22>'+this['escapeHtmlForMention'](_0x7f3f8e)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x421aca?'<span\x20class=\x22mention-option-username\x22>@'+this['escapeHtmlForMention'](_0x421aca)+'</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'](_0x4afffd=>{_0x4afffd['addEventListener']('mousedown',_0x30fd3f=>{_0x30fd3f['preventDefault']();const _0x51e4c2=parseInt(_0x4afffd['dataset']['index'],0xa);this['insertMention'](this['mentionState']['filteredUsers'][_0x51e4c2]);}),_0x4afffd['addEventListener']('mouseenter',()=>{const _0x4c1ad4=parseInt(_0x4afffd['dataset']['index'],0xa);this['mentionState']['selectedIndex']=_0x4c1ad4,this['updateMentionSelection']();});}),this['mentionDropdown']['style']['display']='block';}['positionMentionDropdown'](){if(!this['mentionDropdown'])return;const _0x17d9bd=window['getSelection']();if(!_0x17d9bd||_0x17d9bd['rangeCount']===0x0)return;const _0x406c2b=_0x17d9bd['getRangeAt'](0x0),_0x2c7c6e=_0x406c2b['getBoundingClientRect'](),_0x4f9576=0x104,_0x2d2e61=Math['min'](0xf0,this['mentionState']['filteredUsers']['length']*0x24+0x8),_0xb7e7ef=window['innerWidth'],_0x5651e6=window['innerHeight'],_0x41147c=_0x5651e6-_0x2c7c6e['bottom'],_0x385c49=_0x2c7c6e['top'],_0x41edaf=_0x41147c<_0x2d2e61+0xa&&_0x385c49>_0x41147c;let _0x227309,_0x18b131;_0x41edaf?_0x227309=_0x2c7c6e['top']+window['scrollY']-_0x2d2e61-0x4:_0x227309=_0x2c7c6e['bottom']+window['scrollY']+0x4,_0x18b131=_0x2c7c6e['left']+window['scrollX'],_0x18b131+_0x4f9576>_0xb7e7ef-0xa&&(_0x18b131=_0xb7e7ef-_0x4f9576-0xa),_0x18b131<0xa&&(_0x18b131=0xa),this['mentionDropdown']['style']['position']='absolute',this['mentionDropdown']['style']['top']=_0x227309+'px',this['mentionDropdown']['style']['left']=_0x18b131+'px';}['mentionNavigate'](_0x1ee735){const _0x4231d1=this['mentionState']['filteredUsers']['length'];if(_0x4231d1===0x0)return;this['mentionState']['selectedIndex']=(this['mentionState']['selectedIndex']+_0x1ee735+_0x4231d1)%_0x4231d1,this['updateMentionSelection']();}['updateMentionSelection'](){if(!this['mentionDropdown'])return;const _0xbd561b=this['mentionDropdown']['querySelectorAll']('.mention-option');_0xbd561b['forEach']((_0x133837,_0x41afa6)=>{_0x41afa6===this['mentionState']['selectedIndex']?(_0x133837['classList']['add']('mention-option-selected'),_0x133837['scrollIntoView']({'block':'nearest'})):_0x133837['classList']['remove']('mention-option-selected');});}['insertMention'](_0x5a0bc8){if(!_0x5a0bc8)return;const _0x5d657b=window['getSelection']();if(!_0x5d657b||_0x5d657b['rangeCount']===0x0)return;const _0x576956=_0x5d657b['getRangeAt'](0x0),_0x49be51=this['mentionState']['startNode'];if(!_0x49be51||_0x49be51['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x8d7c02=_0x49be51['textContent']||'',_0x240583=this['mentionState']['startOffset'],_0x275bd8=_0x576956['startOffset'],_0x124baa=_0x8d7c02['slice'](0x0,_0x240583),_0x1242ec=_0x8d7c02['slice'](_0x275bd8),_0x49054a=document['createElement']('span');_0x49054a['className']='mention',_0x49054a['setAttribute']('data-mention-user-id',_0x5a0bc8['id']),_0x49054a['setAttribute']('contenteditable','false'),_0x49054a['textContent']='@'+(_0x5a0bc8['name']||_0x5a0bc8['username']);const _0x34ce8c=document['createTextNode'](_0x124baa),_0x166f36=document['createTextNode']('\x20'+_0x1242ec),_0x108168=_0x49be51['parentNode'];_0x108168['insertBefore'](_0x34ce8c,_0x49be51),_0x108168['insertBefore'](_0x49054a,_0x49be51),_0x108168['insertBefore'](_0x166f36,_0x49be51),_0x108168['removeChild'](_0x49be51);const _0x50dbb8=document['createRange']();_0x50dbb8['setStart'](_0x166f36,0x1),_0x50dbb8['collapse'](!![]),_0x5d657b['removeAllRanges'](),_0x5d657b['addRange'](_0x50dbb8),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'](_0x2d475c){const _0x4bc5f9=document['createElement']('div');return _0x4bc5f9['textContent']=_0x2d475c,_0x4bc5f9['innerHTML'];}['getInitials'](_0x54bdd7){if(!_0x54bdd7)return'?';const _0x51da34=_0x54bdd7['trim']()['split'](/\s+/);if(_0x51da34['length']>=0x2)return(_0x51da34[0x0][0x0]+_0x51da34[_0x51da34['length']-0x1][0x0])['toUpperCase']();return _0x54bdd7['substring'](0x0,0x2)['toUpperCase']();}['getAvatarColorIndex'](_0x59ee26){if(!_0x59ee26)return 0x6;let _0x52b77a=0x0;for(let _0x4506ce=0x0;_0x4506ce<_0x59ee26['length'];_0x4506ce++){_0x52b77a=_0x59ee26['charCodeAt'](_0x4506ce)+((_0x52b77a<<0x5)-_0x52b77a);}return Math['abs'](_0x52b77a)%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 _0x1f6324 of this['attachmentObjectUrls']['values']()){try{URL['revokeObjectURL'](_0x1f6324);}catch{}}this['attachmentObjectUrls']['clear'](),this['container']?this['container']['remove']():this['editor']['remove'](),this['element']['style']['display']='';}}typeof window!=='undefined'&&(window['MarkdownEditor']=MarkdownEditor);
|