@profoundlogic/coderflow-server 0.5.1 → 0.5.2
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.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/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
|
-
const _0xbdd971=_0x1a52;(function(_0xfff571,_0x420f60){const _0x43ab0f=_0x1a52,_0x1eb942=_0xfff571();while(!![]){try{const _0x4623fd=parseInt(_0x43ab0f(0x159))/0x1*(-parseInt(_0x43ab0f(0x267))/0x2)+parseInt(_0x43ab0f(0x209))/0x3+-parseInt(_0x43ab0f(0x31e))/0x4+parseInt(_0x43ab0f(0x140))/0x5*(-parseInt(_0x43ab0f(0x211))/0x6)+-parseInt(_0x43ab0f(0x109))/0x7+parseInt(_0x43ab0f(0x268))/0x8+parseInt(_0x43ab0f(0x1ef))/0x9;if(_0x4623fd===_0x420f60)break;else _0x1eb942['push'](_0x1eb942['shift']());}catch(_0x15e6e0){_0x1eb942['push'](_0x1eb942['shift']());}}}(_0x3917,0x251d0));import{API,Utils,CustomSelect,ConfirmDialog,initializeAdminMenu}from'./app.js';import{initTheme,mountThemeToggle}from'./theme.js';const state={'currentSection':'general','setupConfig':null,'environments':[],'modelConfig':{},'availableModels':{},'providerStatus':{},'emailConfig':{},'ssoConfig':{},'gitProviders':[],'teams':[],'gitProvidersConfig':{'token_expiry_days':0x1,'setup_repo_auth':{'mode':_0xbdd971(0x2dd),'provider':null}},'caCertsConfig':{'certificates':[]}},customSelects={'agent':null,'environment':null,'claudeModel':null,'claudeEffort':null,'codexModel':null,'geminiModel':null,'codexReasoning':null,'ssoRole':null,'gitProviderType':null},inlineMessageTimers={};function showInlineMessage(_0x57c2f7,_0x470c3b,_0xdd2ed,_0x534eb3=null){const _0x1d7682=_0xbdd971,_0x58a9ab=document[_0x1d7682(0x10d)](_0x57c2f7+_0x1d7682(0x2d3));if(!_0x58a9ab){if(_0x470c3b===_0x1d7682(0x2b0))Utils[_0x1d7682(0x1f7)](_0xdd2ed);else Utils[_0x1d7682(0x1e9)](_0xdd2ed);return;}inlineMessageTimers[_0x57c2f7]&&(clearTimeout(inlineMessageTimers[_0x57c2f7]),inlineMessageTimers[_0x57c2f7]=null);_0x58a9ab[_0x1d7682(0x189)]=_0xdd2ed,_0x58a9ab['className']=_0x1d7682(0x1cc)+_0x470c3b,_0x58a9ab['hidden']=![];const _0x46ed81=_0x534eb3!==null?_0x534eb3:_0x470c3b===_0x1d7682(0x2b0)?0x1388:0x0;_0x46ed81>0x0&&(inlineMessageTimers[_0x57c2f7]=setTimeout(()=>{const _0x190428=_0x1d7682;_0x58a9ab[_0x190428(0x33e)]=!![],inlineMessageTimers[_0x57c2f7]=null;},_0x46ed81));}function hideInlineMessage(_0x52f8aa){const _0x2c2ed2=_0xbdd971,_0x185f84=document[_0x2c2ed2(0x10d)](_0x52f8aa+_0x2c2ed2(0x2d3));if(_0x185f84)_0x185f84[_0x2c2ed2(0x33e)]=!![];}document[_0xbdd971(0x153)](_0xbdd971(0xeb),initialize);async function initialize(){const _0x1d61a0=_0xbdd971;try{initTheme(),mountThemeToggle(),await checkAdminAccess(),await initializeAdminMenu(),setupEventListeners(),await loadInitialData(),await handleGitProviderSetupCallback(),await handleSetupRepoOAuthReturn();if(state[_0x1d61a0(0x350)]===_0x1d61a0(0x197))try{const _0x57ec1d=sessionStorage[_0x1d61a0(0x311)](_0x1d61a0(0x385));_0x57ec1d&&document[_0x1d61a0(0x10d)]('section-'+_0x57ec1d)&&await switchSection(_0x57ec1d);}catch(_0x577eac){}document[_0x1d61a0(0x10d)](_0x1d61a0(0x392))[_0x1d61a0(0x33e)]=!![],document['getElementById']('settings-content')[_0x1d61a0(0x33e)]=![];}catch(_0x58fcf9){console[_0x1d61a0(0x1c7)]('Initialization\x20error:',_0x58fcf9),document[_0x1d61a0(0x10d)]('settings-loading')[_0x1d61a0(0x33e)]=!![],document[_0x1d61a0(0x10d)](_0x1d61a0(0x114))['hidden']=![],document[_0x1d61a0(0x10d)]('settings-error-message')[_0x1d61a0(0x189)]=_0x58fcf9[_0x1d61a0(0x358)]||'Unknown\x20error';}}async function handleGitProviderSetupCallback(){const _0x2b25d1=_0xbdd971,_0x398a96=new URLSearchParams(window[_0x2b25d1(0x1ed)][_0x2b25d1(0x191)]),_0x3adb65=_0x398a96[_0x2b25d1(0x278)](_0x2b25d1(0x330));if(_0x3adb65){try{const _0xb5b1a5=new URLSearchParams(_0x3adb65),_0x385432=_0xb5b1a5[_0x2b25d1(0x278)](_0x2b25d1(0x18d)),_0x5ac252=_0xb5b1a5[_0x2b25d1(0x278)](_0x2b25d1(0x16e)),_0x2b821e=_0xb5b1a5[_0x2b25d1(0x278)](_0x2b25d1(0x358));await switchSection(_0x2b25d1(0x250)),await loadGitProviders();if(_0x385432===_0x2b25d1(0x103)&&_0x5ac252)showInlineMessage(_0x2b25d1(0x250),_0x2b25d1(0x2b0),_0x2b25d1(0xfa)+_0x5ac252+_0x2b25d1(0x282));else{if(_0x385432===_0x2b25d1(0x1ad)&&_0x5ac252)showInlineMessage(_0x2b25d1(0x250),_0x2b25d1(0x2b0),_0x2b25d1(0xfa)+_0x5ac252+_0x2b25d1(0x2cb));else _0x2b821e?showInlineMessage('git-providers',_0x2b25d1(0x2b0),_0x2b821e):showInlineMessage(_0x2b25d1(0x250),_0x2b25d1(0x2b0),_0x2b25d1(0x31c));}}catch(_0x33c255){console['error'](_0x2b25d1(0x286),_0x33c255),showInlineMessage(_0x2b25d1(0x250),_0x2b25d1(0x1c7),_0x2b25d1(0x369));}const _0x21e3a5=new URL(window['location']);_0x21e3a5[_0x2b25d1(0x139)][_0x2b25d1(0xfb)](_0x2b25d1(0x330)),window['history'][_0x2b25d1(0x38a)]({},'',_0x21e3a5);}const _0xe386f8=_0x398a96[_0x2b25d1(0x278)]('git_provider_setup_error');if(_0xe386f8){try{const _0x3afd58=new URLSearchParams(_0xe386f8),_0x1b472f=_0x3afd58[_0x2b25d1(0x278)]('error');await switchSection(_0x2b25d1(0x250)),_0x1b472f?showInlineMessage(_0x2b25d1(0x250),'error',_0x2b25d1(0x134)+_0x1b472f):showInlineMessage('git-providers',_0x2b25d1(0x1c7),_0x2b25d1(0x18b));}catch(_0x3c2913){console[_0x2b25d1(0x1c7)]('Failed\x20to\x20parse\x20setup\x20error\x20parameters:',_0x3c2913),showInlineMessage(_0x2b25d1(0x250),'error','GitHub\x20App\x20setup\x20failed.\x20Please\x20try\x20again.');}const _0xa0229=new URL(window[_0x2b25d1(0x1ed)]);_0xa0229[_0x2b25d1(0x139)][_0x2b25d1(0xfb)]('git_provider_setup_error'),window[_0x2b25d1(0x20e)][_0x2b25d1(0x38a)]({},'',_0xa0229);}}async function checkAdminAccess(){const _0x332a4f=_0xbdd971;try{const _0x4c77b4=await API[_0x332a4f(0x34e)]();if(!_0x4c77b4[_0x332a4f(0x146)]){Utils['showToast'](_0x332a4f(0x16c),_0x332a4f(0x1c7)),setTimeout(()=>{const _0x266f48=_0x332a4f;window[_0x266f48(0x1ed)]['href']=_0x266f48(0x331);},0x7d0);throw new Error(_0x332a4f(0x26b));}}catch(_0x298f14){_0x298f14[_0x332a4f(0x358)]!==_0x332a4f(0x26b)&&(window[_0x332a4f(0x1ed)]['href']=_0x332a4f(0x141));throw _0x298f14;}}async function loadInitialData(){const _0x4f63c6=_0xbdd971,[_0x89f254,_0x215532]=await Promise['all']([API[_0x4f63c6(0x278)](_0x4f63c6(0x375)),API[_0x4f63c6(0x278)]('/environments')]);state[_0x4f63c6(0x35c)]=_0x89f254,state[_0x4f63c6(0x1d4)]=_0x215532[_0x4f63c6(0x1d4)]||[],populateGeneralSettings();}function setupEventListeners(){const _0x1b9759=_0xbdd971;document[_0x1b9759(0x138)]('.settings-nav-item')[_0x1b9759(0x1ac)](_0x17fc90=>{const _0x245d50=_0x1b9759;_0x17fc90[_0x245d50(0x153)](_0x245d50(0x27e),()=>switchSection(_0x17fc90[_0x245d50(0x264)]['section']));}),document[_0x1b9759(0x10d)](_0x1b9759(0x328))?.[_0x1b9759(0x153)](_0x1b9759(0x27e),()=>{const _0x2d1a37=_0x1b9759;document[_0x2d1a37(0x10d)](_0x2d1a37(0x114))[_0x2d1a37(0x33e)]=!![],document[_0x2d1a37(0x10d)](_0x2d1a37(0x392))[_0x2d1a37(0x33e)]=![],initialize();}),document['getElementById']('save-general-btn')['addEventListener'](_0x1b9759(0x27e),saveGeneralSettings),document[_0x1b9759(0x10d)](_0x1b9759(0xf6))[_0x1b9759(0x153)](_0x1b9759(0x27e),saveKeepaliveSettings),setupApiKeyToggleListeners(),document[_0x1b9759(0x10d)](_0x1b9759(0x34f))[_0x1b9759(0x153)]('click',saveModelConfig),setupAiProviderListeners(),document[_0x1b9759(0x10d)]('save-email-btn')[_0x1b9759(0x153)](_0x1b9759(0x27e),saveEmailSettings),document[_0x1b9759(0x10d)](_0x1b9759(0x354))[_0x1b9759(0x153)](_0x1b9759(0x27e),testEmailConnection),document[_0x1b9759(0x10d)]('email-send-test-btn')[_0x1b9759(0x153)]('click',sendTestEmail),document[_0x1b9759(0x10d)](_0x1b9759(0x28a))['addEventListener']('click',openAddProviderTypeModal),document[_0x1b9759(0x10d)](_0x1b9759(0x356))[_0x1b9759(0x153)](_0x1b9759(0x27e),saveGitTokenExpiration),document[_0x1b9759(0x10d)](_0x1b9759(0x1a5))['addEventListener']('click',saveSetupRepoAuthSettings),document['getElementById'](_0x1b9759(0x324))[_0x1b9759(0x153)]('click',testSetupRepoAuthSettings),document['getElementById'](_0x1b9759(0x365))[_0x1b9759(0x153)](_0x1b9759(0x33f),onSetupRepoAuthModeChange),initGitConnectionsRequiredModal(),setupGitProviderListeners(),setupProviderTypeListeners(),setupGitHubSetupWizardListeners(),document[_0x1b9759(0x10d)](_0x1b9759(0x1b1))[_0x1b9759(0x153)](_0x1b9759(0x27e),saveSsoSettings),document[_0x1b9759(0x10d)](_0x1b9759(0x30c))[_0x1b9759(0x153)](_0x1b9759(0x27e),testSsoConnection),document['getElementById']('sso-remove-btn')?.['addEventListener'](_0x1b9759(0x27e),removeSsoConfig),setupSsoTabs(),setupCaCertificatesListeners();}async function switchSection(_0x538734){const _0xb734a4=_0xbdd971;document[_0xb734a4(0x138)](_0xb734a4(0x290))[_0xb734a4(0x1ac)](_0x40dc57=>{const _0x902276=_0xb734a4;_0x40dc57[_0x902276(0x213)][_0x902276(0x196)](_0x902276(0x269),_0x40dc57[_0x902276(0x264)][_0x902276(0x1df)]===_0x538734);}),document['querySelectorAll']('.settings-panel')[_0xb734a4(0x1ac)](_0x162024=>{const _0x1c9b1d=_0xb734a4;_0x162024['hidden']=_0x162024['id']!=='section-'+_0x538734,_0x162024[_0x1c9b1d(0x213)][_0x1c9b1d(0x196)](_0x1c9b1d(0x269),_0x162024['id']===_0x1c9b1d(0x372)+_0x538734);}),state['currentSection']=_0x538734;try{sessionStorage[_0xb734a4(0xfe)](_0xb734a4(0x385),_0x538734);}catch(_0x3caf1a){}try{switch(_0x538734){case _0xb734a4(0x197):populateGeneralSettings();break;case _0xb734a4(0x30a):await loadKeepaliveSettings();break;case _0xb734a4(0x166):await loadAiProviders();break;case _0xb734a4(0x239):await loadModelConfig();break;case _0xb734a4(0x1db):await loadEmailSettings();break;case _0xb734a4(0x250):await loadGitProviders();break;case _0xb734a4(0x15b):await loadSsoSettings();break;case'ca-certificates':await loadCaCertificates();break;}}catch(_0x1c6ae9){console[_0xb734a4(0x1c7)](_0xb734a4(0x35f)+_0x538734+'\x20settings:',_0x1c6ae9),Utils[_0xb734a4(0x1e9)]('Failed\x20to\x20load\x20'+_0x538734+_0xb734a4(0x274));}}function populateGeneralSettings(){const _0x5a9107=_0xbdd971,_0x539eba=state[_0x5a9107(0x35c)];if(!_0x539eba)return;document[_0x5a9107(0x10d)](_0x5a9107(0x25f))[_0x5a9107(0x2c8)]=_0x539eba['name']||'',document['getElementById'](_0x5a9107(0x15d))['value']=_0x539eba[_0x5a9107(0x1f3)]||0x8;const _0x54a6cd=document[_0x5a9107(0x10d)](_0x5a9107(0x253));_0x54a6cd&&(_0x54a6cd[_0x5a9107(0x224)]=_0x539eba[_0x5a9107(0x240)]!==![]),initAgentSelect(_0x539eba[_0x5a9107(0x325)]||_0x5a9107(0xe3)),initEnvironmentSelect(_0x539eba[_0x5a9107(0x1d6)]||'');}function initAgentSelect(_0x57f5e3){const _0x410dfc=_0xbdd971,_0x4f29c9=document['getElementById'](_0x410dfc(0x25e));if(!_0x4f29c9)return;let _0x280f31=document[_0x410dfc(0x10d)]('settings-default-agent-hidden');!_0x280f31&&(_0x280f31=document[_0x410dfc(0x1c3)](_0x410dfc(0x30b)),_0x280f31['id']='settings-default-agent-hidden',_0x280f31[_0x410dfc(0x172)]=_0x410dfc(0x1c6),_0x4f29c9[_0x410dfc(0x31f)](_0x280f31),customSelects[_0x410dfc(0x291)]=new CustomSelect(_0x280f31,{'searchable':![]})),_0x280f31[_0x410dfc(0x2c8)]=_0x57f5e3;}function initEnvironmentSelect(_0x44a14e){const _0x32966a=_0xbdd971,_0x3ccb81=document[_0x32966a(0x10d)](_0x32966a(0xdd));if(!_0x3ccb81)return;let _0x4fe146=document[_0x32966a(0x10d)](_0x32966a(0x27a));!_0x4fe146&&(_0x4fe146=document[_0x32966a(0x1c3)]('select'),_0x4fe146['id']=_0x32966a(0x27a),_0x3ccb81['appendChild'](_0x4fe146)),_0x4fe146[_0x32966a(0x172)]=state['environments'][_0x32966a(0x1ae)](_0x17f623=>'<option\x20value=\x22'+_0x17f623[_0x32966a(0x117)]+'\x22>'+Utils[_0x32966a(0x37e)](_0x17f623[_0x32966a(0x117)])+_0x32966a(0x298))[_0x32966a(0x2c7)](''),!customSelects[_0x32966a(0x374)]&&(customSelects[_0x32966a(0x374)]=new CustomSelect(_0x4fe146,{'searchable':![]})),_0x4fe146[_0x32966a(0x2c8)]=_0x44a14e||(state[_0x32966a(0x1d4)][0x0]?.[_0x32966a(0x117)]||'');}async function saveGeneralSettings(){const _0x9e926=_0xbdd971;try{const _0x46c738=document[_0x9e926(0x10d)](_0x9e926(0x118)),_0x3dbe06=document[_0x9e926(0x10d)](_0x9e926(0x27a)),_0xfec672=document['getElementById'](_0x9e926(0x253)),_0x2c9efe={'name':document['getElementById'](_0x9e926(0x25f))[_0x9e926(0x2c8)][_0x9e926(0x301)](),'default_agent':_0x46c738?.[_0x9e926(0x2c8)]||_0x9e926(0xe3),'default_environment':_0x3dbe06?.[_0x9e926(0x2c8)]||'','max_concurrent_agents':parseInt(document[_0x9e926(0x10d)](_0x9e926(0x15d))[_0x9e926(0x2c8)],0xa)||0x8,'coderflow_attribution':_0xfec672?.[_0x9e926(0x224)]!==![]};await API[_0x9e926(0x243)](_0x9e926(0x148),_0x2c9efe),Object[_0x9e926(0x312)](state[_0x9e926(0x35c)],_0x2c9efe),showInlineMessage(_0x9e926(0x197),_0x9e926(0x2b0),_0x9e926(0x11f));}catch(_0x2981ea){console['error'](_0x9e926(0x353),_0x2981ea),showInlineMessage(_0x9e926(0x197),_0x9e926(0x1c7),_0x9e926(0x263));}}async function loadKeepaliveSettings(){const _0x2205d3=_0xbdd971;try{const [_0x421a9d,_0x423b7f]=await Promise[_0x2205d3(0x28c)]([state[_0x2205d3(0x35c)]?Promise[_0x2205d3(0x17d)](state['setupConfig']):API['get'](_0x2205d3(0x375)),API[_0x2205d3(0x278)](_0x2205d3(0x383))]);state[_0x2205d3(0x35c)]=_0x421a9d;const _0x5355ce=state[_0x2205d3(0x35c)][_0x2205d3(0x2db)]||{},_0x5726e2=_0x5355ce[_0x2205d3(0x318)]||{};['claude',_0x2205d3(0x244),_0x2205d3(0x19d)][_0x2205d3(0x1ac)](_0x2252aa=>{const _0x5bcbc6=_0x2205d3,_0x27eb7b=_0x5726e2[_0x2252aa]||{};document[_0x5bcbc6(0x10d)](_0x5bcbc6(0x22e)+_0x2252aa+_0x5bcbc6(0x22d))['checked']=_0x27eb7b[_0x5bcbc6(0x27d)]||![],document[_0x5bcbc6(0x10d)](_0x5bcbc6(0x22e)+_0x2252aa+_0x5bcbc6(0x2d7))[_0x5bcbc6(0x2c8)]=_0x27eb7b['interval_hours']||0x6;const _0x1e1e50=document[_0x5bcbc6(0x10d)](_0x5bcbc6(0x22e)+_0x2252aa+_0x5bcbc6(0x2f6)),_0x1bb9c1=(_0x423b7f['agents']||[])[_0x5bcbc6(0x359)](_0x1f3278=>_0x1f3278[_0x5bcbc6(0x291)]===_0x2252aa);if(_0x1bb9c1&&_0x1bb9c1[_0x5bcbc6(0x2bf)]){const _0x274e10=new Date(_0x1bb9c1[_0x5bcbc6(0x2bf)]);_0x1e1e50[_0x5bcbc6(0x189)]=_0x5bcbc6(0xf2)+_0x274e10[_0x5bcbc6(0x347)]();}else _0x1e1e50[_0x5bcbc6(0x189)]=_0x5bcbc6(0x12c);});}catch(_0xd99d3f){console[_0x2205d3(0x1c7)](_0x2205d3(0x1f8),_0xd99d3f);throw _0xd99d3f;}}async function saveKeepaliveSettings(){const _0x46e444=_0xbdd971;try{const _0xae9ba9={};[_0x46e444(0xe3),_0x46e444(0x244),_0x46e444(0x19d)][_0x46e444(0x1ac)](_0x412536=>{const _0x5ddbb7=_0x46e444,_0x437a8a=document[_0x5ddbb7(0x10d)](_0x5ddbb7(0x22e)+_0x412536+_0x5ddbb7(0x22d))['checked'],_0x55940e=parseInt(document[_0x5ddbb7(0x10d)](_0x5ddbb7(0x22e)+_0x412536+_0x5ddbb7(0x2d7))['value'],0xa)||0x6;_0xae9ba9[_0x412536]={'enabled':_0x437a8a,'interval_hours':Math['max'](0x1,Math['min'](0x18,_0x55940e))};}),await API[_0x46e444(0x243)](_0x46e444(0x2df),{'agents':_0xae9ba9}),state[_0x46e444(0x35c)][_0x46e444(0x2db)]={'agents':_0xae9ba9},showInlineMessage(_0x46e444(0x30a),'success',_0x46e444(0x1de));}catch(_0x160c32){console[_0x46e444(0x1c7)](_0x46e444(0x271),_0x160c32),showInlineMessage(_0x46e444(0x30a),'error',_0x46e444(0x258));}}const PROVIDER_NAMES={'claude':'Claude\x20(Anthropic)','codex':'Codex\x20(OpenAI)','gemini':_0xbdd971(0x205)};let currentProviderOAuthState=null;function setupApiKeyToggleListeners(){const _0x5071f1=_0xbdd971;document[_0x5071f1(0x138)](_0x5071f1(0xd9))[_0x5071f1(0x1ac)](_0x4f1f2a=>{_0x4f1f2a['addEventListener']('click',toggleVisibility);});}function toggleVisibility(_0x2a442c){const _0xc6ca28=_0xbdd971,_0x41342b=_0x2a442c[_0xc6ca28(0x24c)],_0x68a3ce=_0x41342b[_0xc6ca28(0x264)][_0xc6ca28(0x10f)],_0x2a653d=document[_0xc6ca28(0x10d)](_0x68a3ce);if(!_0x2a653d)return;const _0x9bdd8d=_0x41342b[_0xc6ca28(0x156)](_0xc6ca28(0x204)),_0x244e17=_0x41342b['querySelector'](_0xc6ca28(0x131));if(_0x2a653d[_0xc6ca28(0xf4)]===_0xc6ca28(0x124)){_0x2a653d[_0xc6ca28(0xf4)]=_0xc6ca28(0x306);if(_0x9bdd8d)_0x9bdd8d[_0xc6ca28(0x102)]['display']=_0xc6ca28(0x32f);if(_0x244e17)_0x244e17[_0xc6ca28(0x102)][_0xc6ca28(0x1c0)]=_0xc6ca28(0xf9);}else{_0x2a653d['type']=_0xc6ca28(0x124);if(_0x9bdd8d)_0x9bdd8d[_0xc6ca28(0x102)][_0xc6ca28(0x1c0)]=_0xc6ca28(0xf9);if(_0x244e17)_0x244e17[_0xc6ca28(0x102)][_0xc6ca28(0x1c0)]=_0xc6ca28(0x32f);}}function isValidHttpUrl(_0x45bb1a){const _0x38dc93=_0xbdd971;try{const _0xc2183d=new URL(_0x45bb1a);return _0xc2183d[_0x38dc93(0x310)]===_0x38dc93(0x2bb)||_0xc2183d[_0x38dc93(0x310)]===_0x38dc93(0x2ff);}catch{return![];}}function formatEndpointInfo(_0x1ee44f){const _0x4268fd=_0xbdd971;if(!_0x1ee44f||_0x1ee44f[_0x4268fd(0x391)]!=='custom'||!_0x1ee44f[_0x4268fd(0x37c)])return _0x4268fd(0x187);return _0x1ee44f['api_version']?_0x1ee44f[_0x4268fd(0x37c)]+_0x4268fd(0x29f)+_0x1ee44f['api_version']+')':_0x1ee44f[_0x4268fd(0x37c)];}function escapeInlineOnclickArg(_0x339b4d){const _0x201a54=_0xbdd971;return Utils[_0x201a54(0x37e)](String(_0x339b4d??'')[_0x201a54(0xf7)](/\\/g,'\x5c\x5c')[_0x201a54(0xf7)](/'/g,'\x5c\x27')[_0x201a54(0xf7)](/\r/g,'\x5cr')[_0x201a54(0xf7)](/\n/g,'\x5cn')['replace'](/\u2028/g,_0x201a54(0x1b3))[_0x201a54(0xf7)](/\u2029/g,'\x5cu2029'));}function setAiProviderModalTab(_0x2e7455){const _0x473b06=_0xbdd971,_0x300ca8=document[_0x473b06(0x10d)](_0x473b06(0x17b));if(!_0x300ca8)return;_0x300ca8[_0x473b06(0x264)]['activeTab']=_0x2e7455,_0x300ca8['querySelectorAll'](_0x473b06(0x23a))[_0x473b06(0x1ac)](_0x3f64c4=>{const _0x23283d=_0x473b06;_0x3f64c4[_0x23283d(0x213)][_0x23283d(0x196)](_0x23283d(0x269),_0x3f64c4['dataset'][_0x23283d(0x349)]===_0x2e7455);}),_0x300ca8[_0x473b06(0x138)]('.ai-provider-tab-content')['forEach'](_0x3bef6a=>{const _0x11d3a1=_0x473b06;_0x3bef6a[_0x11d3a1(0x213)][_0x11d3a1(0x196)](_0x11d3a1(0x269),_0x3bef6a['id']===_0x11d3a1(0x294)+_0x2e7455);});const _0x2d6bbc=document[_0x473b06(0x10d)](_0x473b06(0x126));_0x2d6bbc&&(_0x2d6bbc[_0x473b06(0x189)]=_0x2e7455==='oauth'?_0x473b06(0x236):_0x473b06(0x333));}function resetAiProviderAddModal(){const _0x11e0e1=_0xbdd971;currentProviderOAuthState=null,document[_0x11e0e1(0x10d)](_0x11e0e1(0x27c))['value']='',document[_0x11e0e1(0x10d)](_0x11e0e1(0x36d))[_0x11e0e1(0x2c8)]='',document[_0x11e0e1(0x10d)](_0x11e0e1(0x37b))['value']='',document['getElementById']('ai-provider-api-key-input')['value']='',document['getElementById']('ai-provider-api-key-endpoint-enabled')[_0x11e0e1(0x224)]=![],document[_0x11e0e1(0x10d)](_0x11e0e1(0x133))[_0x11e0e1(0x2c8)]='',document[_0x11e0e1(0x10d)](_0x11e0e1(0x1a7))[_0x11e0e1(0x2c8)]='',document['getElementById']('ai-provider-api-key-endpoint-fields')[_0x11e0e1(0x33e)]=!![];}async function loadAiProviders(){const _0x25717e=_0xbdd971;try{const _0x22ccf6=await API['get'](_0x25717e(0x23e));state[_0x25717e(0x225)]=_0x22ccf6,renderProviderAccounts(_0x22ccf6);}catch(_0x272062){console[_0x25717e(0x1c7)](_0x25717e(0x336),_0x272062);throw _0x272062;}}function renderProviderAccounts(_0x51d09e){const _0x36bd2e=_0xbdd971;[_0x36bd2e(0xe3),_0x36bd2e(0x244),_0x36bd2e(0x19d)][_0x36bd2e(0x1ac)](_0x33d209=>{const _0xe96b97=_0x36bd2e,_0x1265aa=_0x51d09e[_0x33d209]||{'accounts':[]},_0x4ebaa3=document['getElementById']('provider-'+_0x33d209+_0xe96b97(0x34c));if(!_0x4ebaa3)return;const _0xcdf212=Array[_0xe96b97(0x18c)](_0x1265aa[_0xe96b97(0x2f8)])?[..._0x1265aa[_0xe96b97(0x2f8)]]:[];if(_0xcdf212['length']===0x0){_0x4ebaa3[_0xe96b97(0x172)]='<div\x20class=\x22provider-no-accounts\x22>No\x20accounts\x20connected</div>';return;}_0xcdf212[_0xe96b97(0x179)]((_0x1e0ca5,_0x56ffb9)=>String(_0x1e0ca5[_0xe96b97(0x332)]||'')['localeCompare'](String(_0x56ffb9['created_at']||''))),_0x4ebaa3[_0xe96b97(0x172)]=_0xcdf212[_0xe96b97(0x1ae)](_0x3cbdf5=>{const _0x80dcd1=_0xe96b97,_0x37d5be=_0x3cbdf5[_0x80dcd1(0xf4)]===_0x80dcd1(0x376),_0x5ed043=_0x3cbdf5[_0x80dcd1(0x10c)]||_0x3cbdf5[_0x80dcd1(0x1db)]||(_0x37d5be?'API\x20Key\x20Account':_0x80dcd1(0x234)),_0xbdce0e=_0x37d5be?(_0x3cbdf5[_0x80dcd1(0x21f)]||_0x80dcd1(0x380))+'\x20·\x20'+formatEndpointInfo(_0x3cbdf5[_0x80dcd1(0x1d9)]):_0x3cbdf5['email']||_0x80dcd1(0xf0),_0x480c02=escapeInlineOnclickArg(_0x33d209),_0x1c61e3=escapeInlineOnclickArg(_0x3cbdf5['id']),_0x2e508f=escapeInlineOnclickArg(_0x5ed043);return'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22provider-account-row\x20'+(_0x3cbdf5[_0x80dcd1(0x2ad)]?_0x80dcd1(0xe6):'')+_0x80dcd1(0x38b)+_0x3cbdf5['id']+_0x80dcd1(0x28d)+(_0x3cbdf5[_0x80dcd1(0x2ad)]?_0x80dcd1(0x2f7):_0x80dcd1(0x233))+_0x80dcd1(0x108)+Utils[_0x80dcd1(0x37e)](_0x5ed043)+_0x80dcd1(0x1e1)+(_0x37d5be?'api-key':_0x80dcd1(0x216))+'\x22>'+(_0x37d5be?'API\x20Key':_0x80dcd1(0xe1))+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x3cbdf5['is_default']?_0x80dcd1(0x1fd):'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22provider-account-email\x22>'+Utils[_0x80dcd1(0x37e)](_0xbdce0e)+'</div>\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=\x22provider-account-actions\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-secondary\x20btn-small\x20provider-auth-test-btn\x22\x20title=\x22Test\x20connection\x22\x20onclick=\x22testProviderAccountAuth(\x27'+_0x480c02+'\x27,\x20\x27'+_0x1c61e3+_0x80dcd1(0xe4)+(_0xcdf212[_0x80dcd1(0x1c8)]>0x1?_0x80dcd1(0x275)+(_0x3cbdf5[_0x80dcd1(0x2ad)]?'\x20btn-icon-active':'')+_0x80dcd1(0x246)+(_0x3cbdf5[_0x80dcd1(0x2ad)]?_0x80dcd1(0x37a):_0x80dcd1(0x12e))+'\x22\x20'+(_0x3cbdf5[_0x80dcd1(0x2ad)]?_0x80dcd1(0x2b8):_0x80dcd1(0x1b2)+_0x480c02+_0x80dcd1(0x220)+_0x1c61e3+'\x27)\x22')+_0x80dcd1(0x1b5):'')+_0x80dcd1(0x170)+(_0x37d5be?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-icon\x20btn-small\x22\x20title=\x22Edit\x20API\x20key\x22\x20onclick=\x22openEditApiKeyModal(\x27'+_0x480c02+_0x80dcd1(0x220)+_0x1c61e3+_0x80dcd1(0x20a):_0x80dcd1(0x335)+_0x480c02+'\x27,\x20\x27'+_0x1c61e3+_0x80dcd1(0x220)+_0x2e508f+_0x80dcd1(0x20a))+_0x80dcd1(0x398)+_0x480c02+'\x27,\x20\x27'+_0x1c61e3+_0x80dcd1(0x220)+_0x2e508f+_0x80dcd1(0x1a0);})[_0xe96b97(0x2c7)]('');});}function setupAiProviderListeners(){const _0x140f78=_0xbdd971;if(window[_0x140f78(0x20d)])return;window[_0x140f78(0x20d)]=!![],['claude','codex','gemini'][_0x140f78(0x1ac)](_0x520e3f=>{const _0x2f4783=_0x140f78,_0x36dfb8=document[_0x2f4783(0x10d)](_0x2f4783(0x24f)+_0x520e3f+'-add-btn');_0x36dfb8&&_0x36dfb8[_0x2f4783(0x153)](_0x2f4783(0x27e),()=>openAiProviderAddModal(_0x520e3f));});const _0x1afb7b=document[_0x140f78(0x10d)]('ai-provider-add-modal');_0x1afb7b&&(_0x1afb7b[_0x140f78(0x156)](_0x140f78(0x12d))?.['addEventListener']('click',closeAiProviderAddModal),_0x1afb7b[_0x140f78(0x156)](_0x140f78(0x158))?.[_0x140f78(0x153)](_0x140f78(0x27e),closeAiProviderAddModal),document[_0x140f78(0x10d)](_0x140f78(0xd5))?.[_0x140f78(0x153)](_0x140f78(0x27e),closeAiProviderAddModal),document['getElementById']('ai-provider-add-submit-btn')?.[_0x140f78(0x153)](_0x140f78(0x27e),submitAiProviderAddModal),_0x1afb7b['querySelectorAll'](_0x140f78(0x23a))[_0x140f78(0x1ac)](_0x10aa09=>{const _0x5d9bdb=_0x140f78;_0x10aa09[_0x5d9bdb(0x153)](_0x5d9bdb(0x27e),()=>setAiProviderModalTab(_0x10aa09[_0x5d9bdb(0x264)][_0x5d9bdb(0x349)]));}));document[_0x140f78(0x10d)](_0x140f78(0x32c))?.[_0x140f78(0x153)](_0x140f78(0x33f),_0x32e7b7=>{const _0x3d2951=_0x140f78;document[_0x3d2951(0x10d)](_0x3d2951(0xfd))[_0x3d2951(0x33e)]=!_0x32e7b7['target']['checked'];});const _0x212ce2=document[_0x140f78(0x10d)]('ai-provider-edit-api-key-modal');_0x212ce2&&(_0x212ce2[_0x140f78(0x156)]('.modal-close')?.['addEventListener']('click',closeEditApiKeyModal),_0x212ce2['querySelector'](_0x140f78(0x158))?.[_0x140f78(0x153)](_0x140f78(0x27e),closeEditApiKeyModal),document['getElementById'](_0x140f78(0x31b))?.['addEventListener'](_0x140f78(0x27e),closeEditApiKeyModal),document[_0x140f78(0x10d)](_0x140f78(0x337))?.[_0x140f78(0x153)](_0x140f78(0x27e),saveEditApiKeyModal));document[_0x140f78(0x10d)](_0x140f78(0x340))?.[_0x140f78(0x153)](_0x140f78(0x33f),_0x19a8d4=>{const _0x4b2702=_0x140f78;document[_0x4b2702(0x10d)]('ai-provider-edit-endpoint-fields')[_0x4b2702(0x33e)]=!_0x19a8d4[_0x4b2702(0x10f)][_0x4b2702(0x224)];});const _0x554800=document[_0x140f78(0x10d)](_0x140f78(0x21d));_0x554800&&(_0x554800[_0x140f78(0x156)](_0x140f78(0x12d))?.['addEventListener']('click',closeProviderRename),_0x554800[_0x140f78(0x156)](_0x140f78(0x158))?.[_0x140f78(0x153)](_0x140f78(0x27e),closeProviderRename),document[_0x140f78(0x10d)](_0x140f78(0x35e))?.[_0x140f78(0x153)]('click',closeProviderRename),document[_0x140f78(0x10d)](_0x140f78(0x381))?.[_0x140f78(0x153)](_0x140f78(0x27e),saveProviderRename),document[_0x140f78(0x10d)](_0x140f78(0x2b6))?.[_0x140f78(0x153)](_0x140f78(0x352),_0x3cecd4=>{const _0x5e9768=_0x140f78;if(_0x3cecd4['key']===_0x5e9768(0x373))saveProviderRename();}));}async function openAiProviderAddModal(_0x2892e3){const _0x2dcaaf=_0xbdd971,_0x274eb6=document[_0x2dcaaf(0x10d)](_0x2dcaaf(0x17b));_0x274eb6[_0x2dcaaf(0x264)][_0x2dcaaf(0x342)]=_0x2892e3,document[_0x2dcaaf(0x10d)](_0x2dcaaf(0x37f))[_0x2dcaaf(0x189)]='Add\x20Account:\x20'+PROVIDER_NAMES[_0x2892e3],resetAiProviderAddModal(),setAiProviderModalTab(_0x2dcaaf(0x216)),_0x274eb6['hidden']=![],await startProviderAuth(_0x2892e3);}function closeAiProviderAddModal(){const _0x668ccc=_0xbdd971;document['getElementById'](_0x668ccc(0x17b))[_0x668ccc(0x33e)]=!![],currentProviderOAuthState=null;}async function startProviderAuth(_0x2300ea){const _0x3389a8=_0xbdd971;try{const _0x9b69ea=await API[_0x3389a8(0x26c)](_0x3389a8(0x177),{'provider':_0x2300ea});currentProviderOAuthState={'provider':_0x2300ea,'state':_0x9b69ea['state'],'oauth_url':_0x9b69ea[_0x3389a8(0x23b)],'flow_type':_0x9b69ea['flow_type']},document['getElementById'](_0x3389a8(0x238))[_0x3389a8(0x189)]=_0x9b69ea['instructions'];const _0x418530=document['getElementById'](_0x3389a8(0x299));_0x418530[_0x3389a8(0x35d)]=()=>window[_0x3389a8(0x1ce)](_0x9b69ea['oauth_url'],_0x3389a8(0x10b));const _0x231506=document['getElementById'](_0x3389a8(0x326)),_0xfd7876=document['getElementById'](_0x3389a8(0x175));if(_0x9b69ea[_0x3389a8(0x123)]==='code_display'){_0x231506['textContent']=_0x3389a8(0x29e),document[_0x3389a8(0x10d)]('provider-signin-input')[_0x3389a8(0x14b)]=_0x3389a8(0x295);if(_0xfd7876)_0xfd7876[_0x3389a8(0x33e)]=!![];}else{_0x231506['textContent']=_0x3389a8(0x321),document['getElementById'](_0x3389a8(0x27c))[_0x3389a8(0x14b)]=_0x3389a8(0xdb);if(_0xfd7876)_0xfd7876[_0x3389a8(0x33e)]=![];}}catch(_0x23d582){console['error'](_0x3389a8(0x207),_0x23d582),showInlineMessage(_0x3389a8(0x166),_0x3389a8(0x1c7),_0x23d582[_0x3389a8(0x358)]||_0x3389a8(0x2c4));}}function buildEndpointPayload(_0x2ea10c,{enabled:_0x1b44c2,baseUrl:_0x811223,apiVersion:_0x342948}){const _0x1fe4e9=_0xbdd971;if(!_0x1b44c2)return{'mode':_0x1fe4e9(0x13a)};const _0xfd0a87=(_0x811223||'')[_0x1fe4e9(0x301)]();if(!_0xfd0a87)throw new Error('Custom\x20endpoint\x20base\x20URL\x20is\x20required');if(!isValidHttpUrl(_0xfd0a87))throw new Error(_0x1fe4e9(0xe9));const _0x22351c={'mode':_0x1fe4e9(0x18a),'base_url':_0xfd0a87};return(_0x2ea10c===_0x1fe4e9(0x244)||_0x2ea10c===_0x1fe4e9(0x19d))&&(_0x342948||'')['trim']()&&(_0x22351c['api_version']=_0x342948[_0x1fe4e9(0x301)]()),_0x22351c;}async function submitAiProviderAddModal(){const _0x5b3f97=_0xbdd971,_0x55198b=document['getElementById']('ai-provider-add-modal'),_0x364110=_0x55198b[_0x5b3f97(0x264)][_0x5b3f97(0x342)],_0x2ec372=_0x55198b['dataset']['activeTab']||_0x5b3f97(0x216),_0x3f82dc=document[_0x5b3f97(0x10d)]('ai-provider-add-submit-btn');try{_0x3f82dc[_0x5b3f97(0x2b8)]=!![],_0x3f82dc[_0x5b3f97(0x189)]=_0x2ec372===_0x5b3f97(0x216)?_0x5b3f97(0x313):_0x5b3f97(0x1d8);if(_0x2ec372===_0x5b3f97(0x216)){if(!currentProviderOAuthState)throw new Error(_0x5b3f97(0x23d));const _0x38f04c=document['getElementById']('provider-signin-input')[_0x5b3f97(0x2c8)]['trim']();if(!_0x38f04c)throw new Error('Please\x20enter\x20the\x20authorization\x20code\x20or\x20URL');const _0x567d97=document[_0x5b3f97(0x10d)](_0x5b3f97(0x36d))[_0x5b3f97(0x2c8)][_0x5b3f97(0x301)]()||null,_0x4c236e=await API[_0x5b3f97(0x26c)]('/settings/provider-auth/exchange',{'provider':_0x364110,'input':_0x38f04c,'state':currentProviderOAuthState[_0x5b3f97(0x2a2)],'label':_0x567d97}),_0x2bed9d=_0x4c236e[_0x5b3f97(0x206)]?.[_0x5b3f97(0x1db)]?'\x20('+_0x4c236e[_0x5b3f97(0x206)][_0x5b3f97(0x1db)]+')':'';showInlineMessage(_0x5b3f97(0x166),'success',_0x4c236e[_0x5b3f97(0x2ce)]?_0x5b3f97(0x36c)+_0x2bed9d:_0x5b3f97(0x36b)+_0x2bed9d);}else{const _0x86fcd5=document[_0x5b3f97(0x10d)](_0x5b3f97(0x260))[_0x5b3f97(0x2c8)][_0x5b3f97(0x301)]();if(!_0x86fcd5)throw new Error('API\x20key\x20is\x20required');const _0x2391ed=document[_0x5b3f97(0x10d)](_0x5b3f97(0x37b))['value'][_0x5b3f97(0x301)]()||null,_0x3f4fdf=buildEndpointPayload(_0x364110,{'enabled':document[_0x5b3f97(0x10d)]('ai-provider-api-key-endpoint-enabled')[_0x5b3f97(0x224)],'baseUrl':document[_0x5b3f97(0x10d)]('ai-provider-api-key-base-url')['value'],'apiVersion':document[_0x5b3f97(0x10d)](_0x5b3f97(0x1a7))['value']});await API['post'](_0x5b3f97(0x2a4),{'provider':_0x364110,'api_key':_0x86fcd5,'label':_0x2391ed,'endpoint':_0x3f4fdf}),showInlineMessage('ai-providers',_0x5b3f97(0x2b0),_0x5b3f97(0x1f1));}closeAiProviderAddModal(),await loadAiProviders();}catch(_0x2dc7ee){console['error'](_0x5b3f97(0x2cc),_0x2dc7ee),showInlineMessage(_0x5b3f97(0x166),'error',_0x2dc7ee[_0x5b3f97(0x358)]||_0x5b3f97(0x366));}finally{_0x3f82dc[_0x5b3f97(0x2b8)]=![],_0x3f82dc[_0x5b3f97(0x189)]=(_0x55198b[_0x5b3f97(0x264)]['activeTab']||_0x5b3f97(0x216))==='oauth'?_0x5b3f97(0x236):_0x5b3f97(0x333);}}window['openEditApiKeyModal']=function(_0x5374b,_0x3130de){const _0x5eb121=_0xbdd971,_0x11659c=state[_0x5eb121(0x225)]?.[_0x5374b]?.[_0x5eb121(0x2f8)]?.[_0x5eb121(0x359)](_0x2c308a=>_0x2c308a['id']===_0x3130de);if(!_0x11659c||_0x11659c[_0x5eb121(0xf4)]!==_0x5eb121(0x376)){showInlineMessage(_0x5eb121(0x166),'error',_0x5eb121(0x121));return;}const _0x5ac2d0=document[_0x5eb121(0x10d)](_0x5eb121(0x17c));_0x5ac2d0[_0x5eb121(0x264)][_0x5eb121(0x342)]=_0x5374b,_0x5ac2d0['dataset'][_0x5eb121(0x163)]=_0x3130de,document[_0x5eb121(0x10d)](_0x5eb121(0x157))[_0x5eb121(0x2c8)]=_0x11659c['label']||'',document['getElementById'](_0x5eb121(0x195))[_0x5eb121(0x2c8)]='',document[_0x5eb121(0x10d)](_0x5eb121(0x340))[_0x5eb121(0x224)]=_0x11659c[_0x5eb121(0x1d9)]?.[_0x5eb121(0x391)]===_0x5eb121(0x18a),document['getElementById'](_0x5eb121(0x25b))['value']=_0x11659c['endpoint']?.[_0x5eb121(0x37c)]||'',document['getElementById'](_0x5eb121(0x2a1))[_0x5eb121(0x2c8)]=_0x11659c[_0x5eb121(0x1d9)]?.['api_version']||'',document['getElementById'](_0x5eb121(0x251))[_0x5eb121(0x33e)]=_0x11659c['endpoint']?.['mode']!=='custom',_0x5ac2d0['hidden']=![];};function closeEditApiKeyModal(){const _0x1a4d96=_0xbdd971;document[_0x1a4d96(0x10d)](_0x1a4d96(0x17c))['hidden']=!![];}async function saveEditApiKeyModal(){const _0x1ab31c=_0xbdd971,_0x589c7e=document['getElementById']('ai-provider-edit-api-key-modal'),_0x17badc=_0x589c7e['dataset'][_0x1ab31c(0x342)],_0x14b617=_0x589c7e[_0x1ab31c(0x264)][_0x1ab31c(0x163)],_0x37cabd=document[_0x1ab31c(0x10d)]('ai-provider-edit-label')[_0x1ab31c(0x2c8)][_0x1ab31c(0x301)](),_0x4e4caf=document[_0x1ab31c(0x10d)](_0x1ab31c(0x195))['value'][_0x1ab31c(0x301)](),_0x2d22cd=document['getElementById'](_0x1ab31c(0x337));if(!_0x37cabd){showInlineMessage('ai-providers',_0x1ab31c(0x1c7),'Account\x20label\x20is\x20required');return;}try{_0x2d22cd['disabled']=!![],_0x2d22cd[_0x1ab31c(0x189)]='Saving...';const _0x423eb2=buildEndpointPayload(_0x17badc,{'enabled':document[_0x1ab31c(0x10d)](_0x1ab31c(0x340))[_0x1ab31c(0x224)],'baseUrl':document['getElementById'](_0x1ab31c(0x25b))[_0x1ab31c(0x2c8)],'apiVersion':document['getElementById']('ai-provider-edit-api-version')[_0x1ab31c(0x2c8)]}),_0x3dbf2c={'label':_0x37cabd,'endpoint':_0x423eb2,'keep_existing_key':!_0x4e4caf};_0x4e4caf&&(_0x3dbf2c[_0x1ab31c(0x376)]=_0x4e4caf),await API[_0x1ab31c(0x243)](_0x1ab31c(0x348)+_0x17badc+_0x1ab31c(0x21c)+_0x14b617+_0x1ab31c(0x2b9),_0x3dbf2c),closeEditApiKeyModal(),showInlineMessage(_0x1ab31c(0x166),_0x1ab31c(0x2b0),_0x1ab31c(0x2e5)),await loadAiProviders();}catch(_0x12721d){console['error'](_0x1ab31c(0x338),_0x12721d),showInlineMessage(_0x1ab31c(0x166),'error',_0x12721d[_0x1ab31c(0x358)]||'Failed\x20to\x20update\x20API\x20key\x20account');}finally{_0x2d22cd[_0x1ab31c(0x2b8)]=![],_0x2d22cd[_0x1ab31c(0x189)]='Save';}}window[_0xbdd971(0x13b)]=async function(_0x48b676,_0x10bf90){const _0x2702a4=_0xbdd971;try{await API[_0x2702a4(0x26c)]('/settings/provider-auth/'+_0x48b676+_0x2702a4(0x21c)+_0x10bf90+'/default'),await loadAiProviders();}catch(_0x2be9ac){console[_0x2702a4(0x1c7)](_0x2702a4(0x194),_0x2be9ac),showInlineMessage(_0x2702a4(0x166),_0x2702a4(0x1c7),_0x2be9ac[_0x2702a4(0x358)]||_0x2702a4(0x190));}},window[_0xbdd971(0x33c)]=async function(_0x179898,_0x3bf08d){const _0x31a86c=_0xbdd971,_0x1396d6=PROVIDER_NAMES[_0x179898]||_0x179898,_0x2ca588=document[_0x31a86c(0x156)](_0x31a86c(0x193)+_0x3bf08d+'\x22]'),_0x5aea3c=_0x2ca588?.[_0x31a86c(0x156)](_0x31a86c(0x393)),_0x315e8c=_0x5aea3c?.['textContent']||_0x31a86c(0x2ac);try{_0x5aea3c&&(_0x5aea3c[_0x31a86c(0x2b8)]=!![],_0x5aea3c[_0x31a86c(0x189)]='Testing...');const _0x32cb45=await API[_0x31a86c(0x26c)]('/settings/provider-auth/'+_0x179898+_0x31a86c(0x21c)+_0x3bf08d+'/test',{}),_0x15690d=_0x32cb45[_0x31a86c(0x358)]||(_0x32cb45[_0x31a86c(0x2b0)]?_0x31a86c(0x2bd):'Connection\x20failed');showInlineMessage(_0x31a86c(0x166),_0x32cb45['success']?_0x31a86c(0x2b0):_0x31a86c(0x1c7),_0x1396d6+':\x20'+_0x15690d);}catch(_0x18d769){console[_0x31a86c(0x1c7)](_0x31a86c(0x20b),_0x18d769),showInlineMessage('ai-providers',_0x31a86c(0x1c7),_0x1396d6+':\x20'+(_0x18d769[_0x31a86c(0x358)]||_0x31a86c(0x119)));}finally{_0x5aea3c&&(_0x5aea3c[_0x31a86c(0x2b8)]=![],_0x5aea3c['textContent']=_0x315e8c);}},window[_0xbdd971(0x1e8)]=function(_0x4e8c70,_0x4c1030,_0x98dc56){const _0x5894aa=_0xbdd971;document['getElementById'](_0x5894aa(0x2b6))[_0x5894aa(0x2c8)]=_0x98dc56;const _0x2c80ae=document[_0x5894aa(0x10d)](_0x5894aa(0x21d));_0x2c80ae[_0x5894aa(0x264)][_0x5894aa(0x342)]=_0x4e8c70,_0x2c80ae['dataset'][_0x5894aa(0x163)]=_0x4c1030,_0x2c80ae[_0x5894aa(0x33e)]=![];};function closeProviderRename(){const _0x39100e=_0xbdd971;document['getElementById'](_0x39100e(0x21d))[_0x39100e(0x33e)]=!![];}async function saveProviderRename(){const _0x4f3f4a=_0xbdd971,_0x5cdba3=document['getElementById'](_0x4f3f4a(0x21d)),_0x56930c=_0x5cdba3[_0x4f3f4a(0x264)][_0x4f3f4a(0x342)],_0x22c870=_0x5cdba3['dataset'][_0x4f3f4a(0x163)],_0x58d2e8=document[_0x4f3f4a(0x10d)](_0x4f3f4a(0x2b6))[_0x4f3f4a(0x2c8)][_0x4f3f4a(0x301)]();if(!_0x58d2e8){showInlineMessage(_0x4f3f4a(0x166),_0x4f3f4a(0x1c7),'Account\x20label\x20cannot\x20be\x20empty');return;}const _0x307d0a=document[_0x4f3f4a(0x10d)](_0x4f3f4a(0x381));try{_0x307d0a[_0x4f3f4a(0x2b8)]=!![],_0x307d0a['textContent']=_0x4f3f4a(0x2f9),await API[_0x4f3f4a(0x243)]('/settings/provider-auth/'+_0x56930c+_0x4f3f4a(0x21c)+_0x22c870,{'label':_0x58d2e8}),closeProviderRename(),showInlineMessage(_0x4f3f4a(0x166),_0x4f3f4a(0x2b0),_0x4f3f4a(0x18e)),await loadAiProviders();}catch(_0x3c2d74){console[_0x4f3f4a(0x1c7)](_0x4f3f4a(0x192),_0x3c2d74),showInlineMessage(_0x4f3f4a(0x166),_0x4f3f4a(0x1c7),_0x3c2d74[_0x4f3f4a(0x358)]||_0x4f3f4a(0x308));}finally{_0x307d0a[_0x4f3f4a(0x2b8)]=![],_0x307d0a[_0x4f3f4a(0x189)]=_0x4f3f4a(0x304);}}window[_0xbdd971(0x1f9)]=async function(_0xc3226a,_0x48b351,_0xff9531){const _0x1f1449=_0xbdd971,_0x55758a=await ConfirmDialog[_0x1f1449(0x292)]({'title':_0x1f1449(0x164),'message':'Are\x20you\x20sure\x20you\x20want\x20to\x20remove\x20\x22'+_0xff9531+_0x1f1449(0x2a9)+PROVIDER_NAMES[_0xc3226a]+'?','confirmText':'Remove','danger':!![]});if(!_0x55758a)return;try{await API[_0x1f1449(0xfb)](_0x1f1449(0x348)+_0xc3226a+_0x1f1449(0x21c)+_0x48b351),showInlineMessage(_0x1f1449(0x166),_0x1f1449(0x2b0),_0x1f1449(0x24b)),await loadAiProviders();}catch(_0x23c440){console[_0x1f1449(0x1c7)](_0x1f1449(0x26f),_0x23c440),showInlineMessage(_0x1f1449(0x166),'error',_0x23c440['message']||_0x1f1449(0x265));}};function stripDefaultLabelText(_0x1be04d){const _0x49c5cf=_0xbdd971;return String(_0x1be04d||'')[_0x49c5cf(0xf7)](/\s*\(default\)\s*/ig,'\x20')[_0x49c5cf(0x301)]();}async function loadModelConfig(){const _0x2addf1=_0xbdd971;try{const [_0x54ae7c,_0x514af]=await Promise[_0x2addf1(0x28c)]([API[_0x2addf1(0x278)](_0x2addf1(0x2e7)),API['get'](_0x2addf1(0x285))]);state[_0x2addf1(0x1be)]=_0x54ae7c,state[_0x2addf1(0x302)]=_0x514af[_0x2addf1(0x239)]||{},populateModelDropdowns(),setModelValues();}catch(_0x31e286){console[_0x2addf1(0x1c7)](_0x2addf1(0x293),_0x31e286);throw _0x31e286;}}function populateModelDropdowns(){const _0x3b777e=_0xbdd971;[_0x3b777e(0xe3),_0x3b777e(0x244),'gemini']['forEach'](_0x1c5a68=>{const _0x2afea0=_0x3b777e,_0x3da2c5=document[_0x2afea0(0x10d)]('model-'+_0x1c5a68+'-container');if(!_0x3da2c5)return;let _0x2d0a1e=_0x3da2c5[_0x2afea0(0x156)](_0x2afea0(0x30b));!_0x2d0a1e&&(_0x2d0a1e=document[_0x2afea0(0x1c3)](_0x2afea0(0x30b)),_0x2d0a1e['id']=_0x2afea0(0x32e)+_0x1c5a68,_0x3da2c5['appendChild'](_0x2d0a1e));const _0x3c814d=state[_0x2afea0(0x1be)][_0x1c5a68]||{'models':[]},_0x59dd3c=_0x3c814d['models']||[];_0x2d0a1e['innerHTML']=_0x2afea0(0xec)+_0x59dd3c[_0x2afea0(0x1ae)](_0x2f6daa=>_0x2afea0(0x30d)+_0x2f6daa['id']+'\x22>'+Utils[_0x2afea0(0x37e)](stripDefaultLabelText(_0x2f6daa[_0x2afea0(0xd6)]))+_0x2afea0(0x298))[_0x2afea0(0x2c7)](''),!customSelects[_0x1c5a68+_0x2afea0(0x182)]&&(customSelects[_0x1c5a68+_0x2afea0(0x182)]=new CustomSelect(_0x2d0a1e,{'searchable':![]})),_0x1c5a68===_0x2afea0(0x244)&&_0x2d0a1e[_0x2afea0(0x153)](_0x2afea0(0x33f),updateCodexReasoningVisibility);}),populateClaudeEffortLevels(),populateCodexReasoningLevels();}function populateClaudeEffortLevels(){const _0x3afb46=_0xbdd971,_0x378091=document[_0x3afb46(0x10d)](_0x3afb46(0x1bc));if(!_0x378091)return;let _0x1add7c=_0x378091['querySelector']('select');!_0x1add7c&&(_0x1add7c=document[_0x3afb46(0x1c3)]('select'),_0x1add7c['id']=_0x3afb46(0x25a),_0x378091[_0x3afb46(0x31f)](_0x1add7c));const _0x3eadb2=state[_0x3afb46(0x1be)][_0x3afb46(0xe3)]||{},_0x29e6dc=_0x3eadb2[_0x3afb46(0x145)]||[];_0x1add7c['innerHTML']=_0x3afb46(0xec)+_0x29e6dc[_0x3afb46(0x1ae)](_0x290c93=>_0x3afb46(0x30d)+_0x290c93['id']+'\x22>'+Utils[_0x3afb46(0x37e)](stripDefaultLabelText(_0x290c93[_0x3afb46(0xd6)]))+_0x3afb46(0x298))['join'](''),!customSelects[_0x3afb46(0x127)]&&(customSelects[_0x3afb46(0x127)]=new CustomSelect(_0x1add7c,{'searchable':![]}));}function populateCodexReasoningLevels(){const _0x30d92c=_0xbdd971,_0x537520=document[_0x30d92c(0x10d)](_0x30d92c(0x309));if(!_0x537520)return;let _0x247f37=_0x537520[_0x30d92c(0x156)](_0x30d92c(0x30b));!_0x247f37&&(_0x247f37=document[_0x30d92c(0x1c3)]('select'),_0x247f37['id']='model-codex-reasoning',_0x537520[_0x30d92c(0x31f)](_0x247f37));const _0x30a583=state[_0x30d92c(0x1be)][_0x30d92c(0x244)]||{},_0x393c6f=_0x30a583[_0x30d92c(0x351)]||[];_0x247f37[_0x30d92c(0x172)]='<option\x20value=\x22\x22>Default</option>'+_0x393c6f[_0x30d92c(0x1ae)](_0x1caeff=>_0x30d92c(0x30d)+_0x1caeff['id']+'\x22>'+Utils[_0x30d92c(0x37e)](stripDefaultLabelText(_0x1caeff[_0x30d92c(0xd6)]))+'</option>')['join'](''),!customSelects[_0x30d92c(0x2dc)]&&(customSelects[_0x30d92c(0x2dc)]=new CustomSelect(_0x247f37,{'searchable':![]}));}function setModelValues(){const _0x3d2468=_0xbdd971;[_0x3d2468(0xe3),_0x3d2468(0x244),_0x3d2468(0x19d)]['forEach'](_0x5a31af=>{const _0x557cc7=_0x3d2468,_0x51b6bf=document[_0x557cc7(0x10d)]('model-'+_0x5a31af);if(_0x51b6bf){const _0x37a9cc=state[_0x557cc7(0x302)][_0x5a31af];if(_0x37a9cc&&!_0x51b6bf[_0x557cc7(0x156)](_0x557cc7(0x2a5)+_0x37a9cc+'\x22]')){const _0x375176=document['createElement'](_0x557cc7(0x14c));_0x375176[_0x557cc7(0x2c8)]=_0x37a9cc,_0x375176['textContent']=_0x37a9cc+'\x20(current)',_0x51b6bf[_0x557cc7(0x31f)](_0x375176);}_0x51b6bf[_0x557cc7(0x2c8)]=_0x37a9cc||'';}});const _0x4e52e7=document['getElementById']('model-codex-reasoning');_0x4e52e7&&(_0x4e52e7[_0x3d2468(0x2c8)]=state['modelConfig'][_0x3d2468(0x2be)]||'');const _0x965a26=document['getElementById'](_0x3d2468(0x25a));_0x965a26&&(_0x965a26['value']=state[_0x3d2468(0x302)][_0x3d2468(0x2d4)]||''),updateClaudeEffortVisibility(),updateCodexReasoningVisibility();}function updateClaudeEffortVisibility(){const _0x4c8bc7=_0xbdd971,_0x32e8e2=document[_0x4c8bc7(0x10d)](_0x4c8bc7(0x2aa)),_0x17e5d6=state['availableModels'][_0x4c8bc7(0xe3)]||{};if(!_0x32e8e2)return;_0x32e8e2[_0x4c8bc7(0x33e)]=_0x17e5d6[_0x4c8bc7(0x38d)]!==!![];}function updateCodexReasoningVisibility(){const _0x5bb989=_0xbdd971,_0x126f1=document[_0x5bb989(0x10d)]('model-codex'),_0x4c2b4d=document['getElementById'](_0x5bb989(0x2b3)),_0x2768e6=state['availableModels']['codex']||{};if(!_0x4c2b4d)return;const _0x14c5ff=_0x2768e6[_0x5bb989(0x19e)]===!![],_0x1f3bc4=_0x126f1?.[_0x5bb989(0x2c8)]||'',_0x56f09c=(_0x2768e6[_0x5bb989(0x239)]||[])[_0x5bb989(0x359)](_0x4c61ce=>_0x4c61ce['id']===_0x1f3bc4),_0x4d07bf=_0x14c5ff&&(!_0x1f3bc4||_0x56f09c&&_0x56f09c[_0x5bb989(0x351)]?.[_0x5bb989(0x1c8)]>0x0);_0x4c2b4d['hidden']=!_0x4d07bf;}async function saveModelConfig(){const _0x1eba10=_0xbdd971;try{const _0x1a1ba7={};[_0x1eba10(0xe3),'codex','gemini'][_0x1eba10(0x1ac)](_0x44b159=>{const _0x5c90f0=_0x1eba10,_0x2e9e22=document[_0x5c90f0(0x10d)](_0x5c90f0(0x32e)+_0x44b159);_0x2e9e22&&_0x2e9e22['value']&&(_0x1a1ba7[_0x44b159]=_0x2e9e22[_0x5c90f0(0x2c8)]);});const _0x32ed72=document[_0x1eba10(0x10d)](_0x1eba10(0x18f));_0x32ed72&&_0x32ed72[_0x1eba10(0x2c8)]&&(_0x1a1ba7[_0x1eba10(0x2be)]=_0x32ed72[_0x1eba10(0x2c8)]);const _0x8528ed=document[_0x1eba10(0x10d)]('model-claude-effort');_0x8528ed&&_0x8528ed[_0x1eba10(0x2c8)]&&(_0x1a1ba7[_0x1eba10(0x2d4)]=_0x8528ed['value']),await API[_0x1eba10(0x243)](_0x1eba10(0x285),{'models':_0x1a1ba7}),state[_0x1eba10(0x302)]=_0x1a1ba7,showInlineMessage('models',_0x1eba10(0x2b0),'Model\x20configuration\x20saved');}catch(_0x236fc8){console['error']('Failed\x20to\x20save\x20model\x20configuration:',_0x236fc8),showInlineMessage('models','error',_0x1eba10(0x1e6));}}async function loadEmailSettings(){const _0x32df75=_0xbdd971;try{const _0x5ee894=await API[_0x32df75(0x278)](_0x32df75(0x1e3));state[_0x32df75(0x273)]=_0x5ee894,document[_0x32df75(0x10d)]('email-host')[_0x32df75(0x2c8)]=_0x5ee894['host']||'',document['getElementById'](_0x32df75(0x14e))[_0x32df75(0x2c8)]=_0x5ee894[_0x32df75(0x173)]||0x24b,document['getElementById']('email-secure')[_0x32df75(0x224)]=_0x5ee894['secure']||![],document[_0x32df75(0x10d)](_0x32df75(0x12f))[_0x32df75(0x2c8)]=_0x5ee894[_0x32df75(0x2c5)]||'',document[_0x32df75(0x10d)]('email-password')['value']='',document['getElementById']('email-from')['value']=_0x5ee894[_0x32df75(0x1ab)]||'',document[_0x32df75(0x10d)](_0x32df75(0x297))[_0x32df75(0x2c8)]=_0x5ee894['from_name']||'';const _0x1c2f24=document[_0x32df75(0x10d)](_0x32df75(0x305));_0x1c2f24&&(_0x1c2f24['textContent']=_0x5ee894[_0x32df75(0x1cd)]?_0x32df75(0x322):'');}catch(_0x332683){console[_0x32df75(0x1c7)]('Failed\x20to\x20load\x20email\x20settings:',_0x332683);throw _0x332683;}}async function saveEmailSettings(){const _0x29c4c7=_0xbdd971;try{const _0x1b59cc={'host':document[_0x29c4c7(0x10d)]('email-host')[_0x29c4c7(0x2c8)][_0x29c4c7(0x301)](),'port':parseInt(document['getElementById'](_0x29c4c7(0x14e))['value'],0xa)||0x24b,'secure':document[_0x29c4c7(0x10d)]('email-secure')['checked'],'user':document[_0x29c4c7(0x10d)]('email-user')[_0x29c4c7(0x2c8)][_0x29c4c7(0x301)](),'from':document[_0x29c4c7(0x10d)](_0x29c4c7(0x303))['value'][_0x29c4c7(0x301)](),'from_name':document[_0x29c4c7(0x10d)](_0x29c4c7(0x297))[_0x29c4c7(0x2c8)][_0x29c4c7(0x301)]()},_0x2bbdf3=document[_0x29c4c7(0x10d)](_0x29c4c7(0x1b7))['value'];_0x2bbdf3?_0x1b59cc[_0x29c4c7(0x124)]=_0x2bbdf3:_0x1b59cc[_0x29c4c7(0x1eb)]=!![],await API[_0x29c4c7(0x243)](_0x29c4c7(0x1e3),_0x1b59cc),showInlineMessage('email',_0x29c4c7(0x2b0),_0x29c4c7(0x284)),await loadEmailSettings();}catch(_0x11998e){console[_0x29c4c7(0x1c7)](_0x29c4c7(0x1dc),_0x11998e),showInlineMessage(_0x29c4c7(0x1db),_0x29c4c7(0x1c7),_0x29c4c7(0x20c));}}function showEmailTestResult(_0xf774db,_0x2059a5){const _0x43aab7=_0xbdd971,_0x51f912=document[_0x43aab7(0x10d)]('email-test-result-row'),_0x1e6982=document[_0x43aab7(0x10d)](_0x43aab7(0x14f));_0x1e6982['textContent']=_0x2059a5,_0x1e6982[_0x43aab7(0x1b8)]=_0x43aab7(0x1e7)+(_0xf774db?_0x43aab7(0x2b0):_0x43aab7(0x1c7));if(_0x51f912)_0x51f912[_0x43aab7(0x33e)]=![];}async function testEmailConnection(){const _0x5ce7ac=_0xbdd971,_0x22adf4=document[_0x5ce7ac(0x10d)](_0x5ce7ac(0x200)),_0x419556=document[_0x5ce7ac(0x10d)](_0x5ce7ac(0x14f));_0x419556[_0x5ce7ac(0x189)]=_0x5ce7ac(0x22b),_0x419556[_0x5ce7ac(0x1b8)]=_0x5ce7ac(0x14f);if(_0x22adf4)_0x22adf4[_0x5ce7ac(0x33e)]=![];try{const _0x537f7a={'host':document[_0x5ce7ac(0x10d)](_0x5ce7ac(0x135))[_0x5ce7ac(0x2c8)][_0x5ce7ac(0x301)](),'port':parseInt(document[_0x5ce7ac(0x10d)](_0x5ce7ac(0x14e))[_0x5ce7ac(0x2c8)],0xa)||0x24b,'secure':document[_0x5ce7ac(0x10d)]('email-secure')[_0x5ce7ac(0x224)],'user':document[_0x5ce7ac(0x10d)](_0x5ce7ac(0x12f))['value']['trim']()},_0x51dd07=document[_0x5ce7ac(0x10d)](_0x5ce7ac(0x1b7))[_0x5ce7ac(0x2c8)];_0x51dd07?_0x537f7a[_0x5ce7ac(0x124)]=_0x51dd07:_0x537f7a['keep_existing_password']=!![];const _0x18c0f0=await API[_0x5ce7ac(0x26c)](_0x5ce7ac(0x22a),_0x537f7a);_0x18c0f0['success']?showEmailTestResult(!![],_0x5ce7ac(0x320)):showEmailTestResult(![],_0x5ce7ac(0x16a)+_0x18c0f0['error']);}catch(_0x35aaad){console[_0x5ce7ac(0x1c7)]('Failed\x20to\x20test\x20email\x20connection:',_0x35aaad),showEmailTestResult(![],'Failed\x20to\x20test\x20connection:\x20'+_0x35aaad[_0x5ce7ac(0x358)]);}}async function sendTestEmail(){const _0x689388=_0xbdd971,_0x26dc78=document[_0x689388(0x10d)]('email-test-recipient')[_0x689388(0x2c8)][_0x689388(0x301)]();if(!_0x26dc78){showEmailTestResult(![],_0x689388(0x38c));return;}const _0x278304=document[_0x689388(0x10d)]('email-test-result-row'),_0xc7d831=document['getElementById'](_0x689388(0x14f));_0xc7d831[_0x689388(0x189)]=_0x689388(0x300),_0xc7d831['className']=_0x689388(0x14f);if(_0x278304)_0x278304[_0x689388(0x33e)]=![];try{const _0x3a5e64={'host':document[_0x689388(0x10d)](_0x689388(0x135))['value'][_0x689388(0x301)](),'port':parseInt(document[_0x689388(0x10d)](_0x689388(0x14e))[_0x689388(0x2c8)],0xa)||0x24b,'secure':document[_0x689388(0x10d)](_0x689388(0xea))[_0x689388(0x224)],'user':document[_0x689388(0x10d)](_0x689388(0x12f))[_0x689388(0x2c8)]['trim'](),'from':document[_0x689388(0x10d)](_0x689388(0x303))[_0x689388(0x2c8)][_0x689388(0x301)](),'from_name':document[_0x689388(0x10d)](_0x689388(0x297))[_0x689388(0x2c8)][_0x689388(0x301)](),'test_recipient':_0x26dc78},_0x24d2b0=document[_0x689388(0x10d)](_0x689388(0x1b7))['value'];_0x24d2b0?_0x3a5e64[_0x689388(0x124)]=_0x24d2b0:_0x3a5e64[_0x689388(0x1eb)]=!![];const _0x10412c=await API[_0x689388(0x26c)](_0x689388(0x1cf),_0x3a5e64);_0x10412c[_0x689388(0x2b0)]?showEmailTestResult(!![],'Test\x20email\x20sent\x20to\x20'+_0x26dc78):showEmailTestResult(![],_0x689388(0x1da)+_0x10412c[_0x689388(0x1c7)]);}catch(_0x274a0d){console[_0x689388(0x1c7)](_0x689388(0x245),_0x274a0d),showEmailTestResult(![],_0x689388(0x235)+_0x274a0d[_0x689388(0x358)]);}}async function loadGitProviders(){const _0x702af1=_0xbdd971;try{const [_0x5eb043,_0x39a944,_0x1db9a7]=await Promise['all']([API['get'](_0x702af1(0x132)),API[_0x702af1(0x278)](_0x702af1(0x17a))[_0x702af1(0xff)](()=>({})),API[_0x702af1(0x2cf)]()[_0x702af1(0xff)](()=>({'teams':[]}))]);state[_0x702af1(0x1b6)]=_0x5eb043[_0x702af1(0x15f)]||[];const _0x171599=_0x39a944[_0x702af1(0x22c)]?.[_0x702af1(0x391)];state[_0x702af1(0x137)]=_0x1db9a7['teams']||[],state[_0x702af1(0x1aa)]={'token_expiry_days':_0x39a944[_0x702af1(0x33d)]||0x1,'setup_repo_auth':{'mode':_0x171599===_0x702af1(0x342)||_0x171599==='user'?_0x171599:_0x702af1(0x2dd),'provider':_0x39a944[_0x702af1(0x22c)]?.[_0x702af1(0x342)]||null}};const _0x1fec9b=document[_0x702af1(0x10d)](_0x702af1(0x368));_0x1fec9b&&(_0x1fec9b[_0x702af1(0x2c8)]=state[_0x702af1(0x1aa)]['token_expiry_days']),populateSetupRepoAuthControls(),renderGitProviders();}catch(_0x4f1084){console['error'](_0x702af1(0x16f),_0x4f1084);throw _0x4f1084;}}async function saveGitTokenExpiration(){const _0x24299b=_0xbdd971;try{const _0x231f19=parseInt(document['getElementById']('git-token-expiration')[_0x24299b(0x2c8)],0xa);if(isNaN(_0x231f19)||_0x231f19<0x1){showInlineMessage(_0x24299b(0x250),_0x24299b(0x1c7),_0x24299b(0x13e));return;}await API['put'](_0x24299b(0x17a),{'token_expiry_days':_0x231f19}),state['gitProvidersConfig'][_0x24299b(0x33d)]=_0x231f19,showInlineMessage('git-providers',_0x24299b(0x2b0),_0x24299b(0xe5));}catch(_0x27bbb5){console[_0x24299b(0x1c7)]('Failed\x20to\x20save\x20token\x20expiration:',_0x27bbb5),showInlineMessage(_0x24299b(0x250),'error','Failed\x20to\x20save\x20token\x20expiration');}}function populateSetupRepoAuthControls(){const _0x465729=_0xbdd971,_0x339194=document['getElementById'](_0x465729(0x365)),_0x434638=document[_0x465729(0x10d)](_0x465729(0x237));if(!_0x339194||!_0x434638)return;const _0x39d275=state['gitProvidersConfig'][_0x465729(0x22c)]||{'mode':_0x465729(0x2dd),'provider':null};_0x434638['innerHTML']=_0x465729(0x2d5);for(const _0x33a491 of state[_0x465729(0x1b6)]){const _0x47a298=document[_0x465729(0x1c3)](_0x465729(0x14c));_0x47a298[_0x465729(0x2c8)]=_0x33a491[_0x465729(0x117)],_0x47a298['textContent']=_0x33a491[_0x465729(0x117)],_0x434638[_0x465729(0x31f)](_0x47a298);}const _0x183fe3=_0x39d275[_0x465729(0x391)]===_0x465729(0x342)||_0x39d275[_0x465729(0x391)]===_0x465729(0x2c5)?_0x39d275[_0x465729(0x391)]:_0x465729(0x2dd);_0x339194[_0x465729(0x2c8)]=_0x183fe3,_0x434638[_0x465729(0x2c8)]=_0x39d275[_0x465729(0x342)]||'';if(_0x39d275[_0x465729(0x342)]&&!state['gitProviders'][_0x465729(0x223)](_0x538ab0=>_0x538ab0[_0x465729(0x117)]===_0x39d275[_0x465729(0x342)])){const _0x119ed5=document[_0x465729(0x1c3)](_0x465729(0x14c));_0x119ed5[_0x465729(0x2c8)]=_0x39d275[_0x465729(0x342)],_0x119ed5[_0x465729(0x189)]=_0x39d275[_0x465729(0x342)]+_0x465729(0x2ef),_0x119ed5[_0x465729(0x2b8)]=!![],_0x119ed5[_0x465729(0x2e1)]=!![],_0x434638[_0x465729(0x31f)](_0x119ed5);}onSetupRepoAuthModeChange(),hideSetupRepoAuthTestResult();}function onSetupRepoAuthModeChange(){const _0xe793c3=_0xbdd971,_0x38105a=document[_0xe793c3(0x10d)]('setup-repo-auth-mode')?.['value']||_0xe793c3(0x2dd),_0x25507a=document[_0xe793c3(0x10d)](_0xe793c3(0x2de)),_0x3aa959=document['getElementById'](_0xe793c3(0x1ec));_0x25507a&&(_0x25507a[_0xe793c3(0x33e)]=_0x38105a!==_0xe793c3(0x342)&&_0x38105a!=='user'),_0x3aa959&&(_0x3aa959['textContent']=_0x38105a===_0xe793c3(0x2c5)?_0xe793c3(0x12b):_0xe793c3(0x125)),hideSetupRepoAuthTestResult();}function initGitConnectionsRequiredModal(){const _0x5111fa=_0xbdd971,_0x122955=document[_0x5111fa(0x10d)](_0x5111fa(0x399));if(!_0x122955)return;const _0x25d60f=_0x122955[_0x5111fa(0x156)](_0x5111fa(0x12d)),_0x28551e=document['getElementById'](_0x5111fa(0xd3)),_0x35f73b=_0x122955[_0x5111fa(0x156)]('.modal-overlay'),_0x1d5a33=()=>{_0x122955['hidden']=!![];};_0x25d60f?.['addEventListener'](_0x5111fa(0x27e),_0x1d5a33),_0x28551e?.['addEventListener'](_0x5111fa(0x27e),_0x1d5a33),_0x35f73b?.['addEventListener']('click',_0x1d5a33);}function showSetupRepoConnectPrompt(_0x703afc,_0x14536f){const _0x4aae63=_0xbdd971,_0x163a11=document['getElementById'](_0x4aae63(0x399)),_0x25af41=document[_0x4aae63(0x10d)](_0x4aae63(0x2f5)),_0xa54b2f=escapeInlineOnclickArg(_0x703afc);if(!_0x163a11||!_0x25af41){showInlineMessage(_0x4aae63(0x250),_0x4aae63(0x1c7),_0x4aae63(0x15a)+_0x703afc+_0x4aae63(0x106));return;}const _0x4c6a9a=_0x14536f===_0x4aae63(0x136)?_0x4aae63(0x1e2):'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22currentColor\x22><path\x20d=\x22M13.05\x204.24L6.56\x2018.05l2.09.81L18\x209.77l.3-.41-5.25-5.12zm-4.21\x202.6l5.79\x205.64-.42.4-9.28\x202.6\x203.91-8.64zm-1.79\x2010.1l9.31-2.59.43-.39\x201.61\x201.57L4.67\x2019.2l2.38-2.26z\x22/></svg>';_0x25af41[_0x4aae63(0x172)]=_0x4aae63(0xde)+_0x4c6a9a+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22git-provider-card-details\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22git-provider-card-name\x22>'+Utils[_0x4aae63(0x37e)](_0x703afc)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-primary\x20btn-small\x22\x20onclick=\x22connectGitProviderFromModal(\x27'+_0xa54b2f+_0x4aae63(0x2d1),_0x163a11[_0x4aae63(0x33e)]=![];}window[_0xbdd971(0x188)]=async function(_0x3456aa){const _0x13eea3=_0xbdd971;try{const _0x332d3d=await API[_0x13eea3(0x26c)](_0x13eea3(0x1c1),{'provider_name':_0x3456aa,'redirect_after':window[_0x13eea3(0x1ed)]['pathname']+_0x13eea3(0xfc)+encodeURIComponent(_0x3456aa)}),_0x408943=document[_0x13eea3(0x10d)](_0x13eea3(0x399));if(_0x408943)_0x408943[_0x13eea3(0x33e)]=!![];window['location'][_0x13eea3(0x2cd)]=_0x332d3d[_0x13eea3(0x23b)];}catch(_0x307438){console[_0x13eea3(0x1c7)](_0x13eea3(0x262),_0x307438),showInlineMessage('git-providers',_0x13eea3(0x1c7),_0x307438[_0x13eea3(0x358)]||_0x13eea3(0x345));}};const PENDING_SETUP_REPO_ACTION_KEY=_0xbdd971(0x38f);function savePendingSetupRepoAction(_0x41e4b5){const _0x220ea4=_0xbdd971;sessionStorage['setItem'](PENDING_SETUP_REPO_ACTION_KEY,JSON[_0x220ea4(0x248)]({'action':_0x41e4b5,'timestamp':Date[_0x220ea4(0x2a7)]()}));}function loadAndClearPendingSetupRepoAction(){const _0x3fc33d=_0xbdd971;try{const _0x3d19c2=sessionStorage[_0x3fc33d(0x311)](PENDING_SETUP_REPO_ACTION_KEY);sessionStorage[_0x3fc33d(0x2e3)](PENDING_SETUP_REPO_ACTION_KEY);if(!_0x3d19c2)return null;const _0x34f2b3=JSON[_0x3fc33d(0x249)](_0x3d19c2);if(Date[_0x3fc33d(0x2a7)]()-_0x34f2b3['timestamp']>0xa*0x3c*0x3e8)return null;return _0x34f2b3;}catch{return null;}}async function handleSetupRepoOAuthReturn(){const _0x35b92c=_0xbdd971,_0x4dd9c9=new URLSearchParams(window['location']['search']);if(_0x4dd9c9[_0x35b92c(0x278)](_0x35b92c(0x1a2))!==_0x35b92c(0x2b0))return;const _0x1c2117=new URL(window[_0x35b92c(0x1ed)]);_0x1c2117[_0x35b92c(0x139)][_0x35b92c(0xfb)](_0x35b92c(0x1a2)),_0x1c2117[_0x35b92c(0x139)][_0x35b92c(0xfb)]('provider'),window[_0x35b92c(0x20e)][_0x35b92c(0x38a)]({},'',_0x1c2117),showInlineMessage('git-providers',_0x35b92c(0x2b0),'Account\x20connected\x20successfully');const _0x308213=loadAndClearPendingSetupRepoAction();_0x308213?.[_0x35b92c(0x1a9)]==='test'&&setTimeout(()=>testSetupRepoAuthSettings(),0x1f4);}function hideSetupRepoAuthTestResult(){const _0x3565e3=_0xbdd971,_0x298a4f=document[_0x3565e3(0x10d)](_0x3565e3(0x21e));_0x298a4f&&(_0x298a4f[_0x3565e3(0x33e)]=!![]);}function showSetupRepoAuthTestResult(_0x4d59e,_0x3512f3){const _0x5da236=_0xbdd971,_0x4eae02=document['getElementById'](_0x5da236(0x21e)),_0x4b666e=document[_0x5da236(0x10d)](_0x5da236(0x10e));if(!_0x4eae02||!_0x4b666e)return;_0x4b666e['className']=_0x5da236(0x1c9)+_0x4d59e,_0x4b666e['textContent']=_0x3512f3,_0x4eae02['hidden']=![];}function setSetupRepoAuthTestWorkingState(_0x547e48){const _0x329bcf=_0xbdd971,_0x4ccb09=document[_0x329bcf(0x10d)](_0x329bcf(0x324));if(!_0x4ccb09)return;if(_0x547e48){!_0x4ccb09[_0x329bcf(0x264)][_0x329bcf(0x1bb)]&&(_0x4ccb09[_0x329bcf(0x264)][_0x329bcf(0x1bb)]=_0x4ccb09[_0x329bcf(0x189)]['trim']()||_0x329bcf(0x168));_0x4ccb09[_0x329bcf(0x2b8)]=!![],_0x4ccb09[_0x329bcf(0x213)][_0x329bcf(0x1cb)](_0x329bcf(0x14a)),_0x4ccb09[_0x329bcf(0x189)]='Testing',_0x4ccb09[_0x329bcf(0x29d)](_0x329bcf(0x28f),'true');return;}_0x4ccb09[_0x329bcf(0x2b8)]=![],_0x4ccb09[_0x329bcf(0x213)][_0x329bcf(0x241)](_0x329bcf(0x14a)),_0x4ccb09[_0x329bcf(0x189)]=_0x4ccb09[_0x329bcf(0x264)][_0x329bcf(0x1bb)]||_0x329bcf(0x168),_0x4ccb09['removeAttribute']('aria-busy');}function collectSetupRepoAuthPayload(){const _0x5eab05=_0xbdd971,_0x159f62=document[_0x5eab05(0x10d)](_0x5eab05(0x365))?.[_0x5eab05(0x2c8)],_0x201cdd=_0x159f62===_0x5eab05(0x342)||_0x159f62===_0x5eab05(0x2c5)?_0x159f62:_0x5eab05(0x2dd),_0x3d2d2f=document['getElementById'](_0x5eab05(0x237))?.[_0x5eab05(0x2c8)]||null;return{'mode':_0x201cdd,'provider':_0x201cdd===_0x5eab05(0x342)||_0x201cdd==='user'?_0x3d2d2f:null};}async function saveSetupRepoAuthSettings(){const _0x3e2511=_0xbdd971;try{const _0x40539b=collectSetupRepoAuthPayload();if((_0x40539b[_0x3e2511(0x391)]===_0x3e2511(0x342)||_0x40539b[_0x3e2511(0x391)]==='user')&&!_0x40539b[_0x3e2511(0x342)]){showInlineMessage('git-providers','error',_0x3e2511(0x378));return;}await API[_0x3e2511(0x243)](_0x3e2511(0x17a),{'setup_repo_auth':_0x40539b}),state[_0x3e2511(0x1aa)][_0x3e2511(0x22c)]=_0x40539b,showInlineMessage('git-providers',_0x3e2511(0x2b0),_0x3e2511(0x155)),hideSetupRepoAuthTestResult();}catch(_0x2c08fa){console[_0x3e2511(0x1c7)]('Failed\x20to\x20save\x20setup\x20repo\x20auth\x20settings:',_0x2c08fa),showInlineMessage('git-providers','error',_0x2c08fa[_0x3e2511(0x358)]||_0x3e2511(0x2e9));}}function _0x3917(){const _0x14404e=['pc9KAxy+','C2v0DgLUz3mTzgvMyxvSDc1Hz2vUDc1JB250ywLUzxi','C2v0DgLUz3mTBMfTzq','ywKTChjVDMLKzxiTyxbPlwTLEs1PBNb1Da','z2L0AhvIlxnLDhvWlw9YzY1YB3C','rMfPBgvKihrVihn0yxj0ie9bDxrOigzSB3C6','rMfPBgvKihrVihnHDMuGz2vUzxjHBcbZzxr0Aw5NCW','zgf0yxnLDa','rMfPBgvKihrVihjLBw92zsbHy2nVDw50','q2vYDgLMAwnHDguGCMvTB3zLza','mJi0mdKWren3sMDt','nJCXmtyWCNzAu1zo','ywn0AxzL','ywXSB3DFBg9JywXFyxv0Aa','qwnJzxnZigrLBMLLza','Cg9ZDa','z2L0uhjVDMLKzxjbDxrOtwv0Ag9K','jYKIihrPDgXLpsjnyw5Hz2uGvgvHBxmIpGOGicaGicaGicaGica8C3zNihDPzhrOpsiXnciGAgvPz2H0psiXnciGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiJ4kicaGicaGicaGicaGica8Cgf0AcbKpsjnmtCGmJf2ltjHnca0idaGmcaWltqTneG1ytqGncaWidaGmc00idr2mIi+pc9WyxrOpGOGicaGicaGicaGicaGidXJAxjJBguGy3G9iJKIign5psi3iIbYpsi0iJ48l2nPCMnSzt4kicaGicaGicaGicaGica8Cgf0AcbKpsjnmJmGmJf2ltjHnca0idaGmcaWltmTmY44nYi+pc9WyxrOpGOGicaGicaGicaGicaGidXWyxrOigq9iK0XnIaZlJeZytqGncaWidaGmsaWidCUnZuIpJWVCgf0Ad4kicaGicaGicaGicaGpc9ZDMC+cIaGicaGicaGica8l2j1DhrVBJ4kicaGicaGicaGidXIDxr0B24Gy2XHC3m9iMj0BI1Py29UiIbVBMnSAwnRpsjLzgL0r2L0uhjVDMLKzxiOjW','rMfPBgvKihrVihjLBw92zsbHy2nVDw50oG','pe5VDcbqyxj0ie9MienLCNrPzMLJyxrLpG','rMfPBgvKihrVihnHDMuGA2vLCgfSAxzLihnLDhrPBMDZoG','ww91CIbhAxriDwiGrw50zxjWCMLZzsbtzxj2zxiGAg9ZDg5HBwuGkguUzY4SigDPDgH1yI5TEwnVBxbHBNKUy29Tkq','zw1HAwXdB25MAwC','ihnLDhrPBMDZ','cIaGicaGicaGicaGicaGpgj1DhrVBIbJBgfZCZ0IyNrUlwLJB24GyNrUlxnTywXS','B25bENvYzuf1DgHnzxrOB2rdAgfUz2u','uhjVDMLKzxiGtMfTzsbPCYbYzxf1AxjLza','z2v0','r2L0shvI','C2v0DgLUz3mTzgvMyxvSDc1LBNzPCM9UBwvUDc1OAwrKzw4','DMLLD0nHq2vYDgLMAwnHDgu','ChjVDMLKzxiTC2LNBMLUlwLUChv0','zw5HyMXLza','y2XPy2S','rMfPBgvKihrVigXVywqGq0eGy2vYDgLMAwnHDgvZoG','r2L0ihbYB3zPzgvYihvWzgf0zwq','z2L0AhvIlxnLDhvWlwnHBMnLBc1IDg4','iIbOyxmGyMvLBIbZDwnJzxnZzNvSBhKGy29UzMLNDxjLzc4','iJ4kicaGicaGica8C3bHBIbJBgfZCZ0IBwvTyMvYlw5HBwuIpG','rw1HAwWGC2v0DgLUz3mGC2f2zwq','l3nLDhrPBMDZl21VzgvSCW','rMfPBgvKihrVihbHCNnLihnLDhvWihbHCMfTzxrLCNm6','z2L0AhvIlw9HDxrOlwzPzwXKCW','zgvSzxrLlwDPDc1WCM92AwrLCI1TB2rHBa','rMfPBgvKihrVigrLBgv0zsbNAxqGChjVDMLKzxi6','ywrKlwDPDc1WCM92AwrLCI1IDg4','z2L0lxbYB3zPzgvYlw9Yz2fUAxPHDgLVBG','ywXS','iJ4kicaGicaGicaGidXKAxyGy2XHC3m9iNbYB3zPzgvYlwfJy291BNqTAw5MBYi+cIaGicaGicaGicaGidXKAxyGy2XHC3m9iNbYB3zPzgvYlwfJy291BNqTBgfIzwWIpGOGicaGicaGicaGicaGia','lMDOzs5JB20','yxjPys1IDxn5','lNnLDhrPBMDZlw5HDI1PDgvT','ywDLBNq','C2HVDW','rMfPBgvKihrVigXVywqGBw9KzwWGy29UzMLNDxjHDgLVBJO','ywKTChjVDMLKzxiTDgfIlq','ugfZDguGDgHLignVzguGC2HVD24GyNKGqw50AhjVCgLJ','rMfPBgvKihrVihjLBw92zsbtu08Gy29UzMLNoG','zw1HAwWTzNjVBs1Uyw1L','pc9VChrPB24+','ChjVDMLKzxiTC2LNBMLUlw9Wzw4TyNrU','rMfPBgvKihrVigXVywqGChjVDMLKzxiGzgv0ywLSCZOG','zgvSzxrLlwDPDc1WCM92AwrLCI1JB25MAxjTlwj0BG','ywrKlwnHlwnLCNqTBw9KywWTzxjYB3i','C2v0qxr0CMLIDxrL','qxv0Ag9YAxPHDgLVBIbdB2rL','icHHCgKTDMvYC2LVBJOG','ywXSB3DLzfrLyw1Z','ywKTChjVDMLKzxiTzwrPDc1HCgKTDMvYC2LVBG','C3rHDgu','pc9ZCgfUpGOGicaGicaGicaGpc9KAxy+cIaGicaGicaGica8zgL2ihn0EwXLpsjMB250lxnPEMu6idaUogvToYbJB2XVCJOGDMfYkc0Ty29SB3iTDgv4Dc1ZzwnVBMrHCNKSicm4odGPoYbTyxjNAw4TDg9WoIaYChG7iJ4','l3nLDhrPBMDZl3bYB3zPzgvYlwf1DgGVywrKlwfWAs1RzxK','B3b0Aw9Uw3zHBhvLpsi','u2v0DxaGCMvWB3nPDg9YEsbHDxrOzw50AwnHDgLVBIb0zxn0ihn1y2nLzwrLzc4','BM93','u2v0DxaGCMvWB3nPDg9YEsbHDxrOzw50AwnHDgLVBIb0zxn0igzHAwXLzc4','iIbMCM9Tia','y2XHDwrLlwvMzM9YDc1YB3C','y2XPzw50x2LK','vgvZDa','AxnFzgvMyxvSDa','z2L0lxbYB3zPzgvYlxrLyw1Zlw1VzgfS','pc9KAxy+cIaGicaGicaGpc9KAxy+cIaGicaGicaGpgrPDIbJBgfZCZ0Iz2L0lxbYB3zPzgvYlwfJDgLVBNmIpGOGicaGicaGicaGpgj1DhrVBIbJBgfZCZ0IyNrUlwLJB24Iig9Uy2XPy2S9iM1HBMfNzuDPDfbYB3zPzgvYvgvHBxmOjW','C3vJy2vZCW','y2eTy2vYDc1JB250zw50','z2L0AhvIlxnLDhvWlwXVz2LUlwXPBMS','y29KzxGTCMvHC29UAw5NlxjVDW','DgvUyw50x2LK','z2L0lxbYB3zPzgvYlw5HBwu','ChjVDMLKzxiTCMvUyw1LlwLUChv0','z2L0AhvIlwLUC3rHBgXHDgLVBI1SAw5RlxjVDW','zgLZywjSzwq','l2fWAs1RzxK','C2vJCMv0','Ahr0CdO','z2L0lxbYB3zPzgvYlwnLCNrPzMLJyxrL','q29UBMvJDgLVBIbZDwnJzxnZzNvS','y29KzxHFCMvHC29UAw5Nx2XLDMvS','BgfZDfjLzNjLC2G','z2L0lxbYB3zPzgvYlwfKzc10zwfTlxnLBgvJDa','ChjPDMf0zv9RzxK','z2L0AhvIlxnLDhvWlw1HBMLMzxn0lwzVCM0','y2vYDc1PC3n1zwqTyNKTBW','rMfPBgvKihrVihn0yxj0ie9bDxrOigzSB3C','DxnLCG','rMfPBgvKihrVihjLBw92zsbJzxj0AwzPy2f0zq','AM9PBG','DMfSDwu','z2L0lxbYB3zPzgvYlxrLyw1Zlw1Vzgu','z2L0lxbYB3zPzgvYlxrLyw1Zlw5HBwu','iIbOyxmGyMvLBIbPBNn0ywXSzwqGyw5KigfKzgvKihrVihLVDxiGChjVDMLKzxjZlG','rMfPBgvKihrVigfKzcbbssbWCM92AwrLCIbHy2nVDw50oG','AhjLzG','AxnFDxbKyxrL','z2v0vgvHBxm','cIaGicaGicaGica','jYKIpKnVBM5Ly3q8l2j1DhrVBJ4kicaGicaGpc9KAxy+cIaGica8l2rPDJ4kica','z2v0r2L0uhjVDMLKzxjbBgXVD2vKvgvHBxm','lwLUBgLUzs1TzxnZywDL','y2XHDwrLx2vMzM9YDf9SzxzLBa','pg9WDgLVBIb2ywX1zt0IiJ4TlsbtzwXLy3qGysbWCM92AwrLCIaTltWVB3b0Aw9UpG','z2L0lxbYB3zPzgvYlxrLC3qTyNrU','lwLUDgvYDMfS','qxjLihLVDsbZDxjLihLVDsb3yw50ihrVihjLBw92zsb0AgLZienbignLCNrPzMLJyxrLpW','z2L0AhvIlwfWCc1Zzxr1Cc13AxPHCMqTBw9KywW','C3nVlwrLzMf1BhqTCM9Szq','ywDLBNrFA2vLCgfSAxzL','y29KzxHszwfZB25PBMC','Bg9JywW','C2v0DxaTCMvWBY1WCM92AwrLCI1YB3C','l3nLDhrPBMDZl2TLzxbHBgL2zq','y2vYDc1MAw5NzxjWCMLUDc1WDwjRzxK','C2vSzwn0zwq','z2L0lxbYB3zPzgvYlw5HBwuTAgLUDa','CMvTB3zLsxrLBq','C3nVlwvUywjSzwq','qvbjigTLEsbHy2nVDw50ihvWzgf0zwq','rMfPBgvKihrVihnHDMuGu1npihnLDhrPBMDZ','l3nLDhrPBMDZl2f2ywLSywjSzs1TB2rLBhm','ywrKlxbYB3zPzgvYlwDPDgH1yI1IDg4','rMfPBgvKihrVihnHDMuGC2v0DxaGCMvWB3nPDg9YEsbHDxrOzw50AwnHDgLVBG','C2v0r2L0uhjVDMLKzxjbBgXVD2vKvgvHBxm','ugXLyxnLigvUDgvYigfUigLZC3vLCIbvuKW','z2L0lxbYB3zPzgvYCY1SAxn0','AxnfEhbPCMvK','phaGy2XHC3m9iNrLEhqTBxv0zwqIpK5VienbignLCNrPzMLJyxrLCYbJB25MAwD1CMvKlJWVCd4','icH1BMf2ywLSywjSzsK','tMfTzsbHBMqGy2vYDgLMAwnHDguGy29UDgvUDcbHCMuGCMvXDwLYzwq','z2L0AhvIlxnLDhvWlwfJy291BNqTDhLWzq','A2vLCf9LEgLZDgLUz19ZzwnYzxq','rMfPBgvKihrVihnHDMuGDgvHBsbHC3nPz25Tzw50CW','uMvTB3zLifnttYbdB25MAwD1CMf0Aw9U','z2L0lwnVBM5Ly3rPB25ZlxjLCxvPCMvKlwXPC3q','lxn0yxr1CW','cIaGicaGicaGicaGicaGica8C3zNignSyxnZpsjHy2nVDw50lwfJDgL2zs1JAgvJAYiGD2LKDgG9iJe2iIbOzwLNAhq9iJe2iIb2Awv3qM94psiWidaGmJqGmJqIigzPBgW9iM5VBMuIihn0CM9Rzt0Iy3vYCMvUDenVBg9YiIbZDhjVA2uTD2LKDgG9iJiUnsi+cIaGicaGicaGicaGicaGicaGidXWB2X5BgLUzsbWB2LUDhm9iJiWidyGosaXnYa0ideYiJ48l3bVBhLSAw5LpGOGicaGicaGicaGicaGicaGpc9ZDMC+cIaGicaGicaGicaGicaG','ywnJB3vUDhm','u2f2Aw5NlI4U','C3bLy2LMAwm','y2vYDc1PC3n1zwqTyNKTB3u','r2L0shvIiefWCcboyw1LigLZihjLCxvPCMvK','y2eTy2vYDc1ZyxzLlwj0BG','rwrPDcbhAxqGuhjVDMLKzxi','Ahr0Chm6','u2vUzgLUzYb0zxn0igvTywLSlI4U','DhjPBq','Bw9KzwXdB25MAwC','zw1HAwWTzNjVBq','uMvUyw1L','zw1HAwWTCgfZC3DVCMqTC3rHDhvZ','Dgv4Da','z2L0lxbYB3zPzgvYlxrLyw1ZlwnHBMnLBc1IDg4','rMfPBgvKihrVihjLBMfTzsbHy2nVDw50','Bw9KzwWTy29KzxGTCMvHC29UAw5NlwnVBNrHAw5LCG','A2vLCgfSAxzL','C2vSzwn0','C3nVlxrLC3qTyNrU','pg9WDgLVBIb2ywX1zt0I','y2vYDc1MAw5NzxjWCMLUDc1Jzxj0','B3jNyw5PEMf0Aw9U','ChjVDg9JB2W','z2v0sxrLBq','yxnZAwDU','u2LNBMLUzYbPBI4UlG','zwrPDeDPDfbYB3zPzgvY','y2eTy2vYDgLMAwnHDgvZlwXPC3q','AxnZDwvKqNK','rMfPBgvKihrVihnHDMuGz2L0ihbYB3zPzgvY','ywDLBNrZ','u3vIzg9TywLU','z2L0lxbYB3zPzgvYlw9HDxrOlwnSAwvUDc1Pza','ywKTChjVDMLKzxiTzwrPDc1Jyw5JzwWTyNrU','r2L0shvIiefWCcbZzxr1CcbJB21WBgv0zwqGC3vJy2vZC2z1BgX5lG','vgvHBsbHC3nPz25Tzw50CYb1CgrHDgvK','nJm4mtzRwhLfvwC','yxbWzw5Kq2HPBgq','u01uucbJB25Uzwn0Aw9Uihn1y2nLC3nMDwW','q2fSBgjHy2SGvvjm','ugfZC3DVCMqGAxmGy29UzMLNDxjLzcaOBgvHDMuGyMXHBMSGDg8GA2vLCcK','DgvZDa','DgvZDc1Zzxr1Cc1YzxbVlwf1DgGTyNrU','zgvMyxvSDf9Hz2vUDa','ChjVDMLKzxiTC2LNBMLUlwXHyMvS','z2L0AhvIu2v0Dxbby2nVDw50vhLWzq','CMv0CNKTC2v0DgLUz3mTyNrU','mI1KAwDPDa','rMfPBgvKihrVigXVywqGDgvHBsbHC3nPz25Tzw50CW','CMvTB3zLq2fdzxj0AwzPy2f0zq','ywKTChjVDMLKzxiTyxbPlwTLEs1LBMrWB2LUDc1LBMfIBgvK','C3nVuhjVDMLKzxi','Bw9KzwWT','BM9Uzq','z2L0x3bYB3zPzgvYx3nLDhvW','Aw5KzxGUAhrTBa','y3jLyxrLzf9HDa','qwrKiefqssblzxK','ChjVDMLKzxjoyw1L','cIaGicaGicaGicaGicaGpgj1DhrVBIbJBgfZCZ0IyNrUlwLJB24GyNrUlxnTywXSiIb0AxrSzt0IuMvUyw1LiIbVBMnSAwnRpsjVCgvUuMvUyw1LqwnJB3vUDe1VzgfSkcC','rMfPBgvKihrVigXVywqGquKGChjVDMLKzxjZihn0yxr1CZO','ywKTChjVDMLKzxiTzwrPDc1ZyxzLlwj0BG','rMfPBgvKihrVihvWzgf0zsbbueKGA2v5igfJy291BNq6','pc9ZCgfUpGOGicaGicaGidXIDxr0B24Gy2XHC3m9iMj0BI1Py29UiIbVBMnSAwnRpsjYzw1VDMvhAxrqCM92AwrLCLrLyw0OjW','Aw5ZDgfSBgf0Aw9Ux3nLDhrPBMDZx3vYBa','u1npihnLDhrPBMDZihnHDMvKigfUzcbHChbSAwvK','DgvZDfbYB3zPzgvYqwnJB3vUDef1DgG','Dg9Rzw5FzxHWAxj5x2rHExm','AgLKzgvU','y2HHBMDL','ywKTChjVDMLKzxiTzwrPDc1LBMrWB2LUDc1LBMfIBgvK','z2L0AhvIlxnLDhvWlwrLC2nYAxb0Aw9U','ChjVDMLKzxi','CMvKAxjLy3rFDxjS','z2L0lxbYB3zPzgvYlxrLyw1Zlw1VzgfSlwvYCM9Y','rMfPBgvKihrVihn0yxj0ignVBM5Ly3rPB24','t0LeqYbKAxnJB3zLCNKGC3vJy2vZC2z1Ba','Dg9mB2nHBgvtDhjPBMC','l3nLDhrPBMDZl3bYB3zPzgvYlwf1DgGV','DgfI','BwfUywDLr2L0uhjVDMLKzxjuzwfTCW','uMvTB3zLienbienLCNrPzMLJyxrL','lwfJy291BNrZ','u2f2zsb0AguGChjVDMLKzxiGzMLYC3qGyMvMB3jLihrLC3rPBMCGDgHLignVBM5Ly3rPB24','z2v0q3vYCMvUDfvZzxi','C2f2zs1TB2rLBhmTyNrU','y3vYCMvUDfnLy3rPB24','CMvHC29UAw5Ntgv2zwXZ','A2v5ChjLC3m','rMfPBgvKihrVihnHDMuGz2vUzxjHBcbZzxr0Aw5NCZO','zw1HAwWTDgvZDc1JB25Uzwn0Aw9Ulwj0BG','ww91CIbHy2nVDw50igLZig5VDcbJB25Uzwn0zwqUienVBM5Ly3qGDg8GDgvZDcb3AxrOihvZzxiGy3jLzgvUDgLHBhmU','C2f2zs1NAxqTDg9Rzw4TzxHWAxjHDgLVBI1IDg4','z2L0AhvIlxnLDhvWlw1HBMLMzxn0lwLUChv0','BwvZC2fNzq','zMLUza','A2vLCf9LEgLZDgLUz19WCML2yxrLx2TLEq','z2L0lxbYB3zPzgvYlxnHDMuTyNrU','C2v0DxbdB25MAwC','B25JBgLJAW','ChjVDMLKzxiTCMvUyw1LlwnHBMnLBc1IDg4','rMfPBgvKihrVigXVywqG','y2eTy2vYDc1MAwXLlwLUChv0','B25hAxrqCM92AwrLCLr5CgvdAgfUz2u','C3nVlwnSAwvUDc1ZzwnYzxq','zMLSDgvY','z2L0AhvIlxnLDhvWlwHVC3q','C2v0DxaTCMvWBY1HDxrOlw1Vzgu','rMfPBgvKihrVigfKzcbHy2nVDw50','C3nVlwLZC3vLCG','z2L0lxrVA2vUlwv4CgLYyxrPB24','u2v0DxaGy29TCgXLDgvKigj1DcbMywLSzwqGDg8GzgLZCgXHEsbKzxrHAwXZlG','jYKIihrPDgXLpsjezwXLDguIpGOGicaGicaGicaGica8C3zNihDPzhrOpsiXnciGAgvPz2H0psiXnciGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiJ4kicaGicaGicaGicaGica8Cg9SEwXPBMuGCg9PBNrZpsiZidyGnsa2idiXidyIpJWVCg9SEwXPBMu+cIaGicaGicaGicaGicaGphbHDgGGzd0Itte5idz2mtrHmIaYidaGmcaXltiGmKG3ytiGmIaWidaGms0YltjwnM0ZidbwngeYidiGmcaWideGmI0YAdrHmIaYidaGmcaXidiGmNyYiJ48l3bHDgG+cIaGicaGicaGicaGidWVC3zNpGOGicaGicaGicaGpc9IDxr0B24+cIaGicaGicaGpc9KAxy+cIaGicaGidWVzgL2pGOGicaG','qwnJB3vUDcbJB25Uzwn0zwq','qwnJB3vUDcbYzwzYzxnOzwq','ChjVDMLKzxiTC2LNBMLUlwXHyMvSlwLUChv0','lNnZBY10ywi','rMfPBgvKihrVihnHDMuGDgvHBsbHC3nPz25Tzw50CZO','y2vYDc1PC3n1zwqTDg8TBW','cIaGicaGidXKAxyGy2XHC3m9iMnHlwnLCNqTAxrLBsiGzgf0ys1Pzd0I','C2vJDgLVBI0','rw50zxi','zw52AxjVBM1LBNq','l3nLDhrPBMDZ','yxbPx2TLEq','r2L0ihbYB3zPzgvYigfKzgvK','ugXLyxnLihnLBgvJDcbHihbYB3zPzgvYigzVCIbZzxr1CcbYzxbVC2L0B3j5igf1DgHLBNrPy2f0Aw9U','tMv4Da','qwn0AxzLigfJy291BNq','ywKTChjVDMLKzxiTyxbPlwTLEs1SywjLBa','yMfZzv91CMW','rMfPBgvKihrVigXVywqGy2vYDgLMAwnHDguGzgv0ywLSCW','zxnJyxbLshrTBa','ywKTChjVDMLKzxiTywrKlxrPDgXL','s2v5igHPzgrLBG','ChjVDMLKzxiTCMvUyw1LlxnHDMuTyNrU','z2L0lxbYB3zPzgvYlxr5CguTCMvXDwLYzwq','l3nLDhrPBMDZl2TLzxbHBgL2zs9ZDgf0Dxm','Aw5ZDgfSBgf0Aw9Ux2LK','C2v0DgLUz3mTywn0AxzLlxnLy3rPB24','C3nVlxrHyI0','D29YA2LUzW','z2L0AhvIu2v0DxbiB3n0vhLWzq','yxP1CMuTzgv2B3bZlxbYB3zPzgvYlwzPzwXKCW','CMvWBgfJzvn0yxrL','iIbKyxrHlwfJy291BNqTAwq9iG','ugXLyxnLigvUDgvYigeGCMvJAxbPzw50igvTywLSigfKzhjLC3m','C3vWCg9YDhnfzMzVCNrmzxzLBa','z2L0AhvIlxnLDhvWlwHVC3qTDhLWzs1JB250ywLUzxi','CgvUzgLUz1nLDhvWuMvWB0fJDgLVBL9Zzxr0Aw5NCW','rMfPBgvKihrVihrLC3qGy29UBMvJDgLVBJO','Bw9Kzq','C2v0DgLUz3mTBg9HzgLUzW','lNbYB3zPzgvYlwf1DgGTDgvZDc1IDg4','BwfUAwzLC3q','y2fdzxj0C0nVBMzPzW','yxnZAwDUzwruzwfTswrZ','rMfPBgvKihrVihnHDMuGu1npihnLDhrPBMDZoG','cIaGicaGicaGicaGidXIDxr0B24Gy2XHC3m9iMj0BI1Py29Uigj0BI1ZBwfSBcbIDg4TzgfUz2vYiIb0AxrSzt0IuMvTB3zLiIbVBMnSAwnRpsjYzw1VDMvqCM92AwrLCKfJy291BNqOjW','z2L0lwnVBM5Ly3rPB25ZlxjLCxvPCMvKlw1VzgfS','rMfPBgvKihrVihn0yxj0ihnLDhvW','z2L0lwnVBM5Ly3rPB25ZlwnSB3nLlwj0BG','C3nVlwfSBg93lwXVy2fS','ywKTChjVDMLKzxiTywrKlwnHBMnLBc1IDg4','zgLZCgXHEu5HBwu','rMfPBgvKihrVigXVywqGy2vYDgLMAwnHDguGzgv0ywLSCZO','uMvTB3zL','lMfWAwTLEs10B2DNBguTDMLZAwjPBgL0Eq','qxP1CMuGrgv2t3bZ','ugfZDguGDgHLigz1BgWGvvjmigzYB20GEw91CIbICM93C2vYj3mGywrKCMvZCYbIyxi','pgrPDIbJBgfZCZ0Iy2eTy2vYDc1ZDwjQzwn0iJ4','C2v0DgLUz3mTzgvMyxvSDc1LBNzPCM9UBwvUDc1JB250ywLUzxi','cIaGica8zgL2ignSyxnZpsjNAxqTChjVDMLKzxiTy2fYzci+cIaGicaGidXKAxyGy2XHC3m9iMDPDc1WCM92AwrLCI1JyxjKlwHLywrLCIi+cIaGicaGicaGpgrPDIbJBgfZCZ0Iz2L0lxbYB3zPzgvYlwnHCMqTAw5MBYi+cIaGicaGicaGica8zgL2ignSyxnZpsjNAxqTChjVDMLKzxiTy2fYzc1Py29UiJ4','phaGy2XHC3m9iNrLEhqTBxv0zwqIpK5VigDPDcbWCM92AwrLCNmGy29UzMLNDxjLzc48l3a+','z2L0lxbYB3zPzgvYlwLTCg9YDc1Jzxj0lwj0BG','t0f1DgG','q29UBMvJDgLVBIbZDwnJzxnZzNvSoIa','y2XHDwrL','jYKIpGOGicaGicaGicaGicaGifrLC3qkicaGicaGicaGicaGpc9IDxr0B24+cIaGicaGicaGicaGia','vg9Rzw4GzxHWAxjHDgLVBIbZyxzLza','AxmTzgvMyxvSDa','y2XPzw50x3nLy3jLDa','rgLZy292zxj5igzHAwXLzdOG','q3vZDg9TigvUzhbVAw50igjHC2uGvvjmig11C3qGyMuGysb2ywXPzcbODhrWl2H0DhbZifvsta','zw1HAwWTC2vJDxjL','re9nq29UDgvUDeXVywrLza','pg9WDgLVBIb2ywX1zt0IiJ5ezwzHDwX0pc9VChrPB24+','zw50zxjWCMLZzs1JBg91za','DMLLDY1Jys1Jzxj0lw1VzgfS','pc9ZCgfUpG','t0f1DgGGywnJB3vUDa','l3nLDhrPBMDZl29PzgmVDgvZDa','tgfZDcbYzwzYzxnOoIa','zgLZCgXHEv9Uyw1L','DhLWzq','C3nVlwf1Dg8TChjVDMLZAw9U','C2f2zs1RzwvWywXPDMuTyNrU','CMvWBgfJzq','cIaGicaGidXVChrPB24GDMfSDwu9iNbLCNnVBMfSiJ5qzxjZB25HBdWVB3b0Aw9UpGOGicaGica8B3b0Aw9UihzHBhvLpsjVCMDHBML6yxrPB24IihnLBgvJDgvKpK9Yz2fUAxPHDgLVBJWVB3b0Aw9UpGOGicaG','yMXVy2S','r2L0shvIihbYB3zPzgvYici','zgvSzxrL','p3nLy3rPB249z2L0lxbYB3zPzgvYCYzNAxrFy29UBMvJDgLVBJ1ZDwnJzxnZjNbYB3zPzgvYpq','ywKTChjVDMLKzxiTyxbPlwTLEs1LBMrWB2LUDc1MAwvSzhm','C2v0sxrLBq','y2f0y2G','ywrKlwnHlwnLCNqTBw9KywW','B25hAxriDwjtzxr1CefJy291BNruExbLq2HHBMDL','C3r5Bgu','y29TCgXLDgvK','AxnZDwvY','rMfPBgvKihrVigXVywqGChjVDMLKzxiGzgv0ywLSCZO','iI4GugXLyxnLignVBM5Ly3qGDMLHifbYB2zPBguGC2v0DgLUz3mU','C3nVlwLUBgLUzs1TzxnZywDL','cIaGicaGicaGicaGicaGphnWyw4Gy2XHC3m9iMfJy291BNqTBgfIzwWTDgv4Dci+','mte5ndC3nfrSq2LsAa','z2L0lxbYB3zPzgvYlwnSAwvUDc1Pza','x2jSyw5R','BgfIzwW','z2v0rwXLBwvUDej5swq','C2v0DxaTCMvWBY1HDxrOlxrLC3qTCMvZDwX0','DgfYz2v0','cIaGicaGidXVChrPB24GDMfSDwu9iNzPzxDLCIi+vMLLD2vYpc9VChrPB24+cIaGicaGidXVChrPB24GDMfSDwu9iMrLDMvSB3bLCIi+rgv2zwXVCgvYpc9VChrPB24+cIaGicaGidXVChrPB24GDMfSDwu9iM1HBMfNzxiIpK1HBMfNzxi8l29WDgLVBJ4kicaGicaGpg9WDgLVBIb2ywX1zt0IywrTAw4IpKfKBwLUAxn0CMf0B3i8l29WDgLVBJ4kicaGia','t3jNyw5PEMf0Aw9Uie5HBwuGAxmGCMvXDwLYzwq','z2L0lxbYB3zPzgvYlw1VzgfSlwvYCM9Y','yxbWx2LK','C2v0DgLUz3mTzxjYB3i','zMLSzxm','y2eTy2vYDc1Jyw5JzwWTyNrU','BMfTzq','C2v0DgLUz3mTzgvMyxvSDc1Hz2vUDc1OAwrKzw4','q29UBMvJDgLVBIb0zxn0igzHAwXLza','AgfZ','l3nLDhrPBMDZl2nHlwnLCNrPzMLJyxrLCW','C3nVlwrLzMf1BhqTCM9Szs1JB250ywLUzxi','cIaGicaGidXVChrPB24GDMfSDwu9iNnLy3jLDci+q2XPzw50ifnLy3jLDdWVB3b0Aw9UpGOGicaGica8B3b0Aw9UihzHBhvLpsjJzxj0AwzPy2f0zsi+q2vYDgLMAwnHDgu8l29WDgLVBJ4kicaGia','zw50zxjWCMLZzs1Zzxj2zxi','r2vUzxjHBcbZzxr0Aw5NCYbZyxzLza','r2L0shvIievUDgvYChjPC2uGu2vYDMvYigHVC3rUyw1LigLZihjLCxvPCMvK','qvbjigTLEsbHy2nVDw50ig5VDcbMB3vUza','B25SB2fK','zMXVD190ExbL','CgfZC3DVCMq','uMvXDwLYzwqGD2HLBIb1C2LUzYbhAxqGuhjVDMLKzxiGBw9Kzs4GvxnLCYbHChaGy3jLzgvUDgLHBhmGzNjVBsb0AguGC2vSzwn0zwqGChjVDMLKzxiU','ywKTChjVDMLKzxiTywrKlxn1yM1PDc1IDg4','y2XHDwrLrwzMB3j0','z2L0AhvIlxnLDhvWlwHVC3qTCM93','rMfPBgvKihrVihnHDMuGz2L0ihbYB3zPzgvYoG','z2L0lxbYB3zPzgvYlw5HBwuTCMvXDwLYzwq','uMvXDwLYzwqGD2HLBIb1C2LUzYbhAxqGuhjVDMLKzxiGBw9Kzs4GvxnLCYb5B3vYihbLCNnVBMfSie9bDxrOihrVA2vUihzPysb0AguGC2vSzwn0zwqGChjVDMLKzxiU','tM90ihLLDcbYzwzYzxnOzwq','lM1VzgfSlwnSB3nL','u2v0igfZigfJDgL2zq','zw1HAwWTDxnLCG','C3nVq29UzMLN','lMv5zs1JBg9Zzwq','l3nLDhrPBMDZl2DPDc1WCM92AwrLCNm','ywKTChjVDMLKzxiTyxbPlwTLEs1IyxnLlxvYBa','r2L0shvIiefWCcbZzxr1CcbMywLSzwq6ia','zw1HAwWTAg9ZDa','z2L0AhvI','DgvHBxm','CxvLCNLtzwXLy3rVCKfSBa','C2vHCMnOugfYyw1Z','zgvMyxvSDa','C2v0uhjVDMLKzxjby2nVDw50rgvMyxvSDa','z2L0lxbYB3zPzgvYlxr5Cgu','l3nLDhrPBMDZl29Pzgm','vg9Rzw4GzxHWAxjHDgLVBIbTDxn0igjLigf0igXLyxn0ideGzgf5','iJ4kicaGicaGica8zgL2ignSyxnZpsjNAxqTChjVDMLKzxiTAw5MBYi+cIaGicaGicaGica8zgL2pGOGicaGicaGicaGica8C3bHBIbJBgfZCZ0Iz2L0lxbYB3zPzgvYlw5HBwuIpG','mti0mdvSEeHWExy','Bg9NAw4UAhrTBa','z2L0lxbYB3zPzgvYlxbYAxzHDguTA2v5','AgfZx3bYAxzHDgvFA2v5','DMfSAwrPDhLqzxjPB2q','zwzMB3j0tgv2zwXZ','AgfZqwXSugvYBwLZC2LVBNm','pg9WDgLVBIb2ywX1zt0IiJ4TlsbtzwXLy3qGysb0zwfTic0Tpc9VChrPB24+','l3nLDhrPBMDZl2DLBMvYywW','zgv0ywLSCW','AxmTD29YA2LUzW','CgXHy2vOB2XKzxi','B3b0Aw9U','phaGy2XHC3m9iNrLEhqTBxv0zwqIihn0EwXLpsjTyxjNAw46idrWEcaWoYi+tM8GDgvHBxmGyxnZAwDUzwq8l3a+','zw1HAwWTCg9YDa','zw1HAwWTDgvZDc1Yzxn1Bhq','z2L0lxbYB3zPzgvYlxrLyw1ZlxnWzwnPzMLJ','y2vYDc1PC3n1zwqTyNKTy24TCM93','cIaGicaGidXVChrPB24GDMfSDwu9iMn1C3rVBsi+q3vZDg9Tie9jremGuhjVDMLKzxi8l29WDgLVBJ4kicaGicaGpg9WDgLVBIb2ywX1zt0IBwLJCM9ZB2z0iJ5nAwnYB3nVzNqGrw50CMeGsuqGkef6DxjLiefektWVB3b0Aw9UpGOGicaGica8B3b0Aw9UihzHBhvLpsjVA3rHiJ5pA3rHpc9VChrPB24+cIaGicaGidXVChrPB24GDMfSDwu9iMDVB2DSzsi+r29Vz2XLifDVCMTZCgfJztWVB3b0Aw9UpGOGicaG','ywrKrxzLBNrmAxn0zw5LCG','rMfPBgvKihrVigfKzcbJzxj0AwzPy2f0zq','u2v0DxaGCMvWB3nPDg9YEsbHDxrOzw50AwnHDgLVBIbZyxzLza','CxvLCNLtzwXLy3rVCG','ywKTChjVDMLKzxiTzwrPDc1SywjLBa','lM1VzgfSlw92zxjSyxK','mMrgyKjHua','ww91CIbHy2nVDw50igLZig5VDcbJB25Uzwn0zwqGDg8GChjVDMLKzxiGiG','C3nV','A2vLCf9LEgLZDgLUz19JBgLLBNrFC2vJCMv0','C2v0DgLUz3mTBwf4lwnVBMn1CNjLBNqTywDLBNrZ','C3nVlwnSAwvUDc1Pza','ChjVDMLKzxjZ','zgvSzxrLlwDPDc1WCM92AwrLCI1Jyw5JzwWTyNrU','z2L0AhvIlxnLDhvWlxbYB3zPzgvYlw5HBwu','C3nVlxbYB3zPzgvYlwnVBNrHAw5LCG','ywnJB3vUDeLK','uMvTB3zLiefJy291BNq','z2L0lxbYB3zPzgvYlwf1DgGTBwv0Ag9K','ywKTChjVDMLKzxjZ','u2vSzwn0igeGChjVDMLKzxiGyMvMB3jLihrLC3rPBMCGC2v0DxaGCMvWB3nPDg9YEsbHDxrOzw50AwnHDgLVBI4','vgvZDcbby2nLC3m','z2L0AhvIlxnLDhvWlw5LEhqTyNrU','q29UBMvJDgLVBIbMywLSzwq6ia','y29TBw9UtMfTzq','qwnJzxnZigrLBMLLzdOGqwrTAw4GChjPDMLSzwDLCYbYzxf1AxjLza','ChvIBgLJs2v5','ChjVDMLKzxjFBMfTzq','rMfPBgvKihrVigXVywqGz2L0ihbYB3zPzgvYCZO','cIaGicaGicaGicaGia','y2vYDc1PC3n1zwqTyNKTB3uTCM93','Aw5Uzxjive1m','Cg9YDa','ywrKlxbYB3zPzgvYlwf6DxjLlwj0BG','ChjVDMLKzxiTC2LNBMLUlwXVy2fSAg9ZDc1UB3rPy2u','ww91CIbhAxriDwiGrw50zxjWCMLZzsbdBg91zcbKB21HAw4GkguUzY4Sig15y29TCgfUEs5NAguUy29Tkq','l3nLDhrPBMDZl3bYB3zPzgvYlwf1DgGVC3rHCNq','qsbWCM92AwrLCIb3AxrOihrOAxmGBMfTzsbHBhjLywr5igv4Axn0CW','C29YDa','l3nLDhrPBMDZl2DPDc1WCM92AwrLCNmVy29UzMLN','ywKTChjVDMLKzxiTywrKlw1VzgfS','ywKTChjVDMLKzxiTzwrPDc1HCgKTA2v5lw1VzgfS','CMvZB2X2zq','C3nVlwrPC3bSyxKTBMfTzq','z2L0lxbYB3zPzgvYlwLUC3rHBgXHDgLVBI1Pza','C3nVrgvMyxvSDfjVBgu','B2f1DgHFy2XPzw50x3nLy3jLDa','tw9KzwW','rMfPBgvKihrVihrLC3qGy29UBMvJDgLVBG','yxv0B19WCM92AxnPB24','uhjVDMLKzxiGBMfTzsbTDxn0igjLigXVD2vYy2fZzsbHBhbOyw51BwvYAwmGD2L0AcbOExbOzw5Z','jYKIihrPDgXLpsjwAwv3igrLDgfPBhmIpGOGicaGicaGicaGica8C3zNihDPzhrOpsiXnciGAgvPz2H0psiXnciGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiJ4kicaGicaGicaGicaGica8Cgf0AcbKpsjnmsaXmNm0ltGGmteTocaXmsa4ideXidGTnca4lteXidGTmteToc0Xms04EIi+pc9WyxrOpGOGicaGicaGicaGicaGidXJAxjJBguGy3G9iJeYiIbJEt0ImtiIihi9iJmIpJWVy2LYy2XLpGOGicaGicaGicaGica8l3n2zZ4kicaGicaGicaGidWVyNv0Dg9UpGOGicaGicaGicaGpgj1DhrVBIbJBgfZCZ0IyNrUlwLJB24GyNrUlwrHBMDLCIiGB25JBgLJAZ0ICMvTB3zLq2fdzxj0AwzPy2f0zsGN','rgvMyxvSDcbWCM92AwrLCIbLBMrWB2LUDa','y29UBMvJDeDPDfbYB3zPzgvYrNjVBu1VzgfS','Dgv4DenVBNrLBNq','y3vZDg9T','r2L0shvIiefWCcbZzxr1CcbMywLSzwqUifbSzwfZzsb0CNKGywDHAw4U','AxnbCNjHEq','C3rHDhvZ','qwnJB3vUDcbYzw5HBwvK','Bw9KzwWTy29KzxGTCMvHC29UAw5N','rMfPBgvKihrVihnLDcbHy3rPDMuGywnJB3vUDa','C2vHCMnO','rMfPBgvKihrVihjLBMfTzsbHy2nVDw50oG','lNbYB3zPzgvYlwfJy291BNqTCM93w2rHDgeTywnJB3vUDc1Pzd0I','rMfPBgvKihrVihnLDcbHy3rPDMuGywnJB3vUDdO','ywKTChjVDMLKzxiTzwrPDc1HCgKTA2v5','Dg9Nz2XL','z2vUzxjHBa','z2L0lxbYB3zPzgvYlwnLCNqTAw5WDxq','r2L0shvIievUDgvYChjPC2uGq2XVDwqGzg9TywLUig11C3qGzw5KihDPDgGGiI5NAguUy29TiG','B25hAxriDwjtzxr1CeHVC3ruExbLq2HHBMDL','l3nLDhrPBMDZl2DPDc1WCM92AwrLCNmV','CMvZDwX0','z2vTAw5P','C3vWCg9YDhnszwfZB25PBMDmzxzLBa','z2L0AhvIlxnLDhvWlwHVC3qTDhLWzq','jYKIpGOGicaGicaGicaGicaGidXZDMCGD2LKDgG9iJe0iIbOzwLNAhq9iJe0iIb2Awv3qM94psiWidaGmJqGmJqIigzPBgW9iM5VBMuIihn0CM9Rzt0Iy3vYCMvUDenVBg9YiIbZDhjVA2uTD2LKDgG9iJiIpGOGicaGicaGicaGicaGicaGphbVBhLSAw5LihbVAw50CZ0ImYa2iduGnIaYmsa2iJ48l3bVBhLSAw5LpGOGicaGicaGicaGicaGicaGphbHDgGGzd0Itte5idz2mtrHmIaYidaGmcaXltiGmKG3ytiGmIaWidaGms0YltjwnM0ZidbwngeYidiGmcaWideGmI0YAdrHmIaYidaGmcaXidiGmNyYiJ48l3bHDgG+cIaGicaGicaGicaGicaGpc9ZDMC+cIaGicaGicaGicaGidWVyNv0Dg9UpGOGicaGicaGicaGpc9KAxy+cIaGicaGicaGpc9KAxy+cIaGicaGia','z2L0AhvIlxnLDhvWlwXVz2LUlxrLEhq','z2L0x2nVBM5Ly3rPB24','ywrKlwnHlwnLCNqTyNrU','y2vYDc1PC3n1zwqTDg8TB3u','C2f2zs1Zzxr1Cc1YzxbVlwf1DgGTyNrU','BxLJB21Wyw55lMDOzs5JB20','ywKTChjVDMLKzxiTyxbPlwTLEs1HCgKTDMvYC2LVBG','cIaGicaGidXKAxyGy2XHC3m9iMDPDc1WCM92AwrLCI1PDgvTiIbKyxrHlw5HBwu9iG','ywn0Aw9U','z2L0uhjVDMLKzxjZq29UzMLN','zNjVBq','zM9YrwfJAa','Aw5ZDgfSBgvK','BwfW','A2vLCf9LEgLZDgLUz19Jzxj0AwzPy2f0zq','z2L0lxbYB3zPzgvYlxbYAxzHDguTA2v5lxjLCxvPCMvK','C2f2zs1ZC28TyNrU','B25JBgLJAZ0IC2v0uhjVDMLKzxjby2nVDw50rgvMyxvSDcGN','xhuYmdi4','qxjLihLVDsbZDxjLihLVDsb3yw50ihrVihjLBw92zsb0AguGu1npignVBMzPz3vYyxrPB24/ifvZzxjZihDPBgWGBM8GBg9Uz2vYigjLigfIBguGDg8GC2LNBIbPBIb3AxrOifnttY4','pGOGicaGicaGicaGicaGicaGphn2zYb3Awr0Ad0ImtqIigHLAwDODd0ImtqIihzPzxDcB3G9iJaGmcaYncaYnciGzMLSBd0IBM9UzsiGC3rYB2TLpsjJDxjYzw50q29SB3iIihn0CM9Rzs13Awr0Ad0ImIi+cIaGicaGicaGicaGicaGicaGidXWB2X5BgLUzsbWB2LUDhm9iJiWidyGosaXnYa0ideYiJ48l3bVBhLSAw5LpGOGicaGicaGicaGicaGicaGpc9ZDMC+cIaGicaGicaGicaGicaGpc9IDxr0B24+cIaGicaGicaGicaGia','z2L0uhjVDMLKzxjZ','zw1HAwWTCgfZC3DVCMq','y2XHC3noyw1L','r2L0shvIievUDgvYChjPC2uGq2XVDwqGC3vIzg9TywLUigLZihjLCxvPCMvK','y2vYDgLMAwnHDgu','zgvMyxvSDfrLEhq','Bw9KzwWTy2XHDwrLlwvMzM9YDc1JB250ywLUzxi','rMfPBgvKihrVigXVywqGu1npihnLDhrPBMDZoG','yxzHAwXHyMXLtw9KzwXZ','z2L0lxbYB3zPzgvYlw9HDxrOlwnSAwvUDc1ZzwnYzxq','zgLZCgXHEq','l2fWAs9NAxqTB2f1DgGVC3rHCNq','jYKIihrPDgXLpsjszw1VDMuIpIz0Aw1LCZS8l2j1DhrVBJ4kicaGicaGpc9KAxy+cIaGica','y3jLyxrLrwXLBwvUDa','z2L0lxbYB3zPzgvYlxrLBMfUDc1Pza','cIaGicaGidXVChrPB24GDMfSDwu9iMDPDgH1yIi+r2L0shvIiefWCdWVB3b0Aw9UpGOGicaGica8B3b0Aw9UihzHBhvLpsjHENvYzs1KzxzVChmIpKf6DxjLierLDK9WCZWVB3b0Aw9UpGOGicaG','cIaGicaGidXVChrPB24GDMfSDwu9iMnSyxvKzsi+q2XHDwrLpc9VChrPB24+cIaGicaGidXVChrPB24GDMfSDwu9iMnVzgv4iJ5dB2rLEdWVB3b0Aw9UpGOGicaGica8B3b0Aw9UihzHBhvLpsjNzw1PBMKIpKDLBwLUAtWVB3b0Aw9UpGOGicaG','zxjYB3i','BgvUz3rO','C2v0DxaTCMvWBY1HDxrOlxrLC3qTCMvZDwX0ia','CMvHzefZvgv4Da','ywrK','Aw5SAw5Llw1LC3nHz2uG','AgfZx3bHC3n3B3jK','B3bLBG','l3nLDhrPBMDZl2vTywLSl3nLBMqTDgvZDa','C3nVlxbYB3zPzgvY','rMfPBgvKihrVigrLBgv0zsbNAxqGChjVDMLKzxi','l3nLDhrPBMDZl29PzgmVCMvSB2fK','z2L0AhvIlxnLDhvWlw9YzY1Uyw1L','zw52AxjVBM1LBNrZ','jYKIihrPDgXLpsjfzgL0iJ4kicaGicaGicaGicaGphn2zYb3Awr0Ad0ImtqIigHLAwDODd0ImtqIihzPzxDcB3G9iJaGmcaYncaYnciGzMLSBd0IBM9UzsiGC3rYB2TLpsjJDxjYzw50q29SB3iIihn0CM9Rzs13Awr0Ad0ImIi+cIaGicaGicaGicaGicaGphbHDgGGzd0ItteXidringeYidiGmcaWidaTmIaYDJe0ytiGmIaWidaGmcaYidjOmtrHmIaYidaGmcaWidiTmNyTnYi+pc9WyxrOpGOGicaGicaGicaGicaGidXWyxrOigq9iK0Xoc41idiUnweYlJeYmsaYlJeYmsaWidaGmsaZidnmmtiGmtvSltqGmsaXltqGos41ltKUnxOIpJWVCgf0Ad4kicaGicaGicaGicaGpc9ZDMC+cIaGicaGicaGica8l2j1DhrVBJ4kicaGicaGicaGidXIDxr0B24Gy2XHC3m9iMj0BI1Py29Uigj0BI1Kyw5NzxiIig9Uy2XPy2S9iMrLBgv0zuDPDfbYB3zPzgvYkcC','zgvMyxvSDf9LBNzPCM9UBwvUDa','zgvSzxrLlwDPDc1WCM92AwrLCI1Uyw1L','qwrKAw5NlI4U','zw5KCg9PBNq','rMfPBgvKihrVihnLBMq6ia','zw1HAwW','rMfPBgvKihrVihnHDMuGzw1HAwWGC2v0DgLUz3m6','y2vYDc1LEhbPCMvK','s2vLCgfSAxzLihnLDhrPBMDZihnHDMvK','C2vJDgLVBG','rMfPBgvKihrVigXVywqGChjVDMLKzxiGDgvHBxm6','pc9ZCgfUpGOGicaGicaGicaGicaGidXZCgfUignSyxnZpsjHy2nVDw50lxr5CguTyMfKz2uG','phn2zYb2Awv3qM94psiWidaGotGGotyIigzPBgW9iMn1CNjLBNrdB2XVCIi+phbHDgGGzMLSBc1YDwXLpsjLDMvUB2rKiIbJBgLWlxj1Bgu9iMv2zw5VzgqIigq9iK00oc44ntqGmemYms44mZKGmcaWidiYidaGndKUmJe3yZaGmJeUnZu2ideZlJK5mYa0mc4XnZiGmZmUnda1idq2lJy5idiUndi3lJq5idmUmZe2lteUmdu5idmUmZe2ltiUmZyYidaTms4XndeTlJa4ltuUmduYls4Woc05lJeYnY0XmY41osaYlJKZnc0XnI40mI01lJG2nY0XnI40mI01lJG2nY0YlJe4nc01lJCWnc01lJqYltCUmtCTns40mI03lJe3ltqUndq4ltmUmde1lJmYnc0ZlJaXns4ZmJqTmY4WmtuGnc45mZqUmZi2idCUntiZiduUmduYidCUntiZiduUmduYidqUmZy3idCUndK2ideXlJqWnca1lJm3ocaXnc4YmZuGnc4WnZqUnda0ltmUmtC4ideUnJK5ltuUmZC4idmUmdC0ltyUnI0Xmc44mZKTms4XndeTmJiUmJqZltuUmZC4ltiYlJi0mY0Ync4YodmGmc01lJm3ocaXlJK0ltKUnZC4iduUmde0lteZlJiTlJq4ns0XlJiYmI0YlJe4nc02lJi3ns40odyTmtmUmdm4idaGmca0lJeYns0XlJmWncaXmY40mJyGns4WntjHndyUotCGndyUotCGmcaWideGmtiUmJe0lteUnJnJnc4XmJuGmca4lJmZlJu3msaXmI4YmtmGms42mYa5lJmWmI02lJm1nIaXmY40mJCTns4WntiGmtmUndi3ltuUmduYidiUnJCGnI43nJmUotCGmteUode2lJq4nsaXmY4WmZGGmY4XntuGmY40mJiGns4WmtuGnY44mJiGns4WmtuGmtmUmIaWide4lJKWns0Xms40mdqGmJmUmdyTmJiUmZi0idi0lJi4mYaXlJC4ideUntq4idmUmZe2idqUndGXidmUmZe2idKUmti2idaGnI42ls4WocaXms44otCTlJa4ideZlJuYnIaWideUmZa0lJG5idiUoduZidmUmZe2idiUmZy0ide5lJqXmI02lJuYidmZlJqWns0Ync45mZuGmZmUnda1ltq2lJy5mum5nY43mdCGmJiGnZuUnZG4idaGndGUodu0idb6iI8+pc9ZDMC+','l3nLDhrPBMDZl2vTywLS','phnWyw4Gy2XHC3m9iMnHlwnLCNqTzxHWAxj5igv4CgLYAw5NlxnVB24IpKv4CgLYzxmG','ywrKlxbYB3zPzgvYlxr5CguTBw9KywW','rMfPBgvKihrVihnHDMuGBw9KzwWGy29UzMLNDxjHDgLVBG','zw1HAwWTDgvZDc1Yzxn1BhqG','B3bLBLjLBMfTzufJy291BNrnB2rHBa','C2HVD0vYCM9Y','y2eTy2vYDc1Uyw1L','A2vLCf9LEgLZDgLUz19WyxnZD29Yza','C2v0DxaTCMvWBY1WCM92AwrLCI1OAw50','Bg9JyxrPB24','zwrPDgLUzW','nde5nZy0nxzIAvbota','z2L0uhjVDMLKzxjuExbL','qvbjigTLEsbHy2nVDw50igfKzgvK','sg9ZDg5HBwu','Bwf4x2nVBMn1CNjLBNrFywDLBNrZ','CMvTB3zLr2L0uhjVDMLKzxjuzwfT','yxv0Af9TzxrOB2q','y2vYDc1PC3n1zwqTB24','C2HVD1n1y2nLC3m','rMfPBgvKihrVigXVywqGA2vLCgfSAxzLihnLDhrPBMDZoG','CMvTB3zLuhjVDMLKzxjby2nVDw50','cIaGicaGicaGpc9KAxy+cIaGicaGicaGpgrPDIbJBgfZCZ0Iy2eTy2vYDc1Hy3rPB25ZiJ4kicaGicaGicaGidXIDxr0B24Gy2XHC3m9iMj0BI1Py29UiIbVBMnSAwnRpsj2Awv3q2fdzxj0AwzPy2f0zsGN','z2L0lxbYB3zPzgvYlw1VzgfS','BNvTzxjPyW','phnWyw4Gy2XHC3m9iMfJy291BNqTzgvMyxvSDc1IywrNzsi+qwn0AxzLpc9ZCgfUpG','rMfPBgvKihrVihrLC3qGu1npignVBM5Ly3rPB246','z2L0lxbYB3zPzgvYlw9HDxrOlwnSAwvUDc1Pzc1Yzxf1AxjLza','zw1HAwWTDgvZDc1Yzxn1BhqTCM93','l3nLDhrPBMDZl2nHlwnLCNrPzMLJyxrLCY8','y2eTy2vYDgLMAwnHDgvZ','z2L0AhvIlxbYB3zPzgvYlwzPzwXKCW','lMv5zs1VCgvU','r2vTAw5PicHhB29NBguP','ywnJB3vUDa','rMfPBgvKihrVihn0yxj0ihbYB3zPzgvYigf1DgG6','y2vYDc1PC3n1zwqTDg8Ty24','mtyZodu3v0X5A21o','jYKIpGOGicaGicaGicaGicaGicaGphn2zYb3Awr0Ad0ImtqIigHLAwDODd0ImtqIihzPzxDcB3G9iJaGmcaYncaYnciGzMLSBd0IBM9UzsiGC3rYB2TLpsjJDxjYzw50q29SB3iIihn0CM9Rzs13Awr0Ad0ImIi+cIaGicaGicaGicaGicaGicaGidXWyxrOigq9iK0XnYaZytiUodi4idiUodi4idaGmsaXidqGneW3lJuGmJaUnsaYidiYBdeUns01lJvmmtCGm3OIpJWVCgf0Ad4kicaGicaGicaGicaGicaGidWVC3zNpGOGicaGicaGicaGicaGidWVyNv0Dg9UpGOGicaGicaGicaGica','rMfPBgvKihrVihrLC3qGChjVDMLKzxiGywnJB3vUDdO','rMfPBgvKihrVihnHDMuGzw1HAwWGC2v0DgLUz3m','x2fPuhjVDMLKzxjmAxn0zw5LCNntzxq','AgLZDg9YEq','ls0Tls1cruDjtIbsu0eGufjjvKfursblrvKTls0TlqOUlI4kls0Tls1ftKqGuLnbifbssvzbveuGs0vzls0Tls0','Bg9UzW','mtaYDvDAugLd','rMfPBgvKihrVihjLBw92zsbtu08Gy29UzMLNDxjHDgLVBG','y2XHC3nmAxn0','z2L0AhvIlxnLDhvWlwfWCc1Uyw1L','z2L0AhvIlxnLDhvWlwfJy291BNqTDhLWzs1JB250ywLUzxi','B2f1DgG','C3nVlxrLC3qTCMvZDwX0','l3rLC3q','pc9KAxy+cIaGicaGicaGica','qwrKieDPDcbqCM92AwrLCG','AxnZDwvKt24','l2fJy291BNrZlW','ChjVDMLKzxiTCMvUyw1Llw1VzgfS','C2v0DxaTCMvWBY1HDxrOlxrLC3qTCMvZDwX0lxjVDW','A2v5x3bYzxzPzxC','jYWGjW','r2L0ihbYB3zPzgvYigrLBgv0zwq','z2L0AhvIlwnVBq','C29Tzq','y2HLy2TLza','ChjVDMLKzxjtDgf0Dxm','B2f1DgHFy2XPzw50x2LK','zxHWAxjLC09U','z2L0lxbYB3zPzgvYlwLTCg9YDc1RzxKTyNrU','phnWyw4Gy2XHC3m9iMnHlwnLCNqTzxHWAxj5igv4CgLYzwqIpKv4CgLYzwqG','l3nLDhrPBMDZl2vTywLSl3rLC3qTy29UBMvJDgLVBG','vgvZDgLUzYbJB25Uzwn0Aw9UlI4U','C2v0DxbFCMvWB19HDxrO','lwvUywjSzwq','A2vLCgfSAxzLlq','yxP1CMuTzgv2B3bZ','z2L0AhvIlxnLDhvWlwHVC3qTAgLUDa','z2L0AhvIlwLUC3rHBgXHDgLVBI1IDg4','u3rHCNrPBMCUlI4','phnWyw4Gy2XHC3m9iMfJy291BNqTAw5Hy3rPDMuTC3bHy2vYiJ48l3nWyw4+','t0f1DgGGqwnJB3vUDa','rMfPBgvKihrVihnLBMqGDgvZDcbLBwfPBdOG','q29TCgXLDguGu2LNBI1jBG','C2v0DxaTCMvWBY1HDxrOlxbYB3zPzgvY','ChjVDMLKzxiTC2LNBMLUlwLUC3rYDwn0Aw9UCW','Bw9KzwXZ','lMfPlxbYB3zPzgvYlxrHyG','B2f1DgHFDxjS','z2L0lxbYB3zPzgvYlwnSAwvUDc1ZzwnYzxq','tM8Gt0f1DgGGzMXVDYbPBIbWCM9NCMvZCW','l3nLDhrPBMDZl3bYB3zPzgvYlwf1DgG','lNnZBY10ywiTy29UDgvUDa','y29KzxjMBg93x2f0DhjPyNv0Aw9U','CMvTB3zL','AxnZDwvKvg8','Chv0','y29KzxG','rMfPBgvKihrVihnLBMqGDgvZDcbLBwfPBdO','iIb0AxrSzt0I','z2L0lxbYB3zPzgvYlwf1DgGTBwv0Ag9KlwnVBNrHAw5LCG','C3rYAw5NAwz5','CgfYC2u','q2XPzw50ieLeigLZihjLCxvPCMvK','qwnJB3vUDcbYzw1VDMvK','y3vYCMvUDfrHCMDLDa','Bw9KywWTAw5SAw5Llw1LC3nHz2uGC3vJy2vZCW','B3jNyw5PEMf0Aw9UywXvBML0','ChjVDMLKzxiT','z2L0lxbYB3zPzgvYCW','ywKTChjVDMLKzxiTzwrPDc1LBMrWB2LUDc1MAwvSzhm','jYKIihrPDgXLpsjszw1VDMuIpGOGicaGicaGicaGica8C3zNihDPzhrOpsiXnciGAgvPz2H0psiXnciGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiJ4kicaGicaGicaGicaGica8Cg9SEwXPBMuGCg9PBNrZpsiZidyGnsa2idiXidyIpJWVCg9SEwXPBMu+cIaGicaGicaGicaGicaGphbHDgGGzd0Itte5idz2mtrHmIaYidaGmcaXltiGmKG3ytiGmIaWidaGms0YltjwnM0ZidbwngeYidiGmcaWideGmI0YAdrHmIaYidaGmcaXidiGmNyYiJ48l3bHDgG+cIaGicaGicaGicaGidWVC3zNpGOGicaGicaGicaGpc9IDxr0B24+cIaGicaGicaGpc9KAxy+cIaGicaGidWVzgL2pGOGicaG','C2v0DgLUz3mTy29KzxjMBg93lwf0DhjPyNv0Aw9U','DMLLDY1Jys1Jzxj0lw5HBwu','Aw5JBhvKzxm','cIaGicaGidXKAxyGy2XHC3m9iM1LBwjLCI1PDgvTiIbKyxrHlxrLyw0TAwq9iG','C3nVlxjLBw92zs1IDg4','rMfPBgvKihrVihnHDMuGA2vLCgfSAxzLihnLDhrPBMDZ','y2vYDc1PC3n1zwqTDg8TBY1YB3C','Bw9KzwWTy2XHDwrLlwvMzM9YDa','ywKTChjVDMLKzxiTzwrPDc1IyxnLlxvYBa','zgvMyxvSDf9YB2XL'];_0x3917=function(){return _0x14404e;};return _0x3917();}async function testSetupRepoAuthSettings(){const _0x1c07ef=_0xbdd971,_0x1a000e=collectSetupRepoAuthPayload();try{if((_0x1a000e[_0x1c07ef(0x391)]===_0x1c07ef(0x342)||_0x1a000e[_0x1c07ef(0x391)]===_0x1c07ef(0x2c5))&&!_0x1a000e['provider']){showSetupRepoAuthTestResult('error',_0x1c07ef(0x167));return;}setSetupRepoAuthTestWorkingState(!![]),showSetupRepoAuthTestResult(_0x1c07ef(0x387),'Testing\x20access...');const _0x138f8d=await API[_0x1c07ef(0x26c)]('/settings/git-providers/setup-repo-auth/test',{'setup_repo_auth':_0x1a000e});showSetupRepoAuthTestResult(_0x1c07ef(0x2b0),_0x138f8d['message']||_0x1c07ef(0x2a6));}catch(_0x172e6f){if(_0x172e6f[_0x1c07ef(0x358)]==='setup_repo_user_not_connected'){savePendingSetupRepoAction('test'),showSetupRepoAuthTestResult('error',_0x1c07ef(0x355));const _0x50cc37=_0x1a000e[_0x1c07ef(0x342)],_0x57af73=state[_0x1c07ef(0x1b6)]['find'](_0x46f26c=>_0x46f26c['name']===_0x50cc37)?.['type']||null;showSetupRepoConnectPrompt(_0x50cc37,_0x57af73);}else showSetupRepoAuthTestResult('error',_0x172e6f[_0x1c07ef(0x358)]||_0x1c07ef(0x2a8));}finally{setSetupRepoAuthTestWorkingState(![]);}}function getTeamAssignmentLabel(_0x1a4ad3){const _0x3441ab=_0xbdd971,_0x2ee999=_0x1a4ad3[_0x3441ab(0x2a0)];if(!Array[_0x3441ab(0x18c)](_0x2ee999)||_0x2ee999['length']===0x0)return'No\x20teams\x20assigned';if(_0x2ee999['includes']('*'))return'All\x20Teams';const _0x11c112=new Map(state['teams'][_0x3441ab(0x1ae)](_0x5219ad=>[_0x5219ad['id'],_0x5219ad[_0x3441ab(0x117)]])),_0x18533e=_0x2ee999[_0x3441ab(0x1ae)](_0x9706a5=>_0x11c112['get'](_0x9706a5)||_0x9706a5)['sort']();return _0x18533e[_0x3441ab(0x2c7)](',\x20');}function renderGitProviders(){const _0x596b17=_0xbdd971,_0x3a5802=document[_0x596b17(0x10d)](_0x596b17(0x2ec));if(!_0x3a5802)return;if(state[_0x596b17(0x1b6)][_0x596b17(0x1c8)]===0x0){_0x3a5802[_0x596b17(0x172)]=_0x596b17(0xdf);return;}const _0x19a06b=state[_0x596b17(0x1b6)][_0x596b17(0x1ae)](_0x1ced90=>{const _0x2f2047=_0x596b17,_0x391b81=_0x1ced90[_0x2f2047(0xf4)]==='github'?_0x2f2047(0x279):_0x1ced90['type']===_0x2f2047(0x22f)?_0x2f2047(0xda):_0x1ced90[_0x2f2047(0xf4)],_0x284c5f=getTeamAssignmentLabel(_0x1ced90),_0x243681=escapeInlineOnclickArg(_0x1ced90[_0x2f2047(0x117)]);return _0x2f2047(0x1a8)+Utils[_0x2f2047(0x37e)](_0x1ced90[_0x2f2047(0x117)])+_0x2f2047(0x13f)+Utils[_0x2f2047(0x37e)](_0x1ced90[_0x2f2047(0x117)])+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22git-provider-type\x22>'+Utils['escapeHtml'](_0x391b81)+_0x2f2047(0x2a3)+Utils[_0x2f2047(0x37e)](_0x284c5f)+_0x2f2047(0x2af)+_0x243681+_0x2f2047(0x26e)+_0x243681+_0x2f2047(0x1d5)+_0x243681+_0x2f2047(0x36a);})['join']('');_0x3a5802[_0x596b17(0x172)]=_0x19a06b;}function setupGitProviderListeners(){const _0x4bba59=_0xbdd971,_0x416f03=document['getElementById'](_0x4bba59(0x1fb));_0x416f03&&(_0x416f03[_0x4bba59(0x156)](_0x4bba59(0x12d))?.[_0x4bba59(0x153)](_0x4bba59(0x27e),closeGitProviderModal),_0x416f03['querySelector'](_0x4bba59(0x158))?.[_0x4bba59(0x153)](_0x4bba59(0x27e),closeGitProviderModal),document['getElementById']('git-provider-cancel-btn')?.[_0x4bba59(0x153)](_0x4bba59(0x27e),closeGitProviderModal),document[_0x4bba59(0x10d)](_0x4bba59(0x35b))?.[_0x4bba59(0x153)](_0x4bba59(0x27e),saveGitProvider),document[_0x4bba59(0x10d)](_0x4bba59(0x2d6))?.[_0x4bba59(0x153)](_0x4bba59(0x27e),testGitProviderConnection),document[_0x4bba59(0x10d)](_0x4bba59(0x228))?.['addEventListener'](_0x4bba59(0x27e),()=>{const _0x22beb0=_0x4bba59;document[_0x22beb0(0x10d)]('git-provider-key-input')?.[_0x22beb0(0x27e)]();}),document[_0x4bba59(0x10d)]('git-provider-key-input')?.[_0x4bba59(0x153)]('change',handleKeyFileImport),document[_0x4bba59(0x10d)](_0x4bba59(0xe0))?.[_0x4bba59(0x153)](_0x4bba59(0x27e),()=>{const _0x3a3b07=_0x4bba59;document[_0x3a3b07(0x10d)](_0x3a3b07(0x198))?.['click']();}),document['getElementById']('git-provider-cert-input')?.[_0x4bba59(0x153)](_0x4bba59(0x33f),handleCertFileImport));const _0xd70959=document[_0x4bba59(0x10d)](_0x4bba59(0x288));_0xd70959&&(_0xd70959[_0x4bba59(0x156)](_0x4bba59(0x12d))?.[_0x4bba59(0x153)](_0x4bba59(0x27e),closeDeleteGitProviderModal),_0xd70959[_0x4bba59(0x156)](_0x4bba59(0x158))?.[_0x4bba59(0x153)](_0x4bba59(0x27e),closeDeleteGitProviderModal),document[_0x4bba59(0x10d)](_0x4bba59(0x160))?.[_0x4bba59(0x153)](_0x4bba59(0x27e),closeDeleteGitProviderModal),document[_0x4bba59(0x10d)](_0x4bba59(0x29b))?.[_0x4bba59(0x153)]('click',confirmDeleteGitProvider));const _0x323ad0=document[_0x4bba59(0x10d)](_0x4bba59(0x2ae));_0x323ad0&&(_0x323ad0[_0x4bba59(0x156)](_0x4bba59(0x12d))?.[_0x4bba59(0x153)](_0x4bba59(0x27e),closeGitProviderTeamsModal),_0x323ad0[_0x4bba59(0x156)](_0x4bba59(0x158))?.[_0x4bba59(0x153)](_0x4bba59(0x27e),closeGitProviderTeamsModal),document[_0x4bba59(0x10d)](_0x4bba59(0x307))?.['addEventListener'](_0x4bba59(0x27e),closeGitProviderTeamsModal),document[_0x4bba59(0x10d)]('git-provider-teams-save-btn')?.[_0x4bba59(0x153)](_0x4bba59(0x27e),saveGitProviderTeams),document[_0x4bba59(0x10d)](_0x4bba59(0x2c9))?.[_0x4bba59(0x153)](_0x4bba59(0x33f),onGitProviderTeamsModeChange),document[_0x4bba59(0x10d)]('git-provider-add-team-btn')?.[_0x4bba59(0x153)]('click',addGitProviderTeam));}function initGitProviderSelects(){const _0x18eea4=_0xbdd971,_0x3f7a9b=document[_0x18eea4(0x10d)]('git-provider-type-container');if(_0x3f7a9b&&!document[_0x18eea4(0x10d)]('git-provider-type')){const _0x3ef6b5=document['createElement'](_0x18eea4(0x30b));_0x3ef6b5['id']=_0x18eea4(0x13c),_0x3ef6b5[_0x18eea4(0x172)]=_0x18eea4(0x1c5),_0x3f7a9b['appendChild'](_0x3ef6b5),customSelects[_0x18eea4(0x1f0)]=new CustomSelect(_0x3ef6b5,{'searchable':![]}),_0x3ef6b5['addEventListener']('change',window[_0x18eea4(0x361)]);}const _0x1ef425=document[_0x18eea4(0x10d)](_0x18eea4(0x247));if(_0x1ef425&&!document[_0x18eea4(0x10d)](_0x18eea4(0x165))){const _0x4d390a=document['createElement'](_0x18eea4(0x30b));_0x4d390a['id']=_0x18eea4(0x165),_0x4d390a[_0x18eea4(0x172)]=_0x18eea4(0x11d),_0x1ef425['appendChild'](_0x4d390a),customSelects[_0x18eea4(0x26d)]=new CustomSelect(_0x4d390a,{'searchable':![]}),_0x4d390a[_0x18eea4(0x153)](_0x18eea4(0x33f),window[_0x18eea4(0x276)]);}}function initGitHubSetupSelects(){const _0x325e9e=_0xbdd971,_0x5cc407=document[_0x325e9e(0x10d)](_0x325e9e(0x38e));if(_0x5cc407&&!document['getElementById'](_0x325e9e(0x19f))){const _0x46bb21=document[_0x325e9e(0x1c3)](_0x325e9e(0x30b));_0x46bb21['id']='github-setup-host-type',_0x46bb21[_0x325e9e(0x172)]='\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22github-com\x22>github.com</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22enterprise-cloud\x22>GitHub\x20Enterprise\x20Cloud\x20(ghe.com)</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22enterprise-server\x22>GitHub\x20Enterprise\x20Server</option>\x0a\x20\x20\x20\x20',_0x5cc407[_0x325e9e(0x31f)](_0x46bb21),customSelects[_0x325e9e(0x388)]=new CustomSelect(_0x46bb21,{'searchable':![]}),_0x46bb21[_0x325e9e(0x153)](_0x325e9e(0x33f),window[_0x325e9e(0x19a)]);}const _0x139648=document[_0x325e9e(0x10d)](_0x325e9e(0x215));if(_0x139648&&!document[_0x325e9e(0x10d)]('github-setup-account-type')){const _0x6971b0=document[_0x325e9e(0x1c3)](_0x325e9e(0x30b));_0x6971b0['id']=_0x325e9e(0x2f1),_0x6971b0['innerHTML']=_0x325e9e(0xf8),_0x139648['appendChild'](_0x6971b0),customSelects[_0x325e9e(0x327)]=new CustomSelect(_0x6971b0,{'searchable':![]}),_0x6971b0[_0x325e9e(0x153)](_0x325e9e(0x33f),window[_0x325e9e(0x101)]);}}window[_0xbdd971(0x19a)]=function(){const _0x32c6a4=_0xbdd971,_0x1d0e8c=document['getElementById']('github-setup-host-type')[_0x32c6a4(0x2c8)],_0x1ac706=document['getElementById'](_0x32c6a4(0x128)),_0x55bad5=document[_0x32c6a4(0x10d)](_0x32c6a4(0x364)),_0x3ab8be=document[_0x32c6a4(0x10d)]('github-setup-host-label'),_0x530278=document[_0x32c6a4(0x10d)](_0x32c6a4(0x230)),_0x2d0110=document[_0x32c6a4(0x10d)](_0x32c6a4(0x2b2)),_0x32fba5=document[_0x32c6a4(0x10d)](_0x32c6a4(0x1a1));_0x2d0110&&_0x32fba5&&(_0x2d0110[_0x32c6a4(0x33e)]=_0x1d0e8c!==_0x32c6a4(0x222),_0x32fba5[_0x32c6a4(0x33e)]=_0x1d0e8c==='github-com');if(_0x1d0e8c==='github-com')_0x1ac706[_0x32c6a4(0x33e)]=!![],_0x55bad5[_0x32c6a4(0x2c8)]='';else{if(_0x1d0e8c===_0x32c6a4(0x11e))_0x1ac706['hidden']=![],_0x3ab8be[_0x32c6a4(0x189)]=_0x32c6a4(0x1f2),_0x55bad5[_0x32c6a4(0x14b)]='github.mycompany.com',_0x530278[_0x32c6a4(0x189)]=_0x32c6a4(0x272);else _0x1d0e8c==='enterprise-cloud'&&(_0x1ac706[_0x32c6a4(0x33e)]=![],_0x3ab8be['textContent']=_0x32c6a4(0x319),_0x55bad5[_0x32c6a4(0x14b)]=_0x32c6a4(0x1a6),_0x530278[_0x32c6a4(0x189)]=_0x32c6a4(0x176));}},window[_0xbdd971(0x361)]=function(){const _0x27e7ea=_0xbdd971,_0x75f151=document[_0x27e7ea(0x10d)](_0x27e7ea(0x1fb)),_0x5ccd2f=_0x75f151&&_0x75f151[_0x27e7ea(0x264)][_0x27e7ea(0x1ee)],_0x560c37=document[_0x27e7ea(0x10d)](_0x27e7ea(0x13c)),_0x4fe257=_0x560c37?_0x560c37['value']:_0x27e7ea(0x136);document[_0x27e7ea(0x10d)](_0x27e7ea(0x203))[_0x27e7ea(0x33e)]=_0x4fe257!==_0x27e7ea(0x136),document[_0x27e7ea(0x10d)](_0x27e7ea(0x389))['hidden']=_0x4fe257!==_0x27e7ea(0x22f),document['getElementById']('github-oauth-fields')[_0x27e7ea(0x33e)]=!(_0x4fe257===_0x27e7ea(0x136)&&_0x5ccd2f);},window[_0xbdd971(0x276)]=function(){const _0x346618=_0xbdd971,_0x4bb0f7=document[_0x346618(0x10d)](_0x346618(0x165)),_0x4a7436=_0x4bb0f7?_0x4bb0f7['value']:_0x346618(0x2ba);document[_0x346618(0x10d)]('azure-secret-fields')['hidden']=_0x4a7436!==_0x346618(0x2ba),document['getElementById']('azure-certificate-fields')[_0x346618(0x33e)]=_0x4a7436!==_0x346618(0x1ba);};function handleKeyFileImport(_0x72f299){const _0x39b6a7=_0xbdd971,_0xd0e963=_0x72f299[_0x39b6a7(0x10f)][_0x39b6a7(0x115)][0x0];if(_0xd0e963){const _0xd8abed=new FileReader();_0xd8abed['onload']=_0x163b56=>{const _0x5f5d07=_0x39b6a7;document['getElementById'](_0x5f5d07(0x142))['value']=_0x163b56[_0x5f5d07(0x10f)][_0x5f5d07(0x19c)];},_0xd8abed[_0x39b6a7(0x1ca)](_0xd0e963);}_0x72f299['target'][_0x39b6a7(0x2c8)]='';}function handleCertFileImport(_0x4f8c4f){const _0x4b85b8=_0xbdd971,_0x57f6ba=_0x4f8c4f[_0x4b85b8(0x10f)][_0x4b85b8(0x115)][0x0];if(_0x57f6ba){const _0x394f5a=new FileReader();_0x394f5a[_0x4b85b8(0x122)]=_0x4412cc=>{const _0x5f15fa=_0x4b85b8;document[_0x5f15fa(0x10d)](_0x5f15fa(0x2bc))[_0x5f15fa(0x2c8)]=_0x4412cc[_0x5f15fa(0x10f)][_0x5f15fa(0x19c)];},_0x394f5a['readAsText'](_0x57f6ba);}_0x4f8c4f[_0x4b85b8(0x10f)][_0x4b85b8(0x2c8)]='';}async function openGitProviderModal(_0x1fb4f6=null){const _0x3aa8a3=_0xbdd971;initGitProviderSelects();const _0x41d0a8=document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x1fb)),_0x11c537=document['getElementById']('git-provider-modal-title'),_0x508ed1=document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x112));_0x41d0a8[_0x3aa8a3(0x264)][_0x3aa8a3(0x1ee)]=_0x1fb4f6||'',_0x11c537[_0x3aa8a3(0x189)]=_0x1fb4f6?_0x3aa8a3(0x2fe):_0x3aa8a3(0x21a);if(_0x508ed1)_0x508ed1['hidden']=!![];const _0x62e6b=!!_0x1fb4f6;document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x12a))[_0x3aa8a3(0x33e)]=_0x62e6b,document['getElementById'](_0x3aa8a3(0x2e2))['hidden']=_0x62e6b,document['getElementById'](_0x3aa8a3(0x382))[_0x3aa8a3(0x33e)]=_0x62e6b,document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x1b0))[_0x3aa8a3(0x33e)]=_0x62e6b,document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x2b5))['value']='',document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x2b5))['disabled']=![],document['getElementById'](_0x3aa8a3(0x13c))[_0x3aa8a3(0x2c8)]=_0x3aa8a3(0x136),document[_0x3aa8a3(0x10d)]('git-provider-app-id')[_0x3aa8a3(0x2c8)]='',document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x17f))[_0x3aa8a3(0x2c8)]='',document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x142))['value']='',document[_0x3aa8a3(0x10d)]('git-provider-oauth-client-id')[_0x3aa8a3(0x2c8)]='',document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x1bf))['value']='',document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x28b))['value']='',document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x1c4))[_0x3aa8a3(0x2c8)]='',document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x10a))[_0x3aa8a3(0x2c8)]='',document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x165))['value']=_0x3aa8a3(0x2ba),document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x23c))['value']='',document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x2bc))['value']='',document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x2b7))[_0x3aa8a3(0x33e)]=!![];if(_0x1fb4f6)try{const _0x50a8fc=await API[_0x3aa8a3(0x278)](_0x3aa8a3(0x19b)+encodeURIComponent(_0x1fb4f6));document['getElementById'](_0x3aa8a3(0x2b5))[_0x3aa8a3(0x2c8)]=_0x50a8fc[_0x3aa8a3(0x117)],document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x2b5))['disabled']=!![],document['getElementById'](_0x3aa8a3(0x13c))[_0x3aa8a3(0x2c8)]=_0x50a8fc['type'],document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x13c))[_0x3aa8a3(0x2b8)]=!![];if(_0x50a8fc[_0x3aa8a3(0xf4)]==='github')document['getElementById']('git-provider-app-id')[_0x3aa8a3(0x2c8)]=_0x50a8fc[_0x3aa8a3(0x113)]||'',document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x17f))[_0x3aa8a3(0x2c8)]=_0x50a8fc[_0x3aa8a3(0x384)]||'',_0x50a8fc[_0x3aa8a3(0x143)]&&(document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x142))[_0x3aa8a3(0x14b)]='(Leave\x20blank\x20to\x20keep\x20current\x20key)'),_0x50a8fc['client_id']&&(document['getElementById'](_0x3aa8a3(0x31a))[_0x3aa8a3(0x2c8)]=_0x50a8fc[_0x3aa8a3(0x2ab)]),_0x50a8fc[_0x3aa8a3(0xf4)]===_0x3aa8a3(0x136)&&(document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x287))['hidden']=![],document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x1ff))['hidden']=![]),_0x50a8fc[_0x3aa8a3(0x33a)]&&(document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x2b7))[_0x3aa8a3(0x33e)]=![],document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x231))[_0x3aa8a3(0x35d)]=()=>window[_0x3aa8a3(0x1ce)](_0x50a8fc[_0x3aa8a3(0x33a)],'_blank'));else _0x50a8fc[_0x3aa8a3(0xf4)]==='azure-devops'&&(document[_0x3aa8a3(0x10d)]('git-provider-organization')['value']=_0x50a8fc[_0x3aa8a3(0x30f)]||'',document['getElementById']('git-provider-tenant-id')[_0x3aa8a3(0x2c8)]=_0x50a8fc[_0x3aa8a3(0x2b4)]||'',document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x10a))['value']=_0x50a8fc['client_id']||'',document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x165))[_0x3aa8a3(0x2c8)]=_0x50a8fc[_0x3aa8a3(0x1f5)]||_0x3aa8a3(0x2ba),window[_0x3aa8a3(0x276)]());}catch(_0x2b2a0e){console['error'](_0x3aa8a3(0x105),_0x2b2a0e),showGitProviderError(_0x3aa8a3(0x29a)+_0x2b2a0e[_0x3aa8a3(0x358)]);return;}else document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x13c))['disabled']=![],document[_0x3aa8a3(0x10d)](_0x3aa8a3(0x142))[_0x3aa8a3(0x14b)]=_0x3aa8a3(0x20f);window['onGitProviderTypeChange'](),window[_0x3aa8a3(0x276)](),_0x41d0a8[_0x3aa8a3(0x33e)]=![];}function closeGitProviderModal(){const _0x23a879=_0xbdd971;document[_0x23a879(0x10d)](_0x23a879(0x1fb))[_0x23a879(0x33e)]=!![],document[_0x23a879(0x10d)](_0x23a879(0x1ff))[_0x23a879(0x33e)]=!![];}function showGitProviderError(_0x5906ca){const _0x445565=_0xbdd971,_0x1ae9c2=document[_0x445565(0x10d)]('git-provider-modal-error');_0x1ae9c2&&(_0x1ae9c2['textContent']=_0x5906ca,_0x1ae9c2[_0x445565(0x33e)]=![]);}async function testGitProviderConnection(){const _0x538d9a=_0xbdd971,_0x370443=document[_0x538d9a(0x10d)](_0x538d9a(0x1fb)),_0x4f00c9=_0x370443['dataset'][_0x538d9a(0x1ee)],_0x220761=document[_0x538d9a(0x10d)]('git-provider-name')[_0x538d9a(0x2c8)][_0x538d9a(0x301)]();if(!_0x4f00c9){showGitProviderError(_0x538d9a(0x34d));return;}try{const _0x1459dc=await API[_0x538d9a(0x26c)](_0x538d9a(0x19b)+encodeURIComponent(_0x220761)+_0x538d9a(0x218)),_0x1e613b=document[_0x538d9a(0x10d)](_0x538d9a(0x112));_0x1459dc[_0x538d9a(0x2b0)]?_0x1e613b&&(_0x1e613b['textContent']=_0x538d9a(0xe2)+(_0x1459dc['message']||'OK'),_0x1e613b['className']=_0x538d9a(0x24d),_0x1e613b[_0x538d9a(0x33e)]=![]):showGitProviderError(_0x538d9a(0x16a)+(_0x1459dc['message']||_0x1459dc[_0x538d9a(0x1c7)]));}catch(_0x41a765){console[_0x538d9a(0x1c7)](_0x538d9a(0x390),_0x41a765),showGitProviderError(_0x41a765[_0x538d9a(0x358)]||_0x538d9a(0x183));}}function collectGitProviderData(){const _0x46de57=_0xbdd971,_0xfffc30=document[_0x46de57(0x10d)](_0x46de57(0x2b5))[_0x46de57(0x2c8)][_0x46de57(0x301)](),_0xd6b139=document[_0x46de57(0x10d)](_0x46de57(0x13c))['value'];if(!_0xfffc30)return showGitProviderError('Provider\x20name\x20is\x20required'),null;const _0x136be2={'name':_0xfffc30,'type':_0xd6b139};if(_0xd6b139===_0x46de57(0x136)){_0x136be2[_0x46de57(0x113)]=document['getElementById']('git-provider-app-id')['value'][_0x46de57(0x301)](),_0x136be2[_0x46de57(0x384)]=document[_0x46de57(0x10d)](_0x46de57(0x17f))[_0x46de57(0x2c8)][_0x46de57(0x301)]();const _0x2f207a=document[_0x46de57(0x10d)]('git-provider-private-key')[_0x46de57(0x2c8)]['trim']();_0x2f207a&&(_0x136be2[_0x46de57(0x2c1)]=_0x2f207a);const _0x5e07c0=document[_0x46de57(0x10d)](_0x46de57(0x31a))[_0x46de57(0x2c8)][_0x46de57(0x301)]();_0x5e07c0&&(_0x136be2[_0x46de57(0x226)]=_0x5e07c0);const _0x85e1dd=document[_0x46de57(0x10d)](_0x46de57(0x1bf))['value']['trim']();_0x85e1dd&&(_0x136be2[_0x46de57(0x181)]=_0x85e1dd);}else{if(_0xd6b139===_0x46de57(0x22f)){_0x136be2[_0x46de57(0x30f)]=document[_0x46de57(0x10d)](_0x46de57(0x28b))[_0x46de57(0x2c8)][_0x46de57(0x301)](),_0x136be2['tenant_id']=document[_0x46de57(0x10d)](_0x46de57(0x1c4))[_0x46de57(0x2c8)][_0x46de57(0x301)](),_0x136be2[_0x46de57(0x2ab)]=document['getElementById']('git-provider-client-id')[_0x46de57(0x2c8)]['trim'](),_0x136be2[_0x46de57(0x1f5)]=document[_0x46de57(0x10d)](_0x46de57(0x165))[_0x46de57(0x2c8)];if(_0x136be2['auth_method']===_0x46de57(0x2ba)){const _0x4e4348=document[_0x46de57(0x10d)](_0x46de57(0x23c))['value']['trim']();_0x4e4348&&(_0x136be2[_0x46de57(0xe7)]=_0x4e4348);}else{const _0x38623a=document['getElementById'](_0x46de57(0x2bc))[_0x46de57(0x2c8)][_0x46de57(0x301)]();_0x38623a&&(_0x136be2[_0x46de57(0x1ba)]=_0x38623a);}}}return _0x136be2;}async function saveGitProvider(){const _0x33f430=_0xbdd971,_0x30112f=document[_0x33f430(0x10d)](_0x33f430(0x1fb)),_0x3ba5a9=_0x30112f['dataset'][_0x33f430(0x1ee)],_0x460db4=document['getElementById'](_0x33f430(0x112));if(_0x460db4)_0x460db4[_0x33f430(0x33e)]=!![];const _0x14f036=!!_0x3ba5a9,_0x4e1646=document['getElementById'](_0x33f430(0x13c))[_0x33f430(0x2c8)];if(_0x14f036&&_0x4e1646==='github'){const _0x101eba=document['getElementById'](_0x33f430(0x31a))[_0x33f430(0x2c8)][_0x33f430(0x301)]();if(!_0x101eba){showGitProviderError(_0x33f430(0x24a));return;}}const _0x3f8aa2=collectGitProviderData();if(!_0x3f8aa2)return;_0x3ba5a9&&(_0x3f8aa2[_0x33f430(0xf4)]===_0x33f430(0x136)&&!_0x3f8aa2[_0x33f430(0x2c1)]&&(_0x3f8aa2[_0x33f430(0x35a)]=!![]),_0x3f8aa2[_0x33f430(0xf4)]===_0x33f430(0x22f)&&(_0x3f8aa2[_0x33f430(0x1f5)]===_0x33f430(0x2ba)&&!_0x3f8aa2[_0x33f430(0xe7)]&&(_0x3f8aa2[_0x33f430(0x15c)]=!![]),_0x3f8aa2[_0x33f430(0x1f5)]===_0x33f430(0x1ba)&&!_0x3f8aa2[_0x33f430(0x1ba)]&&(_0x3f8aa2[_0x33f430(0x1af)]=!![])));try{_0x3ba5a9?await API[_0x33f430(0x243)]('/settings/git-providers/'+encodeURIComponent(_0x3ba5a9),_0x3f8aa2):await API['post'](_0x33f430(0x132),_0x3f8aa2),closeGitProviderModal(),showInlineMessage(_0x33f430(0x250),'success',_0x3ba5a9?_0x33f430(0x280):_0x33f430(0x377)),await loadGitProviders();}catch(_0x2bb298){console['error'](_0x33f430(0x129),_0x2bb298),showGitProviderError(_0x2bb298['message']||_0x33f430(0x317));}}window[_0xbdd971(0x314)]=async function(_0x4bcf9a){await openGitProviderModal(_0x4bcf9a);},window['deleteGitProvider']=function(_0x14d9e8){const _0x1beb6a=_0xbdd971;document['getElementById'](_0x1beb6a(0x1d7))[_0x1beb6a(0x189)]=_0x14d9e8,document[_0x1beb6a(0x10d)]('delete-git-provider-modal')[_0x1beb6a(0x264)]['name']=_0x14d9e8,document[_0x1beb6a(0x10d)](_0x1beb6a(0x288))['hidden']=![];};function closeDeleteGitProviderModal(){const _0x4436c1=_0xbdd971;document['getElementById'](_0x4436c1(0x288))[_0x4436c1(0x33e)]=!![];}async function confirmDeleteGitProvider(){const _0x3249a0=_0xbdd971,_0x3e8079=document['getElementById'](_0x3249a0(0x288))[_0x3249a0(0x264)][_0x3249a0(0x117)];try{await API['delete']('/settings/git-providers/'+encodeURIComponent(_0x3e8079)),closeDeleteGitProviderModal(),showInlineMessage('git-providers',_0x3249a0(0x2b0),_0x3249a0(0x221)),await loadGitProviders();}catch(_0x5b5bdd){console[_0x3249a0(0x1c7)](_0x3249a0(0x289),_0x5b5bdd),closeDeleteGitProviderModal(),showInlineMessage('git-providers',_0x3249a0(0x1c7),_0x5b5bdd[_0x3249a0(0x358)]||_0x3249a0(0x1d1));}}let gitProviderTeamsModalState={'providerName':null,'assignedTeamIds':[]};window[_0xbdd971(0x34a)]=async function(_0x2cace2){const _0x499436=_0xbdd971,_0x1ba6a3=document['getElementById'](_0x499436(0x2ae)),_0x207eb8=document[_0x499436(0x10d)](_0x499436(0x344));_0x207eb8[_0x499436(0x33e)]=!![],document[_0x499436(0x10d)](_0x499436(0x2ca))[_0x499436(0x189)]=_0x2cace2,gitProviderTeamsModalState[_0x499436(0x334)]=_0x2cace2;try{const _0x38c9a2=await API[_0x499436(0x2d2)](_0x2cace2),_0x434f3a=_0x38c9a2['allowedTeams']||[];if(state['teams'][_0x499436(0x1c8)]===0x0){const _0x125645=await API[_0x499436(0x2cf)]()[_0x499436(0xff)](()=>({'teams':[]}));state['teams']=_0x125645[_0x499436(0x137)]||[];}const _0x327579=document[_0x499436(0x10d)](_0x499436(0x2c9));_0x434f3a[_0x499436(0x255)]('*')?(_0x327579[_0x499436(0x2c8)]=_0x499436(0x28c),gitProviderTeamsModalState[_0x499436(0x396)]=[]):(_0x327579[_0x499436(0x2c8)]=_0x499436(0x2fa),gitProviderTeamsModalState[_0x499436(0x396)]=[..._0x434f3a]),onGitProviderTeamsModeChange(),_0x1ba6a3[_0x499436(0x33e)]=![];}catch(_0x5d48d3){console['error'](_0x499436(0x1e0),_0x5d48d3),_0x207eb8['textContent']=_0x5d48d3['message']||_0x499436(0x32a),_0x207eb8[_0x499436(0x33e)]=![],_0x1ba6a3[_0x499436(0x33e)]=![];}};function onGitProviderTeamsModeChange(){const _0x33a956=_0xbdd971,_0x485655=document[_0x33a956(0x10d)](_0x33a956(0x2c9))[_0x33a956(0x2c8)];document[_0x33a956(0x10d)](_0x33a956(0x150))[_0x33a956(0x33e)]=_0x485655!=='specific',_0x485655==='specific'&&(renderGitProviderTeamsList(),renderGitProviderAddTeamDropdown());}function renderGitProviderTeamsList(){const _0x24ef5e=_0xbdd971,_0x475b68=document[_0x24ef5e(0x10d)]('git-provider-teams-list'),_0x50ccd3=new Map(state[_0x24ef5e(0x137)]['map'](_0x4266a6=>[_0x4266a6['id'],_0x4266a6[_0x24ef5e(0x117)]]));if(gitProviderTeamsModalState['assignedTeamIds'][_0x24ef5e(0x1c8)]===0x0){_0x475b68[_0x24ef5e(0x172)]=_0x24ef5e(0x14d);return;}_0x475b68[_0x24ef5e(0x172)]=gitProviderTeamsModalState[_0x24ef5e(0x396)][_0x24ef5e(0x1ae)](_0x20b690=>{const _0x1679ed=_0x24ef5e,_0xdebaeb=_0x50ccd3['get'](_0x20b690)||_0x20b690,_0x42aab7=escapeInlineOnclickArg(_0x20b690);return _0x1679ed(0x256)+Utils['escapeHtml'](_0x20b690)+_0x1679ed(0x283)+Utils['escapeHtml'](_0xdebaeb)+_0x1679ed(0x339)+_0x42aab7+_0x1679ed(0x1c2);})[_0x24ef5e(0x2c7)]('');}function renderGitProviderAddTeamDropdown(){const _0xda88f6=_0xbdd971,_0x30bef7=document[_0xda88f6(0x10d)](_0xda88f6(0x2c0)),_0x5bf9d8=new Set(gitProviderTeamsModalState['assignedTeamIds']),_0x24e92f=state[_0xda88f6(0x137)][_0xda88f6(0x363)](_0x5302fc=>!_0x5bf9d8[_0xda88f6(0x11a)](_0x5302fc['id']));_0x30bef7[_0xda88f6(0x172)]=_0xda88f6(0x147),_0x24e92f[_0xda88f6(0x1ac)](_0xcd4ed6=>{const _0x20dded=_0xda88f6;_0x30bef7[_0x20dded(0x172)]+=_0x20dded(0x30d)+Utils['escapeHtml'](_0xcd4ed6['id'])+'\x22>'+Utils[_0x20dded(0x37e)](_0xcd4ed6['name'])+_0x20dded(0x298);});}function addGitProviderTeam(){const _0x1f152f=_0xbdd971,_0x22eaf5=document[_0x1f152f(0x10d)](_0x1f152f(0x2c0)),_0x1a3e2f=_0x22eaf5[_0x1f152f(0x2c8)];if(!_0x1a3e2f)return;gitProviderTeamsModalState[_0x1f152f(0x396)]['push'](_0x1a3e2f),renderGitProviderTeamsList(),renderGitProviderAddTeamDropdown();}window[_0xbdd971(0x1f4)]=function(_0x5e7572){const _0x180d13=_0xbdd971;gitProviderTeamsModalState[_0x180d13(0x396)]=gitProviderTeamsModalState['assignedTeamIds']['filter'](_0x32a7b6=>_0x32a7b6!==_0x5e7572),renderGitProviderTeamsList(),renderGitProviderAddTeamDropdown();};async function saveGitProviderTeams(){const _0xdb9088=_0xbdd971,_0x22faf1=document[_0xdb9088(0x10d)](_0xdb9088(0x2c9))[_0xdb9088(0x2c8)],_0x5828d0=document[_0xdb9088(0x10d)](_0xdb9088(0x344));_0x5828d0['hidden']=!![];const _0x1ccc9d=_0x22faf1===_0xdb9088(0x28c)?['*']:[...gitProviderTeamsModalState[_0xdb9088(0x396)]];try{await API[_0xdb9088(0x2ea)](gitProviderTeamsModalState[_0xdb9088(0x334)],_0x1ccc9d),closeGitProviderTeamsModal(),showInlineMessage('git-providers',_0xdb9088(0x2b0),_0xdb9088(0x31d)),await loadGitProviders();}catch(_0x59a137){console['error'](_0xdb9088(0x36f),_0x59a137),_0x5828d0[_0xdb9088(0x189)]=_0x59a137[_0xdb9088(0x358)]||_0xdb9088(0x2f3),_0x5828d0[_0xdb9088(0x33e)]=![];}}function closeGitProviderTeamsModal(){const _0x3a28e4=_0xbdd971;document[_0x3a28e4(0x10d)](_0x3a28e4(0x2ae))[_0x3a28e4(0x33e)]=!![],gitProviderTeamsModalState={'providerName':null,'assignedTeamIds':[]};}function setupProviderTypeListeners(){const _0x58d4e7=_0xbdd971,_0x447be8=document[_0x58d4e7(0x10d)](_0x58d4e7(0x1e5));_0x447be8&&(_0x447be8[_0x58d4e7(0x156)](_0x58d4e7(0x12d))?.[_0x58d4e7(0x153)](_0x58d4e7(0x27e),closeAddProviderTypeModal),_0x447be8[_0x58d4e7(0x156)]('.modal-overlay')?.[_0x58d4e7(0x153)]('click',closeAddProviderTypeModal),document[_0x58d4e7(0x10d)]('add-provider-type-cancel-btn')?.[_0x58d4e7(0x153)]('click',closeAddProviderTypeModal),document[_0x58d4e7(0x10d)](_0x58d4e7(0x2e8))?.[_0x58d4e7(0x153)](_0x58d4e7(0x27e),openGitHubAppSetupWizard),document[_0x58d4e7(0x10d)](_0x58d4e7(0x174))?.[_0x58d4e7(0x153)]('click',openAzureDevOpsProviderModal));}function openAddProviderTypeModal(){const _0x912e72=_0xbdd971;document[_0x912e72(0x10d)]('add-provider-type-modal')[_0x912e72(0x33e)]=![];}function closeAddProviderTypeModal(){const _0x23c1c1=_0xbdd971;document[_0x23c1c1(0x10d)]('add-provider-type-modal')[_0x23c1c1(0x33e)]=!![];}function _0x1a52(_0x3bc9a6,_0x5f0921){_0x3bc9a6=_0x3bc9a6-0xd2;const _0x3917bd=_0x3917();let _0x1a5298=_0x3917bd[_0x3bc9a6];if(_0x1a52['TsUNny']===undefined){var _0x3ed240=function(_0x4cf83b){const _0x2592b5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x57c2f7='',_0x470c3b='';for(let _0xdd2ed=0x0,_0x534eb3,_0x58a9ab,_0x46ed81=0x0;_0x58a9ab=_0x4cf83b['charAt'](_0x46ed81++);~_0x58a9ab&&(_0x534eb3=_0xdd2ed%0x4?_0x534eb3*0x40+_0x58a9ab:_0x58a9ab,_0xdd2ed++%0x4)?_0x57c2f7+=String['fromCharCode'](0xff&_0x534eb3>>(-0x2*_0xdd2ed&0x6)):0x0){_0x58a9ab=_0x2592b5['indexOf'](_0x58a9ab);}for(let _0x52f8aa=0x0,_0x185f84=_0x57c2f7['length'];_0x52f8aa<_0x185f84;_0x52f8aa++){_0x470c3b+='%'+('00'+_0x57c2f7['charCodeAt'](_0x52f8aa)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x470c3b);};_0x1a52['RChVbh']=_0x3ed240,_0x1a52['CozEiu']={},_0x1a52['TsUNny']=!![];}const _0x57e964=_0x3917bd[0x0],_0x550d0d=_0x3bc9a6+_0x57e964,_0x2af5c0=_0x1a52['CozEiu'][_0x550d0d];return!_0x2af5c0?(_0x1a5298=_0x1a52['RChVbh'](_0x1a5298),_0x1a52['CozEiu'][_0x550d0d]=_0x1a5298):_0x1a5298=_0x2af5c0,_0x1a5298;}function openAzureDevOpsProviderModal(){const _0x1aae6b=_0xbdd971;closeAddProviderTypeModal(),openGitProviderModal(null),document[_0x1aae6b(0x10d)](_0x1aae6b(0x13c))['value']=_0x1aae6b(0x22f),window['onGitProviderTypeChange']();}function setupGitHubSetupWizardListeners(){const _0x1eddd3=_0xbdd971,_0x1fe88d=document[_0x1eddd3(0x10d)](_0x1eddd3(0x2d9));_0x1fe88d&&(_0x1fe88d[_0x1eddd3(0x156)](_0x1eddd3(0x12d))?.['addEventListener'](_0x1eddd3(0x27e),closeGitHubAppSetupWizard),_0x1fe88d[_0x1eddd3(0x156)](_0x1eddd3(0x158))?.[_0x1eddd3(0x153)](_0x1eddd3(0x27e),closeGitHubAppSetupWizard),document['getElementById'](_0x1eddd3(0x281))?.[_0x1eddd3(0x153)](_0x1eddd3(0x27e),closeGitHubAppSetupWizard),document['getElementById']('github-setup-next-btn')?.['addEventListener'](_0x1eddd3(0x27e),gitHubSetupWizardNext));}function openGitHubAppSetupWizard(){const _0x5e7b86=_0xbdd971;closeAddProviderTypeModal(),initGitHubSetupSelects(),document[_0x5e7b86(0x10d)](_0x5e7b86(0x214))['value']='',document[_0x5e7b86(0x10d)](_0x5e7b86(0x341))['value']='',document['getElementById'](_0x5e7b86(0x2f1))[_0x5e7b86(0x2c8)]=_0x5e7b86(0x30f),document[_0x5e7b86(0x10d)](_0x5e7b86(0x1d3))[_0x5e7b86(0x2c8)]='',document['getElementById'](_0x5e7b86(0x161))[_0x5e7b86(0x2c8)]='',document[_0x5e7b86(0x10d)](_0x5e7b86(0x19f))['value']=_0x5e7b86(0x222),document[_0x5e7b86(0x10d)](_0x5e7b86(0x364))[_0x5e7b86(0x2c8)]='',document[_0x5e7b86(0x10d)](_0x5e7b86(0x128))[_0x5e7b86(0x33e)]=!![],document[_0x5e7b86(0x10d)]('github-setup-wizard-error')[_0x5e7b86(0x33e)]=!![],document[_0x5e7b86(0x10d)](_0x5e7b86(0x169))[_0x5e7b86(0x33e)]=![],window['onGitHubSetupHostTypeChange'](),window[_0x5e7b86(0x101)](),document[_0x5e7b86(0x10d)](_0x5e7b86(0x2d9))[_0x5e7b86(0x33e)]=![];}function closeGitHubAppSetupWizard(){const _0x52323a=_0xbdd971;document[_0x52323a(0x10d)](_0x52323a(0x2d9))['hidden']=!![];}window[_0xbdd971(0x101)]=function(){const _0xbcd0aa=_0xbdd971,_0x225fb1=document[_0xbcd0aa(0x10d)]('github-setup-account-type'),_0x244651=_0x225fb1?_0x225fb1[_0xbcd0aa(0x2c8)]:'organization';document[_0xbcd0aa(0x10d)](_0xbcd0aa(0x261))[_0xbcd0aa(0x33e)]=_0x244651!=='organization';};async function gitHubSetupWizardNext(){const _0x203d00=_0xbdd971,_0x517a35=document['getElementById']('github-setup-wizard-error');_0x517a35['hidden']=!![];const _0x57e79c=document[_0x203d00(0x10d)](_0x203d00(0x161))[_0x203d00(0x2c8)][_0x203d00(0x301)](),_0x4b0f05=document[_0x203d00(0x10d)]('github-setup-app-name')[_0x203d00(0x2c8)][_0x203d00(0x301)](),_0x330af9=document[_0x203d00(0x10d)]('github-setup-description')[_0x203d00(0x2c8)]['trim'](),_0x5aa657=document['getElementById'](_0x203d00(0x2f1))[_0x203d00(0x2c8)],_0x42a2e8=document[_0x203d00(0x10d)](_0x203d00(0x1d3))['value'][_0x203d00(0x301)](),_0x3010d1=document[_0x203d00(0x10d)]('github-setup-host-type')[_0x203d00(0x2c8)],_0x3c340e=document[_0x203d00(0x10d)](_0x203d00(0x364))[_0x203d00(0x2c8)][_0x203d00(0x301)]();if(!_0x57e79c){_0x517a35[_0x203d00(0x189)]=_0x203d00(0x277),_0x517a35['hidden']=![];return;}if(!/^[a-z0-9][a-z0-9-]*[a-z0-9]$/[_0x203d00(0x323)](_0x57e79c)&&_0x57e79c['length']>0x1){_0x517a35[_0x203d00(0x189)]=_0x203d00(0x185),_0x517a35['hidden']=![];return;}if(state[_0x203d00(0x1b6)]['some'](_0x266c52=>_0x266c52[_0x203d00(0x117)]===_0x57e79c)){_0x517a35[_0x203d00(0x189)]=_0x203d00(0x178),_0x517a35[_0x203d00(0x33e)]=![];return;}if(_0x3010d1!==_0x203d00(0x222)&&!_0x3c340e){_0x517a35[_0x203d00(0x189)]=_0x3010d1==='enterprise-cloud'?_0x203d00(0x1b9):_0x203d00(0x120),_0x517a35[_0x203d00(0x33e)]=![];return;}if(_0x3010d1===_0x203d00(0xed)&&!_0x3c340e['endsWith'](_0x203d00(0x28e))){_0x517a35[_0x203d00(0x189)]=_0x203d00(0x199),_0x517a35[_0x203d00(0x33e)]=![];return;}if(!_0x4b0f05){_0x517a35[_0x203d00(0x189)]=_0x203d00(0x2fc),_0x517a35[_0x203d00(0x33e)]=![];return;}if(_0x5aa657===_0x203d00(0x30f)&&!_0x42a2e8){_0x517a35[_0x203d00(0x189)]=_0x203d00(0x111),_0x517a35[_0x203d00(0x33e)]=![];return;}try{const _0x1f2364=document[_0x203d00(0x10d)]('github-setup-next-btn');_0x1f2364[_0x203d00(0x2b8)]=!![],_0x1f2364['textContent']=_0x203d00(0x232);const _0x4025e2=await API[_0x203d00(0x26c)]('/settings/git-provider-setup/start',{'type':_0x203d00(0x136),'config':{'providerName':_0x57e79c,'appName':_0x4b0f05,'description':_0x330af9,'accountType':_0x5aa657,'orgName':_0x5aa657===_0x203d00(0x30f)?_0x42a2e8:undefined,'githubHostType':_0x3010d1,'githubHost':_0x3010d1!=='github-com'?_0x3c340e:undefined}}),_0x2b8ed0=document['getElementById'](_0x203d00(0x2c2));_0x2b8ed0[_0x203d00(0x1a9)]=_0x4025e2[_0x203d00(0x343)],document[_0x203d00(0x10d)](_0x203d00(0x357))[_0x203d00(0x2c8)]=_0x4025e2[_0x203d00(0x394)],_0x2b8ed0['submit']();}catch(_0x50c24e){_0x517a35[_0x203d00(0x189)]=_0x50c24e[_0x203d00(0x358)]||_0x203d00(0xd2),_0x517a35[_0x203d00(0x33e)]=![];}finally{const _0x1f2911=document[_0x203d00(0x10d)](_0x203d00(0x169));_0x1f2911[_0x203d00(0x2b8)]=![],_0x1f2911[_0x203d00(0x189)]=_0x203d00(0x379);}}function setupSsoTabs(){const _0x21997f=_0xbdd971,_0x550bf5=document[_0x21997f(0x138)](_0x21997f(0x36e));_0x550bf5['forEach'](_0x4c2106=>{const _0xcd2d75=_0x21997f;_0x4c2106[_0xcd2d75(0x153)]('click',()=>{const _0x33cee6=_0xcd2d75,_0x3c6eef=_0x4c2106[_0x33cee6(0x264)]['tab'];_0x550bf5[_0x33cee6(0x1ac)](_0x40704c=>_0x40704c[_0x33cee6(0x213)]['toggle'](_0x33cee6(0x269),_0x40704c['dataset'][_0x33cee6(0x349)]===_0x3c6eef)),document['querySelectorAll'](_0x33cee6(0x23f))[_0x33cee6(0x1ac)](_0x312ab5=>{const _0x84d9f7=_0x33cee6;_0x312ab5['classList'][_0x84d9f7(0x196)]('active',_0x312ab5['id']===_0x84d9f7(0x386)+_0x3c6eef);});});});}function initSsoSelects(){const _0x52fb99=_0xbdd971,_0xa3ee95=document[_0x52fb99(0x10d)](_0x52fb99(0x162));if(_0xa3ee95&&!document[_0x52fb99(0x10d)](_0x52fb99(0x1d0))){const _0x1e5093=document[_0x52fb99(0x1c3)]('select');_0x1e5093['id']=_0x52fb99(0x1d0),_0x1e5093['innerHTML']=_0x52fb99(0x152),_0xa3ee95[_0x52fb99(0x31f)](_0x1e5093),customSelects[_0x52fb99(0x32d)]=new CustomSelect(_0x1e5093,{'searchable':![]});}const _0x54ecf0=document[_0x52fb99(0x10d)](_0x52fb99(0x11c));if(_0x54ecf0&&!document[_0x52fb99(0x10d)](_0x52fb99(0x2da))){const _0x5a7ba5=document[_0x52fb99(0x1c3)](_0x52fb99(0x30b));_0x5a7ba5['id']='sso-default-role',_0x5a7ba5['innerHTML']=_0x52fb99(0x110),_0x54ecf0[_0x52fb99(0x31f)](_0x5a7ba5),customSelects[_0x52fb99(0x180)]=new CustomSelect(_0x5a7ba5,{'searchable':![]});}}function showSsoMessage(_0x9f972f,_0x5626a0){const _0x56a40a=_0xbdd971,_0x960a1b=document[_0x56a40a(0x10d)](_0x56a40a(0x107));_0x960a1b&&(_0x960a1b['textContent']=_0x5626a0,_0x960a1b[_0x56a40a(0x1b8)]=_0x56a40a(0x1cc)+_0x9f972f,_0x960a1b[_0x56a40a(0x33e)]=![],_0x9f972f===_0x56a40a(0x2b0)&&setTimeout(()=>{const _0x4fba3f=_0x56a40a;_0x960a1b[_0x4fba3f(0x33e)]=!![];},0x1388));}function hideSsoMessage(){const _0x1eea6a=_0xbdd971,_0x2837d9=document[_0x1eea6a(0x10d)](_0x1eea6a(0x107));if(_0x2837d9)_0x2837d9[_0x1eea6a(0x33e)]=!![];}async function loadSsoSettings(){const _0x2d0788=_0xbdd971;initSsoSelects();try{const _0x499ef5=await API[_0x2d0788(0x278)](_0x2d0788(0x13d));state[_0x2d0788(0x130)]=_0x499ef5,document[_0x2d0788(0x10d)](_0x2d0788(0x2e4))[_0x2d0788(0x224)]=_0x499ef5[_0x2d0788(0x27d)]||![],document[_0x2d0788(0x10d)](_0x2d0788(0x1d0))['value']=_0x499ef5[_0x2d0788(0x342)]||'custom',document[_0x2d0788(0x10d)](_0x2d0788(0x17e))[_0x2d0788(0x2c8)]=_0x499ef5[_0x2d0788(0xf3)]||'',document[_0x2d0788(0x10d)]('sso-issuer')[_0x2d0788(0x2c8)]=_0x499ef5[_0x2d0788(0x104)]||'',document[_0x2d0788(0x10d)](_0x2d0788(0x15e))[_0x2d0788(0x2c8)]=_0x499ef5[_0x2d0788(0x2ab)]||'',document[_0x2d0788(0x10d)](_0x2d0788(0x362))[_0x2d0788(0x2c8)]='',document[_0x2d0788(0x10d)](_0x2d0788(0xf5))['checked']=_0x499ef5[_0x2d0788(0x184)]!==![],document['getElementById']('sso-default-role')[_0x2d0788(0x2c8)]=_0x499ef5[_0x2d0788(0x25c)]||'developer',document['getElementById'](_0x2d0788(0xd4))[_0x2d0788(0x224)]=_0x499ef5[_0x2d0788(0x26a)]!==![];const _0x2963c7=document[_0x2d0788(0x10d)]('sso-secret-hint');_0x2963c7&&(_0x2963c7[_0x2d0788(0x102)][_0x2d0788(0x1c0)]=_0x499ef5['has_client_secret']?_0x2d0788(0xf9):_0x2d0788(0x32f));const _0x2eca07=document[_0x2d0788(0x10d)](_0x2d0788(0x257));_0x2eca07&&(_0x2eca07[_0x2d0788(0x33e)]=!_0x499ef5[_0x2d0788(0x27d)]);}catch(_0x4841b1){console['error'](_0x2d0788(0x1bd),_0x4841b1);throw _0x4841b1;}}async function saveSsoSettings(){const _0x1e1a81=_0xbdd971;hideSsoMessage();try{const _0x1aae2b={'enabled':document[_0x1e1a81(0x10d)](_0x1e1a81(0x2e4))[_0x1e1a81(0x224)],'provider':document[_0x1e1a81(0x10d)](_0x1e1a81(0x1d0))[_0x1e1a81(0x2c8)],'display_name':document[_0x1e1a81(0x10d)](_0x1e1a81(0x17e))[_0x1e1a81(0x2c8)][_0x1e1a81(0x301)](),'issuer':document[_0x1e1a81(0x10d)]('sso-issuer')[_0x1e1a81(0x2c8)][_0x1e1a81(0x301)](),'client_id':document[_0x1e1a81(0x10d)](_0x1e1a81(0x15e))['value']['trim'](),'auto_provision':document['getElementById'](_0x1e1a81(0xf5))['checked'],'default_role':document[_0x1e1a81(0x10d)](_0x1e1a81(0x2da))['value'],'allow_local_auth':document[_0x1e1a81(0x10d)](_0x1e1a81(0xd4))[_0x1e1a81(0x224)]},_0x358ddd=document[_0x1e1a81(0x10d)]('sso-client-secret')[_0x1e1a81(0x2c8)];_0x358ddd?_0x1aae2b[_0x1e1a81(0xe7)]=_0x358ddd:_0x1aae2b[_0x1e1a81(0x2f2)]=!![],await API[_0x1e1a81(0x243)](_0x1e1a81(0x13d),_0x1aae2b),await API['post'](_0x1e1a81(0x1d2)),showSsoMessage(_0x1e1a81(0x2b0),_0x1e1a81(0x33b)),await loadSsoSettings();}catch(_0x5cbdae){console[_0x1e1a81(0x1c7)](_0x1e1a81(0x397),_0x5cbdae),showSsoMessage(_0x1e1a81(0x1c7),_0x1e1a81(0x2e6));}}async function testSsoConnection(){const _0x460f0b=_0xbdd971,_0x2cffe3=document['getElementById'](_0x460f0b(0x367))['value'][_0x460f0b(0x301)]();if(!_0x2cffe3){showSsoTestResult(![],_0x460f0b(0x2eb));return;}const _0x7f6906=document[_0x460f0b(0x10d)](_0x460f0b(0x217));_0x7f6906[_0x460f0b(0x189)]='Testing\x20connection...',_0x7f6906[_0x460f0b(0x1b8)]=_0x460f0b(0x217),_0x7f6906[_0x460f0b(0x33e)]=![];try{const _0x30b999=await API['post'](_0x460f0b(0xf1),{'issuer':_0x2cffe3});_0x30b999['success']?showSsoTestResult(!![],_0x460f0b(0x346)):showSsoTestResult(![],_0x460f0b(0xe8)+_0x30b999[_0x460f0b(0x1c7)]);}catch(_0xc86690){console['error'](_0x460f0b(0x1fe),_0xc86690),showSsoTestResult(![],_0x460f0b(0x183));}}function showSsoTestResult(_0x35c8c5,_0xac925){const _0x1edd30=_0xbdd971,_0x5c2b39=document['getElementById'](_0x1edd30(0x217));_0x5c2b39&&(_0x5c2b39[_0x1edd30(0x189)]=_0xac925,_0x5c2b39[_0x1edd30(0x1b8)]='sso-test-result\x20'+(_0x35c8c5?_0x1edd30(0x2b0):_0x1edd30(0x1c7)),_0x5c2b39[_0x1edd30(0x33e)]=![]);}async function removeSsoConfig(){const _0x48256f=_0xbdd971,_0x347715=await ConfirmDialog[_0x48256f(0x292)]({'title':_0x48256f(0x2f4),'message':_0x48256f(0x1b4),'confirmText':'Remove','danger':!![]});if(!_0x347715)return;try{await API['delete'](_0x48256f(0x13d)),showSsoMessage('success','SSO\x20configuration\x20removed'),await loadSsoSettings();}catch(_0xdb1340){console[_0x48256f(0x1c7)](_0x48256f(0x296),_0xdb1340),showSsoMessage(_0x48256f(0x1c7),_0x48256f(0x212));}}function setupCaCertificatesListeners(){const _0x48fefb=_0xbdd971;document[_0x48fefb(0x10d)](_0x48fefb(0x1a3))?.[_0x48fefb(0x153)](_0x48fefb(0x27e),openAddCaCertModal);const _0x40f6af=document[_0x48fefb(0x10d)](_0x48fefb(0x100));_0x40f6af&&(_0x40f6af[_0x48fefb(0x156)]('.modal-close')?.['addEventListener'](_0x48fefb(0x27e),closeAddCaCertModal),_0x40f6af[_0x48fefb(0x156)](_0x48fefb(0x158))?.['addEventListener'](_0x48fefb(0x27e),closeAddCaCertModal),document[_0x48fefb(0x10d)](_0x48fefb(0x116))?.[_0x48fefb(0x153)](_0x48fefb(0x27e),closeAddCaCertModal),document[_0x48fefb(0x10d)]('ca-cert-save-btn')?.[_0x48fefb(0x153)](_0x48fefb(0x27e),saveCaCertificate),document[_0x48fefb(0x10d)]('ca-cert-import-btn')?.[_0x48fefb(0x153)](_0x48fefb(0x27e),()=>{const _0x557b4f=_0x48fefb;document[_0x557b4f(0x10d)](_0x557b4f(0x360))?.[_0x557b4f(0x27e)]();}),document[_0x48fefb(0x10d)]('ca-cert-file-input')?.[_0x48fefb(0x153)]('change',handleCaCertFileImport));const _0x3e90a8=document[_0x48fefb(0x10d)](_0x48fefb(0xee));_0x3e90a8&&(_0x3e90a8['querySelector'](_0x48fefb(0x12d))?.['addEventListener']('click',closeViewCaCertModal),_0x3e90a8[_0x48fefb(0x156)](_0x48fefb(0x158))?.[_0x48fefb(0x153)](_0x48fefb(0x27e),closeViewCaCertModal),document['getElementById']('view-ca-cert-close-btn')?.[_0x48fefb(0x153)](_0x48fefb(0x27e),closeViewCaCertModal));}async function loadCaCertificates(){const _0x805a2e=_0xbdd971;try{const _0x4d7d07=await API['get'](_0x805a2e(0x11b));state['caCertsConfig']=_0x4d7d07,renderCaCertificatesList();}catch(_0x2ec659){console[_0x805a2e(0x1c7)](_0x805a2e(0x27f),_0x2ec659);throw _0x2ec659;}}function renderCaCertificatesList(){const _0x34bcd9=_0xbdd971,_0x20ca3b=document['getElementById'](_0x34bcd9(0x315));if(!_0x20ca3b)return;const _0x4aa94b=state[_0x34bcd9(0x395)]['certificates']||[];if(_0x4aa94b[_0x34bcd9(0x1c8)]===0x0){_0x20ca3b[_0x34bcd9(0x172)]=_0x34bcd9(0x2ee);return;}_0x20ca3b[_0x34bcd9(0x172)]=_0x4aa94b[_0x34bcd9(0x1ae)](_0xf1a038=>{const _0x28dc5d=_0x34bcd9,_0x12f4bf=_0xf1a038['issuedTo']||{},_0x5c86f9=_0x12f4bf[_0x28dc5d(0x16b)]||_0x12f4bf['organization']||'',_0x9896db=escapeInlineOnclickArg(_0xf1a038['id']);let _0x43d0bd='';if(_0xf1a038[_0x28dc5d(0x227)]){const _0x9b7c1=new Date(_0xf1a038['expiresOn']),_0x3fa32f=new Date(),_0x57f71e=Math['ceil']((_0x9b7c1-_0x3fa32f)/(0x3e8*0x3c*0x3c*0x18)),_0x2776ae=_0x9b7c1['toLocaleString'](undefined,{'year':_0x28dc5d(0x1fc),'month':_0x28dc5d(0x210),'day':_0x28dc5d(0x1fc),'hour':_0x28dc5d(0x1fc),'minute':_0x28dc5d(0x329),'hour12':!![]});if(_0xf1a038[_0x28dc5d(0x2ed)])_0x43d0bd=_0x28dc5d(0x229)+_0x2776ae+_0x28dc5d(0xef);else _0x57f71e<=0x1e?_0x43d0bd=_0x28dc5d(0x1e4)+_0x2776ae+_0x28dc5d(0xef):_0x43d0bd='<span\x20class=\x22ca-cert-expiry\x22>Expires\x20'+_0x2776ae+_0x28dc5d(0xef);}return _0x28dc5d(0x371)+_0xf1a038['id']+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ca-cert-info\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ca-cert-name\x22>'+Utils[_0x28dc5d(0x37e)](_0xf1a038[_0x28dc5d(0x117)])+_0x28dc5d(0x219)+(_0x5c86f9&&_0x5c86f9!==_0xf1a038[_0x28dc5d(0x117)]?_0x28dc5d(0xdc)+Utils[_0x28dc5d(0x37e)](_0x5c86f9)+_0x28dc5d(0x25d):'')+_0x28dc5d(0x2d0)+_0x43d0bd+_0x28dc5d(0x1fa)+_0x9896db+_0x28dc5d(0x186)+_0x9896db+_0x28dc5d(0x252);})['join']('');}function openAddCaCertModal(){const _0xdcb6b0=_0xbdd971;document['getElementById'](_0xdcb6b0(0x1ea))[_0xdcb6b0(0x2c8)]='',document[_0xdcb6b0(0x10d)](_0xdcb6b0(0x2b1))[_0xdcb6b0(0x2c8)]='';const _0x2021e7=document['getElementById'](_0xdcb6b0(0x29c));if(_0x2021e7)_0x2021e7['hidden']=!![];document[_0xdcb6b0(0x10d)](_0xdcb6b0(0x100))[_0xdcb6b0(0x33e)]=![];}function closeAddCaCertModal(){const _0x1c76ae=_0xbdd971;document['getElementById']('add-ca-cert-modal')[_0x1c76ae(0x33e)]=!![];}async function saveCaCertificate(){const _0x3dc2c4=_0xbdd971,_0xa85c6=document[_0x3dc2c4(0x10d)](_0x3dc2c4(0x1ea))[_0x3dc2c4(0x2c8)]['trim'](),_0x16bcfd=document[_0x3dc2c4(0x10d)](_0x3dc2c4(0x2b1))[_0x3dc2c4(0x2c8)][_0x3dc2c4(0x301)](),_0x375f36=document['getElementById'](_0x3dc2c4(0x29c));if(!_0xa85c6||!_0x16bcfd){_0x375f36&&(_0x375f36[_0x3dc2c4(0x189)]=_0x3dc2c4(0x2f0),_0x375f36[_0x3dc2c4(0x33e)]=![]);return;}try{const _0x3bdaa9=document['getElementById'](_0x3dc2c4(0x2fd));_0x3bdaa9[_0x3dc2c4(0x2b8)]=!![],_0x3bdaa9[_0x3dc2c4(0x189)]=_0x3dc2c4(0x1d8),await API[_0x3dc2c4(0x26c)](_0x3dc2c4(0x11b),{'name':_0xa85c6,'content':_0x16bcfd}),closeAddCaCertModal(),await loadCaCertificates(),showInlineMessage(_0x3dc2c4(0x202),'success','Certificate\x20added');}catch(_0x2fbb19){console['error']('Failed\x20to\x20add\x20CA\x20certificate:',_0x2fbb19),_0x375f36&&(_0x375f36[_0x3dc2c4(0x189)]=_0x2fbb19[_0x3dc2c4(0x358)]||_0x3dc2c4(0x154),_0x375f36[_0x3dc2c4(0x33e)]=![]);}finally{const _0x58cb20=document['getElementById']('ca-cert-save-btn');_0x58cb20['disabled']=![],_0x58cb20[_0x3dc2c4(0x189)]='Add\x20Certificate';}}window[_0xbdd971(0x27b)]=async function(_0x23d5ca){const _0x1b7b4b=_0xbdd971;try{const _0x754322=await API[_0x1b7b4b(0x278)](_0x1b7b4b(0x201)+_0x23d5ca),_0x582442=_0x754322[_0x1b7b4b(0x149)]||{},_0x4bebb3=_0x582442[_0x1b7b4b(0x242)]||{},_0x25f66f=_0x582442[_0x1b7b4b(0x316)]||{},_0x16d8f4=_0x582442[_0x1b7b4b(0x144)]||{},_0x287701=_0x582442['fingerprints']||{};document[_0x1b7b4b(0x10d)](_0x1b7b4b(0x254))[_0x1b7b4b(0x189)]=_0x754322[_0x1b7b4b(0x117)];const _0x8fcdfa=(_0x1ea1f7,_0x2ec959,_0x17e53a)=>{const _0x1e1de4=_0x1b7b4b,_0x3ac7fd=document[_0x1e1de4(0x10d)](_0x1ea1f7),_0x1031b5=_0x17e53a?document['getElementById'](_0x17e53a):null;if(_0x3ac7fd)_0x3ac7fd[_0x1e1de4(0x189)]=_0x2ec959||_0x1e1de4(0x270);if(_0x1031b5)_0x1031b5['style']['display']=_0x2ec959?'':_0x1e1de4(0x32f);};_0x8fcdfa(_0x1b7b4b(0x208),_0x4bebb3[_0x1b7b4b(0x16b)],'cert-issued-to-cn-row'),_0x8fcdfa(_0x1b7b4b(0x370),_0x4bebb3[_0x1b7b4b(0x30f)],_0x1b7b4b(0x259)),_0x8fcdfa(_0x1b7b4b(0x1a4),_0x4bebb3[_0x1b7b4b(0x24e)],'cert-issued-to-ou-row'),_0x8fcdfa('cert-issued-by-cn',_0x25f66f[_0x1b7b4b(0x16b)],_0x1b7b4b(0x151)),_0x8fcdfa(_0x1b7b4b(0x2c3),_0x25f66f[_0x1b7b4b(0x30f)],'cert-issued-by-o-row'),_0x8fcdfa(_0x1b7b4b(0x2fb),_0x25f66f[_0x1b7b4b(0x24e)],_0x1b7b4b(0x171));const _0x2e30f7=_0x21e24f=>{const _0x354273=_0x1b7b4b;if(!_0x21e24f)return'';const _0x4bd96a=new Date(_0x21e24f);return _0x4bd96a[_0x354273(0x347)](undefined,{'weekday':_0x354273(0x210),'year':_0x354273(0x1fc),'month':_0x354273(0x210),'day':_0x354273(0x1fc),'hour':_0x354273(0x1fc),'minute':_0x354273(0x329),'second':_0x354273(0x329),'hour12':!![]});};_0x8fcdfa(_0x1b7b4b(0x1f6),_0x2e30f7(_0x16d8f4[_0x1b7b4b(0x21b)])),_0x8fcdfa('cert-expires-on',_0x2e30f7(_0x16d8f4[_0x1b7b4b(0x227)]));const _0x3ca982=document[_0x1b7b4b(0x10d)]('cert-expires-on');if(_0x3ca982&&_0x582442[_0x1b7b4b(0x2ed)])_0x3ca982[_0x1b7b4b(0x213)][_0x1b7b4b(0x1cb)](_0x1b7b4b(0x1dd));else _0x3ca982&&_0x3ca982[_0x1b7b4b(0x213)]['remove']('cert-expired');_0x8fcdfa(_0x1b7b4b(0x30e),_0x287701[_0x1b7b4b(0x1ba)]),_0x8fcdfa(_0x1b7b4b(0x2e0),_0x287701[_0x1b7b4b(0x16d)]),document[_0x1b7b4b(0x10d)](_0x1b7b4b(0xee))['hidden']=![];}catch(_0x42950f){console[_0x1b7b4b(0x1c7)](_0x1b7b4b(0xd7),_0x42950f),showInlineMessage(_0x1b7b4b(0x202),'error',_0x1b7b4b(0x37d));}};function closeViewCaCertModal(){const _0xb5fcff=_0xbdd971;document[_0xb5fcff(0x10d)](_0xb5fcff(0xee))[_0xb5fcff(0x33e)]=!![];}window[_0xbdd971(0x32b)]=async function(_0x2e0f98){const _0x362832=_0xbdd971,_0x4d31d=await ConfirmDialog[_0x362832(0x292)]({'title':_0x362832(0x34b),'message':_0x362832(0x2d8),'confirmText':_0x362832(0xd8),'danger':!![]});if(!_0x4d31d)return;try{await API[_0x362832(0xfb)](_0x362832(0x201)+_0x2e0f98),await loadCaCertificates(),showInlineMessage(_0x362832(0x202),_0x362832(0x2b0),_0x362832(0x266));}catch(_0x274606){console['error']('Failed\x20to\x20remove\x20CA\x20certificate:',_0x274606),showInlineMessage('ca-certificates',_0x362832(0x1c7),_0x362832(0x2c6));}};function handleCaCertFileImport(_0x30ee18){const _0x4bca80=_0xbdd971,_0xedaf35=_0x30ee18[_0x4bca80(0x10f)][_0x4bca80(0x115)][0x0];if(_0xedaf35){const _0x1e1882=new FileReader();_0x1e1882['onload']=_0x39c30d=>{const _0x250fc1=_0x4bca80;document[_0x250fc1(0x10d)](_0x250fc1(0x2b1))[_0x250fc1(0x2c8)]=_0x39c30d['target'][_0x250fc1(0x19c)];},_0x1e1882[_0x4bca80(0x1ca)](_0xedaf35);}_0x30ee18[_0x4bca80(0x10f)][_0x4bca80(0x2c8)]='';}
|
|
1
|
+
import{API,Utils,CustomSelect,ConfirmDialog,initializeAdminMenu}from'./app.js';import{initTheme,mountThemeToggle}from'./theme.js';const state={'currentSection':'general','setupConfig':null,'environments':[],'modelConfig':{},'availableModels':{},'providerStatus':{},'emailConfig':{},'ssoConfig':{},'gitProviders':[],'teams':[],'gitProvidersConfig':{'token_expiry_days':0x1,'setup_repo_auth':{'mode':'local','provider':null}},'caCertsConfig':{'certificates':[]}},customSelects={'agent':null,'environment':null,'claudeModel':null,'claudeEffort':null,'codexModel':null,'geminiModel':null,'codexReasoning':null,'ssoRole':null,'gitProviderType':null},inlineMessageTimers={};function showInlineMessage(_0x41e0fa,_0x210038,_0x2e1eea,_0x389c32=null){const _0x5b80b6=document['getElementById'](_0x41e0fa+'-inline-message');if(!_0x5b80b6){if(_0x210038==='success')Utils['showSuccess'](_0x2e1eea);else Utils['showError'](_0x2e1eea);return;}inlineMessageTimers[_0x41e0fa]&&(clearTimeout(inlineMessageTimers[_0x41e0fa]),inlineMessageTimers[_0x41e0fa]=null);_0x5b80b6['textContent']=_0x2e1eea,_0x5b80b6['className']='inline-message\x20'+_0x210038,_0x5b80b6['hidden']=![];const _0x3dbbac=_0x389c32!==null?_0x389c32:_0x210038==='success'?0x1388:0x0;_0x3dbbac>0x0&&(inlineMessageTimers[_0x41e0fa]=setTimeout(()=>{_0x5b80b6['hidden']=!![],inlineMessageTimers[_0x41e0fa]=null;},_0x3dbbac));}function hideInlineMessage(_0x1e72f7){const _0x4b1956=document['getElementById'](_0x1e72f7+'-inline-message');if(_0x4b1956)_0x4b1956['hidden']=!![];}document['addEventListener']('DOMContentLoaded',initialize);async function initialize(){try{initTheme(),mountThemeToggle(),await checkAdminAccess(),await initializeAdminMenu(),setupEventListeners(),await loadInitialData(),await handleGitProviderSetupCallback(),await handleSetupRepoOAuthReturn();if(state['currentSection']==='general')try{const _0x55b844=sessionStorage['getItem']('settings-active-section');_0x55b844&&document['getElementById']('section-'+_0x55b844)&&await switchSection(_0x55b844);}catch(_0x29a1cc){}document['getElementById']('settings-loading')['hidden']=!![],document['getElementById']('settings-content')['hidden']=![];}catch(_0x3a4fdb){console['error']('Initialization\x20error:',_0x3a4fdb),document['getElementById']('settings-loading')['hidden']=!![],document['getElementById']('settings-error')['hidden']=![],document['getElementById']('settings-error-message')['textContent']=_0x3a4fdb['message']||'Unknown\x20error';}}async function handleGitProviderSetupCallback(){const _0x34d258=new URLSearchParams(window['location']['search']),_0x2970c9=_0x34d258['get']('git_provider_setup');if(_0x2970c9){try{const _0x413fd5=new URLSearchParams(_0x2970c9),_0x1a1f79=_0x413fd5['get']('status'),_0x2459fb=_0x413fd5['get']('provider_name'),_0x399caf=_0x413fd5['get']('message');await switchSection('git-providers'),await loadGitProviders();if(_0x1a1f79==='completed'&&_0x2459fb)showInlineMessage('git-providers','success','GitHub\x20provider\x20\x22'+_0x2459fb+'\x22\x20has\x20been\x20successfully\x20configured.');else{if(_0x1a1f79==='installed'&&_0x2459fb)showInlineMessage('git-providers','success','GitHub\x20provider\x20\x22'+_0x2459fb+'\x22\x20has\x20been\x20installed\x20and\x20added\x20to\x20your\x20providers.');else _0x399caf?showInlineMessage('git-providers','success',_0x399caf):showInlineMessage('git-providers','success','GitHub\x20App\x20setup\x20completed\x20successfully.');}}catch(_0x5c7fe8){console['error']('Failed\x20to\x20parse\x20setup\x20parameters:',_0x5c7fe8),showInlineMessage('git-providers','error','Setup\x20completed\x20but\x20failed\x20to\x20display\x20details.');}const _0x1d5a42=new URL(window['location']);_0x1d5a42['searchParams']['delete']('git_provider_setup'),window['history']['replaceState']({},'',_0x1d5a42);}const _0x2375e7=_0x34d258['get']('git_provider_setup_error');if(_0x2375e7){try{const _0x400986=new URLSearchParams(_0x2375e7),_0x573beb=_0x400986['get']('error');await switchSection('git-providers'),_0x573beb?showInlineMessage('git-providers','error','GitHub\x20App\x20setup\x20failed:\x20'+_0x573beb):showInlineMessage('git-providers','error','GitHub\x20App\x20setup\x20failed.\x20Please\x20try\x20again.');}catch(_0x28550a){console['error']('Failed\x20to\x20parse\x20setup\x20error\x20parameters:',_0x28550a),showInlineMessage('git-providers','error','GitHub\x20App\x20setup\x20failed.\x20Please\x20try\x20again.');}const _0xc423d0=new URL(window['location']);_0xc423d0['searchParams']['delete']('git_provider_setup_error'),window['history']['replaceState']({},'',_0xc423d0);}}async function checkAdminAccess(){try{const _0xde0169=await API['getCurrentUser']();if(!_0xde0169['hasAllPermissions']){Utils['showToast']('Access\x20denied:\x20Admin\x20privileges\x20required','error'),setTimeout(()=>{window['location']['href']='index.html';},0x7d0);throw new Error('Access\x20denied');}}catch(_0x1faec2){_0x1faec2['message']!=='Access\x20denied'&&(window['location']['href']='login.html');throw _0x1faec2;}}async function loadInitialData(){const [_0x41aca0,_0xa7855d]=await Promise['all']([API['get']('/settings'),API['get']('/environments')]);state['setupConfig']=_0x41aca0,state['environments']=_0xa7855d['environments']||[],populateGeneralSettings();}function setupEventListeners(){document['querySelectorAll']('.settings-nav-item')['forEach'](_0x2a9d72=>{_0x2a9d72['addEventListener']('click',()=>switchSection(_0x2a9d72['dataset']['section']));}),document['getElementById']('retry-settings-btn')?.['addEventListener']('click',()=>{document['getElementById']('settings-error')['hidden']=!![],document['getElementById']('settings-loading')['hidden']=![],initialize();}),document['getElementById']('save-general-btn')['addEventListener']('click',saveGeneralSettings),document['getElementById']('save-keepalive-btn')['addEventListener']('click',saveKeepaliveSettings),setupApiKeyToggleListeners(),document['getElementById']('save-models-btn')['addEventListener']('click',saveModelConfig),setupAiProviderListeners(),document['getElementById']('save-email-btn')['addEventListener']('click',saveEmailSettings),document['getElementById']('email-test-connection-btn')['addEventListener']('click',testEmailConnection),document['getElementById']('email-send-test-btn')['addEventListener']('click',sendTestEmail),document['getElementById']('add-git-provider-btn')['addEventListener']('click',openAddProviderTypeModal),document['getElementById']('save-git-token-expiration-btn')['addEventListener']('click',saveGitTokenExpiration),document['getElementById']('save-setup-repo-auth-btn')['addEventListener']('click',saveSetupRepoAuthSettings),document['getElementById']('test-setup-repo-auth-btn')['addEventListener']('click',testSetupRepoAuthSettings),document['getElementById']('setup-repo-auth-mode')['addEventListener']('change',onSetupRepoAuthModeChange),initGitConnectionsRequiredModal(),setupGitProviderListeners(),setupProviderTypeListeners(),setupGitHubSetupWizardListeners(),document['getElementById']('save-sso-btn')['addEventListener']('click',saveSsoSettings),document['getElementById']('sso-test-btn')['addEventListener']('click',testSsoConnection),document['getElementById']('sso-remove-btn')?.['addEventListener']('click',removeSsoConfig),setupSsoTabs(),setupCaCertificatesListeners();}async function switchSection(_0x30c8ce){document['querySelectorAll']('.settings-nav-item')['forEach'](_0x1e5fee=>{_0x1e5fee['classList']['toggle']('active',_0x1e5fee['dataset']['section']===_0x30c8ce);}),document['querySelectorAll']('.settings-panel')['forEach'](_0x12fbd5=>{_0x12fbd5['hidden']=_0x12fbd5['id']!=='section-'+_0x30c8ce,_0x12fbd5['classList']['toggle']('active',_0x12fbd5['id']==='section-'+_0x30c8ce);}),state['currentSection']=_0x30c8ce;try{sessionStorage['setItem']('settings-active-section',_0x30c8ce);}catch(_0x521e6c){}try{switch(_0x30c8ce){case'general':populateGeneralSettings();break;case'keepalive':await loadKeepaliveSettings();break;case'ai-providers':await loadAiProviders();break;case'models':await loadModelConfig();break;case'email':await loadEmailSettings();break;case'git-providers':await loadGitProviders();break;case'sso':await loadSsoSettings();break;case'ca-certificates':await loadCaCertificates();break;}}catch(_0x5b41b6){console['error']('Failed\x20to\x20load\x20'+_0x30c8ce+'\x20settings:',_0x5b41b6),Utils['showError']('Failed\x20to\x20load\x20'+_0x30c8ce+'\x20settings');}}function populateGeneralSettings(){const _0x52b5ce=state['setupConfig'];if(!_0x52b5ce)return;document['getElementById']('settings-name')['value']=_0x52b5ce['name']||'',document['getElementById']('settings-max-concurrent-agents')['value']=_0x52b5ce['max_concurrent_agents']||0x8;const _0x306884=document['getElementById']('settings-coderflow-attribution');_0x306884&&(_0x306884['checked']=_0x52b5ce['coderflow_attribution']!==![]),initAgentSelect(_0x52b5ce['default_agent']||'claude'),initEnvironmentSelect(_0x52b5ce['default_environment']||'');}function initAgentSelect(_0x3e918f){const _0x1fc34b=document['getElementById']('settings-default-agent-container');if(!_0x1fc34b)return;let _0x9d1104=document['getElementById']('settings-default-agent-hidden');!_0x9d1104&&(_0x9d1104=document['createElement']('select'),_0x9d1104['id']='settings-default-agent-hidden',_0x9d1104['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22claude\x22>Claude</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22codex\x22>Codex</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22gemini\x22>Gemini</option>\x0a\x20\x20\x20\x20',_0x1fc34b['appendChild'](_0x9d1104),customSelects['agent']=new CustomSelect(_0x9d1104,{'searchable':![]})),_0x9d1104['value']=_0x3e918f;}function initEnvironmentSelect(_0x33bba2){const _0x5d9476=document['getElementById']('settings-default-environment-container');if(!_0x5d9476)return;let _0x3dd293=document['getElementById']('settings-default-environment-hidden');!_0x3dd293&&(_0x3dd293=document['createElement']('select'),_0x3dd293['id']='settings-default-environment-hidden',_0x5d9476['appendChild'](_0x3dd293)),_0x3dd293['innerHTML']=state['environments']['map'](_0x4f666c=>'<option\x20value=\x22'+_0x4f666c['name']+'\x22>'+Utils['escapeHtml'](_0x4f666c['name'])+'</option>')['join'](''),!customSelects['environment']&&(customSelects['environment']=new CustomSelect(_0x3dd293,{'searchable':![]})),_0x3dd293['value']=_0x33bba2||(state['environments'][0x0]?.['name']||'');}async function saveGeneralSettings(){try{const _0x440eeb=document['getElementById']('settings-default-agent-hidden'),_0x6d24c3=document['getElementById']('settings-default-environment-hidden'),_0x1d9a3a=document['getElementById']('settings-coderflow-attribution'),_0x1a3be1={'name':document['getElementById']('settings-name')['value']['trim'](),'default_agent':_0x440eeb?.['value']||'claude','default_environment':_0x6d24c3?.['value']||'','max_concurrent_agents':parseInt(document['getElementById']('settings-max-concurrent-agents')['value'],0xa)||0x8,'coderflow_attribution':_0x1d9a3a?.['checked']!==![]};await API['put']('/settings/general',_0x1a3be1),Object['assign'](state['setupConfig'],_0x1a3be1),showInlineMessage('general','success','General\x20settings\x20saved');}catch(_0x552553){console['error']('Failed\x20to\x20save\x20general\x20settings:',_0x552553),showInlineMessage('general','error','Failed\x20to\x20save\x20general\x20settings');}}async function loadKeepaliveSettings(){try{const [_0x57758a,_0x5afb84]=await Promise['all']([state['setupConfig']?Promise['resolve'](state['setupConfig']):API['get']('/settings'),API['get']('/settings/keepalive/status')]);state['setupConfig']=_0x57758a;const _0x36266a=state['setupConfig']['agent_keepalive']||{},_0x390eca=_0x36266a['agents']||{};['claude','codex','gemini']['forEach'](_0x1487f1=>{const _0x2bab1b=_0x390eca[_0x1487f1]||{};document['getElementById']('keepalive-'+_0x1487f1+'-enabled')['checked']=_0x2bab1b['enabled']||![],document['getElementById']('keepalive-'+_0x1487f1+'-interval')['value']=_0x2bab1b['interval_hours']||0x6;const _0x4fc45a=document['getElementById']('keepalive-'+_0x1487f1+'-status'),_0x32f27c=(_0x5afb84['agents']||[])['find'](_0x35c726=>_0x35c726['agent']===_0x1487f1);if(_0x32f27c&&_0x32f27c['lastRefresh']){const _0x1ff97f=new Date(_0x32f27c['lastRefresh']);_0x4fc45a['textContent']='Last\x20refresh:\x20'+_0x1ff97f['toLocaleString']();}else _0x4fc45a['textContent']='Not\x20yet\x20refreshed';});}catch(_0x23c89f){console['error']('Failed\x20to\x20load\x20keepalive\x20settings:',_0x23c89f);throw _0x23c89f;}}async function saveKeepaliveSettings(){try{const _0x5a69a6={};['claude','codex','gemini']['forEach'](_0x4dd6d6=>{const _0x2466c9=document['getElementById']('keepalive-'+_0x4dd6d6+'-enabled')['checked'],_0x2ad383=parseInt(document['getElementById']('keepalive-'+_0x4dd6d6+'-interval')['value'],0xa)||0x6;_0x5a69a6[_0x4dd6d6]={'enabled':_0x2466c9,'interval_hours':Math['max'](0x1,Math['min'](0x18,_0x2ad383))};}),await API['put']('/settings/keepalive',{'agents':_0x5a69a6}),state['setupConfig']['agent_keepalive']={'agents':_0x5a69a6},showInlineMessage('keepalive','success','Keepalive\x20settings\x20saved');}catch(_0x145e0e){console['error']('Failed\x20to\x20save\x20keepalive\x20settings:',_0x145e0e),showInlineMessage('keepalive','error','Failed\x20to\x20save\x20keepalive\x20settings');}}const PROVIDER_NAMES={'claude':'Claude\x20(Anthropic)','codex':'Codex\x20(OpenAI)','gemini':'Gemini\x20(Google)'};let currentProviderOAuthState=null;function setupApiKeyToggleListeners(){document['querySelectorAll']('.apikey-toggle-visibility')['forEach'](_0x2905cd=>{_0x2905cd['addEventListener']('click',toggleVisibility);});}function toggleVisibility(_0x4c6679){const _0x269ddb=_0x4c6679['currentTarget'],_0x5de2bc=_0x269ddb['dataset']['target'],_0x163892=document['getElementById'](_0x5de2bc);if(!_0x163892)return;const _0x160741=_0x269ddb['querySelector']('.eye-open'),_0xf69a4c=_0x269ddb['querySelector']('.eye-closed');if(_0x163892['type']==='password'){_0x163892['type']='text';if(_0x160741)_0x160741['style']['display']='none';if(_0xf69a4c)_0xf69a4c['style']['display']='block';}else{_0x163892['type']='password';if(_0x160741)_0x160741['style']['display']='block';if(_0xf69a4c)_0xf69a4c['style']['display']='none';}}function isValidHttpUrl(_0x339deb){try{const _0x4ff993=new URL(_0x339deb);return _0x4ff993['protocol']==='http:'||_0x4ff993['protocol']==='https:';}catch{return![];}}function formatEndpointInfo(_0x21cfa3){if(!_0x21cfa3||_0x21cfa3['mode']!=='custom'||!_0x21cfa3['base_url'])return'Default\x20provider\x20endpoint';return _0x21cfa3['api_version']?_0x21cfa3['base_url']+'\x20(api-version:\x20'+_0x21cfa3['api_version']+')':_0x21cfa3['base_url'];}function escapeInlineOnclickArg(_0x5291a2){return Utils['escapeHtml'](String(_0x5291a2??'')['replace'](/\\/g,'\x5c\x5c')['replace'](/'/g,'\x5c\x27')['replace'](/\r/g,'\x5cr')['replace'](/\n/g,'\x5cn')['replace'](/\u2028/g,'\x5cu2028')['replace'](/\u2029/g,'\x5cu2029'));}function setAiProviderModalTab(_0x34178e){const _0x922273=document['getElementById']('ai-provider-add-modal');if(!_0x922273)return;_0x922273['dataset']['activeTab']=_0x34178e,_0x922273['querySelectorAll']('.ai-provider-tab')['forEach'](_0x47b1ef=>{_0x47b1ef['classList']['toggle']('active',_0x47b1ef['dataset']['tab']===_0x34178e);}),_0x922273['querySelectorAll']('.ai-provider-tab-content')['forEach'](_0x30262e=>{_0x30262e['classList']['toggle']('active',_0x30262e['id']==='ai-provider-tab-'+_0x34178e);});const _0x5e3030=document['getElementById']('ai-provider-add-submit-btn');_0x5e3030&&(_0x5e3030['textContent']=_0x34178e==='oauth'?'Complete\x20Sign-In':'Add\x20API\x20Key');}function resetAiProviderAddModal(){currentProviderOAuthState=null,document['getElementById']('provider-signin-input')['value']='',document['getElementById']('provider-signin-label-input')['value']='',document['getElementById']('ai-provider-api-key-label')['value']='',document['getElementById']('ai-provider-api-key-input')['value']='',document['getElementById']('ai-provider-api-key-endpoint-enabled')['checked']=![],document['getElementById']('ai-provider-api-key-base-url')['value']='',document['getElementById']('ai-provider-api-key-api-version')['value']='',document['getElementById']('ai-provider-api-key-endpoint-fields')['hidden']=!![];}async function loadAiProviders(){try{const _0x5ddf78=await API['get']('/settings/provider-auth');state['providerStatus']=_0x5ddf78,renderProviderAccounts(_0x5ddf78);}catch(_0x5303c8){console['error']('Failed\x20to\x20load\x20AI\x20providers\x20status:',_0x5303c8);throw _0x5303c8;}}function renderProviderAccounts(_0x2f56be){['claude','codex','gemini']['forEach'](_0x1658ba=>{const _0x58252d=_0x2f56be[_0x1658ba]||{'accounts':[]},_0x2bf4b9=document['getElementById']('provider-'+_0x1658ba+'-accounts');if(!_0x2bf4b9)return;const _0x3a47aa=Array['isArray'](_0x58252d['accounts'])?[..._0x58252d['accounts']]:[];if(_0x3a47aa['length']===0x0){_0x2bf4b9['innerHTML']='<div\x20class=\x22provider-no-accounts\x22>No\x20accounts\x20connected</div>';return;}_0x3a47aa['sort']((_0x4bc7bc,_0x193ed2)=>String(_0x4bc7bc['created_at']||'')['localeCompare'](String(_0x193ed2['created_at']||''))),_0x2bf4b9['innerHTML']=_0x3a47aa['map'](_0x48b35e=>{const _0x1584bd=_0x48b35e['type']==='api_key',_0x393a46=_0x48b35e['label']||_0x48b35e['email']||(_0x1584bd?'API\x20Key\x20Account':'OAuth\x20Account'),_0x1a79d6=_0x1584bd?(_0x48b35e['key_preview']||'Key\x20hidden')+'\x20·\x20'+formatEndpointInfo(_0x48b35e['endpoint']):_0x48b35e['email']||'OAuth\x20account',_0x43c238=escapeInlineOnclickArg(_0x1658ba),_0x2f14dd=escapeInlineOnclickArg(_0x48b35e['id']),_0xeda491=escapeInlineOnclickArg(_0x393a46);return'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22provider-account-row\x20'+(_0x48b35e['is_default']?'is-default':'')+'\x22\x20data-account-id=\x22'+_0x48b35e['id']+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22provider-account-info\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22provider-account-label\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x48b35e['is_default']?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20class=\x22account-active-check\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222.5\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<polyline\x20points=\x2220\x206\x209\x2017\x204\x2012\x22></polyline>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20':'<span\x20class=\x22account-inactive-spacer\x22></span>')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22account-label-text\x22>'+Utils['escapeHtml'](_0x393a46)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22account-type-badge\x20'+(_0x1584bd?'api-key':'oauth')+'\x22>'+(_0x1584bd?'API\x20Key':'OAuth')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x48b35e['is_default']?'<span\x20class=\x22account-default-badge\x22>Active</span>':'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22provider-account-email\x22>'+Utils['escapeHtml'](_0x1a79d6)+'</div>\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=\x22provider-account-actions\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-secondary\x20btn-small\x20provider-auth-test-btn\x22\x20title=\x22Test\x20connection\x22\x20onclick=\x22testProviderAccountAuth(\x27'+_0x43c238+'\x27,\x20\x27'+_0x2f14dd+'\x27)\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Test\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x3a47aa['length']>0x1?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-icon\x20btn-small'+(_0x48b35e['is_default']?'\x20btn-icon-active':'')+'\x22\x20title=\x22'+(_0x48b35e['is_default']?'Active\x20account':'Set\x20as\x20active')+'\x22\x20'+(_0x48b35e['is_default']?'disabled':'onclick=\x22setProviderAccountDefault(\x27'+_0x43c238+'\x27,\x20\x27'+_0x2f14dd+'\x27)\x22')+'>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2214\x22\x20height=\x2214\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<polyline\x20points=\x2220\x206\x209\x2017\x204\x2012\x22></polyline>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\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'+(_0x1584bd?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-icon\x20btn-small\x22\x20title=\x22Edit\x20API\x20key\x22\x20onclick=\x22openEditApiKeyModal(\x27'+_0x43c238+'\x27,\x20\x27'+_0x2f14dd+'\x27)\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2214\x22\x20height=\x2214\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M17\x203a2.828\x202.828\x200\x201\x201\x204\x204L7.5\x2020.5\x202\x2022l1.5-5.5L17\x203z\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\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\x20\x20<button\x20class=\x22btn-icon\x20btn-small\x22\x20title=\x22Rename\x22\x20onclick=\x22openRenameAccountModal(\x27'+_0x43c238+'\x27,\x20\x27'+_0x2f14dd+'\x27,\x20\x27'+_0xeda491+'\x27)\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2214\x22\x20height=\x2214\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M17\x203a2.828\x202.828\x200\x201\x201\x204\x204L7.5\x2020.5\x202\x2022l1.5-5.5L17\x203z\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\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<button\x20class=\x22btn-icon\x20btn-small\x20btn-danger\x22\x20title=\x22Remove\x22\x20onclick=\x22removeProviderAccount(\x27'+_0x43c238+'\x27,\x20\x27'+_0x2f14dd+'\x27,\x20\x27'+_0xeda491+'\x27)\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2214\x22\x20height=\x2214\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<polyline\x20points=\x223\x206\x205\x206\x2021\x206\x22></polyline>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M19\x206v14a2\x202\x200\x200\x201-2\x202H7a2\x202\x200\x200\x201-2-2V6m3\x200V4a2\x202\x200\x200\x201\x202-2h4a2\x202\x200\x200\x201\x202\x202v2\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20';})['join']('');});}function setupAiProviderListeners(){if(window['_aiProviderListenersSet'])return;window['_aiProviderListenersSet']=!![],['claude','codex','gemini']['forEach'](_0x36e8ca=>{const _0x37c745=document['getElementById']('provider-'+_0x36e8ca+'-add-btn');_0x37c745&&_0x37c745['addEventListener']('click',()=>openAiProviderAddModal(_0x36e8ca));});const _0x4cb0c0=document['getElementById']('ai-provider-add-modal');_0x4cb0c0&&(_0x4cb0c0['querySelector']('.modal-close')?.['addEventListener']('click',closeAiProviderAddModal),_0x4cb0c0['querySelector']('.modal-overlay')?.['addEventListener']('click',closeAiProviderAddModal),document['getElementById']('ai-provider-add-cancel-btn')?.['addEventListener']('click',closeAiProviderAddModal),document['getElementById']('ai-provider-add-submit-btn')?.['addEventListener']('click',submitAiProviderAddModal),_0x4cb0c0['querySelectorAll']('.ai-provider-tab')['forEach'](_0x29eeb4=>{_0x29eeb4['addEventListener']('click',()=>setAiProviderModalTab(_0x29eeb4['dataset']['tab']));}));document['getElementById']('ai-provider-api-key-endpoint-enabled')?.['addEventListener']('change',_0xc1605a=>{document['getElementById']('ai-provider-api-key-endpoint-fields')['hidden']=!_0xc1605a['target']['checked'];});const _0x4a1d14=document['getElementById']('ai-provider-edit-api-key-modal');_0x4a1d14&&(_0x4a1d14['querySelector']('.modal-close')?.['addEventListener']('click',closeEditApiKeyModal),_0x4a1d14['querySelector']('.modal-overlay')?.['addEventListener']('click',closeEditApiKeyModal),document['getElementById']('ai-provider-edit-cancel-btn')?.['addEventListener']('click',closeEditApiKeyModal),document['getElementById']('ai-provider-edit-save-btn')?.['addEventListener']('click',saveEditApiKeyModal));document['getElementById']('ai-provider-edit-endpoint-enabled')?.['addEventListener']('change',_0x1ccadb=>{document['getElementById']('ai-provider-edit-endpoint-fields')['hidden']=!_0x1ccadb['target']['checked'];});const _0x1cafdb=document['getElementById']('provider-rename-modal');_0x1cafdb&&(_0x1cafdb['querySelector']('.modal-close')?.['addEventListener']('click',closeProviderRename),_0x1cafdb['querySelector']('.modal-overlay')?.['addEventListener']('click',closeProviderRename),document['getElementById']('provider-rename-cancel-btn')?.['addEventListener']('click',closeProviderRename),document['getElementById']('provider-rename-save-btn')?.['addEventListener']('click',saveProviderRename),document['getElementById']('provider-rename-input')?.['addEventListener']('keypress',_0x348cfa=>{if(_0x348cfa['key']==='Enter')saveProviderRename();}));}async function openAiProviderAddModal(_0xea490a){const _0x93306b=document['getElementById']('ai-provider-add-modal');_0x93306b['dataset']['provider']=_0xea490a,document['getElementById']('ai-provider-add-title')['textContent']='Add\x20Account:\x20'+PROVIDER_NAMES[_0xea490a],resetAiProviderAddModal(),setAiProviderModalTab('oauth'),_0x93306b['hidden']=![],await startProviderAuth(_0xea490a);}function closeAiProviderAddModal(){document['getElementById']('ai-provider-add-modal')['hidden']=!![],currentProviderOAuthState=null;}async function startProviderAuth(_0x47d649){try{const _0xf2aa36=await API['post']('/settings/provider-auth/start',{'provider':_0x47d649});currentProviderOAuthState={'provider':_0x47d649,'state':_0xf2aa36['state'],'oauth_url':_0xf2aa36['oauth_url'],'flow_type':_0xf2aa36['flow_type']},document['getElementById']('provider-signin-instructions')['textContent']=_0xf2aa36['instructions'];const _0x462aef=document['getElementById']('provider-signin-open-btn');_0x462aef['onclick']=()=>window['open'](_0xf2aa36['oauth_url'],'_blank');const _0x4a797c=document['getElementById']('provider-signin-label'),_0x3c3322=document['getElementById']('provider-signin-localhost-notice');if(_0xf2aa36['flow_type']==='code_display'){_0x4a797c['textContent']='Authorization\x20Code',document['getElementById']('provider-signin-input')['placeholder']='Paste\x20the\x20code\x20shown\x20by\x20Anthropic';if(_0x3c3322)_0x3c3322['hidden']=!![];}else{_0x4a797c['textContent']='Callback\x20URL',document['getElementById']('provider-signin-input')['placeholder']='Paste\x20the\x20full\x20URL\x20from\x20your\x20browser\x27s\x20address\x20bar';if(_0x3c3322)_0x3c3322['hidden']=![];}}catch(_0x562727){console['error']('Failed\x20to\x20start\x20provider\x20auth:',_0x562727),showInlineMessage('ai-providers','error',_0x562727['message']||'Failed\x20to\x20start\x20OAuth\x20flow');}}function buildEndpointPayload(_0xf843b1,{enabled:_0xaec8f5,baseUrl:_0x499fcd,apiVersion:_0x308fd3}){if(!_0xaec8f5)return{'mode':'default'};const _0x3a0189=(_0x499fcd||'')['trim']();if(!_0x3a0189)throw new Error('Custom\x20endpoint\x20base\x20URL\x20is\x20required');if(!isValidHttpUrl(_0x3a0189))throw new Error('Custom\x20endpoint\x20base\x20URL\x20must\x20be\x20a\x20valid\x20http/https\x20URL');const _0x331538={'mode':'custom','base_url':_0x3a0189};return(_0xf843b1==='codex'||_0xf843b1==='gemini')&&(_0x308fd3||'')['trim']()&&(_0x331538['api_version']=_0x308fd3['trim']()),_0x331538;}async function submitAiProviderAddModal(){const _0x3a01ba=document['getElementById']('ai-provider-add-modal'),_0x7dca20=_0x3a01ba['dataset']['provider'],_0x4e74c1=_0x3a01ba['dataset']['activeTab']||'oauth',_0xf48d2c=document['getElementById']('ai-provider-add-submit-btn');try{_0xf48d2c['disabled']=!![],_0xf48d2c['textContent']=_0x4e74c1==='oauth'?'Signing\x20in...':'Adding...';if(_0x4e74c1==='oauth'){if(!currentProviderOAuthState)throw new Error('No\x20OAuth\x20flow\x20in\x20progress');const _0x55c60b=document['getElementById']('provider-signin-input')['value']['trim']();if(!_0x55c60b)throw new Error('Please\x20enter\x20the\x20authorization\x20code\x20or\x20URL');const _0x38856e=document['getElementById']('provider-signin-label-input')['value']['trim']()||null,_0x3d5b70=await API['post']('/settings/provider-auth/exchange',{'provider':_0x7dca20,'input':_0x55c60b,'state':currentProviderOAuthState['state'],'label':_0x38856e}),_0x51db30=_0x3d5b70['account']?.['email']?'\x20('+_0x3d5b70['account']['email']+')':'';showInlineMessage('ai-providers','success',_0x3d5b70['is_update']?'Account\x20refreshed'+_0x51db30:'Account\x20connected'+_0x51db30);}else{const _0x14ca7d=document['getElementById']('ai-provider-api-key-input')['value']['trim']();if(!_0x14ca7d)throw new Error('API\x20key\x20is\x20required');const _0x4c6be2=document['getElementById']('ai-provider-api-key-label')['value']['trim']()||null,_0x119905=buildEndpointPayload(_0x7dca20,{'enabled':document['getElementById']('ai-provider-api-key-endpoint-enabled')['checked'],'baseUrl':document['getElementById']('ai-provider-api-key-base-url')['value'],'apiVersion':document['getElementById']('ai-provider-api-key-api-version')['value']});await API['post']('/settings/provider-auth/add-api-key',{'provider':_0x7dca20,'api_key':_0x14ca7d,'label':_0x4c6be2,'endpoint':_0x119905}),showInlineMessage('ai-providers','success','API\x20key\x20account\x20added');}closeAiProviderAddModal(),await loadAiProviders();}catch(_0x44710e){console['error']('Failed\x20to\x20add\x20AI\x20provider\x20account:',_0x44710e),showInlineMessage('ai-providers','error',_0x44710e['message']||'Failed\x20to\x20add\x20account');}finally{_0xf48d2c['disabled']=![],_0xf48d2c['textContent']=(_0x3a01ba['dataset']['activeTab']||'oauth')==='oauth'?'Complete\x20Sign-In':'Add\x20API\x20Key';}}window['openEditApiKeyModal']=function(_0x53eb56,_0x513842){const _0x39c77c=state['providerStatus']?.[_0x53eb56]?.['accounts']?.['find'](_0x4217b8=>_0x4217b8['id']===_0x513842);if(!_0x39c77c||_0x39c77c['type']!=='api_key'){showInlineMessage('ai-providers','error','API\x20key\x20account\x20not\x20found');return;}const _0x564f86=document['getElementById']('ai-provider-edit-api-key-modal');_0x564f86['dataset']['provider']=_0x53eb56,_0x564f86['dataset']['accountId']=_0x513842,document['getElementById']('ai-provider-edit-label')['value']=_0x39c77c['label']||'',document['getElementById']('ai-provider-edit-api-key')['value']='',document['getElementById']('ai-provider-edit-endpoint-enabled')['checked']=_0x39c77c['endpoint']?.['mode']==='custom',document['getElementById']('ai-provider-edit-base-url')['value']=_0x39c77c['endpoint']?.['base_url']||'',document['getElementById']('ai-provider-edit-api-version')['value']=_0x39c77c['endpoint']?.['api_version']||'',document['getElementById']('ai-provider-edit-endpoint-fields')['hidden']=_0x39c77c['endpoint']?.['mode']!=='custom',_0x564f86['hidden']=![];};function closeEditApiKeyModal(){document['getElementById']('ai-provider-edit-api-key-modal')['hidden']=!![];}async function saveEditApiKeyModal(){const _0x197c6b=document['getElementById']('ai-provider-edit-api-key-modal'),_0x18e499=_0x197c6b['dataset']['provider'],_0x52f0fa=_0x197c6b['dataset']['accountId'],_0x5e6df4=document['getElementById']('ai-provider-edit-label')['value']['trim'](),_0x903ca=document['getElementById']('ai-provider-edit-api-key')['value']['trim'](),_0x160b14=document['getElementById']('ai-provider-edit-save-btn');if(!_0x5e6df4){showInlineMessage('ai-providers','error','Account\x20label\x20is\x20required');return;}try{_0x160b14['disabled']=!![],_0x160b14['textContent']='Saving...';const _0x1dcd10=buildEndpointPayload(_0x18e499,{'enabled':document['getElementById']('ai-provider-edit-endpoint-enabled')['checked'],'baseUrl':document['getElementById']('ai-provider-edit-base-url')['value'],'apiVersion':document['getElementById']('ai-provider-edit-api-version')['value']}),_0x759707={'label':_0x5e6df4,'endpoint':_0x1dcd10,'keep_existing_key':!_0x903ca};_0x903ca&&(_0x759707['api_key']=_0x903ca),await API['put']('/settings/provider-auth/'+_0x18e499+'/accounts/'+_0x52f0fa+'/api-key',_0x759707),closeEditApiKeyModal(),showInlineMessage('ai-providers','success','API\x20key\x20account\x20updated'),await loadAiProviders();}catch(_0x21ac86){console['error']('Failed\x20to\x20update\x20API\x20key\x20account:',_0x21ac86),showInlineMessage('ai-providers','error',_0x21ac86['message']||'Failed\x20to\x20update\x20API\x20key\x20account');}finally{_0x160b14['disabled']=![],_0x160b14['textContent']='Save';}}window['setProviderAccountDefault']=async function(_0x517beb,_0x2dc783){try{await API['post']('/settings/provider-auth/'+_0x517beb+'/accounts/'+_0x2dc783+'/default'),await loadAiProviders();}catch(_0x57ff51){console['error']('Failed\x20to\x20set\x20active\x20account:',_0x57ff51),showInlineMessage('ai-providers','error',_0x57ff51['message']||'Failed\x20to\x20set\x20active\x20account');}},window['testProviderAccountAuth']=async function(_0xefe4bb,_0x3db5d1){const _0x27ba40=PROVIDER_NAMES[_0xefe4bb]||_0xefe4bb,_0x4d0c8e=document['querySelector']('.provider-account-row[data-account-id=\x22'+_0x3db5d1+'\x22]'),_0x549f33=_0x4d0c8e?.['querySelector']('.provider-auth-test-btn'),_0x5d3d92=_0x549f33?.['textContent']||'Test';try{_0x549f33&&(_0x549f33['disabled']=!![],_0x549f33['textContent']='Testing...');const _0x57fad8=await API['post']('/settings/provider-auth/'+_0xefe4bb+'/accounts/'+_0x3db5d1+'/test',{}),_0x127243=_0x57fad8['message']||(_0x57fad8['success']?'Connection\x20successful':'Connection\x20failed');showInlineMessage('ai-providers',_0x57fad8['success']?'success':'error',_0x27ba40+':\x20'+_0x127243);}catch(_0x21ab4c){console['error']('Failed\x20to\x20test\x20provider\x20account:',_0x21ab4c),showInlineMessage('ai-providers','error',_0x27ba40+':\x20'+(_0x21ab4c['message']||'Connection\x20test\x20failed'));}finally{_0x549f33&&(_0x549f33['disabled']=![],_0x549f33['textContent']=_0x5d3d92);}},window['openRenameAccountModal']=function(_0x3c0676,_0x38e73b,_0x54f3eb){document['getElementById']('provider-rename-input')['value']=_0x54f3eb;const _0x98a1d6=document['getElementById']('provider-rename-modal');_0x98a1d6['dataset']['provider']=_0x3c0676,_0x98a1d6['dataset']['accountId']=_0x38e73b,_0x98a1d6['hidden']=![];};function closeProviderRename(){document['getElementById']('provider-rename-modal')['hidden']=!![];}async function saveProviderRename(){const _0x464544=document['getElementById']('provider-rename-modal'),_0x359494=_0x464544['dataset']['provider'],_0x2a017a=_0x464544['dataset']['accountId'],_0x2f22dd=document['getElementById']('provider-rename-input')['value']['trim']();if(!_0x2f22dd){showInlineMessage('ai-providers','error','Account\x20label\x20cannot\x20be\x20empty');return;}const _0x432b6d=document['getElementById']('provider-rename-save-btn');try{_0x432b6d['disabled']=!![],_0x432b6d['textContent']='Saving...',await API['put']('/settings/provider-auth/'+_0x359494+'/accounts/'+_0x2a017a,{'label':_0x2f22dd}),closeProviderRename(),showInlineMessage('ai-providers','success','Account\x20renamed'),await loadAiProviders();}catch(_0xbe9556){console['error']('Failed\x20to\x20rename\x20account:',_0xbe9556),showInlineMessage('ai-providers','error',_0xbe9556['message']||'Failed\x20to\x20rename\x20account');}finally{_0x432b6d['disabled']=![],_0x432b6d['textContent']='Rename';}}window['removeProviderAccount']=async function(_0x5a8e78,_0x5c0b78,_0x6e40b){const _0x3abcdb=await ConfirmDialog['show']({'title':'Remove\x20Account','message':'Are\x20you\x20sure\x20you\x20want\x20to\x20remove\x20\x22'+_0x6e40b+'\x22\x20from\x20'+PROVIDER_NAMES[_0x5a8e78]+'?','confirmText':'Remove','danger':!![]});if(!_0x3abcdb)return;try{await API['delete']('/settings/provider-auth/'+_0x5a8e78+'/accounts/'+_0x5c0b78),showInlineMessage('ai-providers','success','Account\x20removed'),await loadAiProviders();}catch(_0xfdfac){console['error']('Failed\x20to\x20remove\x20account:',_0xfdfac),showInlineMessage('ai-providers','error',_0xfdfac['message']||'Failed\x20to\x20remove\x20account');}};function stripDefaultLabelText(_0x4f30de){return String(_0x4f30de||'')['replace'](/\s*\(default\)\s*/ig,'\x20')['trim']();}async function loadModelConfig(){try{const [_0x194e51,_0x390094]=await Promise['all']([API['get']('/settings/available-models'),API['get']('/settings/models')]);state['availableModels']=_0x194e51,state['modelConfig']=_0x390094['models']||{},populateModelDropdowns(),setModelValues();}catch(_0x552ae6){console['error']('Failed\x20to\x20load\x20model\x20configuration:',_0x552ae6);throw _0x552ae6;}}function populateModelDropdowns(){['claude','codex','gemini']['forEach'](_0x3a419d=>{const _0x261da1=document['getElementById']('model-'+_0x3a419d+'-container');if(!_0x261da1)return;let _0x3fca1e=_0x261da1['querySelector']('select');!_0x3fca1e&&(_0x3fca1e=document['createElement']('select'),_0x3fca1e['id']='model-'+_0x3a419d,_0x261da1['appendChild'](_0x3fca1e));const _0x52f13b=state['availableModels'][_0x3a419d]||{'models':[]},_0x1784ca=_0x52f13b['models']||[];_0x3fca1e['innerHTML']='<option\x20value=\x22\x22>Default</option>'+_0x1784ca['map'](_0x10c2f1=>'<option\x20value=\x22'+_0x10c2f1['id']+'\x22>'+Utils['escapeHtml'](stripDefaultLabelText(_0x10c2f1['displayName']))+'</option>')['join'](''),!customSelects[_0x3a419d+'Model']&&(customSelects[_0x3a419d+'Model']=new CustomSelect(_0x3fca1e,{'searchable':![]})),_0x3a419d==='codex'&&_0x3fca1e['addEventListener']('change',updateCodexReasoningVisibility);}),populateClaudeEffortLevels(),populateCodexReasoningLevels();}function populateClaudeEffortLevels(){const _0x7d05c3=document['getElementById']('model-claude-effort-container');if(!_0x7d05c3)return;let _0x15dd7e=_0x7d05c3['querySelector']('select');!_0x15dd7e&&(_0x15dd7e=document['createElement']('select'),_0x15dd7e['id']='model-claude-effort',_0x7d05c3['appendChild'](_0x15dd7e));const _0x1f1b18=state['availableModels']['claude']||{},_0x4cb679=_0x1f1b18['effortLevels']||[];_0x15dd7e['innerHTML']='<option\x20value=\x22\x22>Default</option>'+_0x4cb679['map'](_0x54388f=>'<option\x20value=\x22'+_0x54388f['id']+'\x22>'+Utils['escapeHtml'](stripDefaultLabelText(_0x54388f['displayName']))+'</option>')['join'](''),!customSelects['claudeEffort']&&(customSelects['claudeEffort']=new CustomSelect(_0x15dd7e,{'searchable':![]}));}function populateCodexReasoningLevels(){const _0x281ff5=document['getElementById']('model-codex-reasoning-container');if(!_0x281ff5)return;let _0x14bd94=_0x281ff5['querySelector']('select');!_0x14bd94&&(_0x14bd94=document['createElement']('select'),_0x14bd94['id']='model-codex-reasoning',_0x281ff5['appendChild'](_0x14bd94));const _0x2ac3ad=state['availableModels']['codex']||{},_0x4348a=_0x2ac3ad['reasoningLevels']||[];_0x14bd94['innerHTML']='<option\x20value=\x22\x22>Default</option>'+_0x4348a['map'](_0x476fae=>'<option\x20value=\x22'+_0x476fae['id']+'\x22>'+Utils['escapeHtml'](stripDefaultLabelText(_0x476fae['displayName']))+'</option>')['join'](''),!customSelects['codexReasoning']&&(customSelects['codexReasoning']=new CustomSelect(_0x14bd94,{'searchable':![]}));}function setModelValues(){['claude','codex','gemini']['forEach'](_0x448832=>{const _0xe16bae=document['getElementById']('model-'+_0x448832);if(_0xe16bae){const _0x1f0e1d=state['modelConfig'][_0x448832];if(_0x1f0e1d&&!_0xe16bae['querySelector']('option[value=\x22'+_0x1f0e1d+'\x22]')){const _0x1057f5=document['createElement']('option');_0x1057f5['value']=_0x1f0e1d,_0x1057f5['textContent']=_0x1f0e1d+'\x20(current)',_0xe16bae['appendChild'](_0x1057f5);}_0xe16bae['value']=_0x1f0e1d||'';}});const _0xdc6717=document['getElementById']('model-codex-reasoning');_0xdc6717&&(_0xdc6717['value']=state['modelConfig']['codex_reasoning_level']||'');const _0xd25281=document['getElementById']('model-claude-effort');_0xd25281&&(_0xd25281['value']=state['modelConfig']['claude_effort_level']||''),updateClaudeEffortVisibility(),updateCodexReasoningVisibility();}function updateClaudeEffortVisibility(){const _0x14f8b4=document['getElementById']('claude-effort-row'),_0x35d89d=state['availableModels']['claude']||{};if(!_0x14f8b4)return;_0x14f8b4['hidden']=_0x35d89d['supportsEffortLevel']!==!![];}function updateCodexReasoningVisibility(){const _0x253495=document['getElementById']('model-codex'),_0xc9f15e=document['getElementById']('codex-reasoning-row'),_0x4b790f=state['availableModels']['codex']||{};if(!_0xc9f15e)return;const _0xb91602=_0x4b790f['supportsReasoningLevel']===!![],_0x3a87f6=_0x253495?.['value']||'',_0x447a04=(_0x4b790f['models']||[])['find'](_0x20fc27=>_0x20fc27['id']===_0x3a87f6),_0x4c3f88=_0xb91602&&(!_0x3a87f6||_0x447a04&&_0x447a04['reasoningLevels']?.['length']>0x0);_0xc9f15e['hidden']=!_0x4c3f88;}async function saveModelConfig(){try{const _0x1e61a0={};['claude','codex','gemini']['forEach'](_0x50fdfe=>{const _0x2cd9e7=document['getElementById']('model-'+_0x50fdfe);_0x2cd9e7&&_0x2cd9e7['value']&&(_0x1e61a0[_0x50fdfe]=_0x2cd9e7['value']);});const _0x392ccb=document['getElementById']('model-codex-reasoning');_0x392ccb&&_0x392ccb['value']&&(_0x1e61a0['codex_reasoning_level']=_0x392ccb['value']);const _0x301d92=document['getElementById']('model-claude-effort');_0x301d92&&_0x301d92['value']&&(_0x1e61a0['claude_effort_level']=_0x301d92['value']),await API['put']('/settings/models',{'models':_0x1e61a0}),state['modelConfig']=_0x1e61a0,showInlineMessage('models','success','Model\x20configuration\x20saved');}catch(_0x2518bf){console['error']('Failed\x20to\x20save\x20model\x20configuration:',_0x2518bf),showInlineMessage('models','error','Failed\x20to\x20save\x20model\x20configuration');}}async function loadEmailSettings(){try{const _0x12c2f9=await API['get']('/settings/email');state['emailConfig']=_0x12c2f9,document['getElementById']('email-host')['value']=_0x12c2f9['host']||'',document['getElementById']('email-port')['value']=_0x12c2f9['port']||0x24b,document['getElementById']('email-secure')['checked']=_0x12c2f9['secure']||![],document['getElementById']('email-user')['value']=_0x12c2f9['user']||'',document['getElementById']('email-password')['value']='',document['getElementById']('email-from')['value']=_0x12c2f9['from']||'',document['getElementById']('email-from-name')['value']=_0x12c2f9['from_name']||'';const _0x270f97=document['getElementById']('email-password-status');_0x270f97&&(_0x270f97['textContent']=_0x12c2f9['has_password']?'Password\x20is\x20configured\x20(leave\x20blank\x20to\x20keep)':'');}catch(_0x39ee65){console['error']('Failed\x20to\x20load\x20email\x20settings:',_0x39ee65);throw _0x39ee65;}}async function saveEmailSettings(){try{const _0x2a3876={'host':document['getElementById']('email-host')['value']['trim'](),'port':parseInt(document['getElementById']('email-port')['value'],0xa)||0x24b,'secure':document['getElementById']('email-secure')['checked'],'user':document['getElementById']('email-user')['value']['trim'](),'from':document['getElementById']('email-from')['value']['trim'](),'from_name':document['getElementById']('email-from-name')['value']['trim']()},_0x40858=document['getElementById']('email-password')['value'];_0x40858?_0x2a3876['password']=_0x40858:_0x2a3876['keep_existing_password']=!![],await API['put']('/settings/email',_0x2a3876),showInlineMessage('email','success','Email\x20settings\x20saved'),await loadEmailSettings();}catch(_0x4ad748){console['error']('Failed\x20to\x20save\x20email\x20settings:',_0x4ad748),showInlineMessage('email','error','Failed\x20to\x20save\x20email\x20settings');}}function showEmailTestResult(_0x4eeadf,_0x4a34ac){const _0x300ad2=document['getElementById']('email-test-result-row'),_0x582ab5=document['getElementById']('email-test-result');_0x582ab5['textContent']=_0x4a34ac,_0x582ab5['className']='email-test-result\x20'+(_0x4eeadf?'success':'error');if(_0x300ad2)_0x300ad2['hidden']=![];}async function testEmailConnection(){const _0x339ac3=document['getElementById']('email-test-result-row'),_0x5ee04f=document['getElementById']('email-test-result');_0x5ee04f['textContent']='Testing\x20connection...',_0x5ee04f['className']='email-test-result';if(_0x339ac3)_0x339ac3['hidden']=![];try{const _0x336696={'host':document['getElementById']('email-host')['value']['trim'](),'port':parseInt(document['getElementById']('email-port')['value'],0xa)||0x24b,'secure':document['getElementById']('email-secure')['checked'],'user':document['getElementById']('email-user')['value']['trim']()},_0x12af51=document['getElementById']('email-password')['value'];_0x12af51?_0x336696['password']=_0x12af51:_0x336696['keep_existing_password']=!![];const _0x3f2651=await API['post']('/settings/email/test-connection',_0x336696);_0x3f2651['success']?showEmailTestResult(!![],'SMTP\x20connection\x20successful'):showEmailTestResult(![],'Connection\x20failed:\x20'+_0x3f2651['error']);}catch(_0x4beb8a){console['error']('Failed\x20to\x20test\x20email\x20connection:',_0x4beb8a),showEmailTestResult(![],'Failed\x20to\x20test\x20connection:\x20'+_0x4beb8a['message']);}}async function sendTestEmail(){const _0x4fa16a=document['getElementById']('email-test-recipient')['value']['trim']();if(!_0x4fa16a){showEmailTestResult(![],'Please\x20enter\x20a\x20recipient\x20email\x20address');return;}const _0x12fafc=document['getElementById']('email-test-result-row'),_0x2f9f7e=document['getElementById']('email-test-result');_0x2f9f7e['textContent']='Sending\x20test\x20email...',_0x2f9f7e['className']='email-test-result';if(_0x12fafc)_0x12fafc['hidden']=![];try{const _0x17ad7b={'host':document['getElementById']('email-host')['value']['trim'](),'port':parseInt(document['getElementById']('email-port')['value'],0xa)||0x24b,'secure':document['getElementById']('email-secure')['checked'],'user':document['getElementById']('email-user')['value']['trim'](),'from':document['getElementById']('email-from')['value']['trim'](),'from_name':document['getElementById']('email-from-name')['value']['trim'](),'test_recipient':_0x4fa16a},_0x5da369=document['getElementById']('email-password')['value'];_0x5da369?_0x17ad7b['password']=_0x5da369:_0x17ad7b['keep_existing_password']=!![];const _0x64b33=await API['post']('/settings/email/send-test',_0x17ad7b);_0x64b33['success']?showEmailTestResult(!![],'Test\x20email\x20sent\x20to\x20'+_0x4fa16a):showEmailTestResult(![],'Failed\x20to\x20send:\x20'+_0x64b33['error']);}catch(_0x5e6933){console['error']('Failed\x20to\x20send\x20test\x20email:',_0x5e6933),showEmailTestResult(![],'Failed\x20to\x20send\x20test\x20email:\x20'+_0x5e6933['message']);}}async function loadGitProviders(){try{const [_0x6282c4,_0x3a9db5,_0x47d419]=await Promise['all']([API['get']('/settings/git-providers'),API['get']('/settings/git-providers/config')['catch'](()=>({})),API['getTeams']()['catch'](()=>({'teams':[]}))]);state['gitProviders']=_0x6282c4['providers']||[];const _0x5b7e16=_0x3a9db5['setup_repo_auth']?.['mode'];state['teams']=_0x47d419['teams']||[],state['gitProvidersConfig']={'token_expiry_days':_0x3a9db5['token_expiry_days']||0x1,'setup_repo_auth':{'mode':_0x5b7e16==='provider'||_0x5b7e16==='user'?_0x5b7e16:'local','provider':_0x3a9db5['setup_repo_auth']?.['provider']||null}};const _0x1f759e=document['getElementById']('git-token-expiration');_0x1f759e&&(_0x1f759e['value']=state['gitProvidersConfig']['token_expiry_days']),populateSetupRepoAuthControls(),renderGitProviders();}catch(_0x641868){console['error']('Failed\x20to\x20load\x20git\x20providers:',_0x641868);throw _0x641868;}}async function saveGitTokenExpiration(){try{const _0x220322=parseInt(document['getElementById']('git-token-expiration')['value'],0xa);if(isNaN(_0x220322)||_0x220322<0x1){showInlineMessage('git-providers','error','Token\x20expiration\x20must\x20be\x20at\x20least\x201\x20day');return;}await API['put']('/settings/git-providers/config',{'token_expiry_days':_0x220322}),state['gitProvidersConfig']['token_expiry_days']=_0x220322,showInlineMessage('git-providers','success','Token\x20expiration\x20saved');}catch(_0x4c24df){console['error']('Failed\x20to\x20save\x20token\x20expiration:',_0x4c24df),showInlineMessage('git-providers','error','Failed\x20to\x20save\x20token\x20expiration');}}function populateSetupRepoAuthControls(){const _0x6e2ddf=document['getElementById']('setup-repo-auth-mode'),_0x379470=document['getElementById']('setup-repo-auth-provider');if(!_0x6e2ddf||!_0x379470)return;const _0x81dad5=state['gitProvidersConfig']['setup_repo_auth']||{'mode':'local','provider':null};_0x379470['innerHTML']='<option\x20value=\x22\x22>--\x20Select\x20a\x20provider\x20--</option>';for(const _0x1ae261 of state['gitProviders']){const _0x2a5382=document['createElement']('option');_0x2a5382['value']=_0x1ae261['name'],_0x2a5382['textContent']=_0x1ae261['name'],_0x379470['appendChild'](_0x2a5382);}const _0x3c7c6a=_0x81dad5['mode']==='provider'||_0x81dad5['mode']==='user'?_0x81dad5['mode']:'local';_0x6e2ddf['value']=_0x3c7c6a,_0x379470['value']=_0x81dad5['provider']||'';if(_0x81dad5['provider']&&!state['gitProviders']['some'](_0x334a84=>_0x334a84['name']===_0x81dad5['provider'])){const _0x1afac9=document['createElement']('option');_0x1afac9['value']=_0x81dad5['provider'],_0x1afac9['textContent']=_0x81dad5['provider']+'\x20(unavailable)',_0x1afac9['disabled']=!![],_0x1afac9['selected']=!![],_0x379470['appendChild'](_0x1afac9);}onSetupRepoAuthModeChange(),hideSetupRepoAuthTestResult();}function onSetupRepoAuthModeChange(){const _0x2ea599=document['getElementById']('setup-repo-auth-mode')?.['value']||'local',_0x47ef4b=document['getElementById']('setup-repo-provider-row'),_0xf04830=document['getElementById']('setup-repo-provider-hint');_0x47ef4b&&(_0x47ef4b['hidden']=_0x2ea599!=='provider'&&_0x2ea599!=='user'),_0xf04830&&(_0xf04830['textContent']=_0x2ea599==='user'?'Required\x20when\x20using\x20Git\x20Provider\x20mode.\x20Uses\x20your\x20personal\x20OAuth\x20token\x20via\x20the\x20selected\x20provider.':'Required\x20when\x20using\x20Git\x20Provider\x20mode.\x20Uses\x20app\x20credentials\x20from\x20the\x20selected\x20provider.'),hideSetupRepoAuthTestResult();}function initGitConnectionsRequiredModal(){const _0x25f922=document['getElementById']('git-connections-required-modal');if(!_0x25f922)return;const _0x3311d5=_0x25f922['querySelector']('.modal-close'),_0x310fef=document['getElementById']('git-connections-close-btn'),_0x50451b=_0x25f922['querySelector']('.modal-overlay'),_0x5226b2=()=>{_0x25f922['hidden']=!![];};_0x3311d5?.['addEventListener']('click',_0x5226b2),_0x310fef?.['addEventListener']('click',_0x5226b2),_0x50451b?.['addEventListener']('click',_0x5226b2);}function showSetupRepoConnectPrompt(_0x4e7ebc,_0x1ca86b){const _0x528d07=document['getElementById']('git-connections-required-modal'),_0x577df3=document['getElementById']('git-connections-required-list'),_0x3b2291=escapeInlineOnclickArg(_0x4e7ebc);if(!_0x528d07||!_0x577df3){showInlineMessage('git-providers','error','Your\x20account\x20is\x20not\x20connected\x20to\x20provider\x20\x22'+_0x4e7ebc+'\x22.\x20Please\x20connect\x20via\x20Profile\x20settings.');return;}const _0x2d46d8=_0x1ca86b==='github'?'<svg\x20viewBox=\x220\x200\x2098\x2096\x22\x20fill=\x22currentColor\x22><path\x20fill-rule=\x22evenodd\x22\x20clip-rule=\x22evenodd\x22\x20d=\x22M48.854\x200C21.839\x200\x200\x2022\x200\x2049.217c0\x2021.756\x2013.993\x2040.172\x2033.405\x2046.69\x202.427.49\x203.316-1.059\x203.316-2.362\x200-1.141-.08-5.052-.08-9.127-13.59\x202.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015\x204.934.326\x207.523\x205.052\x207.523\x205.052\x204.367\x207.496\x2011.404\x205.378\x2014.235\x204.074.404-3.178\x201.699-5.378\x203.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283\x200-5.378\x201.94-9.778\x205.014-13.2-.485-1.222-2.184-6.275.486-13.038\x200\x200\x204.125-1.304\x2013.426\x205.052a46.97\x2046.97\x200\x200\x201\x2012.214-1.63c4.125\x200\x208.33.571\x2012.213\x201.63\x209.302-6.356\x2013.427-5.052\x2013.427-5.052\x202.67\x206.763.97\x2011.816.485\x2013.038\x203.155\x203.422\x205.015\x207.822\x205.015\x2013.2\x200\x2018.905-11.404\x2023.06-22.324\x2024.283\x201.78\x201.548\x203.316\x204.481\x203.316\x209.126\x200\x206.6-.08\x2011.897-.08\x2013.526\x200\x201.304.89\x202.853\x203.316\x202.364\x2019.412-6.52\x2033.405-24.935\x2033.405-46.691C97.707\x2022\x2075.788\x200\x2048.854\x200z\x22/></svg>':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22currentColor\x22><path\x20d=\x22M13.05\x204.24L6.56\x2018.05l2.09.81L18\x209.77l.3-.41-5.25-5.12zm-4.21\x202.6l5.79\x205.64-.42.4-9.28\x202.6\x203.91-8.64zm-1.79\x2010.1l9.31-2.59.43-.39\x201.61\x201.57L4.67\x2019.2l2.38-2.26z\x22/></svg>';_0x577df3['innerHTML']='\x0a\x20\x20\x20\x20<div\x20class=\x22git-provider-card\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22git-provider-card-header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22git-provider-card-info\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22git-provider-card-icon\x22>'+_0x2d46d8+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22git-provider-card-details\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22git-provider-card-name\x22>'+Utils['escapeHtml'](_0x4e7ebc)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-primary\x20btn-small\x22\x20onclick=\x22connectGitProviderFromModal(\x27'+_0x3b2291+'\x27)\x22>Connect</button>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20',_0x528d07['hidden']=![];}window['connectGitProviderFromModal']=async function(_0x211eeb){try{const _0x57ed93=await API['post']('/api/git-oauth/start',{'provider_name':_0x211eeb,'redirect_after':window['location']['pathname']+'?section=git-providers&git_connection=success&provider='+encodeURIComponent(_0x211eeb)}),_0xfbab8a=document['getElementById']('git-connections-required-modal');if(_0xfbab8a)_0xfbab8a['hidden']=!![];window['location']['href']=_0x57ed93['oauth_url'];}catch(_0x1d534a){console['error']('Failed\x20to\x20start\x20OAuth\x20flow:',_0x1d534a),showInlineMessage('git-providers','error',_0x1d534a['message']||'Failed\x20to\x20start\x20connection');}};const PENDING_SETUP_REPO_ACTION_KEY='pendingSetupRepoAction_settings';function savePendingSetupRepoAction(_0xc6c54b){sessionStorage['setItem'](PENDING_SETUP_REPO_ACTION_KEY,JSON['stringify']({'action':_0xc6c54b,'timestamp':Date['now']()}));}function loadAndClearPendingSetupRepoAction(){try{const _0x1b14fd=sessionStorage['getItem'](PENDING_SETUP_REPO_ACTION_KEY);sessionStorage['removeItem'](PENDING_SETUP_REPO_ACTION_KEY);if(!_0x1b14fd)return null;const _0xdc58ad=JSON['parse'](_0x1b14fd);if(Date['now']()-_0xdc58ad['timestamp']>0xa*0x3c*0x3e8)return null;return _0xdc58ad;}catch{return null;}}async function handleSetupRepoOAuthReturn(){const _0x4a38d7=new URLSearchParams(window['location']['search']);if(_0x4a38d7['get']('git_connection')!=='success')return;const _0x49f68b=new URL(window['location']);_0x49f68b['searchParams']['delete']('git_connection'),_0x49f68b['searchParams']['delete']('provider'),window['history']['replaceState']({},'',_0x49f68b),showInlineMessage('git-providers','success','Account\x20connected\x20successfully');const _0x28f624=loadAndClearPendingSetupRepoAction();_0x28f624?.['action']==='test'&&setTimeout(()=>testSetupRepoAuthSettings(),0x1f4);}function hideSetupRepoAuthTestResult(){const _0x146847=document['getElementById']('setup-repo-auth-test-result-row');_0x146847&&(_0x146847['hidden']=!![]);}function showSetupRepoAuthTestResult(_0x4539b9,_0x1c7801){const _0x519344=document['getElementById']('setup-repo-auth-test-result-row'),_0x27ea11=document['getElementById']('setup-repo-auth-test-result');if(!_0x519344||!_0x27ea11)return;_0x27ea11['className']='setup-repo-auth-test-result\x20'+_0x4539b9,_0x27ea11['textContent']=_0x1c7801,_0x519344['hidden']=![];}function setSetupRepoAuthTestWorkingState(_0x346bf5){const _0x2bf317=document['getElementById']('test-setup-repo-auth-btn');if(!_0x2bf317)return;if(_0x346bf5){!_0x2bf317['dataset']['defaultText']&&(_0x2bf317['dataset']['defaultText']=_0x2bf317['textContent']['trim']()||'Test\x20Access');_0x2bf317['disabled']=!![],_0x2bf317['classList']['add']('is-working'),_0x2bf317['textContent']='Testing',_0x2bf317['setAttribute']('aria-busy','true');return;}_0x2bf317['disabled']=![],_0x2bf317['classList']['remove']('is-working'),_0x2bf317['textContent']=_0x2bf317['dataset']['defaultText']||'Test\x20Access',_0x2bf317['removeAttribute']('aria-busy');}function collectSetupRepoAuthPayload(){const _0x1c6e37=document['getElementById']('setup-repo-auth-mode')?.['value'],_0x390425=_0x1c6e37==='provider'||_0x1c6e37==='user'?_0x1c6e37:'local',_0x30c780=document['getElementById']('setup-repo-auth-provider')?.['value']||null;return{'mode':_0x390425,'provider':_0x390425==='provider'||_0x390425==='user'?_0x30c780:null};}async function saveSetupRepoAuthSettings(){try{const _0x5348ca=collectSetupRepoAuthPayload();if((_0x5348ca['mode']==='provider'||_0x5348ca['mode']==='user')&&!_0x5348ca['provider']){showInlineMessage('git-providers','error','Please\x20select\x20a\x20provider\x20for\x20setup\x20repository\x20authentication');return;}await API['put']('/settings/git-providers/config',{'setup_repo_auth':_0x5348ca}),state['gitProvidersConfig']['setup_repo_auth']=_0x5348ca,showInlineMessage('git-providers','success','Setup\x20repository\x20authentication\x20saved'),hideSetupRepoAuthTestResult();}catch(_0x517768){console['error']('Failed\x20to\x20save\x20setup\x20repo\x20auth\x20settings:',_0x517768),showInlineMessage('git-providers','error',_0x517768['message']||'Failed\x20to\x20save\x20setup\x20repository\x20authentication');}}async function testSetupRepoAuthSettings(){const _0x9a44ee=collectSetupRepoAuthPayload();try{if((_0x9a44ee['mode']==='provider'||_0x9a44ee['mode']==='user')&&!_0x9a44ee['provider']){showSetupRepoAuthTestResult('error','Select\x20a\x20provider\x20before\x20testing\x20setup\x20repository\x20authentication.');return;}setSetupRepoAuthTestWorkingState(!![]),showSetupRepoAuthTestResult('working','Testing\x20access...');const _0x26d42f=await API['post']('/settings/git-providers/setup-repo-auth/test',{'setup_repo_auth':_0x9a44ee});showSetupRepoAuthTestResult('success',_0x26d42f['message']||'Setup\x20repository\x20authentication\x20test\x20succeeded.');}catch(_0x1be956){if(_0x1be956['message']==='setup_repo_user_not_connected'){savePendingSetupRepoAction('test'),showSetupRepoAuthTestResult('error','Your\x20account\x20is\x20not\x20connected.\x20Connect\x20to\x20test\x20with\x20user\x20credentials.');const _0x2418fe=_0x9a44ee['provider'],_0x551db4=state['gitProviders']['find'](_0x5beba0=>_0x5beba0['name']===_0x2418fe)?.['type']||null;showSetupRepoConnectPrompt(_0x2418fe,_0x551db4);}else showSetupRepoAuthTestResult('error',_0x1be956['message']||'Setup\x20repository\x20authentication\x20test\x20failed.');}finally{setSetupRepoAuthTestWorkingState(![]);}}function getTeamAssignmentLabel(_0x2a3602){const _0x15e7ed=_0x2a3602['allowedTeams'];if(!Array['isArray'](_0x15e7ed)||_0x15e7ed['length']===0x0)return'No\x20teams\x20assigned';if(_0x15e7ed['includes']('*'))return'All\x20Teams';const _0x1fb879=new Map(state['teams']['map'](_0x133a47=>[_0x133a47['id'],_0x133a47['name']])),_0x28b045=_0x15e7ed['map'](_0x5120d9=>_0x1fb879['get'](_0x5120d9)||_0x5120d9)['sort']();return _0x28b045['join'](',\x20');}function renderGitProviders(){const _0x49f51d=document['getElementById']('git-providers-list');if(!_0x49f51d)return;if(state['gitProviders']['length']===0x0){_0x49f51d['innerHTML']='<p\x20class=\x22text-muted\x22>No\x20git\x20providers\x20configured.</p>';return;}const _0x1c2fa5=state['gitProviders']['map'](_0x4f1386=>{const _0x524b32=_0x4f1386['type']==='github'?'GitHub':_0x4f1386['type']==='azure-devops'?'Azure\x20DevOps':_0x4f1386['type'],_0x5863dd=getTeamAssignmentLabel(_0x4f1386),_0x2a1341=escapeInlineOnclickArg(_0x4f1386['name']);return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22git-provider-item\x22\x20data-name=\x22'+Utils['escapeHtml'](_0x4f1386['name'])+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22git-provider-info\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22git-provider-name\x22>'+Utils['escapeHtml'](_0x4f1386['name'])+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22git-provider-type\x22>'+Utils['escapeHtml'](_0x524b32)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20style=\x22font-size:\x200.8em;\x20color:\x20var(--color-text-secondary,\x20#888);\x20margin-top:\x202px;\x22>'+Utils['escapeHtml'](_0x5863dd)+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22git-provider-actions\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-icon\x22\x20onclick=\x22manageGitProviderTeams(\x27'+_0x2a1341+'\x27)\x22\x20title=\x22Manage\x20Teams\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2214\x22\x20height=\x2214\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M17\x2021v-2a4\x204\x200\x200\x200-4-4H5a4\x204\x200\x200\x200-4\x204v2\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<circle\x20cx=\x229\x22\x20cy=\x227\x22\x20r=\x224\x22></circle>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M23\x2021v-2a4\x204\x200\x200\x200-3-3.87\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M16\x203.13a4\x204\x200\x200\x201\x200\x207.75\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-icon\x22\x20onclick=\x22editGitProvider(\x27'+_0x2a1341+'\x27)\x22\x20title=\x22Edit\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2214\x22\x20height=\x2214\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M11\x204H4a2\x202\x200\x200\x200-2\x202v14a2\x202\x200\x200\x200\x202\x202h14a2\x202\x200\x200\x200\x202-2v-7\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M18.5\x202.5a2.121\x202.121\x200\x200\x201\x203\x203L12\x2015l-4\x201\x201-4\x209.5-9.5z\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-icon\x20btn-danger\x22\x20onclick=\x22deleteGitProvider(\x27'+_0x2a1341+'\x27)\x22\x20title=\x22Delete\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2214\x22\x20height=\x2214\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<polyline\x20points=\x223\x206\x205\x206\x2021\x206\x22></polyline>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M19\x206v14a2\x202\x200\x200\x201-2\x202H7a2\x202\x200\x200\x201-2-2V6m3\x200V4a2\x202\x200\x200\x201\x202-2h4a2\x202\x200\x200\x201\x202\x202v2\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';})['join']('');_0x49f51d['innerHTML']=_0x1c2fa5;}function setupGitProviderListeners(){const _0x4f4b1c=document['getElementById']('git-provider-modal');_0x4f4b1c&&(_0x4f4b1c['querySelector']('.modal-close')?.['addEventListener']('click',closeGitProviderModal),_0x4f4b1c['querySelector']('.modal-overlay')?.['addEventListener']('click',closeGitProviderModal),document['getElementById']('git-provider-cancel-btn')?.['addEventListener']('click',closeGitProviderModal),document['getElementById']('git-provider-save-btn')?.['addEventListener']('click',saveGitProvider),document['getElementById']('git-provider-test-btn')?.['addEventListener']('click',testGitProviderConnection),document['getElementById']('git-provider-import-key-btn')?.['addEventListener']('click',()=>{document['getElementById']('git-provider-key-input')?.['click']();}),document['getElementById']('git-provider-key-input')?.['addEventListener']('change',handleKeyFileImport),document['getElementById']('git-provider-import-cert-btn')?.['addEventListener']('click',()=>{document['getElementById']('git-provider-cert-input')?.['click']();}),document['getElementById']('git-provider-cert-input')?.['addEventListener']('change',handleCertFileImport));const _0x59b320=document['getElementById']('delete-git-provider-modal');_0x59b320&&(_0x59b320['querySelector']('.modal-close')?.['addEventListener']('click',closeDeleteGitProviderModal),_0x59b320['querySelector']('.modal-overlay')?.['addEventListener']('click',closeDeleteGitProviderModal),document['getElementById']('delete-git-provider-cancel-btn')?.['addEventListener']('click',closeDeleteGitProviderModal),document['getElementById']('delete-git-provider-confirm-btn')?.['addEventListener']('click',confirmDeleteGitProvider));const _0x1f43ab=document['getElementById']('git-provider-teams-modal');_0x1f43ab&&(_0x1f43ab['querySelector']('.modal-close')?.['addEventListener']('click',closeGitProviderTeamsModal),_0x1f43ab['querySelector']('.modal-overlay')?.['addEventListener']('click',closeGitProviderTeamsModal),document['getElementById']('git-provider-teams-cancel-btn')?.['addEventListener']('click',closeGitProviderTeamsModal),document['getElementById']('git-provider-teams-save-btn')?.['addEventListener']('click',saveGitProviderTeams),document['getElementById']('git-provider-teams-mode')?.['addEventListener']('change',onGitProviderTeamsModeChange),document['getElementById']('git-provider-add-team-btn')?.['addEventListener']('click',addGitProviderTeam));}function initGitProviderSelects(){const _0x2345b5=document['getElementById']('git-provider-type-container');if(_0x2345b5&&!document['getElementById']('git-provider-type')){const _0x523cc5=document['createElement']('select');_0x523cc5['id']='git-provider-type',_0x523cc5['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22github\x22>GitHub\x20App</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22azure-devops\x22>Azure\x20DevOps</option>\x0a\x20\x20\x20\x20',_0x2345b5['appendChild'](_0x523cc5),customSelects['gitProviderType']=new CustomSelect(_0x523cc5,{'searchable':![]}),_0x523cc5['addEventListener']('change',window['onGitProviderTypeChange']);}const _0x49efd7=document['getElementById']('git-provider-auth-method-container');if(_0x49efd7&&!document['getElementById']('git-provider-auth-method')){const _0x3cfc06=document['createElement']('select');_0x3cfc06['id']='git-provider-auth-method',_0x3cfc06['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22secret\x22>Client\x20Secret</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22certificate\x22>Certificate</option>\x0a\x20\x20\x20\x20',_0x49efd7['appendChild'](_0x3cfc06),customSelects['gitProviderAuthMethod']=new CustomSelect(_0x3cfc06,{'searchable':![]}),_0x3cfc06['addEventListener']('change',window['onAzureAuthMethodChange']);}}function initGitHubSetupSelects(){const _0x38aded=document['getElementById']('github-setup-host-type-container');if(_0x38aded&&!document['getElementById']('github-setup-host-type')){const _0x6d8ec0=document['createElement']('select');_0x6d8ec0['id']='github-setup-host-type',_0x6d8ec0['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22github-com\x22>github.com</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22enterprise-cloud\x22>GitHub\x20Enterprise\x20Cloud\x20(ghe.com)</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22enterprise-server\x22>GitHub\x20Enterprise\x20Server</option>\x0a\x20\x20\x20\x20',_0x38aded['appendChild'](_0x6d8ec0),customSelects['githubSetupHostType']=new CustomSelect(_0x6d8ec0,{'searchable':![]}),_0x6d8ec0['addEventListener']('change',window['onGitHubSetupHostTypeChange']);}const _0xecf06f=document['getElementById']('github-setup-account-type-container');if(_0xecf06f&&!document['getElementById']('github-setup-account-type')){const _0x2d1ee6=document['createElement']('select');_0x2d1ee6['id']='github-setup-account-type',_0x2d1ee6['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22personal\x22>Personal</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22organization\x22\x20selected>Organization</option>\x0a\x20\x20\x20\x20',_0xecf06f['appendChild'](_0x2d1ee6),customSelects['githubSetupAccountType']=new CustomSelect(_0x2d1ee6,{'searchable':![]}),_0x2d1ee6['addEventListener']('change',window['onGitHubSetupAccountTypeChange']);}}window['onGitHubSetupHostTypeChange']=function(){const _0x90d0ec=document['getElementById']('github-setup-host-type')['value'],_0x549e23=document['getElementById']('github-setup-host-row'),_0x3e9ac0=document['getElementById']('github-setup-host'),_0x5524e8=document['getElementById']('github-setup-host-label'),_0x198fcf=document['getElementById']('github-setup-host-hint'),_0x1d3010=document['getElementById']('github-setup-login-link'),_0x3704c9=document['getElementById']('github-setup-login-text');_0x1d3010&&_0x3704c9&&(_0x1d3010['hidden']=_0x90d0ec!=='github-com',_0x3704c9['hidden']=_0x90d0ec==='github-com');if(_0x90d0ec==='github-com')_0x549e23['hidden']=!![],_0x3e9ac0['value']='';else{if(_0x90d0ec==='enterprise-server')_0x549e23['hidden']=![],_0x5524e8['textContent']='Hostname',_0x3e9ac0['placeholder']='github.mycompany.com',_0x198fcf['textContent']='Your\x20GitHub\x20Enterprise\x20Server\x20hostname\x20(e.g.,\x20github.mycompany.com)';else _0x90d0ec==='enterprise-cloud'&&(_0x549e23['hidden']=![],_0x5524e8['textContent']='Subdomain',_0x3e9ac0['placeholder']='mycompany.ghe.com',_0x198fcf['textContent']='Your\x20GitHub\x20Enterprise\x20Cloud\x20domain\x20(e.g.,\x20mycompany.ghe.com)');}},window['onGitProviderTypeChange']=function(){const _0x4f6d2b=document['getElementById']('git-provider-modal'),_0x22ae27=_0x4f6d2b&&_0x4f6d2b['dataset']['editing'],_0x5ac104=document['getElementById']('git-provider-type'),_0x386cca=_0x5ac104?_0x5ac104['value']:'github';document['getElementById']('github-provider-fields')['hidden']=_0x386cca!=='github',document['getElementById']('azure-devops-provider-fields')['hidden']=_0x386cca!=='azure-devops',document['getElementById']('github-oauth-fields')['hidden']=!(_0x386cca==='github'&&_0x22ae27);},window['onAzureAuthMethodChange']=function(){const _0x83414a=document['getElementById']('git-provider-auth-method'),_0x129f80=_0x83414a?_0x83414a['value']:'secret';document['getElementById']('azure-secret-fields')['hidden']=_0x129f80!=='secret',document['getElementById']('azure-certificate-fields')['hidden']=_0x129f80!=='certificate';};function handleKeyFileImport(_0x38b3f2){const _0x50f578=_0x38b3f2['target']['files'][0x0];if(_0x50f578){const _0x50151e=new FileReader();_0x50151e['onload']=_0x886665=>{document['getElementById']('git-provider-private-key')['value']=_0x886665['target']['result'];},_0x50151e['readAsText'](_0x50f578);}_0x38b3f2['target']['value']='';}function handleCertFileImport(_0x481704){const _0x51d260=_0x481704['target']['files'][0x0];if(_0x51d260){const _0x27dc60=new FileReader();_0x27dc60['onload']=_0x466deb=>{document['getElementById']('git-provider-certificate')['value']=_0x466deb['target']['result'];},_0x27dc60['readAsText'](_0x51d260);}_0x481704['target']['value']='';}async function openGitProviderModal(_0x19045e=null){initGitProviderSelects();const _0x2e7db0=document['getElementById']('git-provider-modal'),_0x36c1f8=document['getElementById']('git-provider-modal-title'),_0x3e7ea3=document['getElementById']('git-provider-modal-error');_0x2e7db0['dataset']['editing']=_0x19045e||'',_0x36c1f8['textContent']=_0x19045e?'Edit\x20Git\x20Provider':'Add\x20Git\x20Provider';if(_0x3e7ea3)_0x3e7ea3['hidden']=!![];const _0x209aaf=!!_0x19045e;document['getElementById']('git-provider-name-required')['hidden']=_0x209aaf,document['getElementById']('git-provider-name-hint')['hidden']=_0x209aaf,document['getElementById']('git-provider-type-required')['hidden']=_0x209aaf,document['getElementById']('git-provider-private-key-required')['hidden']=_0x209aaf,document['getElementById']('git-provider-name')['value']='',document['getElementById']('git-provider-name')['disabled']=![],document['getElementById']('git-provider-type')['value']='github',document['getElementById']('git-provider-app-id')['value']='',document['getElementById']('git-provider-installation-id')['value']='',document['getElementById']('git-provider-private-key')['value']='',document['getElementById']('git-provider-oauth-client-id')['value']='',document['getElementById']('git-provider-oauth-client-secret')['value']='',document['getElementById']('git-provider-organization')['value']='',document['getElementById']('git-provider-tenant-id')['value']='',document['getElementById']('git-provider-client-id')['value']='',document['getElementById']('git-provider-auth-method')['value']='secret',document['getElementById']('git-provider-client-secret')['value']='',document['getElementById']('git-provider-certificate')['value']='',document['getElementById']('github-installation-link-row')['hidden']=!![];if(_0x19045e)try{const _0xb08135=await API['get']('/settings/git-providers/'+encodeURIComponent(_0x19045e));document['getElementById']('git-provider-name')['value']=_0xb08135['name'],document['getElementById']('git-provider-name')['disabled']=!![],document['getElementById']('git-provider-type')['value']=_0xb08135['type'],document['getElementById']('git-provider-type')['disabled']=!![];if(_0xb08135['type']==='github')document['getElementById']('git-provider-app-id')['value']=_0xb08135['app_id']||'',document['getElementById']('git-provider-installation-id')['value']=_0xb08135['installation_id']||'',_0xb08135['has_private_key']&&(document['getElementById']('git-provider-private-key')['placeholder']='(Leave\x20blank\x20to\x20keep\x20current\x20key)'),_0xb08135['client_id']&&(document['getElementById']('git-provider-oauth-client-id')['value']=_0xb08135['client_id']),_0xb08135['type']==='github'&&(document['getElementById']('github-oauth-fields')['hidden']=![],document['getElementById']('git-provider-oauth-client-id-required')['hidden']=![]),_0xb08135['installation_settings_url']&&(document['getElementById']('github-installation-link-row')['hidden']=![],document['getElementById']('github-installation-btn')['onclick']=()=>window['open'](_0xb08135['installation_settings_url'],'_blank'));else _0xb08135['type']==='azure-devops'&&(document['getElementById']('git-provider-organization')['value']=_0xb08135['organization']||'',document['getElementById']('git-provider-tenant-id')['value']=_0xb08135['tenant_id']||'',document['getElementById']('git-provider-client-id')['value']=_0xb08135['client_id']||'',document['getElementById']('git-provider-auth-method')['value']=_0xb08135['auth_method']||'secret',window['onAzureAuthMethodChange']());}catch(_0x2309e8){console['error']('Failed\x20to\x20load\x20provider\x20details:',_0x2309e8),showGitProviderError('Failed\x20to\x20load\x20provider\x20details:\x20'+_0x2309e8['message']);return;}else document['getElementById']('git-provider-type')['disabled']=![],document['getElementById']('git-provider-private-key')['placeholder']='-----BEGIN\x20RSA\x20PRIVATE\x20KEY-----\x0a...\x0a-----END\x20RSA\x20PRIVATE\x20KEY-----';window['onGitProviderTypeChange'](),window['onAzureAuthMethodChange'](),_0x2e7db0['hidden']=![];}function closeGitProviderModal(){document['getElementById']('git-provider-modal')['hidden']=!![],document['getElementById']('git-provider-oauth-client-id-required')['hidden']=!![];}function showGitProviderError(_0x32bd54){const _0x41caa0=document['getElementById']('git-provider-modal-error');_0x41caa0&&(_0x41caa0['textContent']=_0x32bd54,_0x41caa0['hidden']=![]);}async function testGitProviderConnection(){const _0x377fbe=document['getElementById']('git-provider-modal'),_0x4b5c8c=_0x377fbe['dataset']['editing'],_0x341a0f=document['getElementById']('git-provider-name')['value']['trim']();if(!_0x4b5c8c){showGitProviderError('Save\x20the\x20provider\x20first\x20before\x20testing\x20the\x20connection');return;}try{const _0x96af7a=await API['post']('/settings/git-providers/'+encodeURIComponent(_0x341a0f)+'/test'),_0x140c24=document['getElementById']('git-provider-modal-error');_0x96af7a['success']?_0x140c24&&(_0x140c24['textContent']='Connection\x20successful:\x20'+(_0x96af7a['message']||'OK'),_0x140c24['className']='modal-inline-message\x20success',_0x140c24['hidden']=![]):showGitProviderError('Connection\x20failed:\x20'+(_0x96af7a['message']||_0x96af7a['error']));}catch(_0x503693){console['error']('Failed\x20to\x20test\x20connection:',_0x503693),showGitProviderError(_0x503693['message']||'Failed\x20to\x20test\x20connection');}}function collectGitProviderData(){const _0x63d4a0=document['getElementById']('git-provider-name')['value']['trim'](),_0x4f31eb=document['getElementById']('git-provider-type')['value'];if(!_0x63d4a0)return showGitProviderError('Provider\x20name\x20is\x20required'),null;const _0x12f989={'name':_0x63d4a0,'type':_0x4f31eb};if(_0x4f31eb==='github'){_0x12f989['app_id']=document['getElementById']('git-provider-app-id')['value']['trim'](),_0x12f989['installation_id']=document['getElementById']('git-provider-installation-id')['value']['trim']();const _0x555c2b=document['getElementById']('git-provider-private-key')['value']['trim']();_0x555c2b&&(_0x12f989['private_key']=_0x555c2b);const _0x2adad9=document['getElementById']('git-provider-oauth-client-id')['value']['trim']();_0x2adad9&&(_0x12f989['oauth_client_id']=_0x2adad9);const _0x261507=document['getElementById']('git-provider-oauth-client-secret')['value']['trim']();_0x261507&&(_0x12f989['oauth_client_secret']=_0x261507);}else{if(_0x4f31eb==='azure-devops'){_0x12f989['organization']=document['getElementById']('git-provider-organization')['value']['trim'](),_0x12f989['tenant_id']=document['getElementById']('git-provider-tenant-id')['value']['trim'](),_0x12f989['client_id']=document['getElementById']('git-provider-client-id')['value']['trim'](),_0x12f989['auth_method']=document['getElementById']('git-provider-auth-method')['value'];if(_0x12f989['auth_method']==='secret'){const _0x463c3d=document['getElementById']('git-provider-client-secret')['value']['trim']();_0x463c3d&&(_0x12f989['client_secret']=_0x463c3d);}else{const _0x38566a=document['getElementById']('git-provider-certificate')['value']['trim']();_0x38566a&&(_0x12f989['certificate']=_0x38566a);}}}return _0x12f989;}async function saveGitProvider(){const _0xf6caf0=document['getElementById']('git-provider-modal'),_0x52d4c1=_0xf6caf0['dataset']['editing'],_0x38ac2e=document['getElementById']('git-provider-modal-error');if(_0x38ac2e)_0x38ac2e['hidden']=!![];const _0x41355e=!!_0x52d4c1,_0x481eb9=document['getElementById']('git-provider-type')['value'];if(_0x41355e&&_0x481eb9==='github'){const _0x2e3cbc=document['getElementById']('git-provider-oauth-client-id')['value']['trim']();if(!_0x2e3cbc){showGitProviderError('Client\x20ID\x20is\x20required');return;}}const _0x5f2d46=collectGitProviderData();if(!_0x5f2d46)return;_0x52d4c1&&(_0x5f2d46['type']==='github'&&!_0x5f2d46['private_key']&&(_0x5f2d46['keep_existing_private_key']=!![]),_0x5f2d46['type']==='azure-devops'&&(_0x5f2d46['auth_method']==='secret'&&!_0x5f2d46['client_secret']&&(_0x5f2d46['keep_existing_client_secret']=!![]),_0x5f2d46['auth_method']==='certificate'&&!_0x5f2d46['certificate']&&(_0x5f2d46['keep_existing_certificate']=!![])));try{_0x52d4c1?await API['put']('/settings/git-providers/'+encodeURIComponent(_0x52d4c1),_0x5f2d46):await API['post']('/settings/git-providers',_0x5f2d46),closeGitProviderModal(),showInlineMessage('git-providers','success',_0x52d4c1?'Git\x20provider\x20updated':'Git\x20provider\x20added'),await loadGitProviders();}catch(_0x1debd2){console['error']('Failed\x20to\x20save\x20git\x20provider:',_0x1debd2),showGitProviderError(_0x1debd2['message']||'Failed\x20to\x20save\x20git\x20provider');}}window['editGitProvider']=async function(_0x457d9e){await openGitProviderModal(_0x457d9e);},window['deleteGitProvider']=function(_0x194163){document['getElementById']('delete-git-provider-name')['textContent']=_0x194163,document['getElementById']('delete-git-provider-modal')['dataset']['name']=_0x194163,document['getElementById']('delete-git-provider-modal')['hidden']=![];};function closeDeleteGitProviderModal(){document['getElementById']('delete-git-provider-modal')['hidden']=!![];}async function confirmDeleteGitProvider(){const _0x58660e=document['getElementById']('delete-git-provider-modal')['dataset']['name'];try{await API['delete']('/settings/git-providers/'+encodeURIComponent(_0x58660e)),closeDeleteGitProviderModal(),showInlineMessage('git-providers','success','Git\x20provider\x20deleted'),await loadGitProviders();}catch(_0x4b62d3){console['error']('Failed\x20to\x20delete\x20git\x20provider:',_0x4b62d3),closeDeleteGitProviderModal(),showInlineMessage('git-providers','error',_0x4b62d3['message']||'Failed\x20to\x20delete\x20git\x20provider');}}let gitProviderTeamsModalState={'providerName':null,'assignedTeamIds':[]};window['manageGitProviderTeams']=async function(_0x37e21a){const _0x1275bc=document['getElementById']('git-provider-teams-modal'),_0x5b3d9a=document['getElementById']('git-provider-teams-modal-error');_0x5b3d9a['hidden']=!![],document['getElementById']('git-provider-teams-name')['textContent']=_0x37e21a,gitProviderTeamsModalState['providerName']=_0x37e21a;try{const _0x4c18e7=await API['getGitProviderAllowedTeams'](_0x37e21a),_0x57b95b=_0x4c18e7['allowedTeams']||[];if(state['teams']['length']===0x0){const _0x1681f1=await API['getTeams']()['catch'](()=>({'teams':[]}));state['teams']=_0x1681f1['teams']||[];}const _0x43b4b3=document['getElementById']('git-provider-teams-mode');_0x57b95b['includes']('*')?(_0x43b4b3['value']='all',gitProviderTeamsModalState['assignedTeamIds']=[]):(_0x43b4b3['value']='specific',gitProviderTeamsModalState['assignedTeamIds']=[..._0x57b95b]),onGitProviderTeamsModeChange(),_0x1275bc['hidden']=![];}catch(_0x13f03f){console['error']('Failed\x20to\x20load\x20provider\x20teams:',_0x13f03f),_0x5b3d9a['textContent']=_0x13f03f['message']||'Failed\x20to\x20load\x20team\x20assignments',_0x5b3d9a['hidden']=![],_0x1275bc['hidden']=![];}};function onGitProviderTeamsModeChange(){const _0x39dfa4=document['getElementById']('git-provider-teams-mode')['value'];document['getElementById']('git-provider-teams-specific')['hidden']=_0x39dfa4!=='specific',_0x39dfa4==='specific'&&(renderGitProviderTeamsList(),renderGitProviderAddTeamDropdown());}function renderGitProviderTeamsList(){const _0x537f26=document['getElementById']('git-provider-teams-list'),_0x3df936=new Map(state['teams']['map'](_0x19ee10=>[_0x19ee10['id'],_0x19ee10['name']]));if(gitProviderTeamsModalState['assignedTeamIds']['length']===0x0){_0x537f26['innerHTML']='<p\x20class=\x22text-muted\x22\x20style=\x22margin:\x204px\x200;\x22>No\x20teams\x20assigned</p>';return;}_0x537f26['innerHTML']=gitProviderTeamsModalState['assignedTeamIds']['map'](_0x3bee3a=>{const _0x82717b=_0x3df936['get'](_0x3bee3a)||_0x3bee3a,_0x2cd02f=escapeInlineOnclickArg(_0x3bee3a);return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22member-item\x22\x20data-team-id=\x22'+Utils['escapeHtml'](_0x3bee3a)+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22member-name\x22>'+Utils['escapeHtml'](_0x82717b)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-icon\x22\x20onclick=\x22removeGitProviderTeam(\x27'+_0x2cd02f+'\x27)\x22\x20title=\x22Remove\x22>×</button>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';})['join']('');}function renderGitProviderAddTeamDropdown(){const _0x385659=document['getElementById']('git-provider-add-team-select'),_0x103038=new Set(gitProviderTeamsModalState['assignedTeamIds']),_0x1309c8=state['teams']['filter'](_0x2ef336=>!_0x103038['has'](_0x2ef336['id']));_0x385659['innerHTML']='<option\x20value=\x22\x22>--\x20Select\x20a\x20team\x20--</option>',_0x1309c8['forEach'](_0x10fc38=>{_0x385659['innerHTML']+='<option\x20value=\x22'+Utils['escapeHtml'](_0x10fc38['id'])+'\x22>'+Utils['escapeHtml'](_0x10fc38['name'])+'</option>';});}function addGitProviderTeam(){const _0x4363eb=document['getElementById']('git-provider-add-team-select'),_0x2759dc=_0x4363eb['value'];if(!_0x2759dc)return;gitProviderTeamsModalState['assignedTeamIds']['push'](_0x2759dc),renderGitProviderTeamsList(),renderGitProviderAddTeamDropdown();}window['removeGitProviderTeam']=function(_0x4c4482){gitProviderTeamsModalState['assignedTeamIds']=gitProviderTeamsModalState['assignedTeamIds']['filter'](_0x19f430=>_0x19f430!==_0x4c4482),renderGitProviderTeamsList(),renderGitProviderAddTeamDropdown();};async function saveGitProviderTeams(){const _0x90257c=document['getElementById']('git-provider-teams-mode')['value'],_0x121064=document['getElementById']('git-provider-teams-modal-error');_0x121064['hidden']=!![];const _0x3712f6=_0x90257c==='all'?['*']:[...gitProviderTeamsModalState['assignedTeamIds']];try{await API['setGitProviderAllowedTeams'](gitProviderTeamsModalState['providerName'],_0x3712f6),closeGitProviderTeamsModal(),showInlineMessage('git-providers','success','Team\x20assignments\x20updated'),await loadGitProviders();}catch(_0x1df393){console['error']('Failed\x20to\x20save\x20team\x20assignments:',_0x1df393),_0x121064['textContent']=_0x1df393['message']||'Failed\x20to\x20save\x20team\x20assignments',_0x121064['hidden']=![];}}function closeGitProviderTeamsModal(){document['getElementById']('git-provider-teams-modal')['hidden']=!![],gitProviderTeamsModalState={'providerName':null,'assignedTeamIds':[]};}function setupProviderTypeListeners(){const _0x527892=document['getElementById']('add-provider-type-modal');_0x527892&&(_0x527892['querySelector']('.modal-close')?.['addEventListener']('click',closeAddProviderTypeModal),_0x527892['querySelector']('.modal-overlay')?.['addEventListener']('click',closeAddProviderTypeModal),document['getElementById']('add-provider-type-cancel-btn')?.['addEventListener']('click',closeAddProviderTypeModal),document['getElementById']('add-provider-github-btn')?.['addEventListener']('click',openGitHubAppSetupWizard),document['getElementById']('add-provider-azure-btn')?.['addEventListener']('click',openAzureDevOpsProviderModal));}function openAddProviderTypeModal(){document['getElementById']('add-provider-type-modal')['hidden']=![];}function closeAddProviderTypeModal(){document['getElementById']('add-provider-type-modal')['hidden']=!![];}function openAzureDevOpsProviderModal(){closeAddProviderTypeModal(),openGitProviderModal(null),document['getElementById']('git-provider-type')['value']='azure-devops',window['onGitProviderTypeChange']();}function setupGitHubSetupWizardListeners(){const _0x109745=document['getElementById']('github-app-setup-wizard-modal');_0x109745&&(_0x109745['querySelector']('.modal-close')?.['addEventListener']('click',closeGitHubAppSetupWizard),_0x109745['querySelector']('.modal-overlay')?.['addEventListener']('click',closeGitHubAppSetupWizard),document['getElementById']('github-setup-cancel-btn')?.['addEventListener']('click',closeGitHubAppSetupWizard),document['getElementById']('github-setup-next-btn')?.['addEventListener']('click',gitHubSetupWizardNext));}function openGitHubAppSetupWizard(){closeAddProviderTypeModal(),initGitHubSetupSelects(),document['getElementById']('github-setup-app-name')['value']='',document['getElementById']('github-setup-description')['value']='',document['getElementById']('github-setup-account-type')['value']='organization',document['getElementById']('github-setup-org-name')['value']='',document['getElementById']('github-setup-provider-name')['value']='',document['getElementById']('github-setup-host-type')['value']='github-com',document['getElementById']('github-setup-host')['value']='',document['getElementById']('github-setup-host-row')['hidden']=!![],document['getElementById']('github-setup-wizard-error')['hidden']=!![],document['getElementById']('github-setup-next-btn')['hidden']=![],window['onGitHubSetupHostTypeChange'](),window['onGitHubSetupAccountTypeChange'](),document['getElementById']('github-app-setup-wizard-modal')['hidden']=![];}function closeGitHubAppSetupWizard(){document['getElementById']('github-app-setup-wizard-modal')['hidden']=!![];}window['onGitHubSetupAccountTypeChange']=function(){const _0x2990af=document['getElementById']('github-setup-account-type'),_0x558419=_0x2990af?_0x2990af['value']:'organization';document['getElementById']('github-setup-org-row')['hidden']=_0x558419!=='organization';};async function gitHubSetupWizardNext(){const _0x430afc=document['getElementById']('github-setup-wizard-error');_0x430afc['hidden']=!![];const _0x2c3342=document['getElementById']('github-setup-provider-name')['value']['trim'](),_0x44a520=document['getElementById']('github-setup-app-name')['value']['trim'](),_0x2a1248=document['getElementById']('github-setup-description')['value']['trim'](),_0x443e96=document['getElementById']('github-setup-account-type')['value'],_0x202889=document['getElementById']('github-setup-org-name')['value']['trim'](),_0x1f4ae0=document['getElementById']('github-setup-host-type')['value'],_0x231ccd=document['getElementById']('github-setup-host')['value']['trim']();if(!_0x2c3342){_0x430afc['textContent']='Provider\x20Name\x20is\x20required',_0x430afc['hidden']=![];return;}if(!/^[a-z0-9][a-z0-9-]*[a-z0-9]$/['test'](_0x2c3342)&&_0x2c3342['length']>0x1){_0x430afc['textContent']='Provider\x20name\x20must\x20be\x20lowercase\x20alphanumeric\x20with\x20hyphens',_0x430afc['hidden']=![];return;}if(state['gitProviders']['some'](_0x18eeaa=>_0x18eeaa['name']===_0x2c3342)){_0x430afc['textContent']='A\x20provider\x20with\x20this\x20name\x20already\x20exists',_0x430afc['hidden']=![];return;}if(_0x1f4ae0!=='github-com'&&!_0x231ccd){_0x430afc['textContent']=_0x1f4ae0==='enterprise-cloud'?'GitHub\x20Enterprise\x20Cloud\x20subdomain\x20is\x20required':'GitHub\x20Enterprise\x20Server\x20hostname\x20is\x20required',_0x430afc['hidden']=![];return;}if(_0x1f4ae0==='enterprise-cloud'&&!_0x231ccd['endsWith']('.ghe.com')){_0x430afc['textContent']='GitHub\x20Enterprise\x20Cloud\x20domain\x20must\x20end\x20with\x20\x22.ghe.com\x22',_0x430afc['hidden']=![];return;}if(!_0x44a520){_0x430afc['textContent']='GitHub\x20App\x20Name\x20is\x20required',_0x430afc['hidden']=![];return;}if(_0x443e96==='organization'&&!_0x202889){_0x430afc['textContent']='Organization\x20Name\x20is\x20required',_0x430afc['hidden']=![];return;}try{const _0x3e7e9c=document['getElementById']('github-setup-next-btn');_0x3e7e9c['disabled']=!![],_0x3e7e9c['textContent']='Starting...';const _0x15d539=await API['post']('/settings/git-provider-setup/start',{'type':'github','config':{'providerName':_0x2c3342,'appName':_0x44a520,'description':_0x2a1248,'accountType':_0x443e96,'orgName':_0x443e96==='organization'?_0x202889:undefined,'githubHostType':_0x1f4ae0,'githubHost':_0x1f4ae0!=='github-com'?_0x231ccd:undefined}}),_0x110167=document['getElementById']('github-setup-manifest-form');_0x110167['action']=_0x15d539['redirect_url'],document['getElementById']('github-setup-manifest-input')['value']=_0x15d539['manifest'],_0x110167['submit']();}catch(_0x5ccd85){_0x430afc['textContent']=_0x5ccd85['message']||'Failed\x20to\x20start\x20setup',_0x430afc['hidden']=![];}finally{const _0x54d7ee=document['getElementById']('github-setup-next-btn');_0x54d7ee['disabled']=![],_0x54d7ee['textContent']='Next';}}function setupSsoTabs(){const _0x25f843=document['querySelectorAll']('.sso-tab');_0x25f843['forEach'](_0x111bb9=>{_0x111bb9['addEventListener']('click',()=>{const _0x1d651a=_0x111bb9['dataset']['tab'];_0x25f843['forEach'](_0x5c81b9=>_0x5c81b9['classList']['toggle']('active',_0x5c81b9['dataset']['tab']===_0x1d651a)),document['querySelectorAll']('.sso-tab-content')['forEach'](_0x21ecf0=>{_0x21ecf0['classList']['toggle']('active',_0x21ecf0['id']==='sso-tab-'+_0x1d651a);});});});}function initSsoSelects(){const _0x54ce21=document['getElementById']('sso-provider-container');if(_0x54ce21&&!document['getElementById']('sso-provider')){const _0x2b3f15=document['createElement']('select');_0x2b3f15['id']='sso-provider',_0x2b3f15['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22custom\x22>Custom\x20OIDC\x20Provider</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22microsoft\x22>Microsoft\x20Entra\x20ID\x20(Azure\x20AD)</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22okta\x22>Okta</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22google\x22>Google\x20Workspace</option>\x0a\x20\x20\x20\x20',_0x54ce21['appendChild'](_0x2b3f15),customSelects['ssoProvider']=new CustomSelect(_0x2b3f15,{'searchable':![]});}const _0xeabd29=document['getElementById']('sso-default-role-container');if(_0xeabd29&&!document['getElementById']('sso-default-role')){const _0x3e2562=document['createElement']('select');_0x3e2562['id']='sso-default-role',_0x3e2562['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22viewer\x22>Viewer</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22developer\x22>Developer</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22manager\x22>Manager</option>\x0a\x20\x20\x20\x20\x20\x20<option\x20value=\x22admin\x22>Administrator</option>\x0a\x20\x20\x20\x20',_0xeabd29['appendChild'](_0x3e2562),customSelects['ssoDefaultRole']=new CustomSelect(_0x3e2562,{'searchable':![]});}}function showSsoMessage(_0x7a5b07,_0x17f4c5){const _0x516639=document['getElementById']('sso-inline-message');_0x516639&&(_0x516639['textContent']=_0x17f4c5,_0x516639['className']='inline-message\x20'+_0x7a5b07,_0x516639['hidden']=![],_0x7a5b07==='success'&&setTimeout(()=>{_0x516639['hidden']=!![];},0x1388));}function hideSsoMessage(){const _0x265e3f=document['getElementById']('sso-inline-message');if(_0x265e3f)_0x265e3f['hidden']=!![];}async function loadSsoSettings(){initSsoSelects();try{const _0x4ea2e2=await API['get']('/settings/oidc');state['ssoConfig']=_0x4ea2e2,document['getElementById']('sso-enabled')['checked']=_0x4ea2e2['enabled']||![],document['getElementById']('sso-provider')['value']=_0x4ea2e2['provider']||'custom',document['getElementById']('sso-display-name')['value']=_0x4ea2e2['display_name']||'',document['getElementById']('sso-issuer')['value']=_0x4ea2e2['issuer']||'',document['getElementById']('sso-client-id')['value']=_0x4ea2e2['client_id']||'',document['getElementById']('sso-client-secret')['value']='',document['getElementById']('sso-auto-provision')['checked']=_0x4ea2e2['auto_provision']!==![],document['getElementById']('sso-default-role')['value']=_0x4ea2e2['default_role']||'developer',document['getElementById']('sso-allow-local')['checked']=_0x4ea2e2['allow_local_auth']!==![];const _0x4bc21c=document['getElementById']('sso-secret-hint');_0x4bc21c&&(_0x4bc21c['style']['display']=_0x4ea2e2['has_client_secret']?'block':'none');const _0x436ed6=document['getElementById']('sso-remove-btn');_0x436ed6&&(_0x436ed6['hidden']=!_0x4ea2e2['enabled']);}catch(_0x2c6929){console['error']('Failed\x20to\x20load\x20SSO\x20settings:',_0x2c6929);throw _0x2c6929;}}async function saveSsoSettings(){hideSsoMessage();try{const _0x37fcde={'enabled':document['getElementById']('sso-enabled')['checked'],'provider':document['getElementById']('sso-provider')['value'],'display_name':document['getElementById']('sso-display-name')['value']['trim'](),'issuer':document['getElementById']('sso-issuer')['value']['trim'](),'client_id':document['getElementById']('sso-client-id')['value']['trim'](),'auto_provision':document['getElementById']('sso-auto-provision')['checked'],'default_role':document['getElementById']('sso-default-role')['value'],'allow_local_auth':document['getElementById']('sso-allow-local')['checked']},_0x42b7b1=document['getElementById']('sso-client-secret')['value'];_0x42b7b1?_0x37fcde['client_secret']=_0x42b7b1:_0x37fcde['keep_existing_secret']=!![],await API['put']('/settings/oidc',_0x37fcde),await API['post']('/settings/oidc/reload'),showSsoMessage('success','SSO\x20settings\x20saved\x20and\x20applied'),await loadSsoSettings();}catch(_0x249eae){console['error']('Failed\x20to\x20save\x20SSO\x20settings:',_0x249eae),showSsoMessage('error','Failed\x20to\x20save\x20SSO\x20settings');}}async function testSsoConnection(){const _0x5ad0bb=document['getElementById']('sso-issuer')['value']['trim']();if(!_0x5ad0bb){showSsoTestResult(![],'Please\x20enter\x20an\x20issuer\x20URL');return;}const _0x5763fc=document['getElementById']('sso-test-result');_0x5763fc['textContent']='Testing\x20connection...',_0x5763fc['className']='sso-test-result',_0x5763fc['hidden']=![];try{const _0x48eb7=await API['post']('/settings/oidc/test',{'issuer':_0x5ad0bb});_0x48eb7['success']?showSsoTestResult(!![],'OIDC\x20discovery\x20successful'):showSsoTestResult(![],'Discovery\x20failed:\x20'+_0x48eb7['error']);}catch(_0x21c6a8){console['error']('Failed\x20to\x20test\x20SSO\x20connection:',_0x21c6a8),showSsoTestResult(![],'Failed\x20to\x20test\x20connection');}}function showSsoTestResult(_0x489a48,_0x5b9453){const _0x393cd9=document['getElementById']('sso-test-result');_0x393cd9&&(_0x393cd9['textContent']=_0x5b9453,_0x393cd9['className']='sso-test-result\x20'+(_0x489a48?'success':'error'),_0x393cd9['hidden']=![]);}async function removeSsoConfig(){const _0x5dd48e=await ConfirmDialog['show']({'title':'Remove\x20SSO\x20Configuration','message':'Are\x20you\x20sure\x20you\x20want\x20to\x20remove\x20the\x20SSO\x20configuration?\x20Users\x20will\x20no\x20longer\x20be\x20able\x20to\x20sign\x20in\x20with\x20SSO.','confirmText':'Remove','danger':!![]});if(!_0x5dd48e)return;try{await API['delete']('/settings/oidc'),showSsoMessage('success','SSO\x20configuration\x20removed'),await loadSsoSettings();}catch(_0x2aa961){console['error']('Failed\x20to\x20remove\x20SSO\x20config:',_0x2aa961),showSsoMessage('error','Failed\x20to\x20remove\x20SSO\x20configuration');}}function setupCaCertificatesListeners(){document['getElementById']('add-ca-cert-btn')?.['addEventListener']('click',openAddCaCertModal);const _0x4bc034=document['getElementById']('add-ca-cert-modal');_0x4bc034&&(_0x4bc034['querySelector']('.modal-close')?.['addEventListener']('click',closeAddCaCertModal),_0x4bc034['querySelector']('.modal-overlay')?.['addEventListener']('click',closeAddCaCertModal),document['getElementById']('ca-cert-cancel-btn')?.['addEventListener']('click',closeAddCaCertModal),document['getElementById']('ca-cert-save-btn')?.['addEventListener']('click',saveCaCertificate),document['getElementById']('ca-cert-import-btn')?.['addEventListener']('click',()=>{document['getElementById']('ca-cert-file-input')?.['click']();}),document['getElementById']('ca-cert-file-input')?.['addEventListener']('change',handleCaCertFileImport));const _0x5cc099=document['getElementById']('view-ca-cert-modal');_0x5cc099&&(_0x5cc099['querySelector']('.modal-close')?.['addEventListener']('click',closeViewCaCertModal),_0x5cc099['querySelector']('.modal-overlay')?.['addEventListener']('click',closeViewCaCertModal),document['getElementById']('view-ca-cert-close-btn')?.['addEventListener']('click',closeViewCaCertModal));}async function loadCaCertificates(){try{const _0x1e0be9=await API['get']('/settings/ca-certificates');state['caCertsConfig']=_0x1e0be9,renderCaCertificatesList();}catch(_0xbcb75d){console['error']('Failed\x20to\x20load\x20CA\x20certificates:',_0xbcb75d);throw _0xbcb75d;}}function renderCaCertificatesList(){const _0x5570a0=document['getElementById']('ca-certificates-list');if(!_0x5570a0)return;const _0x5abfdf=state['caCertsConfig']['certificates']||[];if(_0x5abfdf['length']===0x0){_0x5570a0['innerHTML']='<p\x20class=\x22text-muted\x22>No\x20CA\x20certificates\x20configured.</p>';return;}_0x5570a0['innerHTML']=_0x5abfdf['map'](_0x517307=>{const _0xd760b7=_0x517307['issuedTo']||{},_0x17c0d5=_0xd760b7['commonName']||_0xd760b7['organization']||'',_0x51f86c=escapeInlineOnclickArg(_0x517307['id']);let _0x2a59d4='';if(_0x517307['expiresOn']){const _0x5d4a81=new Date(_0x517307['expiresOn']),_0x36ca1b=new Date(),_0x3605eb=Math['ceil']((_0x5d4a81-_0x36ca1b)/(0x3e8*0x3c*0x3c*0x18)),_0x5593a8=_0x5d4a81['toLocaleString'](undefined,{'year':'numeric','month':'long','day':'numeric','hour':'numeric','minute':'2-digit','hour12':!![]});if(_0x517307['isExpired'])_0x2a59d4='<span\x20class=\x22ca-cert-expiry\x20expired\x22>Expired\x20'+_0x5593a8+'</span>';else _0x3605eb<=0x1e?_0x2a59d4='<span\x20class=\x22ca-cert-expiry\x20expiring-soon\x22>Expires\x20'+_0x5593a8+'</span>':_0x2a59d4='<span\x20class=\x22ca-cert-expiry\x22>Expires\x20'+_0x5593a8+'</span>';}return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22ca-cert-item\x22\x20data-id=\x22'+_0x517307['id']+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ca-cert-info\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ca-cert-name\x22>'+Utils['escapeHtml'](_0x517307['name'])+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x17c0d5&&_0x17c0d5!==_0x517307['name']?'<div\x20class=\x22ca-cert-subject\x22>'+Utils['escapeHtml'](_0x17c0d5)+'</div>':'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x2a59d4+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ca-cert-actions\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-icon\x22\x20onclick=\x22viewCaCertificate(\x27'+_0x51f86c+'\x27)\x22\x20title=\x22View\x20details\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2214\x22\x20height=\x2214\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M1\x2012s4-8\x2011-8\x2011\x208\x2011\x208-4\x208-11\x208-11-8-11-8z\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<circle\x20cx=\x2212\x22\x20cy=\x2212\x22\x20r=\x223\x22></circle>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-icon\x20btn-danger\x22\x20onclick=\x22removeCaCertificate(\x27'+_0x51f86c+'\x27)\x22\x20title=\x22Remove\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2214\x22\x20height=\x2214\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<polyline\x20points=\x223\x206\x205\x206\x2021\x206\x22></polyline>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M19\x206v14a2\x202\x200\x200\x201-2\x202H7a2\x202\x200\x200\x201-2-2V6m3\x200V4a2\x202\x200\x200\x201\x202-2h4a2\x202\x200\x200\x201\x202\x202v2\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';})['join']('');}function openAddCaCertModal(){document['getElementById']('ca-cert-name')['value']='',document['getElementById']('ca-cert-content')['value']='';const _0x4b582b=document['getElementById']('add-ca-cert-modal-error');if(_0x4b582b)_0x4b582b['hidden']=!![];document['getElementById']('add-ca-cert-modal')['hidden']=![];}function closeAddCaCertModal(){document['getElementById']('add-ca-cert-modal')['hidden']=!![];}async function saveCaCertificate(){const _0x389dae=document['getElementById']('ca-cert-name')['value']['trim'](),_0x26f4c7=document['getElementById']('ca-cert-content')['value']['trim'](),_0x22a956=document['getElementById']('add-ca-cert-modal-error');if(!_0x389dae||!_0x26f4c7){_0x22a956&&(_0x22a956['textContent']='Name\x20and\x20certificate\x20content\x20are\x20required',_0x22a956['hidden']=![]);return;}try{const _0x5de9b7=document['getElementById']('ca-cert-save-btn');_0x5de9b7['disabled']=!![],_0x5de9b7['textContent']='Adding...',await API['post']('/settings/ca-certificates',{'name':_0x389dae,'content':_0x26f4c7}),closeAddCaCertModal(),await loadCaCertificates(),showInlineMessage('ca-certificates','success','Certificate\x20added');}catch(_0x1209d5){console['error']('Failed\x20to\x20add\x20CA\x20certificate:',_0x1209d5),_0x22a956&&(_0x22a956['textContent']=_0x1209d5['message']||'Failed\x20to\x20add\x20certificate',_0x22a956['hidden']=![]);}finally{const _0x3a81c6=document['getElementById']('ca-cert-save-btn');_0x3a81c6['disabled']=![],_0x3a81c6['textContent']='Add\x20Certificate';}}window['viewCaCertificate']=async function(_0x1f9cc1){try{const _0x49afc9=await API['get']('/settings/ca-certificates/'+_0x1f9cc1),_0xbf8ed6=_0x49afc9['details']||{},_0x37cd35=_0xbf8ed6['issuedTo']||{},_0x1b6c00=_0xbf8ed6['issuedBy']||{},_0x1801dc=_0xbf8ed6['validityPeriod']||{},_0x3b7382=_0xbf8ed6['fingerprints']||{};document['getElementById']('view-ca-cert-name')['textContent']=_0x49afc9['name'];const _0xfca436=(_0x16c2b7,_0x30caef,_0x32e8ae)=>{const _0x4a18bc=document['getElementById'](_0x16c2b7),_0x1dc254=_0x32e8ae?document['getElementById'](_0x32e8ae):null;if(_0x4a18bc)_0x4a18bc['textContent']=_0x30caef||'<Not\x20Part\x20Of\x20Certificate>';if(_0x1dc254)_0x1dc254['style']['display']=_0x30caef?'':'none';};_0xfca436('cert-issued-to-cn',_0x37cd35['commonName'],'cert-issued-to-cn-row'),_0xfca436('cert-issued-to-o',_0x37cd35['organization'],'cert-issued-to-o-row'),_0xfca436('cert-issued-to-ou',_0x37cd35['organizationalUnit'],'cert-issued-to-ou-row'),_0xfca436('cert-issued-by-cn',_0x1b6c00['commonName'],'cert-issued-by-cn-row'),_0xfca436('cert-issued-by-o',_0x1b6c00['organization'],'cert-issued-by-o-row'),_0xfca436('cert-issued-by-ou',_0x1b6c00['organizationalUnit'],'cert-issued-by-ou-row');const _0x146f8a=_0x740114=>{if(!_0x740114)return'';const _0x325a32=new Date(_0x740114);return _0x325a32['toLocaleString'](undefined,{'weekday':'long','year':'numeric','month':'long','day':'numeric','hour':'numeric','minute':'2-digit','second':'2-digit','hour12':!![]});};_0xfca436('cert-issued-on',_0x146f8a(_0x1801dc['issuedOn'])),_0xfca436('cert-expires-on',_0x146f8a(_0x1801dc['expiresOn']));const _0x548b7a=document['getElementById']('cert-expires-on');if(_0x548b7a&&_0xbf8ed6['isExpired'])_0x548b7a['classList']['add']('cert-expired');else _0x548b7a&&_0x548b7a['classList']['remove']('cert-expired');_0xfca436('cert-fingerprint-cert',_0x3b7382['certificate']),_0xfca436('cert-fingerprint-pubkey',_0x3b7382['publicKey']),document['getElementById']('view-ca-cert-modal')['hidden']=![];}catch(_0x3b5143){console['error']('Failed\x20to\x20load\x20certificate\x20details:',_0x3b5143),showInlineMessage('ca-certificates','error','Failed\x20to\x20load\x20certificate\x20details');}};function closeViewCaCertModal(){document['getElementById']('view-ca-cert-modal')['hidden']=!![];}window['removeCaCertificate']=async function(_0x5068b2){const _0xb08a40=await ConfirmDialog['show']({'title':'Remove\x20CA\x20Certificate','message':'Are\x20you\x20sure\x20you\x20want\x20to\x20remove\x20this\x20CA\x20certificate?','confirmText':'Remove','danger':!![]});if(!_0xb08a40)return;try{await API['delete']('/settings/ca-certificates/'+_0x5068b2),await loadCaCertificates(),showInlineMessage('ca-certificates','success','Certificate\x20removed');}catch(_0x353f5f){console['error']('Failed\x20to\x20remove\x20CA\x20certificate:',_0x353f5f),showInlineMessage('ca-certificates','error','Failed\x20to\x20remove\x20certificate');}};function handleCaCertFileImport(_0x40249a){const _0x31d433=_0x40249a['target']['files'][0x0];if(_0x31d433){const _0x437df4=new FileReader();_0x437df4['onload']=_0x3d1b15=>{document['getElementById']('ca-cert-content')['value']=_0x3d1b15['target']['result'];},_0x437df4['readAsText'](_0x31d433);}_0x40249a['target']['value']='';}
|