@profoundlogic/coderflow-server 0.6.9 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/base-image/Dockerfile +3 -0
- package/dist/base-image/entrypoint.sh +13 -0
- package/dist/base-image/standard-instructions/ibmi-database-sql.md +11 -0
- package/dist/base-image/standard-instructions/ibmi-exploratory-verification.md +40 -0
- package/dist/base-image/standard-instructions/ibmi-output-requirements.md +6 -0
- package/dist/base-image/standard-instructions/output-requirements.md +18 -0
- package/dist/base-image/standard-instructions/screenshot-guidelines.md +17 -0
- 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-aliases.js +1 -1
- package/dist/lib/task-name-format.js +1 -1
- package/dist/lib/task-name-generator.js +1 -1
- package/dist/lib/task-source-metadata.js +1 -1
- package/dist/lib/teams.js +1 -1
- package/dist/lib/user-git-oauth.js +1 -1
- package/dist/lib/user-git-tokens.js +1 -1
- package/dist/lib/users.js +1 -1
- package/dist/middleware/requireAuth.js +1 -1
- package/dist/middleware/requireInit.js +1 -1
- package/dist/middleware/requirePermission.js +1 -1
- package/dist/package.json +1 -1
- package/dist/playwright.config.js +1 -1
- package/dist/playwright.task-terminal.config.js +1 -1
- package/dist/routes/apiKeys.js +1 -1
- package/dist/routes/auth-oidc.js +1 -1
- package/dist/routes/auth.js +1 -1
- package/dist/routes/automations.js +1 -1
- package/dist/routes/bindings.js +1 -1
- package/dist/routes/build.js +1 -1
- package/dist/routes/containers.js +1 -1
- package/dist/routes/deploy-task.js +1 -1
- package/dist/routes/environment-management.js +1 -1
- package/dist/routes/environments.js +1 -1
- package/dist/routes/external-skills.js +1 -1
- package/dist/routes/git-credentials.js +1 -1
- package/dist/routes/git-oauth.js +1 -1
- package/dist/routes/git-provider-setup.js +1 -1
- package/dist/routes/health.js +1 -1
- package/dist/routes/jira.js +1 -1
- package/dist/routes/objective-management.js +1 -1
- package/dist/routes/password.js +1 -1
- package/dist/routes/prompt.js +1 -1
- package/dist/routes/provider-auth.js +1 -1
- package/dist/routes/qa.js +1 -1
- package/dist/routes/roles.js +1 -1
- package/dist/routes/settings.js +1 -1
- package/dist/routes/skill-management.js +1 -1
- package/dist/routes/skills.js +1 -1
- package/dist/routes/tasks.js +1 -1
- package/dist/routes/teams.js +1 -1
- package/dist/routes/templates.js +1 -1
- package/dist/routes/test-task.js +1 -1
- package/dist/routes/test.js +1 -1
- package/dist/routes/users.js +1 -1
- package/dist/routes/visualizations.js +1 -1
- package/dist/scripts/create-user.js +1 -1
- package/dist/scripts/migrate-config-to-data-dir.js +1 -1
- package/dist/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.css +21 -0
- package/dist/web-ui/public/environments.html +68 -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/styles.css +52 -1
- package/dist/web-ui/public/task-judging-helpers.js +1 -1
- package/dist/web-ui/public/task.html +43 -5
- 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 _0x46dcf0=await fetch('/auth/oidc/config');if(_0x46dcf0['ok'])return await _0x46dcf0['json']();}catch(_0x4373ea){console['error']('Failed\x20to\x20load\x20OIDC\x20configuration:',_0x4373ea);}return{'enabled':![]};}function initializeSsoUi(_0x202a84){const _0x41f8fd=document['getElementById']('sso-section'),_0x2a85af=document['getElementById']('sso-divider'),_0x55afb7=document['getElementById']('sso-button-text'),_0x59458c=document['getElementById']('sso-button'),_0x4f99ab=document['querySelector']('.local-auth-section');_0x202a84['enabled']&&(_0x41f8fd['classList']['add']('visible'),_0x55afb7['textContent']=_0x202a84['display_name']||'Sign\x20in\x20with\x20SSO',_0x59458c['addEventListener']('click',()=>{window['location']['href']='/auth/oidc/login';}),!_0x202a84['allow_local_auth']&&(_0x4f99ab['classList']['add']('hidden'),_0x2a85af['style']['display']='none'));}function checkOidcErrors(){const _0x59bbe4=new URLSearchParams(window['location']['search']),_0x286da0=_0x59bbe4['get']('error'),_0x6ecfc=_0x59bbe4['get']('message');if(_0x286da0){const _0x68a498=document['getElementById']('login-error'),_0x45ec25=_0x6ecfc||OIDC_ERRORS[_0x286da0]||'Authentication\x20error:\x20'+_0x286da0;_0x68a498['textContent']=_0x45ec25,_0x68a498['classList']['add']('visible'),window['history']['replaceState']({},document['title'],window['location']['pathname']);}}async function handleLogin(_0x444b6f){_0x444b6f['preventDefault']();const _0x3f5aac=_0x444b6f['target'],_0x4fd92c=_0x3f5aac['username']['value']['trim'](),_0x1d9926=_0x3f5aac['password']['value'],_0x6fe4=_0x3f5aac['querySelector']('button[type=\x22submit\x22]'),_0x4d04df=document['getElementById']('login-error');_0x4d04df['classList']['remove']('visible'),_0x4d04df['textContent']='',_0x6fe4['disabled']=!![],_0x6fe4['textContent']='Signing\x20in...';try{const _0x1b5daa=await fetch('/auth/login',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'username':_0x4fd92c,'password':_0x1d9926})}),_0x27bd7e=await _0x1b5daa['json']();if(!_0x1b5daa['ok'])throw new Error(_0x27bd7e['message']||'Login\x20failed');window['location']['href']='index.html';}catch(_0x217b6b){_0x4d04df['textContent']=_0x217b6b['message']||'An\x20error\x20occurred\x20during\x20login',_0x4d04df['classList']['add']('visible'),_0x6fe4['disabled']=![],_0x6fe4['textContent']='Sign\x20In',_0x3f5aac['password']['value']='',_0x3f5aac['password']['focus']();}}document['addEventListener']('DOMContentLoaded',async()=>{initTheme(),mountThemeToggle(),checkOidcErrors();const _0x287d3f=await loadOidcConfig();initializeSsoUi(_0x287d3f);const _0x51290e=document['getElementById']('login-form');_0x51290e&&_0x51290e['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(_0xea1853,_0x5096ba={}){this['element']=_0xea1853,this['options']={'placeholder':_0x5096ba['placeholder']||'Start\x20typing...','editable':_0x5096ba['editable']!==![],'onChange':_0x5096ba['onChange']||null,'minHeight':_0x5096ba['minHeight']||'100px','toolbar':_0x5096ba['toolbar']||![],'onAddAttachments':_0x5096ba['onAddAttachments']||null,'resolveAttachmentUrl':_0x5096ba['resolveAttachmentUrl']||null,'isAttachmentNameTaken':_0x5096ba['isAttachmentNameTaken']||null,'fetchUsers':_0x5096ba['fetchUsers']||null,'sourceToggle':_0x5096ba['sourceToggle']||![],'sourceLineNumbers':_0x5096ba['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 _0x237db4=window['TurndownService'];this['turndownService']=new _0x237db4({'headingStyle':'atx','codeBlockStyle':'fenced','emDelimiter':'_','bulletListMarker':'-'}),this['attachmentObjectUrls']=new Map(),this['registerTurndownRules'](),this['init']();}['registerTurndownRules'](){this['turndownService']['addRule']('profoundAttachmentImage',{'filter':_0x34a383=>{return _0x34a383&&_0x34a383['nodeName']==='IMG'&&_0x34a383['getAttribute']&&_0x34a383['getAttribute']('data-attachment-name');},'replacement':(_0xe6dcc8,_0x5112e1)=>{const _0x205cf6=_0x5112e1['getAttribute']('data-attachment-name')||'',_0xfc4f76=_0x5112e1['getAttribute']('alt')||'',_0x25566f=_0x205cf6['trim'](),_0x16bc70=this['escapeAltText'](_0xfc4f76||_0x25566f),_0x3baf88=encodeURIComponent(_0x25566f);return'';}}),this['turndownService']['addRule']('profoundMention',{'filter':_0x4d536b=>{return _0x4d536b&&_0x4d536b['nodeName']==='SPAN'&&_0x4d536b['getAttribute']&&_0x4d536b['getAttribute']('data-mention-user-id');},'replacement':(_0x5229da,_0x42dadc)=>{const _0x2d3d5a=_0x42dadc['getAttribute']('data-mention-user-id')||'',_0x2fa1c8=_0x42dadc['textContent']||'',_0x4e6625=_0x2fa1c8['startsWith']('@')?_0x2fa1c8['slice'](0x1):_0x2fa1c8;return'['+_0x4e6625+'](mention:'+_0x2d3d5a+')';}}),this['turndownService']['addRule']('profoundColoredText',{'filter':_0xd5f8f0=>{if(!_0xd5f8f0)return![];if(_0xd5f8f0['nodeName']==='FONT'&&_0xd5f8f0['getAttribute']&&_0xd5f8f0['getAttribute']('color'))return!![];if(_0xd5f8f0['nodeName']==='SPAN'&&_0xd5f8f0['style']&&_0xd5f8f0['style']['color']){if(_0xd5f8f0['getAttribute']&&_0xd5f8f0['getAttribute']('data-mention-user-id'))return![];return!![];}return![];},'replacement':(_0x570d1,_0x2b2ed2)=>{if(!_0x570d1['trim']())return _0x570d1;let _0x4e9c07='';if(_0x2b2ed2['nodeName']==='FONT')_0x4e9c07=_0x2b2ed2['getAttribute']('color')||'';else _0x2b2ed2['style']&&_0x2b2ed2['style']['color']&&(_0x4e9c07=this['rgbToHex'](_0x2b2ed2['style']['color']));if(!_0x4e9c07)return _0x570d1;return'{color:'+_0x4e9c07+'}'+_0x570d1+'{/color}';}});}['rgbToHex'](_0x274889){if(!_0x274889)return'';if(_0x274889['startsWith']('#'))return _0x274889;const _0x3519c4=_0x274889['match'](/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(!_0x3519c4)return _0x274889;const _0x268930=parseInt(_0x3519c4[0x1],0xa),_0x346af8=parseInt(_0x3519c4[0x2],0xa),_0x160e9a=parseInt(_0x3519c4[0x3],0xa);return'#'+[_0x268930,_0x346af8,_0x160e9a]['map'](_0x22ad98=>_0x22ad98['toString'](0x10)['padStart'](0x2,'0'))['join']('')['toUpperCase']();}['escapeAltText'](_0x4db152){return String(_0x4db152||'')['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 _0x1affa4=this['element']['textContent']||this['element']['value']||'';_0x1affa4['trim']()&&this['setMarkdown'](_0x1affa4);}['createToolbar'](){this['toolbar']=document['createElement']('div'),this['toolbar']['className']='markdown-editor-toolbar',this['toolbarButtons']={};const _0x30eac1=[{'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'}];_0x30eac1['forEach'](_0x331e37=>{if(_0x331e37['separator']){const _0x563d80=document['createElement']('div');_0x563d80['className']='markdown-toolbar-separator',_0x563d80['style']['width']='1px',_0x563d80['style']['height']='16px',_0x563d80['style']['background']='var(--color-border)',_0x563d80['style']['margin']='0\x206px',_0x563d80['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x563d80);}else{if(_0x331e37['isDropdown']){const _0x219be7=document['createElement']('div');_0x219be7['className']='markdown-toolbar-dropdown',_0x219be7['style']['position']='relative';const _0x2027ee=document['createElement']('button');_0x2027ee['type']='button',_0x2027ee['className']='markdown-editor-toolbar-btn\x20markdown-toolbar-dropdown-btn',_0x2027ee['tabIndex']=-0x1,_0x2027ee['innerHTML']=_0x331e37['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>',_0x2027ee['title']=_0x331e37['title'],_0x2027ee['dataset']['action']=_0x331e37['action'];const _0x2c1d24=document['createElement']('div');_0x2c1d24['className']='markdown-toolbar-dropdown-menu',_0x2c1d24['style']['display']='none';if(_0x331e37['action']==='header')this['createHeaderDropdown'](_0x2c1d24);else _0x331e37['action']==='color'&&this['createColorDropdown'](_0x2c1d24);_0x2027ee['addEventListener']('click',_0x3009a0=>{_0x3009a0['preventDefault'](),_0x3009a0['stopPropagation'](),this['toggleDropdown'](_0x2c1d24,_0x2027ee);}),_0x219be7['appendChild'](_0x2027ee),_0x219be7['appendChild'](_0x2c1d24),this['toolbar']['appendChild'](_0x219be7),this['toolbarButtons'][_0x331e37['id']]={'button':_0x2027ee,'dropdown':_0x2c1d24,'command':_0x331e37['command'],'tagName':_0x331e37['tagName']};}else{const _0x181c30=document['createElement']('button');_0x181c30['type']='button',_0x181c30['className']='markdown-editor-toolbar-btn',_0x181c30['tabIndex']=-0x1,_0x181c30['innerHTML']=_0x331e37['icon'],_0x181c30['title']=_0x331e37['title'],_0x181c30['dataset']['action']=_0x331e37['action'],_0x181c30['addEventListener']('click',_0x2a68ae=>{_0x2a68ae['preventDefault'](),this['handleToolbarAction'](_0x331e37['action']);}),this['toolbar']['appendChild'](_0x181c30),this['toolbarButtons'][_0x331e37['id']]={'button':_0x181c30,'command':_0x331e37['command'],'tagName':_0x331e37['tagName']};}}});if(this['options']['sourceToggle']){const _0x430981=document['createElement']('div');_0x430981['style']['marginLeft']='auto',this['toolbar']['appendChild'](_0x430981);const _0x227f98=document['createElement']('div');_0x227f98['className']='markdown-toolbar-separator\x20markdown-source-toggle-separator',_0x227f98['style']['width']='1px',_0x227f98['style']['height']='16px',_0x227f98['style']['background']='var(--color-border)',_0x227f98['style']['margin']='0\x206px',_0x227f98['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x227f98);const _0x1404db=document['createElement']('button');_0x1404db['type']='button',_0x1404db['className']='markdown-editor-toolbar-btn\x20markdown-source-toggle-btn',_0x1404db['tabIndex']=-0x1,_0x1404db['innerHTML']=ICONS['sourceToggle'],_0x1404db['title']='Switch\x20to\x20source\x20mode',_0x1404db['addEventListener']('click',_0xe717f=>{_0xe717f['preventDefault'](),_0xe717f['stopPropagation'](),this['toggleSourceMode']();}),this['toolbar']['appendChild'](_0x1404db),this['_sourceToggleBtn']=_0x1404db;}document['addEventListener']('click',_0x4e62d1=>{!this['toolbar']['contains'](_0x4e62d1['target'])&&this['closeAllDropdowns']();});}['createHeaderDropdown'](_0x1b2bc8){const _0x24f13b=[{'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'}];_0x24f13b['forEach'](_0x274585=>{const _0x2e7e77=document['createElement']('button');_0x2e7e77['type']='button',_0x2e7e77['className']='markdown-dropdown-item',_0x2e7e77['tabIndex']=-0x1,_0x2e7e77['innerHTML']='<span\x20style=\x22font-size:\x20'+(_0x274585['level']===0x0?'14px':0x14-_0x274585['level']*0x2+'px')+';\x20font-weight:\x20'+(_0x274585['level']===0x0?'normal':'bold')+'\x22>'+_0x274585['label']+'</span>',_0x2e7e77['addEventListener']('click',_0x1b5329=>{_0x1b5329['preventDefault'](),_0x1b5329['stopPropagation'](),this['applyHeader'](_0x274585['level']),this['closeAllDropdowns']();}),_0x1b2bc8['appendChild'](_0x2e7e77);});}['createColorDropdown'](_0x4e204f){const _0x5a1c9f=[{'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'}],_0x13ce62=document['createElement']('div');_0x13ce62['className']='markdown-color-grid',_0x13ce62['style']['display']='grid',_0x13ce62['style']['gridTemplateColumns']='repeat(3,\x201fr)',_0x13ce62['style']['gap']='4px',_0x13ce62['style']['padding']='8px',_0x5a1c9f['forEach'](_0x4e0559=>{const _0x4fd997=document['createElement']('button');_0x4fd997['type']='button',_0x4fd997['className']='markdown-color-btn',_0x4fd997['tabIndex']=-0x1,_0x4fd997['style']['width']='24px',_0x4fd997['style']['height']='24px',_0x4fd997['style']['backgroundColor']=_0x4e0559['value'],_0x4fd997['style']['border']='1px\x20solid\x20var(--color-border)',_0x4fd997['style']['borderRadius']='4px',_0x4fd997['style']['cursor']='pointer',_0x4fd997['title']=_0x4e0559['label'],_0x4fd997['addEventListener']('click',_0x1bf521=>{_0x1bf521['preventDefault'](),_0x1bf521['stopPropagation'](),this['applyColor'](_0x4e0559['value']),this['closeAllDropdowns']();}),_0x13ce62['appendChild'](_0x4fd997);}),_0x4e204f['appendChild'](_0x13ce62);const _0x31f542=document['createElement']('button');_0x31f542['type']='button',_0x31f542['className']='markdown-dropdown-item',_0x31f542['innerHTML']='<span>Remove\x20Color</span>',_0x31f542['style']['borderTop']='1px\x20solid\x20var(--color-border)',_0x31f542['style']['marginTop']='4px',_0x31f542['style']['paddingTop']='8px',_0x31f542['addEventListener']('click',_0x2d82e2=>{_0x2d82e2['preventDefault'](),_0x2d82e2['stopPropagation'](),this['removeColor'](),this['closeAllDropdowns']();}),_0x4e204f['appendChild'](_0x31f542);}['toggleDropdown'](_0x20e631,_0x4a4244){const _0x3132f2=_0x20e631['style']['display']!=='none';this['toolbar']&&this['closeAllDropdowns'](),!_0x3132f2&&(_0x20e631['style']['display']='block',_0x4a4244['classList']['add']('active'));}['closeAllDropdowns'](){const _0x6fd445=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-menu');_0x6fd445['forEach'](_0xf7d34d=>_0xf7d34d['style']['display']='none');const _0x357018=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-btn');_0x357018['forEach'](_0x211cf2=>_0x211cf2['classList']['remove']('active'));}['applyHeader'](_0x2a8361){this['editor']['focus']();const _0x53c7b3=window['getSelection']();if(!_0x53c7b3||_0x53c7b3['rangeCount']===0x0)return;const _0x182d8d=_0x53c7b3['getRangeAt'](0x0);let _0x3b2db5=_0x182d8d['startContainer'];while(_0x3b2db5&&_0x3b2db5!==this['editor']){if(_0x3b2db5['nodeType']===Node['ELEMENT_NODE']){const _0x66bc2b=window['getComputedStyle'](_0x3b2db5)['display'];if(_0x66bc2b==='block'||['P','H1','H2','H3','H4','H5','H6','DIV']['includes'](_0x3b2db5['tagName']))break;}_0x3b2db5=_0x3b2db5['parentNode'];}_0x2a8361===0x0?document['execCommand']('formatBlock',![],'p'):document['execCommand']('formatBlock',![],'h'+_0x2a8361),this['editor']['dispatchEvent'](new Event('input'));}['applyColor'](_0x488af7){this['editor']['focus'](),document['execCommand']('foreColor',![],_0x488af7),this['editor']['dispatchEvent'](new Event('input'));}['removeColor'](){this['editor']['focus'](),document['execCommand']('removeFormat',![],null),this['editor']['dispatchEvent'](new Event('input'));}['handleToolbarAction'](_0x38a87d){this['editor']['focus']();switch(_0x38a87d){case'bold':case'italic':case'strikeThrough':case'insertUnorderedList':case'insertOrderedList':document['execCommand'](_0x38a87d,![],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 _0x1e068b=document['createElement']('div');_0x1e068b['className']='markdown-editor-link-modal',_0x1e068b['hidden']=!![],_0x1e068b['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'](_0x1e068b),this['linkDialog']=_0x1e068b,this['linkDialogElements']={'backdrop':_0x1e068b['querySelector']('.markdown-editor-link-backdrop'),'title':_0x1e068b['querySelector']('.markdown-editor-link-title'),'close':_0x1e068b['querySelector']('.markdown-editor-link-close'),'form':_0x1e068b['querySelector']('.markdown-editor-link-form'),'urlInput':_0x1e068b['querySelector']('[data-link-field=\x22url\x22]'),'textInput':_0x1e068b['querySelector']('[data-link-field=\x22text\x22]'),'remove':_0x1e068b['querySelector']('[data-action=\x22remove\x22]'),'cancel':_0x1e068b['querySelector']('[data-action=\x22cancel\x22]'),'submit':_0x1e068b['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',_0x3a9a0b=>{_0x3a9a0b['preventDefault'](),this['applyLinkDialogResult']();}),this['linkDialog']['addEventListener']('keydown',_0x301fd4=>{_0x301fd4['key']==='Escape'&&(_0x301fd4['preventDefault'](),this['closeLinkDialog']({'restoreSelection':!![]}));});}['openLinkDialog'](){const _0x4cf33f=window['getSelection']();if(!_0x4cf33f||_0x4cf33f['rangeCount']===0x0)return;const _0x4564d3=_0x4cf33f['getRangeAt'](0x0),_0x1d96bc=this['editor']['contains'](_0x4564d3['commonAncestorContainer'])||this['editor']===_0x4564d3['commonAncestorContainer'];if(!_0x1d96bc)return;this['toolbar']&&this['closeAllDropdowns']();this['ensureLinkDialog']();const _0x4008d1=_0x4564d3['cloneRange'](),_0x5e0097=this['findLinkAtRange'](_0x4008d1),_0x545ad0=_0x5e0097?_0x5e0097['getAttribute']('href')||'':'',_0x4e9c39=_0x5e0097?_0x5e0097['textContent']||'':_0x4008d1['toString']();this['linkDialogContext']={'range':_0x4008d1,'existingLink':_0x5e0097,'selectedText':_0x4e9c39},this['linkDialogElements']['title']['textContent']=_0x5e0097?'Edit\x20Link':'Insert\x20Link',this['linkDialogElements']['submit']['textContent']=_0x5e0097?'Save\x20Link':'Insert\x20Link',this['linkDialogElements']['remove']['hidden']=!_0x5e0097,this['linkDialogElements']['urlInput']['value']=_0x545ad0,this['linkDialogElements']['textInput']['value']=_0x4e9c39,this['linkDialog']['hidden']=![],this['linkDialogElements']['urlInput']['focus'](),this['linkDialogElements']['urlInput']['select']();}['closeLinkDialog']({restoreSelection:restoreSelection=![]}={}){if(!this['linkDialog'])return;const _0x578149=this['linkDialogContext'];this['linkDialog']['hidden']=!![],restoreSelection&&_0x578149?.['range']&&(this['editor']['focus'](),this['restoreRange'](_0x578149['range'])),this['linkDialogContext']=null;}['applyLinkDialogResult']({remove:remove=![]}={}){if(!this['linkDialog']||!this['linkDialogContext'])return;const _0x5a2ebb=this['linkDialogContext'],_0x47dc13=(this['linkDialogElements']['urlInput']['value']||'')['trim'](),_0x376cf8=this['linkDialogElements']['textInput']['value']||'',_0x1b4e80=_0x376cf8['trim']();if(!remove&&!_0x47dc13){this['linkDialogElements']['urlInput']['focus']();return;}this['closeLinkDialog'](),this['editor']['focus'](),this['restoreRange'](_0x5a2ebb['range']);if(remove)_0x5a2ebb['existingLink']&&_0x5a2ebb['existingLink']['parentNode']?this['unwrapLinkElement'](_0x5a2ebb['existingLink']):document['execCommand']('unlink',![],null);else{if(_0x5a2ebb['existingLink']&&_0x5a2ebb['existingLink']['parentNode'])_0x5a2ebb['existingLink']['setAttribute']('href',_0x47dc13),_0x5a2ebb['existingLink']['textContent']=_0x1b4e80||_0x47dc13;else{const _0xccdeb0=window['getSelection']();if(!_0xccdeb0||_0xccdeb0['rangeCount']===0x0)return;const _0x40d237=_0xccdeb0['getRangeAt'](0x0),_0x52f762=(_0x5a2ebb['selectedText']||'')['trim'](),_0x5a4598=_0x1b4e80||_0x52f762||_0x47dc13;_0x40d237['deleteContents']();const _0x1705f9=document['createElement']('a');_0x1705f9['href']=_0x47dc13,_0x1705f9['textContent']=_0x5a4598,_0x40d237['insertNode'](_0x1705f9),_0x40d237['setStartAfter'](_0x1705f9),_0x40d237['collapse'](!![]),_0xccdeb0['removeAllRanges'](),_0xccdeb0['addRange'](_0x40d237);}}this['addLinkHints'](),this['updateToolbarState'](),this['editor']['dispatchEvent'](new Event('input'));}['ensureLinkDialogStyles'](){if(document['getElementById'](LINK_DIALOG_STYLE_ID))return;const _0x34af3a=document['createElement']('style');_0x34af3a['id']=LINK_DIALOG_STYLE_ID,_0x34af3a['textContent']=LINK_DIALOG_STYLES,document['head']['appendChild'](_0x34af3a);}['restoreRange'](_0x4a818c){const _0x9586ba=window['getSelection']();if(!_0x9586ba)return;try{_0x9586ba['removeAllRanges'](),_0x9586ba['addRange'](_0x4a818c);return;}catch(_0x5d7a79){}const _0x201395=document['createRange']();_0x201395['selectNodeContents'](this['editor']),_0x201395['collapse'](![]),_0x9586ba['removeAllRanges'](),_0x9586ba['addRange'](_0x201395);}['findLinkAtRange'](_0x2a8793){if(!_0x2a8793)return null;const _0x314b3f=this['findParentLink'](_0x2a8793['startContainer']);if(_0x2a8793['collapsed'])return _0x314b3f;const _0x507f8c=this['findParentLink'](_0x2a8793['endContainer']);if(_0x314b3f&&_0x314b3f===_0x507f8c)return _0x314b3f;if(_0x314b3f&&_0x314b3f['contains'](_0x2a8793['endContainer']))return _0x314b3f;if(_0x507f8c&&_0x507f8c['contains'](_0x2a8793['startContainer']))return _0x507f8c;return null;}['findParentLink'](_0x11a65f){let _0x2f1a22=_0x11a65f;while(_0x2f1a22&&_0x2f1a22!==this['editor']){if(_0x2f1a22['nodeType']===Node['ELEMENT_NODE']&&_0x2f1a22['tagName']==='A'){const _0x5317eb=_0x2f1a22['getAttribute']('href')||'';if(_0x5317eb['startsWith']('mention:'))return null;return _0x2f1a22;}_0x2f1a22=_0x2f1a22['parentNode'];}return null;}['unwrapLinkElement'](_0x135d31){const _0x5273c6=_0x135d31['parentNode'];if(!_0x5273c6)return;while(_0x135d31['firstChild']){_0x5273c6['insertBefore'](_0x135d31['firstChild'],_0x135d31);}_0x5273c6['removeChild'](_0x135d31);}['isSelectionInTag'](_0x4f2260){const _0x5557b9=window['getSelection']();if(!_0x5557b9||_0x5557b9['rangeCount']===0x0)return![];let _0x47155a=_0x5557b9['anchorNode'];while(_0x47155a&&_0x47155a!==this['editor']){if(_0x47155a['nodeType']===Node['ELEMENT_NODE']&&_0x47155a['tagName']===_0x4f2260)return!![];_0x47155a=_0x47155a['parentNode'];}return![];}['updateToolbarState'](){if(!this['toolbarButtons'])return;for(const [_0x23c5b6,_0x531a7b]of Object['entries'](this['toolbarButtons'])){let _0x3ef50a=![];if(_0x531a7b['command'])try{_0x3ef50a=document['queryCommandState'](_0x531a7b['command']);}catch(_0x546925){_0x3ef50a=![];}else _0x531a7b['tagName']&&(_0x3ef50a=this['isSelectionInTag'](_0x531a7b['tagName']));_0x531a7b['button']['classList']['toggle']('active',_0x3ef50a);}}['bindEvents'](){this['editor']['addEventListener']('keydown',_0x5367fe=>this['handleKeydown'](_0x5367fe)),this['editor']['addEventListener']('input',_0x56e506=>{this['handleMentionInput'](_0x56e506),this['handleAutoFormat'](_0x56e506);}),this['editor']['addEventListener']('input',()=>{const _0x4c6dfc=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');!_0x4c6dfc&&(this['editor']['innerHTML']='');this['updatePlaceholder']();const _0x14b175=this['getMarkdown']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x14b175:this['element']['textContent']=_0x14b175,this['options']['onChange']&&this['options']['onChange'](_0x14b175);}),this['editor']['addEventListener']('paste',_0x5385c9=>this['handlePaste'](_0x5385c9)),this['editor']['addEventListener']('dragover',_0x27630f=>this['handleDragOver'](_0x27630f)),this['editor']['addEventListener']('drop',_0x45d2b4=>this['handleDrop'](_0x45d2b4)),this['editor']['addEventListener']('dragstart',_0x12d021=>this['handleDragStart'](_0x12d021)),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']=_0xe7f656=>this['handleLinkClick'](_0xe7f656),this['editor']['addEventListener']('click',this['linkClickHandler']),this['linkMouseEnterHandler']=_0xfc160f=>this['handleLinkMouseEnter'](_0xfc160f),this['linkMouseLeaveHandler']=_0x3c2687=>this['handleLinkMouseLeave'](_0x3c2687),this['editor']['addEventListener']('mouseover',this['linkMouseEnterHandler']),this['editor']['addEventListener']('mouseout',this['linkMouseLeaveHandler']),this['updatePlaceholder']();}['handleAutoFormat'](_0x24bd2c){if(_0x24bd2c['inputType']==='deleteContentBackward')return;const _0x5c6ca8=window['getSelection']();if(!_0x5c6ca8||_0x5c6ca8['rangeCount']===0x0)return;const _0x1f2a3b=_0x5c6ca8['getRangeAt'](0x0),_0x5b1a28=_0x1f2a3b['startContainer'];if(_0x5b1a28['nodeType']!==Node['TEXT_NODE'])return;if(this['isSelectionInTag']('CODE')||this['isSelectionInTag']('PRE'))return;const _0x425503=_0x5b1a28['textContent'],_0x2a2a96=_0x1f2a3b['startOffset'],_0x4fe02b=_0x425503['slice'](0x0,_0x2a2a96);if(_0x4fe02b['endsWith']('```')){_0x1f2a3b['setStart'](_0x5b1a28,_0x2a2a96-0x3),_0x1f2a3b['setEnd'](_0x5b1a28,_0x2a2a96),_0x1f2a3b['deleteContents'](),this['insertCodeBlock']();return;}const _0x3449=/`([^`]+)`$/,_0x5b24ba=_0x4fe02b['match'](_0x3449);if(_0x5b24ba){const _0x8baaba=_0x5b24ba[0x1];if(_0x8baaba){const _0x544b23=_0x5b24ba['index'],_0x1c8c75=_0x544b23+_0x8baaba['length']+0x2;_0x1f2a3b['setStart'](_0x5b1a28,_0x544b23),_0x1f2a3b['setEnd'](_0x5b1a28,_0x2a2a96),_0x1f2a3b['deleteContents']();const _0x4609a6=document['createElement']('code');_0x4609a6['textContent']=_0x8baaba,_0x1f2a3b['insertNode'](_0x4609a6),_0x1f2a3b['setStartAfter'](_0x4609a6),_0x1f2a3b['setEndAfter'](_0x4609a6);const _0x5fbd70=document['createTextNode']('');_0x1f2a3b['insertNode'](_0x5fbd70),_0x1f2a3b['setStartAfter'](_0x5fbd70),_0x1f2a3b['setEndAfter'](_0x5fbd70),_0x5c6ca8['removeAllRanges'](),_0x5c6ca8['addRange'](_0x1f2a3b);return;}}const _0x3ddfdf=_0x4fe02b['match'](/^[-*][\s\u00A0]$/);if(_0x3ddfdf&&this['isAtStartOfBlock'](_0x5b1a28)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x1f2a3b['setStart'](_0x5b1a28,Math['max'](_0x2a2a96-0x2,0x0)),_0x1f2a3b['setEnd'](_0x5b1a28,_0x2a2a96),_0x1f2a3b['deleteContents']();const _0x519ce2=this['ensureListInsertionAnchor'](_0x5b1a28);document['execCommand']('insertUnorderedList',![],null);_0x519ce2&&_0x519ce2['parentNode']&&_0x519ce2['parentNode']['removeChild'](_0x519ce2);this['updateToolbarState']();return;}const _0x44c751=_0x4fe02b['match'](/^1\.[\s\u00A0]$/);if(_0x44c751&&this['isAtStartOfBlock'](_0x5b1a28)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x1f2a3b['setStart'](_0x5b1a28,Math['max'](_0x2a2a96-0x3,0x0)),_0x1f2a3b['setEnd'](_0x5b1a28,_0x2a2a96),_0x1f2a3b['deleteContents']();const _0x31d754=this['ensureListInsertionAnchor'](_0x5b1a28);document['execCommand']('insertOrderedList',![],null);_0x31d754&&_0x31d754['parentNode']&&_0x31d754['parentNode']['removeChild'](_0x31d754);this['updateToolbarState']();return;}}['isAtStartOfBlock'](_0xa1fda8){let _0xd899e3=_0xa1fda8;while(_0xd899e3&&_0xd899e3!==this['editor']){const _0x52adf1=_0xd899e3['parentNode'];if(!_0x52adf1)break;const _0x5044d5=_0x52adf1['tagName'];if(_0x5044d5==='DIV'||_0x5044d5==='P'||_0x5044d5==='LI'||_0x52adf1===this['editor']){let _0x1b5d2f=_0x52adf1['firstChild'];while(_0x1b5d2f&&(_0x1b5d2f['nodeType']===Node['TEXT_NODE']&&_0x1b5d2f['textContent']===''||_0x1b5d2f['nodeType']===Node['ELEMENT_NODE']&&_0x1b5d2f['tagName']==='BR')){_0x1b5d2f=_0x1b5d2f['nextSibling'];}return _0x1b5d2f===_0xa1fda8||_0x1b5d2f===_0xd899e3;}_0xd899e3=_0x52adf1;}if(_0xd899e3===this['editor']||_0xa1fda8['parentNode']===this['editor']){let _0x1c318c=this['editor']['firstChild'];while(_0x1c318c&&(_0x1c318c['nodeType']===Node['TEXT_NODE']&&_0x1c318c['textContent']===''||_0x1c318c['nodeType']===Node['ELEMENT_NODE']&&_0x1c318c['tagName']==='BR')){_0x1c318c=_0x1c318c['nextSibling'];}return _0x1c318c===_0xa1fda8;}return![];}['getClosestBlockElement'](_0xb04e76){let _0x28c911=_0xb04e76;while(_0x28c911&&_0x28c911!==this['editor']){const _0x37356b=_0x28c911['parentNode'];if(!_0x37356b)break;const _0x219701=_0x37356b['tagName'];if(_0x219701==='DIV'||_0x219701==='P'||_0x219701==='LI'||_0x37356b===this['editor'])return _0x37356b;_0x28c911=_0x37356b;}return this['editor'];}['ensureListInsertionAnchor'](_0x1f145e){const _0x36b67d=window['getSelection']();if(!_0x36b67d||_0x36b67d['rangeCount']===0x0)return null;const _0x51758d=this['getClosestBlockElement'](_0x1f145e);if(!_0x51758d||_0x51758d===this['editor'])return null;const _0x1b768a=_0x51758d['textContent']['replace'](/\u200B/g,'');if(_0x1b768a!=='')return null;const _0x3f570e=document['createTextNode']('');_0x51758d['appendChild'](_0x3f570e);const _0x1c6ee5=document['createRange']();return _0x1c6ee5['setStart'](_0x3f570e,0x1),_0x1c6ee5['setEnd'](_0x3f570e,0x1),_0x36b67d['removeAllRanges'](),_0x36b67d['addRange'](_0x1c6ee5),_0x3f570e;}['getContainingListItem'](){const _0x54996a=window['getSelection']();if(!_0x54996a||_0x54996a['rangeCount']===0x0)return null;let _0x5c62e3=_0x54996a['anchorNode'];while(_0x5c62e3&&_0x5c62e3!==this['editor']){if(_0x5c62e3['nodeType']===Node['ELEMENT_NODE']&&_0x5c62e3['tagName']==='LI')return _0x5c62e3;_0x5c62e3=_0x5c62e3['parentNode'];}return null;}['isEmptyListItem'](_0x2af55d){if(!_0x2af55d)return![];const _0x11af03=_0x2af55d['textContent']['replace'](/\u200B/g,'')['trim']();if(_0x11af03!=='')return![];const _0xf88529=_0x2af55d['querySelector']('img');if(_0xf88529)return![];const _0x1f0f82=_0x2af55d['querySelector']('ul,\x20ol');if(_0x1f0f82)return![];return!![];}['isCursorAtStartOfListItem'](_0x136ec3){if(!_0x136ec3)return![];const _0x1b5d05=window['getSelection']();if(!_0x1b5d05||_0x1b5d05['rangeCount']===0x0||!_0x1b5d05['isCollapsed'])return![];const _0x1f5e1a=_0x1b5d05['getRangeAt'](0x0),_0x31d2a3=_0x1f5e1a['startContainer'];if(_0x31d2a3!==_0x136ec3&&!_0x136ec3['contains'](_0x31d2a3))return![];const _0x4ae9c5=_0x1f5e1a['cloneRange']();_0x4ae9c5['setStart'](_0x136ec3,0x0),_0x4ae9c5['setEnd'](_0x31d2a3,_0x1f5e1a['startOffset']);const _0x27c282=_0x4ae9c5['toString']()['replace'](/\u200B/g,'')['replace'](/\u00A0/g,'\x20');return _0x27c282['trim']()==='';}['indentListItem'](_0x54077f){const _0x1ca1c7=_0x54077f['previousElementSibling'];if(!_0x1ca1c7||_0x1ca1c7['tagName']!=='LI')return;const _0xdf7f36=_0x54077f['parentNode'],_0x1391e2=_0xdf7f36['tagName'];let _0xb1aa21=_0x1ca1c7['querySelector'](':scope\x20>\x20ul,\x20:scope\x20>\x20ol');!_0xb1aa21&&(_0xb1aa21=document['createElement'](_0x1391e2),_0x1ca1c7['appendChild'](_0xb1aa21)),_0xb1aa21['appendChild'](_0x54077f),this['placeCursorInListItem'](_0x54077f);}['outdentListItem'](_0x1ff1eb){const _0x4f45d0=_0x1ff1eb['parentNode'];if(!_0x4f45d0||_0x4f45d0['tagName']!=='UL'&&_0x4f45d0['tagName']!=='OL')return;const _0xee68b8=_0x4f45d0['parentNode'];if(_0xee68b8&&_0xee68b8['tagName']==='LI'){const _0x4f1917=_0xee68b8['parentNode'];_0x4f1917['insertBefore'](_0x1ff1eb,_0xee68b8['nextSibling']),_0x4f45d0['children']['length']===0x0&&_0x4f45d0['remove'](),this['placeCursorInListItem'](_0x1ff1eb);}else return;}['exitListOnEmptyBullet'](_0x38f4cb){const _0x437cbc=_0x38f4cb['parentNode'];if(!_0x437cbc)return;const _0x581a48=_0x437cbc['parentNode'];if(_0x581a48&&_0x581a48['tagName']==='LI'){this['outdentListItem'](_0x38f4cb);return;}const _0x32724c=_0x437cbc['parentNode'],_0x834bbe=document['createElement']('p');_0x834bbe['innerHTML']='<br>',_0x32724c['insertBefore'](_0x834bbe,_0x437cbc['nextSibling']),_0x38f4cb['remove']();_0x437cbc['children']['length']===0x0&&_0x437cbc['remove']();const _0x5462e7=window['getSelection'](),_0x2fceb8=document['createRange']();_0x2fceb8['setStart'](_0x834bbe,0x0),_0x2fceb8['collapse'](!![]),_0x5462e7['removeAllRanges'](),_0x5462e7['addRange'](_0x2fceb8);}['placeCursorInListItem'](_0x1af3ab){const _0x20588c=window['getSelection'](),_0x1e387f=document['createRange'](),_0xdd0bc3=document['createTreeWalker'](_0x1af3ab,NodeFilter['SHOW_TEXT'],null,![]),_0x8bfbb6=_0xdd0bc3['nextNode']();_0x8bfbb6?_0x1e387f['setStart'](_0x8bfbb6,0x0):_0x1e387f['setStart'](_0x1af3ab,0x0),_0x1e387f['collapse'](!![]),_0x20588c['removeAllRanges'](),_0x20588c['addRange'](_0x1e387f);}['handleLinkClick'](_0x4152d2){const _0x4a0fc4=this['isMac']?_0x4152d2['metaKey']:_0x4152d2['ctrlKey'];if(!_0x4a0fc4)return;let _0x7bafad=_0x4152d2['target'];while(_0x7bafad&&_0x7bafad!==this['editor']){if(_0x7bafad['tagName']==='A'){_0x4152d2['preventDefault'](),_0x4152d2['stopPropagation']();const _0x1271f0=_0x7bafad['getAttribute']('href');if(!_0x1271f0)return;if(_0x1271f0['startsWith']('mention:'))return;const _0x591e87=/^https?:\/\//i['test'](_0x1271f0);_0x591e87?window['open'](_0x1271f0,'_blank','noopener,noreferrer'):window['location']['href']=_0x1271f0;return;}_0x7bafad=_0x7bafad['parentNode'];}}['handleLinkMouseEnter'](_0xc228f0){const _0x5d9358=_0xc228f0['target'];if(_0x5d9358['tagName']!=='A')return;const _0x3a24f4=_0x5d9358['getAttribute']('href')||'';if(_0x3a24f4['startsWith']('mention:'))return;this['linkTooltipTimeout']&&clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=setTimeout(()=>{this['showLinkTooltip'](_0x5d9358);},0x12c);}['handleLinkMouseLeave'](_0x56e883){const _0x43e484=_0x56e883['target'];if(_0x43e484['tagName']!=='A')return;this['linkTooltipTimeout']&&(clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=null),this['hideLinkTooltip']();}['showLinkTooltip'](_0x5f067f){!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 _0x3312b8=_0x5f067f['getBoundingClientRect'](),_0x275f3a=this['linkTooltip']['getBoundingClientRect']();let _0xcc3127=_0x3312b8['bottom']+0x4,_0x2124ff=_0x3312b8['left']+_0x3312b8['width']/0x2;_0xcc3127+0x1e>window['innerHeight']&&(_0xcc3127=_0x3312b8['top']-0x1e);const _0x168b97=0x78;if(_0x2124ff-_0x168b97/0x2<0xa)_0x2124ff=_0x168b97/0x2+0xa;else _0x2124ff+_0x168b97/0x2>window['innerWidth']-0xa&&(_0x2124ff=window['innerWidth']-_0x168b97/0x2-0xa);this['linkTooltip']['style']['top']=_0xcc3127+'px',this['linkTooltip']['style']['left']=_0x2124ff+'px',this['linkTooltip']['style']['transform']='translateX(-50%)',this['linkTooltip']['classList']['add']('visible');}['hideLinkTooltip'](){this['linkTooltip']&&this['linkTooltip']['classList']['remove']('visible');}['handleKeydown'](_0x47105c){if(this['mentionState']['active']){if(_0x47105c['key']==='ArrowDown'){_0x47105c['preventDefault'](),this['mentionNavigate'](0x1);return;}if(_0x47105c['key']==='ArrowUp'){_0x47105c['preventDefault'](),this['mentionNavigate'](-0x1);return;}if(_0x47105c['key']==='Enter'||_0x47105c['key']==='Tab'){if(this['mentionState']['filteredUsers']['length']>0x0){_0x47105c['preventDefault'](),this['insertMention'](this['mentionState']['filteredUsers'][this['mentionState']['selectedIndex']]);return;}}if(_0x47105c['key']==='Escape'){_0x47105c['preventDefault'](),this['closeMentionDropdown']();return;}}if(_0x47105c['key']==='Tab'&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x5177bd=this['getContainingListItem']();if(_0x5177bd&&this['isCursorAtStartOfListItem'](_0x5177bd)){_0x47105c['preventDefault']();_0x47105c['shiftKey']?this['outdentListItem'](_0x5177bd):this['indentListItem'](_0x5177bd);this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x47105c['key']==='Enter'&&!_0x47105c['shiftKey']&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x59744c=this['getContainingListItem']();if(_0x59744c&&this['isEmptyListItem'](_0x59744c)){_0x47105c['preventDefault'](),this['exitListOnEmptyBullet'](_0x59744c),this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x47105c['key']==='Enter'&&!_0x47105c['shiftKey']&&this['isSelectionInTag']('PRE')){_0x47105c['preventDefault']();const _0x43c710=window['getSelection']();if(_0x43c710['rangeCount']>0x0){const _0x9002fe=_0x43c710['getRangeAt'](0x0);_0x9002fe['deleteContents']();const _0x16fbd7=document['createTextNode']('\x0a');_0x9002fe['insertNode'](_0x16fbd7),_0x9002fe['setStartAfter'](_0x16fbd7),_0x9002fe['setEndAfter'](_0x16fbd7),_0x43c710['removeAllRanges'](),_0x43c710['addRange'](_0x9002fe),this['handleInput']();}return;}(_0x47105c['ctrlKey']||_0x47105c['metaKey'])&&_0x47105c['key']==='b'&&(_0x47105c['preventDefault'](),document['execCommand']('bold',![],null));(_0x47105c['ctrlKey']||_0x47105c['metaKey'])&&_0x47105c['key']==='i'&&(_0x47105c['preventDefault'](),document['execCommand']('italic',![],null));if((_0x47105c['ctrlKey']||_0x47105c['metaKey'])&&_0x47105c['key']==='k'){_0x47105c['preventDefault'](),this['openLinkDialog']();return;}}['handlePaste'](_0x473e5){const _0x4c1615=_0x473e5['clipboardData'];if(_0x4c1615&&this['options']['onAddAttachments']){const _0x1b336f=this['extractImageFilesFromClipboard'](_0x4c1615);if(_0x1b336f['length']>0x0){_0x473e5['preventDefault'](),this['addAndInsertImages'](_0x1b336f);return;}}_0x473e5['preventDefault']();const _0x27f3a6=_0x473e5['clipboardData']['getData']('text/html');if(_0x27f3a6&&_0x27f3a6['trim']()){const _0x5ca3eb=this['convertPastedHtmlToMarkdown'](_0x27f3a6);if(_0x5ca3eb&&_0x5ca3eb['trim']()){this['insertMarkdownAsRichText'](_0x5ca3eb);return;}}const _0x26140d=_0x473e5['clipboardData']['getData']('text/plain');document['execCommand']('insertText',![],_0x26140d);}['convertPastedHtmlToMarkdown'](_0x182eaf){const _0x5da837=document['createElement']('div');_0x5da837['innerHTML']=_0x182eaf;const _0x1f4dcc=_0x5da837['querySelectorAll']('style,\x20script,\x20meta,\x20link,\x20head,\x20title');_0x1f4dcc['forEach'](_0x55a67e=>_0x55a67e['remove']());const _0x421c5c=_0x5da837['querySelectorAll']('*');_0x421c5c['forEach'](_0x2b7a01=>{const _0x3d3fde=Array['from'](_0x2b7a01['attributes']);_0x3d3fde['forEach'](_0x2f3017=>{_0x2f3017['name']['startsWith']('data-')&&_0x2f3017['name']!=='data-attachment-name'&&_0x2f3017['name']!=='data-mention-user-id'&&_0x2b7a01['removeAttribute'](_0x2f3017['name']);});}),_0x5da837['querySelectorAll']('font[color]')['forEach'](_0x4381fe=>{_0x4381fe['replaceWith'](..._0x4381fe['childNodes']);}),_0x5da837['querySelectorAll']('span')['forEach'](_0x47e4f2=>{_0x47e4f2['style']['color']&&_0x47e4f2['style']['removeProperty']('color'),!_0x47e4f2['getAttribute']('style')&&!_0x47e4f2['getAttribute']('data-mention-user-id')&&!_0x47e4f2['getAttribute']('data-attachment-name')&&_0x47e4f2['replaceWith'](..._0x47e4f2['childNodes']);});try{return this['turndownService']['turndown'](_0x5da837['innerHTML']);}catch(_0x5142a2){return console['warn']('Failed\x20to\x20convert\x20HTML\x20to\x20markdown:',_0x5142a2),null;}}['insertMarkdownAsRichText'](_0x2c48f8){const _0x1253a2=window['marked'];if(!_0x1253a2){document['execCommand']('insertText',![],_0x2c48f8);return;}try{const _0xafbf3d=this['preprocessColorSyntax'](_0x2c48f8),_0x4233e8=_0x1253a2['parse'](_0xafbf3d),_0x343da7=document['createElement']('div');_0x343da7['innerHTML']=_0x4233e8,this['processHtmlForEditor'](_0x343da7),document['execCommand']('insertHTML',![],_0x343da7['innerHTML']);}catch(_0x343389){console['warn']('Failed\x20to\x20convert\x20markdown\x20to\x20HTML:',_0x343389),document['execCommand']('insertText',![],_0x2c48f8);}}['processHtmlForEditor'](_0x673990){const _0x2a5aba=_0x673990['querySelectorAll']('pre');_0x2a5aba['forEach'](_0x2e4c9d=>{const _0x252f36=_0x2e4c9d['querySelector']('code');if(_0x252f36){const _0x8fe175=Array['from'](_0x252f36['classList'])['find'](_0x4ee521=>_0x4ee521['startsWith']('language-')),_0x4e0d7c=_0x8fe175?_0x8fe175['replace']('language-',''):'',_0xa459cb=document['createElement']('pre');_0x4e0d7c&&_0xa459cb['setAttribute']('data-language',_0x4e0d7c),_0xa459cb['textContent']=_0x252f36['textContent'],_0x2e4c9d['replaceWith'](_0xa459cb);}});const _0x4ac9e1=_0x673990['querySelectorAll']('a');_0x4ac9e1['forEach'](_0x4db711=>{_0x4db711['setAttribute']('target','_blank'),_0x4db711['setAttribute']('rel','noopener\x20noreferrer');});}['handleDragStart'](_0x5bd625){const _0x3da0c0=_0x5bd625['target'];if(!_0x3da0c0||_0x3da0c0['tagName']!=='IMG')return;if(!_0x5bd625['dataTransfer'])return;const _0x185c37=_0x3da0c0['getAttribute']('data-attachment-name')||'';try{_0x5bd625['dataTransfer']['setData'](INTERNAL_DRAG_MIME,_0x185c37||'1');}catch{}_0x5bd625['dataTransfer']['effectAllowed']='move';}['handleDragOver'](_0x5e24f4){if(!this['isExternalFileTransfer'](_0x5e24f4['dataTransfer']))return;_0x5e24f4['preventDefault'](),_0x5e24f4['dataTransfer']['dropEffect']='copy';}['handleDrop'](_0x5983e8){if(!this['isExternalFileTransfer'](_0x5983e8['dataTransfer']))return;const _0x179126=_0x5983e8['dataTransfer'],_0x476564=Array['from'](_0x179126['files']||[])['filter'](_0x2bb8ba=>_0x2bb8ba&&typeof _0x2bb8ba['type']==='string'),_0x2cb6b1=_0x476564['filter'](_0x23db93=>_0x23db93['type']['startsWith']('image/'));if(_0x2cb6b1['length']===0x0)return;_0x5983e8['preventDefault'](),_0x5983e8['stopPropagation'](),this['cleanupParentDragState'](),this['moveSelectionToDropPoint'](_0x5983e8),this['addAndInsertImages'](_0x2cb6b1);}['cleanupParentDragState'](){let _0x52c923=this['editor']['parentElement'];while(_0x52c923){_0x52c923['classList']&&_0x52c923['classList']['contains']('drag-over')&&_0x52c923['classList']['remove']('drag-over'),_0x52c923=_0x52c923['parentElement'];}}['isExternalFileTransfer'](_0x535911){if(!_0x535911)return![];const _0x43bac6=Array['from'](_0x535911['types']||[]);if(!_0x43bac6['includes']('Files'))return![];if(_0x43bac6['includes'](INTERNAL_DRAG_MIME))return![];if(_0x535911['files']&&_0x535911['files']['length']>0x0)return!![];if(_0x535911['items']&&Array['from'](_0x535911['items'])['some'](_0x311419=>_0x311419['kind']==='file'))return!![];return![];}['moveSelectionToDropPoint'](_0x537798){const _0x32a0df=_0x537798['clientX'],_0x4f2323=_0x537798['clientY'];let _0x156550=null;if(document['caretRangeFromPoint'])_0x156550=document['caretRangeFromPoint'](_0x32a0df,_0x4f2323);else{if(document['caretPositionFromPoint']){const _0x1f9fad=document['caretPositionFromPoint'](_0x32a0df,_0x4f2323);_0x1f9fad&&(_0x156550=document['createRange'](),_0x156550['setStart'](_0x1f9fad['offsetNode'],_0x1f9fad['offset']),_0x156550['collapse'](!![]));}}if(_0x156550){const _0x54985b=window['getSelection']();_0x54985b['removeAllRanges'](),_0x54985b['addRange'](_0x156550);}}['extractImageFilesFromClipboard'](_0x430412){const _0x48833a=Array['from'](_0x430412['items']||[]),_0xb53b79=[];for(const _0x478c64 of _0x48833a){if(_0x478c64['kind']==='file'&&_0x478c64['type']&&_0x478c64['type']['startsWith']('image/')){const _0x4daf54=_0x478c64['getAsFile']();if(_0x4daf54)_0xb53b79['push'](_0x4daf54);}}return _0xb53b79;}['addAndInsertImages'](_0x844bfc){const _0x244f1e=_0x844bfc['map'](_0x24bb34=>this['prepareAttachmentFile'](_0x24bb34))['filter'](Boolean);if(_0x244f1e['length']===0x0)return;const _0xc598f4=_0x244f1e['map'](_0x7bf1ed=>_0x7bf1ed['file']);try{this['options']['onAddAttachments'](_0xc598f4);}catch(_0x31809a){console['error']('Failed\x20to\x20add\x20attachments:',_0x31809a);}for(const {name:_0x5600dc,objectUrl:_0x35818c}of _0x244f1e){this['insertAttachmentImage'](_0x5600dc,_0x35818c);}this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));}['prepareAttachmentFile'](_0x1c4ed1){const _0x53f987=this['sanitizeFilename'](_0x1c4ed1['name']||this['defaultImageName'](_0x1c4ed1['type']));if(!_0x53f987)return null;const _0x343b2d=this['getUniqueAttachmentName'](_0x53f987),_0x28fe35=_0x343b2d===_0x1c4ed1['name']?_0x1c4ed1:new File([_0x1c4ed1],_0x343b2d,{'type':_0x1c4ed1['type'],'lastModified':_0x1c4ed1['lastModified']}),_0x1417f0=URL['createObjectURL'](_0x28fe35);return this['attachmentObjectUrls']['set'](_0x343b2d,_0x1417f0),{'name':_0x343b2d,'file':_0x28fe35,'objectUrl':_0x1417f0};}['getUniqueAttachmentName'](_0x5a03a2){const _0x8eea4c=_0x357500=>{if(this['attachmentObjectUrls']['has'](_0x357500))return!![];if(this['options']['isAttachmentNameTaken'])try{return Boolean(this['options']['isAttachmentNameTaken'](_0x357500));}catch{return![];}return![];};if(!_0x8eea4c(_0x5a03a2))return _0x5a03a2;const {stem:_0x4d4dac,ext:_0x3518d3}=this['splitFilename'](_0x5a03a2);for(let _0x54884a=0x2;_0x54884a<0x3e8;_0x54884a++){const _0x2b67ff=_0x4d4dac+'-'+_0x54884a+_0x3518d3;if(!_0x8eea4c(_0x2b67ff))return _0x2b67ff;}return _0x4d4dac+'-'+Date['now']()+_0x3518d3;}['splitFilename'](_0x1d6a37){const _0x91aa03=_0x1d6a37['lastIndexOf']('.');if(_0x91aa03<=0x0||_0x91aa03===_0x1d6a37['length']-0x1)return{'stem':_0x1d6a37,'ext':''};return{'stem':_0x1d6a37['slice'](0x0,_0x91aa03),'ext':_0x1d6a37['slice'](_0x91aa03)};}['sanitizeFilename'](_0xeb364d){const _0x53df9e=String(_0xeb364d||'')['split']('/')['pop']()['split']('\x5c')['pop']();return _0x53df9e['replace'](/[\u0000-\u001F\u007F]/g,'')['trim']();}['defaultImageName'](_0x442f12){const _0x3ff869=this['extensionForMime'](_0x442f12);return'pasted-image-'+Date['now']()+_0x3ff869;}['extensionForMime'](_0x33972d){switch(_0x33972d){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'](_0x27b9ce,_0x57a3a4){const _0x445971=document['createElement']('img');_0x445971['src']=_0x57a3a4,_0x445971['alt']=_0x27b9ce,_0x445971['setAttribute']('data-attachment-name',_0x27b9ce),_0x445971['draggable']=!![];const _0x4468b0=window['getSelection']();let _0x10b2a6=![];if(_0x4468b0&&_0x4468b0['rangeCount']>0x0){const _0x340db0=_0x4468b0['getRangeAt'](0x0);_0x10b2a6=this['editor']['contains'](_0x340db0['commonAncestorContainer'])||this['editor']===_0x340db0['commonAncestorContainer'];}if(!_0x10b2a6){this['editor']['appendChild'](_0x445971);const _0x468c5d=document['createRange']();_0x468c5d['setStartAfter'](_0x445971),_0x468c5d['collapse'](!![]),_0x4468b0['removeAllRanges'](),_0x4468b0['addRange'](_0x468c5d);return;}const _0x177050=_0x4468b0['getRangeAt'](0x0);_0x177050['deleteContents'](),_0x177050['insertNode'](_0x445971),_0x177050['setStartAfter'](_0x445971),_0x177050['collapse'](!![]),_0x4468b0['removeAllRanges'](),_0x4468b0['addRange'](_0x177050);}['toggleInlineCode'](){const _0x18c4bd=window['getSelection']();if(_0x18c4bd['rangeCount']===0x0)return;const _0x314863=_0x18c4bd['getRangeAt'](0x0),_0x4288fb=_0x314863['toString']();if(_0x4288fb){const _0x27dff9=document['createElement']('code');_0x27dff9['textContent']=_0x4288fb,_0x314863['deleteContents'](),_0x314863['insertNode'](_0x27dff9),_0x314863['setStartAfter'](_0x27dff9),_0x314863['setEndAfter'](_0x27dff9),_0x18c4bd['removeAllRanges'](),_0x18c4bd['addRange'](_0x314863);}}['insertCodeBlock'](){const _0x509504=window['getSelection']();if(_0x509504['rangeCount']===0x0)return;const _0x14ccbf=_0x509504['getRangeAt'](0x0),_0x5c101b=_0x14ccbf['toString'](),_0x583672=document['createElement']('pre'),_0x242220=document['createElement']('code');_0x242220['textContent']=_0x5c101b||'\x0a',_0x583672['appendChild'](_0x242220),_0x14ccbf['deleteContents'](),_0x14ccbf['insertNode'](_0x583672);const _0x33b2b7=document['createElement']('p');_0x33b2b7['innerHTML']='<br>',_0x583672['parentNode']['insertBefore'](_0x33b2b7,_0x583672['nextSibling']);const _0xc90dbd=document['createRange']();!_0x5c101b?(_0xc90dbd['setStart'](_0x242220['firstChild'],0x0),_0xc90dbd['setEnd'](_0x242220['firstChild'],0x0)):(_0xc90dbd['selectNodeContents'](_0x242220),_0xc90dbd['collapse'](![])),_0x509504['removeAllRanges'](),_0x509504['addRange'](_0xc90dbd);}['updatePlaceholder'](){const _0x1f5741=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');_0x1f5741?this['editor']['classList']['remove']('empty'):this['editor']['classList']['add']('empty');}['setMarkdown'](_0x20da92){if(this['_sourceMode']&&this['_monacoEditor']){this['_monacoEditor']['setValue'](_0x20da92||'');return;}if(!_0x20da92||!_0x20da92['trim']()){this['editor']['innerHTML']='',this['updatePlaceholder']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']='':this['element']['textContent']='';return;}const _0x4c5f1a=this['preprocessColorSyntax'](_0x20da92),_0x46b6da=window['marked']['parse'](_0x4c5f1a);this['editor']['innerHTML']=_0x46b6da,this['rewriteAttachmentImages'](),this['rewriteMentionLinks'](),this['addLinkHints'](),this['updatePlaceholder'](),this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x20da92:this['element']['textContent']=_0x20da92;}['rewriteAttachmentImages'](){const _0x18928b=this['editor']['querySelectorAll']('img');_0x18928b['forEach'](_0x371f23=>{const _0x21865d=_0x371f23['getAttribute']('data-attachment-name'),_0x25365b=_0x371f23['getAttribute']('src')||'',_0x54459d=this['parseAttachmentReference'](_0x25365b)||this['parseTaskAttachmentUrl'](_0x25365b),_0x4704e8=_0x21865d||(_0x54459d?_0x54459d['name']:null);if(!_0x4704e8)return;_0x371f23['setAttribute']('data-attachment-name',_0x4704e8);const _0x42debd=this['attachmentObjectUrls']['get'](_0x4704e8)||(this['options']['resolveAttachmentUrl']?this['options']['resolveAttachmentUrl'](_0x4704e8):null);_0x42debd&&(_0x371f23['src']=_0x42debd);});}['rewriteMentionLinks'](){const _0x3eedda=this['editor']['querySelectorAll']('a[href^=\x22mention:\x22]');_0x3eedda['forEach'](_0x3779cb=>{const _0x436244=_0x3779cb['getAttribute']('href')||'',_0x48df8d=_0x436244['replace']('mention:',''),_0x1ca56a=_0x3779cb['textContent']||'',_0x1d92d8=document['createElement']('span');_0x1d92d8['className']='mention',_0x1d92d8['setAttribute']('data-mention-user-id',_0x48df8d),_0x1d92d8['setAttribute']('contenteditable','false'),_0x1d92d8['textContent']='@'+_0x1ca56a;const _0x5c92a4=_0x3779cb['previousSibling'];_0x5c92a4&&_0x5c92a4['nodeType']===Node['TEXT_NODE']&&_0x5c92a4['textContent']['endsWith']('@')&&(_0x5c92a4['textContent']=_0x5c92a4['textContent']['slice'](0x0,-0x1)),_0x3779cb['parentNode']['replaceChild'](_0x1d92d8,_0x3779cb);});}['addLinkHints'](){if(!this['options']['editable'])return;const _0x577a5a=this['editor']['querySelectorAll']('a');_0x577a5a['forEach'](_0xcabf6c=>{const _0x23488f=_0xcabf6c['getAttribute']('href')||'';if(_0x23488f['startsWith']('mention:'))return;const _0x4a0c2d=_0xcabf6c['textContent']||_0x23488f,_0x31f910=_0x4a0c2d+'\x20('+(this['linkHintText']||'Ctrl+click\x20to\x20follow')+')';_0xcabf6c['setAttribute']('aria-label',_0x31f910);});}['preprocessColorSyntax'](_0x946c9d){if(!_0x946c9d)return _0x946c9d;const _0x3ae245=_0x37aadc=>{return String(_0x37aadc)['replace'](/\{color:(#[0-9A-Fa-f]{3,6})\}([\s\S]*?)\{\/color\}/g,(_0x47521f,_0x51342b,_0x3a3b76)=>{const _0x524670=_0x3ae245(_0x3a3b76);return'<span\x20style=\x22color:\x20'+_0x51342b+'\x22>'+_0x524670+'</span>';});};return _0x3ae245(_0x946c9d);}['parseAttachmentReference'](_0x5772c8){if(!_0x5772c8||typeof _0x5772c8!=='string')return null;if(!_0x5772c8['startsWith'](ATTACHMENT_SCHEME)&&!_0x5772c8['startsWith'](ATTACHMENT_SCHEME+'//'))return null;const _0x32b111=_0x5772c8['replace'](ATTACHMENT_SCHEME+'//','')['replace'](ATTACHMENT_SCHEME,'');if(!_0x32b111)return null;try{return{'name':decodeURIComponent(_0x32b111)};}catch{return{'name':_0x32b111};}}['parseTaskAttachmentUrl'](_0x500882){if(!_0x500882||typeof _0x500882!=='string')return null;const _0x53c7b8=_0x500882['match'](/\/tasks\/[^/]+\/attachments\/([^?#]+)/);if(!_0x53c7b8)return null;const _0x3ea268=_0x53c7b8[0x1];try{return{'name':decodeURIComponent(_0x3ea268)};}catch{return{'name':_0x3ea268};}}['updateAttachmentFile'](_0x4341ba,_0x13d7f9){const _0x30180a=this['attachmentObjectUrls']['get'](_0x4341ba);if(_0x30180a)try{URL['revokeObjectURL'](_0x30180a);}catch{}const _0x339f74=URL['createObjectURL'](_0x13d7f9);this['attachmentObjectUrls']['set'](_0x4341ba,_0x339f74);const _0xe1319e=this['editor']['querySelector']('img[data-attachment-name=\x22'+CSS['escape'](_0x4341ba)+'\x22]');return _0xe1319e&&(_0xe1319e['src']=_0x339f74),_0x339f74;}['getMarkdown'](){if(this['_sourceMode']&&this['_monacoEditor'])return this['_monacoEditor']['getValue']();const _0x4345a4=this['editor']['innerHTML'];if(!_0x4345a4||_0x4345a4['trim']()===''||_0x4345a4==='<br>')return'';return this['turndownService']['turndown'](_0x4345a4)['replace'](/\u200B/g,'');}['getValue'](){return this['getMarkdown']();}['setValue'](_0x30a773){this['setMarkdown'](_0x30a773);}['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'](_0x56e0d2){this['editor']['contentEditable']=_0x56e0d2,this['options']['editable']=_0x56e0d2,this['_monacoEditor']&&this['_monacoEditor']['updateOptions']({'readOnly':!_0x56e0d2});}['getMode'](){return this['_sourceMode']?'source':'visual';}['setMode'](_0x48e86b){_0x48e86b==='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 _0x49f2af=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':_0x49f2af,'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(_0x55a9cc){console['error']('Failed\x20to\x20load\x20Monaco\x20for\x20source\x20mode:',_0x55a9cc),this['editor']['style']['display']='',this['_sourceContainer']['style']['display']='none',this['_monacoLoading']=![];return;}this['_monacoLoading']=![];}else this['_monacoEditor']['setValue'](_0x49f2af);this['_sourceMode']=!![],this['_updateSourceToggleUI'](),this['_monacoEditor']['focus'](),this['_monacoEditor']['layout']();}['switchToVisual'](){if(!this['_sourceMode']||this['_destroyed'])return;let _0x171c48='';this['_monacoEditor']&&(_0x171c48=this['_monacoEditor']['getValue']()),this['editor']['style']['display']='',this['_sourceContainer']&&(this['_sourceContainer']['style']['display']='none'),this['_sourceMode']=![],this['setMarkdown'](_0x171c48),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'](_0x459aaf){if(!this['toolbarButtons'])return;for(const [_0x3d33ae,_0x326685]of Object['entries'](this['toolbarButtons'])){_0x326685['button']['disabled']=!_0x459aaf,_0x326685['button']['style']['opacity']=_0x459aaf?'':'0.35',_0x326685['button']['style']['pointerEvents']=_0x459aaf?'':'none';}}async['_ensureMonacoLoaded'](){if(window['MarkdownFileEditor']&&window['MarkdownFileEditor']['ensureMonacoLoaded'])return window['MarkdownFileEditor']['ensureMonacoLoaded']();if(typeof monaco!=='undefined')return;return new Promise((_0x4e1f81,_0x38e47e)=>{const _0x592e4f=document['querySelector']('script[src*=\x22monaco-editor\x22][src*=\x22loader.js\x22]');if(_0x592e4f){const _0x594e06=setInterval(()=>{typeof monaco!=='undefined'&&(clearInterval(_0x594e06),_0x4e1f81());},0x32);setTimeout(()=>{clearInterval(_0x594e06),_0x38e47e(new Error('Monaco\x20loading\x20timeout'));},0x2710);return;}const _0x5e3e96=document['createElement']('script');_0x5e3e96['src']='/vendor/monaco-editor/0.45.0/min/vs/loader.js',_0x5e3e96['onload']=()=>{require['config']({'paths':{'vs':'/vendor/monaco-editor/0.45.0/min/vs'}}),require(['vs/editor/editor.main'],()=>_0x4e1f81());},_0x5e3e96['onerror']=()=>_0x38e47e(new Error('Failed\x20to\x20load\x20Monaco\x20Editor')),document['head']['appendChild'](_0x5e3e96);});}['_getMonacoTheme'](){const _0x4a7f7f=document['documentElement']['getAttribute']('data-theme')==='dark';return _0x4a7f7f?'vs-dark':'vs';}['handleMentionInput'](_0x5ca279){if(!this['options']['fetchUsers'])return;const _0x32f09e=window['getSelection']();if(!_0x32f09e||_0x32f09e['rangeCount']===0x0){this['closeMentionDropdown']();return;}const _0x2d03f8=_0x32f09e['getRangeAt'](0x0),_0x364419=_0x2d03f8['startContainer'];if(_0x364419['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x20fd02=_0x364419['textContent']||'',_0x2e5294=_0x2d03f8['startOffset'],_0x576727=_0x20fd02['slice'](0x0,_0x2e5294),_0x420e44=_0x576727['lastIndexOf']('@');if(_0x420e44===-0x1){this['closeMentionDropdown']();return;}const _0x13b60c=_0x420e44>0x0?_0x576727[_0x420e44-0x1]:'\x20';if(!/\s/['test'](_0x13b60c)&&_0x420e44!==0x0){this['closeMentionDropdown']();return;}const _0x5509e9=_0x576727['slice'](_0x420e44+0x1);if(/[\s\n]/['test'](_0x5509e9)){this['closeMentionDropdown']();return;}this['mentionState']['active']=!![],this['mentionState']['query']=_0x5509e9['toLowerCase'](),this['mentionState']['startOffset']=_0x420e44,this['mentionState']['startNode']=_0x364419,this['showMentionDropdown']();}async['showMentionDropdown'](){if(!this['usersCache'])try{const _0xf783a9=await this['options']['fetchUsers']();this['usersCache']=_0xf783a9['users']||_0xf783a9||[];}catch(_0x50e0b1){console['error']('Failed\x20to\x20fetch\x20users\x20for\x20@mention:',_0x50e0b1),this['closeMentionDropdown']();return;}this['mentionState']['users']=this['usersCache'];const _0x540843=this['mentionState']['query'];this['mentionState']['filteredUsers']=this['mentionState']['users']['filter'](_0x14b660=>{const _0x383b8d=(_0x14b660['name']||'')['toLowerCase'](),_0x98897=(_0x14b660['username']||'')['toLowerCase']();return _0x383b8d['includes'](_0x540843)||_0x98897['includes'](_0x540843);})['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']=_0x4df83d=>{!this['mentionDropdown']['contains'](_0x4df83d['target'])&&!this['editor']['contains'](_0x4df83d['target'])&&this['closeMentionDropdown']();},document['addEventListener']('click',this['mentionClickOutsideHandler']),this['mentionScrollHandler']=()=>{this['mentionState']['active']&&this['positionMentionDropdown']();},window['addEventListener']('scroll',this['mentionScrollHandler'],!![]));const _0xd3d8ec=this['mentionState']['filteredUsers'];this['mentionDropdown']['innerHTML']=_0xd3d8ec['map']((_0x3d61ee,_0x21a455)=>{const _0x5f5c38=_0x21a455===this['mentionState']['selectedIndex'],_0x434633=_0x3d61ee['name']||_0x3d61ee['username']||'Unknown',_0x19c30f=_0x3d61ee['username']||'',_0x212424=this['getInitials'](_0x434633),_0x8e01e=this['getAvatarColorIndex'](_0x19c30f||_0x3d61ee['id']||_0x434633);return'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22mention-option\x20'+(_0x5f5c38?'mention-option-selected':'')+'\x22\x20data-index=\x22'+_0x21a455+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-avatar\x20avatar-color-'+_0x8e01e+'\x22>'+this['escapeHtmlForMention'](_0x212424)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-option-name\x22>'+this['escapeHtmlForMention'](_0x434633)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x19c30f?'<span\x20class=\x22mention-option-username\x22>@'+this['escapeHtmlForMention'](_0x19c30f)+'</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'](_0x5867bb=>{_0x5867bb['addEventListener']('mousedown',_0x5eba4a=>{_0x5eba4a['preventDefault']();const _0x428566=parseInt(_0x5867bb['dataset']['index'],0xa);this['insertMention'](this['mentionState']['filteredUsers'][_0x428566]);}),_0x5867bb['addEventListener']('mouseenter',()=>{const _0x351819=parseInt(_0x5867bb['dataset']['index'],0xa);this['mentionState']['selectedIndex']=_0x351819,this['updateMentionSelection']();});}),this['mentionDropdown']['style']['display']='block';}['positionMentionDropdown'](){if(!this['mentionDropdown'])return;const _0x1b2abf=window['getSelection']();if(!_0x1b2abf||_0x1b2abf['rangeCount']===0x0)return;const _0x55e182=_0x1b2abf['getRangeAt'](0x0),_0x4d176c=_0x55e182['getBoundingClientRect'](),_0x5c720a=0x104,_0x5299cb=Math['min'](0xf0,this['mentionState']['filteredUsers']['length']*0x24+0x8),_0x1d851d=window['innerWidth'],_0x44aa4f=window['innerHeight'],_0x10431f=_0x44aa4f-_0x4d176c['bottom'],_0x491cd8=_0x4d176c['top'],_0x2a155e=_0x10431f<_0x5299cb+0xa&&_0x491cd8>_0x10431f;let _0x1e9a57,_0x354978;_0x2a155e?_0x1e9a57=_0x4d176c['top']+window['scrollY']-_0x5299cb-0x4:_0x1e9a57=_0x4d176c['bottom']+window['scrollY']+0x4,_0x354978=_0x4d176c['left']+window['scrollX'],_0x354978+_0x5c720a>_0x1d851d-0xa&&(_0x354978=_0x1d851d-_0x5c720a-0xa),_0x354978<0xa&&(_0x354978=0xa),this['mentionDropdown']['style']['position']='absolute',this['mentionDropdown']['style']['top']=_0x1e9a57+'px',this['mentionDropdown']['style']['left']=_0x354978+'px';}['mentionNavigate'](_0x13581f){const _0x756a07=this['mentionState']['filteredUsers']['length'];if(_0x756a07===0x0)return;this['mentionState']['selectedIndex']=(this['mentionState']['selectedIndex']+_0x13581f+_0x756a07)%_0x756a07,this['updateMentionSelection']();}['updateMentionSelection'](){if(!this['mentionDropdown'])return;const _0x4a0c5e=this['mentionDropdown']['querySelectorAll']('.mention-option');_0x4a0c5e['forEach']((_0x2a8d16,_0x44df04)=>{_0x44df04===this['mentionState']['selectedIndex']?(_0x2a8d16['classList']['add']('mention-option-selected'),_0x2a8d16['scrollIntoView']({'block':'nearest'})):_0x2a8d16['classList']['remove']('mention-option-selected');});}['insertMention'](_0x495cc4){if(!_0x495cc4)return;const _0x3836f0=window['getSelection']();if(!_0x3836f0||_0x3836f0['rangeCount']===0x0)return;const _0x487036=_0x3836f0['getRangeAt'](0x0),_0x4fb99e=this['mentionState']['startNode'];if(!_0x4fb99e||_0x4fb99e['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x945bc9=_0x4fb99e['textContent']||'',_0x19ca5e=this['mentionState']['startOffset'],_0x47ac41=_0x487036['startOffset'],_0x16b024=_0x945bc9['slice'](0x0,_0x19ca5e),_0x44a084=_0x945bc9['slice'](_0x47ac41),_0x2e1494=document['createElement']('span');_0x2e1494['className']='mention',_0x2e1494['setAttribute']('data-mention-user-id',_0x495cc4['id']),_0x2e1494['setAttribute']('contenteditable','false'),_0x2e1494['textContent']='@'+(_0x495cc4['name']||_0x495cc4['username']);const _0x18ccbb=document['createTextNode'](_0x16b024),_0xda51a2=document['createTextNode']('\x20'+_0x44a084),_0x4e5c02=_0x4fb99e['parentNode'];_0x4e5c02['insertBefore'](_0x18ccbb,_0x4fb99e),_0x4e5c02['insertBefore'](_0x2e1494,_0x4fb99e),_0x4e5c02['insertBefore'](_0xda51a2,_0x4fb99e),_0x4e5c02['removeChild'](_0x4fb99e);const _0x33879f=document['createRange']();_0x33879f['setStart'](_0xda51a2,0x1),_0x33879f['collapse'](!![]),_0x3836f0['removeAllRanges'](),_0x3836f0['addRange'](_0x33879f),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'](_0x5b1cbb){const _0x3301d1=document['createElement']('div');return _0x3301d1['textContent']=_0x5b1cbb,_0x3301d1['innerHTML'];}['getInitials'](_0x17b1d1){if(!_0x17b1d1)return'?';const _0x3ce9f3=_0x17b1d1['trim']()['split'](/\s+/);if(_0x3ce9f3['length']>=0x2)return(_0x3ce9f3[0x0][0x0]+_0x3ce9f3[_0x3ce9f3['length']-0x1][0x0])['toUpperCase']();return _0x17b1d1['substring'](0x0,0x2)['toUpperCase']();}['getAvatarColorIndex'](_0x4d2a19){if(!_0x4d2a19)return 0x6;let _0x253264=0x0;for(let _0x53b72e=0x0;_0x53b72e<_0x4d2a19['length'];_0x53b72e++){_0x253264=_0x4d2a19['charCodeAt'](_0x53b72e)+((_0x253264<<0x5)-_0x253264);}return Math['abs'](_0x253264)%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 _0x59cd26 of this['attachmentObjectUrls']['values']()){try{URL['revokeObjectURL'](_0x59cd26);}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(_0x6ca951,_0x24a18d={}){this['element']=_0x6ca951,this['options']={'placeholder':_0x24a18d['placeholder']||'Start\x20typing...','editable':_0x24a18d['editable']!==![],'onChange':_0x24a18d['onChange']||null,'minHeight':_0x24a18d['minHeight']||'100px','toolbar':_0x24a18d['toolbar']||![],'onAddAttachments':_0x24a18d['onAddAttachments']||null,'resolveAttachmentUrl':_0x24a18d['resolveAttachmentUrl']||null,'isAttachmentNameTaken':_0x24a18d['isAttachmentNameTaken']||null,'fetchUsers':_0x24a18d['fetchUsers']||null,'sourceToggle':_0x24a18d['sourceToggle']||![],'sourceLineNumbers':_0x24a18d['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 _0xeee189=window['TurndownService'];this['turndownService']=new _0xeee189({'headingStyle':'atx','codeBlockStyle':'fenced','emDelimiter':'_','bulletListMarker':'-'}),this['attachmentObjectUrls']=new Map(),this['registerTurndownRules'](),this['init']();}['registerTurndownRules'](){this['turndownService']['addRule']('profoundAttachmentImage',{'filter':_0xe304a2=>{return _0xe304a2&&_0xe304a2['nodeName']==='IMG'&&_0xe304a2['getAttribute']&&_0xe304a2['getAttribute']('data-attachment-name');},'replacement':(_0x9a5e12,_0x1b9e53)=>{const _0x57eb89=_0x1b9e53['getAttribute']('data-attachment-name')||'',_0x319330=_0x1b9e53['getAttribute']('alt')||'',_0x470a8b=_0x57eb89['trim'](),_0x69a7dc=this['escapeAltText'](_0x319330||_0x470a8b),_0x8feec0=encodeURIComponent(_0x470a8b);return'';}}),this['turndownService']['addRule']('profoundMention',{'filter':_0x5e07d4=>{return _0x5e07d4&&_0x5e07d4['nodeName']==='SPAN'&&_0x5e07d4['getAttribute']&&_0x5e07d4['getAttribute']('data-mention-user-id');},'replacement':(_0x517d7b,_0xd3e71d)=>{const _0x1c4dc8=_0xd3e71d['getAttribute']('data-mention-user-id')||'',_0x379dfd=_0xd3e71d['textContent']||'',_0x12e75c=_0x379dfd['startsWith']('@')?_0x379dfd['slice'](0x1):_0x379dfd;return'['+_0x12e75c+'](mention:'+_0x1c4dc8+')';}}),this['turndownService']['addRule']('profoundColoredText',{'filter':_0x980660=>{if(!_0x980660)return![];if(_0x980660['nodeName']==='FONT'&&_0x980660['getAttribute']&&_0x980660['getAttribute']('color'))return!![];if(_0x980660['nodeName']==='SPAN'&&_0x980660['style']&&_0x980660['style']['color']){if(_0x980660['getAttribute']&&_0x980660['getAttribute']('data-mention-user-id'))return![];return!![];}return![];},'replacement':(_0x107842,_0x4dd501)=>{if(!_0x107842['trim']())return _0x107842;let _0x257f23='';if(_0x4dd501['nodeName']==='FONT')_0x257f23=_0x4dd501['getAttribute']('color')||'';else _0x4dd501['style']&&_0x4dd501['style']['color']&&(_0x257f23=this['rgbToHex'](_0x4dd501['style']['color']));if(!_0x257f23)return _0x107842;return'{color:'+_0x257f23+'}'+_0x107842+'{/color}';}});}['rgbToHex'](_0x12c8f2){if(!_0x12c8f2)return'';if(_0x12c8f2['startsWith']('#'))return _0x12c8f2;const _0x45c4f4=_0x12c8f2['match'](/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(!_0x45c4f4)return _0x12c8f2;const _0x35d0e8=parseInt(_0x45c4f4[0x1],0xa),_0x5d158f=parseInt(_0x45c4f4[0x2],0xa),_0x5f2a5a=parseInt(_0x45c4f4[0x3],0xa);return'#'+[_0x35d0e8,_0x5d158f,_0x5f2a5a]['map'](_0x6fb6d2=>_0x6fb6d2['toString'](0x10)['padStart'](0x2,'0'))['join']('')['toUpperCase']();}['escapeAltText'](_0x236506){return String(_0x236506||'')['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 _0x47b188=this['element']['textContent']||this['element']['value']||'';_0x47b188['trim']()&&this['setMarkdown'](_0x47b188);}['createToolbar'](){this['toolbar']=document['createElement']('div'),this['toolbar']['className']='markdown-editor-toolbar',this['toolbarButtons']={};const _0x1c6edf=[{'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'}];_0x1c6edf['forEach'](_0x29a6ef=>{if(_0x29a6ef['separator']){const _0x8e289e=document['createElement']('div');_0x8e289e['className']='markdown-toolbar-separator',_0x8e289e['style']['width']='1px',_0x8e289e['style']['height']='16px',_0x8e289e['style']['background']='var(--color-border)',_0x8e289e['style']['margin']='0\x206px',_0x8e289e['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x8e289e);}else{if(_0x29a6ef['isDropdown']){const _0x1bfded=document['createElement']('div');_0x1bfded['className']='markdown-toolbar-dropdown',_0x1bfded['style']['position']='relative';const _0x36c57d=document['createElement']('button');_0x36c57d['type']='button',_0x36c57d['className']='markdown-editor-toolbar-btn\x20markdown-toolbar-dropdown-btn',_0x36c57d['tabIndex']=-0x1,_0x36c57d['innerHTML']=_0x29a6ef['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>',_0x36c57d['title']=_0x29a6ef['title'],_0x36c57d['dataset']['action']=_0x29a6ef['action'];const _0x2ec1ae=document['createElement']('div');_0x2ec1ae['className']='markdown-toolbar-dropdown-menu',_0x2ec1ae['style']['display']='none';if(_0x29a6ef['action']==='header')this['createHeaderDropdown'](_0x2ec1ae);else _0x29a6ef['action']==='color'&&this['createColorDropdown'](_0x2ec1ae);_0x36c57d['addEventListener']('click',_0x26f7c1=>{_0x26f7c1['preventDefault'](),_0x26f7c1['stopPropagation'](),this['toggleDropdown'](_0x2ec1ae,_0x36c57d);}),_0x1bfded['appendChild'](_0x36c57d),_0x1bfded['appendChild'](_0x2ec1ae),this['toolbar']['appendChild'](_0x1bfded),this['toolbarButtons'][_0x29a6ef['id']]={'button':_0x36c57d,'dropdown':_0x2ec1ae,'command':_0x29a6ef['command'],'tagName':_0x29a6ef['tagName']};}else{const _0x3292d0=document['createElement']('button');_0x3292d0['type']='button',_0x3292d0['className']='markdown-editor-toolbar-btn',_0x3292d0['tabIndex']=-0x1,_0x3292d0['innerHTML']=_0x29a6ef['icon'],_0x3292d0['title']=_0x29a6ef['title'],_0x3292d0['dataset']['action']=_0x29a6ef['action'],_0x3292d0['addEventListener']('click',_0x243255=>{_0x243255['preventDefault'](),this['handleToolbarAction'](_0x29a6ef['action']);}),this['toolbar']['appendChild'](_0x3292d0),this['toolbarButtons'][_0x29a6ef['id']]={'button':_0x3292d0,'command':_0x29a6ef['command'],'tagName':_0x29a6ef['tagName']};}}});if(this['options']['sourceToggle']){const _0x49a6ae=document['createElement']('div');_0x49a6ae['style']['marginLeft']='auto',this['toolbar']['appendChild'](_0x49a6ae);const _0xe42430=document['createElement']('div');_0xe42430['className']='markdown-toolbar-separator\x20markdown-source-toggle-separator',_0xe42430['style']['width']='1px',_0xe42430['style']['height']='16px',_0xe42430['style']['background']='var(--color-border)',_0xe42430['style']['margin']='0\x206px',_0xe42430['style']['alignSelf']='center',this['toolbar']['appendChild'](_0xe42430);const _0x335e6b=document['createElement']('button');_0x335e6b['type']='button',_0x335e6b['className']='markdown-editor-toolbar-btn\x20markdown-source-toggle-btn',_0x335e6b['tabIndex']=-0x1,_0x335e6b['innerHTML']=ICONS['sourceToggle'],_0x335e6b['title']='Switch\x20to\x20source\x20mode',_0x335e6b['addEventListener']('click',_0x2cf856=>{_0x2cf856['preventDefault'](),_0x2cf856['stopPropagation'](),this['toggleSourceMode']();}),this['toolbar']['appendChild'](_0x335e6b),this['_sourceToggleBtn']=_0x335e6b;}document['addEventListener']('click',_0x36e6f8=>{!this['toolbar']['contains'](_0x36e6f8['target'])&&this['closeAllDropdowns']();});}['createHeaderDropdown'](_0x17b7db){const _0x585fdc=[{'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'}];_0x585fdc['forEach'](_0x480376=>{const _0xa6f8d3=document['createElement']('button');_0xa6f8d3['type']='button',_0xa6f8d3['className']='markdown-dropdown-item',_0xa6f8d3['tabIndex']=-0x1,_0xa6f8d3['innerHTML']='<span\x20style=\x22font-size:\x20'+(_0x480376['level']===0x0?'14px':0x14-_0x480376['level']*0x2+'px')+';\x20font-weight:\x20'+(_0x480376['level']===0x0?'normal':'bold')+'\x22>'+_0x480376['label']+'</span>',_0xa6f8d3['addEventListener']('click',_0x55ee23=>{_0x55ee23['preventDefault'](),_0x55ee23['stopPropagation'](),this['applyHeader'](_0x480376['level']),this['closeAllDropdowns']();}),_0x17b7db['appendChild'](_0xa6f8d3);});}['createColorDropdown'](_0x3bb066){const _0x17ea47=[{'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'}],_0x2096ad=document['createElement']('div');_0x2096ad['className']='markdown-color-grid',_0x2096ad['style']['display']='grid',_0x2096ad['style']['gridTemplateColumns']='repeat(3,\x201fr)',_0x2096ad['style']['gap']='4px',_0x2096ad['style']['padding']='8px',_0x17ea47['forEach'](_0x10bca8=>{const _0x522bf3=document['createElement']('button');_0x522bf3['type']='button',_0x522bf3['className']='markdown-color-btn',_0x522bf3['tabIndex']=-0x1,_0x522bf3['style']['width']='24px',_0x522bf3['style']['height']='24px',_0x522bf3['style']['backgroundColor']=_0x10bca8['value'],_0x522bf3['style']['border']='1px\x20solid\x20var(--color-border)',_0x522bf3['style']['borderRadius']='4px',_0x522bf3['style']['cursor']='pointer',_0x522bf3['title']=_0x10bca8['label'],_0x522bf3['addEventListener']('click',_0x43d155=>{_0x43d155['preventDefault'](),_0x43d155['stopPropagation'](),this['applyColor'](_0x10bca8['value']),this['closeAllDropdowns']();}),_0x2096ad['appendChild'](_0x522bf3);}),_0x3bb066['appendChild'](_0x2096ad);const _0x38fd00=document['createElement']('button');_0x38fd00['type']='button',_0x38fd00['className']='markdown-dropdown-item',_0x38fd00['innerHTML']='<span>Remove\x20Color</span>',_0x38fd00['style']['borderTop']='1px\x20solid\x20var(--color-border)',_0x38fd00['style']['marginTop']='4px',_0x38fd00['style']['paddingTop']='8px',_0x38fd00['addEventListener']('click',_0x570520=>{_0x570520['preventDefault'](),_0x570520['stopPropagation'](),this['removeColor'](),this['closeAllDropdowns']();}),_0x3bb066['appendChild'](_0x38fd00);}['toggleDropdown'](_0x565c02,_0x407aa0){const _0x4bad05=_0x565c02['style']['display']!=='none';this['toolbar']&&this['closeAllDropdowns'](),!_0x4bad05&&(_0x565c02['style']['display']='block',_0x407aa0['classList']['add']('active'));}['closeAllDropdowns'](){const _0x338fe0=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-menu');_0x338fe0['forEach'](_0xdcbf2e=>_0xdcbf2e['style']['display']='none');const _0x2aa974=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-btn');_0x2aa974['forEach'](_0x4f34c9=>_0x4f34c9['classList']['remove']('active'));}['applyHeader'](_0x4c45a7){this['editor']['focus']();const _0x2531c0=window['getSelection']();if(!_0x2531c0||_0x2531c0['rangeCount']===0x0)return;const _0x399b92=_0x2531c0['getRangeAt'](0x0);let _0x4d9d09=_0x399b92['startContainer'];while(_0x4d9d09&&_0x4d9d09!==this['editor']){if(_0x4d9d09['nodeType']===Node['ELEMENT_NODE']){const _0x4568e6=window['getComputedStyle'](_0x4d9d09)['display'];if(_0x4568e6==='block'||['P','H1','H2','H3','H4','H5','H6','DIV']['includes'](_0x4d9d09['tagName']))break;}_0x4d9d09=_0x4d9d09['parentNode'];}_0x4c45a7===0x0?document['execCommand']('formatBlock',![],'p'):document['execCommand']('formatBlock',![],'h'+_0x4c45a7),this['editor']['dispatchEvent'](new Event('input'));}['applyColor'](_0x28f347){this['editor']['focus'](),document['execCommand']('foreColor',![],_0x28f347),this['editor']['dispatchEvent'](new Event('input'));}['removeColor'](){this['editor']['focus'](),document['execCommand']('removeFormat',![],null),this['editor']['dispatchEvent'](new Event('input'));}['handleToolbarAction'](_0x5e1ec6){this['editor']['focus']();switch(_0x5e1ec6){case'bold':case'italic':case'strikeThrough':case'insertUnorderedList':case'insertOrderedList':document['execCommand'](_0x5e1ec6,![],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 _0x10883d=document['createElement']('div');_0x10883d['className']='markdown-editor-link-modal',_0x10883d['hidden']=!![],_0x10883d['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'](_0x10883d),this['linkDialog']=_0x10883d,this['linkDialogElements']={'backdrop':_0x10883d['querySelector']('.markdown-editor-link-backdrop'),'title':_0x10883d['querySelector']('.markdown-editor-link-title'),'close':_0x10883d['querySelector']('.markdown-editor-link-close'),'form':_0x10883d['querySelector']('.markdown-editor-link-form'),'urlInput':_0x10883d['querySelector']('[data-link-field=\x22url\x22]'),'textInput':_0x10883d['querySelector']('[data-link-field=\x22text\x22]'),'remove':_0x10883d['querySelector']('[data-action=\x22remove\x22]'),'cancel':_0x10883d['querySelector']('[data-action=\x22cancel\x22]'),'submit':_0x10883d['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',_0x324239=>{_0x324239['preventDefault'](),this['applyLinkDialogResult']();}),this['linkDialog']['addEventListener']('keydown',_0x358707=>{_0x358707['key']==='Escape'&&(_0x358707['preventDefault'](),this['closeLinkDialog']({'restoreSelection':!![]}));});}['openLinkDialog'](){const _0xb65b7a=window['getSelection']();if(!_0xb65b7a||_0xb65b7a['rangeCount']===0x0)return;const _0x350b4e=_0xb65b7a['getRangeAt'](0x0),_0x50b713=this['editor']['contains'](_0x350b4e['commonAncestorContainer'])||this['editor']===_0x350b4e['commonAncestorContainer'];if(!_0x50b713)return;this['toolbar']&&this['closeAllDropdowns']();this['ensureLinkDialog']();const _0x4c52c9=_0x350b4e['cloneRange'](),_0xdd9085=this['findLinkAtRange'](_0x4c52c9),_0xeb9900=_0xdd9085?_0xdd9085['getAttribute']('href')||'':'',_0x175d0c=_0xdd9085?_0xdd9085['textContent']||'':_0x4c52c9['toString']();this['linkDialogContext']={'range':_0x4c52c9,'existingLink':_0xdd9085,'selectedText':_0x175d0c},this['linkDialogElements']['title']['textContent']=_0xdd9085?'Edit\x20Link':'Insert\x20Link',this['linkDialogElements']['submit']['textContent']=_0xdd9085?'Save\x20Link':'Insert\x20Link',this['linkDialogElements']['remove']['hidden']=!_0xdd9085,this['linkDialogElements']['urlInput']['value']=_0xeb9900,this['linkDialogElements']['textInput']['value']=_0x175d0c,this['linkDialog']['hidden']=![],this['linkDialogElements']['urlInput']['focus'](),this['linkDialogElements']['urlInput']['select']();}['closeLinkDialog']({restoreSelection:restoreSelection=![]}={}){if(!this['linkDialog'])return;const _0x22507d=this['linkDialogContext'];this['linkDialog']['hidden']=!![],restoreSelection&&_0x22507d?.['range']&&(this['editor']['focus'](),this['restoreRange'](_0x22507d['range'])),this['linkDialogContext']=null;}['applyLinkDialogResult']({remove:remove=![]}={}){if(!this['linkDialog']||!this['linkDialogContext'])return;const _0x431cd8=this['linkDialogContext'],_0x408de4=(this['linkDialogElements']['urlInput']['value']||'')['trim'](),_0x6d7dff=this['linkDialogElements']['textInput']['value']||'',_0xb27a46=_0x6d7dff['trim']();if(!remove&&!_0x408de4){this['linkDialogElements']['urlInput']['focus']();return;}this['closeLinkDialog'](),this['editor']['focus'](),this['restoreRange'](_0x431cd8['range']);if(remove)_0x431cd8['existingLink']&&_0x431cd8['existingLink']['parentNode']?this['unwrapLinkElement'](_0x431cd8['existingLink']):document['execCommand']('unlink',![],null);else{if(_0x431cd8['existingLink']&&_0x431cd8['existingLink']['parentNode'])_0x431cd8['existingLink']['setAttribute']('href',_0x408de4),_0x431cd8['existingLink']['textContent']=_0xb27a46||_0x408de4;else{const _0x4b1b03=window['getSelection']();if(!_0x4b1b03||_0x4b1b03['rangeCount']===0x0)return;const _0x220bcd=_0x4b1b03['getRangeAt'](0x0),_0x399c33=(_0x431cd8['selectedText']||'')['trim'](),_0xa2d8bb=_0xb27a46||_0x399c33||_0x408de4;_0x220bcd['deleteContents']();const _0x1bd178=document['createElement']('a');_0x1bd178['href']=_0x408de4,_0x1bd178['textContent']=_0xa2d8bb,_0x220bcd['insertNode'](_0x1bd178),_0x220bcd['setStartAfter'](_0x1bd178),_0x220bcd['collapse'](!![]),_0x4b1b03['removeAllRanges'](),_0x4b1b03['addRange'](_0x220bcd);}}this['addLinkHints'](),this['updateToolbarState'](),this['editor']['dispatchEvent'](new Event('input'));}['ensureLinkDialogStyles'](){if(document['getElementById'](LINK_DIALOG_STYLE_ID))return;const _0x3b43de=document['createElement']('style');_0x3b43de['id']=LINK_DIALOG_STYLE_ID,_0x3b43de['textContent']=LINK_DIALOG_STYLES,document['head']['appendChild'](_0x3b43de);}['restoreRange'](_0x28711c){const _0x317910=window['getSelection']();if(!_0x317910)return;try{_0x317910['removeAllRanges'](),_0x317910['addRange'](_0x28711c);return;}catch(_0x4ad4c5){}const _0x14c7a7=document['createRange']();_0x14c7a7['selectNodeContents'](this['editor']),_0x14c7a7['collapse'](![]),_0x317910['removeAllRanges'](),_0x317910['addRange'](_0x14c7a7);}['findLinkAtRange'](_0x540025){if(!_0x540025)return null;const _0x35eeee=this['findParentLink'](_0x540025['startContainer']);if(_0x540025['collapsed'])return _0x35eeee;const _0x3fc95f=this['findParentLink'](_0x540025['endContainer']);if(_0x35eeee&&_0x35eeee===_0x3fc95f)return _0x35eeee;if(_0x35eeee&&_0x35eeee['contains'](_0x540025['endContainer']))return _0x35eeee;if(_0x3fc95f&&_0x3fc95f['contains'](_0x540025['startContainer']))return _0x3fc95f;return null;}['findParentLink'](_0x5df1f5){let _0x1027bc=_0x5df1f5;while(_0x1027bc&&_0x1027bc!==this['editor']){if(_0x1027bc['nodeType']===Node['ELEMENT_NODE']&&_0x1027bc['tagName']==='A'){const _0x1ec611=_0x1027bc['getAttribute']('href')||'';if(_0x1ec611['startsWith']('mention:'))return null;return _0x1027bc;}_0x1027bc=_0x1027bc['parentNode'];}return null;}['unwrapLinkElement'](_0x1cb03c){const _0xdf006=_0x1cb03c['parentNode'];if(!_0xdf006)return;while(_0x1cb03c['firstChild']){_0xdf006['insertBefore'](_0x1cb03c['firstChild'],_0x1cb03c);}_0xdf006['removeChild'](_0x1cb03c);}['isSelectionInTag'](_0x1d4733){const _0xad1140=window['getSelection']();if(!_0xad1140||_0xad1140['rangeCount']===0x0)return![];let _0x179522=_0xad1140['anchorNode'];while(_0x179522&&_0x179522!==this['editor']){if(_0x179522['nodeType']===Node['ELEMENT_NODE']&&_0x179522['tagName']===_0x1d4733)return!![];_0x179522=_0x179522['parentNode'];}return![];}['updateToolbarState'](){if(!this['toolbarButtons'])return;for(const [_0xd626b6,_0x42b3aa]of Object['entries'](this['toolbarButtons'])){let _0x519216=![];if(_0x42b3aa['command'])try{_0x519216=document['queryCommandState'](_0x42b3aa['command']);}catch(_0x49d957){_0x519216=![];}else _0x42b3aa['tagName']&&(_0x519216=this['isSelectionInTag'](_0x42b3aa['tagName']));_0x42b3aa['button']['classList']['toggle']('active',_0x519216);}}['bindEvents'](){this['editor']['addEventListener']('keydown',_0x89733=>this['handleKeydown'](_0x89733)),this['editor']['addEventListener']('input',_0x2325ba=>{this['handleMentionInput'](_0x2325ba),this['handleAutoFormat'](_0x2325ba);}),this['editor']['addEventListener']('input',()=>{const _0x5a72fe=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');!_0x5a72fe&&(this['editor']['innerHTML']='');this['updatePlaceholder']();const _0x22aa61=this['getMarkdown']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x22aa61:this['element']['textContent']=_0x22aa61,this['options']['onChange']&&this['options']['onChange'](_0x22aa61);}),this['editor']['addEventListener']('paste',_0x12238a=>this['handlePaste'](_0x12238a)),this['editor']['addEventListener']('dragover',_0x147de0=>this['handleDragOver'](_0x147de0)),this['editor']['addEventListener']('drop',_0x4aaf43=>this['handleDrop'](_0x4aaf43)),this['editor']['addEventListener']('dragstart',_0x2073a0=>this['handleDragStart'](_0x2073a0)),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']=_0x3e23db=>this['handleLinkClick'](_0x3e23db),this['editor']['addEventListener']('click',this['linkClickHandler']),this['linkMouseEnterHandler']=_0x4fc37d=>this['handleLinkMouseEnter'](_0x4fc37d),this['linkMouseLeaveHandler']=_0x269756=>this['handleLinkMouseLeave'](_0x269756),this['editor']['addEventListener']('mouseover',this['linkMouseEnterHandler']),this['editor']['addEventListener']('mouseout',this['linkMouseLeaveHandler']),this['updatePlaceholder']();}['handleAutoFormat'](_0x5a0b7d){if(_0x5a0b7d['inputType']==='deleteContentBackward')return;const _0x585ad1=window['getSelection']();if(!_0x585ad1||_0x585ad1['rangeCount']===0x0)return;const _0x86c7f2=_0x585ad1['getRangeAt'](0x0),_0x533b5b=_0x86c7f2['startContainer'];if(_0x533b5b['nodeType']!==Node['TEXT_NODE'])return;if(this['isSelectionInTag']('CODE')||this['isSelectionInTag']('PRE'))return;const _0x54bc00=_0x533b5b['textContent'],_0x451a69=_0x86c7f2['startOffset'],_0x41feef=_0x54bc00['slice'](0x0,_0x451a69);if(_0x41feef['endsWith']('```')){_0x86c7f2['setStart'](_0x533b5b,_0x451a69-0x3),_0x86c7f2['setEnd'](_0x533b5b,_0x451a69),_0x86c7f2['deleteContents'](),this['insertCodeBlock']();return;}const _0x4cb4c=/`([^`]+)`$/,_0x2ac403=_0x41feef['match'](_0x4cb4c);if(_0x2ac403){const _0x4ac45d=_0x2ac403[0x1];if(_0x4ac45d){const _0x8098c4=_0x2ac403['index'],_0x3e0370=_0x8098c4+_0x4ac45d['length']+0x2;_0x86c7f2['setStart'](_0x533b5b,_0x8098c4),_0x86c7f2['setEnd'](_0x533b5b,_0x451a69),_0x86c7f2['deleteContents']();const _0x295c44=document['createElement']('code');_0x295c44['textContent']=_0x4ac45d,_0x86c7f2['insertNode'](_0x295c44),_0x86c7f2['setStartAfter'](_0x295c44),_0x86c7f2['setEndAfter'](_0x295c44);const _0x24cf82=document['createTextNode']('');_0x86c7f2['insertNode'](_0x24cf82),_0x86c7f2['setStartAfter'](_0x24cf82),_0x86c7f2['setEndAfter'](_0x24cf82),_0x585ad1['removeAllRanges'](),_0x585ad1['addRange'](_0x86c7f2);return;}}const _0x1c3372=_0x41feef['match'](/^[-*][\s\u00A0]$/);if(_0x1c3372&&this['isAtStartOfBlock'](_0x533b5b)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x86c7f2['setStart'](_0x533b5b,Math['max'](_0x451a69-0x2,0x0)),_0x86c7f2['setEnd'](_0x533b5b,_0x451a69),_0x86c7f2['deleteContents']();const _0x40cd58=this['ensureListInsertionAnchor'](_0x533b5b);document['execCommand']('insertUnorderedList',![],null);_0x40cd58&&_0x40cd58['parentNode']&&_0x40cd58['parentNode']['removeChild'](_0x40cd58);this['updateToolbarState']();return;}const _0x2e36eb=_0x41feef['match'](/^1\.[\s\u00A0]$/);if(_0x2e36eb&&this['isAtStartOfBlock'](_0x533b5b)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x86c7f2['setStart'](_0x533b5b,Math['max'](_0x451a69-0x3,0x0)),_0x86c7f2['setEnd'](_0x533b5b,_0x451a69),_0x86c7f2['deleteContents']();const _0x406abe=this['ensureListInsertionAnchor'](_0x533b5b);document['execCommand']('insertOrderedList',![],null);_0x406abe&&_0x406abe['parentNode']&&_0x406abe['parentNode']['removeChild'](_0x406abe);this['updateToolbarState']();return;}}['isAtStartOfBlock'](_0x3945b9){let _0x945d87=_0x3945b9;while(_0x945d87&&_0x945d87!==this['editor']){const _0x3647a2=_0x945d87['parentNode'];if(!_0x3647a2)break;const _0x1049f4=_0x3647a2['tagName'];if(_0x1049f4==='DIV'||_0x1049f4==='P'||_0x1049f4==='LI'||_0x3647a2===this['editor']){let _0xd4cf16=_0x3647a2['firstChild'];while(_0xd4cf16&&(_0xd4cf16['nodeType']===Node['TEXT_NODE']&&_0xd4cf16['textContent']===''||_0xd4cf16['nodeType']===Node['ELEMENT_NODE']&&_0xd4cf16['tagName']==='BR')){_0xd4cf16=_0xd4cf16['nextSibling'];}return _0xd4cf16===_0x3945b9||_0xd4cf16===_0x945d87;}_0x945d87=_0x3647a2;}if(_0x945d87===this['editor']||_0x3945b9['parentNode']===this['editor']){let _0x2895a8=this['editor']['firstChild'];while(_0x2895a8&&(_0x2895a8['nodeType']===Node['TEXT_NODE']&&_0x2895a8['textContent']===''||_0x2895a8['nodeType']===Node['ELEMENT_NODE']&&_0x2895a8['tagName']==='BR')){_0x2895a8=_0x2895a8['nextSibling'];}return _0x2895a8===_0x3945b9;}return![];}['getClosestBlockElement'](_0x3f8f28){let _0x4393ff=_0x3f8f28;while(_0x4393ff&&_0x4393ff!==this['editor']){const _0x4d72eb=_0x4393ff['parentNode'];if(!_0x4d72eb)break;const _0x332dc3=_0x4d72eb['tagName'];if(_0x332dc3==='DIV'||_0x332dc3==='P'||_0x332dc3==='LI'||_0x4d72eb===this['editor'])return _0x4d72eb;_0x4393ff=_0x4d72eb;}return this['editor'];}['ensureListInsertionAnchor'](_0x49667f){const _0x111050=window['getSelection']();if(!_0x111050||_0x111050['rangeCount']===0x0)return null;const _0xd9128e=this['getClosestBlockElement'](_0x49667f);if(!_0xd9128e||_0xd9128e===this['editor'])return null;const _0x41be23=_0xd9128e['textContent']['replace'](/\u200B/g,'');if(_0x41be23!=='')return null;const _0x1fe269=document['createTextNode']('');_0xd9128e['appendChild'](_0x1fe269);const _0x20b1c4=document['createRange']();return _0x20b1c4['setStart'](_0x1fe269,0x1),_0x20b1c4['setEnd'](_0x1fe269,0x1),_0x111050['removeAllRanges'](),_0x111050['addRange'](_0x20b1c4),_0x1fe269;}['getContainingListItem'](){const _0x5bdef9=window['getSelection']();if(!_0x5bdef9||_0x5bdef9['rangeCount']===0x0)return null;let _0x3022e4=_0x5bdef9['anchorNode'];while(_0x3022e4&&_0x3022e4!==this['editor']){if(_0x3022e4['nodeType']===Node['ELEMENT_NODE']&&_0x3022e4['tagName']==='LI')return _0x3022e4;_0x3022e4=_0x3022e4['parentNode'];}return null;}['isEmptyListItem'](_0x42ee29){if(!_0x42ee29)return![];const _0x3d5e09=_0x42ee29['textContent']['replace'](/\u200B/g,'')['trim']();if(_0x3d5e09!=='')return![];const _0x2f4a1d=_0x42ee29['querySelector']('img');if(_0x2f4a1d)return![];const _0x53c1b2=_0x42ee29['querySelector']('ul,\x20ol');if(_0x53c1b2)return![];return!![];}['isCursorAtStartOfListItem'](_0x58f7ed){if(!_0x58f7ed)return![];const _0x45a431=window['getSelection']();if(!_0x45a431||_0x45a431['rangeCount']===0x0||!_0x45a431['isCollapsed'])return![];const _0x385c4e=_0x45a431['getRangeAt'](0x0),_0x53aaa7=_0x385c4e['startContainer'];if(_0x53aaa7!==_0x58f7ed&&!_0x58f7ed['contains'](_0x53aaa7))return![];const _0x37d1d0=_0x385c4e['cloneRange']();_0x37d1d0['setStart'](_0x58f7ed,0x0),_0x37d1d0['setEnd'](_0x53aaa7,_0x385c4e['startOffset']);const _0x2b986d=_0x37d1d0['toString']()['replace'](/\u200B/g,'')['replace'](/\u00A0/g,'\x20');return _0x2b986d['trim']()==='';}['indentListItem'](_0x1a86ca){const _0x30b7a1=_0x1a86ca['previousElementSibling'];if(!_0x30b7a1||_0x30b7a1['tagName']!=='LI')return;const _0x23f794=_0x1a86ca['parentNode'],_0x49fb4e=_0x23f794['tagName'];let _0x4888a7=_0x30b7a1['querySelector'](':scope\x20>\x20ul,\x20:scope\x20>\x20ol');!_0x4888a7&&(_0x4888a7=document['createElement'](_0x49fb4e),_0x30b7a1['appendChild'](_0x4888a7)),_0x4888a7['appendChild'](_0x1a86ca),this['placeCursorInListItem'](_0x1a86ca);}['outdentListItem'](_0x4b6977){const _0x172627=_0x4b6977['parentNode'];if(!_0x172627||_0x172627['tagName']!=='UL'&&_0x172627['tagName']!=='OL')return;const _0x4c8d43=_0x172627['parentNode'];if(_0x4c8d43&&_0x4c8d43['tagName']==='LI'){const _0x553b4e=_0x4c8d43['parentNode'];_0x553b4e['insertBefore'](_0x4b6977,_0x4c8d43['nextSibling']),_0x172627['children']['length']===0x0&&_0x172627['remove'](),this['placeCursorInListItem'](_0x4b6977);}else return;}['exitListOnEmptyBullet'](_0x24d26a){const _0x4823c4=_0x24d26a['parentNode'];if(!_0x4823c4)return;const _0x2b73f7=_0x4823c4['parentNode'];if(_0x2b73f7&&_0x2b73f7['tagName']==='LI'){this['outdentListItem'](_0x24d26a);return;}const _0x38ca46=_0x4823c4['parentNode'],_0x1290b6=document['createElement']('p');_0x1290b6['innerHTML']='<br>',_0x38ca46['insertBefore'](_0x1290b6,_0x4823c4['nextSibling']),_0x24d26a['remove']();_0x4823c4['children']['length']===0x0&&_0x4823c4['remove']();const _0x18b77f=window['getSelection'](),_0x5abde7=document['createRange']();_0x5abde7['setStart'](_0x1290b6,0x0),_0x5abde7['collapse'](!![]),_0x18b77f['removeAllRanges'](),_0x18b77f['addRange'](_0x5abde7);}['placeCursorInListItem'](_0x445af4){const _0x2d2f2e=window['getSelection'](),_0x542815=document['createRange'](),_0x20ed1b=document['createTreeWalker'](_0x445af4,NodeFilter['SHOW_TEXT'],null,![]),_0x523cea=_0x20ed1b['nextNode']();_0x523cea?_0x542815['setStart'](_0x523cea,0x0):_0x542815['setStart'](_0x445af4,0x0),_0x542815['collapse'](!![]),_0x2d2f2e['removeAllRanges'](),_0x2d2f2e['addRange'](_0x542815);}['handleLinkClick'](_0x5acfa3){const _0x32e2c8=this['isMac']?_0x5acfa3['metaKey']:_0x5acfa3['ctrlKey'];if(!_0x32e2c8)return;let _0x34ef0c=_0x5acfa3['target'];while(_0x34ef0c&&_0x34ef0c!==this['editor']){if(_0x34ef0c['tagName']==='A'){_0x5acfa3['preventDefault'](),_0x5acfa3['stopPropagation']();const _0x245137=_0x34ef0c['getAttribute']('href');if(!_0x245137)return;if(_0x245137['startsWith']('mention:'))return;const _0xa0bc8a=/^https?:\/\//i['test'](_0x245137);_0xa0bc8a?window['open'](_0x245137,'_blank','noopener,noreferrer'):window['location']['href']=_0x245137;return;}_0x34ef0c=_0x34ef0c['parentNode'];}}['handleLinkMouseEnter'](_0x25bfd5){const _0x246616=_0x25bfd5['target'];if(_0x246616['tagName']!=='A')return;const _0x25a466=_0x246616['getAttribute']('href')||'';if(_0x25a466['startsWith']('mention:'))return;this['linkTooltipTimeout']&&clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=setTimeout(()=>{this['showLinkTooltip'](_0x246616);},0x12c);}['handleLinkMouseLeave'](_0x518ac2){const _0x395091=_0x518ac2['target'];if(_0x395091['tagName']!=='A')return;this['linkTooltipTimeout']&&(clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=null),this['hideLinkTooltip']();}['showLinkTooltip'](_0x4dcd1d){!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 _0x27b098=_0x4dcd1d['getBoundingClientRect'](),_0x2dfcc0=this['linkTooltip']['getBoundingClientRect']();let _0x566372=_0x27b098['bottom']+0x4,_0x4b557c=_0x27b098['left']+_0x27b098['width']/0x2;_0x566372+0x1e>window['innerHeight']&&(_0x566372=_0x27b098['top']-0x1e);const _0x3df907=0x78;if(_0x4b557c-_0x3df907/0x2<0xa)_0x4b557c=_0x3df907/0x2+0xa;else _0x4b557c+_0x3df907/0x2>window['innerWidth']-0xa&&(_0x4b557c=window['innerWidth']-_0x3df907/0x2-0xa);this['linkTooltip']['style']['top']=_0x566372+'px',this['linkTooltip']['style']['left']=_0x4b557c+'px',this['linkTooltip']['style']['transform']='translateX(-50%)',this['linkTooltip']['classList']['add']('visible');}['hideLinkTooltip'](){this['linkTooltip']&&this['linkTooltip']['classList']['remove']('visible');}['handleKeydown'](_0x58ea04){if(this['mentionState']['active']){if(_0x58ea04['key']==='ArrowDown'){_0x58ea04['preventDefault'](),this['mentionNavigate'](0x1);return;}if(_0x58ea04['key']==='ArrowUp'){_0x58ea04['preventDefault'](),this['mentionNavigate'](-0x1);return;}if(_0x58ea04['key']==='Enter'||_0x58ea04['key']==='Tab'){if(this['mentionState']['filteredUsers']['length']>0x0){_0x58ea04['preventDefault'](),this['insertMention'](this['mentionState']['filteredUsers'][this['mentionState']['selectedIndex']]);return;}}if(_0x58ea04['key']==='Escape'){_0x58ea04['preventDefault'](),this['closeMentionDropdown']();return;}}if(_0x58ea04['key']==='Tab'&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x529827=this['getContainingListItem']();if(_0x529827&&this['isCursorAtStartOfListItem'](_0x529827)){_0x58ea04['preventDefault']();_0x58ea04['shiftKey']?this['outdentListItem'](_0x529827):this['indentListItem'](_0x529827);this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x58ea04['key']==='Enter'&&!_0x58ea04['shiftKey']&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x469f3a=this['getContainingListItem']();if(_0x469f3a&&this['isEmptyListItem'](_0x469f3a)){_0x58ea04['preventDefault'](),this['exitListOnEmptyBullet'](_0x469f3a),this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x58ea04['key']==='Enter'&&!_0x58ea04['shiftKey']&&this['isSelectionInTag']('PRE')){_0x58ea04['preventDefault']();const _0x32cfea=window['getSelection']();if(_0x32cfea['rangeCount']>0x0){const _0x4fea1e=_0x32cfea['getRangeAt'](0x0);_0x4fea1e['deleteContents']();const _0x10f488=document['createTextNode']('\x0a');_0x4fea1e['insertNode'](_0x10f488),_0x4fea1e['setStartAfter'](_0x10f488),_0x4fea1e['setEndAfter'](_0x10f488),_0x32cfea['removeAllRanges'](),_0x32cfea['addRange'](_0x4fea1e),this['handleInput']();}return;}(_0x58ea04['ctrlKey']||_0x58ea04['metaKey'])&&_0x58ea04['key']==='b'&&(_0x58ea04['preventDefault'](),document['execCommand']('bold',![],null));(_0x58ea04['ctrlKey']||_0x58ea04['metaKey'])&&_0x58ea04['key']==='i'&&(_0x58ea04['preventDefault'](),document['execCommand']('italic',![],null));if((_0x58ea04['ctrlKey']||_0x58ea04['metaKey'])&&_0x58ea04['key']==='k'){_0x58ea04['preventDefault'](),this['openLinkDialog']();return;}}['handlePaste'](_0x20ec15){const _0x4f2d05=_0x20ec15['clipboardData'];if(_0x4f2d05&&this['options']['onAddAttachments']){const _0x115eee=this['extractImageFilesFromClipboard'](_0x4f2d05);if(_0x115eee['length']>0x0){_0x20ec15['preventDefault'](),this['addAndInsertImages'](_0x115eee);return;}}_0x20ec15['preventDefault']();const _0x1c87a5=_0x20ec15['clipboardData']['getData']('text/html');if(_0x1c87a5&&_0x1c87a5['trim']()){const _0x46709c=this['convertPastedHtmlToMarkdown'](_0x1c87a5);if(_0x46709c&&_0x46709c['trim']()){this['insertMarkdownAsRichText'](_0x46709c);return;}}const _0x2dd444=_0x20ec15['clipboardData']['getData']('text/plain');document['execCommand']('insertText',![],_0x2dd444);}['convertPastedHtmlToMarkdown'](_0x3a8c60){const _0x1e2eab=document['createElement']('div');_0x1e2eab['innerHTML']=_0x3a8c60;const _0x198ee2=_0x1e2eab['querySelectorAll']('style,\x20script,\x20meta,\x20link,\x20head,\x20title');_0x198ee2['forEach'](_0x4bcadc=>_0x4bcadc['remove']());const _0x221961=_0x1e2eab['querySelectorAll']('*');_0x221961['forEach'](_0x1dbac5=>{const _0x92d5b0=Array['from'](_0x1dbac5['attributes']);_0x92d5b0['forEach'](_0x58c516=>{_0x58c516['name']['startsWith']('data-')&&_0x58c516['name']!=='data-attachment-name'&&_0x58c516['name']!=='data-mention-user-id'&&_0x1dbac5['removeAttribute'](_0x58c516['name']);});}),_0x1e2eab['querySelectorAll']('font[color]')['forEach'](_0x5406f6=>{_0x5406f6['replaceWith'](..._0x5406f6['childNodes']);}),_0x1e2eab['querySelectorAll']('span')['forEach'](_0xc12bf7=>{_0xc12bf7['style']['color']&&_0xc12bf7['style']['removeProperty']('color'),!_0xc12bf7['getAttribute']('style')&&!_0xc12bf7['getAttribute']('data-mention-user-id')&&!_0xc12bf7['getAttribute']('data-attachment-name')&&_0xc12bf7['replaceWith'](..._0xc12bf7['childNodes']);});try{return this['turndownService']['turndown'](_0x1e2eab['innerHTML']);}catch(_0x1a9a67){return console['warn']('Failed\x20to\x20convert\x20HTML\x20to\x20markdown:',_0x1a9a67),null;}}['insertMarkdownAsRichText'](_0x19a4f9){const _0x5283aa=window['marked'];if(!_0x5283aa){document['execCommand']('insertText',![],_0x19a4f9);return;}try{const _0x5c7b7d=this['preprocessColorSyntax'](_0x19a4f9),_0x24ee63=_0x5283aa['parse'](_0x5c7b7d),_0x2e36b0=document['createElement']('div');_0x2e36b0['innerHTML']=_0x24ee63,this['processHtmlForEditor'](_0x2e36b0),document['execCommand']('insertHTML',![],_0x2e36b0['innerHTML']);}catch(_0x442fb9){console['warn']('Failed\x20to\x20convert\x20markdown\x20to\x20HTML:',_0x442fb9),document['execCommand']('insertText',![],_0x19a4f9);}}['processHtmlForEditor'](_0x5c3cf5){const _0x108368=_0x5c3cf5['querySelectorAll']('pre');_0x108368['forEach'](_0x311dc2=>{const _0x9f6717=_0x311dc2['querySelector']('code');if(_0x9f6717){const _0x2ac737=Array['from'](_0x9f6717['classList'])['find'](_0x436b7f=>_0x436b7f['startsWith']('language-')),_0xfa3ba0=_0x2ac737?_0x2ac737['replace']('language-',''):'',_0x31f104=document['createElement']('pre');_0xfa3ba0&&_0x31f104['setAttribute']('data-language',_0xfa3ba0),_0x31f104['textContent']=_0x9f6717['textContent'],_0x311dc2['replaceWith'](_0x31f104);}});const _0x4d4ef4=_0x5c3cf5['querySelectorAll']('a');_0x4d4ef4['forEach'](_0x40b86a=>{_0x40b86a['setAttribute']('target','_blank'),_0x40b86a['setAttribute']('rel','noopener\x20noreferrer');});}['handleDragStart'](_0x39c45c){const _0x54eaee=_0x39c45c['target'];if(!_0x54eaee||_0x54eaee['tagName']!=='IMG')return;if(!_0x39c45c['dataTransfer'])return;const _0x1f7ad6=_0x54eaee['getAttribute']('data-attachment-name')||'';try{_0x39c45c['dataTransfer']['setData'](INTERNAL_DRAG_MIME,_0x1f7ad6||'1');}catch{}_0x39c45c['dataTransfer']['effectAllowed']='move';}['handleDragOver'](_0x37ddc4){if(!this['isExternalFileTransfer'](_0x37ddc4['dataTransfer']))return;_0x37ddc4['preventDefault'](),_0x37ddc4['dataTransfer']['dropEffect']='copy';}['handleDrop'](_0x158647){if(!this['isExternalFileTransfer'](_0x158647['dataTransfer']))return;const _0x148e51=_0x158647['dataTransfer'],_0x14a805=Array['from'](_0x148e51['files']||[])['filter'](_0x19042f=>_0x19042f&&typeof _0x19042f['type']==='string'),_0x2de1d8=_0x14a805['filter'](_0x47103a=>_0x47103a['type']['startsWith']('image/'));if(_0x2de1d8['length']===0x0)return;_0x158647['preventDefault'](),_0x158647['stopPropagation'](),this['cleanupParentDragState'](),this['moveSelectionToDropPoint'](_0x158647),this['addAndInsertImages'](_0x2de1d8);}['cleanupParentDragState'](){let _0xcbff87=this['editor']['parentElement'];while(_0xcbff87){_0xcbff87['classList']&&_0xcbff87['classList']['contains']('drag-over')&&_0xcbff87['classList']['remove']('drag-over'),_0xcbff87=_0xcbff87['parentElement'];}}['isExternalFileTransfer'](_0x9be970){if(!_0x9be970)return![];const _0x3b714c=Array['from'](_0x9be970['types']||[]);if(!_0x3b714c['includes']('Files'))return![];if(_0x3b714c['includes'](INTERNAL_DRAG_MIME))return![];if(_0x9be970['files']&&_0x9be970['files']['length']>0x0)return!![];if(_0x9be970['items']&&Array['from'](_0x9be970['items'])['some'](_0x1326e7=>_0x1326e7['kind']==='file'))return!![];return![];}['moveSelectionToDropPoint'](_0x47fc93){const _0x261c38=_0x47fc93['clientX'],_0x4df8a7=_0x47fc93['clientY'];let _0x4233db=null;if(document['caretRangeFromPoint'])_0x4233db=document['caretRangeFromPoint'](_0x261c38,_0x4df8a7);else{if(document['caretPositionFromPoint']){const _0x862173=document['caretPositionFromPoint'](_0x261c38,_0x4df8a7);_0x862173&&(_0x4233db=document['createRange'](),_0x4233db['setStart'](_0x862173['offsetNode'],_0x862173['offset']),_0x4233db['collapse'](!![]));}}if(_0x4233db){const _0x4e0fd5=window['getSelection']();_0x4e0fd5['removeAllRanges'](),_0x4e0fd5['addRange'](_0x4233db);}}['extractImageFilesFromClipboard'](_0x2abb72){const _0x37145b=Array['from'](_0x2abb72['items']||[]),_0xfbfcff=[];for(const _0x3793aa of _0x37145b){if(_0x3793aa['kind']==='file'&&_0x3793aa['type']&&_0x3793aa['type']['startsWith']('image/')){const _0x4bfd37=_0x3793aa['getAsFile']();if(_0x4bfd37)_0xfbfcff['push'](_0x4bfd37);}}return _0xfbfcff;}['addAndInsertImages'](_0x57c12b){const _0x5d4610=_0x57c12b['map'](_0x26f0d5=>this['prepareAttachmentFile'](_0x26f0d5))['filter'](Boolean);if(_0x5d4610['length']===0x0)return;const _0x2c584a=_0x5d4610['map'](_0x30b890=>_0x30b890['file']);try{this['options']['onAddAttachments'](_0x2c584a);}catch(_0x5a66bb){console['error']('Failed\x20to\x20add\x20attachments:',_0x5a66bb);}for(const {name:_0x36ce11,objectUrl:_0x52c832}of _0x5d4610){this['insertAttachmentImage'](_0x36ce11,_0x52c832);}this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));}['prepareAttachmentFile'](_0x231d7e){const _0x30c69f=this['sanitizeFilename'](_0x231d7e['name']||this['defaultImageName'](_0x231d7e['type']));if(!_0x30c69f)return null;const _0x2c662a=this['getUniqueAttachmentName'](_0x30c69f),_0x574f5c=_0x2c662a===_0x231d7e['name']?_0x231d7e:new File([_0x231d7e],_0x2c662a,{'type':_0x231d7e['type'],'lastModified':_0x231d7e['lastModified']}),_0x365037=URL['createObjectURL'](_0x574f5c);return this['attachmentObjectUrls']['set'](_0x2c662a,_0x365037),{'name':_0x2c662a,'file':_0x574f5c,'objectUrl':_0x365037};}['getUniqueAttachmentName'](_0x1bf241){const _0x3fa533=_0x41a9a7=>{if(this['attachmentObjectUrls']['has'](_0x41a9a7))return!![];if(this['options']['isAttachmentNameTaken'])try{return Boolean(this['options']['isAttachmentNameTaken'](_0x41a9a7));}catch{return![];}return![];};if(!_0x3fa533(_0x1bf241))return _0x1bf241;const {stem:_0x35cb63,ext:_0x1451c6}=this['splitFilename'](_0x1bf241);for(let _0x2e9735=0x2;_0x2e9735<0x3e8;_0x2e9735++){const _0x580fe8=_0x35cb63+'-'+_0x2e9735+_0x1451c6;if(!_0x3fa533(_0x580fe8))return _0x580fe8;}return _0x35cb63+'-'+Date['now']()+_0x1451c6;}['splitFilename'](_0x36239c){const _0x20dfba=_0x36239c['lastIndexOf']('.');if(_0x20dfba<=0x0||_0x20dfba===_0x36239c['length']-0x1)return{'stem':_0x36239c,'ext':''};return{'stem':_0x36239c['slice'](0x0,_0x20dfba),'ext':_0x36239c['slice'](_0x20dfba)};}['sanitizeFilename'](_0x5644da){const _0xbc20d9=String(_0x5644da||'')['split']('/')['pop']()['split']('\x5c')['pop']();return _0xbc20d9['replace'](/[\u0000-\u001F\u007F]/g,'')['trim']();}['defaultImageName'](_0x2d77c4){const _0xf5a7e1=this['extensionForMime'](_0x2d77c4);return'pasted-image-'+Date['now']()+_0xf5a7e1;}['extensionForMime'](_0x1db80a){switch(_0x1db80a){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'](_0x253503,_0xe18efd){const _0x3b954b=document['createElement']('img');_0x3b954b['src']=_0xe18efd,_0x3b954b['alt']=_0x253503,_0x3b954b['setAttribute']('data-attachment-name',_0x253503),_0x3b954b['draggable']=!![];const _0x5c4fd0=window['getSelection']();let _0x12390c=![];if(_0x5c4fd0&&_0x5c4fd0['rangeCount']>0x0){const _0x3c4e38=_0x5c4fd0['getRangeAt'](0x0);_0x12390c=this['editor']['contains'](_0x3c4e38['commonAncestorContainer'])||this['editor']===_0x3c4e38['commonAncestorContainer'];}if(!_0x12390c){this['editor']['appendChild'](_0x3b954b);const _0x5d90c2=document['createRange']();_0x5d90c2['setStartAfter'](_0x3b954b),_0x5d90c2['collapse'](!![]),_0x5c4fd0['removeAllRanges'](),_0x5c4fd0['addRange'](_0x5d90c2);return;}const _0x1691c4=_0x5c4fd0['getRangeAt'](0x0);_0x1691c4['deleteContents'](),_0x1691c4['insertNode'](_0x3b954b),_0x1691c4['setStartAfter'](_0x3b954b),_0x1691c4['collapse'](!![]),_0x5c4fd0['removeAllRanges'](),_0x5c4fd0['addRange'](_0x1691c4);}['toggleInlineCode'](){const _0x4da1e0=window['getSelection']();if(_0x4da1e0['rangeCount']===0x0)return;const _0x19447b=_0x4da1e0['getRangeAt'](0x0),_0x22a88e=_0x19447b['toString']();if(_0x22a88e){const _0x30042c=document['createElement']('code');_0x30042c['textContent']=_0x22a88e,_0x19447b['deleteContents'](),_0x19447b['insertNode'](_0x30042c),_0x19447b['setStartAfter'](_0x30042c),_0x19447b['setEndAfter'](_0x30042c),_0x4da1e0['removeAllRanges'](),_0x4da1e0['addRange'](_0x19447b);}}['insertCodeBlock'](){const _0x327b2c=window['getSelection']();if(_0x327b2c['rangeCount']===0x0)return;const _0x4f1366=_0x327b2c['getRangeAt'](0x0),_0x59b1d8=_0x4f1366['toString'](),_0x14455c=document['createElement']('pre'),_0x591681=document['createElement']('code');_0x591681['textContent']=_0x59b1d8||'\x0a',_0x14455c['appendChild'](_0x591681),_0x4f1366['deleteContents'](),_0x4f1366['insertNode'](_0x14455c);const _0xdea27e=document['createElement']('p');_0xdea27e['innerHTML']='<br>',_0x14455c['parentNode']['insertBefore'](_0xdea27e,_0x14455c['nextSibling']);const _0x586ae3=document['createRange']();!_0x59b1d8?(_0x586ae3['setStart'](_0x591681['firstChild'],0x0),_0x586ae3['setEnd'](_0x591681['firstChild'],0x0)):(_0x586ae3['selectNodeContents'](_0x591681),_0x586ae3['collapse'](![])),_0x327b2c['removeAllRanges'](),_0x327b2c['addRange'](_0x586ae3);}['updatePlaceholder'](){const _0x35a1a9=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');_0x35a1a9?this['editor']['classList']['remove']('empty'):this['editor']['classList']['add']('empty');}['setMarkdown'](_0x1dcfa7){if(this['_sourceMode']&&this['_monacoEditor']){this['_monacoEditor']['setValue'](_0x1dcfa7||'');return;}if(!_0x1dcfa7||!_0x1dcfa7['trim']()){this['editor']['innerHTML']='',this['updatePlaceholder']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']='':this['element']['textContent']='';return;}const _0x334dd2=this['preprocessColorSyntax'](_0x1dcfa7),_0x38eb9a=window['marked']['parse'](_0x334dd2);this['editor']['innerHTML']=_0x38eb9a,this['rewriteAttachmentImages'](),this['rewriteMentionLinks'](),this['addLinkHints'](),this['updatePlaceholder'](),this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x1dcfa7:this['element']['textContent']=_0x1dcfa7;}['rewriteAttachmentImages'](){const _0x28ca32=this['editor']['querySelectorAll']('img');_0x28ca32['forEach'](_0x547197=>{const _0x1f02a2=_0x547197['getAttribute']('data-attachment-name'),_0x1137bb=_0x547197['getAttribute']('src')||'',_0x5e7a73=this['parseAttachmentReference'](_0x1137bb)||this['parseTaskAttachmentUrl'](_0x1137bb),_0x190ffa=_0x1f02a2||(_0x5e7a73?_0x5e7a73['name']:null);if(!_0x190ffa)return;_0x547197['setAttribute']('data-attachment-name',_0x190ffa);const _0x4caa6e=this['attachmentObjectUrls']['get'](_0x190ffa)||(this['options']['resolveAttachmentUrl']?this['options']['resolveAttachmentUrl'](_0x190ffa):null);_0x4caa6e&&(_0x547197['src']=_0x4caa6e);});}['rewriteMentionLinks'](){const _0x5386b3=this['editor']['querySelectorAll']('a[href^=\x22mention:\x22]');_0x5386b3['forEach'](_0x9df561=>{const _0x116ad1=_0x9df561['getAttribute']('href')||'',_0x5da0f8=_0x116ad1['replace']('mention:',''),_0x4f88e5=_0x9df561['textContent']||'',_0x4db9b5=document['createElement']('span');_0x4db9b5['className']='mention',_0x4db9b5['setAttribute']('data-mention-user-id',_0x5da0f8),_0x4db9b5['setAttribute']('contenteditable','false'),_0x4db9b5['textContent']='@'+_0x4f88e5;const _0x1e1084=_0x9df561['previousSibling'];_0x1e1084&&_0x1e1084['nodeType']===Node['TEXT_NODE']&&_0x1e1084['textContent']['endsWith']('@')&&(_0x1e1084['textContent']=_0x1e1084['textContent']['slice'](0x0,-0x1)),_0x9df561['parentNode']['replaceChild'](_0x4db9b5,_0x9df561);});}['addLinkHints'](){if(!this['options']['editable'])return;const _0xad1e46=this['editor']['querySelectorAll']('a');_0xad1e46['forEach'](_0x5c4016=>{const _0x3c017a=_0x5c4016['getAttribute']('href')||'';if(_0x3c017a['startsWith']('mention:'))return;const _0x5ddf76=_0x5c4016['textContent']||_0x3c017a,_0x3abe92=_0x5ddf76+'\x20('+(this['linkHintText']||'Ctrl+click\x20to\x20follow')+')';_0x5c4016['setAttribute']('aria-label',_0x3abe92);});}['preprocessColorSyntax'](_0x5e7a23){if(!_0x5e7a23)return _0x5e7a23;const _0x5f185d=_0x1005c2=>{return String(_0x1005c2)['replace'](/\{color:(#[0-9A-Fa-f]{3,6})\}([\s\S]*?)\{\/color\}/g,(_0x2ff93c,_0x1d389f,_0x103053)=>{const _0x117549=_0x5f185d(_0x103053);return'<span\x20style=\x22color:\x20'+_0x1d389f+'\x22>'+_0x117549+'</span>';});};return _0x5f185d(_0x5e7a23);}['parseAttachmentReference'](_0x2bd65e){if(!_0x2bd65e||typeof _0x2bd65e!=='string')return null;if(!_0x2bd65e['startsWith'](ATTACHMENT_SCHEME)&&!_0x2bd65e['startsWith'](ATTACHMENT_SCHEME+'//'))return null;const _0x97d560=_0x2bd65e['replace'](ATTACHMENT_SCHEME+'//','')['replace'](ATTACHMENT_SCHEME,'');if(!_0x97d560)return null;try{return{'name':decodeURIComponent(_0x97d560)};}catch{return{'name':_0x97d560};}}['parseTaskAttachmentUrl'](_0x25df98){if(!_0x25df98||typeof _0x25df98!=='string')return null;const _0x3edb99=_0x25df98['match'](/\/tasks\/[^/]+\/attachments\/([^?#]+)/);if(!_0x3edb99)return null;const _0x22b5e8=_0x3edb99[0x1];try{return{'name':decodeURIComponent(_0x22b5e8)};}catch{return{'name':_0x22b5e8};}}['updateAttachmentFile'](_0x6c4547,_0xd5821d){const _0x555087=this['attachmentObjectUrls']['get'](_0x6c4547);if(_0x555087)try{URL['revokeObjectURL'](_0x555087);}catch{}const _0x485926=URL['createObjectURL'](_0xd5821d);this['attachmentObjectUrls']['set'](_0x6c4547,_0x485926);const _0x1d06ef=this['editor']['querySelector']('img[data-attachment-name=\x22'+CSS['escape'](_0x6c4547)+'\x22]');return _0x1d06ef&&(_0x1d06ef['src']=_0x485926),_0x485926;}['getMarkdown'](){if(this['_sourceMode']&&this['_monacoEditor'])return this['_monacoEditor']['getValue']();const _0x7d9010=this['editor']['innerHTML'];if(!_0x7d9010||_0x7d9010['trim']()===''||_0x7d9010==='<br>')return'';return this['turndownService']['turndown'](_0x7d9010)['replace'](/\u200B/g,'');}['getValue'](){return this['getMarkdown']();}['setValue'](_0x1a9489){this['setMarkdown'](_0x1a9489);}['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'](_0x4f244c){this['editor']['contentEditable']=_0x4f244c,this['options']['editable']=_0x4f244c,this['_monacoEditor']&&this['_monacoEditor']['updateOptions']({'readOnly':!_0x4f244c});}['getMode'](){return this['_sourceMode']?'source':'visual';}['setMode'](_0x39387f){_0x39387f==='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 _0x208635=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':_0x208635,'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(_0x166abf){console['error']('Failed\x20to\x20load\x20Monaco\x20for\x20source\x20mode:',_0x166abf),this['editor']['style']['display']='',this['_sourceContainer']['style']['display']='none',this['_monacoLoading']=![];return;}this['_monacoLoading']=![];}else this['_monacoEditor']['setValue'](_0x208635);this['_sourceMode']=!![],this['_updateSourceToggleUI'](),this['_monacoEditor']['focus'](),this['_monacoEditor']['layout']();}['switchToVisual'](){if(!this['_sourceMode']||this['_destroyed'])return;let _0x146e0a='';this['_monacoEditor']&&(_0x146e0a=this['_monacoEditor']['getValue']()),this['editor']['style']['display']='',this['_sourceContainer']&&(this['_sourceContainer']['style']['display']='none'),this['_sourceMode']=![],this['setMarkdown'](_0x146e0a),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'](_0xf0dc82){if(!this['toolbarButtons'])return;for(const [_0x512ad1,_0x3a4d19]of Object['entries'](this['toolbarButtons'])){_0x3a4d19['button']['disabled']=!_0xf0dc82,_0x3a4d19['button']['style']['opacity']=_0xf0dc82?'':'0.35',_0x3a4d19['button']['style']['pointerEvents']=_0xf0dc82?'':'none';}}async['_ensureMonacoLoaded'](){if(window['MarkdownFileEditor']&&window['MarkdownFileEditor']['ensureMonacoLoaded'])return window['MarkdownFileEditor']['ensureMonacoLoaded']();if(typeof monaco!=='undefined')return;return new Promise((_0x17b434,_0x2e9c6c)=>{const _0x22b3ba=document['querySelector']('script[src*=\x22monaco-editor\x22][src*=\x22loader.js\x22]');if(_0x22b3ba){const _0x26e2f2=setInterval(()=>{typeof monaco!=='undefined'&&(clearInterval(_0x26e2f2),_0x17b434());},0x32);setTimeout(()=>{clearInterval(_0x26e2f2),_0x2e9c6c(new Error('Monaco\x20loading\x20timeout'));},0x2710);return;}const _0x1f4141=document['createElement']('script');_0x1f4141['src']='/vendor/monaco-editor/0.45.0/min/vs/loader.js',_0x1f4141['onload']=()=>{require['config']({'paths':{'vs':'/vendor/monaco-editor/0.45.0/min/vs'}}),require(['vs/editor/editor.main'],()=>_0x17b434());},_0x1f4141['onerror']=()=>_0x2e9c6c(new Error('Failed\x20to\x20load\x20Monaco\x20Editor')),document['head']['appendChild'](_0x1f4141);});}['_getMonacoTheme'](){const _0x1c9811=document['documentElement']['getAttribute']('data-theme')==='dark';return _0x1c9811?'vs-dark':'vs';}['handleMentionInput'](_0x85b9d5){if(!this['options']['fetchUsers'])return;const _0x19c302=window['getSelection']();if(!_0x19c302||_0x19c302['rangeCount']===0x0){this['closeMentionDropdown']();return;}const _0x567da6=_0x19c302['getRangeAt'](0x0),_0x415ac0=_0x567da6['startContainer'];if(_0x415ac0['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x2512dc=_0x415ac0['textContent']||'',_0x394e2b=_0x567da6['startOffset'],_0x5b59f7=_0x2512dc['slice'](0x0,_0x394e2b),_0x3802db=_0x5b59f7['lastIndexOf']('@');if(_0x3802db===-0x1){this['closeMentionDropdown']();return;}const _0x44e0da=_0x3802db>0x0?_0x5b59f7[_0x3802db-0x1]:'\x20';if(!/\s/['test'](_0x44e0da)&&_0x3802db!==0x0){this['closeMentionDropdown']();return;}const _0x40f6d9=_0x5b59f7['slice'](_0x3802db+0x1);if(/[\s\n]/['test'](_0x40f6d9)){this['closeMentionDropdown']();return;}this['mentionState']['active']=!![],this['mentionState']['query']=_0x40f6d9['toLowerCase'](),this['mentionState']['startOffset']=_0x3802db,this['mentionState']['startNode']=_0x415ac0,this['showMentionDropdown']();}async['showMentionDropdown'](){if(!this['usersCache'])try{const _0x3e6e5d=await this['options']['fetchUsers']();this['usersCache']=_0x3e6e5d['users']||_0x3e6e5d||[];}catch(_0x1623d1){console['error']('Failed\x20to\x20fetch\x20users\x20for\x20@mention:',_0x1623d1),this['closeMentionDropdown']();return;}this['mentionState']['users']=this['usersCache'];const _0x13e474=this['mentionState']['query'];this['mentionState']['filteredUsers']=this['mentionState']['users']['filter'](_0x243a17=>{const _0x4bc08a=(_0x243a17['name']||'')['toLowerCase'](),_0x3d7cbd=(_0x243a17['username']||'')['toLowerCase']();return _0x4bc08a['includes'](_0x13e474)||_0x3d7cbd['includes'](_0x13e474);})['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']=_0xefe3f8=>{!this['mentionDropdown']['contains'](_0xefe3f8['target'])&&!this['editor']['contains'](_0xefe3f8['target'])&&this['closeMentionDropdown']();},document['addEventListener']('click',this['mentionClickOutsideHandler']),this['mentionScrollHandler']=()=>{this['mentionState']['active']&&this['positionMentionDropdown']();},window['addEventListener']('scroll',this['mentionScrollHandler'],!![]));const _0x12ff39=this['mentionState']['filteredUsers'];this['mentionDropdown']['innerHTML']=_0x12ff39['map']((_0x7699b7,_0x127cf0)=>{const _0x41ed44=_0x127cf0===this['mentionState']['selectedIndex'],_0x4e5b56=_0x7699b7['name']||_0x7699b7['username']||'Unknown',_0x5d5ee9=_0x7699b7['username']||'',_0x5860a0=this['getInitials'](_0x4e5b56),_0x4f6757=this['getAvatarColorIndex'](_0x5d5ee9||_0x7699b7['id']||_0x4e5b56);return'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22mention-option\x20'+(_0x41ed44?'mention-option-selected':'')+'\x22\x20data-index=\x22'+_0x127cf0+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-avatar\x20avatar-color-'+_0x4f6757+'\x22>'+this['escapeHtmlForMention'](_0x5860a0)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-option-name\x22>'+this['escapeHtmlForMention'](_0x4e5b56)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x5d5ee9?'<span\x20class=\x22mention-option-username\x22>@'+this['escapeHtmlForMention'](_0x5d5ee9)+'</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'](_0x46dcbc=>{_0x46dcbc['addEventListener']('mousedown',_0x318d17=>{_0x318d17['preventDefault']();const _0xfce786=parseInt(_0x46dcbc['dataset']['index'],0xa);this['insertMention'](this['mentionState']['filteredUsers'][_0xfce786]);}),_0x46dcbc['addEventListener']('mouseenter',()=>{const _0x1b22c2=parseInt(_0x46dcbc['dataset']['index'],0xa);this['mentionState']['selectedIndex']=_0x1b22c2,this['updateMentionSelection']();});}),this['mentionDropdown']['style']['display']='block';}['positionMentionDropdown'](){if(!this['mentionDropdown'])return;const _0x370251=window['getSelection']();if(!_0x370251||_0x370251['rangeCount']===0x0)return;const _0x16d764=_0x370251['getRangeAt'](0x0),_0x21f20a=_0x16d764['getBoundingClientRect'](),_0x3f936f=0x104,_0x1dd4dc=Math['min'](0xf0,this['mentionState']['filteredUsers']['length']*0x24+0x8),_0x384f57=window['innerWidth'],_0x84a8b=window['innerHeight'],_0x55c64f=_0x84a8b-_0x21f20a['bottom'],_0x5eae40=_0x21f20a['top'],_0x575402=_0x55c64f<_0x1dd4dc+0xa&&_0x5eae40>_0x55c64f;let _0x1cf50b,_0x3be77a;_0x575402?_0x1cf50b=_0x21f20a['top']+window['scrollY']-_0x1dd4dc-0x4:_0x1cf50b=_0x21f20a['bottom']+window['scrollY']+0x4,_0x3be77a=_0x21f20a['left']+window['scrollX'],_0x3be77a+_0x3f936f>_0x384f57-0xa&&(_0x3be77a=_0x384f57-_0x3f936f-0xa),_0x3be77a<0xa&&(_0x3be77a=0xa),this['mentionDropdown']['style']['position']='absolute',this['mentionDropdown']['style']['top']=_0x1cf50b+'px',this['mentionDropdown']['style']['left']=_0x3be77a+'px';}['mentionNavigate'](_0x3a9899){const _0x89ebf6=this['mentionState']['filteredUsers']['length'];if(_0x89ebf6===0x0)return;this['mentionState']['selectedIndex']=(this['mentionState']['selectedIndex']+_0x3a9899+_0x89ebf6)%_0x89ebf6,this['updateMentionSelection']();}['updateMentionSelection'](){if(!this['mentionDropdown'])return;const _0xe812a4=this['mentionDropdown']['querySelectorAll']('.mention-option');_0xe812a4['forEach']((_0x8fe267,_0x25894c)=>{_0x25894c===this['mentionState']['selectedIndex']?(_0x8fe267['classList']['add']('mention-option-selected'),_0x8fe267['scrollIntoView']({'block':'nearest'})):_0x8fe267['classList']['remove']('mention-option-selected');});}['insertMention'](_0x394840){if(!_0x394840)return;const _0x3a187a=window['getSelection']();if(!_0x3a187a||_0x3a187a['rangeCount']===0x0)return;const _0x46011e=_0x3a187a['getRangeAt'](0x0),_0x124267=this['mentionState']['startNode'];if(!_0x124267||_0x124267['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x219bdf=_0x124267['textContent']||'',_0x4f9393=this['mentionState']['startOffset'],_0x2d556d=_0x46011e['startOffset'],_0x436183=_0x219bdf['slice'](0x0,_0x4f9393),_0x5750a4=_0x219bdf['slice'](_0x2d556d),_0x2bc8ae=document['createElement']('span');_0x2bc8ae['className']='mention',_0x2bc8ae['setAttribute']('data-mention-user-id',_0x394840['id']),_0x2bc8ae['setAttribute']('contenteditable','false'),_0x2bc8ae['textContent']='@'+(_0x394840['name']||_0x394840['username']);const _0x112368=document['createTextNode'](_0x436183),_0x5a757a=document['createTextNode']('\x20'+_0x5750a4),_0x16f6ea=_0x124267['parentNode'];_0x16f6ea['insertBefore'](_0x112368,_0x124267),_0x16f6ea['insertBefore'](_0x2bc8ae,_0x124267),_0x16f6ea['insertBefore'](_0x5a757a,_0x124267),_0x16f6ea['removeChild'](_0x124267);const _0x567dbe=document['createRange']();_0x567dbe['setStart'](_0x5a757a,0x1),_0x567dbe['collapse'](!![]),_0x3a187a['removeAllRanges'](),_0x3a187a['addRange'](_0x567dbe),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'](_0x504f12){const _0x3ec5cd=document['createElement']('div');return _0x3ec5cd['textContent']=_0x504f12,_0x3ec5cd['innerHTML'];}['getInitials'](_0xc0898f){if(!_0xc0898f)return'?';const _0x1c3b16=_0xc0898f['trim']()['split'](/\s+/);if(_0x1c3b16['length']>=0x2)return(_0x1c3b16[0x0][0x0]+_0x1c3b16[_0x1c3b16['length']-0x1][0x0])['toUpperCase']();return _0xc0898f['substring'](0x0,0x2)['toUpperCase']();}['getAvatarColorIndex'](_0x14ba8f){if(!_0x14ba8f)return 0x6;let _0x157289=0x0;for(let _0x4c72a1=0x0;_0x4c72a1<_0x14ba8f['length'];_0x4c72a1++){_0x157289=_0x14ba8f['charCodeAt'](_0x4c72a1)+((_0x157289<<0x5)-_0x157289);}return Math['abs'](_0x157289)%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 _0x12b0f3 of this['attachmentObjectUrls']['values']()){try{URL['revokeObjectURL'](_0x12b0f3);}catch{}}this['attachmentObjectUrls']['clear'](),this['container']?this['container']['remove']():this['editor']['remove'](),this['element']['style']['display']='';}}typeof window!=='undefined'&&(window['MarkdownEditor']=MarkdownEditor);
|