@profoundlogic/coderflow-server 0.5.4 → 0.5.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/coder-server.js +1 -1
- package/dist/config.js +1 -1
- package/dist/lib/agent-keepalive.js +1 -1
- package/dist/lib/agent-models.js +1 -1
- package/dist/lib/api-keys.js +1 -1
- package/dist/lib/apiKeys.js +1 -1
- package/dist/lib/app-server-ports.js +1 -1
- package/dist/lib/auto-judge.js +1 -1
- package/dist/lib/automation-service.js +1 -1
- package/dist/lib/basic-auth.js +1 -1
- package/dist/lib/bindings.js +1 -1
- package/dist/lib/build-history.js +1 -1
- package/dist/lib/build-output-service.js +1 -1
- package/dist/lib/build-scheduler.js +1 -1
- package/dist/lib/build-service.js +1 -1
- package/dist/lib/ca-certificates.js +1 -1
- package/dist/lib/claude-oauth-refresh.js +1 -1
- package/dist/lib/cli/build.js +1 -1
- package/dist/lib/cli/cleanup-users.js +1 -1
- package/dist/lib/cli/config-command.js +1 -1
- package/dist/lib/cli/config.js +1 -1
- package/dist/lib/cli/create-user.js +1 -1
- package/dist/lib/cli/grant-admin.js +1 -1
- package/dist/lib/cli/init.js +1 -1
- package/dist/lib/cli/jira.js +1 -1
- package/dist/lib/cli/license.js +1 -1
- package/dist/lib/cli/list-roles.js +1 -1
- package/dist/lib/cli/list-users.js +1 -1
- package/dist/lib/cli/server-manager.js +1 -1
- package/dist/lib/cli/set-password.js +1 -1
- package/dist/lib/config-migration.js +1 -1
- package/dist/lib/container-credential-sync.js +1 -1
- package/dist/lib/container-tokens.js +1 -1
- package/dist/lib/data-dir.js +1 -1
- package/dist/lib/deployment-history.js +1 -1
- package/dist/lib/deployment-service.js +1 -1
- package/dist/lib/docker-utils.js +1 -1
- package/dist/lib/email.js +1 -1
- package/dist/lib/emailTemplates.js +1 -1
- package/dist/lib/entitlement.js +1 -1
- package/dist/lib/external-connections.js +1 -1
- package/dist/lib/fetch-utils.js +1 -1
- package/dist/lib/git-commit-details-route.js +1 -1
- package/dist/lib/git-history-diff-guardrails.js +1 -1
- package/dist/lib/git-provider-service.js +1 -1
- package/dist/lib/git-provider-setup/github-setup-handler.js +1 -1
- package/dist/lib/git-provider-setup/index.js +1 -1
- package/dist/lib/git-provider-setup/setup-factory.js +1 -1
- package/dist/lib/git-provider-setup/setup-interface.js +1 -1
- package/dist/lib/git-providers/azure-devops-provider.js +1 -1
- package/dist/lib/git-providers/github-app-provider.js +1 -1
- package/dist/lib/git-providers/index.js +1 -1
- package/dist/lib/git-providers/provider-factory.js +1 -1
- package/dist/lib/git-providers/provider-interface.js +1 -1
- package/dist/lib/github-urls.js +1 -1
- package/dist/lib/group-objective-linking.js +1 -1
- package/dist/lib/ibmi-sync.js +1 -1
- package/dist/lib/jira-client.js +1 -1
- package/dist/lib/judge-blinding.js +1 -1
- package/dist/lib/logger.js +1 -1
- package/dist/lib/migration-to-scoped-rbac.js +1 -1
- package/dist/lib/model-fetcher.js +1 -1
- package/dist/lib/notifications.js +1 -1
- package/dist/lib/objective-context.js +1 -1
- package/dist/lib/oidc-auth.js +1 -1
- package/dist/lib/oidc-device-flow.js +1 -1
- package/dist/lib/passwordTokens.js +1 -1
- package/dist/lib/permission-resolver.js +1 -1
- package/dist/lib/pin-cascade.js +1 -1
- package/dist/lib/provider-accounts.js +1 -1
- package/dist/lib/provider-oauth.js +1 -1
- package/dist/lib/provider-profile.js +1 -1
- package/dist/lib/provider-token-refresh.js +1 -1
- package/dist/lib/rbac-user-state.js +1 -1
- package/dist/lib/request-url.js +1 -1
- package/dist/lib/rewind.js +1 -1
- package/dist/lib/role-definitions.js +1 -1
- package/dist/lib/roles.js +1 -1
- package/dist/lib/secrets.js +1 -1
- package/dist/lib/setup-repo-git-auth.js +1 -1
- package/dist/lib/state-capture.js +1 -1
- package/dist/lib/static-files.js +1 -1
- package/dist/lib/task-name-format.js +1 -1
- package/dist/lib/task-name-generator.js +1 -1
- package/dist/lib/task-source-metadata.js +1 -1
- package/dist/lib/teams.js +1 -1
- package/dist/lib/user-git-oauth.js +1 -1
- package/dist/lib/user-git-tokens.js +1 -1
- package/dist/lib/users.js +1 -1
- package/dist/middleware/requireAuth.js +1 -1
- package/dist/middleware/requireInit.js +1 -1
- package/dist/middleware/requirePermission.js +1 -1
- package/dist/package.json +1 -1
- package/dist/playwright.config.js +1 -1
- package/dist/routes/apiKeys.js +1 -1
- package/dist/routes/auth-oidc.js +1 -1
- package/dist/routes/auth.js +1 -1
- package/dist/routes/automations.js +1 -1
- package/dist/routes/bindings.js +1 -1
- package/dist/routes/build.js +1 -1
- package/dist/routes/containers.js +1 -1
- package/dist/routes/deploy-task.js +1 -1
- package/dist/routes/environment-management.js +1 -1
- package/dist/routes/environments.js +1 -1
- package/dist/routes/external-skills.js +1 -1
- package/dist/routes/git-credentials.js +1 -1
- package/dist/routes/git-oauth.js +1 -1
- package/dist/routes/git-provider-setup.js +1 -1
- package/dist/routes/health.js +1 -1
- package/dist/routes/jira.js +1 -1
- package/dist/routes/objective-management.js +1 -1
- package/dist/routes/password.js +1 -1
- package/dist/routes/prompt.js +1 -1
- package/dist/routes/provider-auth.js +1 -1
- package/dist/routes/qa.js +1 -1
- package/dist/routes/roles.js +1 -1
- package/dist/routes/settings.js +1 -1
- package/dist/routes/skill-management.js +1 -1
- package/dist/routes/skills.js +1 -1
- package/dist/routes/tasks.js +1 -1
- package/dist/routes/teams.js +1 -1
- package/dist/routes/templates.js +1 -1
- package/dist/routes/test-task.js +1 -1
- package/dist/routes/test.js +1 -1
- package/dist/routes/users.js +1 -1
- package/dist/routes/visualizations.js +1 -1
- package/dist/scripts/create-user.js +1 -1
- package/dist/scripts/migrate-config-to-data-dir.js +1 -1
- package/dist/start.js +1 -1
- package/dist/web-ui/public/activity-detail-modal.js +1 -1
- package/dist/web-ui/public/activity-feed.js +1 -1
- package/dist/web-ui/public/activity-formatters.js +1 -1
- package/dist/web-ui/public/agent-event-parser.js +1 -1
- package/dist/web-ui/public/app.js +1 -1
- package/dist/web-ui/public/approve-dialog.js +1 -1
- package/dist/web-ui/public/automation-links.js +1 -1
- package/dist/web-ui/public/automation-schedule.js +1 -1
- package/dist/web-ui/public/comments-widget.js +1 -1
- package/dist/web-ui/public/diff-utils.js +1 -1
- package/dist/web-ui/public/environments.js +1 -1
- package/dist/web-ui/public/feedback-widget.css +409 -0
- package/dist/web-ui/public/feedback-widget.js +1 -1
- package/dist/web-ui/public/git-history-lazy-utils.js +1 -1
- package/dist/web-ui/public/git-history.js +1 -1
- package/dist/web-ui/public/git-status.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/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 +2975 -2022
- package/dist/web-ui/public/task.html +98 -2
- 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 _0x2df92e=await fetch('/auth/oidc/config');if(_0x2df92e['ok'])return await _0x2df92e['json']();}catch(_0xb3e125){console['error']('Failed\x20to\x20load\x20OIDC\x20configuration:',_0xb3e125);}return{'enabled':![]};}function initializeSsoUi(_0xca7978){const _0x2fe10f=document['getElementById']('sso-section'),_0x3a84a0=document['getElementById']('sso-divider'),_0x51a27f=document['getElementById']('sso-button-text'),_0x5bcfaa=document['getElementById']('sso-button'),_0x63f57b=document['querySelector']('.local-auth-section');_0xca7978['enabled']&&(_0x2fe10f['classList']['add']('visible'),_0x51a27f['textContent']=_0xca7978['display_name']||'Sign\x20in\x20with\x20SSO',_0x5bcfaa['addEventListener']('click',()=>{window['location']['href']='/auth/oidc/login';}),!_0xca7978['allow_local_auth']&&(_0x63f57b['classList']['add']('hidden'),_0x3a84a0['style']['display']='none'));}function checkOidcErrors(){const _0x322429=new URLSearchParams(window['location']['search']),_0x1d8c3a=_0x322429['get']('error'),_0x4254f8=_0x322429['get']('message');if(_0x1d8c3a){const _0x2c9e15=document['getElementById']('login-error'),_0x591c88=_0x4254f8||OIDC_ERRORS[_0x1d8c3a]||'Authentication\x20error:\x20'+_0x1d8c3a;_0x2c9e15['textContent']=_0x591c88,_0x2c9e15['classList']['add']('visible'),window['history']['replaceState']({},document['title'],window['location']['pathname']);}}async function handleLogin(_0x55cfb3){_0x55cfb3['preventDefault']();const _0x129bee=_0x55cfb3['target'],_0x44cfcf=_0x129bee['username']['value']['trim'](),_0x67c60=_0x129bee['password']['value'],_0x1466bc=_0x129bee['querySelector']('button[type=\x22submit\x22]'),_0x22cd65=document['getElementById']('login-error');_0x22cd65['classList']['remove']('visible'),_0x22cd65['textContent']='',_0x1466bc['disabled']=!![],_0x1466bc['textContent']='Signing\x20in...';try{const _0x20b281=await fetch('/auth/login',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'username':_0x44cfcf,'password':_0x67c60})}),_0x5548c0=await _0x20b281['json']();if(!_0x20b281['ok'])throw new Error(_0x5548c0['message']||'Login\x20failed');window['location']['href']='index.html';}catch(_0x45630c){_0x22cd65['textContent']=_0x45630c['message']||'An\x20error\x20occurred\x20during\x20login',_0x22cd65['classList']['add']('visible'),_0x1466bc['disabled']=![],_0x1466bc['textContent']='Sign\x20In',_0x129bee['password']['value']='',_0x129bee['password']['focus']();}}document['addEventListener']('DOMContentLoaded',async()=>{initTheme(),mountThemeToggle(),checkOidcErrors();const _0x258551=await loadOidcConfig();initializeSsoUi(_0x258551);const _0x145122=document['getElementById']('login-form');_0x145122&&_0x145122['addEventListener']('submit',handleLogin);});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const ATTACHMENT_SCHEME='attachment:',INTERNAL_DRAG_MIME='application/x-profound-editor-image',LINK_DIALOG_STYLE_ID='markdown-editor-link-dialog-styles',ICONS={'bold':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M6\x204h8a4\x204\x200\x200\x201\x204\x204\x204\x204\x200\x200\x201-4\x204H6z\x22></path><path\x20d=\x22M6\x2012h9a4\x204\x200\x200\x201\x204\x204\x204\x204\x200\x200\x201-4\x204H6z\x22></path></svg>','italic':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x2219\x22\x20y1=\x224\x22\x20x2=\x2210\x22\x20y2=\x224\x22></line><line\x20x1=\x2214\x22\x20y1=\x2220\x22\x20x2=\x225\x22\x20y2=\x2220\x22></line><line\x20x1=\x2215\x22\x20y1=\x224\x22\x20x2=\x229\x22\x20y2=\x2220\x22></line></svg>','strike':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x225\x22\x20y1=\x2212\x22\x20x2=\x2219\x22\x20y2=\x2212\x22></line><path\x20d=\x22M16\x206a4\x204\x200\x200\x200-4-4c-2.48\x200-4\x201.79-4\x204\x200\x201.25.5\x202.5\x201.5\x203\x22></path><path\x20d=\x22M9\x2018c0\x201.79\x201.79\x203\x204\x203\x202.48\x200\x204-1.79\x204-4\x200-1.25-.5-2.5-1.5-3\x22></path></svg>','link':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M10\x2013a5\x205\x200\x200\x200\x207.54.54l3-3a5\x205\x200\x200\x200-7.07-7.07l-1.72\x201.71\x22></path><path\x20d=\x22M14\x2011a5\x205\x200\x200\x200-7.54-.54l-3\x203a5\x205\x200\x200\x200\x207.07\x207.07l1.71-1.71\x22></path></svg>','code':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><polyline\x20points=\x2216\x2018\x2022\x2012\x2016\x206\x22></polyline><polyline\x20points=\x228\x206\x202\x2012\x208\x2018\x22></polyline></svg>','listBullet':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x228\x22\x20y1=\x226\x22\x20x2=\x2221\x22\x20y2=\x226\x22></line><line\x20x1=\x228\x22\x20y1=\x2212\x22\x20x2=\x2221\x22\x20y2=\x2212\x22></line><line\x20x1=\x228\x22\x20y1=\x2218\x22\x20x2=\x2221\x22\x20y2=\x2218\x22></line><line\x20x1=\x223\x22\x20y1=\x226\x22\x20x2=\x223.01\x22\x20y2=\x226\x22></line><line\x20x1=\x223\x22\x20y1=\x2212\x22\x20x2=\x223.01\x22\x20y2=\x2212\x22></line><line\x20x1=\x223\x22\x20y1=\x2218\x22\x20x2=\x223.01\x22\x20y2=\x2218\x22></line></svg>','listOrdered':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x2210\x22\x20y1=\x226\x22\x20x2=\x2221\x22\x20y2=\x226\x22></line><line\x20x1=\x2210\x22\x20y1=\x2212\x22\x20x2=\x2221\x22\x20y2=\x2212\x22></line><line\x20x1=\x2210\x22\x20y1=\x2218\x22\x20x2=\x2221\x22\x20y2=\x2218\x22></line><path\x20d=\x22M4\x206h1v4\x22></path><path\x20d=\x22M4\x2010h2\x22></path><path\x20d=\x22M6\x2018H4c0-1\x202-2\x202-3s-1-1.5-2-1\x22></path></svg>','blockquote':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M21\x2015a2\x202\x200\x200\x201-2\x202H7l-4\x204V5a2\x202\x200\x200\x201\x202-2h14a2\x202\x200\x200\x201\x202\x202z\x22></path></svg>','codeBlock':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><rect\x20x=\x223\x22\x20y=\x223\x22\x20width=\x2218\x22\x20height=\x2218\x22\x20rx=\x222\x22\x20ry=\x222\x22></rect><polyline\x20points=\x229\x208\x205\x2012\x209\x2016\x22></polyline><polyline\x20points=\x2215\x208\x2019\x2012\x2015\x2016\x22></polyline></svg>','header':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M4\x2012h8\x22></path><path\x20d=\x22M4\x2018V6\x22></path><path\x20d=\x22M12\x2018V6\x22></path><path\x20d=\x22M17\x2012l3-2v8\x22></path></svg>','color':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M4\x2020h16\x22></path><path\x20d=\x22M6\x2016l6-14\x206\x2014\x22></path><path\x20d=\x22M8\x2012h8\x22></path></svg>'},LINK_DIALOG_STYLES='\x0a.markdown-editor-link-modal\x20{\x0a\x20\x20position:\x20fixed;\x0a\x20\x20inset:\x200;\x0a\x20\x20display:\x20flex;\x0a\x20\x20align-items:\x20center;\x0a\x20\x20justify-content:\x20center;\x0a\x20\x20z-index:\x2010020;\x0a}\x0a\x0a.markdown-editor-link-modal[hidden]\x20{\x0a\x20\x20display:\x20none\x20!important;\x0a}\x0a\x0a.markdown-editor-link-backdrop\x20{\x0a\x20\x20position:\x20absolute;\x0a\x20\x20inset:\x200;\x0a\x20\x20background:\x20rgba(15,\x2023,\x2042,\x200.45);\x0a}\x0a\x0a.markdown-editor-link-dialog\x20{\x0a\x20\x20position:\x20relative;\x0a\x20\x20width:\x20min(460px,\x20calc(100vw\x20-\x2024px));\x0a\x20\x20background:\x20var(--color-surface,\x20var(--feedback-surface,\x20#ffffff));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a\x20\x20border:\x201px\x20solid\x20var(--color-border,\x20var(--feedback-border,\x20#d1d5db));\x0a\x20\x20border-radius:\x20var(--radius-medium,\x2010px);\x0a\x20\x20box-shadow:\x200\x2018px\x2042px\x20rgba(15,\x2023,\x2042,\x200.25);\x0a\x20\x20padding:\x2014px;\x0a\x20\x20display:\x20flex;\x0a\x20\x20flex-direction:\x20column;\x0a\x20\x20gap:\x2012px;\x0a}\x0a\x0a.markdown-editor-link-header\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20align-items:\x20center;\x0a\x20\x20justify-content:\x20space-between;\x0a\x20\x20gap:\x208px;\x0a}\x0a\x0a.markdown-editor-link-title\x20{\x0a\x20\x20margin:\x200;\x0a\x20\x20font-size:\x2016px;\x0a\x20\x20font-weight:\x20600;\x0a}\x0a\x0a.markdown-editor-link-close\x20{\x0a\x20\x20width:\x2028px;\x0a\x20\x20height:\x2028px;\x0a\x20\x20border:\x20none;\x0a\x20\x20border-radius:\x20var(--radius-small,\x208px);\x0a\x20\x20background:\x20transparent;\x0a\x20\x20color:\x20var(--color-text-muted,\x20var(--feedback-text-muted,\x20#6b7280));\x0a\x20\x20font-size:\x2020px;\x0a\x20\x20line-height:\x201;\x0a\x20\x20cursor:\x20pointer;\x0a}\x0a\x0a.markdown-editor-link-close:hover\x20{\x0a\x20\x20background:\x20var(--color-surface-muted,\x20var(--feedback-surface-muted,\x20#f3f4f6));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a}\x0a\x0a.markdown-editor-link-form\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20flex-direction:\x20column;\x0a\x20\x20gap:\x2010px;\x0a}\x0a\x0a.markdown-editor-link-field-grid\x20{\x0a\x20\x20display:\x20grid;\x0a\x20\x20gap:\x2010px;\x0a}\x0a\x0a.markdown-editor-link-label\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20flex-direction:\x20column;\x0a\x20\x20gap:\x206px;\x0a\x20\x20font-size:\x2012px;\x0a\x20\x20font-weight:\x20600;\x0a\x20\x20color:\x20var(--color-text-muted,\x20var(--feedback-text-muted,\x20#4b5563));\x0a}\x0a\x0a.markdown-editor-link-input\x20{\x0a\x20\x20width:\x20100%;\x0a\x20\x20padding:\x209px\x2010px;\x0a\x20\x20border:\x201px\x20solid\x20var(--color-border,\x20var(--feedback-border,\x20#d1d5db));\x0a\x20\x20border-radius:\x20var(--radius-small,\x208px);\x0a\x20\x20background:\x20var(--color-surface,\x20var(--feedback-surface,\x20#ffffff));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a\x20\x20font-size:\x2014px;\x0a}\x0a\x0a.markdown-editor-link-input:focus\x20{\x0a\x20\x20outline:\x20none;\x0a\x20\x20border-color:\x20var(--color-primary,\x20#3f72ff);\x0a\x20\x20box-shadow:\x200\x200\x200\x203px\x20rgba(63,\x20114,\x20255,\x200.2);\x0a}\x0a\x0a.markdown-editor-link-actions\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20justify-content:\x20flex-end;\x0a\x20\x20gap:\x208px;\x0a}\x0a\x0a.markdown-editor-link-btn\x20{\x0a\x20\x20border:\x201px\x20solid\x20transparent;\x0a\x20\x20border-radius:\x20var(--radius-small,\x208px);\x0a\x20\x20padding:\x207px\x2012px;\x0a\x20\x20font-size:\x2013px;\x0a\x20\x20font-weight:\x20600;\x0a\x20\x20cursor:\x20pointer;\x0a}\x0a\x0a.markdown-editor-link-btn-secondary\x20{\x0a\x20\x20background:\x20var(--color-surface-muted,\x20var(--feedback-surface-muted,\x20#f3f4f6));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a\x20\x20border-color:\x20var(--color-border,\x20var(--feedback-border,\x20#d1d5db));\x0a}\x0a\x0a.markdown-editor-link-btn-secondary:hover\x20{\x0a\x20\x20background:\x20var(--color-bg-secondary,\x20var(--feedback-surface-hover,\x20#e5e7eb));\x0a}\x0a\x0a.markdown-editor-link-btn-danger\x20{\x0a\x20\x20background:\x20transparent;\x0a\x20\x20color:\x20var(--color-danger,\x20#dc2626);\x0a\x20\x20border-color:\x20rgba(220,\x2038,\x2038,\x200.35);\x0a}\x0a\x0a.markdown-editor-link-btn-danger:hover\x20{\x0a\x20\x20background:\x20rgba(220,\x2038,\x2038,\x200.08);\x0a}\x0a\x0a.markdown-editor-link-btn-primary\x20{\x0a\x20\x20background:\x20var(--color-primary,\x20#3f72ff);\x0a\x20\x20color:\x20#ffffff;\x0a}\x0a\x0a.markdown-editor-link-btn-primary:hover\x20{\x0a\x20\x20background:\x20var(--color-accent,\x20#2563eb);\x0a}\x0a\x0a[data-theme=\x22dark\x22]\x20.markdown-editor-link-backdrop\x20{\x0a\x20\x20background:\x20rgba(2,\x206,\x2023,\x200.65);\x0a}\x0a\x0a[data-theme=\x22dark\x22]\x20.markdown-editor-link-dialog\x20{\x0a\x20\x20box-shadow:\x200\x2018px\x2042px\x20rgba(0,\x200,\x200,\x200.5);\x0a}\x0a\x0a@media\x20(max-width:\x20480px)\x20{\x0a\x20\x20.markdown-editor-link-dialog\x20{\x0a\x20\x20\x20\x20width:\x20calc(100vw\x20-\x2016px);\x0a\x20\x20\x20\x20padding:\x2012px;\x0a\x20\x20}\x0a\x0a\x20\x20.markdown-editor-link-actions\x20{\x0a\x20\x20\x20\x20flex-wrap:\x20wrap;\x0a\x20\x20}\x0a\x0a\x20\x20.markdown-editor-link-btn\x20{\x0a\x20\x20\x20\x20flex:\x201\x201\x20calc(50%\x20-\x206px);\x0a\x20\x20\x20\x20text-align:\x20center;\x0a\x20\x20}\x0a}\x0a';export class MarkdownEditor{constructor(_0x134303,_0x3cbbe7={}){this['element']=_0x134303,this['options']={'placeholder':_0x3cbbe7['placeholder']||'Start\x20typing...','editable':_0x3cbbe7['editable']!==![],'onChange':_0x3cbbe7['onChange']||null,'minHeight':_0x3cbbe7['minHeight']||'100px','toolbar':_0x3cbbe7['toolbar']||![],'onAddAttachments':_0x3cbbe7['onAddAttachments']||null,'resolveAttachmentUrl':_0x3cbbe7['resolveAttachmentUrl']||null,'isAttachmentNameTaken':_0x3cbbe7['isAttachmentNameTaken']||null,'fetchUsers':_0x3cbbe7['fetchUsers']||null},this['mentionState']={'active':![],'query':'','startOffset':0x0,'startNode':null,'users':[],'filteredUsers':[],'selectedIndex':0x0},this['mentionDropdown']=null,this['usersCache']=null,this['linkDialog']=null,this['linkDialogContext']=null;const _0x52a066=window['TurndownService'];this['turndownService']=new _0x52a066({'headingStyle':'atx','codeBlockStyle':'fenced','emDelimiter':'_','bulletListMarker':'-'}),this['attachmentObjectUrls']=new Map(),this['registerTurndownRules'](),this['init']();}['registerTurndownRules'](){this['turndownService']['addRule']('profoundAttachmentImage',{'filter':_0x2c6dec=>{return _0x2c6dec&&_0x2c6dec['nodeName']==='IMG'&&_0x2c6dec['getAttribute']&&_0x2c6dec['getAttribute']('data-attachment-name');},'replacement':(_0x1b9f3e,_0x87cd0a)=>{const _0x4e3592=_0x87cd0a['getAttribute']('data-attachment-name')||'',_0x1dbcb6=_0x87cd0a['getAttribute']('alt')||'',_0x534ff9=_0x4e3592['trim'](),_0x10c242=this['escapeAltText'](_0x1dbcb6||_0x534ff9),_0x525492=encodeURIComponent(_0x534ff9);return'';}}),this['turndownService']['addRule']('profoundMention',{'filter':_0x204166=>{return _0x204166&&_0x204166['nodeName']==='SPAN'&&_0x204166['getAttribute']&&_0x204166['getAttribute']('data-mention-user-id');},'replacement':(_0x5deb54,_0x224718)=>{const _0x1ae21e=_0x224718['getAttribute']('data-mention-user-id')||'',_0x1fe75e=_0x224718['textContent']||'',_0x434be4=_0x1fe75e['startsWith']('@')?_0x1fe75e['slice'](0x1):_0x1fe75e;return'['+_0x434be4+'](mention:'+_0x1ae21e+')';}}),this['turndownService']['addRule']('profoundColoredText',{'filter':_0x3be3d4=>{if(!_0x3be3d4)return![];if(_0x3be3d4['nodeName']==='FONT'&&_0x3be3d4['getAttribute']&&_0x3be3d4['getAttribute']('color'))return!![];if(_0x3be3d4['nodeName']==='SPAN'&&_0x3be3d4['style']&&_0x3be3d4['style']['color']){if(_0x3be3d4['getAttribute']&&_0x3be3d4['getAttribute']('data-mention-user-id'))return![];return!![];}return![];},'replacement':(_0x5cecf6,_0x4f8daa)=>{if(!_0x5cecf6['trim']())return _0x5cecf6;let _0xa8b541='';if(_0x4f8daa['nodeName']==='FONT')_0xa8b541=_0x4f8daa['getAttribute']('color')||'';else _0x4f8daa['style']&&_0x4f8daa['style']['color']&&(_0xa8b541=this['rgbToHex'](_0x4f8daa['style']['color']));if(!_0xa8b541)return _0x5cecf6;return'{color:'+_0xa8b541+'}'+_0x5cecf6+'{/color}';}});}['rgbToHex'](_0x34a4a2){if(!_0x34a4a2)return'';if(_0x34a4a2['startsWith']('#'))return _0x34a4a2;const _0x82229b=_0x34a4a2['match'](/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(!_0x82229b)return _0x34a4a2;const _0x5d8dae=parseInt(_0x82229b[0x1],0xa),_0x3648be=parseInt(_0x82229b[0x2],0xa),_0x3e8cee=parseInt(_0x82229b[0x3],0xa);return'#'+[_0x5d8dae,_0x3648be,_0x3e8cee]['map'](_0x1e9106=>_0x1e9106['toString'](0x10)['padStart'](0x2,'0'))['join']('')['toUpperCase']();}['escapeAltText'](_0x200911){return String(_0x200911||'')['replace'](/\]/g,'\x5c]');}['init'](){this['editor']=document['createElement']('div'),this['editor']['className']='markdown-editor',this['editor']['contentEditable']=this['options']['editable'],this['editor']['setAttribute']('role','textbox'),this['editor']['setAttribute']('aria-multiline','true'),this['editor']['style']['minHeight']=this['options']['minHeight'];this['options']['placeholder']&&this['editor']['setAttribute']('data-placeholder',this['options']['placeholder']);this['options']['toolbar']?(this['container']=document['createElement']('div'),this['container']['className']='markdown-editor-wrapper',this['container']['style']['display']='flex',this['container']['style']['flexDirection']='column',this['createToolbar'](),this['container']['appendChild'](this['toolbar']),this['container']['appendChild'](this['editor']),this['element']['parentNode']['insertBefore'](this['container'],this['element'])):this['element']['parentNode']['insertBefore'](this['editor'],this['element']);this['element']['style']['display']='none',this['isMac']=navigator['platform']['toUpperCase']()['indexOf']('MAC')>=0x0,this['linkHintText']=this['isMac']?'⌘+click\x20to\x20follow':'Ctrl+click\x20to\x20follow';this['options']['editable']&&this['bindEvents']();const _0x88b228=this['element']['textContent']||this['element']['value']||'';_0x88b228['trim']()&&this['setMarkdown'](_0x88b228);}['createToolbar'](){this['toolbar']=document['createElement']('div'),this['toolbar']['className']='markdown-editor-toolbar',this['toolbarButtons']={};const _0x4883f7=[{'id':'header','icon':ICONS['header'],'title':'Heading','action':'header','isDropdown':!![]},{'separator':!![]},{'id':'bold','icon':ICONS['bold'],'title':'Bold\x20(Ctrl+B)','action':'bold','command':'bold'},{'id':'italic','icon':ICONS['italic'],'title':'Italic\x20(Ctrl+I)','action':'italic','command':'italic'},{'id':'strike','icon':ICONS['strike'],'title':'Strikethrough','action':'strikeThrough','command':'strikeThrough'},{'id':'color','icon':ICONS['color'],'title':'Text\x20Color','action':'color','isDropdown':!![]},{'separator':!![]},{'id':'link','icon':ICONS['link'],'title':'Link\x20(Ctrl+K)','action':'link','tagName':'A'},{'id':'code','icon':ICONS['code'],'title':'Inline\x20Code','action':'code','tagName':'CODE'},{'id':'codeBlock','icon':ICONS['codeBlock'],'title':'Code\x20Block','action':'codeBlock','tagName':'PRE'},{'separator':!![]},{'id':'list-bullet','icon':ICONS['listBullet'],'title':'Bullet\x20List','action':'insertUnorderedList','command':'insertUnorderedList'},{'id':'list-ordered','icon':ICONS['listOrdered'],'title':'Numbered\x20List','action':'insertOrderedList','command':'insertOrderedList'}];_0x4883f7['forEach'](_0x2da06a=>{if(_0x2da06a['separator']){const _0x427d72=document['createElement']('div');_0x427d72['className']='markdown-toolbar-separator',_0x427d72['style']['width']='1px',_0x427d72['style']['height']='16px',_0x427d72['style']['background']='var(--color-border)',_0x427d72['style']['margin']='0\x206px',_0x427d72['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x427d72);}else{if(_0x2da06a['isDropdown']){const _0x1aa55a=document['createElement']('div');_0x1aa55a['className']='markdown-toolbar-dropdown',_0x1aa55a['style']['position']='relative';const _0x54c320=document['createElement']('button');_0x54c320['type']='button',_0x54c320['className']='markdown-editor-toolbar-btn\x20markdown-toolbar-dropdown-btn',_0x54c320['tabIndex']=-0x1,_0x54c320['innerHTML']=_0x2da06a['icon']+'<svg\x20class=\x22dropdown-arrow\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2210\x22\x20height=\x2210\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22><polyline\x20points=\x226\x209\x2012\x2015\x2018\x209\x22></polyline></svg>',_0x54c320['title']=_0x2da06a['title'],_0x54c320['dataset']['action']=_0x2da06a['action'];const _0x467d58=document['createElement']('div');_0x467d58['className']='markdown-toolbar-dropdown-menu',_0x467d58['style']['display']='none';if(_0x2da06a['action']==='header')this['createHeaderDropdown'](_0x467d58);else _0x2da06a['action']==='color'&&this['createColorDropdown'](_0x467d58);_0x54c320['addEventListener']('click',_0x1533c6=>{_0x1533c6['preventDefault'](),_0x1533c6['stopPropagation'](),this['toggleDropdown'](_0x467d58,_0x54c320);}),_0x1aa55a['appendChild'](_0x54c320),_0x1aa55a['appendChild'](_0x467d58),this['toolbar']['appendChild'](_0x1aa55a),this['toolbarButtons'][_0x2da06a['id']]={'button':_0x54c320,'dropdown':_0x467d58,'command':_0x2da06a['command'],'tagName':_0x2da06a['tagName']};}else{const _0x3bb36b=document['createElement']('button');_0x3bb36b['type']='button',_0x3bb36b['className']='markdown-editor-toolbar-btn',_0x3bb36b['tabIndex']=-0x1,_0x3bb36b['innerHTML']=_0x2da06a['icon'],_0x3bb36b['title']=_0x2da06a['title'],_0x3bb36b['dataset']['action']=_0x2da06a['action'],_0x3bb36b['addEventListener']('click',_0x5bdfa2=>{_0x5bdfa2['preventDefault'](),this['handleToolbarAction'](_0x2da06a['action']);}),this['toolbar']['appendChild'](_0x3bb36b),this['toolbarButtons'][_0x2da06a['id']]={'button':_0x3bb36b,'command':_0x2da06a['command'],'tagName':_0x2da06a['tagName']};}}}),document['addEventListener']('click',_0x168c3e=>{!this['toolbar']['contains'](_0x168c3e['target'])&&this['closeAllDropdowns']();});}['createHeaderDropdown'](_0x36b3e3){const _0x36b6bc=[{'level':0x1,'label':'Heading\x201','tag':'H1'},{'level':0x2,'label':'Heading\x202','tag':'H2'},{'level':0x3,'label':'Heading\x203','tag':'H3'},{'level':0x4,'label':'Heading\x204','tag':'H4'},{'level':0x0,'label':'Normal\x20Text','tag':'P'}];_0x36b6bc['forEach'](_0x1c5b31=>{const _0x34d2c0=document['createElement']('button');_0x34d2c0['type']='button',_0x34d2c0['className']='markdown-dropdown-item',_0x34d2c0['tabIndex']=-0x1,_0x34d2c0['innerHTML']='<span\x20style=\x22font-size:\x20'+(_0x1c5b31['level']===0x0?'14px':0x14-_0x1c5b31['level']*0x2+'px')+';\x20font-weight:\x20'+(_0x1c5b31['level']===0x0?'normal':'bold')+'\x22>'+_0x1c5b31['label']+'</span>',_0x34d2c0['addEventListener']('click',_0x2cff1=>{_0x2cff1['preventDefault'](),_0x2cff1['stopPropagation'](),this['applyHeader'](_0x1c5b31['level']),this['closeAllDropdowns']();}),_0x36b3e3['appendChild'](_0x34d2c0);});}['createColorDropdown'](_0x59fd8b){const _0x50f841=[{'value':'#000000','label':'Black'},{'value':'#374151','label':'Gray'},{'value':'#DC2626','label':'Red'},{'value':'#EA580C','label':'Orange'},{'value':'#CA8A04','label':'Yellow'},{'value':'#16A34A','label':'Green'},{'value':'#2563EB','label':'Blue'},{'value':'#7C3AED','label':'Purple'},{'value':'#DB2777','label':'Pink'}],_0x115002=document['createElement']('div');_0x115002['className']='markdown-color-grid',_0x115002['style']['display']='grid',_0x115002['style']['gridTemplateColumns']='repeat(3,\x201fr)',_0x115002['style']['gap']='4px',_0x115002['style']['padding']='8px',_0x50f841['forEach'](_0x2eca43=>{const _0x40443d=document['createElement']('button');_0x40443d['type']='button',_0x40443d['className']='markdown-color-btn',_0x40443d['tabIndex']=-0x1,_0x40443d['style']['width']='24px',_0x40443d['style']['height']='24px',_0x40443d['style']['backgroundColor']=_0x2eca43['value'],_0x40443d['style']['border']='1px\x20solid\x20var(--color-border)',_0x40443d['style']['borderRadius']='4px',_0x40443d['style']['cursor']='pointer',_0x40443d['title']=_0x2eca43['label'],_0x40443d['addEventListener']('click',_0x203c90=>{_0x203c90['preventDefault'](),_0x203c90['stopPropagation'](),this['applyColor'](_0x2eca43['value']),this['closeAllDropdowns']();}),_0x115002['appendChild'](_0x40443d);}),_0x59fd8b['appendChild'](_0x115002);const _0x5022fe=document['createElement']('button');_0x5022fe['type']='button',_0x5022fe['className']='markdown-dropdown-item',_0x5022fe['innerHTML']='<span>Remove\x20Color</span>',_0x5022fe['style']['borderTop']='1px\x20solid\x20var(--color-border)',_0x5022fe['style']['marginTop']='4px',_0x5022fe['style']['paddingTop']='8px',_0x5022fe['addEventListener']('click',_0x4c1dac=>{_0x4c1dac['preventDefault'](),_0x4c1dac['stopPropagation'](),this['removeColor'](),this['closeAllDropdowns']();}),_0x59fd8b['appendChild'](_0x5022fe);}['toggleDropdown'](_0x47ad82,_0x1a90e9){const _0x5e9383=_0x47ad82['style']['display']!=='none';this['toolbar']&&this['closeAllDropdowns'](),!_0x5e9383&&(_0x47ad82['style']['display']='block',_0x1a90e9['classList']['add']('active'));}['closeAllDropdowns'](){const _0x486e06=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-menu');_0x486e06['forEach'](_0x3c37ea=>_0x3c37ea['style']['display']='none');const _0x20af4e=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-btn');_0x20af4e['forEach'](_0x4be1ce=>_0x4be1ce['classList']['remove']('active'));}['applyHeader'](_0x1c821c){this['editor']['focus']();const _0x4b43b9=window['getSelection']();if(!_0x4b43b9||_0x4b43b9['rangeCount']===0x0)return;const _0x43cebe=_0x4b43b9['getRangeAt'](0x0);let _0x993a12=_0x43cebe['startContainer'];while(_0x993a12&&_0x993a12!==this['editor']){if(_0x993a12['nodeType']===Node['ELEMENT_NODE']){const _0x135ef5=window['getComputedStyle'](_0x993a12)['display'];if(_0x135ef5==='block'||['P','H1','H2','H3','H4','H5','H6','DIV']['includes'](_0x993a12['tagName']))break;}_0x993a12=_0x993a12['parentNode'];}_0x1c821c===0x0?document['execCommand']('formatBlock',![],'p'):document['execCommand']('formatBlock',![],'h'+_0x1c821c),this['editor']['dispatchEvent'](new Event('input'));}['applyColor'](_0x270d73){this['editor']['focus'](),document['execCommand']('foreColor',![],_0x270d73),this['editor']['dispatchEvent'](new Event('input'));}['removeColor'](){this['editor']['focus'](),document['execCommand']('removeFormat',![],null),this['editor']['dispatchEvent'](new Event('input'));}['handleToolbarAction'](_0x1a1b5c){this['editor']['focus']();switch(_0x1a1b5c){case'bold':case'italic':case'strikeThrough':case'insertUnorderedList':case'insertOrderedList':document['execCommand'](_0x1a1b5c,![],null);break;case'link':this['openLinkDialog']();return;case'code':this['toggleInlineCode']();break;case'codeBlock':this['insertCodeBlock']();break;}this['updateToolbarState'](),this['editor']['dispatchEvent'](new Event('input'));}['ensureLinkDialog'](){if(this['linkDialog'])return;this['ensureLinkDialogStyles']();const _0x5ca02f=document['createElement']('div');_0x5ca02f['className']='markdown-editor-link-modal',_0x5ca02f['hidden']=!![],_0x5ca02f['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-backdrop\x22></div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-dialog\x22\x20role=\x22dialog\x22\x20aria-modal=\x22true\x22\x20aria-label=\x22Edit\x20link\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<h3\x20class=\x22markdown-editor-link-title\x22>Insert\x20Link</h3>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22markdown-editor-link-close\x22\x20aria-label=\x22Close\x22>×</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<form\x20class=\x22markdown-editor-link-form\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-field-grid\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22markdown-editor-link-label\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20URL\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20class=\x22markdown-editor-link-input\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20data-link-field=\x22url\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type=\x22text\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20placeholder=\x22https://example.com\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20autocomplete=\x22off\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20spellcheck=\x22false\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22markdown-editor-link-label\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Display\x20text\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20class=\x22markdown-editor-link-input\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20data-link-field=\x22text\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type=\x22text\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20placeholder=\x22Text\x20shown\x20to\x20readers\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20autocomplete=\x22off\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20spellcheck=\x22false\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22markdown-editor-link-actions\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22markdown-editor-link-btn\x20markdown-editor-link-btn-secondary\x22\x20data-action=\x22cancel\x22>Cancel</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22markdown-editor-link-btn\x20markdown-editor-link-btn-danger\x22\x20data-action=\x22remove\x22\x20hidden>Remove\x20Link</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22submit\x22\x20class=\x22markdown-editor-link-btn\x20markdown-editor-link-btn-primary\x22>Insert\x20Link</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</form>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20',document['body']['appendChild'](_0x5ca02f),this['linkDialog']=_0x5ca02f,this['linkDialogElements']={'backdrop':_0x5ca02f['querySelector']('.markdown-editor-link-backdrop'),'title':_0x5ca02f['querySelector']('.markdown-editor-link-title'),'close':_0x5ca02f['querySelector']('.markdown-editor-link-close'),'form':_0x5ca02f['querySelector']('.markdown-editor-link-form'),'urlInput':_0x5ca02f['querySelector']('[data-link-field=\x22url\x22]'),'textInput':_0x5ca02f['querySelector']('[data-link-field=\x22text\x22]'),'remove':_0x5ca02f['querySelector']('[data-action=\x22remove\x22]'),'cancel':_0x5ca02f['querySelector']('[data-action=\x22cancel\x22]'),'submit':_0x5ca02f['querySelector']('.markdown-editor-link-btn-primary')},this['linkDialogElements']['backdrop']['addEventListener']('click',()=>{this['closeLinkDialog']({'restoreSelection':!![]});}),this['linkDialogElements']['close']['addEventListener']('click',()=>{this['closeLinkDialog']({'restoreSelection':!![]});}),this['linkDialogElements']['cancel']['addEventListener']('click',()=>{this['closeLinkDialog']({'restoreSelection':!![]});}),this['linkDialogElements']['remove']['addEventListener']('click',()=>{this['applyLinkDialogResult']({'remove':!![]});}),this['linkDialogElements']['form']['addEventListener']('submit',_0x4cec5e=>{_0x4cec5e['preventDefault'](),this['applyLinkDialogResult']();}),this['linkDialog']['addEventListener']('keydown',_0x4e2b31=>{_0x4e2b31['key']==='Escape'&&(_0x4e2b31['preventDefault'](),this['closeLinkDialog']({'restoreSelection':!![]}));});}['openLinkDialog'](){const _0xe3f6a0=window['getSelection']();if(!_0xe3f6a0||_0xe3f6a0['rangeCount']===0x0)return;const _0x46b230=_0xe3f6a0['getRangeAt'](0x0),_0x447313=this['editor']['contains'](_0x46b230['commonAncestorContainer'])||this['editor']===_0x46b230['commonAncestorContainer'];if(!_0x447313)return;this['toolbar']&&this['closeAllDropdowns']();this['ensureLinkDialog']();const _0x5aba96=_0x46b230['cloneRange'](),_0x41cc51=this['findLinkAtRange'](_0x5aba96),_0xbfcae5=_0x41cc51?_0x41cc51['getAttribute']('href')||'':'',_0x15432f=_0x41cc51?_0x41cc51['textContent']||'':_0x5aba96['toString']();this['linkDialogContext']={'range':_0x5aba96,'existingLink':_0x41cc51,'selectedText':_0x15432f},this['linkDialogElements']['title']['textContent']=_0x41cc51?'Edit\x20Link':'Insert\x20Link',this['linkDialogElements']['submit']['textContent']=_0x41cc51?'Save\x20Link':'Insert\x20Link',this['linkDialogElements']['remove']['hidden']=!_0x41cc51,this['linkDialogElements']['urlInput']['value']=_0xbfcae5,this['linkDialogElements']['textInput']['value']=_0x15432f,this['linkDialog']['hidden']=![],this['linkDialogElements']['urlInput']['focus'](),this['linkDialogElements']['urlInput']['select']();}['closeLinkDialog']({restoreSelection:restoreSelection=![]}={}){if(!this['linkDialog'])return;const _0x484876=this['linkDialogContext'];this['linkDialog']['hidden']=!![],restoreSelection&&_0x484876?.['range']&&(this['editor']['focus'](),this['restoreRange'](_0x484876['range'])),this['linkDialogContext']=null;}['applyLinkDialogResult']({remove:remove=![]}={}){if(!this['linkDialog']||!this['linkDialogContext'])return;const _0x3a7908=this['linkDialogContext'],_0x59d0da=(this['linkDialogElements']['urlInput']['value']||'')['trim'](),_0x28be66=this['linkDialogElements']['textInput']['value']||'',_0x19458c=_0x28be66['trim']();if(!remove&&!_0x59d0da){this['linkDialogElements']['urlInput']['focus']();return;}this['closeLinkDialog'](),this['editor']['focus'](),this['restoreRange'](_0x3a7908['range']);if(remove)_0x3a7908['existingLink']&&_0x3a7908['existingLink']['parentNode']?this['unwrapLinkElement'](_0x3a7908['existingLink']):document['execCommand']('unlink',![],null);else{if(_0x3a7908['existingLink']&&_0x3a7908['existingLink']['parentNode'])_0x3a7908['existingLink']['setAttribute']('href',_0x59d0da),_0x3a7908['existingLink']['textContent']=_0x19458c||_0x59d0da;else{const _0x1e0cfd=window['getSelection']();if(!_0x1e0cfd||_0x1e0cfd['rangeCount']===0x0)return;const _0x4bfbaf=_0x1e0cfd['getRangeAt'](0x0),_0x2e9bc0=(_0x3a7908['selectedText']||'')['trim'](),_0xf0840c=_0x19458c||_0x2e9bc0||_0x59d0da;_0x4bfbaf['deleteContents']();const _0x2b4fee=document['createElement']('a');_0x2b4fee['href']=_0x59d0da,_0x2b4fee['textContent']=_0xf0840c,_0x4bfbaf['insertNode'](_0x2b4fee),_0x4bfbaf['setStartAfter'](_0x2b4fee),_0x4bfbaf['collapse'](!![]),_0x1e0cfd['removeAllRanges'](),_0x1e0cfd['addRange'](_0x4bfbaf);}}this['addLinkHints'](),this['updateToolbarState'](),this['editor']['dispatchEvent'](new Event('input'));}['ensureLinkDialogStyles'](){if(document['getElementById'](LINK_DIALOG_STYLE_ID))return;const _0x12e546=document['createElement']('style');_0x12e546['id']=LINK_DIALOG_STYLE_ID,_0x12e546['textContent']=LINK_DIALOG_STYLES,document['head']['appendChild'](_0x12e546);}['restoreRange'](_0x337af2){const _0x373bc5=window['getSelection']();if(!_0x373bc5)return;try{_0x373bc5['removeAllRanges'](),_0x373bc5['addRange'](_0x337af2);return;}catch(_0x4ca782){}const _0x3bf15c=document['createRange']();_0x3bf15c['selectNodeContents'](this['editor']),_0x3bf15c['collapse'](![]),_0x373bc5['removeAllRanges'](),_0x373bc5['addRange'](_0x3bf15c);}['findLinkAtRange'](_0x5ceeb5){if(!_0x5ceeb5)return null;const _0x4d6364=this['findParentLink'](_0x5ceeb5['startContainer']);if(_0x5ceeb5['collapsed'])return _0x4d6364;const _0x2cb988=this['findParentLink'](_0x5ceeb5['endContainer']);if(_0x4d6364&&_0x4d6364===_0x2cb988)return _0x4d6364;if(_0x4d6364&&_0x4d6364['contains'](_0x5ceeb5['endContainer']))return _0x4d6364;if(_0x2cb988&&_0x2cb988['contains'](_0x5ceeb5['startContainer']))return _0x2cb988;return null;}['findParentLink'](_0x1f3efc){let _0x17dd33=_0x1f3efc;while(_0x17dd33&&_0x17dd33!==this['editor']){if(_0x17dd33['nodeType']===Node['ELEMENT_NODE']&&_0x17dd33['tagName']==='A'){const _0x1b1c09=_0x17dd33['getAttribute']('href')||'';if(_0x1b1c09['startsWith']('mention:'))return null;return _0x17dd33;}_0x17dd33=_0x17dd33['parentNode'];}return null;}['unwrapLinkElement'](_0x1e6aeb){const _0x3ec5a1=_0x1e6aeb['parentNode'];if(!_0x3ec5a1)return;while(_0x1e6aeb['firstChild']){_0x3ec5a1['insertBefore'](_0x1e6aeb['firstChild'],_0x1e6aeb);}_0x3ec5a1['removeChild'](_0x1e6aeb);}['isSelectionInTag'](_0x2dc15f){const _0x556ed0=window['getSelection']();if(!_0x556ed0||_0x556ed0['rangeCount']===0x0)return![];let _0x4a187e=_0x556ed0['anchorNode'];while(_0x4a187e&&_0x4a187e!==this['editor']){if(_0x4a187e['nodeType']===Node['ELEMENT_NODE']&&_0x4a187e['tagName']===_0x2dc15f)return!![];_0x4a187e=_0x4a187e['parentNode'];}return![];}['updateToolbarState'](){if(!this['toolbarButtons'])return;for(const [_0x2d5a1f,_0x385494]of Object['entries'](this['toolbarButtons'])){let _0x6d2258=![];if(_0x385494['command'])try{_0x6d2258=document['queryCommandState'](_0x385494['command']);}catch(_0x5c0929){_0x6d2258=![];}else _0x385494['tagName']&&(_0x6d2258=this['isSelectionInTag'](_0x385494['tagName']));_0x385494['button']['classList']['toggle']('active',_0x6d2258);}}['bindEvents'](){this['editor']['addEventListener']('keydown',_0x4d2dcd=>this['handleKeydown'](_0x4d2dcd)),this['editor']['addEventListener']('input',_0x3d2488=>{this['handleMentionInput'](_0x3d2488),this['handleAutoFormat'](_0x3d2488);}),this['editor']['addEventListener']('input',()=>{const _0xb97d79=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');!_0xb97d79&&(this['editor']['innerHTML']='');this['updatePlaceholder']();const _0x1b98d1=this['getMarkdown']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x1b98d1:this['element']['textContent']=_0x1b98d1,this['options']['onChange']&&this['options']['onChange'](_0x1b98d1);}),this['editor']['addEventListener']('paste',_0x2ed704=>this['handlePaste'](_0x2ed704)),this['editor']['addEventListener']('dragover',_0x3ee331=>this['handleDragOver'](_0x3ee331)),this['editor']['addEventListener']('drop',_0xa14c58=>this['handleDrop'](_0xa14c58)),this['editor']['addEventListener']('dragstart',_0x2d2dcb=>this['handleDragStart'](_0x2d2dcb)),this['options']['toolbar']&&(this['selectionChangeHandler']=()=>{(this['editor']['contains'](document['activeElement'])||this['editor']===document['activeElement'])&&this['updateToolbarState']();},document['addEventListener']('selectionchange',this['selectionChangeHandler']),this['editor']['addEventListener']('keyup',()=>this['updateToolbarState']()),this['editor']['addEventListener']('mouseup',()=>this['updateToolbarState']()),this['editor']['addEventListener']('focus',()=>this['updateToolbarState']())),this['linkClickHandler']=_0x4da58f=>this['handleLinkClick'](_0x4da58f),this['editor']['addEventListener']('click',this['linkClickHandler']),this['linkMouseEnterHandler']=_0x1137d6=>this['handleLinkMouseEnter'](_0x1137d6),this['linkMouseLeaveHandler']=_0x470559=>this['handleLinkMouseLeave'](_0x470559),this['editor']['addEventListener']('mouseover',this['linkMouseEnterHandler']),this['editor']['addEventListener']('mouseout',this['linkMouseLeaveHandler']),this['updatePlaceholder']();}['handleAutoFormat'](_0x1dbc84){if(_0x1dbc84['inputType']==='deleteContentBackward')return;const _0x2f5e80=window['getSelection']();if(!_0x2f5e80||_0x2f5e80['rangeCount']===0x0)return;const _0x29f18d=_0x2f5e80['getRangeAt'](0x0),_0x5b0718=_0x29f18d['startContainer'];if(_0x5b0718['nodeType']!==Node['TEXT_NODE'])return;if(this['isSelectionInTag']('CODE')||this['isSelectionInTag']('PRE'))return;const _0x4895a7=_0x5b0718['textContent'],_0x2e44b7=_0x29f18d['startOffset'],_0x289f57=_0x4895a7['slice'](0x0,_0x2e44b7);if(_0x289f57['endsWith']('```')){_0x29f18d['setStart'](_0x5b0718,_0x2e44b7-0x3),_0x29f18d['setEnd'](_0x5b0718,_0x2e44b7),_0x29f18d['deleteContents'](),this['insertCodeBlock']();return;}const _0x4c4441=/`([^`]+)`$/,_0x37f737=_0x289f57['match'](_0x4c4441);if(_0x37f737){const _0x57489c=_0x37f737[0x1];if(_0x57489c){const _0x394db6=_0x37f737['index'],_0x953ef0=_0x394db6+_0x57489c['length']+0x2;_0x29f18d['setStart'](_0x5b0718,_0x394db6),_0x29f18d['setEnd'](_0x5b0718,_0x2e44b7),_0x29f18d['deleteContents']();const _0x5c9777=document['createElement']('code');_0x5c9777['textContent']=_0x57489c,_0x29f18d['insertNode'](_0x5c9777),_0x29f18d['setStartAfter'](_0x5c9777),_0x29f18d['setEndAfter'](_0x5c9777);const _0x2e84d9=document['createTextNode']('');_0x29f18d['insertNode'](_0x2e84d9),_0x29f18d['setStartAfter'](_0x2e84d9),_0x29f18d['setEndAfter'](_0x2e84d9),_0x2f5e80['removeAllRanges'](),_0x2f5e80['addRange'](_0x29f18d);return;}}const _0x2f8343=_0x289f57['match'](/^[-*][\s\u00A0]$/);if(_0x2f8343&&this['isAtStartOfBlock'](_0x5b0718)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x29f18d['setStart'](_0x5b0718,Math['max'](_0x2e44b7-0x2,0x0)),_0x29f18d['setEnd'](_0x5b0718,_0x2e44b7),_0x29f18d['deleteContents']();const _0x37c6c5=this['ensureListInsertionAnchor'](_0x5b0718);document['execCommand']('insertUnorderedList',![],null);_0x37c6c5&&_0x37c6c5['parentNode']&&_0x37c6c5['parentNode']['removeChild'](_0x37c6c5);this['updateToolbarState']();return;}const _0x36317f=_0x289f57['match'](/^1\.[\s\u00A0]$/);if(_0x36317f&&this['isAtStartOfBlock'](_0x5b0718)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x29f18d['setStart'](_0x5b0718,Math['max'](_0x2e44b7-0x3,0x0)),_0x29f18d['setEnd'](_0x5b0718,_0x2e44b7),_0x29f18d['deleteContents']();const _0x5c35f9=this['ensureListInsertionAnchor'](_0x5b0718);document['execCommand']('insertOrderedList',![],null);_0x5c35f9&&_0x5c35f9['parentNode']&&_0x5c35f9['parentNode']['removeChild'](_0x5c35f9);this['updateToolbarState']();return;}}['isAtStartOfBlock'](_0x3db351){let _0x366ef0=_0x3db351;while(_0x366ef0&&_0x366ef0!==this['editor']){const _0x253976=_0x366ef0['parentNode'];if(!_0x253976)break;const _0x2bc2ab=_0x253976['tagName'];if(_0x2bc2ab==='DIV'||_0x2bc2ab==='P'||_0x2bc2ab==='LI'||_0x253976===this['editor']){let _0x1f393d=_0x253976['firstChild'];while(_0x1f393d&&(_0x1f393d['nodeType']===Node['TEXT_NODE']&&_0x1f393d['textContent']===''||_0x1f393d['nodeType']===Node['ELEMENT_NODE']&&_0x1f393d['tagName']==='BR')){_0x1f393d=_0x1f393d['nextSibling'];}return _0x1f393d===_0x3db351||_0x1f393d===_0x366ef0;}_0x366ef0=_0x253976;}if(_0x366ef0===this['editor']||_0x3db351['parentNode']===this['editor']){let _0x224b3b=this['editor']['firstChild'];while(_0x224b3b&&(_0x224b3b['nodeType']===Node['TEXT_NODE']&&_0x224b3b['textContent']===''||_0x224b3b['nodeType']===Node['ELEMENT_NODE']&&_0x224b3b['tagName']==='BR')){_0x224b3b=_0x224b3b['nextSibling'];}return _0x224b3b===_0x3db351;}return![];}['getClosestBlockElement'](_0x4459b0){let _0x3dbc08=_0x4459b0;while(_0x3dbc08&&_0x3dbc08!==this['editor']){const _0x145cf6=_0x3dbc08['parentNode'];if(!_0x145cf6)break;const _0x39af67=_0x145cf6['tagName'];if(_0x39af67==='DIV'||_0x39af67==='P'||_0x39af67==='LI'||_0x145cf6===this['editor'])return _0x145cf6;_0x3dbc08=_0x145cf6;}return this['editor'];}['ensureListInsertionAnchor'](_0x25109b){const _0x37f9da=window['getSelection']();if(!_0x37f9da||_0x37f9da['rangeCount']===0x0)return null;const _0x55adfd=this['getClosestBlockElement'](_0x25109b);if(!_0x55adfd||_0x55adfd===this['editor'])return null;const _0x1829f6=_0x55adfd['textContent']['replace'](/\u200B/g,'');if(_0x1829f6!=='')return null;const _0x5ec52f=document['createTextNode']('');_0x55adfd['appendChild'](_0x5ec52f);const _0x4247ad=document['createRange']();return _0x4247ad['setStart'](_0x5ec52f,0x1),_0x4247ad['setEnd'](_0x5ec52f,0x1),_0x37f9da['removeAllRanges'](),_0x37f9da['addRange'](_0x4247ad),_0x5ec52f;}['getContainingListItem'](){const _0x36146e=window['getSelection']();if(!_0x36146e||_0x36146e['rangeCount']===0x0)return null;let _0x1d1c88=_0x36146e['anchorNode'];while(_0x1d1c88&&_0x1d1c88!==this['editor']){if(_0x1d1c88['nodeType']===Node['ELEMENT_NODE']&&_0x1d1c88['tagName']==='LI')return _0x1d1c88;_0x1d1c88=_0x1d1c88['parentNode'];}return null;}['isEmptyListItem'](_0x565b9b){if(!_0x565b9b)return![];const _0xd3922b=_0x565b9b['textContent']['replace'](/\u200B/g,'')['trim']();if(_0xd3922b!=='')return![];const _0x3e791f=_0x565b9b['querySelector']('img');if(_0x3e791f)return![];const _0x4d44fb=_0x565b9b['querySelector']('ul,\x20ol');if(_0x4d44fb)return![];return!![];}['isCursorAtStartOfListItem'](_0x225d23){if(!_0x225d23)return![];const _0x5c1c80=window['getSelection']();if(!_0x5c1c80||_0x5c1c80['rangeCount']===0x0||!_0x5c1c80['isCollapsed'])return![];const _0x1176e9=_0x5c1c80['getRangeAt'](0x0),_0x310cae=_0x1176e9['startContainer'];if(_0x310cae!==_0x225d23&&!_0x225d23['contains'](_0x310cae))return![];const _0x511f10=_0x1176e9['cloneRange']();_0x511f10['setStart'](_0x225d23,0x0),_0x511f10['setEnd'](_0x310cae,_0x1176e9['startOffset']);const _0x3414dc=_0x511f10['toString']()['replace'](/\u200B/g,'')['replace'](/\u00A0/g,'\x20');return _0x3414dc['trim']()==='';}['indentListItem'](_0x491d09){const _0x3cc9b4=_0x491d09['previousElementSibling'];if(!_0x3cc9b4||_0x3cc9b4['tagName']!=='LI')return;const _0x4ae855=_0x491d09['parentNode'],_0x41d103=_0x4ae855['tagName'];let _0x32e997=_0x3cc9b4['querySelector'](':scope\x20>\x20ul,\x20:scope\x20>\x20ol');!_0x32e997&&(_0x32e997=document['createElement'](_0x41d103),_0x3cc9b4['appendChild'](_0x32e997)),_0x32e997['appendChild'](_0x491d09),this['placeCursorInListItem'](_0x491d09);}['outdentListItem'](_0x570324){const _0x3733b1=_0x570324['parentNode'];if(!_0x3733b1||_0x3733b1['tagName']!=='UL'&&_0x3733b1['tagName']!=='OL')return;const _0x525dc6=_0x3733b1['parentNode'];if(_0x525dc6&&_0x525dc6['tagName']==='LI'){const _0xae21b1=_0x525dc6['parentNode'];_0xae21b1['insertBefore'](_0x570324,_0x525dc6['nextSibling']),_0x3733b1['children']['length']===0x0&&_0x3733b1['remove'](),this['placeCursorInListItem'](_0x570324);}else return;}['exitListOnEmptyBullet'](_0x435746){const _0x450937=_0x435746['parentNode'];if(!_0x450937)return;const _0x3a9841=_0x450937['parentNode'];if(_0x3a9841&&_0x3a9841['tagName']==='LI'){this['outdentListItem'](_0x435746);return;}const _0x5935c4=_0x450937['parentNode'],_0x2ccec8=document['createElement']('p');_0x2ccec8['innerHTML']='<br>',_0x5935c4['insertBefore'](_0x2ccec8,_0x450937['nextSibling']),_0x435746['remove']();_0x450937['children']['length']===0x0&&_0x450937['remove']();const _0x4e2fb7=window['getSelection'](),_0x3cbfa3=document['createRange']();_0x3cbfa3['setStart'](_0x2ccec8,0x0),_0x3cbfa3['collapse'](!![]),_0x4e2fb7['removeAllRanges'](),_0x4e2fb7['addRange'](_0x3cbfa3);}['placeCursorInListItem'](_0x53e1a1){const _0x2005b0=window['getSelection'](),_0x52cc08=document['createRange'](),_0x15ed9b=document['createTreeWalker'](_0x53e1a1,NodeFilter['SHOW_TEXT'],null,![]),_0x5d25f7=_0x15ed9b['nextNode']();_0x5d25f7?_0x52cc08['setStart'](_0x5d25f7,0x0):_0x52cc08['setStart'](_0x53e1a1,0x0),_0x52cc08['collapse'](!![]),_0x2005b0['removeAllRanges'](),_0x2005b0['addRange'](_0x52cc08);}['handleLinkClick'](_0x1ebe6c){const _0x2574c9=this['isMac']?_0x1ebe6c['metaKey']:_0x1ebe6c['ctrlKey'];if(!_0x2574c9)return;let _0x2ac8a3=_0x1ebe6c['target'];while(_0x2ac8a3&&_0x2ac8a3!==this['editor']){if(_0x2ac8a3['tagName']==='A'){_0x1ebe6c['preventDefault'](),_0x1ebe6c['stopPropagation']();const _0x1f8de4=_0x2ac8a3['getAttribute']('href');if(!_0x1f8de4)return;if(_0x1f8de4['startsWith']('mention:'))return;const _0x371dc8=/^https?:\/\//i['test'](_0x1f8de4);_0x371dc8?window['open'](_0x1f8de4,'_blank','noopener,noreferrer'):window['location']['href']=_0x1f8de4;return;}_0x2ac8a3=_0x2ac8a3['parentNode'];}}['handleLinkMouseEnter'](_0x12a77a){const _0x53823c=_0x12a77a['target'];if(_0x53823c['tagName']!=='A')return;const _0x519f7c=_0x53823c['getAttribute']('href')||'';if(_0x519f7c['startsWith']('mention:'))return;this['linkTooltipTimeout']&&clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=setTimeout(()=>{this['showLinkTooltip'](_0x53823c);},0x12c);}['handleLinkMouseLeave'](_0x5a7e83){const _0x52563=_0x5a7e83['target'];if(_0x52563['tagName']!=='A')return;this['linkTooltipTimeout']&&(clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=null),this['hideLinkTooltip']();}['showLinkTooltip'](_0x1d2356){!this['linkTooltip']&&(this['linkTooltip']=document['createElement']('div'),this['linkTooltip']['className']='markdown-editor-link-tooltip',document['body']['appendChild'](this['linkTooltip']));this['linkTooltip']['textContent']=this['linkHintText']||'Ctrl+click\x20to\x20follow';const _0x4c6a66=_0x1d2356['getBoundingClientRect'](),_0x44224f=this['linkTooltip']['getBoundingClientRect']();let _0x2b6572=_0x4c6a66['bottom']+0x4,_0x561167=_0x4c6a66['left']+_0x4c6a66['width']/0x2;_0x2b6572+0x1e>window['innerHeight']&&(_0x2b6572=_0x4c6a66['top']-0x1e);const _0x28d0c3=0x78;if(_0x561167-_0x28d0c3/0x2<0xa)_0x561167=_0x28d0c3/0x2+0xa;else _0x561167+_0x28d0c3/0x2>window['innerWidth']-0xa&&(_0x561167=window['innerWidth']-_0x28d0c3/0x2-0xa);this['linkTooltip']['style']['top']=_0x2b6572+'px',this['linkTooltip']['style']['left']=_0x561167+'px',this['linkTooltip']['style']['transform']='translateX(-50%)',this['linkTooltip']['classList']['add']('visible');}['hideLinkTooltip'](){this['linkTooltip']&&this['linkTooltip']['classList']['remove']('visible');}['handleKeydown'](_0x3be86c){if(this['mentionState']['active']){if(_0x3be86c['key']==='ArrowDown'){_0x3be86c['preventDefault'](),this['mentionNavigate'](0x1);return;}if(_0x3be86c['key']==='ArrowUp'){_0x3be86c['preventDefault'](),this['mentionNavigate'](-0x1);return;}if(_0x3be86c['key']==='Enter'||_0x3be86c['key']==='Tab'){if(this['mentionState']['filteredUsers']['length']>0x0){_0x3be86c['preventDefault'](),this['insertMention'](this['mentionState']['filteredUsers'][this['mentionState']['selectedIndex']]);return;}}if(_0x3be86c['key']==='Escape'){_0x3be86c['preventDefault'](),this['closeMentionDropdown']();return;}}if(_0x3be86c['key']==='Tab'&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x42f4a7=this['getContainingListItem']();if(_0x42f4a7&&this['isCursorAtStartOfListItem'](_0x42f4a7)){_0x3be86c['preventDefault']();_0x3be86c['shiftKey']?this['outdentListItem'](_0x42f4a7):this['indentListItem'](_0x42f4a7);this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x3be86c['key']==='Enter'&&!_0x3be86c['shiftKey']&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x2dc158=this['getContainingListItem']();if(_0x2dc158&&this['isEmptyListItem'](_0x2dc158)){_0x3be86c['preventDefault'](),this['exitListOnEmptyBullet'](_0x2dc158),this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x3be86c['key']==='Enter'&&!_0x3be86c['shiftKey']&&this['isSelectionInTag']('PRE')){_0x3be86c['preventDefault']();const _0x3c7b1e=window['getSelection']();if(_0x3c7b1e['rangeCount']>0x0){const _0x310362=_0x3c7b1e['getRangeAt'](0x0);_0x310362['deleteContents']();const _0x364125=document['createTextNode']('\x0a');_0x310362['insertNode'](_0x364125),_0x310362['setStartAfter'](_0x364125),_0x310362['setEndAfter'](_0x364125),_0x3c7b1e['removeAllRanges'](),_0x3c7b1e['addRange'](_0x310362),this['handleInput']();}return;}(_0x3be86c['ctrlKey']||_0x3be86c['metaKey'])&&_0x3be86c['key']==='b'&&(_0x3be86c['preventDefault'](),document['execCommand']('bold',![],null));(_0x3be86c['ctrlKey']||_0x3be86c['metaKey'])&&_0x3be86c['key']==='i'&&(_0x3be86c['preventDefault'](),document['execCommand']('italic',![],null));if((_0x3be86c['ctrlKey']||_0x3be86c['metaKey'])&&_0x3be86c['key']==='k'){_0x3be86c['preventDefault'](),this['openLinkDialog']();return;}}['handlePaste'](_0x47dcd7){const _0x502845=_0x47dcd7['clipboardData'];if(_0x502845&&this['options']['onAddAttachments']){const _0x3794e7=this['extractImageFilesFromClipboard'](_0x502845);if(_0x3794e7['length']>0x0){_0x47dcd7['preventDefault'](),this['addAndInsertImages'](_0x3794e7);return;}}_0x47dcd7['preventDefault']();const _0xbd2745=_0x47dcd7['clipboardData']['getData']('text/html');if(_0xbd2745&&_0xbd2745['trim']()){const _0x249a73=this['convertPastedHtmlToMarkdown'](_0xbd2745);if(_0x249a73&&_0x249a73['trim']()){this['insertMarkdownAsRichText'](_0x249a73);return;}}const _0xe320f7=_0x47dcd7['clipboardData']['getData']('text/plain');document['execCommand']('insertText',![],_0xe320f7);}['convertPastedHtmlToMarkdown'](_0x2125e8){const _0x46c53f=document['createElement']('div');_0x46c53f['innerHTML']=_0x2125e8;const _0x29093a=_0x46c53f['querySelectorAll']('style,\x20script,\x20meta,\x20link,\x20head,\x20title');_0x29093a['forEach'](_0x2a817f=>_0x2a817f['remove']());const _0x595eac=_0x46c53f['querySelectorAll']('*');_0x595eac['forEach'](_0x1c9a6b=>{const _0x307873=Array['from'](_0x1c9a6b['attributes']);_0x307873['forEach'](_0x17c817=>{_0x17c817['name']['startsWith']('data-')&&_0x17c817['name']!=='data-attachment-name'&&_0x17c817['name']!=='data-mention-user-id'&&_0x1c9a6b['removeAttribute'](_0x17c817['name']);});}),_0x46c53f['querySelectorAll']('font[color]')['forEach'](_0x3501fa=>{_0x3501fa['replaceWith'](..._0x3501fa['childNodes']);}),_0x46c53f['querySelectorAll']('span')['forEach'](_0x22ce63=>{_0x22ce63['style']['color']&&_0x22ce63['style']['removeProperty']('color'),!_0x22ce63['getAttribute']('style')&&!_0x22ce63['getAttribute']('data-mention-user-id')&&!_0x22ce63['getAttribute']('data-attachment-name')&&_0x22ce63['replaceWith'](..._0x22ce63['childNodes']);});try{return this['turndownService']['turndown'](_0x46c53f['innerHTML']);}catch(_0x5d3354){return console['warn']('Failed\x20to\x20convert\x20HTML\x20to\x20markdown:',_0x5d3354),null;}}['insertMarkdownAsRichText'](_0x434b56){const _0x367047=window['marked'];if(!_0x367047){document['execCommand']('insertText',![],_0x434b56);return;}try{const _0x32cf12=this['preprocessColorSyntax'](_0x434b56),_0x7a4bc=_0x367047['parse'](_0x32cf12),_0x193af8=document['createElement']('div');_0x193af8['innerHTML']=_0x7a4bc,this['processHtmlForEditor'](_0x193af8),document['execCommand']('insertHTML',![],_0x193af8['innerHTML']);}catch(_0x1fe55e){console['warn']('Failed\x20to\x20convert\x20markdown\x20to\x20HTML:',_0x1fe55e),document['execCommand']('insertText',![],_0x434b56);}}['processHtmlForEditor'](_0x2508ac){const _0x215cea=_0x2508ac['querySelectorAll']('pre');_0x215cea['forEach'](_0x59ce55=>{const _0x1759f7=_0x59ce55['querySelector']('code');if(_0x1759f7){const _0x180e32=Array['from'](_0x1759f7['classList'])['find'](_0x43702e=>_0x43702e['startsWith']('language-')),_0x3e5e4a=_0x180e32?_0x180e32['replace']('language-',''):'',_0x32591b=document['createElement']('pre');_0x3e5e4a&&_0x32591b['setAttribute']('data-language',_0x3e5e4a),_0x32591b['textContent']=_0x1759f7['textContent'],_0x59ce55['replaceWith'](_0x32591b);}});const _0x34f30e=_0x2508ac['querySelectorAll']('a');_0x34f30e['forEach'](_0x2dbb31=>{_0x2dbb31['setAttribute']('target','_blank'),_0x2dbb31['setAttribute']('rel','noopener\x20noreferrer');});}['handleDragStart'](_0x56fb55){const _0x14afa7=_0x56fb55['target'];if(!_0x14afa7||_0x14afa7['tagName']!=='IMG')return;if(!_0x56fb55['dataTransfer'])return;const _0xdd94=_0x14afa7['getAttribute']('data-attachment-name')||'';try{_0x56fb55['dataTransfer']['setData'](INTERNAL_DRAG_MIME,_0xdd94||'1');}catch{}_0x56fb55['dataTransfer']['effectAllowed']='move';}['handleDragOver'](_0x4dab58){if(!this['isExternalFileTransfer'](_0x4dab58['dataTransfer']))return;_0x4dab58['preventDefault'](),_0x4dab58['dataTransfer']['dropEffect']='copy';}['handleDrop'](_0x300bd0){if(!this['isExternalFileTransfer'](_0x300bd0['dataTransfer']))return;const _0x293242=_0x300bd0['dataTransfer'],_0x1ca09e=Array['from'](_0x293242['files']||[])['filter'](_0x2592a7=>_0x2592a7&&typeof _0x2592a7['type']==='string'),_0x20ce98=_0x1ca09e['filter'](_0xce19bc=>_0xce19bc['type']['startsWith']('image/'));if(_0x20ce98['length']===0x0)return;_0x300bd0['preventDefault'](),_0x300bd0['stopPropagation'](),this['cleanupParentDragState'](),this['moveSelectionToDropPoint'](_0x300bd0),this['addAndInsertImages'](_0x20ce98);}['cleanupParentDragState'](){let _0x24d0fe=this['editor']['parentElement'];while(_0x24d0fe){_0x24d0fe['classList']&&_0x24d0fe['classList']['contains']('drag-over')&&_0x24d0fe['classList']['remove']('drag-over'),_0x24d0fe=_0x24d0fe['parentElement'];}}['isExternalFileTransfer'](_0x4c57be){if(!_0x4c57be)return![];const _0x168a13=Array['from'](_0x4c57be['types']||[]);if(!_0x168a13['includes']('Files'))return![];if(_0x168a13['includes'](INTERNAL_DRAG_MIME))return![];if(_0x4c57be['files']&&_0x4c57be['files']['length']>0x0)return!![];if(_0x4c57be['items']&&Array['from'](_0x4c57be['items'])['some'](_0x243efa=>_0x243efa['kind']==='file'))return!![];return![];}['moveSelectionToDropPoint'](_0x523789){const _0x498474=_0x523789['clientX'],_0x2946a8=_0x523789['clientY'];let _0x149c21=null;if(document['caretRangeFromPoint'])_0x149c21=document['caretRangeFromPoint'](_0x498474,_0x2946a8);else{if(document['caretPositionFromPoint']){const _0x37b880=document['caretPositionFromPoint'](_0x498474,_0x2946a8);_0x37b880&&(_0x149c21=document['createRange'](),_0x149c21['setStart'](_0x37b880['offsetNode'],_0x37b880['offset']),_0x149c21['collapse'](!![]));}}if(_0x149c21){const _0x26b6b1=window['getSelection']();_0x26b6b1['removeAllRanges'](),_0x26b6b1['addRange'](_0x149c21);}}['extractImageFilesFromClipboard'](_0x45a535){const _0x3b2c0a=Array['from'](_0x45a535['items']||[]),_0x420cef=[];for(const _0x1427c4 of _0x3b2c0a){if(_0x1427c4['kind']==='file'&&_0x1427c4['type']&&_0x1427c4['type']['startsWith']('image/')){const _0x5973a4=_0x1427c4['getAsFile']();if(_0x5973a4)_0x420cef['push'](_0x5973a4);}}return _0x420cef;}['addAndInsertImages'](_0x5abedd){const _0x2ce267=_0x5abedd['map'](_0x1a4352=>this['prepareAttachmentFile'](_0x1a4352))['filter'](Boolean);if(_0x2ce267['length']===0x0)return;const _0xfd3159=_0x2ce267['map'](_0x183cbe=>_0x183cbe['file']);try{this['options']['onAddAttachments'](_0xfd3159);}catch(_0xb0e078){console['error']('Failed\x20to\x20add\x20attachments:',_0xb0e078);}for(const {name:_0x438d98,objectUrl:_0xec9220}of _0x2ce267){this['insertAttachmentImage'](_0x438d98,_0xec9220);}this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));}['prepareAttachmentFile'](_0xae53b2){const _0x2e4090=this['sanitizeFilename'](_0xae53b2['name']||this['defaultImageName'](_0xae53b2['type']));if(!_0x2e4090)return null;const _0x51e55e=this['getUniqueAttachmentName'](_0x2e4090),_0x1d04af=_0x51e55e===_0xae53b2['name']?_0xae53b2:new File([_0xae53b2],_0x51e55e,{'type':_0xae53b2['type'],'lastModified':_0xae53b2['lastModified']}),_0x358c4f=URL['createObjectURL'](_0x1d04af);return this['attachmentObjectUrls']['set'](_0x51e55e,_0x358c4f),{'name':_0x51e55e,'file':_0x1d04af,'objectUrl':_0x358c4f};}['getUniqueAttachmentName'](_0x37711f){const _0x1082c5=_0x58b8df=>{if(this['attachmentObjectUrls']['has'](_0x58b8df))return!![];if(this['options']['isAttachmentNameTaken'])try{return Boolean(this['options']['isAttachmentNameTaken'](_0x58b8df));}catch{return![];}return![];};if(!_0x1082c5(_0x37711f))return _0x37711f;const {stem:_0x5f4ead,ext:_0x174146}=this['splitFilename'](_0x37711f);for(let _0x5712ca=0x2;_0x5712ca<0x3e8;_0x5712ca++){const _0x40cf47=_0x5f4ead+'-'+_0x5712ca+_0x174146;if(!_0x1082c5(_0x40cf47))return _0x40cf47;}return _0x5f4ead+'-'+Date['now']()+_0x174146;}['splitFilename'](_0x2d5bc9){const _0x251ceb=_0x2d5bc9['lastIndexOf']('.');if(_0x251ceb<=0x0||_0x251ceb===_0x2d5bc9['length']-0x1)return{'stem':_0x2d5bc9,'ext':''};return{'stem':_0x2d5bc9['slice'](0x0,_0x251ceb),'ext':_0x2d5bc9['slice'](_0x251ceb)};}['sanitizeFilename'](_0x1dd9f4){const _0x2793d1=String(_0x1dd9f4||'')['split']('/')['pop']()['split']('\x5c')['pop']();return _0x2793d1['replace'](/[\u0000-\u001F\u007F]/g,'')['trim']();}['defaultImageName'](_0x59edfe){const _0x2ca65f=this['extensionForMime'](_0x59edfe);return'pasted-image-'+Date['now']()+_0x2ca65f;}['extensionForMime'](_0x1a640b){switch(_0x1a640b){case'image/png':return'.png';case'image/jpeg':return'.jpg';case'image/gif':return'.gif';case'image/webp':return'.webp';case'image/svg+xml':return'.svg';default:return'.png';}}['insertAttachmentImage'](_0x19c70d,_0x4ecd75){const _0x2f7655=document['createElement']('img');_0x2f7655['src']=_0x4ecd75,_0x2f7655['alt']=_0x19c70d,_0x2f7655['setAttribute']('data-attachment-name',_0x19c70d),_0x2f7655['draggable']=!![];const _0x3c86a0=window['getSelection']();let _0xd3ba42=![];if(_0x3c86a0&&_0x3c86a0['rangeCount']>0x0){const _0x5b4fa6=_0x3c86a0['getRangeAt'](0x0);_0xd3ba42=this['editor']['contains'](_0x5b4fa6['commonAncestorContainer'])||this['editor']===_0x5b4fa6['commonAncestorContainer'];}if(!_0xd3ba42){this['editor']['appendChild'](_0x2f7655);const _0x1ede43=document['createRange']();_0x1ede43['setStartAfter'](_0x2f7655),_0x1ede43['collapse'](!![]),_0x3c86a0['removeAllRanges'](),_0x3c86a0['addRange'](_0x1ede43);return;}const _0x4cbf7e=_0x3c86a0['getRangeAt'](0x0);_0x4cbf7e['deleteContents'](),_0x4cbf7e['insertNode'](_0x2f7655),_0x4cbf7e['setStartAfter'](_0x2f7655),_0x4cbf7e['collapse'](!![]),_0x3c86a0['removeAllRanges'](),_0x3c86a0['addRange'](_0x4cbf7e);}['toggleInlineCode'](){const _0x451305=window['getSelection']();if(_0x451305['rangeCount']===0x0)return;const _0x55031c=_0x451305['getRangeAt'](0x0),_0x153a3a=_0x55031c['toString']();if(_0x153a3a){const _0x432a55=document['createElement']('code');_0x432a55['textContent']=_0x153a3a,_0x55031c['deleteContents'](),_0x55031c['insertNode'](_0x432a55),_0x55031c['setStartAfter'](_0x432a55),_0x55031c['setEndAfter'](_0x432a55),_0x451305['removeAllRanges'](),_0x451305['addRange'](_0x55031c);}}['insertCodeBlock'](){const _0x38f174=window['getSelection']();if(_0x38f174['rangeCount']===0x0)return;const _0x53dd9e=_0x38f174['getRangeAt'](0x0),_0x3da40b=_0x53dd9e['toString'](),_0x1ec16a=document['createElement']('pre'),_0x28abeb=document['createElement']('code');_0x28abeb['textContent']=_0x3da40b||'\x0a',_0x1ec16a['appendChild'](_0x28abeb),_0x53dd9e['deleteContents'](),_0x53dd9e['insertNode'](_0x1ec16a);const _0xa31a40=document['createElement']('p');_0xa31a40['innerHTML']='<br>',_0x1ec16a['parentNode']['insertBefore'](_0xa31a40,_0x1ec16a['nextSibling']);const _0x3e2b0e=document['createRange']();!_0x3da40b?(_0x3e2b0e['setStart'](_0x28abeb['firstChild'],0x0),_0x3e2b0e['setEnd'](_0x28abeb['firstChild'],0x0)):(_0x3e2b0e['selectNodeContents'](_0x28abeb),_0x3e2b0e['collapse'](![])),_0x38f174['removeAllRanges'](),_0x38f174['addRange'](_0x3e2b0e);}['updatePlaceholder'](){const _0x2476ed=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');_0x2476ed?this['editor']['classList']['remove']('empty'):this['editor']['classList']['add']('empty');}['setMarkdown'](_0x19b10d){if(!_0x19b10d||!_0x19b10d['trim']()){this['editor']['innerHTML']='',this['updatePlaceholder']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']='':this['element']['textContent']='';return;}const _0x1916ff=this['preprocessColorSyntax'](_0x19b10d),_0x2c5d44=window['marked']['parse'](_0x1916ff);this['editor']['innerHTML']=_0x2c5d44,this['rewriteAttachmentImages'](),this['rewriteMentionLinks'](),this['addLinkHints'](),this['updatePlaceholder'](),this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x19b10d:this['element']['textContent']=_0x19b10d;}['rewriteAttachmentImages'](){const _0xfe4184=this['editor']['querySelectorAll']('img');_0xfe4184['forEach'](_0x2128df=>{const _0x35cbf2=_0x2128df['getAttribute']('data-attachment-name'),_0x18ef40=_0x2128df['getAttribute']('src')||'',_0x2b0f46=this['parseAttachmentReference'](_0x18ef40)||this['parseTaskAttachmentUrl'](_0x18ef40),_0x269124=_0x35cbf2||(_0x2b0f46?_0x2b0f46['name']:null);if(!_0x269124)return;_0x2128df['setAttribute']('data-attachment-name',_0x269124);const _0xb38eef=this['attachmentObjectUrls']['get'](_0x269124)||(this['options']['resolveAttachmentUrl']?this['options']['resolveAttachmentUrl'](_0x269124):null);_0xb38eef&&(_0x2128df['src']=_0xb38eef);});}['rewriteMentionLinks'](){const _0xa7e238=this['editor']['querySelectorAll']('a[href^=\x22mention:\x22]');_0xa7e238['forEach'](_0xd5c87=>{const _0x3538bc=_0xd5c87['getAttribute']('href')||'',_0x47f899=_0x3538bc['replace']('mention:',''),_0x2f5151=_0xd5c87['textContent']||'',_0x4842d2=document['createElement']('span');_0x4842d2['className']='mention',_0x4842d2['setAttribute']('data-mention-user-id',_0x47f899),_0x4842d2['setAttribute']('contenteditable','false'),_0x4842d2['textContent']='@'+_0x2f5151;const _0x344077=_0xd5c87['previousSibling'];_0x344077&&_0x344077['nodeType']===Node['TEXT_NODE']&&_0x344077['textContent']['endsWith']('@')&&(_0x344077['textContent']=_0x344077['textContent']['slice'](0x0,-0x1)),_0xd5c87['parentNode']['replaceChild'](_0x4842d2,_0xd5c87);});}['addLinkHints'](){if(!this['options']['editable'])return;const _0x40ecee=this['editor']['querySelectorAll']('a');_0x40ecee['forEach'](_0x392a0b=>{const _0x5b25e3=_0x392a0b['getAttribute']('href')||'';if(_0x5b25e3['startsWith']('mention:'))return;const _0x3bb924=_0x392a0b['textContent']||_0x5b25e3,_0x1ec4f6=_0x3bb924+'\x20('+(this['linkHintText']||'Ctrl+click\x20to\x20follow')+')';_0x392a0b['setAttribute']('aria-label',_0x1ec4f6);});}['preprocessColorSyntax'](_0x15a971){if(!_0x15a971)return _0x15a971;const _0x343b5c=_0x102dd1=>{return String(_0x102dd1)['replace'](/\{color:(#[0-9A-Fa-f]{3,6})\}([\s\S]*?)\{\/color\}/g,(_0x2f6583,_0x1ab7d4,_0x4ec432)=>{const _0xecd8ea=_0x343b5c(_0x4ec432);return'<span\x20style=\x22color:\x20'+_0x1ab7d4+'\x22>'+_0xecd8ea+'</span>';});};return _0x343b5c(_0x15a971);}['parseAttachmentReference'](_0x67a6bd){if(!_0x67a6bd||typeof _0x67a6bd!=='string')return null;if(!_0x67a6bd['startsWith'](ATTACHMENT_SCHEME)&&!_0x67a6bd['startsWith'](ATTACHMENT_SCHEME+'//'))return null;const _0x1783c9=_0x67a6bd['replace'](ATTACHMENT_SCHEME+'//','')['replace'](ATTACHMENT_SCHEME,'');if(!_0x1783c9)return null;try{return{'name':decodeURIComponent(_0x1783c9)};}catch{return{'name':_0x1783c9};}}['parseTaskAttachmentUrl'](_0x497048){if(!_0x497048||typeof _0x497048!=='string')return null;const _0xa1d5e7=_0x497048['match'](/\/tasks\/[^/]+\/attachments\/([^?#]+)/);if(!_0xa1d5e7)return null;const _0x5651b2=_0xa1d5e7[0x1];try{return{'name':decodeURIComponent(_0x5651b2)};}catch{return{'name':_0x5651b2};}}['updateAttachmentFile'](_0xcb40a6,_0x21725c){const _0xa7ab01=this['attachmentObjectUrls']['get'](_0xcb40a6);if(_0xa7ab01)try{URL['revokeObjectURL'](_0xa7ab01);}catch{}const _0x4b692d=URL['createObjectURL'](_0x21725c);this['attachmentObjectUrls']['set'](_0xcb40a6,_0x4b692d);const _0x3f6633=this['editor']['querySelector']('img[data-attachment-name=\x22'+CSS['escape'](_0xcb40a6)+'\x22]');return _0x3f6633&&(_0x3f6633['src']=_0x4b692d),_0x4b692d;}['getMarkdown'](){const _0x4bbd1f=this['editor']['innerHTML'];if(!_0x4bbd1f||_0x4bbd1f['trim']()===''||_0x4bbd1f==='<br>')return'';return this['turndownService']['turndown'](_0x4bbd1f)['replace'](/\u200B/g,'');}['getValue'](){return this['getMarkdown']();}['setValue'](_0x18aa13){this['setMarkdown'](_0x18aa13);}['focus'](){this['editor']['focus']();}['clear'](){this['editor']['innerHTML']='',this['updatePlaceholder']();}['setEditable'](_0x94bba0){this['editor']['contentEditable']=_0x94bba0,this['options']['editable']=_0x94bba0;}['handleMentionInput'](_0x174c1d){if(!this['options']['fetchUsers'])return;const _0x48ecb2=window['getSelection']();if(!_0x48ecb2||_0x48ecb2['rangeCount']===0x0){this['closeMentionDropdown']();return;}const _0x1752ec=_0x48ecb2['getRangeAt'](0x0),_0x28e8f1=_0x1752ec['startContainer'];if(_0x28e8f1['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x350f2e=_0x28e8f1['textContent']||'',_0x291631=_0x1752ec['startOffset'],_0x858277=_0x350f2e['slice'](0x0,_0x291631),_0x214a85=_0x858277['lastIndexOf']('@');if(_0x214a85===-0x1){this['closeMentionDropdown']();return;}const _0x29ec69=_0x214a85>0x0?_0x858277[_0x214a85-0x1]:'\x20';if(!/\s/['test'](_0x29ec69)&&_0x214a85!==0x0){this['closeMentionDropdown']();return;}const _0x157ce8=_0x858277['slice'](_0x214a85+0x1);if(/[\s\n]/['test'](_0x157ce8)){this['closeMentionDropdown']();return;}this['mentionState']['active']=!![],this['mentionState']['query']=_0x157ce8['toLowerCase'](),this['mentionState']['startOffset']=_0x214a85,this['mentionState']['startNode']=_0x28e8f1,this['showMentionDropdown']();}async['showMentionDropdown'](){if(!this['usersCache'])try{const _0x3e5f87=await this['options']['fetchUsers']();this['usersCache']=_0x3e5f87['users']||_0x3e5f87||[];}catch(_0x19ec07){console['error']('Failed\x20to\x20fetch\x20users\x20for\x20@mention:',_0x19ec07),this['closeMentionDropdown']();return;}this['mentionState']['users']=this['usersCache'];const _0x12dbeb=this['mentionState']['query'];this['mentionState']['filteredUsers']=this['mentionState']['users']['filter'](_0x309672=>{const _0x1d8369=(_0x309672['name']||'')['toLowerCase'](),_0x28b5f7=(_0x309672['username']||'')['toLowerCase']();return _0x1d8369['includes'](_0x12dbeb)||_0x28b5f7['includes'](_0x12dbeb);})['slice'](0x0,0x8),this['mentionState']['selectedIndex']=0x0;if(this['mentionState']['filteredUsers']['length']===0x0){this['closeMentionDropdown']();return;}this['renderMentionDropdown'](),this['positionMentionDropdown']();}['renderMentionDropdown'](){!this['mentionDropdown']&&(this['mentionDropdown']=document['createElement']('div'),this['mentionDropdown']['className']='mention-dropdown',document['body']['appendChild'](this['mentionDropdown']),this['mentionClickOutsideHandler']=_0x59ba0a=>{!this['mentionDropdown']['contains'](_0x59ba0a['target'])&&!this['editor']['contains'](_0x59ba0a['target'])&&this['closeMentionDropdown']();},document['addEventListener']('click',this['mentionClickOutsideHandler']),this['mentionScrollHandler']=()=>{this['mentionState']['active']&&this['positionMentionDropdown']();},window['addEventListener']('scroll',this['mentionScrollHandler'],!![]));const _0x4ba412=this['mentionState']['filteredUsers'];this['mentionDropdown']['innerHTML']=_0x4ba412['map']((_0x5ae125,_0x4f2fdf)=>{const _0x64a5ca=_0x4f2fdf===this['mentionState']['selectedIndex'],_0x21a562=_0x5ae125['name']||_0x5ae125['username']||'Unknown',_0x597065=_0x5ae125['username']||'',_0x31e0df=this['getInitials'](_0x21a562),_0x3f774e=this['getAvatarColorIndex'](_0x597065||_0x5ae125['id']||_0x21a562);return'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22mention-option\x20'+(_0x64a5ca?'mention-option-selected':'')+'\x22\x20data-index=\x22'+_0x4f2fdf+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-avatar\x20avatar-color-'+_0x3f774e+'\x22>'+this['escapeHtmlForMention'](_0x31e0df)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-option-name\x22>'+this['escapeHtmlForMention'](_0x21a562)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x597065?'<span\x20class=\x22mention-option-username\x22>@'+this['escapeHtmlForMention'](_0x597065)+'</span>':'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20';})['join'](''),this['mentionDropdown']['querySelectorAll']('.mention-option')['forEach'](_0x3f686c=>{_0x3f686c['addEventListener']('mousedown',_0x30a6ad=>{_0x30a6ad['preventDefault']();const _0x193715=parseInt(_0x3f686c['dataset']['index'],0xa);this['insertMention'](this['mentionState']['filteredUsers'][_0x193715]);}),_0x3f686c['addEventListener']('mouseenter',()=>{const _0x125de2=parseInt(_0x3f686c['dataset']['index'],0xa);this['mentionState']['selectedIndex']=_0x125de2,this['updateMentionSelection']();});}),this['mentionDropdown']['style']['display']='block';}['positionMentionDropdown'](){if(!this['mentionDropdown'])return;const _0x161c6e=window['getSelection']();if(!_0x161c6e||_0x161c6e['rangeCount']===0x0)return;const _0xf231b7=_0x161c6e['getRangeAt'](0x0),_0x148c39=_0xf231b7['getBoundingClientRect'](),_0xc4e080=0x104,_0x400500=Math['min'](0xf0,this['mentionState']['filteredUsers']['length']*0x24+0x8),_0x1e9f27=window['innerWidth'],_0x4c443f=window['innerHeight'],_0x39c90a=_0x4c443f-_0x148c39['bottom'],_0x520cdf=_0x148c39['top'],_0x11ab4c=_0x39c90a<_0x400500+0xa&&_0x520cdf>_0x39c90a;let _0x4df562,_0x1c34a3;_0x11ab4c?_0x4df562=_0x148c39['top']+window['scrollY']-_0x400500-0x4:_0x4df562=_0x148c39['bottom']+window['scrollY']+0x4,_0x1c34a3=_0x148c39['left']+window['scrollX'],_0x1c34a3+_0xc4e080>_0x1e9f27-0xa&&(_0x1c34a3=_0x1e9f27-_0xc4e080-0xa),_0x1c34a3<0xa&&(_0x1c34a3=0xa),this['mentionDropdown']['style']['position']='absolute',this['mentionDropdown']['style']['top']=_0x4df562+'px',this['mentionDropdown']['style']['left']=_0x1c34a3+'px';}['mentionNavigate'](_0x5ac8db){const _0xa4de92=this['mentionState']['filteredUsers']['length'];if(_0xa4de92===0x0)return;this['mentionState']['selectedIndex']=(this['mentionState']['selectedIndex']+_0x5ac8db+_0xa4de92)%_0xa4de92,this['updateMentionSelection']();}['updateMentionSelection'](){if(!this['mentionDropdown'])return;const _0x352818=this['mentionDropdown']['querySelectorAll']('.mention-option');_0x352818['forEach']((_0x18daf9,_0x2c2372)=>{_0x2c2372===this['mentionState']['selectedIndex']?(_0x18daf9['classList']['add']('mention-option-selected'),_0x18daf9['scrollIntoView']({'block':'nearest'})):_0x18daf9['classList']['remove']('mention-option-selected');});}['insertMention'](_0x4e2fe6){if(!_0x4e2fe6)return;const _0x58f9c6=window['getSelection']();if(!_0x58f9c6||_0x58f9c6['rangeCount']===0x0)return;const _0x3add26=_0x58f9c6['getRangeAt'](0x0),_0x336463=this['mentionState']['startNode'];if(!_0x336463||_0x336463['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x10d3c5=_0x336463['textContent']||'',_0x8dbc6e=this['mentionState']['startOffset'],_0x391f28=_0x3add26['startOffset'],_0x2ab197=_0x10d3c5['slice'](0x0,_0x8dbc6e),_0x40df0f=_0x10d3c5['slice'](_0x391f28),_0x28fd05=document['createElement']('span');_0x28fd05['className']='mention',_0x28fd05['setAttribute']('data-mention-user-id',_0x4e2fe6['id']),_0x28fd05['setAttribute']('contenteditable','false'),_0x28fd05['textContent']='@'+(_0x4e2fe6['name']||_0x4e2fe6['username']);const _0x1f1c42=document['createTextNode'](_0x2ab197),_0x2f555f=document['createTextNode']('\x20'+_0x40df0f),_0x1cc51e=_0x336463['parentNode'];_0x1cc51e['insertBefore'](_0x1f1c42,_0x336463),_0x1cc51e['insertBefore'](_0x28fd05,_0x336463),_0x1cc51e['insertBefore'](_0x2f555f,_0x336463),_0x1cc51e['removeChild'](_0x336463);const _0x1a0307=document['createRange']();_0x1a0307['setStart'](_0x2f555f,0x1),_0x1a0307['collapse'](!![]),_0x58f9c6['removeAllRanges'](),_0x58f9c6['addRange'](_0x1a0307),this['closeMentionDropdown'](),this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));}['closeMentionDropdown'](){this['mentionState']['active']=![],this['mentionState']['query']='',this['mentionState']['filteredUsers']=[],this['mentionState']['selectedIndex']=0x0,this['mentionDropdown']&&(this['mentionDropdown']['style']['display']='none');}['escapeHtmlForMention'](_0x427bbd){const _0x590a74=document['createElement']('div');return _0x590a74['textContent']=_0x427bbd,_0x590a74['innerHTML'];}['getInitials'](_0x3a905a){if(!_0x3a905a)return'?';const _0x1d04d1=_0x3a905a['trim']()['split'](/\s+/);if(_0x1d04d1['length']>=0x2)return(_0x1d04d1[0x0][0x0]+_0x1d04d1[_0x1d04d1['length']-0x1][0x0])['toUpperCase']();return _0x3a905a['substring'](0x0,0x2)['toUpperCase']();}['getAvatarColorIndex'](_0x16c340){if(!_0x16c340)return 0x6;let _0x2304a9=0x0;for(let _0x157792=0x0;_0x157792<_0x16c340['length'];_0x157792++){_0x2304a9=_0x16c340['charCodeAt'](_0x157792)+((_0x2304a9<<0x5)-_0x2304a9);}return Math['abs'](_0x2304a9)%0xa;}['destroy'](){this['selectionChangeHandler']&&document['removeEventListener']('selectionchange',this['selectionChangeHandler']);this['linkClickHandler']&&this['editor']['removeEventListener']('click',this['linkClickHandler']);this['linkMouseEnterHandler']&&this['editor']['removeEventListener']('mouseover',this['linkMouseEnterHandler']);this['linkMouseLeaveHandler']&&this['editor']['removeEventListener']('mouseout',this['linkMouseLeaveHandler']);this['linkTooltipTimeout']&&clearTimeout(this['linkTooltipTimeout']);this['linkTooltip']&&(this['linkTooltip']['remove'](),this['linkTooltip']=null);this['linkDialog']&&(this['linkDialog']['remove'](),this['linkDialog']=null,this['linkDialogContext']=null,this['linkDialogElements']=null);this['mentionDropdown']&&(this['mentionDropdown']['remove'](),this['mentionDropdown']=null);this['mentionClickOutsideHandler']&&document['removeEventListener']('click',this['mentionClickOutsideHandler']);this['mentionScrollHandler']&&window['removeEventListener']('scroll',this['mentionScrollHandler'],!![]);for(const _0x2fb4cc of this['attachmentObjectUrls']['values']()){try{URL['revokeObjectURL'](_0x2fb4cc);}catch{}}this['attachmentObjectUrls']['clear'](),this['container']?this['container']['remove']():this['editor']['remove'](),this['element']['style']['display']='';}}typeof window!=='undefined'&&(window['MarkdownEditor']=MarkdownEditor);
|
|
1
|
+
const ATTACHMENT_SCHEME='attachment:',INTERNAL_DRAG_MIME='application/x-profound-editor-image',LINK_DIALOG_STYLE_ID='markdown-editor-link-dialog-styles',ICONS={'bold':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M6\x204h8a4\x204\x200\x200\x201\x204\x204\x204\x204\x200\x200\x201-4\x204H6z\x22></path><path\x20d=\x22M6\x2012h9a4\x204\x200\x200\x201\x204\x204\x204\x204\x200\x200\x201-4\x204H6z\x22></path></svg>','italic':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x2219\x22\x20y1=\x224\x22\x20x2=\x2210\x22\x20y2=\x224\x22></line><line\x20x1=\x2214\x22\x20y1=\x2220\x22\x20x2=\x225\x22\x20y2=\x2220\x22></line><line\x20x1=\x2215\x22\x20y1=\x224\x22\x20x2=\x229\x22\x20y2=\x2220\x22></line></svg>','strike':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x225\x22\x20y1=\x2212\x22\x20x2=\x2219\x22\x20y2=\x2212\x22></line><path\x20d=\x22M16\x206a4\x204\x200\x200\x200-4-4c-2.48\x200-4\x201.79-4\x204\x200\x201.25.5\x202.5\x201.5\x203\x22></path><path\x20d=\x22M9\x2018c0\x201.79\x201.79\x203\x204\x203\x202.48\x200\x204-1.79\x204-4\x200-1.25-.5-2.5-1.5-3\x22></path></svg>','link':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M10\x2013a5\x205\x200\x200\x200\x207.54.54l3-3a5\x205\x200\x200\x200-7.07-7.07l-1.72\x201.71\x22></path><path\x20d=\x22M14\x2011a5\x205\x200\x200\x200-7.54-.54l-3\x203a5\x205\x200\x200\x200\x207.07\x207.07l1.71-1.71\x22></path></svg>','code':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><polyline\x20points=\x2216\x2018\x2022\x2012\x2016\x206\x22></polyline><polyline\x20points=\x228\x206\x202\x2012\x208\x2018\x22></polyline></svg>','listBullet':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x228\x22\x20y1=\x226\x22\x20x2=\x2221\x22\x20y2=\x226\x22></line><line\x20x1=\x228\x22\x20y1=\x2212\x22\x20x2=\x2221\x22\x20y2=\x2212\x22></line><line\x20x1=\x228\x22\x20y1=\x2218\x22\x20x2=\x2221\x22\x20y2=\x2218\x22></line><line\x20x1=\x223\x22\x20y1=\x226\x22\x20x2=\x223.01\x22\x20y2=\x226\x22></line><line\x20x1=\x223\x22\x20y1=\x2212\x22\x20x2=\x223.01\x22\x20y2=\x2212\x22></line><line\x20x1=\x223\x22\x20y1=\x2218\x22\x20x2=\x223.01\x22\x20y2=\x2218\x22></line></svg>','listOrdered':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><line\x20x1=\x2210\x22\x20y1=\x226\x22\x20x2=\x2221\x22\x20y2=\x226\x22></line><line\x20x1=\x2210\x22\x20y1=\x2212\x22\x20x2=\x2221\x22\x20y2=\x2212\x22></line><line\x20x1=\x2210\x22\x20y1=\x2218\x22\x20x2=\x2221\x22\x20y2=\x2218\x22></line><path\x20d=\x22M4\x206h1v4\x22></path><path\x20d=\x22M4\x2010h2\x22></path><path\x20d=\x22M6\x2018H4c0-1\x202-2\x202-3s-1-1.5-2-1\x22></path></svg>','blockquote':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M21\x2015a2\x202\x200\x200\x201-2\x202H7l-4\x204V5a2\x202\x200\x200\x201\x202-2h14a2\x202\x200\x200\x201\x202\x202z\x22></path></svg>','codeBlock':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><rect\x20x=\x223\x22\x20y=\x223\x22\x20width=\x2218\x22\x20height=\x2218\x22\x20rx=\x222\x22\x20ry=\x222\x22></rect><polyline\x20points=\x229\x208\x205\x2012\x209\x2016\x22></polyline><polyline\x20points=\x2215\x208\x2019\x2012\x2015\x2016\x22></polyline></svg>','header':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M4\x2012h8\x22></path><path\x20d=\x22M4\x2018V6\x22></path><path\x20d=\x22M12\x2018V6\x22></path><path\x20d=\x22M17\x2012l3-2v8\x22></path></svg>','color':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M4\x2020h16\x22></path><path\x20d=\x22M6\x2016l6-14\x206\x2014\x22></path><path\x20d=\x22M8\x2012h8\x22></path></svg>'},LINK_DIALOG_STYLES='\x0a.markdown-editor-link-modal\x20{\x0a\x20\x20position:\x20fixed;\x0a\x20\x20inset:\x200;\x0a\x20\x20display:\x20flex;\x0a\x20\x20align-items:\x20center;\x0a\x20\x20justify-content:\x20center;\x0a\x20\x20z-index:\x2010020;\x0a}\x0a\x0a.markdown-editor-link-modal[hidden]\x20{\x0a\x20\x20display:\x20none\x20!important;\x0a}\x0a\x0a.markdown-editor-link-backdrop\x20{\x0a\x20\x20position:\x20absolute;\x0a\x20\x20inset:\x200;\x0a\x20\x20background:\x20rgba(15,\x2023,\x2042,\x200.45);\x0a}\x0a\x0a.markdown-editor-link-dialog\x20{\x0a\x20\x20position:\x20relative;\x0a\x20\x20width:\x20min(460px,\x20calc(100vw\x20-\x2024px));\x0a\x20\x20background:\x20var(--color-surface,\x20var(--feedback-surface,\x20#ffffff));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a\x20\x20border:\x201px\x20solid\x20var(--color-border,\x20var(--feedback-border,\x20#d1d5db));\x0a\x20\x20border-radius:\x20var(--radius-medium,\x2010px);\x0a\x20\x20box-shadow:\x200\x2018px\x2042px\x20rgba(15,\x2023,\x2042,\x200.25);\x0a\x20\x20padding:\x2014px;\x0a\x20\x20display:\x20flex;\x0a\x20\x20flex-direction:\x20column;\x0a\x20\x20gap:\x2012px;\x0a}\x0a\x0a.markdown-editor-link-header\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20align-items:\x20center;\x0a\x20\x20justify-content:\x20space-between;\x0a\x20\x20gap:\x208px;\x0a}\x0a\x0a.markdown-editor-link-title\x20{\x0a\x20\x20margin:\x200;\x0a\x20\x20font-size:\x2016px;\x0a\x20\x20font-weight:\x20600;\x0a}\x0a\x0a.markdown-editor-link-close\x20{\x0a\x20\x20width:\x2028px;\x0a\x20\x20height:\x2028px;\x0a\x20\x20border:\x20none;\x0a\x20\x20border-radius:\x20var(--radius-small,\x208px);\x0a\x20\x20background:\x20transparent;\x0a\x20\x20color:\x20var(--color-text-muted,\x20var(--feedback-text-muted,\x20#6b7280));\x0a\x20\x20font-size:\x2020px;\x0a\x20\x20line-height:\x201;\x0a\x20\x20cursor:\x20pointer;\x0a}\x0a\x0a.markdown-editor-link-close:hover\x20{\x0a\x20\x20background:\x20var(--color-surface-muted,\x20var(--feedback-surface-muted,\x20#f3f4f6));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a}\x0a\x0a.markdown-editor-link-form\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20flex-direction:\x20column;\x0a\x20\x20gap:\x2010px;\x0a}\x0a\x0a.markdown-editor-link-field-grid\x20{\x0a\x20\x20display:\x20grid;\x0a\x20\x20gap:\x2010px;\x0a}\x0a\x0a.markdown-editor-link-label\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20flex-direction:\x20column;\x0a\x20\x20gap:\x206px;\x0a\x20\x20font-size:\x2012px;\x0a\x20\x20font-weight:\x20600;\x0a\x20\x20color:\x20var(--color-text-muted,\x20var(--feedback-text-muted,\x20#4b5563));\x0a}\x0a\x0a.markdown-editor-link-input\x20{\x0a\x20\x20width:\x20100%;\x0a\x20\x20padding:\x209px\x2010px;\x0a\x20\x20border:\x201px\x20solid\x20var(--color-border,\x20var(--feedback-border,\x20#d1d5db));\x0a\x20\x20border-radius:\x20var(--radius-small,\x208px);\x0a\x20\x20background:\x20var(--color-surface,\x20var(--feedback-surface,\x20#ffffff));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a\x20\x20font-size:\x2014px;\x0a}\x0a\x0a.markdown-editor-link-input:focus\x20{\x0a\x20\x20outline:\x20none;\x0a\x20\x20border-color:\x20var(--color-primary,\x20#3f72ff);\x0a\x20\x20box-shadow:\x200\x200\x200\x203px\x20rgba(63,\x20114,\x20255,\x200.2);\x0a}\x0a\x0a.markdown-editor-link-actions\x20{\x0a\x20\x20display:\x20flex;\x0a\x20\x20justify-content:\x20flex-end;\x0a\x20\x20gap:\x208px;\x0a}\x0a\x0a.markdown-editor-link-btn\x20{\x0a\x20\x20border:\x201px\x20solid\x20transparent;\x0a\x20\x20border-radius:\x20var(--radius-small,\x208px);\x0a\x20\x20padding:\x207px\x2012px;\x0a\x20\x20font-size:\x2013px;\x0a\x20\x20font-weight:\x20600;\x0a\x20\x20cursor:\x20pointer;\x0a}\x0a\x0a.markdown-editor-link-btn-secondary\x20{\x0a\x20\x20background:\x20var(--color-surface-muted,\x20var(--feedback-surface-muted,\x20#f3f4f6));\x0a\x20\x20color:\x20var(--color-text,\x20var(--feedback-text,\x20#111827));\x0a\x20\x20border-color:\x20var(--color-border,\x20var(--feedback-border,\x20#d1d5db));\x0a}\x0a\x0a.markdown-editor-link-btn-secondary:hover\x20{\x0a\x20\x20background:\x20var(--color-bg-secondary,\x20var(--feedback-surface-hover,\x20#e5e7eb));\x0a}\x0a\x0a.markdown-editor-link-btn-danger\x20{\x0a\x20\x20background:\x20transparent;\x0a\x20\x20color:\x20var(--color-danger,\x20#dc2626);\x0a\x20\x20border-color:\x20rgba(220,\x2038,\x2038,\x200.35);\x0a}\x0a\x0a.markdown-editor-link-btn-danger:hover\x20{\x0a\x20\x20background:\x20rgba(220,\x2038,\x2038,\x200.08);\x0a}\x0a\x0a.markdown-editor-link-btn-primary\x20{\x0a\x20\x20background:\x20var(--color-primary,\x20#3f72ff);\x0a\x20\x20color:\x20#ffffff;\x0a}\x0a\x0a.markdown-editor-link-btn-primary:hover\x20{\x0a\x20\x20background:\x20var(--color-accent,\x20#2563eb);\x0a}\x0a\x0a[data-theme=\x22dark\x22]\x20.markdown-editor-link-backdrop\x20{\x0a\x20\x20background:\x20rgba(2,\x206,\x2023,\x200.65);\x0a}\x0a\x0a[data-theme=\x22dark\x22]\x20.markdown-editor-link-dialog\x20{\x0a\x20\x20box-shadow:\x200\x2018px\x2042px\x20rgba(0,\x200,\x200,\x200.5);\x0a}\x0a\x0a@media\x20(max-width:\x20480px)\x20{\x0a\x20\x20.markdown-editor-link-dialog\x20{\x0a\x20\x20\x20\x20width:\x20calc(100vw\x20-\x2016px);\x0a\x20\x20\x20\x20padding:\x2012px;\x0a\x20\x20}\x0a\x0a\x20\x20.markdown-editor-link-actions\x20{\x0a\x20\x20\x20\x20flex-wrap:\x20wrap;\x0a\x20\x20}\x0a\x0a\x20\x20.markdown-editor-link-btn\x20{\x0a\x20\x20\x20\x20flex:\x201\x201\x20calc(50%\x20-\x206px);\x0a\x20\x20\x20\x20text-align:\x20center;\x0a\x20\x20}\x0a}\x0a';export class MarkdownEditor{constructor(_0x9f4123,_0x27ed93={}){this['element']=_0x9f4123,this['options']={'placeholder':_0x27ed93['placeholder']||'Start\x20typing...','editable':_0x27ed93['editable']!==![],'onChange':_0x27ed93['onChange']||null,'minHeight':_0x27ed93['minHeight']||'100px','toolbar':_0x27ed93['toolbar']||![],'onAddAttachments':_0x27ed93['onAddAttachments']||null,'resolveAttachmentUrl':_0x27ed93['resolveAttachmentUrl']||null,'isAttachmentNameTaken':_0x27ed93['isAttachmentNameTaken']||null,'fetchUsers':_0x27ed93['fetchUsers']||null},this['mentionState']={'active':![],'query':'','startOffset':0x0,'startNode':null,'users':[],'filteredUsers':[],'selectedIndex':0x0},this['mentionDropdown']=null,this['usersCache']=null,this['linkDialog']=null,this['linkDialogContext']=null;const _0x27209a=window['TurndownService'];this['turndownService']=new _0x27209a({'headingStyle':'atx','codeBlockStyle':'fenced','emDelimiter':'_','bulletListMarker':'-'}),this['attachmentObjectUrls']=new Map(),this['registerTurndownRules'](),this['init']();}['registerTurndownRules'](){this['turndownService']['addRule']('profoundAttachmentImage',{'filter':_0x3eb554=>{return _0x3eb554&&_0x3eb554['nodeName']==='IMG'&&_0x3eb554['getAttribute']&&_0x3eb554['getAttribute']('data-attachment-name');},'replacement':(_0x5a416b,_0x51dbae)=>{const _0xf1ee15=_0x51dbae['getAttribute']('data-attachment-name')||'',_0x130ac0=_0x51dbae['getAttribute']('alt')||'',_0x49a280=_0xf1ee15['trim'](),_0x4d0894=this['escapeAltText'](_0x130ac0||_0x49a280),_0x57afbe=encodeURIComponent(_0x49a280);return'';}}),this['turndownService']['addRule']('profoundMention',{'filter':_0x7f4a62=>{return _0x7f4a62&&_0x7f4a62['nodeName']==='SPAN'&&_0x7f4a62['getAttribute']&&_0x7f4a62['getAttribute']('data-mention-user-id');},'replacement':(_0x16d670,_0x4acfb8)=>{const _0x15204e=_0x4acfb8['getAttribute']('data-mention-user-id')||'',_0x42d145=_0x4acfb8['textContent']||'',_0x48d504=_0x42d145['startsWith']('@')?_0x42d145['slice'](0x1):_0x42d145;return'['+_0x48d504+'](mention:'+_0x15204e+')';}}),this['turndownService']['addRule']('profoundColoredText',{'filter':_0x12019a=>{if(!_0x12019a)return![];if(_0x12019a['nodeName']==='FONT'&&_0x12019a['getAttribute']&&_0x12019a['getAttribute']('color'))return!![];if(_0x12019a['nodeName']==='SPAN'&&_0x12019a['style']&&_0x12019a['style']['color']){if(_0x12019a['getAttribute']&&_0x12019a['getAttribute']('data-mention-user-id'))return![];return!![];}return![];},'replacement':(_0x496a1e,_0x5d87b)=>{if(!_0x496a1e['trim']())return _0x496a1e;let _0x42a01c='';if(_0x5d87b['nodeName']==='FONT')_0x42a01c=_0x5d87b['getAttribute']('color')||'';else _0x5d87b['style']&&_0x5d87b['style']['color']&&(_0x42a01c=this['rgbToHex'](_0x5d87b['style']['color']));if(!_0x42a01c)return _0x496a1e;return'{color:'+_0x42a01c+'}'+_0x496a1e+'{/color}';}});}['rgbToHex'](_0x5607da){if(!_0x5607da)return'';if(_0x5607da['startsWith']('#'))return _0x5607da;const _0x56cf7d=_0x5607da['match'](/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(!_0x56cf7d)return _0x5607da;const _0x11136e=parseInt(_0x56cf7d[0x1],0xa),_0x578264=parseInt(_0x56cf7d[0x2],0xa),_0x2ca26d=parseInt(_0x56cf7d[0x3],0xa);return'#'+[_0x11136e,_0x578264,_0x2ca26d]['map'](_0x3b735d=>_0x3b735d['toString'](0x10)['padStart'](0x2,'0'))['join']('')['toUpperCase']();}['escapeAltText'](_0x12d6ca){return String(_0x12d6ca||'')['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 _0x5a1524=this['element']['textContent']||this['element']['value']||'';_0x5a1524['trim']()&&this['setMarkdown'](_0x5a1524);}['createToolbar'](){this['toolbar']=document['createElement']('div'),this['toolbar']['className']='markdown-editor-toolbar',this['toolbarButtons']={};const _0x2e55cd=[{'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'}];_0x2e55cd['forEach'](_0x431469=>{if(_0x431469['separator']){const _0x4e7983=document['createElement']('div');_0x4e7983['className']='markdown-toolbar-separator',_0x4e7983['style']['width']='1px',_0x4e7983['style']['height']='16px',_0x4e7983['style']['background']='var(--color-border)',_0x4e7983['style']['margin']='0\x206px',_0x4e7983['style']['alignSelf']='center',this['toolbar']['appendChild'](_0x4e7983);}else{if(_0x431469['isDropdown']){const _0x2179e5=document['createElement']('div');_0x2179e5['className']='markdown-toolbar-dropdown',_0x2179e5['style']['position']='relative';const _0x305cb9=document['createElement']('button');_0x305cb9['type']='button',_0x305cb9['className']='markdown-editor-toolbar-btn\x20markdown-toolbar-dropdown-btn',_0x305cb9['tabIndex']=-0x1,_0x305cb9['innerHTML']=_0x431469['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>',_0x305cb9['title']=_0x431469['title'],_0x305cb9['dataset']['action']=_0x431469['action'];const _0x2d06d8=document['createElement']('div');_0x2d06d8['className']='markdown-toolbar-dropdown-menu',_0x2d06d8['style']['display']='none';if(_0x431469['action']==='header')this['createHeaderDropdown'](_0x2d06d8);else _0x431469['action']==='color'&&this['createColorDropdown'](_0x2d06d8);_0x305cb9['addEventListener']('click',_0x2a0c5f=>{_0x2a0c5f['preventDefault'](),_0x2a0c5f['stopPropagation'](),this['toggleDropdown'](_0x2d06d8,_0x305cb9);}),_0x2179e5['appendChild'](_0x305cb9),_0x2179e5['appendChild'](_0x2d06d8),this['toolbar']['appendChild'](_0x2179e5),this['toolbarButtons'][_0x431469['id']]={'button':_0x305cb9,'dropdown':_0x2d06d8,'command':_0x431469['command'],'tagName':_0x431469['tagName']};}else{const _0x1bc7c6=document['createElement']('button');_0x1bc7c6['type']='button',_0x1bc7c6['className']='markdown-editor-toolbar-btn',_0x1bc7c6['tabIndex']=-0x1,_0x1bc7c6['innerHTML']=_0x431469['icon'],_0x1bc7c6['title']=_0x431469['title'],_0x1bc7c6['dataset']['action']=_0x431469['action'],_0x1bc7c6['addEventListener']('click',_0x2690a6=>{_0x2690a6['preventDefault'](),this['handleToolbarAction'](_0x431469['action']);}),this['toolbar']['appendChild'](_0x1bc7c6),this['toolbarButtons'][_0x431469['id']]={'button':_0x1bc7c6,'command':_0x431469['command'],'tagName':_0x431469['tagName']};}}}),document['addEventListener']('click',_0x57a0ed=>{!this['toolbar']['contains'](_0x57a0ed['target'])&&this['closeAllDropdowns']();});}['createHeaderDropdown'](_0x564149){const _0x3c4142=[{'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'}];_0x3c4142['forEach'](_0xfa940d=>{const _0x21b071=document['createElement']('button');_0x21b071['type']='button',_0x21b071['className']='markdown-dropdown-item',_0x21b071['tabIndex']=-0x1,_0x21b071['innerHTML']='<span\x20style=\x22font-size:\x20'+(_0xfa940d['level']===0x0?'14px':0x14-_0xfa940d['level']*0x2+'px')+';\x20font-weight:\x20'+(_0xfa940d['level']===0x0?'normal':'bold')+'\x22>'+_0xfa940d['label']+'</span>',_0x21b071['addEventListener']('click',_0x766372=>{_0x766372['preventDefault'](),_0x766372['stopPropagation'](),this['applyHeader'](_0xfa940d['level']),this['closeAllDropdowns']();}),_0x564149['appendChild'](_0x21b071);});}['createColorDropdown'](_0x515d2d){const _0x4d5ba2=[{'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'}],_0x29789c=document['createElement']('div');_0x29789c['className']='markdown-color-grid',_0x29789c['style']['display']='grid',_0x29789c['style']['gridTemplateColumns']='repeat(3,\x201fr)',_0x29789c['style']['gap']='4px',_0x29789c['style']['padding']='8px',_0x4d5ba2['forEach'](_0x327b72=>{const _0x43583c=document['createElement']('button');_0x43583c['type']='button',_0x43583c['className']='markdown-color-btn',_0x43583c['tabIndex']=-0x1,_0x43583c['style']['width']='24px',_0x43583c['style']['height']='24px',_0x43583c['style']['backgroundColor']=_0x327b72['value'],_0x43583c['style']['border']='1px\x20solid\x20var(--color-border)',_0x43583c['style']['borderRadius']='4px',_0x43583c['style']['cursor']='pointer',_0x43583c['title']=_0x327b72['label'],_0x43583c['addEventListener']('click',_0x2c33c6=>{_0x2c33c6['preventDefault'](),_0x2c33c6['stopPropagation'](),this['applyColor'](_0x327b72['value']),this['closeAllDropdowns']();}),_0x29789c['appendChild'](_0x43583c);}),_0x515d2d['appendChild'](_0x29789c);const _0xb9c466=document['createElement']('button');_0xb9c466['type']='button',_0xb9c466['className']='markdown-dropdown-item',_0xb9c466['innerHTML']='<span>Remove\x20Color</span>',_0xb9c466['style']['borderTop']='1px\x20solid\x20var(--color-border)',_0xb9c466['style']['marginTop']='4px',_0xb9c466['style']['paddingTop']='8px',_0xb9c466['addEventListener']('click',_0x53c754=>{_0x53c754['preventDefault'](),_0x53c754['stopPropagation'](),this['removeColor'](),this['closeAllDropdowns']();}),_0x515d2d['appendChild'](_0xb9c466);}['toggleDropdown'](_0x4dcf65,_0x596053){const _0x5a9cc2=_0x4dcf65['style']['display']!=='none';this['toolbar']&&this['closeAllDropdowns'](),!_0x5a9cc2&&(_0x4dcf65['style']['display']='block',_0x596053['classList']['add']('active'));}['closeAllDropdowns'](){const _0x35afcd=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-menu');_0x35afcd['forEach'](_0x5bd8c8=>_0x5bd8c8['style']['display']='none');const _0x4961f0=this['toolbar']['querySelectorAll']('.markdown-toolbar-dropdown-btn');_0x4961f0['forEach'](_0x48bb47=>_0x48bb47['classList']['remove']('active'));}['applyHeader'](_0xe8661b){this['editor']['focus']();const _0xafea58=window['getSelection']();if(!_0xafea58||_0xafea58['rangeCount']===0x0)return;const _0x5312d9=_0xafea58['getRangeAt'](0x0);let _0x2d80b1=_0x5312d9['startContainer'];while(_0x2d80b1&&_0x2d80b1!==this['editor']){if(_0x2d80b1['nodeType']===Node['ELEMENT_NODE']){const _0x3182cd=window['getComputedStyle'](_0x2d80b1)['display'];if(_0x3182cd==='block'||['P','H1','H2','H3','H4','H5','H6','DIV']['includes'](_0x2d80b1['tagName']))break;}_0x2d80b1=_0x2d80b1['parentNode'];}_0xe8661b===0x0?document['execCommand']('formatBlock',![],'p'):document['execCommand']('formatBlock',![],'h'+_0xe8661b),this['editor']['dispatchEvent'](new Event('input'));}['applyColor'](_0xe7f9be){this['editor']['focus'](),document['execCommand']('foreColor',![],_0xe7f9be),this['editor']['dispatchEvent'](new Event('input'));}['removeColor'](){this['editor']['focus'](),document['execCommand']('removeFormat',![],null),this['editor']['dispatchEvent'](new Event('input'));}['handleToolbarAction'](_0x382687){this['editor']['focus']();switch(_0x382687){case'bold':case'italic':case'strikeThrough':case'insertUnorderedList':case'insertOrderedList':document['execCommand'](_0x382687,![],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 _0xb3abe9=document['createElement']('div');_0xb3abe9['className']='markdown-editor-link-modal',_0xb3abe9['hidden']=!![],_0xb3abe9['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'](_0xb3abe9),this['linkDialog']=_0xb3abe9,this['linkDialogElements']={'backdrop':_0xb3abe9['querySelector']('.markdown-editor-link-backdrop'),'title':_0xb3abe9['querySelector']('.markdown-editor-link-title'),'close':_0xb3abe9['querySelector']('.markdown-editor-link-close'),'form':_0xb3abe9['querySelector']('.markdown-editor-link-form'),'urlInput':_0xb3abe9['querySelector']('[data-link-field=\x22url\x22]'),'textInput':_0xb3abe9['querySelector']('[data-link-field=\x22text\x22]'),'remove':_0xb3abe9['querySelector']('[data-action=\x22remove\x22]'),'cancel':_0xb3abe9['querySelector']('[data-action=\x22cancel\x22]'),'submit':_0xb3abe9['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',_0x3b0c3f=>{_0x3b0c3f['preventDefault'](),this['applyLinkDialogResult']();}),this['linkDialog']['addEventListener']('keydown',_0x562a13=>{_0x562a13['key']==='Escape'&&(_0x562a13['preventDefault'](),this['closeLinkDialog']({'restoreSelection':!![]}));});}['openLinkDialog'](){const _0x562593=window['getSelection']();if(!_0x562593||_0x562593['rangeCount']===0x0)return;const _0x3fe848=_0x562593['getRangeAt'](0x0),_0x548c26=this['editor']['contains'](_0x3fe848['commonAncestorContainer'])||this['editor']===_0x3fe848['commonAncestorContainer'];if(!_0x548c26)return;this['toolbar']&&this['closeAllDropdowns']();this['ensureLinkDialog']();const _0x210f00=_0x3fe848['cloneRange'](),_0x4f17f0=this['findLinkAtRange'](_0x210f00),_0x40780f=_0x4f17f0?_0x4f17f0['getAttribute']('href')||'':'',_0x4822c5=_0x4f17f0?_0x4f17f0['textContent']||'':_0x210f00['toString']();this['linkDialogContext']={'range':_0x210f00,'existingLink':_0x4f17f0,'selectedText':_0x4822c5},this['linkDialogElements']['title']['textContent']=_0x4f17f0?'Edit\x20Link':'Insert\x20Link',this['linkDialogElements']['submit']['textContent']=_0x4f17f0?'Save\x20Link':'Insert\x20Link',this['linkDialogElements']['remove']['hidden']=!_0x4f17f0,this['linkDialogElements']['urlInput']['value']=_0x40780f,this['linkDialogElements']['textInput']['value']=_0x4822c5,this['linkDialog']['hidden']=![],this['linkDialogElements']['urlInput']['focus'](),this['linkDialogElements']['urlInput']['select']();}['closeLinkDialog']({restoreSelection:restoreSelection=![]}={}){if(!this['linkDialog'])return;const _0x55d72c=this['linkDialogContext'];this['linkDialog']['hidden']=!![],restoreSelection&&_0x55d72c?.['range']&&(this['editor']['focus'](),this['restoreRange'](_0x55d72c['range'])),this['linkDialogContext']=null;}['applyLinkDialogResult']({remove:remove=![]}={}){if(!this['linkDialog']||!this['linkDialogContext'])return;const _0x253c5f=this['linkDialogContext'],_0x3839b1=(this['linkDialogElements']['urlInput']['value']||'')['trim'](),_0x38a990=this['linkDialogElements']['textInput']['value']||'',_0x1635ae=_0x38a990['trim']();if(!remove&&!_0x3839b1){this['linkDialogElements']['urlInput']['focus']();return;}this['closeLinkDialog'](),this['editor']['focus'](),this['restoreRange'](_0x253c5f['range']);if(remove)_0x253c5f['existingLink']&&_0x253c5f['existingLink']['parentNode']?this['unwrapLinkElement'](_0x253c5f['existingLink']):document['execCommand']('unlink',![],null);else{if(_0x253c5f['existingLink']&&_0x253c5f['existingLink']['parentNode'])_0x253c5f['existingLink']['setAttribute']('href',_0x3839b1),_0x253c5f['existingLink']['textContent']=_0x1635ae||_0x3839b1;else{const _0x1d3815=window['getSelection']();if(!_0x1d3815||_0x1d3815['rangeCount']===0x0)return;const _0x1252c3=_0x1d3815['getRangeAt'](0x0),_0x4da38e=(_0x253c5f['selectedText']||'')['trim'](),_0x1e2496=_0x1635ae||_0x4da38e||_0x3839b1;_0x1252c3['deleteContents']();const _0x58dab4=document['createElement']('a');_0x58dab4['href']=_0x3839b1,_0x58dab4['textContent']=_0x1e2496,_0x1252c3['insertNode'](_0x58dab4),_0x1252c3['setStartAfter'](_0x58dab4),_0x1252c3['collapse'](!![]),_0x1d3815['removeAllRanges'](),_0x1d3815['addRange'](_0x1252c3);}}this['addLinkHints'](),this['updateToolbarState'](),this['editor']['dispatchEvent'](new Event('input'));}['ensureLinkDialogStyles'](){if(document['getElementById'](LINK_DIALOG_STYLE_ID))return;const _0x4e13ea=document['createElement']('style');_0x4e13ea['id']=LINK_DIALOG_STYLE_ID,_0x4e13ea['textContent']=LINK_DIALOG_STYLES,document['head']['appendChild'](_0x4e13ea);}['restoreRange'](_0x504baf){const _0x468c42=window['getSelection']();if(!_0x468c42)return;try{_0x468c42['removeAllRanges'](),_0x468c42['addRange'](_0x504baf);return;}catch(_0xf772bc){}const _0x55ec79=document['createRange']();_0x55ec79['selectNodeContents'](this['editor']),_0x55ec79['collapse'](![]),_0x468c42['removeAllRanges'](),_0x468c42['addRange'](_0x55ec79);}['findLinkAtRange'](_0x1f9049){if(!_0x1f9049)return null;const _0x2551aa=this['findParentLink'](_0x1f9049['startContainer']);if(_0x1f9049['collapsed'])return _0x2551aa;const _0x287472=this['findParentLink'](_0x1f9049['endContainer']);if(_0x2551aa&&_0x2551aa===_0x287472)return _0x2551aa;if(_0x2551aa&&_0x2551aa['contains'](_0x1f9049['endContainer']))return _0x2551aa;if(_0x287472&&_0x287472['contains'](_0x1f9049['startContainer']))return _0x287472;return null;}['findParentLink'](_0x344107){let _0x24a8a6=_0x344107;while(_0x24a8a6&&_0x24a8a6!==this['editor']){if(_0x24a8a6['nodeType']===Node['ELEMENT_NODE']&&_0x24a8a6['tagName']==='A'){const _0x2460b9=_0x24a8a6['getAttribute']('href')||'';if(_0x2460b9['startsWith']('mention:'))return null;return _0x24a8a6;}_0x24a8a6=_0x24a8a6['parentNode'];}return null;}['unwrapLinkElement'](_0x234482){const _0x60aa3e=_0x234482['parentNode'];if(!_0x60aa3e)return;while(_0x234482['firstChild']){_0x60aa3e['insertBefore'](_0x234482['firstChild'],_0x234482);}_0x60aa3e['removeChild'](_0x234482);}['isSelectionInTag'](_0x56d715){const _0x37fe1c=window['getSelection']();if(!_0x37fe1c||_0x37fe1c['rangeCount']===0x0)return![];let _0x3a43d2=_0x37fe1c['anchorNode'];while(_0x3a43d2&&_0x3a43d2!==this['editor']){if(_0x3a43d2['nodeType']===Node['ELEMENT_NODE']&&_0x3a43d2['tagName']===_0x56d715)return!![];_0x3a43d2=_0x3a43d2['parentNode'];}return![];}['updateToolbarState'](){if(!this['toolbarButtons'])return;for(const [_0x53a18d,_0xdf4dd2]of Object['entries'](this['toolbarButtons'])){let _0x1d9ee8=![];if(_0xdf4dd2['command'])try{_0x1d9ee8=document['queryCommandState'](_0xdf4dd2['command']);}catch(_0x122639){_0x1d9ee8=![];}else _0xdf4dd2['tagName']&&(_0x1d9ee8=this['isSelectionInTag'](_0xdf4dd2['tagName']));_0xdf4dd2['button']['classList']['toggle']('active',_0x1d9ee8);}}['bindEvents'](){this['editor']['addEventListener']('keydown',_0x1c1928=>this['handleKeydown'](_0x1c1928)),this['editor']['addEventListener']('input',_0x2e5ecb=>{this['handleMentionInput'](_0x2e5ecb),this['handleAutoFormat'](_0x2e5ecb);}),this['editor']['addEventListener']('input',()=>{const _0x228430=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');!_0x228430&&(this['editor']['innerHTML']='');this['updatePlaceholder']();const _0xedd811=this['getMarkdown']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0xedd811:this['element']['textContent']=_0xedd811,this['options']['onChange']&&this['options']['onChange'](_0xedd811);}),this['editor']['addEventListener']('paste',_0x509926=>this['handlePaste'](_0x509926)),this['editor']['addEventListener']('dragover',_0x4050f2=>this['handleDragOver'](_0x4050f2)),this['editor']['addEventListener']('drop',_0x1c00e5=>this['handleDrop'](_0x1c00e5)),this['editor']['addEventListener']('dragstart',_0x4a3d1a=>this['handleDragStart'](_0x4a3d1a)),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']=_0x2b218a=>this['handleLinkClick'](_0x2b218a),this['editor']['addEventListener']('click',this['linkClickHandler']),this['linkMouseEnterHandler']=_0x202aaa=>this['handleLinkMouseEnter'](_0x202aaa),this['linkMouseLeaveHandler']=_0x1b1359=>this['handleLinkMouseLeave'](_0x1b1359),this['editor']['addEventListener']('mouseover',this['linkMouseEnterHandler']),this['editor']['addEventListener']('mouseout',this['linkMouseLeaveHandler']),this['updatePlaceholder']();}['handleAutoFormat'](_0x188263){if(_0x188263['inputType']==='deleteContentBackward')return;const _0xd38659=window['getSelection']();if(!_0xd38659||_0xd38659['rangeCount']===0x0)return;const _0x465ec0=_0xd38659['getRangeAt'](0x0),_0x22fdb4=_0x465ec0['startContainer'];if(_0x22fdb4['nodeType']!==Node['TEXT_NODE'])return;if(this['isSelectionInTag']('CODE')||this['isSelectionInTag']('PRE'))return;const _0x8b8519=_0x22fdb4['textContent'],_0x2071f8=_0x465ec0['startOffset'],_0x101ef5=_0x8b8519['slice'](0x0,_0x2071f8);if(_0x101ef5['endsWith']('```')){_0x465ec0['setStart'](_0x22fdb4,_0x2071f8-0x3),_0x465ec0['setEnd'](_0x22fdb4,_0x2071f8),_0x465ec0['deleteContents'](),this['insertCodeBlock']();return;}const _0x3dc70d=/`([^`]+)`$/,_0x3471d4=_0x101ef5['match'](_0x3dc70d);if(_0x3471d4){const _0x5eaa03=_0x3471d4[0x1];if(_0x5eaa03){const _0x3faf94=_0x3471d4['index'],_0x1de92a=_0x3faf94+_0x5eaa03['length']+0x2;_0x465ec0['setStart'](_0x22fdb4,_0x3faf94),_0x465ec0['setEnd'](_0x22fdb4,_0x2071f8),_0x465ec0['deleteContents']();const _0x187e60=document['createElement']('code');_0x187e60['textContent']=_0x5eaa03,_0x465ec0['insertNode'](_0x187e60),_0x465ec0['setStartAfter'](_0x187e60),_0x465ec0['setEndAfter'](_0x187e60);const _0x10335b=document['createTextNode']('');_0x465ec0['insertNode'](_0x10335b),_0x465ec0['setStartAfter'](_0x10335b),_0x465ec0['setEndAfter'](_0x10335b),_0xd38659['removeAllRanges'](),_0xd38659['addRange'](_0x465ec0);return;}}const _0x2c639a=_0x101ef5['match'](/^[-*][\s\u00A0]$/);if(_0x2c639a&&this['isAtStartOfBlock'](_0x22fdb4)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x465ec0['setStart'](_0x22fdb4,Math['max'](_0x2071f8-0x2,0x0)),_0x465ec0['setEnd'](_0x22fdb4,_0x2071f8),_0x465ec0['deleteContents']();const _0x4d38a3=this['ensureListInsertionAnchor'](_0x22fdb4);document['execCommand']('insertUnorderedList',![],null);_0x4d38a3&&_0x4d38a3['parentNode']&&_0x4d38a3['parentNode']['removeChild'](_0x4d38a3);this['updateToolbarState']();return;}const _0x11811b=_0x101ef5['match'](/^1\.[\s\u00A0]$/);if(_0x11811b&&this['isAtStartOfBlock'](_0x22fdb4)){if(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))return;_0x465ec0['setStart'](_0x22fdb4,Math['max'](_0x2071f8-0x3,0x0)),_0x465ec0['setEnd'](_0x22fdb4,_0x2071f8),_0x465ec0['deleteContents']();const _0x45363e=this['ensureListInsertionAnchor'](_0x22fdb4);document['execCommand']('insertOrderedList',![],null);_0x45363e&&_0x45363e['parentNode']&&_0x45363e['parentNode']['removeChild'](_0x45363e);this['updateToolbarState']();return;}}['isAtStartOfBlock'](_0x2416f9){let _0xeeb6ce=_0x2416f9;while(_0xeeb6ce&&_0xeeb6ce!==this['editor']){const _0x4c423f=_0xeeb6ce['parentNode'];if(!_0x4c423f)break;const _0x49b87e=_0x4c423f['tagName'];if(_0x49b87e==='DIV'||_0x49b87e==='P'||_0x49b87e==='LI'||_0x4c423f===this['editor']){let _0x35e01a=_0x4c423f['firstChild'];while(_0x35e01a&&(_0x35e01a['nodeType']===Node['TEXT_NODE']&&_0x35e01a['textContent']===''||_0x35e01a['nodeType']===Node['ELEMENT_NODE']&&_0x35e01a['tagName']==='BR')){_0x35e01a=_0x35e01a['nextSibling'];}return _0x35e01a===_0x2416f9||_0x35e01a===_0xeeb6ce;}_0xeeb6ce=_0x4c423f;}if(_0xeeb6ce===this['editor']||_0x2416f9['parentNode']===this['editor']){let _0x3e9ab1=this['editor']['firstChild'];while(_0x3e9ab1&&(_0x3e9ab1['nodeType']===Node['TEXT_NODE']&&_0x3e9ab1['textContent']===''||_0x3e9ab1['nodeType']===Node['ELEMENT_NODE']&&_0x3e9ab1['tagName']==='BR')){_0x3e9ab1=_0x3e9ab1['nextSibling'];}return _0x3e9ab1===_0x2416f9;}return![];}['getClosestBlockElement'](_0x1f409e){let _0x127d69=_0x1f409e;while(_0x127d69&&_0x127d69!==this['editor']){const _0x317ad7=_0x127d69['parentNode'];if(!_0x317ad7)break;const _0x58fb3c=_0x317ad7['tagName'];if(_0x58fb3c==='DIV'||_0x58fb3c==='P'||_0x58fb3c==='LI'||_0x317ad7===this['editor'])return _0x317ad7;_0x127d69=_0x317ad7;}return this['editor'];}['ensureListInsertionAnchor'](_0x5d8899){const _0x585f91=window['getSelection']();if(!_0x585f91||_0x585f91['rangeCount']===0x0)return null;const _0x42e5ef=this['getClosestBlockElement'](_0x5d8899);if(!_0x42e5ef||_0x42e5ef===this['editor'])return null;const _0x3ddd57=_0x42e5ef['textContent']['replace'](/\u200B/g,'');if(_0x3ddd57!=='')return null;const _0x504689=document['createTextNode']('');_0x42e5ef['appendChild'](_0x504689);const _0xc94d59=document['createRange']();return _0xc94d59['setStart'](_0x504689,0x1),_0xc94d59['setEnd'](_0x504689,0x1),_0x585f91['removeAllRanges'](),_0x585f91['addRange'](_0xc94d59),_0x504689;}['getContainingListItem'](){const _0x2ee489=window['getSelection']();if(!_0x2ee489||_0x2ee489['rangeCount']===0x0)return null;let _0x5c66da=_0x2ee489['anchorNode'];while(_0x5c66da&&_0x5c66da!==this['editor']){if(_0x5c66da['nodeType']===Node['ELEMENT_NODE']&&_0x5c66da['tagName']==='LI')return _0x5c66da;_0x5c66da=_0x5c66da['parentNode'];}return null;}['isEmptyListItem'](_0x3c1050){if(!_0x3c1050)return![];const _0x47f721=_0x3c1050['textContent']['replace'](/\u200B/g,'')['trim']();if(_0x47f721!=='')return![];const _0x10b709=_0x3c1050['querySelector']('img');if(_0x10b709)return![];const _0x48e8f5=_0x3c1050['querySelector']('ul,\x20ol');if(_0x48e8f5)return![];return!![];}['isCursorAtStartOfListItem'](_0x5ea4fb){if(!_0x5ea4fb)return![];const _0x2a5176=window['getSelection']();if(!_0x2a5176||_0x2a5176['rangeCount']===0x0||!_0x2a5176['isCollapsed'])return![];const _0x3acaf0=_0x2a5176['getRangeAt'](0x0),_0x1c2515=_0x3acaf0['startContainer'];if(_0x1c2515!==_0x5ea4fb&&!_0x5ea4fb['contains'](_0x1c2515))return![];const _0x4df2c8=_0x3acaf0['cloneRange']();_0x4df2c8['setStart'](_0x5ea4fb,0x0),_0x4df2c8['setEnd'](_0x1c2515,_0x3acaf0['startOffset']);const _0xfb486a=_0x4df2c8['toString']()['replace'](/\u200B/g,'')['replace'](/\u00A0/g,'\x20');return _0xfb486a['trim']()==='';}['indentListItem'](_0x21eb50){const _0xb90887=_0x21eb50['previousElementSibling'];if(!_0xb90887||_0xb90887['tagName']!=='LI')return;const _0x568b66=_0x21eb50['parentNode'],_0x2ace14=_0x568b66['tagName'];let _0xe7fe39=_0xb90887['querySelector'](':scope\x20>\x20ul,\x20:scope\x20>\x20ol');!_0xe7fe39&&(_0xe7fe39=document['createElement'](_0x2ace14),_0xb90887['appendChild'](_0xe7fe39)),_0xe7fe39['appendChild'](_0x21eb50),this['placeCursorInListItem'](_0x21eb50);}['outdentListItem'](_0xc81b79){const _0x3e8642=_0xc81b79['parentNode'];if(!_0x3e8642||_0x3e8642['tagName']!=='UL'&&_0x3e8642['tagName']!=='OL')return;const _0x28b53b=_0x3e8642['parentNode'];if(_0x28b53b&&_0x28b53b['tagName']==='LI'){const _0x5ca9d3=_0x28b53b['parentNode'];_0x5ca9d3['insertBefore'](_0xc81b79,_0x28b53b['nextSibling']),_0x3e8642['children']['length']===0x0&&_0x3e8642['remove'](),this['placeCursorInListItem'](_0xc81b79);}else return;}['exitListOnEmptyBullet'](_0x27cfe2){const _0x15bd73=_0x27cfe2['parentNode'];if(!_0x15bd73)return;const _0xd6c5a1=_0x15bd73['parentNode'];if(_0xd6c5a1&&_0xd6c5a1['tagName']==='LI'){this['outdentListItem'](_0x27cfe2);return;}const _0x165a92=_0x15bd73['parentNode'],_0xbad395=document['createElement']('p');_0xbad395['innerHTML']='<br>',_0x165a92['insertBefore'](_0xbad395,_0x15bd73['nextSibling']),_0x27cfe2['remove']();_0x15bd73['children']['length']===0x0&&_0x15bd73['remove']();const _0xd7141d=window['getSelection'](),_0x532ffc=document['createRange']();_0x532ffc['setStart'](_0xbad395,0x0),_0x532ffc['collapse'](!![]),_0xd7141d['removeAllRanges'](),_0xd7141d['addRange'](_0x532ffc);}['placeCursorInListItem'](_0x4d0441){const _0x2aebcc=window['getSelection'](),_0xde65b1=document['createRange'](),_0x33a0b3=document['createTreeWalker'](_0x4d0441,NodeFilter['SHOW_TEXT'],null,![]),_0x2f9cf1=_0x33a0b3['nextNode']();_0x2f9cf1?_0xde65b1['setStart'](_0x2f9cf1,0x0):_0xde65b1['setStart'](_0x4d0441,0x0),_0xde65b1['collapse'](!![]),_0x2aebcc['removeAllRanges'](),_0x2aebcc['addRange'](_0xde65b1);}['handleLinkClick'](_0x275a39){const _0x112e30=this['isMac']?_0x275a39['metaKey']:_0x275a39['ctrlKey'];if(!_0x112e30)return;let _0x463591=_0x275a39['target'];while(_0x463591&&_0x463591!==this['editor']){if(_0x463591['tagName']==='A'){_0x275a39['preventDefault'](),_0x275a39['stopPropagation']();const _0x5a25d4=_0x463591['getAttribute']('href');if(!_0x5a25d4)return;if(_0x5a25d4['startsWith']('mention:'))return;const _0x378aa8=/^https?:\/\//i['test'](_0x5a25d4);_0x378aa8?window['open'](_0x5a25d4,'_blank','noopener,noreferrer'):window['location']['href']=_0x5a25d4;return;}_0x463591=_0x463591['parentNode'];}}['handleLinkMouseEnter'](_0x22c019){const _0x1c4135=_0x22c019['target'];if(_0x1c4135['tagName']!=='A')return;const _0x5a6a1d=_0x1c4135['getAttribute']('href')||'';if(_0x5a6a1d['startsWith']('mention:'))return;this['linkTooltipTimeout']&&clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=setTimeout(()=>{this['showLinkTooltip'](_0x1c4135);},0x12c);}['handleLinkMouseLeave'](_0x2147b5){const _0x192b6e=_0x2147b5['target'];if(_0x192b6e['tagName']!=='A')return;this['linkTooltipTimeout']&&(clearTimeout(this['linkTooltipTimeout']),this['linkTooltipTimeout']=null),this['hideLinkTooltip']();}['showLinkTooltip'](_0x1ac7a4){!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 _0x2270a0=_0x1ac7a4['getBoundingClientRect'](),_0x4151c3=this['linkTooltip']['getBoundingClientRect']();let _0x21df3b=_0x2270a0['bottom']+0x4,_0x50bfec=_0x2270a0['left']+_0x2270a0['width']/0x2;_0x21df3b+0x1e>window['innerHeight']&&(_0x21df3b=_0x2270a0['top']-0x1e);const _0x469256=0x78;if(_0x50bfec-_0x469256/0x2<0xa)_0x50bfec=_0x469256/0x2+0xa;else _0x50bfec+_0x469256/0x2>window['innerWidth']-0xa&&(_0x50bfec=window['innerWidth']-_0x469256/0x2-0xa);this['linkTooltip']['style']['top']=_0x21df3b+'px',this['linkTooltip']['style']['left']=_0x50bfec+'px',this['linkTooltip']['style']['transform']='translateX(-50%)',this['linkTooltip']['classList']['add']('visible');}['hideLinkTooltip'](){this['linkTooltip']&&this['linkTooltip']['classList']['remove']('visible');}['handleKeydown'](_0x21349d){if(this['mentionState']['active']){if(_0x21349d['key']==='ArrowDown'){_0x21349d['preventDefault'](),this['mentionNavigate'](0x1);return;}if(_0x21349d['key']==='ArrowUp'){_0x21349d['preventDefault'](),this['mentionNavigate'](-0x1);return;}if(_0x21349d['key']==='Enter'||_0x21349d['key']==='Tab'){if(this['mentionState']['filteredUsers']['length']>0x0){_0x21349d['preventDefault'](),this['insertMention'](this['mentionState']['filteredUsers'][this['mentionState']['selectedIndex']]);return;}}if(_0x21349d['key']==='Escape'){_0x21349d['preventDefault'](),this['closeMentionDropdown']();return;}}if(_0x21349d['key']==='Tab'&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x15cf91=this['getContainingListItem']();if(_0x15cf91&&this['isCursorAtStartOfListItem'](_0x15cf91)){_0x21349d['preventDefault']();_0x21349d['shiftKey']?this['outdentListItem'](_0x15cf91):this['indentListItem'](_0x15cf91);this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x21349d['key']==='Enter'&&!_0x21349d['shiftKey']&&(this['isSelectionInTag']('UL')||this['isSelectionInTag']('OL'))){const _0x53128b=this['getContainingListItem']();if(_0x53128b&&this['isEmptyListItem'](_0x53128b)){_0x21349d['preventDefault'](),this['exitListOnEmptyBullet'](_0x53128b),this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));return;}}if(_0x21349d['key']==='Enter'&&!_0x21349d['shiftKey']&&this['isSelectionInTag']('PRE')){_0x21349d['preventDefault']();const _0x2d11c0=window['getSelection']();if(_0x2d11c0['rangeCount']>0x0){const _0x584ea8=_0x2d11c0['getRangeAt'](0x0);_0x584ea8['deleteContents']();const _0x1d46cd=document['createTextNode']('\x0a');_0x584ea8['insertNode'](_0x1d46cd),_0x584ea8['setStartAfter'](_0x1d46cd),_0x584ea8['setEndAfter'](_0x1d46cd),_0x2d11c0['removeAllRanges'](),_0x2d11c0['addRange'](_0x584ea8),this['handleInput']();}return;}(_0x21349d['ctrlKey']||_0x21349d['metaKey'])&&_0x21349d['key']==='b'&&(_0x21349d['preventDefault'](),document['execCommand']('bold',![],null));(_0x21349d['ctrlKey']||_0x21349d['metaKey'])&&_0x21349d['key']==='i'&&(_0x21349d['preventDefault'](),document['execCommand']('italic',![],null));if((_0x21349d['ctrlKey']||_0x21349d['metaKey'])&&_0x21349d['key']==='k'){_0x21349d['preventDefault'](),this['openLinkDialog']();return;}}['handlePaste'](_0x21341c){const _0x506118=_0x21341c['clipboardData'];if(_0x506118&&this['options']['onAddAttachments']){const _0x58185b=this['extractImageFilesFromClipboard'](_0x506118);if(_0x58185b['length']>0x0){_0x21341c['preventDefault'](),this['addAndInsertImages'](_0x58185b);return;}}_0x21341c['preventDefault']();const _0x3fbe44=_0x21341c['clipboardData']['getData']('text/html');if(_0x3fbe44&&_0x3fbe44['trim']()){const _0x3cd16a=this['convertPastedHtmlToMarkdown'](_0x3fbe44);if(_0x3cd16a&&_0x3cd16a['trim']()){this['insertMarkdownAsRichText'](_0x3cd16a);return;}}const _0x5db9eb=_0x21341c['clipboardData']['getData']('text/plain');document['execCommand']('insertText',![],_0x5db9eb);}['convertPastedHtmlToMarkdown'](_0xdf163a){const _0x198d94=document['createElement']('div');_0x198d94['innerHTML']=_0xdf163a;const _0x4aa2cb=_0x198d94['querySelectorAll']('style,\x20script,\x20meta,\x20link,\x20head,\x20title');_0x4aa2cb['forEach'](_0x4646ed=>_0x4646ed['remove']());const _0x37595d=_0x198d94['querySelectorAll']('*');_0x37595d['forEach'](_0x73c488=>{const _0x4bd5f0=Array['from'](_0x73c488['attributes']);_0x4bd5f0['forEach'](_0x513184=>{_0x513184['name']['startsWith']('data-')&&_0x513184['name']!=='data-attachment-name'&&_0x513184['name']!=='data-mention-user-id'&&_0x73c488['removeAttribute'](_0x513184['name']);});}),_0x198d94['querySelectorAll']('font[color]')['forEach'](_0x58c219=>{_0x58c219['replaceWith'](..._0x58c219['childNodes']);}),_0x198d94['querySelectorAll']('span')['forEach'](_0x1861ea=>{_0x1861ea['style']['color']&&_0x1861ea['style']['removeProperty']('color'),!_0x1861ea['getAttribute']('style')&&!_0x1861ea['getAttribute']('data-mention-user-id')&&!_0x1861ea['getAttribute']('data-attachment-name')&&_0x1861ea['replaceWith'](..._0x1861ea['childNodes']);});try{return this['turndownService']['turndown'](_0x198d94['innerHTML']);}catch(_0x1d1943){return console['warn']('Failed\x20to\x20convert\x20HTML\x20to\x20markdown:',_0x1d1943),null;}}['insertMarkdownAsRichText'](_0x328e07){const _0x57905b=window['marked'];if(!_0x57905b){document['execCommand']('insertText',![],_0x328e07);return;}try{const _0x11b607=this['preprocessColorSyntax'](_0x328e07),_0x1c7a40=_0x57905b['parse'](_0x11b607),_0x376ef4=document['createElement']('div');_0x376ef4['innerHTML']=_0x1c7a40,this['processHtmlForEditor'](_0x376ef4),document['execCommand']('insertHTML',![],_0x376ef4['innerHTML']);}catch(_0x14844e){console['warn']('Failed\x20to\x20convert\x20markdown\x20to\x20HTML:',_0x14844e),document['execCommand']('insertText',![],_0x328e07);}}['processHtmlForEditor'](_0x1646a6){const _0x2d118b=_0x1646a6['querySelectorAll']('pre');_0x2d118b['forEach'](_0x39f8d8=>{const _0x6dd161=_0x39f8d8['querySelector']('code');if(_0x6dd161){const _0x4fb700=Array['from'](_0x6dd161['classList'])['find'](_0x1aa9ce=>_0x1aa9ce['startsWith']('language-')),_0x142689=_0x4fb700?_0x4fb700['replace']('language-',''):'',_0x1d7e13=document['createElement']('pre');_0x142689&&_0x1d7e13['setAttribute']('data-language',_0x142689),_0x1d7e13['textContent']=_0x6dd161['textContent'],_0x39f8d8['replaceWith'](_0x1d7e13);}});const _0x1c5ca4=_0x1646a6['querySelectorAll']('a');_0x1c5ca4['forEach'](_0x170950=>{_0x170950['setAttribute']('target','_blank'),_0x170950['setAttribute']('rel','noopener\x20noreferrer');});}['handleDragStart'](_0x3130e7){const _0x40202d=_0x3130e7['target'];if(!_0x40202d||_0x40202d['tagName']!=='IMG')return;if(!_0x3130e7['dataTransfer'])return;const _0x2094b8=_0x40202d['getAttribute']('data-attachment-name')||'';try{_0x3130e7['dataTransfer']['setData'](INTERNAL_DRAG_MIME,_0x2094b8||'1');}catch{}_0x3130e7['dataTransfer']['effectAllowed']='move';}['handleDragOver'](_0x599c1d){if(!this['isExternalFileTransfer'](_0x599c1d['dataTransfer']))return;_0x599c1d['preventDefault'](),_0x599c1d['dataTransfer']['dropEffect']='copy';}['handleDrop'](_0x12a657){if(!this['isExternalFileTransfer'](_0x12a657['dataTransfer']))return;const _0x19a7b5=_0x12a657['dataTransfer'],_0x4f2026=Array['from'](_0x19a7b5['files']||[])['filter'](_0x130446=>_0x130446&&typeof _0x130446['type']==='string'),_0x16405a=_0x4f2026['filter'](_0x478cce=>_0x478cce['type']['startsWith']('image/'));if(_0x16405a['length']===0x0)return;_0x12a657['preventDefault'](),_0x12a657['stopPropagation'](),this['cleanupParentDragState'](),this['moveSelectionToDropPoint'](_0x12a657),this['addAndInsertImages'](_0x16405a);}['cleanupParentDragState'](){let _0x4c65b1=this['editor']['parentElement'];while(_0x4c65b1){_0x4c65b1['classList']&&_0x4c65b1['classList']['contains']('drag-over')&&_0x4c65b1['classList']['remove']('drag-over'),_0x4c65b1=_0x4c65b1['parentElement'];}}['isExternalFileTransfer'](_0x5d633a){if(!_0x5d633a)return![];const _0x5e45d0=Array['from'](_0x5d633a['types']||[]);if(!_0x5e45d0['includes']('Files'))return![];if(_0x5e45d0['includes'](INTERNAL_DRAG_MIME))return![];if(_0x5d633a['files']&&_0x5d633a['files']['length']>0x0)return!![];if(_0x5d633a['items']&&Array['from'](_0x5d633a['items'])['some'](_0x3154fa=>_0x3154fa['kind']==='file'))return!![];return![];}['moveSelectionToDropPoint'](_0x4f392c){const _0x16b83d=_0x4f392c['clientX'],_0x2ef1b3=_0x4f392c['clientY'];let _0x32462a=null;if(document['caretRangeFromPoint'])_0x32462a=document['caretRangeFromPoint'](_0x16b83d,_0x2ef1b3);else{if(document['caretPositionFromPoint']){const _0x5c89a0=document['caretPositionFromPoint'](_0x16b83d,_0x2ef1b3);_0x5c89a0&&(_0x32462a=document['createRange'](),_0x32462a['setStart'](_0x5c89a0['offsetNode'],_0x5c89a0['offset']),_0x32462a['collapse'](!![]));}}if(_0x32462a){const _0x4160e0=window['getSelection']();_0x4160e0['removeAllRanges'](),_0x4160e0['addRange'](_0x32462a);}}['extractImageFilesFromClipboard'](_0x48c74b){const _0x1eed62=Array['from'](_0x48c74b['items']||[]),_0x523710=[];for(const _0x10ded3 of _0x1eed62){if(_0x10ded3['kind']==='file'&&_0x10ded3['type']&&_0x10ded3['type']['startsWith']('image/')){const _0x141371=_0x10ded3['getAsFile']();if(_0x141371)_0x523710['push'](_0x141371);}}return _0x523710;}['addAndInsertImages'](_0x359432){const _0x29add6=_0x359432['map'](_0x11f2ee=>this['prepareAttachmentFile'](_0x11f2ee))['filter'](Boolean);if(_0x29add6['length']===0x0)return;const _0x4b6ed0=_0x29add6['map'](_0x15e701=>_0x15e701['file']);try{this['options']['onAddAttachments'](_0x4b6ed0);}catch(_0x2743e9){console['error']('Failed\x20to\x20add\x20attachments:',_0x2743e9);}for(const {name:_0x506bc8,objectUrl:_0xe8c73d}of _0x29add6){this['insertAttachmentImage'](_0x506bc8,_0xe8c73d);}this['editor']['dispatchEvent'](new Event('input',{'bubbles':!![]}));}['prepareAttachmentFile'](_0x3f1c39){const _0x44c683=this['sanitizeFilename'](_0x3f1c39['name']||this['defaultImageName'](_0x3f1c39['type']));if(!_0x44c683)return null;const _0xa2b761=this['getUniqueAttachmentName'](_0x44c683),_0x24daa0=_0xa2b761===_0x3f1c39['name']?_0x3f1c39:new File([_0x3f1c39],_0xa2b761,{'type':_0x3f1c39['type'],'lastModified':_0x3f1c39['lastModified']}),_0x59efff=URL['createObjectURL'](_0x24daa0);return this['attachmentObjectUrls']['set'](_0xa2b761,_0x59efff),{'name':_0xa2b761,'file':_0x24daa0,'objectUrl':_0x59efff};}['getUniqueAttachmentName'](_0x3179d5){const _0x220775=_0x5f3b59=>{if(this['attachmentObjectUrls']['has'](_0x5f3b59))return!![];if(this['options']['isAttachmentNameTaken'])try{return Boolean(this['options']['isAttachmentNameTaken'](_0x5f3b59));}catch{return![];}return![];};if(!_0x220775(_0x3179d5))return _0x3179d5;const {stem:_0x466af6,ext:_0x311355}=this['splitFilename'](_0x3179d5);for(let _0x96c8a2=0x2;_0x96c8a2<0x3e8;_0x96c8a2++){const _0x7ca768=_0x466af6+'-'+_0x96c8a2+_0x311355;if(!_0x220775(_0x7ca768))return _0x7ca768;}return _0x466af6+'-'+Date['now']()+_0x311355;}['splitFilename'](_0x3f7b02){const _0x43d7c2=_0x3f7b02['lastIndexOf']('.');if(_0x43d7c2<=0x0||_0x43d7c2===_0x3f7b02['length']-0x1)return{'stem':_0x3f7b02,'ext':''};return{'stem':_0x3f7b02['slice'](0x0,_0x43d7c2),'ext':_0x3f7b02['slice'](_0x43d7c2)};}['sanitizeFilename'](_0x592b78){const _0x4f823f=String(_0x592b78||'')['split']('/')['pop']()['split']('\x5c')['pop']();return _0x4f823f['replace'](/[\u0000-\u001F\u007F]/g,'')['trim']();}['defaultImageName'](_0x54fe05){const _0x13b429=this['extensionForMime'](_0x54fe05);return'pasted-image-'+Date['now']()+_0x13b429;}['extensionForMime'](_0x169921){switch(_0x169921){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'](_0x157193,_0x352904){const _0x49cc87=document['createElement']('img');_0x49cc87['src']=_0x352904,_0x49cc87['alt']=_0x157193,_0x49cc87['setAttribute']('data-attachment-name',_0x157193),_0x49cc87['draggable']=!![];const _0x5a50b5=window['getSelection']();let _0xb581b1=![];if(_0x5a50b5&&_0x5a50b5['rangeCount']>0x0){const _0x26e536=_0x5a50b5['getRangeAt'](0x0);_0xb581b1=this['editor']['contains'](_0x26e536['commonAncestorContainer'])||this['editor']===_0x26e536['commonAncestorContainer'];}if(!_0xb581b1){this['editor']['appendChild'](_0x49cc87);const _0x3b5003=document['createRange']();_0x3b5003['setStartAfter'](_0x49cc87),_0x3b5003['collapse'](!![]),_0x5a50b5['removeAllRanges'](),_0x5a50b5['addRange'](_0x3b5003);return;}const _0x5d4c25=_0x5a50b5['getRangeAt'](0x0);_0x5d4c25['deleteContents'](),_0x5d4c25['insertNode'](_0x49cc87),_0x5d4c25['setStartAfter'](_0x49cc87),_0x5d4c25['collapse'](!![]),_0x5a50b5['removeAllRanges'](),_0x5a50b5['addRange'](_0x5d4c25);}['toggleInlineCode'](){const _0x1af98a=window['getSelection']();if(_0x1af98a['rangeCount']===0x0)return;const _0x1164c2=_0x1af98a['getRangeAt'](0x0),_0x8b5f13=_0x1164c2['toString']();if(_0x8b5f13){const _0x2ddcc0=document['createElement']('code');_0x2ddcc0['textContent']=_0x8b5f13,_0x1164c2['deleteContents'](),_0x1164c2['insertNode'](_0x2ddcc0),_0x1164c2['setStartAfter'](_0x2ddcc0),_0x1164c2['setEndAfter'](_0x2ddcc0),_0x1af98a['removeAllRanges'](),_0x1af98a['addRange'](_0x1164c2);}}['insertCodeBlock'](){const _0x34cd92=window['getSelection']();if(_0x34cd92['rangeCount']===0x0)return;const _0x5d785d=_0x34cd92['getRangeAt'](0x0),_0x499bdb=_0x5d785d['toString'](),_0x22cdf2=document['createElement']('pre'),_0x7058e9=document['createElement']('code');_0x7058e9['textContent']=_0x499bdb||'\x0a',_0x22cdf2['appendChild'](_0x7058e9),_0x5d785d['deleteContents'](),_0x5d785d['insertNode'](_0x22cdf2);const _0x282761=document['createElement']('p');_0x282761['innerHTML']='<br>',_0x22cdf2['parentNode']['insertBefore'](_0x282761,_0x22cdf2['nextSibling']);const _0x55ad2e=document['createRange']();!_0x499bdb?(_0x55ad2e['setStart'](_0x7058e9['firstChild'],0x0),_0x55ad2e['setEnd'](_0x7058e9['firstChild'],0x0)):(_0x55ad2e['selectNodeContents'](_0x7058e9),_0x55ad2e['collapse'](![])),_0x34cd92['removeAllRanges'](),_0x34cd92['addRange'](_0x55ad2e);}['updatePlaceholder'](){const _0x226224=this['editor']['textContent']['trim']()!==''||this['editor']['innerHTML']['includes']('<br')||this['editor']['innerHTML']['includes']('<div')||this['editor']['innerHTML']['includes']('<img');_0x226224?this['editor']['classList']['remove']('empty'):this['editor']['classList']['add']('empty');}['setMarkdown'](_0x3f76dc){if(!_0x3f76dc||!_0x3f76dc['trim']()){this['editor']['innerHTML']='',this['updatePlaceholder']();this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']='':this['element']['textContent']='';return;}const _0x321d6b=this['preprocessColorSyntax'](_0x3f76dc),_0x48ddbc=window['marked']['parse'](_0x321d6b);this['editor']['innerHTML']=_0x48ddbc,this['rewriteAttachmentImages'](),this['rewriteMentionLinks'](),this['addLinkHints'](),this['updatePlaceholder'](),this['element']['tagName']==='TEXTAREA'||this['element']['tagName']==='INPUT'?this['element']['value']=_0x3f76dc:this['element']['textContent']=_0x3f76dc;}['rewriteAttachmentImages'](){const _0x21f9f0=this['editor']['querySelectorAll']('img');_0x21f9f0['forEach'](_0x525d81=>{const _0x578355=_0x525d81['getAttribute']('data-attachment-name'),_0x98c117=_0x525d81['getAttribute']('src')||'',_0x28b15f=this['parseAttachmentReference'](_0x98c117)||this['parseTaskAttachmentUrl'](_0x98c117),_0x4919a5=_0x578355||(_0x28b15f?_0x28b15f['name']:null);if(!_0x4919a5)return;_0x525d81['setAttribute']('data-attachment-name',_0x4919a5);const _0x1e371b=this['attachmentObjectUrls']['get'](_0x4919a5)||(this['options']['resolveAttachmentUrl']?this['options']['resolveAttachmentUrl'](_0x4919a5):null);_0x1e371b&&(_0x525d81['src']=_0x1e371b);});}['rewriteMentionLinks'](){const _0x1fad6d=this['editor']['querySelectorAll']('a[href^=\x22mention:\x22]');_0x1fad6d['forEach'](_0x3eac7a=>{const _0x3aba6a=_0x3eac7a['getAttribute']('href')||'',_0x439db6=_0x3aba6a['replace']('mention:',''),_0x572d80=_0x3eac7a['textContent']||'',_0x4d8fbf=document['createElement']('span');_0x4d8fbf['className']='mention',_0x4d8fbf['setAttribute']('data-mention-user-id',_0x439db6),_0x4d8fbf['setAttribute']('contenteditable','false'),_0x4d8fbf['textContent']='@'+_0x572d80;const _0x145f5b=_0x3eac7a['previousSibling'];_0x145f5b&&_0x145f5b['nodeType']===Node['TEXT_NODE']&&_0x145f5b['textContent']['endsWith']('@')&&(_0x145f5b['textContent']=_0x145f5b['textContent']['slice'](0x0,-0x1)),_0x3eac7a['parentNode']['replaceChild'](_0x4d8fbf,_0x3eac7a);});}['addLinkHints'](){if(!this['options']['editable'])return;const _0x44ae12=this['editor']['querySelectorAll']('a');_0x44ae12['forEach'](_0x2b96e2=>{const _0x3f67a8=_0x2b96e2['getAttribute']('href')||'';if(_0x3f67a8['startsWith']('mention:'))return;const _0x32362a=_0x2b96e2['textContent']||_0x3f67a8,_0x16ef25=_0x32362a+'\x20('+(this['linkHintText']||'Ctrl+click\x20to\x20follow')+')';_0x2b96e2['setAttribute']('aria-label',_0x16ef25);});}['preprocessColorSyntax'](_0x2c3e78){if(!_0x2c3e78)return _0x2c3e78;const _0x43c9cb=_0x127a1c=>{return String(_0x127a1c)['replace'](/\{color:(#[0-9A-Fa-f]{3,6})\}([\s\S]*?)\{\/color\}/g,(_0x542265,_0x852044,_0x420ea6)=>{const _0x36b025=_0x43c9cb(_0x420ea6);return'<span\x20style=\x22color:\x20'+_0x852044+'\x22>'+_0x36b025+'</span>';});};return _0x43c9cb(_0x2c3e78);}['parseAttachmentReference'](_0x556db6){if(!_0x556db6||typeof _0x556db6!=='string')return null;if(!_0x556db6['startsWith'](ATTACHMENT_SCHEME)&&!_0x556db6['startsWith'](ATTACHMENT_SCHEME+'//'))return null;const _0x1273de=_0x556db6['replace'](ATTACHMENT_SCHEME+'//','')['replace'](ATTACHMENT_SCHEME,'');if(!_0x1273de)return null;try{return{'name':decodeURIComponent(_0x1273de)};}catch{return{'name':_0x1273de};}}['parseTaskAttachmentUrl'](_0x3e2671){if(!_0x3e2671||typeof _0x3e2671!=='string')return null;const _0x33c2a7=_0x3e2671['match'](/\/tasks\/[^/]+\/attachments\/([^?#]+)/);if(!_0x33c2a7)return null;const _0x1f542a=_0x33c2a7[0x1];try{return{'name':decodeURIComponent(_0x1f542a)};}catch{return{'name':_0x1f542a};}}['updateAttachmentFile'](_0x20213b,_0x10d3e7){const _0x528a54=this['attachmentObjectUrls']['get'](_0x20213b);if(_0x528a54)try{URL['revokeObjectURL'](_0x528a54);}catch{}const _0x518265=URL['createObjectURL'](_0x10d3e7);this['attachmentObjectUrls']['set'](_0x20213b,_0x518265);const _0x1c3809=this['editor']['querySelector']('img[data-attachment-name=\x22'+CSS['escape'](_0x20213b)+'\x22]');return _0x1c3809&&(_0x1c3809['src']=_0x518265),_0x518265;}['getMarkdown'](){const _0x20a79f=this['editor']['innerHTML'];if(!_0x20a79f||_0x20a79f['trim']()===''||_0x20a79f==='<br>')return'';return this['turndownService']['turndown'](_0x20a79f)['replace'](/\u200B/g,'');}['getValue'](){return this['getMarkdown']();}['setValue'](_0x4a449d){this['setMarkdown'](_0x4a449d);}['focus'](){this['editor']['focus']();}['clear'](){this['editor']['innerHTML']='',this['updatePlaceholder']();}['setEditable'](_0x140a5a){this['editor']['contentEditable']=_0x140a5a,this['options']['editable']=_0x140a5a;}['handleMentionInput'](_0x44191c){if(!this['options']['fetchUsers'])return;const _0x3e9a4b=window['getSelection']();if(!_0x3e9a4b||_0x3e9a4b['rangeCount']===0x0){this['closeMentionDropdown']();return;}const _0x456d88=_0x3e9a4b['getRangeAt'](0x0),_0x427dcd=_0x456d88['startContainer'];if(_0x427dcd['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0xb9508d=_0x427dcd['textContent']||'',_0x224766=_0x456d88['startOffset'],_0x5424f4=_0xb9508d['slice'](0x0,_0x224766),_0x1bb2a1=_0x5424f4['lastIndexOf']('@');if(_0x1bb2a1===-0x1){this['closeMentionDropdown']();return;}const _0x44f855=_0x1bb2a1>0x0?_0x5424f4[_0x1bb2a1-0x1]:'\x20';if(!/\s/['test'](_0x44f855)&&_0x1bb2a1!==0x0){this['closeMentionDropdown']();return;}const _0x112ec4=_0x5424f4['slice'](_0x1bb2a1+0x1);if(/[\s\n]/['test'](_0x112ec4)){this['closeMentionDropdown']();return;}this['mentionState']['active']=!![],this['mentionState']['query']=_0x112ec4['toLowerCase'](),this['mentionState']['startOffset']=_0x1bb2a1,this['mentionState']['startNode']=_0x427dcd,this['showMentionDropdown']();}async['showMentionDropdown'](){if(!this['usersCache'])try{const _0xd57e57=await this['options']['fetchUsers']();this['usersCache']=_0xd57e57['users']||_0xd57e57||[];}catch(_0x3542f8){console['error']('Failed\x20to\x20fetch\x20users\x20for\x20@mention:',_0x3542f8),this['closeMentionDropdown']();return;}this['mentionState']['users']=this['usersCache'];const _0x4e7669=this['mentionState']['query'];this['mentionState']['filteredUsers']=this['mentionState']['users']['filter'](_0x30011e=>{const _0x1fc7ba=(_0x30011e['name']||'')['toLowerCase'](),_0x270a79=(_0x30011e['username']||'')['toLowerCase']();return _0x1fc7ba['includes'](_0x4e7669)||_0x270a79['includes'](_0x4e7669);})['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']=_0x32b8ca=>{!this['mentionDropdown']['contains'](_0x32b8ca['target'])&&!this['editor']['contains'](_0x32b8ca['target'])&&this['closeMentionDropdown']();},document['addEventListener']('click',this['mentionClickOutsideHandler']),this['mentionScrollHandler']=()=>{this['mentionState']['active']&&this['positionMentionDropdown']();},window['addEventListener']('scroll',this['mentionScrollHandler'],!![]));const _0x105ffa=this['mentionState']['filteredUsers'];this['mentionDropdown']['innerHTML']=_0x105ffa['map']((_0x4918b2,_0x474f0a)=>{const _0x574fac=_0x474f0a===this['mentionState']['selectedIndex'],_0xf85eca=_0x4918b2['name']||_0x4918b2['username']||'Unknown',_0x51057a=_0x4918b2['username']||'',_0x42eb8d=this['getInitials'](_0xf85eca),_0x3dc7f4=this['getAvatarColorIndex'](_0x51057a||_0x4918b2['id']||_0xf85eca);return'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22mention-option\x20'+(_0x574fac?'mention-option-selected':'')+'\x22\x20data-index=\x22'+_0x474f0a+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-avatar\x20avatar-color-'+_0x3dc7f4+'\x22>'+this['escapeHtmlForMention'](_0x42eb8d)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22mention-option-name\x22>'+this['escapeHtmlForMention'](_0xf85eca)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x51057a?'<span\x20class=\x22mention-option-username\x22>@'+this['escapeHtmlForMention'](_0x51057a)+'</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'](_0x5912e8=>{_0x5912e8['addEventListener']('mousedown',_0xefe572=>{_0xefe572['preventDefault']();const _0x509567=parseInt(_0x5912e8['dataset']['index'],0xa);this['insertMention'](this['mentionState']['filteredUsers'][_0x509567]);}),_0x5912e8['addEventListener']('mouseenter',()=>{const _0x3a65de=parseInt(_0x5912e8['dataset']['index'],0xa);this['mentionState']['selectedIndex']=_0x3a65de,this['updateMentionSelection']();});}),this['mentionDropdown']['style']['display']='block';}['positionMentionDropdown'](){if(!this['mentionDropdown'])return;const _0x343843=window['getSelection']();if(!_0x343843||_0x343843['rangeCount']===0x0)return;const _0x46974a=_0x343843['getRangeAt'](0x0),_0xcadfb3=_0x46974a['getBoundingClientRect'](),_0x2f572c=0x104,_0x4faaab=Math['min'](0xf0,this['mentionState']['filteredUsers']['length']*0x24+0x8),_0x4c4720=window['innerWidth'],_0x408fd3=window['innerHeight'],_0x378316=_0x408fd3-_0xcadfb3['bottom'],_0xe5dfac=_0xcadfb3['top'],_0x463ee7=_0x378316<_0x4faaab+0xa&&_0xe5dfac>_0x378316;let _0x3158d3,_0x439c35;_0x463ee7?_0x3158d3=_0xcadfb3['top']+window['scrollY']-_0x4faaab-0x4:_0x3158d3=_0xcadfb3['bottom']+window['scrollY']+0x4,_0x439c35=_0xcadfb3['left']+window['scrollX'],_0x439c35+_0x2f572c>_0x4c4720-0xa&&(_0x439c35=_0x4c4720-_0x2f572c-0xa),_0x439c35<0xa&&(_0x439c35=0xa),this['mentionDropdown']['style']['position']='absolute',this['mentionDropdown']['style']['top']=_0x3158d3+'px',this['mentionDropdown']['style']['left']=_0x439c35+'px';}['mentionNavigate'](_0x57964b){const _0x1e8959=this['mentionState']['filteredUsers']['length'];if(_0x1e8959===0x0)return;this['mentionState']['selectedIndex']=(this['mentionState']['selectedIndex']+_0x57964b+_0x1e8959)%_0x1e8959,this['updateMentionSelection']();}['updateMentionSelection'](){if(!this['mentionDropdown'])return;const _0x4b7a66=this['mentionDropdown']['querySelectorAll']('.mention-option');_0x4b7a66['forEach']((_0x479d11,_0x1ff691)=>{_0x1ff691===this['mentionState']['selectedIndex']?(_0x479d11['classList']['add']('mention-option-selected'),_0x479d11['scrollIntoView']({'block':'nearest'})):_0x479d11['classList']['remove']('mention-option-selected');});}['insertMention'](_0x1f6be0){if(!_0x1f6be0)return;const _0x423416=window['getSelection']();if(!_0x423416||_0x423416['rangeCount']===0x0)return;const _0x2d2439=_0x423416['getRangeAt'](0x0),_0xeaa275=this['mentionState']['startNode'];if(!_0xeaa275||_0xeaa275['nodeType']!==Node['TEXT_NODE']){this['closeMentionDropdown']();return;}const _0x48457e=_0xeaa275['textContent']||'',_0x45d8cb=this['mentionState']['startOffset'],_0x44172b=_0x2d2439['startOffset'],_0xfbaa3c=_0x48457e['slice'](0x0,_0x45d8cb),_0x5d1c57=_0x48457e['slice'](_0x44172b),_0x3fea2b=document['createElement']('span');_0x3fea2b['className']='mention',_0x3fea2b['setAttribute']('data-mention-user-id',_0x1f6be0['id']),_0x3fea2b['setAttribute']('contenteditable','false'),_0x3fea2b['textContent']='@'+(_0x1f6be0['name']||_0x1f6be0['username']);const _0x3021aa=document['createTextNode'](_0xfbaa3c),_0x27b203=document['createTextNode']('\x20'+_0x5d1c57),_0x26827d=_0xeaa275['parentNode'];_0x26827d['insertBefore'](_0x3021aa,_0xeaa275),_0x26827d['insertBefore'](_0x3fea2b,_0xeaa275),_0x26827d['insertBefore'](_0x27b203,_0xeaa275),_0x26827d['removeChild'](_0xeaa275);const _0x1986a1=document['createRange']();_0x1986a1['setStart'](_0x27b203,0x1),_0x1986a1['collapse'](!![]),_0x423416['removeAllRanges'](),_0x423416['addRange'](_0x1986a1),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'](_0x29fd4d){const _0x56b9f7=document['createElement']('div');return _0x56b9f7['textContent']=_0x29fd4d,_0x56b9f7['innerHTML'];}['getInitials'](_0xa72cf4){if(!_0xa72cf4)return'?';const _0xaf3b8e=_0xa72cf4['trim']()['split'](/\s+/);if(_0xaf3b8e['length']>=0x2)return(_0xaf3b8e[0x0][0x0]+_0xaf3b8e[_0xaf3b8e['length']-0x1][0x0])['toUpperCase']();return _0xa72cf4['substring'](0x0,0x2)['toUpperCase']();}['getAvatarColorIndex'](_0x40f7ff){if(!_0x40f7ff)return 0x6;let _0x532da6=0x0;for(let _0x41fcd7=0x0;_0x41fcd7<_0x40f7ff['length'];_0x41fcd7++){_0x532da6=_0x40f7ff['charCodeAt'](_0x41fcd7)+((_0x532da6<<0x5)-_0x532da6);}return Math['abs'](_0x532da6)%0xa;}['destroy'](){this['selectionChangeHandler']&&document['removeEventListener']('selectionchange',this['selectionChangeHandler']);this['linkClickHandler']&&this['editor']['removeEventListener']('click',this['linkClickHandler']);this['linkMouseEnterHandler']&&this['editor']['removeEventListener']('mouseover',this['linkMouseEnterHandler']);this['linkMouseLeaveHandler']&&this['editor']['removeEventListener']('mouseout',this['linkMouseLeaveHandler']);this['linkTooltipTimeout']&&clearTimeout(this['linkTooltipTimeout']);this['linkTooltip']&&(this['linkTooltip']['remove'](),this['linkTooltip']=null);this['linkDialog']&&(this['linkDialog']['remove'](),this['linkDialog']=null,this['linkDialogContext']=null,this['linkDialogElements']=null);this['mentionDropdown']&&(this['mentionDropdown']['remove'](),this['mentionDropdown']=null);this['mentionClickOutsideHandler']&&document['removeEventListener']('click',this['mentionClickOutsideHandler']);this['mentionScrollHandler']&&window['removeEventListener']('scroll',this['mentionScrollHandler'],!![]);for(const _0x2296d5 of this['attachmentObjectUrls']['values']()){try{URL['revokeObjectURL'](_0x2296d5);}catch{}}this['attachmentObjectUrls']['clear'](),this['container']?this['container']['remove']():this['editor']['remove'](),this['element']['style']['display']='';}}typeof window!=='undefined'&&(window['MarkdownEditor']=MarkdownEditor);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
let monacoLoadPromise=null;async function ensureMonacoLoaded(){if(typeof monaco!=='undefined')return;if(monacoLoadPromise)return monacoLoadPromise;const _0x40b7b9=document['querySelector']('script[src*=\x22monaco-editor\x22][src*=\x22loader.min.js\x22]');if(_0x40b7b9)return monacoLoadPromise=new Promise((_0x2c3037,_0x2f46f6)=>{const _0x51d726=setInterval(()=>{typeof monaco!=='undefined'&&(clearInterval(_0x51d726),_0x2c3037());},0x32);setTimeout(()=>{clearInterval(_0x51d726),_0x2f46f6(new Error('Monaco\x20loading\x20timeout'));},0x2710);}),monacoLoadPromise;return monacoLoadPromise=new Promise((_0x3d8634,_0x2f8d52)=>{const _0x3063d3=document['createElement']('script');_0x3063d3['src']='https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.45.0/min/vs/loader.min.js',_0x3063d3['onload']=()=>{require['config']({'paths':{'vs':'https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.45.0/min/vs'}}),require(['vs/editor/editor.main'],()=>{_0x3d8634();});},_0x3063d3['onerror']=()=>_0x2f8d52(new Error('Failed\x20to\x20load\x20Monaco\x20Editor')),document['head']['appendChild'](_0x3063d3);}),monacoLoadPromise;}function getMonacoTheme(){const _0x4de0a3=document['documentElement']['getAttribute']('data-theme')==='dark';return _0x4de0a3?'vs-dark':'vs';}function isMarkdownFile(_0x2aff3e){if(!_0x2aff3e)return![];const _0x4115eb=_0x2aff3e['split']('.')['pop']()['toLowerCase']();return _0x4115eb==='md'||_0x4115eb==='markdown';}function createMarkdownFileEditor(_0x403998){const {container:_0x5e5aaf,content:content='',readOnly:readOnly=![],height:height='400px',onChange:onChange=null,placeholder:placeholder='Enter\x20markdown\x20content...',enableModeToggle:enableModeToggle=!![],initialMode:initialMode='visual'}=_0x403998;_0x5e5aaf['innerHTML']='';let _0x1e1e4a='visual',_0x426cdc=content,_0x1bd882=null,_0x5463be=null,_0x4d7c0f=![],_0x21e078=initialMode==='source';const _0x275e9=document['createElement']('div');_0x275e9['className']='markdown-file-editor-wrapper',_0x275e9['style']['height']=height,_0x275e9['style']['display']='flex',_0x275e9['style']['flexDirection']='column',_0x275e9['style']['border']='1px\x20solid\x20var(--color-border)',_0x275e9['style']['borderRadius']='var(--radius-small)',_0x275e9['style']['overflow']='hidden';let _0xe047dd=null,_0x5b4b13=null,_0x269ad6=null;!readOnly&&enableModeToggle&&(_0xe047dd=document['createElement']('div'),_0xe047dd['className']='markdown-editor-mode-toggle',_0xe047dd['style']['display']='flex',_0xe047dd['style']['alignItems']='center',_0xe047dd['style']['padding']='4px\x208px',_0xe047dd['style']['borderBottom']='1px\x20solid\x20var(--color-border)',_0xe047dd['style']['background']='var(--color-surface-secondary)',_0xe047dd['style']['gap']='4px',_0xe047dd['style']['flexShrink']='0',_0x5b4b13=document['createElement']('button'),_0x5b4b13['type']='button',_0x5b4b13['className']='markdown-mode-btn',_0x5b4b13['innerHTML']='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22><path\x20d=\x22M1\x2012s4-8\x2011-8\x2011\x208\x2011\x208-4\x208-11\x208-11-8-11-8z\x22></path><circle\x20cx=\x2212\x22\x20cy=\x2212\x22\x20r=\x223\x22></circle></svg>\x20Visual',_0x5b4b13['title']='Visual\x20editing\x20mode\x20(WYSIWYG)',_0x269ad6=document['createElement']('button'),_0x269ad6['type']='button',_0x269ad6['className']='markdown-mode-btn',_0x269ad6['innerHTML']='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22><polyline\x20points=\x2216\x2018\x2022\x2012\x2016\x206\x22></polyline><polyline\x20points=\x228\x206\x202\x2012\x208\x2018\x22></polyline></svg>\x20Source',_0x269ad6['title']='Source\x20editing\x20mode\x20(Monaco\x20Editor)',_0xe047dd['appendChild'](_0x5b4b13),_0xe047dd['appendChild'](_0x269ad6),_0x275e9['appendChild'](_0xe047dd));const _0x516625=document['createElement']('div');_0x516625['className']='markdown-visual-container',_0x516625['style']['flex']='1',_0x516625['style']['display']='flex',_0x516625['style']['flexDirection']='column',_0x516625['style']['overflow']='hidden',_0x516625['style']['minHeight']='0';const _0x5ce430=document['createElement']('textarea');_0x5ce430['style']['display']='none',_0x5ce430['value']=content,_0x516625['appendChild'](_0x5ce430),_0x275e9['appendChild'](_0x516625);const _0x17adde=document['createElement']('div');_0x17adde['className']='markdown-source-container',_0x17adde['style']['flex']='1',_0x17adde['style']['display']='none',_0x17adde['style']['overflow']='hidden',_0x17adde['style']['minHeight']='0',_0x275e9['appendChild'](_0x17adde),_0x5e5aaf['appendChild'](_0x275e9),_0x1bd882=new window['MarkdownEditor'](_0x5ce430,{'placeholder':placeholder,'editable':!readOnly,'minHeight':'100%','toolbar':!readOnly,'onChange':_0x1ca5df=>{_0x426cdc=_0x1ca5df,onChange&&onChange(_0x1ca5df);}});_0x1bd882['container']&&(_0x1bd882['container']['style']['flex']='1',_0x1bd882['container']['style']['display']='flex',_0x1bd882['container']['style']['flexDirection']='column',_0x1bd882['container']['style']['overflow']='hidden');_0x1bd882['editor']&&(_0x1bd882['editor']['style']['flex']='1',_0x1bd882['editor']['style']['overflow']='auto',_0x1bd882['editor']['style']['minHeight']='0',_0x1bd882['editor']['style']['border']='none',_0x1bd882['editor']['style']['borderRadius']='0',_0x1bd882['editor']['style']['padding']='16px',_0x1bd882['editor']['style']['fontSize']='14px',_0x1bd882['editor']['style']['lineHeight']='1.6');_0x1bd882['toolbar']&&(_0x1bd882['toolbar']['style']['borderRadius']='0',_0x1bd882['toolbar']['style']['flexShrink']='0');content&&_0x1bd882['setMarkdown'](content);function _0x167f6e(){if(!_0x5b4b13||!_0x269ad6)return;_0x1e1e4a==='visual'?(_0x5b4b13['classList']['add']('active'),_0x269ad6['classList']['remove']('active')):(_0x5b4b13['classList']['remove']('active'),_0x269ad6['classList']['add']('active'));}async function _0x2ec8cb(){if(_0x4d7c0f)return;try{await ensureMonacoLoaded(),_0x5463be=monaco['editor']['create'](_0x17adde,{'value':_0x426cdc,'language':'markdown','theme':getMonacoTheme(),'readOnly':readOnly,'minimap':{'enabled':![]},'automaticLayout':!![],'wordWrap':'on','lineNumbers':'on','scrollBeyondLastLine':![],'fontSize':0xe,'lineHeight':0x16,'padding':{'top':0x10,'bottom':0x10},'renderWhitespace':'selection','tabSize':0x2,'insertSpaces':!![]}),_0x5463be['onDidChangeModelContent'](()=>{_0x426cdc=_0x5463be['getValue'](),onChange&&onChange(_0x426cdc);}),_0x4d7c0f=!![];}catch(_0x1f638d){console['error']('Failed\x20to\x20initialize\x20Monaco\x20editor:',_0x1f638d);throw _0x1f638d;}}async function _0x411281(_0x161c20){if(_0x161c20===_0x1e1e4a)return;if(_0x1e1e4a==='visual')_0x426cdc=_0x1bd882['getMarkdown']();else _0x5463be&&(_0x426cdc=_0x5463be['getValue']());_0x1e1e4a=_0x161c20;if(_0x161c20==='visual')_0x17adde['style']['display']='none',_0x516625['style']['display']='flex',_0x1bd882['setMarkdown'](_0x426cdc),_0x1bd882['focus']();else{_0x516625['style']['display']='none',_0x17adde['style']['display']='block';if(!_0x4d7c0f)try{await _0x2ec8cb();}catch(_0x360c74){console['error']('Failed\x20to\x20switch\x20to\x20source\x20mode:',_0x360c74),_0x1e1e4a='visual',_0x17adde['style']['display']='none',_0x516625['style']['display']='flex',_0x167f6e();return;}_0x5463be&&(_0x5463be['setValue'](_0x426cdc),_0x5463be['focus'](),_0x5463be['layout']());}_0x167f6e();}_0x5b4b13&&_0x269ad6&&(_0x5b4b13['addEventListener']('click',_0xd23b1f=>{_0xd23b1f['preventDefault'](),_0x411281('visual');}),_0x269ad6['addEventListener']('click',_0x471180=>{_0x471180['preventDefault'](),_0x411281('source');}),_0x167f6e());_0x21e078&&setTimeout(()=>_0x411281('source'),0x0);const _0xfe0aa0={'getValue':()=>{if(_0x1e1e4a==='visual')return _0x1bd882['getMarkdown']();else{if(_0x5463be)return _0x5463be['getValue']();}return _0x426cdc;},'setValue':_0xb5b86d=>{_0x426cdc=_0xb5b86d||'';if(_0x1e1e4a==='visual')_0x1bd882['setMarkdown'](_0x426cdc);else _0x5463be&&_0x5463be['setValue'](_0x426cdc);},'focus':()=>{if(_0x1e1e4a==='visual')_0x1bd882['focus']();else _0x5463be&&_0x5463be['focus']();},'setEditable':_0x28d692=>{_0x1bd882['setEditable'](_0x28d692),_0x5463be&&_0x5463be['updateOptions']({'readOnly':!_0x28d692});},'destroy':()=>{_0x1bd882['destroy'](),_0x5463be&&(_0x5463be['dispose'](),_0x5463be=null),_0x5e5aaf['innerHTML']='';},'getMode':()=>_0x1e1e4a,'setMode':_0x351b2f=>_0x411281(_0x351b2f),'toggleMode':()=>_0x411281(_0x1e1e4a==='visual'?'source':'visual'),'_visualEditor':_0x1bd882,'_getSourceEditor':()=>_0x5463be,'_container':_0x5e5aaf,'_isMarkdownFileEditor':!![],'_hasModeToggle':enableModeToggle};return _0xfe0aa0;}const markdownFileEditors=new Map();function getOrCreateMarkdownFileEditor(_0x49ca40,_0x2ab33f,_0x906cb3=![],_0x6655f3='400px',_0x3c10af=null,_0x2493ec={}){const _0x2670f7=document['getElementById'](_0x49ca40);if(!_0x2670f7)return console['error']('Container\x20not\x20found:\x20'+_0x49ca40),null;const _0x5d8a1b=markdownFileEditors['get'](_0x49ca40);if(_0x5d8a1b){try{_0x5d8a1b['destroy']();}catch(_0x291822){console['warn']('Failed\x20to\x20destroy\x20existing\x20markdown\x20editor:',_0x291822);}markdownFileEditors['delete'](_0x49ca40);}const _0x376744=createMarkdownFileEditor({'container':_0x2670f7,'content':_0x2ab33f,'readOnly':_0x906cb3,'height':_0x6655f3,'onChange':_0x3c10af,..._0x2493ec});return markdownFileEditors['set'](_0x49ca40,_0x376744),_0x376744;}function getMarkdownFileEditorValue(_0x166214){const _0x23125a=markdownFileEditors['get'](_0x166214);if(!_0x23125a)return null;return _0x23125a['getValue']();}function setMarkdownFileEditorValue(_0x2ca4c5,_0x4eb2aa){const _0x52fe81=markdownFileEditors['get'](_0x2ca4c5);_0x52fe81&&_0x52fe81['setValue'](_0x4eb2aa||'');}function disposeMarkdownFileEditor(_0x19338d){const _0x263a79=markdownFileEditors['get'](_0x19338d);if(_0x263a79){try{_0x263a79['destroy']();}catch(_0x5cd6c8){console['warn']('Failed\x20to\x20dispose\x20markdown\x20editor:',_0x5cd6c8);}markdownFileEditors['delete'](_0x19338d);}}function hasMarkdownFileEditor(_0x2011c5){return markdownFileEditors['has'](_0x2011c5);}function getMarkdownFileEditorMode(_0x160d08){const _0x4c4fb4=markdownFileEditors['get'](_0x160d08);if(!_0x4c4fb4||!_0x4c4fb4['getMode'])return null;return _0x4c4fb4['getMode']();}function setMarkdownFileEditorMode(_0x135fa0,_0x5d8df7){const _0x34fccc=markdownFileEditors['get'](_0x135fa0);_0x34fccc&&_0x34fccc['setMode']&&_0x34fccc['setMode'](_0x5d8df7);}typeof window!=='undefined'&&(window['MarkdownFileEditor']={'isMarkdownFile':isMarkdownFile,'create':createMarkdownFileEditor,'getOrCreate':getOrCreateMarkdownFileEditor,'getValue':getMarkdownFileEditorValue,'setValue':setMarkdownFileEditorValue,'dispose':disposeMarkdownFileEditor,'has':hasMarkdownFileEditor,'getMode':getMarkdownFileEditorMode,'setMode':setMarkdownFileEditorMode,'editors':markdownFileEditors,'ensureMonacoLoaded':ensureMonacoLoaded});
|
|
1
|
+
let monacoLoadPromise=null;async function ensureMonacoLoaded(){if(typeof monaco!=='undefined')return;if(monacoLoadPromise)return monacoLoadPromise;const _0xb4784a=document['querySelector']('script[src*=\x22monaco-editor\x22][src*=\x22loader.min.js\x22]');if(_0xb4784a)return monacoLoadPromise=new Promise((_0x229c3a,_0x53a910)=>{const _0x399b9f=setInterval(()=>{typeof monaco!=='undefined'&&(clearInterval(_0x399b9f),_0x229c3a());},0x32);setTimeout(()=>{clearInterval(_0x399b9f),_0x53a910(new Error('Monaco\x20loading\x20timeout'));},0x2710);}),monacoLoadPromise;return monacoLoadPromise=new Promise((_0x60ec55,_0x3d76dc)=>{const _0x4b2cdc=document['createElement']('script');_0x4b2cdc['src']='https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.45.0/min/vs/loader.min.js',_0x4b2cdc['onload']=()=>{require['config']({'paths':{'vs':'https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.45.0/min/vs'}}),require(['vs/editor/editor.main'],()=>{_0x60ec55();});},_0x4b2cdc['onerror']=()=>_0x3d76dc(new Error('Failed\x20to\x20load\x20Monaco\x20Editor')),document['head']['appendChild'](_0x4b2cdc);}),monacoLoadPromise;}function getMonacoTheme(){const _0x33eaf9=document['documentElement']['getAttribute']('data-theme')==='dark';return _0x33eaf9?'vs-dark':'vs';}function isMarkdownFile(_0x28a0a1){if(!_0x28a0a1)return![];const _0x3727f2=_0x28a0a1['split']('.')['pop']()['toLowerCase']();return _0x3727f2==='md'||_0x3727f2==='markdown';}function createMarkdownFileEditor(_0x9165d5){const {container:_0x1fad71,content:content='',readOnly:readOnly=![],height:height='400px',onChange:onChange=null,placeholder:placeholder='Enter\x20markdown\x20content...',enableModeToggle:enableModeToggle=!![],initialMode:initialMode='visual'}=_0x9165d5;_0x1fad71['innerHTML']='';let _0x123be2='visual',_0x6ec4e3=content,_0x7e41f=null,_0x443e00=null,_0x432aa9=![],_0xe176a4=initialMode==='source';const _0x5672dc=document['createElement']('div');_0x5672dc['className']='markdown-file-editor-wrapper',_0x5672dc['style']['height']=height,_0x5672dc['style']['display']='flex',_0x5672dc['style']['flexDirection']='column',_0x5672dc['style']['border']='1px\x20solid\x20var(--color-border)',_0x5672dc['style']['borderRadius']='var(--radius-small)',_0x5672dc['style']['overflow']='hidden';let _0x268f86=null,_0x555e78=null,_0x31c541=null;!readOnly&&enableModeToggle&&(_0x268f86=document['createElement']('div'),_0x268f86['className']='markdown-editor-mode-toggle',_0x268f86['style']['display']='flex',_0x268f86['style']['alignItems']='center',_0x268f86['style']['padding']='4px\x208px',_0x268f86['style']['borderBottom']='1px\x20solid\x20var(--color-border)',_0x268f86['style']['background']='var(--color-surface-secondary)',_0x268f86['style']['gap']='4px',_0x268f86['style']['flexShrink']='0',_0x555e78=document['createElement']('button'),_0x555e78['type']='button',_0x555e78['className']='markdown-mode-btn',_0x555e78['innerHTML']='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22><path\x20d=\x22M1\x2012s4-8\x2011-8\x2011\x208\x2011\x208-4\x208-11\x208-11-8-11-8z\x22></path><circle\x20cx=\x2212\x22\x20cy=\x2212\x22\x20r=\x223\x22></circle></svg>\x20Visual',_0x555e78['title']='Visual\x20editing\x20mode\x20(WYSIWYG)',_0x31c541=document['createElement']('button'),_0x31c541['type']='button',_0x31c541['className']='markdown-mode-btn',_0x31c541['innerHTML']='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20fill=\x22none\x22><polyline\x20points=\x2216\x2018\x2022\x2012\x2016\x206\x22></polyline><polyline\x20points=\x228\x206\x202\x2012\x208\x2018\x22></polyline></svg>\x20Source',_0x31c541['title']='Source\x20editing\x20mode\x20(Monaco\x20Editor)',_0x268f86['appendChild'](_0x555e78),_0x268f86['appendChild'](_0x31c541),_0x5672dc['appendChild'](_0x268f86));const _0x3716cc=document['createElement']('div');_0x3716cc['className']='markdown-visual-container',_0x3716cc['style']['flex']='1',_0x3716cc['style']['display']='flex',_0x3716cc['style']['flexDirection']='column',_0x3716cc['style']['overflow']='hidden',_0x3716cc['style']['minHeight']='0';const _0x308ccc=document['createElement']('textarea');_0x308ccc['style']['display']='none',_0x308ccc['value']=content,_0x3716cc['appendChild'](_0x308ccc),_0x5672dc['appendChild'](_0x3716cc);const _0x4e5847=document['createElement']('div');_0x4e5847['className']='markdown-source-container',_0x4e5847['style']['flex']='1',_0x4e5847['style']['display']='none',_0x4e5847['style']['overflow']='hidden',_0x4e5847['style']['minHeight']='0',_0x5672dc['appendChild'](_0x4e5847),_0x1fad71['appendChild'](_0x5672dc),_0x7e41f=new window['MarkdownEditor'](_0x308ccc,{'placeholder':placeholder,'editable':!readOnly,'minHeight':'100%','toolbar':!readOnly,'onChange':_0x36336e=>{_0x6ec4e3=_0x36336e,onChange&&onChange(_0x36336e);}});_0x7e41f['container']&&(_0x7e41f['container']['style']['flex']='1',_0x7e41f['container']['style']['display']='flex',_0x7e41f['container']['style']['flexDirection']='column',_0x7e41f['container']['style']['overflow']='hidden');_0x7e41f['editor']&&(_0x7e41f['editor']['style']['flex']='1',_0x7e41f['editor']['style']['overflow']='auto',_0x7e41f['editor']['style']['minHeight']='0',_0x7e41f['editor']['style']['border']='none',_0x7e41f['editor']['style']['borderRadius']='0',_0x7e41f['editor']['style']['padding']='16px',_0x7e41f['editor']['style']['fontSize']='14px',_0x7e41f['editor']['style']['lineHeight']='1.6');_0x7e41f['toolbar']&&(_0x7e41f['toolbar']['style']['borderRadius']='0',_0x7e41f['toolbar']['style']['flexShrink']='0');content&&_0x7e41f['setMarkdown'](content);function _0x36bac4(){if(!_0x555e78||!_0x31c541)return;_0x123be2==='visual'?(_0x555e78['classList']['add']('active'),_0x31c541['classList']['remove']('active')):(_0x555e78['classList']['remove']('active'),_0x31c541['classList']['add']('active'));}async function _0x23077b(){if(_0x432aa9)return;try{await ensureMonacoLoaded(),_0x443e00=monaco['editor']['create'](_0x4e5847,{'value':_0x6ec4e3,'language':'markdown','theme':getMonacoTheme(),'readOnly':readOnly,'minimap':{'enabled':![]},'automaticLayout':!![],'wordWrap':'on','lineNumbers':'on','scrollBeyondLastLine':![],'fontSize':0xe,'lineHeight':0x16,'padding':{'top':0x10,'bottom':0x10},'renderWhitespace':'selection','tabSize':0x2,'insertSpaces':!![]}),_0x443e00['onDidChangeModelContent'](()=>{_0x6ec4e3=_0x443e00['getValue'](),onChange&&onChange(_0x6ec4e3);}),_0x432aa9=!![];}catch(_0x523b62){console['error']('Failed\x20to\x20initialize\x20Monaco\x20editor:',_0x523b62);throw _0x523b62;}}async function _0x3de32e(_0x1c2351){if(_0x1c2351===_0x123be2)return;if(_0x123be2==='visual')_0x6ec4e3=_0x7e41f['getMarkdown']();else _0x443e00&&(_0x6ec4e3=_0x443e00['getValue']());_0x123be2=_0x1c2351;if(_0x1c2351==='visual')_0x4e5847['style']['display']='none',_0x3716cc['style']['display']='flex',_0x7e41f['setMarkdown'](_0x6ec4e3),_0x7e41f['focus']();else{_0x3716cc['style']['display']='none',_0x4e5847['style']['display']='block';if(!_0x432aa9)try{await _0x23077b();}catch(_0x237e06){console['error']('Failed\x20to\x20switch\x20to\x20source\x20mode:',_0x237e06),_0x123be2='visual',_0x4e5847['style']['display']='none',_0x3716cc['style']['display']='flex',_0x36bac4();return;}_0x443e00&&(_0x443e00['setValue'](_0x6ec4e3),_0x443e00['focus'](),_0x443e00['layout']());}_0x36bac4();}_0x555e78&&_0x31c541&&(_0x555e78['addEventListener']('click',_0x415fbc=>{_0x415fbc['preventDefault'](),_0x3de32e('visual');}),_0x31c541['addEventListener']('click',_0x51713c=>{_0x51713c['preventDefault'](),_0x3de32e('source');}),_0x36bac4());_0xe176a4&&setTimeout(()=>_0x3de32e('source'),0x0);const _0x3ef114={'getValue':()=>{if(_0x123be2==='visual')return _0x7e41f['getMarkdown']();else{if(_0x443e00)return _0x443e00['getValue']();}return _0x6ec4e3;},'setValue':_0x5aa28a=>{_0x6ec4e3=_0x5aa28a||'';if(_0x123be2==='visual')_0x7e41f['setMarkdown'](_0x6ec4e3);else _0x443e00&&_0x443e00['setValue'](_0x6ec4e3);},'focus':()=>{if(_0x123be2==='visual')_0x7e41f['focus']();else _0x443e00&&_0x443e00['focus']();},'setEditable':_0xb3bd34=>{_0x7e41f['setEditable'](_0xb3bd34),_0x443e00&&_0x443e00['updateOptions']({'readOnly':!_0xb3bd34});},'destroy':()=>{_0x7e41f['destroy'](),_0x443e00&&(_0x443e00['dispose'](),_0x443e00=null),_0x1fad71['innerHTML']='';},'getMode':()=>_0x123be2,'setMode':_0x2be90e=>_0x3de32e(_0x2be90e),'toggleMode':()=>_0x3de32e(_0x123be2==='visual'?'source':'visual'),'_visualEditor':_0x7e41f,'_getSourceEditor':()=>_0x443e00,'_container':_0x1fad71,'_isMarkdownFileEditor':!![],'_hasModeToggle':enableModeToggle};return _0x3ef114;}const markdownFileEditors=new Map();function getOrCreateMarkdownFileEditor(_0xd193f,_0x59db75,_0x58b0f0=![],_0x1dd237='400px',_0x396cbc=null,_0x3a8add={}){const _0x2fbd3d=document['getElementById'](_0xd193f);if(!_0x2fbd3d)return console['error']('Container\x20not\x20found:\x20'+_0xd193f),null;const _0x349445=markdownFileEditors['get'](_0xd193f);if(_0x349445){try{_0x349445['destroy']();}catch(_0x226182){console['warn']('Failed\x20to\x20destroy\x20existing\x20markdown\x20editor:',_0x226182);}markdownFileEditors['delete'](_0xd193f);}const _0x28f9a4=createMarkdownFileEditor({'container':_0x2fbd3d,'content':_0x59db75,'readOnly':_0x58b0f0,'height':_0x1dd237,'onChange':_0x396cbc,..._0x3a8add});return markdownFileEditors['set'](_0xd193f,_0x28f9a4),_0x28f9a4;}function getMarkdownFileEditorValue(_0x2c4090){const _0x352bc1=markdownFileEditors['get'](_0x2c4090);if(!_0x352bc1)return null;return _0x352bc1['getValue']();}function setMarkdownFileEditorValue(_0x3ee1fb,_0x37ff17){const _0x250c6b=markdownFileEditors['get'](_0x3ee1fb);_0x250c6b&&_0x250c6b['setValue'](_0x37ff17||'');}function disposeMarkdownFileEditor(_0x527e20){const _0x3ac5ca=markdownFileEditors['get'](_0x527e20);if(_0x3ac5ca){try{_0x3ac5ca['destroy']();}catch(_0x37f933){console['warn']('Failed\x20to\x20dispose\x20markdown\x20editor:',_0x37f933);}markdownFileEditors['delete'](_0x527e20);}}function hasMarkdownFileEditor(_0x58ecd6){return markdownFileEditors['has'](_0x58ecd6);}function getMarkdownFileEditorMode(_0x1fc566){const _0x21af70=markdownFileEditors['get'](_0x1fc566);if(!_0x21af70||!_0x21af70['getMode'])return null;return _0x21af70['getMode']();}function setMarkdownFileEditorMode(_0x233e2f,_0x44d34e){const _0x45ae85=markdownFileEditors['get'](_0x233e2f);_0x45ae85&&_0x45ae85['setMode']&&_0x45ae85['setMode'](_0x44d34e);}typeof window!=='undefined'&&(window['MarkdownFileEditor']={'isMarkdownFile':isMarkdownFile,'create':createMarkdownFileEditor,'getOrCreate':getOrCreateMarkdownFileEditor,'getValue':getMarkdownFileEditorValue,'setValue':setMarkdownFileEditorValue,'dispose':disposeMarkdownFileEditor,'has':hasMarkdownFileEditor,'getMode':getMarkdownFileEditorMode,'setMode':setMarkdownFileEditorMode,'editors':markdownFileEditors,'ensureMonacoLoaded':ensureMonacoLoaded});
|