@ranger-testing/ranger-cli 2.5.4-alpha.f940f0d-18 → 2.5.4
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/README.md +14 -36
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/mcpBootstrap.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/build/skills/ranger/SKILL.md +6 -36
- package/build/skills/ranger/create.md +0 -19
- package/build/skills/ranger/verify.md +7 -46
- package/package.json +3 -8
- package/build/commands/migrateProfile.js +0 -1
- package/build/commands/utils/cloudProfile.js +0 -1
- package/build/commands/utils/cloudProfileSession.js +0 -1
- package/build/commands/utils/gitTracked.js +0 -1
- package/build/commands/utils/legacyWarning.js +0 -1
- package/build/commands/utils/matchAuthEnvironment.js +0 -1
- package/build/commands/utils/projectsConfig.js +0 -1
- package/build/commands/utils/resolveProfileContext.js +0 -1
- package/build/commands/utils/resolveProfileUrl.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x27a050,_0x109d29){const _0x3d790a=_0x231f,_0x43a569=_0x27a050();while(!![]){try{const _0x13d56d=-parseInt(_0x3d790a(0x1f1))/0x1*(parseInt(_0x3d790a(0x223))/0x2)+parseInt(_0x3d790a(0x20e))/0x3*(-parseInt(_0x3d790a(0x233))/0x4)+parseInt(_0x3d790a(0x1e1))/0x5*(-parseInt(_0x3d790a(0x1b0))/0x6)+parseInt(_0x3d790a(0x1b9))/0x7*(parseInt(_0x3d790a(0x1cc))/0x8)+parseInt(_0x3d790a(0x219))/0x9*(-parseInt(_0x3d790a(0x237))/0xa)+parseInt(_0x3d790a(0x1d0))/0xb*(-parseInt(_0x3d790a(0x1bc))/0xc)+-parseInt(_0x3d790a(0x240))/0xd*(-parseInt(_0x3d790a(0x217))/0xe);if(_0x13d56d===_0x109d29)break;else _0x43a569['push'](_0x43a569['shift']());}catch(_0x162462){_0x43a569['push'](_0x43a569['shift']());}}}(_0x6327,0x633fa));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';const PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,PLAYWRIGHT_CLI_PREVIEW_LIMIT=0xf0,VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|session-recording(?:-\d+)?\.webm|trace(?:\.trace)?(?:-\d+)?\.zip|current_snap\.ya?ml)$/i;function truncatePreview(_0x1aaf05,_0x1c314e=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0xc279ca=_0x231f,_0x5092a7={'fGwKN':function(_0x2ddc90,_0x1d8101){return _0x2ddc90+_0x1d8101;}};return _0x1aaf05[_0xc279ca(0x226)]>_0x1c314e?_0x5092a7[_0xc279ca(0x1db)](_0x1aaf05[_0xc279ca(0x1e4)](0x0,_0x1c314e),_0xc279ca(0x22b)):_0x1aaf05;}function buildCliArtifactPath(_0x5d9bf8,_0x35351f){const _0x429a64=_0x231f,_0x20e9bc={'NwqHV':function(_0x508e8f,_0x4fef41,_0x11f4d1){return _0x508e8f(_0x4fef41,_0x11f4d1);}};return _0x20e9bc[_0x429a64(0x1ef)](join,_0x5d9bf8,_0x35351f);}function toStepDisplayName(_0x33c4d7){const _0x2ba3e9=_0x231f,_0x53cf36=basename(_0x33c4d7)[_0x2ba3e9(0x206)](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x2ba3e9(0x206)](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x53cf36,'isKeyStep':/^key_/i['test'](basename(_0x33c4d7))};}function extractShellValue(_0x5da616){if(!_0x5da616)return null;return _0x5da616[0x1]??_0x5da616[0x2]??_0x5da616[0x3]??null;}function extractFilenameOption(_0x157dca){return extractShellValue(_0x157dca['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x23ca5b,_0xddf6ea){const _0x1bb59b=_0x231f,_0x27e9ba=_0xddf6ea[_0x1bb59b(0x206)](/[.*+?^${}()|[\]\\]/g,_0x1bb59b(0x211));return extractShellValue(_0x23ca5b['match'](new RegExp('(?:^|\x5cs)'+_0x27e9ba+_0x1bb59b(0x1c6))));}function formatCommandTarget(_0x2e836d){const _0x5a60a7=_0x231f;if(!_0x2e836d)return _0x5a60a7(0x23a);if(/^e\d+$/i[_0x5a60a7(0x1fb)](_0x2e836d))return _0x5a60a7(0x201)+_0x2e836d;return JSON[_0x5a60a7(0x208)](truncatePreview(_0x2e836d,0x78));}function formatPlaywrightCliLog(_0x4740d7,_0x33fae7){const _0x11dfcc=_0x231f,_0x521d31={'GzFaS':'open\x20browser','ZgLih':'start\x20tracing','HllCq':'stop\x20tracing','ITRBT':'video-start','dGIuH':'stop\x20video\x20recording','ZWxUk':_0x11dfcc(0x1cd),'hHFIG':'screenshot','kZXXI':_0x11dfcc(0x1d7),'wvqWp':function(_0x3efd02,_0x2cdea0){return _0x3efd02(_0x2cdea0);},'VcIVS':function(_0x2145dc,_0x3e2c8e,_0x3bcb14){return _0x2145dc(_0x3e2c8e,_0x3bcb14);},'JBwdH':_0x11dfcc(0x1f4),'UYudz':_0x11dfcc(0x212),'gYyGi':function(_0x3dd6cc,_0x57000b){return _0x3dd6cc(_0x57000b);},'ILdCM':function(_0x263b52,_0x1f1102){return _0x263b52(_0x1f1102);},'NdgrO':'run-code','whzLI':_0x11dfcc(0x1c5),'qAxOO':'open\x20new\x20tab'};switch(_0x33fae7){case'open':{const _0x3974d5=extractFirstCommandArgument(_0x4740d7,_0x33fae7);return _0x3974d5?'open\x20'+_0x3974d5:_0x521d31['GzFaS'];}case'tracing-start':return _0x521d31['ZgLih'];case'tracing-stop':return _0x521d31[_0x11dfcc(0x1bf)];case _0x521d31['ITRBT']:return _0x11dfcc(0x22c);case'video-stop':return _0x521d31['dGIuH'];case _0x11dfcc(0x230):{const _0x31d04b=extractFilenameOption(_0x4740d7);if(!_0x31d04b)return _0x521d31['ZWxUk'];const {name:_0x1cc31c}=toStepDisplayName(_0x31d04b);return'capture\x20snapshot\x20`'+_0x1cc31c+'`';}case _0x521d31[_0x11dfcc(0x229)]:{const _0x265c0e=extractFilenameOption(_0x4740d7);if(!_0x265c0e)return _0x521d31['kZXXI'];const {name:_0x385456,isKeyStep:_0x52c58c}=_0x521d31[_0x11dfcc(0x1ad)](toStepDisplayName,_0x265c0e);return _0x52c58c?'capture\x20key\x20step\x20`'+_0x385456+'`':'capture\x20step\x20`'+_0x385456+'`';}case _0x11dfcc(0x1fa):return _0x11dfcc(0x222)+_0x521d31[_0x11dfcc(0x1ad)](formatCommandTarget,_0x521d31['VcIVS'](extractFirstCommandArgument,_0x4740d7,_0x33fae7));case _0x521d31[_0x11dfcc(0x1ba)]:return'check\x20'+_0x521d31[_0x11dfcc(0x1ad)](formatCommandTarget,extractFirstCommandArgument(_0x4740d7,_0x33fae7));case _0x521d31['UYudz']:return _0x11dfcc(0x1d2)+_0x521d31['gYyGi'](formatCommandTarget,extractFirstCommandArgument(_0x4740d7,_0x33fae7));case'press':return _0x11dfcc(0x1b1)+_0x521d31['ILdCM'](formatCommandTarget,extractFirstCommandArgument(_0x4740d7,_0x33fae7));case _0x521d31[_0x11dfcc(0x221)]:return'run\x20custom\x20Playwright\x20code';case _0x521d31[_0x11dfcc(0x1dd)]:{const _0x425a9=extractFirstCommandArgument(_0x4740d7,_0x33fae7);return _0x425a9?_0x11dfcc(0x205)+_0x425a9:_0x521d31['qAxOO'];}case'tab-select':{const _0x5dfdea=extractFirstCommandArgument(_0x4740d7,_0x33fae7);return _0x5dfdea?_0x11dfcc(0x23e)+_0x5dfdea:_0x11dfcc(0x231);}default:return _0x33fae7;}}function extractPlaywrightCliToolDescription(_0x2d6992){const _0x5c684f=_0x231f,_0x1014ed={'HJmDF':function(_0x2c0914,_0x1a16fd){return _0x2c0914>_0x1a16fd;}},_0x5de5cb=_0x2d6992[_0x5c684f(0x1f2)];if(typeof _0x5de5cb!==_0x5c684f(0x1ac))return null;const _0x45a0f2=_0x5de5cb['trim']()['replace'](/\s+/g,'\x20');return _0x1014ed[_0x5c684f(0x1e9)](_0x45a0f2['length'],0x0)?_0x45a0f2:null;}export function formatPlaywrightCliConsoleLogMessage(_0x150a58,_0x3e5616,_0x27de97){const _0x54f913=_0x231f,_0x55cfbf={'TboKC':function(_0x220251,_0x3453d2){return _0x220251(_0x3453d2);}},_0x535626=formatPlaywrightCliLog(_0x3e5616,_0x27de97),_0x2d8491=_0x55cfbf[_0x54f913(0x1e2)](extractPlaywrightCliToolDescription,_0x150a58);if(!_0x2d8491)return _0x54f913(0x210)+_0x535626;if(process[_0x54f913(0x1d1)][_0x54f913(0x1fc)])return'[ranger-verification-agent]\x20'+_0x2d8491+'\x20('+_0x535626+')';return'[ranger-verification-agent]\x20'+_0x2d8491;}function _0x231f(_0x48b813,_0x35b6a8){_0x48b813=_0x48b813-0x1a7;const _0x632792=_0x6327();let _0x231f4d=_0x632792[_0x48b813];return _0x231f4d;}function _0x6327(){const _0x3badda=['\x0a\x0a1.\x20Run\x20`','ref\x20','trace.zip','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','Oogab','open\x20new\x20tab\x20','replace','Bash','stringify','set','rsgTT','notes','trackPhaseEnd','keys','3gfOLqK','close','[playwright-cli]\x20','\x5c$&','fill','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','stdout','elmEc','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','42voOQrc','tool_name','9SJFxVF','01_initial.yml','KJMSj','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','\x20open\x20','cwd','\x20(on\x20element:\x20<','`:\x20\x22','NdgrO','click\x20','262YzrqFC','error','numeric','length','\x20screenshot\x20--filename\x20','KSMnq','hHFIG','euTDo','...','start\x20video\x20recording','\x20snapshot\x20--filename\x20','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','\x20tracing-start`\x0a3.\x20Run\x20`','snapshot','select\x20tab','PostToolUseFailure','1933836uKrylu','wAIGU','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`','VZuuT','4079570JtSBlZ','ptAqj','rTZXR','target','**\x20(','\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20taking\x20the\x20initial\x20snapshot,\x20IMMEDIATELY\x20check\x20for\x20blocking\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20Crash\x20or\x20error\x20dialogs\x20(\x22An\x20error\x20occurred\x22,\x20\x22Something\x20went\x20wrong\x22,\x20unhandled\x20exception\x20messages)\x0a-\x20Blank\x20or\x20empty\x20window\x20with\x20no\x20rendered\x20content\x0a-\x20Framework\x20error\x20boundaries\x20(React\x20error\x20page,\x20Electron\x20crash\x20reporter)\x0a-\x20Unresponsive\x20or\x20frozen\x20UI\x20(no\x20interactive\x20elements\x20in\x20snapshot)\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22App\x20crashed\x20—\x20error\x20dialog\x20visible\x20on\x20launch\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20type:\x20\x22APP_ERROR\x22\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.','map','select\x20tab\x20','mrnjv','10467431eZNvph','canonicalFlow','trackPhaseStart','authorName','YWfmR','tool_failure','\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a9.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a10.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario','key_03_success-state.png','string','wvqWp','playwright_cli_tracing_stop','wJGUF','1129242JBBvUh','press\x20','split','subcommand','\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a7.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a8.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario','content','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','\x20tracing-start`,\x20then\x20`','bLQMF','4032fMxlHt','JBwdH','QrvNJ','12iBQOfR','name','03_result-visible.png','HllCq','PXQXM','01_mozilla-homepage.png','playwright-cli','JHfqQ','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','tab-new','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','unaddressedComments','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','isFile','GxBRk','1472PrBcLH','capture\x20snapshot','hook_event_name','\x22,\x20\x22','4546091GbginB','env','fill\x20','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','CboSN','domRef','capture\x20screenshot','qtXkc','`,\x20then\x20`','invocation','fGwKN','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','whzLI','`\x20writes\x20a\x20YAML\x20snapshot\x20you\x20can\x20read\x20for\x20element\x20refs\x0a-\x20`click\x20<ref>`,\x20`fill\x20<ref>\x20\x22text\x22`,\x20`check\x20<ref>`,\x20`press\x20Enter`\x0a-\x20`tab-list`,\x20`tab-select\x20<index>`,\x20`tab-new\x20<url>`\x0a-\x20`screenshot\x20--filename\x20','hlCAw','-\x20[','5uOnoTY','TboKC','lCCjU','slice','trace.trace.zip','--filename=','playwright_cli_video_stop','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','HJmDF','\x22\x0a-\x20Number\x20prefixes\x20(01_,\x2002_,\x20etc.)\x20help\x20maintain\x20chronological\x20order\x0a-\x20For\x20KEY\x20MOMENTS\x20that\x20prove\x20the\x20scenario\x20is\x20complete,\x20prefix\x20with\x20\x22key_\x22:\x20\x22','EOjjh','tracing-stop','MkUun','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','NwqHV','\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL\x20(same\x20protocol,\x20host,\x20and\x20port)\x0a-\x20For\x20example,\x20if\x20the\x20base\x20URL\x20is\x20\x22http://localhost:3000\x22,\x20you\x20can\x20navigate\x20to\x20\x22http://localhost:3000/home\x22,\x20\x22http://localhost:3000/settings\x22,\x20etc.\x0a-\x20DO\x20NOT\x20navigate\x20to\x20any\x20different\x20domain,\x20host,\x20or\x20port\x20under\x20any\x20circumstances\x0a-\x20If\x20documentation\x20or\x20code\x20diffs\x20suggest\x20a\x20path\x20exists\x20(e.g.,\x20\x22/dashboard\x22),\x20you\x20may\x20navigate\x20to\x20that\x20path\x20ONLY\x20under\x20the\x20base\x20URL\x20above\x0a-\x20The\x20base\x20URL\x20above\x20is\x20the\x20ONLY\x20authorized\x20profile\x20for\x20this\x20verification','4749tPNCuM','description','createdAt','check','toLocaleDateString','commandArgs','`\x0a-\x20`snapshot\x20--filename\x20','xGoUM','QpDEz','click','test','DEBUG','00_mozilla-homepage.yml','session-recording.webm','fjFBK'];_0x6327=function(){return _0x3badda;};return _0x6327();}export function buildVerifyFeatureCliDebugPrompt(_0x70e223,_0x46dd5f){const _0x421986=_0x231f,_0xa4fbc1={'euTDo':function(_0xff5797,_0x46dec7,_0x1b41af){return _0xff5797(_0x46dec7,_0x1b41af);},'bLQMF':'02_learn-more.yml','PVdIC':function(_0x44e46c,_0x68ecab,_0xecea23){return _0x44e46c(_0x68ecab,_0xecea23);},'VZuuT':'03_learn-more.png','xGoUM':function(_0xfd2073,_0x4b0652){return _0xfd2073(_0x4b0652);}},_0x112926=buildCliArtifactPath(_0x46dd5f,_0x421986(0x1fd)),_0x38fa6a=_0xa4fbc1['euTDo'](buildCliArtifactPath,_0x46dd5f,_0x421986(0x1c1)),_0x1a55f5=_0xa4fbc1[_0x421986(0x22a)](buildCliArtifactPath,_0x46dd5f,_0xa4fbc1[_0x421986(0x1b8)]),_0x214c8c=_0xa4fbc1['PVdIC'](buildCliArtifactPath,_0x46dd5f,_0xa4fbc1[_0x421986(0x236)]),_0x4c8a96=quoteShellArg(_0x112926),_0x2b3826=quoteShellArg(_0x38fa6a),_0x5d2e3a=_0xa4fbc1[_0x421986(0x1f8)](quoteShellArg,_0x1a55f5),_0x43faf5=_0xa4fbc1['xGoUM'](quoteShellArg,_0x214c8c);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x70e223+_0x421986(0x200)+_0x70e223+_0x421986(0x235)+_0x70e223+_0x421986(0x22f)+_0x70e223+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x46dd5f+_0x421986(0x22e)+_0x70e223+'\x20snapshot\x20--filename\x20'+_0x4c8a96+_0x421986(0x213)+_0x70e223+_0x421986(0x227)+_0x2b3826+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x70e223+_0x421986(0x22d)+_0x5d2e3a+'`\x0a9.\x20Run\x20`'+_0x70e223+_0x421986(0x227)+_0x43faf5+_0x421986(0x1c9);}export function buildVerifyFeatureCliPrompt(_0x325930){const _0x3d52c2=_0x231f,_0x28a8ed={'ogCWe':'en-US','wJGUF':'short','KJMSj':_0x3d52c2(0x225),'qtXkc':'Reviewer','aTZru':'\x20>\x20','EJKBT':'element','GxBRk':function(_0x4f7d49,_0x16b3cd,_0x2bbd1c){return _0x4f7d49(_0x16b3cd,_0x2bbd1c);},'rsgTT':function(_0x5c7e9e,_0xb6adc4){return _0x5c7e9e(_0xb6adc4);},'ptAqj':function(_0x31b28d,_0x4a6e45){return _0x31b28d(_0x4a6e45);},'KSMnq':function(_0x1cfe56,_0x3ac46c){return _0x1cfe56(_0x3ac46c);},'hlCAw':function(_0x4ca207,_0x2156f0){return _0x4ca207(_0x2156f0);},'DQEUi':'02_button-clicked.png','EQjJp':function(_0x44fda0,_0x541093,_0xd8eaa4){return _0x44fda0(_0x541093,_0xd8eaa4);},'QpDEz':_0x3d52c2(0x1be)},{checklistItem:_0x5dc3a0,itemFeedback:_0x2bebcf,taskDescription:_0x11e7b5,cliCommandPrefix:_0x3f336b,cliArtifactDir:_0x46950d,isCdpMode:_0x385cc3,url:_0x370b09,cdpEndpoint:_0x46d9a1,loginInstructions:_0x487754}=_0x325930,_0x255ae6=_0x28a8ed[_0x3d52c2(0x1cb)](buildCliArtifactPath,_0x46950d,_0x3d52c2(0x21a)),_0x318b1d=_0x28a8ed['GxBRk'](buildCliArtifactPath,_0x46950d,'02_state.yml'),_0x4c569e=buildCliArtifactPath(_0x46950d,_0x3d52c2(0x1ab)),_0x27ebc8=_0x28a8ed['GxBRk'](buildCliArtifactPath,_0x46950d,'01_initial-state.png'),_0x1f8559=_0x28a8ed[_0x3d52c2(0x20a)](quoteShellArg,_0x255ae6),_0x5657f8=_0x28a8ed[_0x3d52c2(0x238)](quoteShellArg,_0x318b1d),_0x3292a6=_0x28a8ed['KSMnq'](quoteShellArg,_0x4c569e),_0x4dbd80=_0x28a8ed[_0x3d52c2(0x1df)](quoteShellArg,_0x27ebc8),_0x41bb2d=_0x5dc3a0['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x5dc3a0[_0x3d52c2(0x20b)]:'';let _0x4c36c8='';if(_0x2bebcf&&_0x2bebcf[_0x3d52c2(0x1c8)][_0x3d52c2(0x226)]>0x0){const _0x538209=_0x2bebcf[_0x3d52c2(0x1c8)][_0x3d52c2(0x23d)](_0x32836f=>{const _0x1c2ada=_0x3d52c2,_0x3f54a3=new Date(_0x32836f[_0x1c2ada(0x1f3)])[_0x1c2ada(0x1f5)](_0x28a8ed['ogCWe'],{'month':_0x28a8ed[_0x1c2ada(0x1af)],'day':_0x28a8ed[_0x1c2ada(0x21b)]}),_0x4b592b=_0x32836f[_0x1c2ada(0x1a7)]||_0x32836f['authorEmail']||_0x28a8ed[_0x1c2ada(0x1d8)],_0x4a7e32=_0x32836f[_0x1c2ada(0x1d6)]?_0x1c2ada(0x21f)+(_0x32836f['domRef']['selector'][_0x1c2ada(0x1b2)](_0x28a8ed['aTZru'])['pop']()?.[_0x1c2ada(0x1b2)](':')[0x0]||_0x28a8ed['EJKBT'])+'>\x20\x22'+(_0x32836f['domRef']['textContent']||'')[_0x1c2ada(0x1e4)](0x0,0x32)+'\x22)':'';return _0x1c2ada(0x1e0)+_0x32836f['id']+']\x20**'+_0x4b592b+_0x1c2ada(0x23b)+_0x3f54a3+'):\x20\x22'+_0x32836f[_0x1c2ada(0x1b5)]+'\x22'+_0x4a7e32;})['join']('\x0a');_0x4c36c8='\x0a\x0a##\x20Reviewer\x20Feedback\x20to\x20Address\x0aThe\x20following\x20reviewer\x20comments\x20were\x20left\x20on\x20the\x20previous\x20version\x20of\x20this\x20item.\x0aVerify\x20that\x20each\x20concern\x20has\x20been\x20addressed\x20in\x20the\x20current\x20implementation.\x0aFor\x20each\x20comment\x20you\x20believe\x20has\x20been\x20addressed,\x20include\x20its\x20ID\x20(the\x20bracketed\x20value)\x20in\x20the\x20addressedCommentIds\x20array\x20in\x20your\x20output.\x0a\x0a'+_0x538209;}const _0x49eda9=_0x2bebcf?.[_0x3d52c2(0x241)]?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x2bebcf['canonicalFlow']:'',_0x3134ed=_0x385cc3?_0x3d52c2(0x1b6)+_0x46d9a1+_0x3d52c2(0x1dc):'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x370b09+_0x3d52c2(0x1f0),_0x357064=_0x370b09?_0x28a8ed[_0x3d52c2(0x228)](quoteShellArg,_0x370b09):'',_0x39af92=_0x385cc3?_0x3d52c2(0x1d3)+_0x3f336b+'\x20open`,\x20then\x20`'+_0x3f336b+_0x3d52c2(0x1b7)+_0x3f336b+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x46950d+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x3f336b+'\x20snapshot\x20--filename\x20'+_0x1f8559+'`\x20to\x20inspect\x20the\x20current\x20app\x20state.\x0a5.\x20Read\x20snapshot\x20YAML\x20files\x20to\x20find\x20element\x20references\x20like\x20`e12`,\x20then\x20use\x20them\x20with\x20`click`,\x20`fill`,\x20`check`,\x20or\x20`select`.\x0a6.\x20Use\x20`'+_0x3f336b+_0x3d52c2(0x227)+_0x4dbd80+_0x3d52c2(0x21c)+_0x3f336b+_0x3d52c2(0x1b4):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x3f336b+_0x3d52c2(0x21d)+_0x357064+_0x3d52c2(0x1d9)+_0x3f336b+'\x20tracing-start`,\x20then\x20`'+_0x3f336b+_0x3d52c2(0x1ee)+_0x46950d+_0x3d52c2(0x203)+_0x3f336b+'\x20snapshot\x20--filename\x20'+_0x1f8559+'`\x20and\x20read\x20the\x20snapshot\x20file\x20to\x20inspect\x20the\x20page.\x0a5.\x20**IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors\x20before\x20proceeding.**\x0a6.\x20Execute\x20the\x20task\x20step-by-step\x20with\x20Playwright\x20CLI\x20commands.\x0a7.\x20Use\x20`'+_0x3f336b+_0x3d52c2(0x227)+_0x4dbd80+_0x3d52c2(0x216)+_0x3f336b+_0x3d52c2(0x1aa),_0x30b9e7=_0x385cc3?_0x3d52c2(0x23c):'\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20step\x202\x20(taking\x20initial\x20snapshot),\x20IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20HTTP\x20404:\x20\x22404\x22,\x20\x22Not\x20Found\x22,\x20\x22Page\x20not\x20found\x22,\x20\x22does\x20not\x20exist\x22\x0a-\x20HTTP\x20500:\x20\x22500\x22,\x20\x22Internal\x20Server\x20Error\x22,\x20\x22Server\x20Error\x22,\x20\x22Something\x20went\x20wrong\x22\x0a-\x20HTTP\x20400:\x20\x22400\x22,\x20\x22Bad\x20Request\x22,\x20\x22Invalid\x20request\x22\x0a\x0a**Also\x20check\x20for:**\x0a-\x20Framework\x20error\x20pages\x20(Next.js\x20error\x20boundary,\x20React\x20error\x20page,\x20\x22Application\x20error\x22)\x0a-\x20Completely\x20blank/empty\x20pages\x20with\x20no\x20content\x0a-\x20\x22Cannot\x20GET\x20/path\x22\x20messages\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.',_0x1a5709=_0x487754?_0x3d52c2(0x1d4)+_0x487754+'\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20immediately\x20with\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'';return'You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a'+_0x5dc3a0['description']+_0x41bb2d+_0x4c36c8+_0x49eda9+_0x3d52c2(0x1c7)+_0x11e7b5+'\x0a\x0a'+_0x3134ed+_0x1a5709+'\x0a\x0a'+_0x39af92+_0x3d52c2(0x1e8)+_0x3f336b+_0x3d52c2(0x1c4)+_0x46950d+_0x3d52c2(0x1f7)+_0x5657f8+_0x3d52c2(0x1de)+_0x3292a6+'`\x0a-\x20`run-code\x20\x22await\x20page.waitForTimeout(1000)\x22`\x20for\x20waits\x20or\x20small\x20custom\x20checks\x0a\x0a##\x20Screenshot\x20Guidelines\x20-\x20IMPORTANT\x0aTake\x20screenshots\x20throughout\x20the\x20verification\x20flow\x20so\x20a\x20human\x20can\x20review\x20it\x20for\x20completeness.\x20Screenshots\x20are\x20your\x20evidence\x20trail.\x0a\x0a**When\x20to\x20take\x20screenshots\x20(use\x20Playwright\x20CLI\x20screenshot):**\x0a-\x20After\x20the\x20initial\x20snapshot\x20(capture\x20starting\x20state)\x0a-\x20Before\x20and\x20after\x20clicking\x20buttons\x20or\x20submitting\x20forms\x0a-\x20When\x20important\x20UI\x20elements\x20appear\x20(modals,\x20notifications,\x20loading\x20states)\x0a-\x20After\x20navigating\x20to\x20different\x20views\x20or\x20pages\x0a-\x20When\x20verifying\x20specific\x20elements\x20exist\x0a-\x20At\x20the\x20final\x20state\x20showing\x20the\x20completed\x20action\x0a\x0a**Screenshot\x20naming:**\x0a-\x20Use\x20descriptive\x20filenames\x20under\x20`'+_0x46950d+_0x3d52c2(0x220)+_0x27ebc8+_0x3d52c2(0x1cf)+buildCliArtifactPath(_0x46950d,_0x28a8ed['DQEUi'])+'\x22,\x20\x22'+_0x28a8ed['EQjJp'](buildCliArtifactPath,_0x46950d,_0x28a8ed[_0x3d52c2(0x1f9)])+_0x3d52c2(0x1ea)+buildCliArtifactPath(_0x46950d,'key_04_success-state.png')+'\x22\x0a-\x20The\x20\x22key_\x22\x20prefix\x20marks\x20screenshots\x20as\x20high-priority\x20evidence\x20for\x20human\x20reviewers\x0a\x0a**Aim\x20for\x203-6\x20screenshots\x20per\x20verification**\x20to\x20document\x20the\x20complete\x20flow.\x20Mark\x201-2\x20of\x20the\x20most\x20important\x20ones\x20with\x20the\x20\x22key_\x22\x20prefix.\x0a'+_0x30b9e7+'\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20(bug,\x20error,\x20missing\x20feature)\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.';}export function summarizeVerifyFeatureCliCommandAvailability(_0x5d4c70){const _0x4eb415=_0x231f,_0x37dd09={'JIKRd':function(_0x3838d0,_0x29dea7){return _0x3838d0===_0x29dea7;}},_0x329a40=[..._0x5d4c70[_0x4eb415(0x20d)]()]['sort']();let _0x2341a5=0x0;for(const _0x544aef of _0x5d4c70['values']()){_0x2341a5+=_0x544aef;}return{'cliCommandCount':_0x2341a5,'cliCommandsSeen':_0x329a40,'noCliCommandsCalled':_0x37dd09['JIKRd'](_0x2341a5,0x0)};}export function createVerifyFeatureCliHooks(_0x3864cc){const _0xd14a12=_0x231f,_0x1b2c42={'PXQXM':function(_0x54e3cb,_0x23fe8d){return _0x54e3cb!==_0x23fe8d;},'uGSqd':function(_0x1d2497,_0x42d4f3){return _0x1d2497!==_0x42d4f3;},'iOGJB':function(_0xf84b72,_0xe49dbd){return _0xf84b72(_0xe49dbd);},'EzDHo':function(_0x350301,_0x1ed94c){return _0x350301+_0x1ed94c;},'OmDTm':'tool_call','fjFBK':_0xd14a12(0x1c2),'Dgati':function(_0x3a0430,_0x583250){return _0x3a0430(_0x583250);},'CboSN':_0xd14a12(0x230),'wAIGU':function(_0x4b1b71,_0x25ac6f,_0x47fd09,_0x543625){return _0x4b1b71(_0x25ac6f,_0x47fd09,_0x543625);},'ZGGPE':_0xd14a12(0x1a9),'QrvNJ':_0xd14a12(0x207)},_0x1f4316=new Map(),_0x3fabce=async _0x19c4f6=>{const _0x30ee55=_0xd14a12;if(_0x1b2c42[_0x30ee55(0x1c0)](_0x19c4f6[_0x30ee55(0x1ce)],'PostToolUse'))return{};const _0x190b94=_0x19c4f6;if(_0x1b2c42['uGSqd'](_0x190b94[_0x30ee55(0x218)],'Bash'))return{};const _0x54d340=_0x190b94['tool_input'],_0x5cdd07=_0x1b2c42['iOGJB'](extractBashCommand,_0x54d340);if(!_0x5cdd07)return{};const _0x2b13c4=parsePlaywrightCliCommand(_0x5cdd07);if(!_0x2b13c4)return{};return _0x1f4316[_0x30ee55(0x209)](_0x2b13c4,_0x1b2c42['EzDHo'](_0x1f4316['get'](_0x2b13c4)||0x0,0x1)),_0x3864cc[_0x30ee55(0x242)](_0x1b2c42['OmDTm'],{'transport':_0x1b2c42[_0x30ee55(0x1ff)],'toolName':_0x2b13c4}),_0x3864cc['trackPhaseEnd'](_0x1b2c42['OmDTm'],{'transport':'playwright-cli','toolName':_0x2b13c4,'bashCommandPreview':_0x1b2c42['Dgati'](truncatePreview,_0x5cdd07)}),_0x2b13c4!==_0x1b2c42[_0x30ee55(0x1d5)]&&console['log'](_0x1b2c42[_0x30ee55(0x234)](formatPlaywrightCliConsoleLogMessage,_0x54d340,_0x5cdd07,_0x2b13c4)),{};},_0x1f55e7=async _0x1076b2=>{const _0x1cf221=_0xd14a12;if(_0x1076b2['hook_event_name']!==_0x1cf221(0x232))return{};const _0x73cf99=_0x1076b2;if(_0x1b2c42[_0x1cf221(0x1c0)](_0x73cf99[_0x1cf221(0x218)],_0x1cf221(0x207)))return{};return await _0x3864cc['trackPhaseError'](_0x1b2c42['ZGGPE'],_0x73cf99[_0x1cf221(0x224)],{'transport':'playwright-cli','toolName':_0x1b2c42[_0x1cf221(0x1bb)]}),{};};return{'postToolUseHook':_0x3fabce,'postToolUseFailureHook':_0x1f55e7,'commandCounts':_0x1f4316};}async function runPlaywrightCliLifecycleCommand(_0x2b0d29){const _0x2344ec=_0x231f,_0x3119d7={'JHfqQ':function(_0x4b252c,_0x43a793){return _0x4b252c(_0x43a793);},'gTCPa':function(_0x59f3fe,_0x454a4a,_0x213b0a){return _0x59f3fe(_0x454a4a,_0x213b0a);},'YWfmR':function(_0x4d3bd8,_0x19a0ea,_0x2a8afc){return _0x4d3bd8(_0x19a0ea,_0x2a8afc);}},{sessionId:_0x51ae83,configPath:_0xae025c,commandArgs:_0x2e5a84,env:_0x127c8d,telemetry:_0x179ab8,phase:_0x59b26d,metadata:_0x4cabf9,timeoutMs:_0x369144}=_0x2b0d29;_0x179ab8[_0x2344ec(0x242)](_0x59b26d,_0x4cabf9);try{const _0x3ac115=await _0x3119d7[_0x2344ec(0x1c3)](runPlaywrightCliCommand,{'sessionId':_0x51ae83,'configPath':_0xae025c,'commandArgs':_0x2e5a84,'cwd':process[_0x2344ec(0x21e)](),'env':_0x127c8d,'timeoutMs':_0x369144??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x179ab8[_0x2344ec(0x20c)](_0x59b26d,{..._0x4cabf9,'subcommand':_0x3ac115[_0x2344ec(0x1da)][_0x2344ec(0x1b3)],'stdoutPreview':_0x3119d7['gTCPa'](truncatePreview,_0x3ac115[_0x2344ec(0x214)],0x7d0),'stderrPreview':_0x3119d7[_0x2344ec(0x1a8)](truncatePreview,_0x3ac115['stderr'],0x7d0)});}catch(_0x3a1d4e){await _0x179ab8['trackPhaseError'](_0x59b26d,_0x3a1d4e,_0x4cabf9);throw _0x3a1d4e;}}export async function finalizeVerifyFeatureCliSession(_0x51322e){const _0x397157=_0x231f,_0x26b5a1={'ltSMB':_0x397157(0x1ae),'elmEc':_0x397157(0x1ec),'gyOWt':_0x397157(0x1e7),'iBuWg':function(_0x235105,_0x41a6f0,_0x28cce6){return _0x235105(_0x41a6f0,_0x28cce6);},'ZLVWC':_0x397157(0x1fe),'EOjjh':function(_0x185d11,_0x5ae7a6){return _0x185d11(_0x5ae7a6);}},{telemetry:_0x989dd4,sessionId:_0x180fab,configPath:_0xa3c00c,cliArtifactDir:_0x3cd06b,env:_0x17aece,transportMetadata:_0x1538f9}=_0x51322e,_0x16e55a=[{'phase':_0x26b5a1['ltSMB'],'commandArgs':[_0x26b5a1[_0x397157(0x215)]]},{'phase':_0x26b5a1['gyOWt'],'commandArgs':['video-stop',_0x397157(0x1e6)+_0x26b5a1['iBuWg'](buildCliArtifactPath,_0x3cd06b,_0x26b5a1['ZLVWC'])]},{'phase':'playwright_cli_close','commandArgs':[_0x397157(0x20f)]}];for(const _0x4644d4 of _0x16e55a){try{await _0x26b5a1[_0x397157(0x1eb)](runPlaywrightCliLifecycleCommand,{'sessionId':_0x180fab,'configPath':_0xa3c00c,'commandArgs':[..._0x4644d4[_0x397157(0x1f6)]],'env':_0x17aece,'telemetry':_0x989dd4,'phase':_0x4644d4['phase'],'metadata':_0x1538f9});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x1cab24){const _0x2a11c7=_0x231f,_0x2bd353={'mrnjv':_0x2a11c7(0x202),'lCCjU':function(_0x30f7fa,_0x564b4a,_0x2b2c2d){return _0x30f7fa(_0x564b4a,_0x2b2c2d);},'tFJEe':function(_0x586605,_0xcf9b56){return _0x586605(_0xcf9b56);}},_0x27e672=[_0x2bd353[_0x2a11c7(0x23f)],_0x2a11c7(0x1e5)];for(const _0x36ac31 of _0x27e672){const _0x3fec0d=_0x2bd353[_0x2a11c7(0x1e3)](join,_0x1cab24,_0x36ac31);try{return{'buffer':await _0x2bd353['tFJEe'](readFile,_0x3fec0d),'source':_0x3fec0d};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x5e6f25){const _0xc51e3=_0x231f,_0x34ce98={'GtFXN':function(_0x41e80c,_0xf47c92,_0x2ed0f9){return _0x41e80c(_0xf47c92,_0x2ed0f9);},'wyTss':function(_0x45192d,_0x1d9824,_0x3cbb20){return _0x45192d(_0x1d9824,_0x3cbb20);},'Oogab':function(_0xe6e050,_0x4be384,_0x36e7a4){return _0xe6e050(_0x4be384,_0x36e7a4);},'MkUun':function(_0x5353f8,_0x5691f0){return _0x5353f8(_0x5691f0);},'rTZXR':function(_0x1acfc0,_0x23f95a){return _0x1acfc0<_0x23f95a;}},{cwd:_0x3d35d4,cliArtifactDir:_0x30cc54,startTime:_0x44fd82}=_0x5e6f25,_0x59d7d4=[];await _0x34ce98['GtFXN'](mkdir,_0x30cc54,{'recursive':!![]});const _0x9507e8=await _0x34ce98['wyTss'](readdir,_0x3d35d4,{'withFileTypes':!![]});for(const _0x4b9afc of _0x9507e8){if(!_0x4b9afc[_0xc51e3(0x1ca)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0xc51e3(0x1fb)](_0x4b9afc[_0xc51e3(0x1bd)]))continue;const _0xc6b1ca=_0x34ce98[_0xc51e3(0x204)](join,_0x3d35d4,_0x4b9afc[_0xc51e3(0x1bd)]),_0x4c0360=await _0x34ce98[_0xc51e3(0x1ed)](stat,_0xc6b1ca);if(_0x34ce98[_0xc51e3(0x239)](_0x4c0360['mtimeMs']+0x7d0,_0x44fd82))continue;const _0x3fdbf4=buildCliArtifactPath(_0x30cc54,_0x4b9afc[_0xc51e3(0x1bd)]);if(_0xc6b1ca===_0x3fdbf4)continue;await _0x34ce98['wyTss'](rename,_0xc6b1ca,_0x3fdbf4),_0x59d7d4['push'](_0x4b9afc['name']);}return _0x59d7d4['sort']();}
|
|
1
|
+
(function(_0x27c880,_0x52a052){const _0x3ba24c=_0x82f9,_0x5ab4a6=_0x27c880();while(!![]){try{const _0x106a76=-parseInt(_0x3ba24c(0x15c))/0x1*(-parseInt(_0x3ba24c(0x16f))/0x2)+-parseInt(_0x3ba24c(0x1ac))/0x3*(-parseInt(_0x3ba24c(0x131))/0x4)+parseInt(_0x3ba24c(0x132))/0x5+parseInt(_0x3ba24c(0x19c))/0x6*(parseInt(_0x3ba24c(0x194))/0x7)+parseInt(_0x3ba24c(0x199))/0x8*(parseInt(_0x3ba24c(0x161))/0x9)+parseInt(_0x3ba24c(0x16a))/0xa*(-parseInt(_0x3ba24c(0x18c))/0xb)+-parseInt(_0x3ba24c(0x135))/0xc;if(_0x106a76===_0x52a052)break;else _0x5ab4a6['push'](_0x5ab4a6['shift']());}catch(_0x12eb80){_0x5ab4a6['push'](_0x5ab4a6['shift']());}}}(_0x3b9b,0xc1414));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';const PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,PLAYWRIGHT_CLI_PREVIEW_LIMIT=0xf0,VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|session-recording(?:-\d+)?\.webm|trace(?:\.trace)?(?:-\d+)?\.zip|current_snap\.ya?ml)$/i;function truncatePreview(_0x454ec6,_0x184e25=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x14e080=_0x82f9,_0x19a28f={'hPjsp':function(_0x576f59,_0x15d4a7){return _0x576f59>_0x15d4a7;},'EZoVl':function(_0x2d5507,_0x13f0fe){return _0x2d5507+_0x13f0fe;},'GPRad':'...'};return _0x19a28f[_0x14e080(0x17b)](_0x454ec6['length'],_0x184e25)?_0x19a28f[_0x14e080(0x15d)](_0x454ec6[_0x14e080(0x178)](0x0,_0x184e25),_0x19a28f['GPRad']):_0x454ec6;}function buildCliArtifactPath(_0x432895,_0x1ad7c1){const _0x36aacc={'NfQWR':function(_0x2c8675,_0x21b463,_0x3adeb0){return _0x2c8675(_0x21b463,_0x3adeb0);}};return _0x36aacc['NfQWR'](join,_0x432895,_0x1ad7c1);}function toStepDisplayName(_0x19957a){const _0x4132c6=_0x82f9,_0x1890a4=basename(_0x19957a)[_0x4132c6(0x14f)](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')[_0x4132c6(0x14f)](/-/g,'\x20');return{'name':_0x1890a4,'isKeyStep':/^key_/i[_0x4132c6(0x173)](basename(_0x19957a))};}function extractShellValue(_0x3e6f77){if(!_0x3e6f77)return null;return _0x3e6f77[0x1]??_0x3e6f77[0x2]??_0x3e6f77[0x3]??null;}function extractFilenameOption(_0x1cd737){const _0x62af12=_0x82f9;return extractShellValue(_0x1cd737[_0x62af12(0x1af)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x44b022,_0x4736af){const _0x5e800e=_0x82f9,_0x1561de={'ApEMs':_0x5e800e(0x125)},_0x29908b=_0x4736af[_0x5e800e(0x14f)](/[.*+?^${}()|[\]\\]/g,_0x1561de[_0x5e800e(0x153)]);return extractShellValue(_0x44b022['match'](new RegExp('(?:^|\x5cs)'+_0x29908b+_0x5e800e(0x165))));}function formatCommandTarget(_0x1f31ff){const _0x4ae953=_0x82f9,_0x39ffa0={'cCkbt':function(_0x240e75,_0x21c5ae,_0x2e7a87){return _0x240e75(_0x21c5ae,_0x2e7a87);}};if(!_0x1f31ff)return'target';if(/^e\d+$/i['test'](_0x1f31ff))return'ref\x20'+_0x1f31ff;return JSON[_0x4ae953(0x192)](_0x39ffa0['cCkbt'](truncatePreview,_0x1f31ff,0x78));}function formatPlaywrightCliLog(_0x29a80a,_0x2d644d){const _0x421f65=_0x82f9,_0x5f291f={'HVTvM':'open','kHfUm':'tracing-stop','oziDX':_0x421f65(0x18d),'WWnFu':_0x421f65(0x13b),'RNTHW':'stop\x20video\x20recording','SlgTr':function(_0x50f5a7,_0x2b4e9e){return _0x50f5a7(_0x2b4e9e);},'FnEVX':'capture\x20snapshot','YZzSS':'capture\x20screenshot','TAbbH':function(_0x47e799,_0x391d48,_0x454a28){return _0x47e799(_0x391d48,_0x454a28);},'Lqhgh':_0x421f65(0x174),'PkAxE':function(_0x50c5e6,_0x431a){return _0x50c5e6(_0x431a);},'VXsfJ':function(_0x26806b,_0xaecf6d,_0x3d2f52){return _0x26806b(_0xaecf6d,_0x3d2f52);},'uUsrU':function(_0x1ea5f8,_0x17b7b2){return _0x1ea5f8(_0x17b7b2);},'brGcb':function(_0x7131f,_0x4df58f,_0x4c6328){return _0x7131f(_0x4df58f,_0x4c6328);},'lCXFf':_0x421f65(0x1b0),'yMYPW':'run-code','MmOdW':_0x421f65(0x143),'JsfQh':function(_0x3935f7,_0x2d5bf1,_0x2c9a5a){return _0x3935f7(_0x2d5bf1,_0x2c9a5a);},'zayGB':'open\x20new\x20tab','pLsoz':'tab-select'};switch(_0x2d644d){case _0x5f291f[_0x421f65(0x1a0)]:{const _0x3b9bf1=extractFirstCommandArgument(_0x29a80a,_0x2d644d);return _0x3b9bf1?'open\x20'+_0x3b9bf1:'open\x20browser';}case _0x421f65(0x16d):return _0x421f65(0x17a);case _0x5f291f['kHfUm']:return _0x5f291f[_0x421f65(0x15f)];case _0x421f65(0x1ae):return'start\x20video\x20recording';case _0x5f291f['WWnFu']:return _0x5f291f['RNTHW'];case'snapshot':{const _0xc694fc=_0x5f291f['SlgTr'](extractFilenameOption,_0x29a80a);if(!_0xc694fc)return _0x5f291f['FnEVX'];const {name:_0x4fb97e}=toStepDisplayName(_0xc694fc);return _0x421f65(0x146)+_0x4fb97e+'`';}case'screenshot':{const _0x448a6b=_0x5f291f['SlgTr'](extractFilenameOption,_0x29a80a);if(!_0x448a6b)return _0x5f291f['YZzSS'];const {name:_0x2e57d9,isKeyStep:_0x506a81}=toStepDisplayName(_0x448a6b);return _0x506a81?_0x421f65(0x1a8)+_0x2e57d9+'`':'capture\x20step\x20`'+_0x2e57d9+'`';}case'click':return _0x421f65(0x159)+formatCommandTarget(_0x5f291f['TAbbH'](extractFirstCommandArgument,_0x29a80a,_0x2d644d));case _0x5f291f[_0x421f65(0x1aa)]:return _0x421f65(0x12c)+_0x5f291f['PkAxE'](formatCommandTarget,_0x5f291f[_0x421f65(0x12f)](extractFirstCommandArgument,_0x29a80a,_0x2d644d));case _0x421f65(0x1a1):return'fill\x20'+_0x5f291f['uUsrU'](formatCommandTarget,_0x5f291f['brGcb'](extractFirstCommandArgument,_0x29a80a,_0x2d644d));case _0x5f291f[_0x421f65(0x19f)]:return'press\x20'+formatCommandTarget(extractFirstCommandArgument(_0x29a80a,_0x2d644d));case _0x5f291f[_0x421f65(0x124)]:return _0x5f291f[_0x421f65(0x158)];case _0x421f65(0x133):{const _0x467809=_0x5f291f[_0x421f65(0x144)](extractFirstCommandArgument,_0x29a80a,_0x2d644d);return _0x467809?'open\x20new\x20tab\x20'+_0x467809:_0x5f291f['zayGB'];}case _0x5f291f['pLsoz']:{const _0x194491=extractFirstCommandArgument(_0x29a80a,_0x2d644d);return _0x194491?'select\x20tab\x20'+_0x194491:'select\x20tab';}default:return _0x2d644d;}}function extractPlaywrightCliToolDescription(_0x2dbbf1){const _0x1525ac=_0x82f9,_0x382b74={'AHcIZ':function(_0x527bf1,_0x53c364){return _0x527bf1!==_0x53c364;},'IryHm':'string'},_0x1a1c15=_0x2dbbf1['description'];if(_0x382b74[_0x1525ac(0x179)](typeof _0x1a1c15,_0x382b74[_0x1525ac(0x187)]))return null;const _0xedb304=_0x1a1c15[_0x1525ac(0x1a6)]()[_0x1525ac(0x14f)](/\s+/g,'\x20');return _0xedb304[_0x1525ac(0x1a4)]>0x0?_0xedb304:null;}export function formatPlaywrightCliConsoleLogMessage(_0x4a9cea,_0x9c7f16,_0x276f74){const _0x4d7818=_0x82f9,_0x3f8fda={'PLMCS':function(_0x400712,_0x55840b,_0x33b275){return _0x400712(_0x55840b,_0x33b275);}},_0x59cc92=_0x3f8fda['PLMCS'](formatPlaywrightCliLog,_0x9c7f16,_0x276f74),_0xfb8fc3=extractPlaywrightCliToolDescription(_0x4a9cea);if(!_0xfb8fc3)return'[playwright-cli]\x20'+_0x59cc92;if(process['env'][_0x4d7818(0x13a)])return _0x4d7818(0x154)+_0xfb8fc3+'\x20('+_0x59cc92+')';return _0x4d7818(0x154)+_0xfb8fc3;}export function buildVerifyFeatureCliDebugPrompt(_0x3bcb50,_0x28926c){const _0x2c3c5e=_0x82f9,_0x2a91b1={'EuWrR':function(_0x2f11e5,_0x120e2f,_0xb5c75d){return _0x2f11e5(_0x120e2f,_0xb5c75d);},'ZcnmF':'00_mozilla-homepage.yml','pSgyi':function(_0xd35e69,_0x37c5e2,_0x1b20d1){return _0xd35e69(_0x37c5e2,_0x1b20d1);},'cycfy':function(_0x50cf11,_0x4ab3ab,_0x40b5a9){return _0x50cf11(_0x4ab3ab,_0x40b5a9);},'JRhKP':'02_learn-more.yml','RdDKV':_0x2c3c5e(0x145),'ApHxb':function(_0x374971,_0x18c61d){return _0x374971(_0x18c61d);},'Mpgcm':function(_0x2b4a74,_0x47bd0c){return _0x2b4a74(_0x47bd0c);}},_0x230967=_0x2a91b1[_0x2c3c5e(0x182)](buildCliArtifactPath,_0x28926c,_0x2a91b1['ZcnmF']),_0x104423=_0x2a91b1['pSgyi'](buildCliArtifactPath,_0x28926c,_0x2c3c5e(0x1a3)),_0x5c9a1c=_0x2a91b1[_0x2c3c5e(0x141)](buildCliArtifactPath,_0x28926c,_0x2a91b1['JRhKP']),_0x77e6c0=buildCliArtifactPath(_0x28926c,_0x2a91b1[_0x2c3c5e(0x19d)]),_0x529e4b=_0x2a91b1['ApHxb'](quoteShellArg,_0x230967),_0x51d449=_0x2a91b1[_0x2c3c5e(0x138)](quoteShellArg,_0x104423),_0x2b3f9a=quoteShellArg(_0x5c9a1c),_0x5b1367=_0x2a91b1['ApHxb'](quoteShellArg,_0x77e6c0);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x3bcb50+'\x0a\x0a1.\x20Run\x20`'+_0x3bcb50+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x3bcb50+_0x2c3c5e(0x190)+_0x3bcb50+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x28926c+_0x2c3c5e(0x14d)+_0x3bcb50+_0x2c3c5e(0x191)+_0x529e4b+_0x2c3c5e(0x19b)+_0x3bcb50+_0x2c3c5e(0x139)+_0x51d449+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x3bcb50+_0x2c3c5e(0x191)+_0x2b3f9a+_0x2c3c5e(0x17e)+_0x3bcb50+'\x20screenshot\x20--filename\x20'+_0x5b1367+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x1fb613){const _0x5c61dd=_0x82f9,_0x2fcb3b={'zRlxp':'en-US','DYmDh':_0x5c61dd(0x15a),'kzXUh':'\x20>\x20','bYbZO':'01_initial.yml','YIjED':'02_state.yml','FIsed':'key_03_success-state.png','NQRUH':'01_initial-state.png','JFjky':function(_0x36ee5e,_0x440507){return _0x36ee5e(_0x440507);},'SkobT':function(_0x6bd154,_0xb8b6de){return _0x6bd154(_0xb8b6de);},'BUqvB':function(_0x5f061a,_0x3c83c5,_0x36b018){return _0x5f061a(_0x3c83c5,_0x36b018);},'rcGYR':_0x5c61dd(0x193),'cdusl':function(_0x44c00f,_0x1b44c5,_0x2a7d49){return _0x44c00f(_0x1b44c5,_0x2a7d49);}},{checklistItem:_0xb345c8,itemFeedback:_0x47dc29,taskDescription:_0xf9354f,cliCommandPrefix:_0x2848c9,cliArtifactDir:_0x422ef4,isCdpMode:_0x3abcb5,url:_0x692ec8,cdpEndpoint:_0x53ab81,loginInstructions:_0x4de341}=_0x1fb613,_0x32b8c1=buildCliArtifactPath(_0x422ef4,_0x2fcb3b['bYbZO']),_0x2836b4=buildCliArtifactPath(_0x422ef4,_0x2fcb3b[_0x5c61dd(0x130)]),_0x4b0131=buildCliArtifactPath(_0x422ef4,_0x2fcb3b['FIsed']),_0x228864=buildCliArtifactPath(_0x422ef4,_0x2fcb3b[_0x5c61dd(0x186)]),_0x413ac8=quoteShellArg(_0x32b8c1),_0x5f0ed6=_0x2fcb3b[_0x5c61dd(0x185)](quoteShellArg,_0x2836b4),_0x367ed6=quoteShellArg(_0x4b0131),_0x120e6c=_0x2fcb3b[_0x5c61dd(0x17d)](quoteShellArg,_0x228864),_0x275fbf=_0xb345c8[_0x5c61dd(0x167)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0xb345c8['notes']:'';let _0x50fbdd='';if(_0x47dc29&&_0x47dc29[_0x5c61dd(0x157)][_0x5c61dd(0x1a4)]>0x0){const _0x4f5ed8=_0x47dc29['unaddressedComments']['map'](_0x37aeb0=>{const _0x5169dc=_0x5c61dd,_0x5bfbb4=new Date(_0x37aeb0['createdAt'])[_0x5169dc(0x168)](_0x2fcb3b['zRlxp'],{'month':_0x2fcb3b['DYmDh'],'day':'numeric'}),_0x2940e1=_0x37aeb0[_0x5169dc(0x156)]||_0x37aeb0[_0x5169dc(0x152)]||'Reviewer',_0x2ddea2=_0x37aeb0['domRef']?'\x20(on\x20element:\x20<'+(_0x37aeb0['domRef'][_0x5169dc(0x16b)]['split'](_0x2fcb3b['kzXUh'])['pop']()?.['split'](':')[0x0]||'element')+_0x5169dc(0x134)+(_0x37aeb0[_0x5169dc(0x1ad)][_0x5169dc(0x189)]||'')['slice'](0x0,0x32)+'\x22)':'';return _0x5169dc(0x136)+_0x37aeb0['id']+']\x20**'+_0x2940e1+_0x5169dc(0x126)+_0x5bfbb4+'):\x20\x22'+_0x37aeb0['content']+'\x22'+_0x2ddea2;})[_0x5c61dd(0x1ab)]('\x0a');_0x50fbdd='\x0a\x0a##\x20Reviewer\x20Feedback\x20to\x20Address\x0aThe\x20following\x20reviewer\x20comments\x20were\x20left\x20on\x20the\x20previous\x20version\x20of\x20this\x20item.\x0aVerify\x20that\x20each\x20concern\x20has\x20been\x20addressed\x20in\x20the\x20current\x20implementation.\x0aFor\x20each\x20comment\x20you\x20believe\x20has\x20been\x20addressed,\x20include\x20its\x20ID\x20(the\x20bracketed\x20value)\x20in\x20the\x20addressedCommentIds\x20array\x20in\x20your\x20output.\x0a\x0a'+_0x4f5ed8;}const _0x2bb9e6=_0x47dc29?.[_0x5c61dd(0x183)]?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x47dc29['canonicalFlow']:'',_0x210df5=_0x3abcb5?_0x5c61dd(0x19e)+_0x53ab81+'.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.':_0x5c61dd(0x18f)+_0x692ec8+_0x5c61dd(0x176),_0x7dad61=_0x692ec8?quoteShellArg(_0x692ec8):'',_0xb63fc=_0x3abcb5?'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x2848c9+_0x5c61dd(0x169)+_0x2848c9+'\x20tracing-start`,\x20then\x20`'+_0x2848c9+_0x5c61dd(0x170)+_0x422ef4+_0x5c61dd(0x188)+_0x2848c9+'\x20snapshot\x20--filename\x20'+_0x413ac8+'`\x20to\x20inspect\x20the\x20current\x20app\x20state.\x0a5.\x20Read\x20snapshot\x20YAML\x20files\x20to\x20find\x20element\x20references\x20like\x20`e12`,\x20then\x20use\x20them\x20with\x20`click`,\x20`fill`,\x20`check`,\x20or\x20`select`.\x0a6.\x20Use\x20`'+_0x2848c9+'\x20screenshot\x20--filename\x20'+_0x120e6c+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x2848c9+_0x5c61dd(0x175):_0x5c61dd(0x155)+_0x2848c9+_0x5c61dd(0x13e)+_0x7dad61+'`,\x20then\x20`'+_0x2848c9+'\x20tracing-start`,\x20then\x20`'+_0x2848c9+_0x5c61dd(0x170)+_0x422ef4+_0x5c61dd(0x188)+_0x2848c9+_0x5c61dd(0x191)+_0x413ac8+_0x5c61dd(0x128)+_0x2848c9+_0x5c61dd(0x139)+_0x120e6c+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x2848c9+_0x5c61dd(0x162),_0x15b315=_0x3abcb5?_0x5c61dd(0x14a):_0x5c61dd(0x148),_0x1c73c8=_0x4de341?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x4de341+'\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20immediately\x20with\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'';return'You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a'+_0xb345c8['description']+_0x275fbf+_0x50fbdd+_0x2bb9e6+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0xf9354f+'\x0a\x0a'+_0x210df5+_0x1c73c8+'\x0a\x0a'+_0xb63fc+_0x5c61dd(0x195)+_0x2848c9+'`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`'+_0x422ef4+_0x5c61dd(0x13c)+_0x5f0ed6+_0x5c61dd(0x12a)+_0x367ed6+'`\x0a-\x20`run-code\x20\x22await\x20page.waitForTimeout(1000)\x22`\x20for\x20waits\x20or\x20small\x20custom\x20checks\x0a\x0a##\x20Screenshot\x20Guidelines\x20-\x20IMPORTANT\x0aTake\x20screenshots\x20throughout\x20the\x20verification\x20flow\x20so\x20a\x20human\x20can\x20review\x20it\x20for\x20completeness.\x20Screenshots\x20are\x20your\x20evidence\x20trail.\x0a\x0a**When\x20to\x20take\x20screenshots\x20(use\x20Playwright\x20CLI\x20screenshot):**\x0a-\x20After\x20the\x20initial\x20snapshot\x20(capture\x20starting\x20state)\x0a-\x20Before\x20and\x20after\x20clicking\x20buttons\x20or\x20submitting\x20forms\x0a-\x20When\x20important\x20UI\x20elements\x20appear\x20(modals,\x20notifications,\x20loading\x20states)\x0a-\x20After\x20navigating\x20to\x20different\x20views\x20or\x20pages\x0a-\x20When\x20verifying\x20specific\x20elements\x20exist\x0a-\x20At\x20the\x20final\x20state\x20showing\x20the\x20completed\x20action\x0a\x0a**Screenshot\x20naming:**\x0a-\x20Use\x20descriptive\x20filenames\x20under\x20`'+_0x422ef4+_0x5c61dd(0x1b3)+_0x228864+'\x22,\x20\x22'+_0x2fcb3b[_0x5c61dd(0x147)](buildCliArtifactPath,_0x422ef4,_0x2fcb3b['rcGYR'])+_0x5c61dd(0x129)+buildCliArtifactPath(_0x422ef4,_0x5c61dd(0x18b))+'\x22\x0a-\x20Number\x20prefixes\x20(01_,\x2002_,\x20etc.)\x20help\x20maintain\x20chronological\x20order\x0a-\x20For\x20KEY\x20MOMENTS\x20that\x20prove\x20the\x20scenario\x20is\x20complete,\x20prefix\x20with\x20\x22key_\x22:\x20\x22'+_0x2fcb3b[_0x5c61dd(0x13f)](buildCliArtifactPath,_0x422ef4,_0x5c61dd(0x181))+_0x5c61dd(0x166)+_0x15b315+_0x5c61dd(0x150);}export function summarizeVerifyFeatureCliCommandAvailability(_0x5ac351){const _0x34e93e=_0x82f9,_0x5df073={'znIYM':function(_0x3279cb,_0x49dc2e){return _0x3279cb===_0x49dc2e;}},_0x1b793b=[..._0x5ac351[_0x34e93e(0x15e)]()]['sort']();let _0x946760=0x0;for(const _0x2f02d0 of _0x5ac351['values']()){_0x946760+=_0x2f02d0;}return{'cliCommandCount':_0x946760,'cliCommandsSeen':_0x1b793b,'noCliCommandsCalled':_0x5df073[_0x34e93e(0x177)](_0x946760,0x0)};}export function createVerifyFeatureCliHooks(_0x17a12e){const _0x473233={'Lvuod':function(_0x473c9d,_0x2c2714){return _0x473c9d!==_0x2c2714;},'cPbNt':'Bash','dUehG':function(_0x1186e5,_0x39ffe6){return _0x1186e5(_0x39ffe6);},'HyfOW':function(_0x31db0e,_0x252d7e){return _0x31db0e(_0x252d7e);},'ESKEg':'playwright-cli','EvafZ':'tool_call','bpPrW':function(_0x9bd4be,_0x1eee4d){return _0x9bd4be!==_0x1eee4d;},'Ibpmw':'PostToolUseFailure'},_0x4bf251=new Map(),_0x50e98f=async _0x32a5ee=>{const _0x3f93ae=_0x82f9;if(_0x32a5ee[_0x3f93ae(0x180)]!==_0x3f93ae(0x12b))return{};const _0x98389e=_0x32a5ee;if(_0x473233['Lvuod'](_0x98389e[_0x3f93ae(0x163)],_0x473233[_0x3f93ae(0x16e)]))return{};const _0x57a1ae=_0x98389e['tool_input'],_0x13dd47=_0x473233[_0x3f93ae(0x13d)](extractBashCommand,_0x57a1ae);if(!_0x13dd47)return{};const _0x4c5a20=_0x473233[_0x3f93ae(0x16c)](parsePlaywrightCliCommand,_0x13dd47);if(!_0x4c5a20)return{};return _0x4bf251[_0x3f93ae(0x1a5)](_0x4c5a20,(_0x4bf251[_0x3f93ae(0x1a9)](_0x4c5a20)||0x0)+0x1),_0x17a12e[_0x3f93ae(0x12d)](_0x3f93ae(0x14c),{'transport':_0x473233[_0x3f93ae(0x1b1)],'toolName':_0x4c5a20}),_0x17a12e['trackPhaseEnd'](_0x473233['EvafZ'],{'transport':_0x473233['ESKEg'],'toolName':_0x4c5a20,'bashCommandPreview':truncatePreview(_0x13dd47)}),_0x4c5a20!==_0x3f93ae(0x17c)&&console['log'](formatPlaywrightCliConsoleLogMessage(_0x57a1ae,_0x13dd47,_0x4c5a20)),{};},_0x5b1cc1=async _0x8cc067=>{const _0x462de3=_0x82f9;if(_0x473233[_0x462de3(0x12e)](_0x8cc067[_0x462de3(0x180)],_0x473233['Ibpmw']))return{};const _0x402f99=_0x8cc067;if(_0x402f99[_0x462de3(0x163)]!==_0x462de3(0x1a2))return{};return await _0x17a12e['trackPhaseError']('tool_failure',_0x402f99['error'],{'transport':_0x473233[_0x462de3(0x1b1)],'toolName':'Bash'}),{};};return{'postToolUseHook':_0x50e98f,'postToolUseFailureHook':_0x5b1cc1,'commandCounts':_0x4bf251};}function _0x82f9(_0x794c0d,_0x3aae07){_0x794c0d=_0x794c0d-0x124;const _0x3b9be6=_0x3b9b();let _0x82f9e6=_0x3b9be6[_0x794c0d];return _0x82f9e6;}async function runPlaywrightCliLifecycleCommand(_0x1a1f2f){const _0x15efd3=_0x82f9,_0x3b291a={'dQvEF':function(_0x50da12,_0x17c13b){return _0x50da12(_0x17c13b);},'GHMHi':function(_0x176842,_0x5a531e,_0x4aadff){return _0x176842(_0x5a531e,_0x4aadff);}},{sessionId:_0x4e0ecd,configPath:_0x372481,commandArgs:_0x1939a6,env:_0x3c58a4,telemetry:_0x49ebf3,phase:_0x10cbfc,metadata:_0x47f792,timeoutMs:_0x1381d4}=_0x1a1f2f;_0x49ebf3[_0x15efd3(0x12d)](_0x10cbfc,_0x47f792);try{const _0x2f1d88=await _0x3b291a['dQvEF'](runPlaywrightCliCommand,{'sessionId':_0x4e0ecd,'configPath':_0x372481,'commandArgs':_0x1939a6,'cwd':process[_0x15efd3(0x197)](),'env':_0x3c58a4,'timeoutMs':_0x1381d4??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x49ebf3[_0x15efd3(0x164)](_0x10cbfc,{..._0x47f792,'subcommand':_0x2f1d88['invocation']['subcommand'],'stdoutPreview':_0x3b291a[_0x15efd3(0x1b2)](truncatePreview,_0x2f1d88[_0x15efd3(0x196)],0x7d0),'stderrPreview':_0x3b291a[_0x15efd3(0x1b2)](truncatePreview,_0x2f1d88[_0x15efd3(0x149)],0x7d0)});}catch(_0x41270c){await _0x49ebf3[_0x15efd3(0x160)](_0x10cbfc,_0x41270c,_0x47f792);throw _0x41270c;}}function _0x3b9b(){const _0x39e926=['\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL\x20(same\x20protocol,\x20host,\x20and\x20port)\x0a-\x20For\x20example,\x20if\x20the\x20base\x20URL\x20is\x20\x22http://localhost:3000\x22,\x20you\x20can\x20navigate\x20to\x20\x22http://localhost:3000/home\x22,\x20\x22http://localhost:3000/settings\x22,\x20etc.\x0a-\x20DO\x20NOT\x20navigate\x20to\x20any\x20different\x20domain,\x20host,\x20or\x20port\x20under\x20any\x20circumstances\x0a-\x20If\x20documentation\x20or\x20code\x20diffs\x20suggest\x20a\x20path\x20exists\x20(e.g.,\x20\x22/dashboard\x22),\x20you\x20may\x20navigate\x20to\x20that\x20path\x20ONLY\x20under\x20the\x20base\x20URL\x20above\x0a-\x20The\x20base\x20URL\x20above\x20is\x20the\x20ONLY\x20authorized\x20profile\x20for\x20this\x20verification','znIYM','slice','AHcIZ','start\x20tracing','hPjsp','snapshot','SkobT','`\x0a9.\x20Run\x20`','hTlYD','hook_event_name','key_04_success-state.png','EuWrR','canonicalFlow','playwright_cli_close','JFjky','NQRUH','IryHm','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','textContent','eBpxl','03_result-visible.png','60379YKvqan','stop\x20tracing','mtimeMs','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','\x20tracing-start`\x0a3.\x20Run\x20`','\x20snapshot\x20--filename\x20','stringify','02_button-clicked.png','7zBzVpk','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','stdout','cwd','ANBvx','1528624ATEoPo','--filename=','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','934152hEbIxA','RdDKV','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','lCXFf','HVTvM','fill','Bash','01_mozilla-homepage.png','length','set','trim','trace.zip','capture\x20key\x20step\x20`','get','Lqhgh','join','80991LyBjhx','domRef','video-start','match','press','ESKEg','GHMHi','`:\x20\x22','yMYPW','\x5c$&','**\x20(','gBwZI','`\x20and\x20read\x20the\x20snapshot\x20file\x20to\x20inspect\x20the\x20page.\x0a5.\x20**IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors\x20before\x20proceeding.**\x0a6.\x20Execute\x20the\x20task\x20step-by-step\x20with\x20Playwright\x20CLI\x20commands.\x0a7.\x20Use\x20`','\x22,\x20\x22','`\x20writes\x20a\x20YAML\x20snapshot\x20you\x20can\x20read\x20for\x20element\x20refs\x0a-\x20`click\x20<ref>`,\x20`fill\x20<ref>\x20\x22text\x22`,\x20`check\x20<ref>`,\x20`press\x20Enter`\x0a-\x20`tab-list`,\x20`tab-select\x20<index>`,\x20`tab-new\x20<url>`\x0a-\x20`screenshot\x20--filename\x20','PostToolUse','check\x20','trackPhaseStart','bpPrW','VXsfJ','YIjED','228fxnXoy','2155660tgXKRO','tab-new','>\x20\x22','18820524adbCqQ','-\x20[','wcqgB','Mpgcm','\x20screenshot\x20--filename\x20','DEBUG','video-stop','`\x0a-\x20`snapshot\x20--filename\x20','dUehG','\x20open\x20','cdusl','session-recording.webm','cycfy','PuemU','run\x20custom\x20Playwright\x20code','JsfQh','03_learn-more.png','capture\x20snapshot\x20`','BUqvB','\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20step\x202\x20(taking\x20initial\x20snapshot),\x20IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20HTTP\x20404:\x20\x22404\x22,\x20\x22Not\x20Found\x22,\x20\x22Page\x20not\x20found\x22,\x20\x22does\x20not\x20exist\x22\x0a-\x20HTTP\x20500:\x20\x22500\x22,\x20\x22Internal\x20Server\x20Error\x22,\x20\x22Server\x20Error\x22,\x20\x22Something\x20went\x20wrong\x22\x0a-\x20HTTP\x20400:\x20\x22400\x22,\x20\x22Bad\x20Request\x22,\x20\x22Invalid\x20request\x22\x0a\x0a**Also\x20check\x20for:**\x0a-\x20Framework\x20error\x20pages\x20(Next.js\x20error\x20boundary,\x20React\x20error\x20page,\x20\x22Application\x20error\x22)\x0a-\x20Completely\x20blank/empty\x20pages\x20with\x20no\x20content\x0a-\x20\x22Cannot\x20GET\x20/path\x22\x20messages\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.','stderr','\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20taking\x20the\x20initial\x20snapshot,\x20IMMEDIATELY\x20check\x20for\x20blocking\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20Crash\x20or\x20error\x20dialogs\x20(\x22An\x20error\x20occurred\x22,\x20\x22Something\x20went\x20wrong\x22,\x20unhandled\x20exception\x20messages)\x0a-\x20Blank\x20or\x20empty\x20window\x20with\x20no\x20rendered\x20content\x0a-\x20Framework\x20error\x20boundaries\x20(React\x20error\x20page,\x20Electron\x20crash\x20reporter)\x0a-\x20Unresponsive\x20or\x20frozen\x20UI\x20(no\x20interactive\x20elements\x20in\x20snapshot)\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22App\x20crashed\x20—\x20error\x20dialog\x20visible\x20on\x20launch\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20type:\x20\x22APP_ERROR\x22\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.','name','tool_call','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','playwright_cli_video_stop','replace','\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20(bug,\x20error,\x20missing\x20feature)\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.','tracing-stop','authorEmail','ApEMs','[ranger-verification-agent]\x20','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','authorName','unaddressedComments','MmOdW','click\x20','short','close','81337wMEdqK','EZoVl','keys','oziDX','trackPhaseError','54QzWqkB','\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a9.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a10.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario','tool_name','trackPhaseEnd','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','\x22\x0a-\x20The\x20\x22key_\x22\x20prefix\x20marks\x20screenshots\x20as\x20high-priority\x20evidence\x20for\x20human\x20reviewers\x0a\x0a**Aim\x20for\x203-6\x20screenshots\x20per\x20verification**\x20to\x20document\x20the\x20complete\x20flow.\x20Mark\x201-2\x20of\x20the\x20most\x20important\x20ones\x20with\x20the\x20\x22key_\x22\x20prefix.\x0a','notes','toLocaleDateString','\x20open`,\x20then\x20`','1810FIeJIT','selector','HyfOW','tracing-start','cPbNt','2pvdAwu','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','commandArgs','isFile','test','check','\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a7.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a8.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario'];_0x3b9b=function(){return _0x39e926;};return _0x3b9b();}export async function finalizeVerifyFeatureCliSession(_0x307b6c){const _0x335cf9=_0x82f9,_0xc99df8={'wrGbX':_0x335cf9(0x151),'bXMQX':_0x335cf9(0x13b),'ANBvx':_0x335cf9(0x140),'BytYB':_0x335cf9(0x184)},{telemetry:_0x7813a4,sessionId:_0x2e4da5,configPath:_0x3a22e6,cliArtifactDir:_0x5616e2,env:_0x5cf3e2,transportMetadata:_0x5ad973}=_0x307b6c,_0x233110=[{'phase':'playwright_cli_tracing_stop','commandArgs':[_0xc99df8['wrGbX']]},{'phase':_0x335cf9(0x14e),'commandArgs':[_0xc99df8['bXMQX'],_0x335cf9(0x19a)+buildCliArtifactPath(_0x5616e2,_0xc99df8[_0x335cf9(0x198)])]},{'phase':_0xc99df8['BytYB'],'commandArgs':[_0x335cf9(0x15b)]}];for(const _0x344201 of _0x233110){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0x2e4da5,'configPath':_0x3a22e6,'commandArgs':[..._0x344201[_0x335cf9(0x171)]],'env':_0x5cf3e2,'telemetry':_0x7813a4,'phase':_0x344201['phase'],'metadata':_0x5ad973});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x3a8938){const _0x1e75c5=_0x82f9,_0x43b66a={'UULdU':'trace.trace.zip'},_0x54e28e=[_0x1e75c5(0x1a7),_0x43b66a['UULdU']];for(const _0x35b4ea of _0x54e28e){const _0x4d12a5=join(_0x3a8938,_0x35b4ea);try{return{'buffer':await readFile(_0x4d12a5),'source':_0x4d12a5};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x14bc8d){const _0x3e216e=_0x82f9,_0x4ac936={'gBwZI':function(_0x51a419,_0x206a2e,_0x1e8471){return _0x51a419(_0x206a2e,_0x1e8471);},'eBpxl':function(_0x162c71,_0x43b18d){return _0x162c71(_0x43b18d);},'hTlYD':function(_0x573a4e,_0x583442){return _0x573a4e<_0x583442;},'wcqgB':function(_0x3f3dde,_0x52af4e){return _0x3f3dde+_0x52af4e;},'GHtlo':function(_0x5ba4e8,_0x2681a2,_0x5f03d9){return _0x5ba4e8(_0x2681a2,_0x5f03d9);},'PuemU':function(_0x2f79cc,_0x521eb1){return _0x2f79cc===_0x521eb1;}},{cwd:_0x164bb9,cliArtifactDir:_0x217de9,startTime:_0x6842b}=_0x14bc8d,_0x54fbf2=[];await _0x4ac936[_0x3e216e(0x127)](mkdir,_0x217de9,{'recursive':!![]});const _0x285cc7=await readdir(_0x164bb9,{'withFileTypes':!![]});for(const _0x3352d2 of _0x285cc7){if(!_0x3352d2[_0x3e216e(0x172)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x3e216e(0x173)](_0x3352d2['name']))continue;const _0x956ac5=join(_0x164bb9,_0x3352d2['name']),_0x35f84e=await _0x4ac936[_0x3e216e(0x18a)](stat,_0x956ac5);if(_0x4ac936[_0x3e216e(0x17f)](_0x4ac936[_0x3e216e(0x137)](_0x35f84e[_0x3e216e(0x18e)],0x7d0),_0x6842b))continue;const _0x1cc8a8=_0x4ac936['GHtlo'](buildCliArtifactPath,_0x217de9,_0x3352d2[_0x3e216e(0x14b)]);if(_0x4ac936[_0x3e216e(0x142)](_0x956ac5,_0x1cc8a8))continue;await _0x4ac936[_0x3e216e(0x127)](rename,_0x956ac5,_0x1cc8a8),_0x54fbf2['push'](_0x3352d2[_0x3e216e(0x14b)]);}return _0x54fbf2['sort']();}
|
|
@@ -7,44 +7,15 @@ description: "Ranger’s browser verification tooling that supplements a coding
|
|
|
7
7
|
|
|
8
8
|
Run Ranger commands using `ranger-cli <args>`.
|
|
9
9
|
|
|
10
|
-
**IMPORTANT: At the start of any session,
|
|
10
|
+
**IMPORTANT: At the start of any session, run `ranger-cli update` to ensure you have the latest CLI and skills.**
|
|
11
11
|
|
|
12
12
|
If you are running in Claude Code, read and suggest the following claude-specific commands to the user: [claude.md](./claude.md).
|
|
13
13
|
|
|
14
14
|
Use Ranger when the work includes any UI or frontend component. Do not suggest Ranger for backend-only or infra-only changes unless the user asks.
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
This skill covers three workflows for Ranger feature review tracking:
|
|
17
17
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
```bash
|
|
21
|
-
RANGER_TEST_USERNAME='alice@example.com' RANGER_TEST_PASSWORD='hunter2' \
|
|
22
|
-
ranger-cli go --base-url <target-url> --notes '<the goal verbatim>'
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
The CLI:
|
|
26
|
-
- Materializes a profile from `RANGER_TEST_USERNAME` if one doesn't exist
|
|
27
|
-
- Runs the configured login automatically — no human at a browser needed
|
|
28
|
-
- Creates a feature review if one is required but missing
|
|
29
|
-
- Captures trace + screenshots as evidence
|
|
30
|
-
|
|
31
|
-
This works for any login flow Ranger has set up with the customer (username/password, SSO, OAuth, MFA — any shape we can run deterministically with the access we hold).
|
|
32
|
-
|
|
33
|
-
Do **not** chain `ranger-cli create` before `go` unless the user explicitly asks for a structured multi-scenario feature review. The one-shot flow is the happy path for ad-hoc "verify this thing" requests.
|
|
34
|
-
|
|
35
|
-
If credentials live in a `.env` next to the user's repo (look for `RANGER_TEST_USERNAME` / `RANGER_TEST_PASSWORD` / `TARGET_URL`), source that file inline before running `go` instead of typing values (`set -a; source ./.env; set +a`).
|
|
36
|
-
|
|
37
|
-
### When to fall back
|
|
38
|
-
|
|
39
|
-
If `go` returns a 422 / login-failed, automated login probably isn't set up for this account yet. Fall back in this order:
|
|
40
|
-
|
|
41
|
-
1. **Active profile** — try `ranger-cli go` with no env vars. Works if a human already ran `ranger-cli profile add` for this app.
|
|
42
|
-
2. **Interactive setup** — ask the user to run `ranger-cli profile add <name>` (a browser opens, they log in once, you take it from there).
|
|
43
|
-
3. **For automated CI / background-agent setups specifically**: tell the user automated login is set up per-app with the Ranger team — point them at https://docs.ranger.net/main/concepts/profiles#automated-login.
|
|
44
|
-
|
|
45
|
-
If the user did NOT give you credentials in the first place (just said "log in to my app"), skip the env-var path entirely and go straight to fallback #1 or #2.
|
|
46
|
-
|
|
47
|
-
## Structured workflows
|
|
18
|
+
## Supported Workflows
|
|
48
19
|
|
|
49
20
|
| Workflow | When to Use | Required Reading |
|
|
50
21
|
|----------|-------------|------------------|
|
|
@@ -261,10 +232,9 @@ When completing your work or ending the session, your final message to the user
|
|
|
261
232
|
|
|
262
233
|
If you encounter authentication issues:
|
|
263
234
|
|
|
264
|
-
1. **
|
|
265
|
-
2. **
|
|
266
|
-
3. **
|
|
267
|
-
4. **Refresh auth**: For server-side relogin (headless, no human needed), set `RANGER_TEST_USERNAME` / `RANGER_TEST_PASSWORD` and re-run `ranger-cli go ...`. For SSO/OAuth profiles, ask the user to run `ranger-cli profile add <account-email>` to re-capture session in a headed browser. (Note: `ranger-cli profile update` is deprecated under cloud profiles and will exit non-zero.)
|
|
235
|
+
1. **Check your profiles**: Run `ranger-cli profile ls` to see all configured profiles and their details
|
|
236
|
+
2. **Switch profiles**: Use `ranger-cli profile use <profile-name>` to switch to a different profile
|
|
237
|
+
3. **Refresh auth**: Instruct the user to run `ranger-cli profile update <profile-name>` to re-capture authentication for a profile (user will need to help with that)
|
|
268
238
|
|
|
269
239
|
|
|
270
240
|
### Authentication Issues to Ranger
|
|
@@ -2,25 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
Create a feature review when starting new work that doesn't have an existing feature review to resume.
|
|
4
4
|
|
|
5
|
-
## ⚠️ When NOT to use this
|
|
6
|
-
|
|
7
|
-
**If the user just wants a quick browser check** (e.g. "log in as X and confirm the dashboard renders", "check that the new button appears on /settings"), **do not run `ranger-cli create`**. Run `ranger-cli go` directly:
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
RANGER_TEST_USERNAME='...' RANGER_TEST_PASSWORD='...' \
|
|
11
|
-
ranger-cli go --base-url <target> --notes '<goal verbatim>'
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
The CLI creates a feature review automatically when one is needed. Chaining `create` first is wasted ceremony and shows up as noise for the reviewer. See the **One-shot verification** section in the parent `SKILL.md`.
|
|
15
|
-
|
|
16
|
-
Reach for `ranger-cli create` only when:
|
|
17
|
-
|
|
18
|
-
1. The work is genuinely multi-scenario (2+ distinct user journeys worth tracking separately)
|
|
19
|
-
2. You need to enumerate the scenarios up front for the reviewer to see before verification runs
|
|
20
|
-
3. The user explicitly asks for a "feature review" rather than just a "browser check"
|
|
21
|
-
|
|
22
|
-
When in doubt, start with one-shot `go` — you can always add scenarios later with `ranger-cli add-scenario`.
|
|
23
|
-
|
|
24
5
|
## Basic Command
|
|
25
6
|
|
|
26
7
|
```bash
|
|
@@ -1,63 +1,24 @@
|
|
|
1
1
|
# Verifying Scenarios
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
After implementing code for a scenario, verify it works in the browser. This creates evidence (screenshots, traces, logs) that the implementation is complete.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
RANGER_TEST_USERNAME='alice@example.com' RANGER_TEST_PASSWORD='hunter2' \
|
|
9
|
-
ranger-cli go --base-url <target-url> --notes '<the goal verbatim>'
|
|
10
|
-
```
|
|
11
|
-
|
|
12
|
-
If credentials already live in a nearby `.env`, source it inline before running `go` instead of typing values (`set -a; source ./.env; set +a`).
|
|
13
|
-
|
|
14
|
-
The CLI:
|
|
15
|
-
|
|
16
|
-
- Materializes a profile from `RANGER_TEST_USERNAME` if one doesn't exist
|
|
17
|
-
- Runs the configured login if no session is cached
|
|
18
|
-
- Creates a feature review automatically when one is needed
|
|
19
|
-
- Captures a trace + screenshots you can link to
|
|
20
|
-
|
|
21
|
-
This works for any login flow Ranger has set up with the customer — username/password, SSO, OAuth, MFA, passkeys. Don't worry about the auth shape; if the user gave you creds, try this path first.
|
|
22
|
-
|
|
23
|
-
Do **not** run `ranger-cli create` first unless the user explicitly asks for a structured feature review with multiple scenarios.
|
|
24
|
-
|
|
25
|
-
### Fallback when the one-shot path fails
|
|
26
|
-
|
|
27
|
-
If `go` returns a 422 / login-failed, automated login probably isn't set up for this account. Fall back in this order:
|
|
28
|
-
|
|
29
|
-
1. **Active profile** — `ranger-cli go` with no env vars (works if a human ran `profile add` for this app)
|
|
30
|
-
2. **Interactive setup** — ask the user to run `ranger-cli profile add <name>`
|
|
31
|
-
3. **For CI / background-agent flows**: automated login is set up per-app with the Ranger team — point the user at https://docs.ranger.net/main/concepts/profiles#automated-login
|
|
32
|
-
|
|
33
|
-
If the user did NOT give you credentials, skip the env-var path entirely and go straight to fallback #1 or #2.
|
|
34
|
-
|
|
35
|
-
## Scenario-driven verification
|
|
36
|
-
|
|
37
|
-
After implementing code against a scenario in an active feature review, verify it:
|
|
5
|
+
## Basic Command
|
|
38
6
|
|
|
39
7
|
```bash
|
|
40
8
|
ranger-cli go --scenario <N> --notes "<what to verify>"
|
|
41
9
|
```
|
|
42
10
|
|
|
43
|
-
|
|
11
|
+
The URL is derived from your active profile's `baseUrl` setting.
|
|
44
12
|
|
|
45
|
-
|
|
46
|
-
2. Saved active profile (`ranger-cli profile use <name>`)
|
|
47
|
-
3. `RANGER_TEST_USERNAME` (reuses or creates a matching profile)
|
|
48
|
-
4. The org's sole profile when exactly one exists
|
|
13
|
+
## Required: Active Feature Review
|
|
49
14
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
If you're verifying a scenario (not a one-shot):
|
|
15
|
+
`go` requires an active feature review. If you don't have one:
|
|
53
16
|
|
|
54
17
|
```bash
|
|
55
18
|
ranger-cli list # Find feature reviews to resume
|
|
56
19
|
ranger-cli resume <id> # Resume a specific feature review
|
|
57
20
|
```
|
|
58
21
|
|
|
59
|
-
For a one-shot `go --base-url ... --notes '...'`, the CLI handles feature-review creation for you.
|
|
60
|
-
|
|
61
22
|
## The Verification Flow
|
|
62
23
|
|
|
63
24
|
1. **Select scenario** - CLI prompts which scenario this verifies
|
|
@@ -80,7 +41,7 @@ You do NOT need to manually include reviewer feedback in your `--notes` descript
|
|
|
80
41
|
|
|
81
42
|
| Option | Required | Description |
|
|
82
43
|
|--------|----------|-------------|
|
|
83
|
-
| `--profile` | No | Profile to use
|
|
44
|
+
| `--profile` | No | Profile to use (defaults to active profile) |
|
|
84
45
|
| `--notes` | No | What to verify (defaults to scenario description) |
|
|
85
46
|
| `--scenario` | No | Scenario index to verify (skips selection prompt) |
|
|
86
47
|
| `--start-path` | No | Path to start on (appended to base URL, e.g., `/dashboard`) |
|
|
@@ -221,7 +182,7 @@ Always end the conversational turn by sharing the dashboard link whenever you ru
|
|
|
221
182
|
Run `ranger-cli list` to find feature reviews, then `ranger-cli resume <id>` to resume one.
|
|
222
183
|
|
|
223
184
|
### "No active profile"
|
|
224
|
-
|
|
185
|
+
Run `ranger-cli profile use <profile-name>` to set a profile with browser access.
|
|
225
186
|
|
|
226
187
|
### Verification times out
|
|
227
188
|
The agent has 59 minutes max. For very long flows, break into smaller scenarios.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ranger-testing/ranger-cli",
|
|
3
|
-
"version": "2.5.4
|
|
3
|
+
"version": "2.5.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"ranger": "./build/cli.js",
|
|
@@ -12,8 +12,7 @@
|
|
|
12
12
|
"obfuscate": "node scripts/obfuscate.cjs",
|
|
13
13
|
"dev": "tsx src/cli.ts",
|
|
14
14
|
"check-playwright-version": "node scripts/check-playwright-version.cjs",
|
|
15
|
-
"postinstall": "node scripts/postinstall.js"
|
|
16
|
-
"test": "jest --config jest.config.cjs"
|
|
15
|
+
"postinstall": "node scripts/postinstall.js"
|
|
17
16
|
},
|
|
18
17
|
"files": [
|
|
19
18
|
"build",
|
|
@@ -30,18 +29,14 @@
|
|
|
30
29
|
},
|
|
31
30
|
"devDependencies": {
|
|
32
31
|
"@types/inquirer": "^9.0.7",
|
|
33
|
-
"@types/jest": "^29.5.0",
|
|
34
32
|
"@types/node": "^22.0.0",
|
|
35
33
|
"@types/yargs": "^17.0.32",
|
|
36
|
-
"jest": "^29.7.0",
|
|
37
34
|
"javascript-obfuscator": "^4.1.1",
|
|
38
|
-
"ts-jest": "^29.1.0",
|
|
39
35
|
"tsx": "^4.20.6",
|
|
40
36
|
"typescript": "^5.0.0"
|
|
41
37
|
},
|
|
42
38
|
"overrides": {
|
|
43
39
|
"minimatch": "^10.2.3",
|
|
44
|
-
"brace-expansion": "^5.0.5"
|
|
45
|
-
"fast-uri": "3.1.2"
|
|
40
|
+
"brace-expansion": "^5.0.5"
|
|
46
41
|
}
|
|
47
42
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(function(_0x14aabc,_0x5b0bb6){var _0x989c0e=_0x5175,_0x24c07a=_0x14aabc();while(!![]){try{var _0x155fa9=parseInt(_0x989c0e(0x1cc))/0x1+-parseInt(_0x989c0e(0x1db))/0x2*(parseInt(_0x989c0e(0x1de))/0x3)+parseInt(_0x989c0e(0x1d5))/0x4*(parseInt(_0x989c0e(0x1d2))/0x5)+parseInt(_0x989c0e(0x1da))/0x6+-parseInt(_0x989c0e(0x1d8))/0x7*(parseInt(_0x989c0e(0x1d3))/0x8)+parseInt(_0x989c0e(0x1d0))/0x9+parseInt(_0x989c0e(0x1cd))/0xa;if(_0x155fa9===_0x5b0bb6)break;else _0x24c07a['push'](_0x24c07a['shift']());}catch(_0x4dea74){_0x24c07a['push'](_0x24c07a['shift']());}}}(_0x364d,0xac6e2));export async function migrateProfile(_0x9bc307,_0x17b9a2){var _0x4af773=_0x5175,_0x18b227={'lmGBX':function(_0x250b06,_0x46eb1a){return _0x250b06+_0x46eb1a;},'jTBck':function(_0x53fb28,_0x24fd69){return _0x53fb28+_0x24fd69;},'RkDET':'For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','VpWTi':_0x4af773(0x1d6),'AwWTn':_0x4af773(0x1d4)};console[_0x4af773(0x1d1)](_0x18b227['lmGBX'](_0x18b227['lmGBX'](_0x18b227['lmGBX'](_0x18b227[_0x4af773(0x1d9)](_0x18b227['jTBck'](_0x4af773(0x1cf),'\x0a'),'To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a')+_0x4af773(0x1d7),'\x0a')+_0x18b227[_0x4af773(0x1dc)],_0x18b227[_0x4af773(0x1dd)]),'\x0a')+_0x18b227[_0x4af773(0x1ce)]+'fallback;\x20you\x20can\x20delete\x20them\x20once\x20you\x20have\x20re-auth-ed.'),process[_0x4af773(0x1cb)](0x1);}function _0x5175(_0x2ec8b4,_0x1181c8){_0x2ec8b4=_0x2ec8b4-0x1cb;var _0x364d17=_0x364d();var _0x517525=_0x364d17[_0x2ec8b4];return _0x517525;}function _0x364d(){var _0x1bc8dc=['3KVBqIg','exit','919890mroZmN','3626920MfHhVK','AwWTn','ranger\x20profile\x20migrate\x20is\x20no\x20longer\x20supported.\x0a','6699357hwUKXL','error','1214335GWYjIX','248QAxcbE','Existing\x20sessions\x20in\x20your\x20old\x20<project>/.ranger/\x20dirs\x20still\x20work\x20as\x20a\x0a','12IDoqkr','\x20\x20https://docs.ranger.net/main/concepts/profiles\x0a','\x20\x20ranger\x20profile\x20add\x20<name>\x0a','224413KhkLjo','lmGBX','1894818TRhxTC','2742512WdXizv','RkDET','VpWTi'];_0x364d=function(){return _0x1bc8dc;};return _0x364d();}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const _0x2988b0=_0x42dc;(function(_0x1c3ad8,_0x2b003c){const _0x3e8b7c=_0x42dc,_0x1bf553=_0x1c3ad8();while(!![]){try{const _0x2a0083=-parseInt(_0x3e8b7c(0x1be))/0x1+-parseInt(_0x3e8b7c(0x1cd))/0x2+parseInt(_0x3e8b7c(0x1ab))/0x3+-parseInt(_0x3e8b7c(0x1c8))/0x4+-parseInt(_0x3e8b7c(0x1d9))/0x5+-parseInt(_0x3e8b7c(0x204))/0x6*(parseInt(_0x3e8b7c(0x1ea))/0x7)+parseInt(_0x3e8b7c(0x1cc))/0x8;if(_0x2a0083===_0x2b003c)break;else _0x1bf553['push'](_0x1bf553['shift']());}catch(_0x402c0f){_0x1bf553['push'](_0x1bf553['shift']());}}}(_0x30e1,0xc3b73));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x384464 from'inquirer';import{chromium}from'playwright';import{getApiBaseUrl}from'./environment.js';import{getToken}from'./keychain.js';import{getRangerHomeDir}from'./rangerRoot.js';import{addProfileSetupBanner}from'./profileSetupBanner.js';import{duplicateCookiesForDomains,getSessionCachePath,getStorageStatePath,isCachedSessionLive,isInteractive,resolveAuthEnvironmentLocally,sessionCacheHash}from'./cloudProfileSession.js';const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x4efc74=_0x42dc,_0x356757=await getToken();if(!_0x356757)throw new Error(_0x4efc74(0x1a5));return _0x356757;}async function apiRequest(_0x17cde4,_0x506fed={}){const _0x411b7d=_0x42dc,_0x1c3731={'oWfBK':function(_0x3a38e7){return _0x3a38e7();},'HIWZD':function(_0x4b69e5,_0x2db1ef,_0x5d1ec5){return _0x4b69e5(_0x2db1ef,_0x5d1ec5);},'CcZxf':_0x411b7d(0x1dc)},_0x2d744f=await _0x1c3731['oWfBK'](requireToken),_0x158758=getApiBaseUrl(),_0x310f2f=await _0x1c3731[_0x411b7d(0x1b2)](fetch,''+_0x158758+_0x17cde4,{..._0x506fed,'headers':{'Authorization':_0x411b7d(0x1df)+_0x2d744f,'Content-Type':_0x1c3731['CcZxf'],..._0x506fed['headers']??{}}});if(!_0x310f2f['ok']){let _0x1c1610='',_0x5ae506;try{const _0x466c1f=await _0x310f2f['json']();_0x1c1610=(typeof _0x466c1f['error']===_0x411b7d(0x1c9)?_0x466c1f[_0x411b7d(0x1b0)]:undefined)??JSON['stringify'](_0x466c1f);if(typeof _0x466c1f['code']==='string')_0x5ae506=_0x466c1f['code'];}catch{_0x1c1610=_0x310f2f['statusText'];}throw new ApiError('API\x20request\x20'+_0x17cde4+'\x20failed\x20('+_0x310f2f['status']+_0x411b7d(0x1e2)+_0x1c1610,_0x310f2f['status'],_0x1c1610,_0x5ae506);}return _0x310f2f[_0x411b7d(0x1f7)]();}export class ApiError extends Error{[_0x2988b0(0x205)];[_0x2988b0(0x1a7)];['code'];constructor(_0x3a2788,_0x23a487,_0x31fda0,_0x516a12){const _0x3064eb=_0x2988b0,_0x57c98d={'XjeMD':'3|4|2|0|1','aYWBz':_0x3064eb(0x1cb)},_0x2f1576=_0x57c98d['XjeMD']['split']('|');let _0x2a693f=0x0;while(!![]){switch(_0x2f1576[_0x2a693f++]){case'0':this['code']=_0x516a12;continue;case'1':this[_0x3064eb(0x1f8)]=_0x57c98d[_0x3064eb(0x1d2)];continue;case'2':this[_0x3064eb(0x1a7)]=_0x31fda0;continue;case'3':super(_0x3a2788);continue;case'4':this['status']=_0x23a487;continue;}break;}}}export async function fetchCloudProfile(_0x418eea){const _0x545333=_0x2988b0,_0x4e33b0={'CfILd':function(_0x3d374a,_0x4f1152){return _0x3d374a(_0x4f1152);},'uMivI':function(_0x4e3dea,_0xd9d59e){return _0x4e3dea instanceof _0xd9d59e;},'nEZxr':function(_0x1b219e,_0xf68259){return _0x1b219e===_0xf68259;}};try{return await _0x4e33b0['CfILd'](apiRequest,_0x545333(0x206)+encodeURIComponent(_0x418eea));}catch(_0x2f2e26){if(_0x4e33b0[_0x545333(0x1da)](_0x2f2e26,ApiError)&&_0x4e33b0[_0x545333(0x1a9)](_0x2f2e26[_0x545333(0x205)],0x194))return null;throw _0x2f2e26;}}export async function listCloudProfiles(){const _0x1ee04c=_0x2988b0,_0x2509a7=await apiRequest(_0x1ee04c(0x1fd));return _0x2509a7['profiles'];}export async function createCloudProfile(_0x2180d6,_0x268478,_0x1fa684={}){const _0x420e76=_0x2988b0,_0x52492f={'uoDWa':function(_0x30d557,_0x4f8224){return _0x30d557>_0x4f8224;},'DmkHr':function(_0x2f1b3d,_0x89f3ae,_0x355b1e){return _0x2f1b3d(_0x89f3ae,_0x355b1e);}},_0x513a21={'name':_0x2180d6};if(_0x268478)_0x513a21['environment_key']=_0x268478;_0x1fa684['settings']&&_0x52492f['uoDWa'](Object[_0x420e76(0x1b3)](_0x1fa684[_0x420e76(0x1fa)])[_0x420e76(0x1f9)],0x0)&&(_0x513a21['settings']=_0x1fa684[_0x420e76(0x1fa)]);if(_0x1fa684['username'])_0x513a21['username']=_0x1fa684['username'];if(_0x1fa684['password'])_0x513a21['password']=_0x1fa684[_0x420e76(0x202)];return await _0x52492f['DmkHr'](apiRequest,'/api/v1/profiles',{'method':_0x420e76(0x1b1),'body':JSON['stringify'](_0x513a21)});}export async function uploadCloudProfileSession(_0x11b4b2,_0x54d776){const _0x54ceb7=_0x2988b0,_0x5bdbb7={'EJGQr':_0x54ceb7(0x1b1)};return await apiRequest(_0x54ceb7(0x206)+encodeURIComponent(_0x11b4b2)+_0x54ceb7(0x1c5),{'method':_0x5bdbb7[_0x54ceb7(0x1bb)],'body':JSON['stringify']({'session_state':_0x54d776})});}export async function saveCloudProfileCredentials(_0xe1dea,_0x4a6be2,_0x14cd41){const _0x2f4580=_0x2988b0,_0x29e7de={'IpLbz':_0x2f4580(0x1c3)};await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0xe1dea),{'method':_0x29e7de[_0x2f4580(0x209)],'body':JSON[_0x2f4580(0x1c0)]({'username':_0x4a6be2,'password':_0x14cd41})});}export async function fetchAuthConfig(){const _0x3ce88b=_0x2988b0,_0x45d26c={'wIgOv':function(_0x30ce0c,_0x2966d2){return _0x30ce0c(_0x2966d2);}};try{const _0x2959a3=await _0x45d26c['wIgOv'](apiRequest,_0x3ce88b(0x1d6));return _0x2959a3['auth_config'];}catch{return null;}}function _0x42dc(_0x2b3c6b,_0x245334){_0x2b3c6b=_0x2b3c6b-0x198;const _0x30e1de=_0x30e1();let _0x42dcd1=_0x30e1de[_0x2b3c6b];return _0x42dcd1;}export function pickAdHocEnvKey(_0x20efa6){const _0x50a39a=_0x2988b0,_0x1acd05={'nVLAP':function(_0xfbd654,_0x34cf4b){return _0xfbd654===_0x34cf4b;},'NwbXF':function(_0x4f9021,_0x4e2e26){return _0x4f9021===_0x4e2e26;},'kEBYF':function(_0x552338,_0x44af32){return _0x552338+_0x44af32;}};if(!_0x20efa6)return null;if(_0x20efa6['defaultEnvironmentKey'])return _0x20efa6['defaultEnvironmentKey'];const _0x2f06bf=Object['keys'](_0x20efa6['environments']??{});if(_0x1acd05['nVLAP'](_0x2f06bf['length'],0x1))return _0x2f06bf[0x0];if(_0x1acd05['NwbXF'](_0x2f06bf['length'],0x0))return null;throw new Error(_0x1acd05['kEBYF']('Multiple\x20envs\x20in\x20this\x20org\x27s\x20auth\x20config\x20('+_0x2f06bf[_0x50a39a(0x207)](',\x20')+_0x50a39a(0x1f4),'Pass\x20--env\x20<key>\x20or\x20set\x20\x27defaultEnvironmentKey\x27\x20on\x20the\x20auth\x20config.'));}export async function resolveAdHocProfile(_0x460910=process[_0x2988b0(0x1d4)]){const _0x55cb09=_0x2988b0,_0x212033={'Rgzjd':function(_0x345897){return _0x345897();},'TmoVF':function(_0x3c0003,_0xcb2d3b){return _0x3c0003(_0xcb2d3b);},'EosNG':function(_0x8507b4,_0x4d65b8,_0x58e6e6,_0x5f0d05){return _0x8507b4(_0x4d65b8,_0x58e6e6,_0x5f0d05);}},_0x368085=_0x460910['RANGER_TEST_USERNAME'];if(!_0x368085)return null;const _0x544b4c=await fetchCloudProfile(_0x368085);if(_0x544b4c)return{'name':_0x544b4c[_0x55cb09(0x1f8)],'profile':_0x544b4c};const _0x1a806=await _0x212033['Rgzjd'](fetchAuthConfig),_0x5b9122=_0x212033[_0x55cb09(0x1c2)](pickAdHocEnvKey,_0x1a806),_0x1e39a8=_0x460910[_0x55cb09(0x1e6)],_0x42e484=await _0x212033['EosNG'](createCloudProfile,_0x368085,_0x5b9122??undefined,{'username':_0x368085,'password':_0x1e39a8});return console[_0x55cb09(0x19d)](_0x55cb09(0x1a3)+_0x42e484[_0x55cb09(0x1f8)]+'\x22\x20for\x20'+_0x368085),{'name':_0x42e484['name'],'profile':_0x42e484};}export async function writeSessionToLocalCache(_0x5a0254,_0x428a6d,_0x240db1,_0x4256a4,_0x58b129,_0x1464e3,_0x57c72d){const _0x2b7ce9=_0x2988b0,_0x1ff33d={'GDerq':function(_0x1841ee,_0x37e3ba,_0x598100){return _0x1841ee(_0x37e3ba,_0x598100);},'pUrLo':function(_0xad835f){return _0xad835f();},'gRASz':function(_0x26cda3,_0x3dff5){return _0x26cda3(_0x3dff5);}},_0x42bad3=sessionCacheHash({'orgId':_0x428a6d,'profileName':_0x5a0254,'effectiveBaseUrl':_0x240db1,'setupHeaders':_0x4256a4,'invalidateOn':_0x57c72d?.['invalidateOn'],'userAgent':_0x57c72d?.[_0x2b7ce9(0x1c1)],'clientIp':_0x57c72d?.['clientIp']}),_0x48d0f6=getSessionCachePath(_0x42bad3,_0x5a0254),_0x10a37d=_0x1ff33d['GDerq'](join,_0x1ff33d[_0x2b7ce9(0x1ae)](getRangerHomeDir),_0x2b7ce9(0x1db));!existsSync(_0x10a37d)&&await mkdir(_0x10a37d,{'recursive':!![]});const _0x44c738={..._0x58b129};_0x1464e3&&_0x1464e3[_0x2b7ce9(0x1f9)]>0x0&&Array['isArray'](_0x44c738['cookies'])&&(_0x44c738['cookies']=duplicateCookiesForDomains(_0x44c738[_0x2b7ce9(0x1f2)],_0x1464e3));const _0x3747ed={'cached_at':new Date()['toISOString'](),'session_state':_0x44c738};await _0x1ff33d['GDerq'](writeFile,_0x48d0f6,JSON[_0x2b7ce9(0x1c0)](_0x3747ed,null,0x2));const _0x3f7cf7=_0x1ff33d[_0x2b7ce9(0x1d0)](getStorageStatePath,_0x48d0f6);return await writeFile(_0x3f7cf7,JSON[_0x2b7ce9(0x1c0)](_0x44c738,null,0x2)),_0x3f7cf7;}export async function checkLocalCache(_0x3ca169,_0x519677,_0x317ab9,_0x4dd279,_0x402582){const _0x4b516f=_0x2988b0,_0x113afc={'jDdcJ':function(_0x4207a7,_0xb529){return _0x4207a7(_0xb529);},'hxtdr':function(_0x5f6f45,_0x21efae){return _0x5f6f45(_0x21efae);},'PhMWl':function(_0x4e16ee,_0xc20915){return _0x4e16ee(_0xc20915);},'XOWCp':function(_0x125761,_0x505fb3,_0x425987){return _0x125761(_0x505fb3,_0x425987);}},_0x4fd732=_0x113afc['jDdcJ'](sessionCacheHash,{'orgId':_0x519677,'profileName':_0x3ca169,'effectiveBaseUrl':_0x317ab9,'setupHeaders':_0x4dd279,'invalidateOn':_0x402582?.['invalidateOn'],'userAgent':_0x402582?.['userAgent'],'clientIp':_0x402582?.[_0x4b516f(0x1e5)]}),_0x2779d3=getSessionCachePath(_0x4fd732,_0x3ca169),_0x50a5b1=_0x113afc['jDdcJ'](getStorageStatePath,_0x2779d3);if(!_0x113afc[_0x4b516f(0x1e1)](existsSync,_0x2779d3)||!_0x113afc[_0x4b516f(0x1d7)](existsSync,_0x50a5b1))return null;try{const _0x252fb3=await _0x113afc['XOWCp'](readFile,_0x2779d3,'utf-8');return JSON['parse'](_0x252fb3),{'storageStatePath':_0x50a5b1};}catch{return null;}}function launchRealBrowser(){return chromium['launch']({'headless':!![]});}function _0x30e1(){const _0x12d884=['IpLbz','\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.','\x22.\x0a','\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','push','effectiveBaseUrl','hostname','map','confirm','log','QqPUz','zLMSF','\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22','Your\x20org\x27s\x20auth-config\x20env\x20may\x20need\x20`invalidateOn:\x20[\x27port\x27]`\x20so\x20sessions\x20captured\x20on\x20one\x20port\x20aren\x27t\x20reused\x20on\x20another.','origin','\x20\x20Created\x20cloud\x20profile\x20\x22','close','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','raw','detail','organizationId','nEZxr','you\x27re\x20now\x20at\x20\x22','17889aajCIM','sessionState','\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20','pUrLo','invalidateOn','error','POST','HIWZD','keys','YFHHd','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','code','gEOvE','baseUrl','force','\x20\x20Login\x20successful.\x20Session\x20cached.','EJGQr','\x20\x20No\x20live\x20session\x20for\x20\x22','FrGpq','924295kbuCgB','goto','stringify','userAgent','TmoVF','PUT','test_output','/session','\x22\x20failed\x20validation\x20—\x20re-login\x20needed...','mDxze','3073324SatIiY','string','okzeN','ApiError','43976000XtUwGJ','2643942EDyXiS','port','browserOptions','gRASz','username','aYWBz','\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','env','\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','/api/v1/profiles/auth-config','PhMWl','\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22','4029220KaYUkc','uMivI','auth','application/json','storageStatePath','jxniH','Bearer\x20','\x22\x20failed\x20validation\x20—\x20refreshing...','hxtdr','):\x20','RANGER_TEST_USERNAME','EHkTE','clientIp','RANGER_TEST_PASSWORD','\x22,\x20attempting\x20login...','not_configured','mPOCj','6166097ecTOBW','qMywV','about:blank','some','OdpQr','UqZyX','\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20','success','cookies','Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?',').\x20','save','newPage','json','name','length','settings','catch','prompt','/api/v1/profiles','session_state','domains','sessionCheckPath','launch','password','\x20\x20Server-side\x20login\x20error:\x20','6ajfbiD','status','/api/v1/profiles/','join','setupHeaders'];_0x30e1=function(){return _0x12d884;};return _0x30e1();}function emitSessionValidationHint(_0x1b7299,_0x489b1a){const _0x2bb4a1=_0x2988b0,_0x4acf76={'UqZyX':function(_0x2d4569,_0x484e3f){return _0x2d4569===_0x484e3f;},'qMywV':'If\x20logins\x20keep\x20failing,\x20declare\x20`invalidateOn:\x20[\x27baseUrl\x27]`\x20on\x20your\x20org\x27s\x20auth-config\x20env\x20so\x20port/domain\x20changes\x20force\x20a\x20fresh\x20login.'};if(!_0x489b1a||!_0x489b1a[_0x2bb4a1(0x1ff)]?.[_0x2bb4a1(0x1f9)])return;let _0x154b0c;try{_0x154b0c=new URL(_0x1b7299);}catch{return;}const _0x3ac1e0=[];for(const _0x18dad1 of _0x489b1a[_0x2bb4a1(0x1ff)]){try{_0x3ac1e0[_0x2bb4a1(0x198)]({'raw':_0x18dad1,'url':new URL(_0x18dad1)});}catch{}}if(_0x4acf76[_0x2bb4a1(0x1ef)](_0x3ac1e0[_0x2bb4a1(0x1f9)],0x0))return;if(_0x3ac1e0[_0x2bb4a1(0x1ed)](_0x5de155=>_0x5de155['url']['origin']===_0x154b0c[_0x2bb4a1(0x1a2)]))return;const _0x53f2cc=_0x3ac1e0['some'](_0x5c666c=>_0x154b0c[_0x2bb4a1(0x19a)]===_0x5c666c['url']['hostname']&&_0x154b0c['protocol']===_0x5c666c['url']['protocol']&&_0x154b0c[_0x2bb4a1(0x1ce)]!==_0x5c666c['url'][_0x2bb4a1(0x1ce)]),_0x45edfe=_0x53f2cc?_0x2bb4a1(0x1a1):_0x4acf76[_0x2bb4a1(0x1eb)],_0x409409=_0x3ac1e0[_0x2bb4a1(0x19b)](_0xaa5ba5=>'\x22'+_0xaa5ba5[_0x2bb4a1(0x1a6)]+'\x22')['join'](',\x20');console[_0x2bb4a1(0x19d)](_0x2bb4a1(0x1f0)+_0x409409+';\x20'+(_0x2bb4a1(0x1aa)+_0x1b7299+_0x2bb4a1(0x1ad)+_0x45edfe));}export async function serverSideLogin(_0x27b27e,_0x30d021){const _0x765676=_0x2988b0,_0x18837f={'HGBNq':function(_0x11380e,_0x12fb9b){return _0x11380e===_0x12fb9b;},'EHkTE':_0x765676(0x1e8)},_0xb14545=process['env'][_0x765676(0x1e3)],_0x28be3a=process[_0x765676(0x1d4)][_0x765676(0x1e6)],_0x197171={};if(_0xb14545)_0x197171[_0x765676(0x1d1)]=_0xb14545;if(_0x28be3a)_0x197171['password']=_0x28be3a;if(_0x30d021?.[_0x765676(0x1b9)])_0x197171[_0x765676(0x1b9)]=!![];try{return await apiRequest(_0x765676(0x206)+encodeURIComponent(_0x27b27e)+'/login',{'method':_0x765676(0x1b1),'body':JSON['stringify'](_0x197171)});}catch(_0xcd2ae){if(_0xcd2ae instanceof ApiError&&_0x18837f['HGBNq'](_0xcd2ae['status'],0x190)&&_0xcd2ae[_0x765676(0x1b6)]===_0x18837f[_0x765676(0x1e4)])return{'status':_0x765676(0x1e8),'error':_0xcd2ae['detail']};throw _0xcd2ae;}}export async function manualBrowserLogin(_0x462cab,_0x17ff6d){const _0x439887=_0x2988b0,_0x3642fc={'scmfH':function(_0x39f701){return _0x39f701();},'GrWYx':function(_0xa52283,_0x411030){return _0xa52283/_0x411030;},'QMEMz':function(_0x112010){return _0x112010();},'wxDNm':function(_0x396fd7,_0x3992b1,_0x37520b){return _0x396fd7(_0x3992b1,_0x37520b);},'KmELJ':'close','jxniH':function(_0x4c35cd,_0x59383a){return _0x4c35cd+_0x59383a;},'Uxgbp':'\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD,\x20configure\x20','hdeeB':'loginInstructions\x20on\x20the\x20auth\x20environment,\x20or\x20run\x20with\x20a\x20TTY.','jTvjq':function(_0x3cd284,_0x497af5){return _0x3cd284>_0x497af5;},'OdpQr':'Browser\x20closed\x20before\x20authentication\x20was\x20saved.'};if(!isInteractive())throw new Error(_0x3642fc['jxniH'](_0x3642fc[_0x439887(0x1de)]('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0x462cab[_0x439887(0x1f8)]+_0x439887(0x20b),_0x3642fc['Uxgbp']),_0x3642fc['hdeeB']));const _0x14e8c7=_0x17ff6d&&_0x3642fc['jTvjq'](_0x17ff6d[_0x439887(0x1ff)]['length'],0x0)?_0x17ff6d[_0x439887(0x1ff)][0x0]:_0x439887(0x1ec);console['log'](_0x439887(0x1d5)),console[_0x439887(0x19d)](_0x439887(0x20c)),await new Promise(_0x37bae7=>setTimeout(_0x37bae7,0x7d0));const _0x2862a8=await chromium[_0x439887(0x201)]({'headless':![]});let _0x3e9ab8=null;try{const _0x33bb12={'ignoreHTTPSErrors':!![]};_0x17ff6d?.[_0x439887(0x208)]&&(_0x33bb12['extraHTTPHeaders']=_0x17ff6d['setupHeaders']);const _0x535ed3=await _0x2862a8['newContext'](_0x33bb12);await addProfileSetupBanner(_0x535ed3);const _0x49863e=await _0x535ed3[_0x439887(0x1f6)]();await _0x49863e[_0x439887(0x1bf)](_0x14e8c7);let _0x7991a8=![];await new Promise(_0x21b30a=>{const _0x32143b={'vkUGm':function(_0x268eb1,_0x446536){return _0x3642fc['GrWYx'](_0x268eb1,_0x446536);},'BlZsS':function(_0x27a339){return _0x3642fc['QMEMz'](_0x27a339);}},_0x23f35c=_0x3642fc['wxDNm'](setTimeout,()=>{const _0x202fd3=_0x42dc;_0x7991a8=!![],console[_0x202fd3(0x1b0)]('Browser\x20login\x20timed\x20out\x20after\x20'+_0x32143b['vkUGm'](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+_0x202fd3(0x20a)),_0x32143b['BlZsS'](_0x21b30a);},MANUAL_LOGIN_TIMEOUT_MS);_0x49863e['on'](_0x3642fc['KmELJ'],async()=>{clearTimeout(_0x23f35c);try{const _0x5ae4e2=await _0x535ed3['storageState']();_0x3e9ab8=_0x5ae4e2;}catch{}_0x3642fc['scmfH'](_0x21b30a);});});if(_0x7991a8&&!_0x3e9ab8)throw new Error('Browser\x20login\x20timed\x20out\x20before\x20completion.');}finally{await _0x2862a8[_0x439887(0x1a4)]()[_0x439887(0x1fb)](()=>{});}if(!_0x3e9ab8)throw new Error(_0x3642fc[_0x439887(0x1ee)]);return await apiRequest(_0x439887(0x206)+encodeURIComponent(_0x462cab['name'])+_0x439887(0x1c5),{'method':_0x439887(0x1b1),'body':JSON['stringify']({'session_state':_0x3e9ab8,'updated_by':'cli:manual-login'})}),{'sessionState':_0x3e9ab8};}export async function promptSaveCredentials(_0x30d3aa){const _0x3cdfee=_0x2988b0,_0x2d8fdc={'vKBxY':function(_0x333919,_0x1fbbe1){return _0x333919||_0x1fbbe1;},'YFHHd':_0x3cdfee(0x1f3),'mDxze':'PUT','okzeN':'\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.'},_0x5c5421=process['env']['RANGER_TEST_USERNAME'],_0x50855d=process[_0x3cdfee(0x1d4)][_0x3cdfee(0x1e6)];if(_0x2d8fdc['vKBxY'](!_0x5c5421,!_0x50855d))return;if(!isInteractive())return;const {save:_0x318f00}=await _0x384464[_0x3cdfee(0x1fc)]([{'type':_0x3cdfee(0x19c),'name':_0x3cdfee(0x1f5),'message':_0x2d8fdc[_0x3cdfee(0x1b4)],'default':![]}]);if(!_0x318f00)return;await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x30d3aa),{'method':_0x2d8fdc[_0x3cdfee(0x1c7)],'body':JSON[_0x3cdfee(0x1c0)]({'username':_0x5c5421,'password':_0x50855d})}),console['log'](_0x2d8fdc[_0x3cdfee(0x1ca)]);}export async function resolveCloudProfileSession(_0x5693f8,_0x20be40={}){const _0x5257ec=_0x2988b0,_0x4d2cb6={'mPOCj':function(_0x1507d5){return _0x1507d5();},'FrGpq':function(_0x1ab4b1,_0x423bd1,_0x1735cc){return _0x1ab4b1(_0x423bd1,_0x1735cc);},'ZpxJH':function(_0x34c042,_0xe8ca9d,_0x2e8451,_0x377acf,_0x22d233,_0x527c37,_0x4394a3,_0x334a81){return _0x34c042(_0xe8ca9d,_0x2e8451,_0x377acf,_0x22d233,_0x527c37,_0x4394a3,_0x334a81);},'qPVoS':function(_0x4ef4b6,_0x226741,_0x3fc9bc){return _0x4ef4b6(_0x226741,_0x3fc9bc);},'QqPUz':function(_0x208fd4,_0xa755f1){return _0x208fd4||_0xa755f1;},'sTcNT':function(_0x40f605,_0x4f1a6f){return _0x40f605(_0x4f1a6f);},'gEOvE':function(_0x4fdd49,_0x3970d9){return _0x4fdd49&&_0x3970d9;},'zLMSF':'\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','JwrFq':'\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','hpCqw':function(_0x355f2f,_0x46ceb7,_0x40382e,_0x53f669,_0x1f886d,_0x3c5cb3,_0x48baed,_0x54b67c){return _0x355f2f(_0x46ceb7,_0x40382e,_0x53f669,_0x1f886d,_0x3c5cb3,_0x48baed,_0x54b67c);}},_0x4310be=_0x5693f8['settings']??{},_0x5d0f27=await _0x4d2cb6[_0x5257ec(0x1e9)](fetchAuthConfig),_0x5e9ab8=_0x5d0f27?_0x4d2cb6[_0x5257ec(0x1bd)](resolveAuthEnvironmentLocally,_0x5d0f27,_0x5693f8['environmentKey']):null,_0x360fa9=_0x5e9ab8?.[_0x5257ec(0x1ff)],_0x32178c=_0x4310be['setupHeaders'],_0x46fd5e=_0x32178c??_0x5e9ab8?.['setupHeaders'],_0x352dd2=_0x20be40[_0x5257ec(0x199)]??_0x4310be[_0x5257ec(0x1b8)]??(_0x360fa9&&_0x360fa9['length']>0x0?_0x360fa9[0x0]:''),_0x3a0121={'invalidateOn':_0x5e9ab8?.[_0x5257ec(0x1af)],'userAgent':_0x5e9ab8?.[_0x5257ec(0x1cf)]?.['userAgent']??_0x4310be['userAgent']},_0x197a92=await checkLocalCache(_0x5693f8[_0x5257ec(0x1f8)],_0x5693f8[_0x5257ec(0x1a8)],_0x352dd2,_0x46fd5e,_0x3a0121);if(_0x197a92){if(_0x352dd2){const _0x3f94cc=await isCachedSessionLive(_0x197a92['storageStatePath'],_0x352dd2,{'sessionCheckPath':_0x5e9ab8?.[_0x5257ec(0x200)],'setupHeaders':_0x46fd5e},{'launchBrowser':launchRealBrowser});if(_0x3f94cc)return console[_0x5257ec(0x19d)](_0x5257ec(0x1a0)+_0x5693f8[_0x5257ec(0x1f8)]+'\x22'),{'authPath':_0x197a92[_0x5257ec(0x1dd)],'settings':_0x4310be,'resolvedEnv':_0x5e9ab8};console[_0x5257ec(0x19d)]('\x20\x20Cached\x20session\x20for\x20\x22'+_0x5693f8[_0x5257ec(0x1f8)]+_0x5257ec(0x1e0)),_0x4d2cb6['FrGpq'](emitSessionValidationHint,_0x352dd2,_0x5e9ab8);}else return{'authPath':_0x197a92['storageStatePath'],'settings':_0x4310be,'resolvedEnv':_0x5e9ab8};}if(_0x5693f8[_0x5257ec(0x1ac)]){const _0x429c0d=await _0x4d2cb6['ZpxJH'](writeSessionToLocalCache,_0x5693f8['name'],_0x5693f8['organizationId'],_0x352dd2,_0x46fd5e,_0x5693f8['sessionState'],_0x360fa9,_0x3a0121);if(_0x352dd2){const _0x584a94=await isCachedSessionLive(_0x429c0d,_0x352dd2,{'sessionCheckPath':_0x5e9ab8?.['sessionCheckPath'],'setupHeaders':_0x46fd5e},{'launchBrowser':launchRealBrowser});if(_0x584a94)return console['log'](_0x5257ec(0x1d8)+_0x5693f8[_0x5257ec(0x1f8)]+'\x22,\x20cached\x20locally'),{'authPath':_0x429c0d,'settings':_0x4310be,'resolvedEnv':_0x5e9ab8};console['log']('\x20\x20Cloud\x20session\x20for\x20\x22'+_0x5693f8['name']+_0x5257ec(0x1c6)),_0x4d2cb6['qPVoS'](emitSessionValidationHint,_0x352dd2,_0x5e9ab8);}else return{'authPath':_0x429c0d,'settings':_0x4310be,'resolvedEnv':_0x5e9ab8};}console[_0x5257ec(0x19d)](_0x5257ec(0x1bc)+_0x5693f8['name']+_0x5257ec(0x1e7));const _0x4b2f7d=Boolean(process['env'][_0x5257ec(0x1e3)])&&Boolean(process['env']['RANGER_TEST_PASSWORD']),_0x33fa68=Boolean(_0x5693f8['username']);if(_0x4d2cb6[_0x5257ec(0x19e)](_0x4b2f7d,_0x33fa68))try{const _0x26deb1=await _0x4d2cb6['sTcNT'](serverSideLogin,_0x5693f8['name']);if(_0x26deb1[_0x5257ec(0x205)]==='not_configured')console['log'](_0x5257ec(0x1d3));else{if(_0x26deb1['status']===_0x5257ec(0x1f1)&&_0x26deb1[_0x5257ec(0x1fe)]){console[_0x5257ec(0x19d)](_0x5257ec(0x1ba));const _0x137365=await _0x4d2cb6['ZpxJH'](writeSessionToLocalCache,_0x5693f8['name'],_0x5693f8[_0x5257ec(0x1a8)],_0x352dd2,_0x46fd5e,_0x26deb1[_0x5257ec(0x1fe)],_0x360fa9,_0x3a0121);return _0x4d2cb6[_0x5257ec(0x1b7)](_0x4b2f7d,!_0x33fa68)&&await promptSaveCredentials(_0x5693f8[_0x5257ec(0x1f8)]),{'authPath':_0x137365,'settings':_0x4310be,'resolvedEnv':_0x5e9ab8};}else _0x26deb1[_0x5257ec(0x1c4)]&&(console[_0x5257ec(0x19d)](_0x4d2cb6[_0x5257ec(0x19f)]),console['log'](_0x26deb1[_0x5257ec(0x1c4)])),console['log'](_0x5257ec(0x1b5));}}catch(_0x5497bb){console['log'](_0x5257ec(0x203)+(_0x5497bb instanceof Error?_0x5497bb['message']:String(_0x5497bb))),console[_0x5257ec(0x19d)](_0x4d2cb6['JwrFq']);}const {sessionState:_0x5e87f2}=await _0x4d2cb6['qPVoS'](manualBrowserLogin,_0x5693f8,_0x5e9ab8),_0x39981f=await _0x4d2cb6['hpCqw'](writeSessionToLocalCache,_0x5693f8[_0x5257ec(0x1f8)],_0x5693f8[_0x5257ec(0x1a8)],_0x352dd2,_0x46fd5e,_0x5e87f2,_0x360fa9,_0x3a0121);return{'authPath':_0x39981f,'settings':_0x4310be,'resolvedEnv':_0x5e9ab8};}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const _0x42200b=_0x35f2;(function(_0x4629fe,_0x459eab){const _0x2e6dcd=_0x35f2,_0x5775fc=_0x4629fe();while(!![]){try{const _0x42842a=-parseInt(_0x2e6dcd(0x1dd))/0x1*(-parseInt(_0x2e6dcd(0x204))/0x2)+parseInt(_0x2e6dcd(0x1eb))/0x3*(-parseInt(_0x2e6dcd(0x1df))/0x4)+parseInt(_0x2e6dcd(0x1e3))/0x5*(parseInt(_0x2e6dcd(0x1ff))/0x6)+-parseInt(_0x2e6dcd(0x1da))/0x7*(-parseInt(_0x2e6dcd(0x1ee))/0x8)+-parseInt(_0x2e6dcd(0x1e7))/0x9*(parseInt(_0x2e6dcd(0x1fe))/0xa)+parseInt(_0x2e6dcd(0x207))/0xb+parseInt(_0x2e6dcd(0x200))/0xc;if(_0x42842a===_0x459eab)break;else _0x5775fc['push'](_0x5775fc['shift']());}catch(_0x5ec056){_0x5775fc['push'](_0x5775fc['shift']());}}}(_0x2257,0xa0147));import{createHash}from'crypto';function _0x2257(){const _0x3767be=['clientIp','keys','endsWith','sEgql','sha256','sort','close','has','launchBrowser','140rJzbkM','effectiveBaseUrl','url','51211JcdAZc','.storageState.json','208TKowHV','userAgent','digest','KjdCg','10AmAeGc','invalidateOn','127.0.0.1','includes','72VEWyXi','localhost','test','environments','69636YXoPxk','.localhost','setupHeaders','113712EFnHIQ','lvKNs','slice','defaultEnvironmentKey','domcontentloaded','hostname','stdout','status','wUcNr','toString','.json','goto','baseUrl','isTTY','stdin','port','1405270mXCYYD','128244avUeaL','14363352YEvtxF','HxCvu','domain','map','44oXNcDw','RUUbz','orgId','3699421HXHbge'];_0x2257=function(){return _0x3767be;};return _0x2257();}import{join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';export function isInteractive(_0xf47e71=process['env'],_0x175c48={'stdin':process[_0x42200b(0x1fc)],'stdout':process[_0x42200b(0x1f4)]}){const _0x54e6fa=_0x42200b,_0xd2b1ce={'gWudu':function(_0x3e8aae,_0x443157){return _0x3e8aae(_0x443157);}};if(_0xf47e71['CI'])return![];return _0xd2b1ce['gWudu'](Boolean,_0x175c48[_0x54e6fa(0x1fc)][_0x54e6fa(0x1fb)])&&Boolean(_0x175c48[_0x54e6fa(0x1f4)]['isTTY']);}export const DEFAULT_INVALIDATE_ON=[];export function sessionCacheHash(_0x1ee873){const _0x34484b=_0x42200b,_0x3c9ddb={'wUcNr':_0x34484b(0x1fa),'lvKNs':'setupHeaders','slkxS':_0x34484b(0x1fd),'uemyI':function(_0x2e2326,_0x3e5719){return _0x2e2326(_0x3e5719);},'ITlZn':_0x34484b(0x208),'yQPbO':_0x34484b(0x1d5)},_0x23e8a5=new Set(_0x1ee873[_0x34484b(0x1e4)]??DEFAULT_INVALIDATE_ON),_0x153add={'orgId':_0x1ee873[_0x34484b(0x206)],'profileName':_0x1ee873['profileName']};return _0x23e8a5['has'](_0x3c9ddb[_0x34484b(0x1f6)])&&(_0x153add['effectiveBaseUrl']=_0x1ee873[_0x34484b(0x1db)]),_0x23e8a5[_0x34484b(0x1d8)](_0x3c9ddb[_0x34484b(0x1ef)])&&(_0x153add[_0x34484b(0x1ed)]=_0x1ee873['setupHeaders']?sortObjectKeys(_0x1ee873['setupHeaders']):_0x1ee873['setupHeaders']),_0x23e8a5[_0x34484b(0x1d8)](_0x3c9ddb['slkxS'])&&(_0x153add['port']=_0x3c9ddb['uemyI'](extractPort,_0x1ee873[_0x34484b(0x1db)])),_0x23e8a5['has']('userAgent')&&_0x1ee873[_0x34484b(0x1e0)]!==undefined&&(_0x153add['userAgent']=_0x1ee873['userAgent']),_0x23e8a5['has'](_0x3c9ddb['ITlZn'])&&_0x1ee873['clientIp']!==undefined&&(_0x153add['clientIp']=_0x1ee873[_0x34484b(0x208)]),createHash(_0x3c9ddb['yQPbO'])['update'](JSON['stringify'](_0x153add))[_0x34484b(0x1e1)]('hex')[_0x34484b(0x1f0)](0x0,0xc);}function extractPort(_0x507724){const _0xc8fc3c=_0x42200b;try{return new URL(_0x507724)[_0xc8fc3c(0x1fd)];}catch{return'';}}function sortObjectKeys(_0x148654){const _0x36ef97=_0x42200b,_0x1e0a6d={};for(const _0x1e9d36 of Object['keys'](_0x148654)[_0x36ef97(0x1d6)]()){_0x1e0a6d[_0x1e9d36]=_0x148654[_0x1e9d36];}return _0x1e0a6d;}export function getSessionCachePath(_0x4ba5b8,_0x429efd){const _0xa4134c=_0x42200b,_0xad2f05={'zGDbD':function(_0x57cb43){return _0x57cb43();},'qjdGG':'auth'};return join(_0xad2f05['zGDbD'](getRangerHomeDir),_0xad2f05['qjdGG'],_0x4ba5b8+'-'+_0x429efd+_0xa4134c(0x1f8));}export function getStorageStatePath(_0x427b02){const _0x3a3a11=_0x42200b;return _0x427b02['replace'](/\.json$/,_0x3a3a11(0x1de));}function _0x35f2(_0x541003,_0x26fa59){_0x541003=_0x541003-0x1d4;const _0x225783=_0x2257();let _0x35f229=_0x225783[_0x541003];return _0x35f229;}export function needsTunnel(_0x47b03e){const _0x2d482c=_0x42200b,_0x2accaa={'TZycK':function(_0x3411ab,_0x1b2474){return _0x3411ab===_0x1b2474;},'JcJSy':_0x2d482c(0x1e8),'HxCvu':function(_0x54fe7c,_0x2e12f0){return _0x54fe7c===_0x2e12f0;},'vrtfI':_0x2d482c(0x1e5),'sEgql':'localhost.'};let _0x5b1cf0;try{_0x5b1cf0=new URL(_0x47b03e)[_0x2d482c(0x1f3)];}catch{return![];}if(_0x2accaa['TZycK'](_0x5b1cf0,_0x2accaa['JcJSy'])||_0x2accaa[_0x2d482c(0x201)](_0x5b1cf0,_0x2accaa['vrtfI']))return!![];if(_0x5b1cf0[_0x2d482c(0x20a)](_0x2d482c(0x1ec)))return!![];if(_0x5b1cf0[_0x2d482c(0x1e6)](_0x2accaa[_0x2d482c(0x1d4)]))return!![];return![];}export function hostnameOf(_0x3fd04d){return new URL(_0x3fd04d)['hostname'];}export function duplicateCookiesForDomains(_0x2acb81,_0x25a592){const _0x5c3766=_0x42200b,_0x55eb9f={'RUUbz':function(_0x37eb8e,_0x4d38fe){return _0x37eb8e(_0x4d38fe);}},_0x17eb3f=[..._0x2acb81],_0x1db261=new Set(_0x2acb81[_0x5c3766(0x203)](_0x2f697e=>_0x2f697e[_0x5c3766(0x202)]));for(const _0x1aae52 of _0x25a592){let _0x379681;try{_0x379681=_0x55eb9f[_0x5c3766(0x205)](hostnameOf,_0x1aae52);}catch{continue;}if(!_0x379681)continue;const _0x593c87=_0x379681['startsWith']('.')?_0x379681:'.'+_0x379681;if(_0x1db261[_0x5c3766(0x1d8)](_0x379681)||_0x1db261['has'](_0x593c87))continue;for(const _0x40b2bb of _0x2acb81){_0x17eb3f['push']({..._0x40b2bb,'domain':_0x593c87});}_0x1db261['add'](_0x593c87);}return _0x17eb3f;}export function resolveAuthEnvironmentLocally(_0x2249a8,_0x176625){const _0x388ee6=_0x42200b,_0xe432aa=_0x2249a8[_0x388ee6(0x1ea)];if(_0x176625){const _0x2ad7fd=_0xe432aa[_0x176625];if(!_0x2ad7fd)return null;return{'key':_0x176625,..._0x2ad7fd};}if(_0x2249a8['defaultEnvironmentKey']){const _0xc09738=_0xe432aa[_0x2249a8[_0x388ee6(0x1f1)]];if(!_0xc09738)return null;return{'key':_0x2249a8[_0x388ee6(0x1f1)],..._0xc09738};}const _0x2a2f2e=Object[_0x388ee6(0x209)](_0xe432aa);if(_0x2a2f2e['length']===0x1){const _0x5b4f5b=_0x2a2f2e[0x0];return{'key':_0x5b4f5b,..._0xe432aa[_0x5b4f5b]};}return null;}const LOGIN_URL_PATTERN=/(?:^|\/)(login|signin|sign-in|sso|auth\/login)(?:[/?#]|$)/i;export function buildSessionCheckUrl(_0x3c6995,_0x225446){const _0x58e26a=_0x42200b;try{if(_0x225446)return new URL(_0x225446,_0x3c6995)['toString']();return new URL(_0x3c6995)[_0x58e26a(0x1f7)]();}catch{return null;}}export function looksLikeLoginUrl(_0xf4e21a){const _0x3d6386=_0x42200b;try{const _0x4b9eb8=new URL(_0xf4e21a);return LOGIN_URL_PATTERN[_0x3d6386(0x1e9)](_0x4b9eb8['pathname']);}catch{return LOGIN_URL_PATTERN[_0x3d6386(0x1e9)](_0xf4e21a);}}export async function isCachedSessionLive(_0x1392cf,_0x36ee1e,_0x4bc288={},_0x5eaf43={}){const _0x9f15a3=_0x42200b,_0x3c761c={'vdVzW':function(_0x430588,_0x146fa1,_0x4fc694){return _0x430588(_0x146fa1,_0x4fc694);},'KjdCg':function(_0x480b67,_0x454327){return _0x480b67===_0x454327;},'loqaM':function(_0x5b3722,_0x24be14){return _0x5b3722(_0x24be14);}},_0x38f000=_0x3c761c['vdVzW'](buildSessionCheckUrl,_0x36ee1e,_0x4bc288['sessionCheckPath']);if(!_0x38f000)return!![];if(!_0x5eaf43[_0x9f15a3(0x1d9)])return!![];let _0x4757ac=null;try{_0x4757ac=await _0x5eaf43['launchBrowser']();const _0x55e3d8=await _0x4757ac['newContext']({'storageState':_0x1392cf,'ignoreHTTPSErrors':!![],..._0x4bc288['setupHeaders']?{'extraHTTPHeaders':_0x4bc288['setupHeaders']}:{}}),_0x5b2129=await _0x55e3d8['newPage'](),_0x406fcc=await _0x5b2129[_0x9f15a3(0x1f9)](_0x38f000,{'waitUntil':_0x9f15a3(0x1f2),'timeout':0x3a98}),_0x58e667=_0x406fcc?.[_0x9f15a3(0x1f5)]();if(_0x58e667===0x191||_0x3c761c[_0x9f15a3(0x1e2)](_0x58e667,0x193))return![];const _0x33f944=_0x5b2129[_0x9f15a3(0x1dc)]();if(_0x3c761c['loqaM'](looksLikeLoginUrl,_0x33f944))return![];return!![];}catch{return![];}finally{if(_0x4757ac)await _0x4757ac[_0x9f15a3(0x1d7)]()['catch'](()=>{});}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(function(_0x466eb0,_0x5bc528){const _0x58e23e=_0x4933,_0x5f3f69=_0x466eb0();while(!![]){try{const _0x4de72f=parseInt(_0x58e23e(0x12f))/0x1+-parseInt(_0x58e23e(0x12b))/0x2+parseInt(_0x58e23e(0x131))/0x3*(parseInt(_0x58e23e(0x12c))/0x4)+parseInt(_0x58e23e(0x132))/0x5+parseInt(_0x58e23e(0x12e))/0x6+parseInt(_0x58e23e(0x129))/0x7*(-parseInt(_0x58e23e(0x12a))/0x8)+-parseInt(_0x58e23e(0x12d))/0x9;if(_0x4de72f===_0x5bc528)break;else _0x5f3f69['push'](_0x5f3f69['shift']());}catch(_0xb9a0d8){_0x5f3f69['push'](_0x5f3f69['shift']());}}}(_0x1781,0x3e4d8));import{execFile as _0x29f60f}from'child_process';import{promisify}from'util';function _0x1781(){const _0xb4c2ae=['1969250qCQOWR','--error-unmatch','889UzQLas','31800sJeTpB','791396dNJCMS','316236dvRwSU','235188htNVLx','3002646TDjsoF','208497ypoLhj','ls-files','3XzUFXF'];_0x1781=function(){return _0xb4c2ae;};return _0x1781();}const execFile=promisify(_0x29f60f);function _0x4933(_0x1889cf,_0x1d8a77){_0x1889cf=_0x1889cf-0x128;const _0x17817d=_0x1781();let _0x4933a7=_0x17817d[_0x1889cf];return _0x4933a7;}export async function isPathGitTracked(_0x1deeee){const _0x2738c4=_0x4933,_0x2015ad={'Bgujl':'git'};try{return await execFile(_0x2015ad['Bgujl'],[_0x2738c4(0x130),_0x2738c4(0x128),_0x1deeee],{'cwd':process['cwd']()}),!![];}catch{return![];}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const _0x33be12=_0x34cf;(function(_0xd06b88,_0x268cd3){const _0x430d9f=_0x34cf,_0x3ed2a5=_0xd06b88();while(!![]){try{const _0x3ce8dd=-parseInt(_0x430d9f(0x194))/0x1*(-parseInt(_0x430d9f(0x1ac))/0x2)+-parseInt(_0x430d9f(0x1a8))/0x3*(-parseInt(_0x430d9f(0x1a9))/0x4)+parseInt(_0x430d9f(0x18f))/0x5+parseInt(_0x430d9f(0x196))/0x6+-parseInt(_0x430d9f(0x1a4))/0x7+-parseInt(_0x430d9f(0x197))/0x8*(parseInt(_0x430d9f(0x19e))/0x9)+parseInt(_0x430d9f(0x193))/0xa;if(_0x3ce8dd===_0x268cd3)break;else _0x3ed2a5['push'](_0x3ed2a5['shift']());}catch(_0x85488e){_0x3ed2a5['push'](_0x3ed2a5['shift']());}}}(_0x348a,0x45d79));import{existsSync,writeFileSync,mkdirSync}from'fs';import{join}from'path';import{getRangerDir,getRangerHomeDir}from'./rangerRoot.js';function detectLegacyPaths(){const _0xa954ff=_0x34cf,_0x566590={'EbVqQ':function(_0x531b03){return _0x531b03();},'TusrA':function(_0x45375c,_0x36ab58,_0x159471){return _0x45375c(_0x36ab58,_0x159471);},'FwyUr':function(_0x3153e6,_0x1544c1,_0x3da895){return _0x3153e6(_0x1544c1,_0x3da895);},'EZQlX':_0xa954ff(0x19f),'ImpVY':_0xa954ff(0x1ab)},_0x1e7acb=getRangerDir(),_0x4a92be=_0x566590['EbVqQ'](getRangerHomeDir);return[_0x566590[_0xa954ff(0x191)](join,_0x1e7acb,'local'),join(_0x1e7acb,'ci'),_0x566590['FwyUr'](join,_0x4a92be,_0x566590[_0xa954ff(0x19a)]),join(_0x1e7acb,_0x566590['ImpVY'])]['filter'](_0x4b2d7c=>existsSync(_0x4b2d7c));}function flagFilePath(){const _0x379592=_0x34cf,_0x25e704={'eofoR':function(_0x5cf5db,_0x3a505b,_0x54e3da){return _0x5cf5db(_0x3a505b,_0x54e3da);}},_0x14b878=new Date()[_0x379592(0x198)]()['slice'](0x0,0xa);return _0x25e704[_0x379592(0x199)](join,getRangerHomeDir(),'.legacy-warning-'+_0x14b878);}function _0x348a(){const _0x4682d3=['has','\x20\x20\x20Ranger\x20no\x20longer\x20writes\x20to\x20these\x20paths.\x20Existing\x20sessions\x20there\x20still\x20work','3860661XsjVAv','length','Igjyp','--help','2598HqTCSC','472GbkqGD','wJrkS','active-profile.txt','150LQWfOU','1857495eFNhXh','\x20\x20\x20Delete\x20these\x20paths\x20after\x20you\x20have\x20re-auth-ed.','TusrA','IjYWM','4173310lDQelr','2877gOuIoZ','\x20\x20\x20\x20\x20ranger\x20profile\x20add\x20<name>','985884gUujNL','8gtUvTp','toISOString','eofoR','EZQlX','XHoVb','map','verify-feature','3901599mRyLse','local','profiles','qHtwT'];_0x348a=function(){return _0x4682d3;};return _0x348a();}export function showLegacyDeprecationWarning(){const _0x31724a=_0x34cf,_0x4471c9={'qHtwT':function(_0x412afa){return _0x412afa();},'xmEVv':'⚠\x20\x20Legacy\x20Ranger\x20paths\x20detected\x20(read-only):','xdZBn':_0x31724a(0x1a3),'WMJJL':'\x20\x20\x20as\x20a\x20fallback.\x20To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:','Igjyp':'\x20\x20\x20For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:','wJrkS':function(_0x13bb04,_0x51bd76){return _0x13bb04+_0x51bd76;},'IjYWM':function(_0xff7860,_0x52e42d,_0xba9057){return _0xff7860(_0x52e42d,_0xba9057);}},_0x52f619=_0x4471c9[_0x31724a(0x1a1)](detectLegacyPaths);if(_0x52f619[_0x31724a(0x1a5)]===0x0)return;const _0x697c2b=flagFilePath();if(existsSync(_0x697c2b))return;const _0x1bc929=['',_0x4471c9['xmEVv'],..._0x52f619[_0x31724a(0x19c)](_0x1d7730=>'\x20\x20\x20\x20\x20'+_0x1d7730),'',_0x4471c9['xdZBn'],_0x4471c9['WMJJL'],'',_0x31724a(0x195),'',_0x4471c9[_0x31724a(0x1a6)],'\x20\x20\x20\x20\x20https://docs.ranger.net/main/concepts/profiles','',_0x31724a(0x190),''];process['stderr']['write'](_0x4471c9[_0x31724a(0x1aa)](_0x1bc929['join']('\x0a'),'\x0a'));try{_0x4471c9[_0x31724a(0x192)](mkdirSync,getRangerHomeDir(),{'recursive':!![]}),writeFileSync(_0x697c2b,'',{'mode':0x180});}catch{}}const PROFILE_TOUCHING_COMMANDS=new Set(['go','verify',_0x33be12(0x19d),'profile',_0x33be12(0x1a0),'setup','setup-ci','start','use']);function _0x34cf(_0x3bc722,_0x5a9368){_0x3bc722=_0x3bc722-0x18f;const _0x348aee=_0x348a();let _0x34cf2f=_0x348aee[_0x3bc722];return _0x34cf2f;}export function shouldShowLegacyWarning(_0x13b145){const _0x1560ee=_0x33be12,_0x232f8d={'XHoVb':function(_0x4c194c,_0x580a05){return _0x4c194c===_0x580a05;}},_0x3ab63b=_0x13b145[0x2];if(!_0x3ab63b)return![];if(_0x3ab63b['startsWith']('-'))return![];if(!PROFILE_TOUCHING_COMMANDS[_0x1560ee(0x1a2)](_0x3ab63b))return![];for(let _0x3e9cce=0x3;_0x3e9cce<_0x13b145['length'];_0x3e9cce++){if(_0x13b145[_0x3e9cce]===_0x1560ee(0x1a7)||_0x232f8d[_0x1560ee(0x19b)](_0x13b145[_0x3e9cce],'-h'))return![];}return!![];}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(function(_0x477a7b,_0x100271){const _0x10be52=_0x3647,_0x462d82=_0x477a7b();while(!![]){try{const _0x577835=-parseInt(_0x10be52(0x9c))/0x1*(parseInt(_0x10be52(0x9a))/0x2)+parseInt(_0x10be52(0xa2))/0x3*(parseInt(_0x10be52(0xa3))/0x4)+-parseInt(_0x10be52(0xa6))/0x5*(parseInt(_0x10be52(0x9e))/0x6)+-parseInt(_0x10be52(0x9d))/0x7+-parseInt(_0x10be52(0xa5))/0x8*(parseInt(_0x10be52(0xa7))/0x9)+parseInt(_0x10be52(0x98))/0xa+-parseInt(_0x10be52(0xa4))/0xb*(parseInt(_0x10be52(0x99))/0xc);if(_0x577835===_0x100271)break;else _0x462d82['push'](_0x462d82['shift']());}catch(_0x150fe9){_0x462d82['push'](_0x462d82['shift']());}}}(_0x1c1c,0x5d595));function originIdentity(_0x2c837f){const _0x179901=_0x3647;try{const _0x208d65=new URL(_0x2c837f);return _0x208d65['protocol']+'//'+_0x208d65[_0x179901(0x9f)];}catch{return undefined;}}export function matchAuthEnvironment(_0x3b90fa,_0x5579b6){const _0xebb9f8=_0x3647,_0x1b75b7={'BJSyT':function(_0x458bb5,_0x330165){return _0x458bb5(_0x330165);},'yfGKE':function(_0x3eb2a0,_0x10fd63){return _0x3eb2a0===_0x10fd63;}};if(!_0x5579b6||!_0x5579b6['environments'])return undefined;const _0xea4193=_0x1b75b7['BJSyT'](originIdentity,_0x3b90fa);if(!_0xea4193){if(_0x5579b6['defaultEnvironmentKey']&&_0x5579b6[_0xebb9f8(0xa0)][_0x5579b6['defaultEnvironmentKey']])return _0x5579b6[_0xebb9f8(0xa1)];return undefined;}for(const [_0x14471a,_0x42020a]of Object['entries'](_0x5579b6[_0xebb9f8(0xa0)])){for(const _0x193e52 of _0x42020a[_0xebb9f8(0x9b)]??[]){const _0x1eb91b=originIdentity(_0x193e52);if(_0x1eb91b&&_0x1b75b7['yfGKE'](_0x1eb91b,_0xea4193))return _0x14471a;}}if(_0x5579b6['defaultEnvironmentKey']&&_0x5579b6[_0xebb9f8(0xa0)][_0x5579b6['defaultEnvironmentKey']])return _0x5579b6['defaultEnvironmentKey'];return undefined;}function _0x3647(_0x406241,_0x140cb0){_0x406241=_0x406241-0x98;const _0x1c1cef=_0x1c1c();let _0x364779=_0x1c1cef[_0x406241];return _0x364779;}function _0x1c1c(){const _0x24fbe9=['1130jaQyUN','6282jLzgCi','6556600QBLuFm','12EixHCT','2lRUxxI','domains','412261JITCwk','93793GdCdcE','6KSvjAB','host','environments','defaultEnvironmentKey','9orRirl','814768Ievugk','3031787hAMzgZ','2096mcIISQ'];_0x1c1c=function(){return _0x24fbe9;};return _0x1c1c();}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(function(_0x5a3f61,_0x353e88){const _0x120a51=_0xef1d,_0x246a25=_0x5a3f61();while(!![]){try{const _0xbf652f=parseInt(_0x120a51(0x12d))/0x1*(parseInt(_0x120a51(0x122))/0x2)+-parseInt(_0x120a51(0x125))/0x3*(parseInt(_0x120a51(0x12b))/0x4)+parseInt(_0x120a51(0x12e))/0x5+-parseInt(_0x120a51(0x139))/0x6*(parseInt(_0x120a51(0x121))/0x7)+-parseInt(_0x120a51(0x12a))/0x8*(parseInt(_0x120a51(0x132))/0x9)+parseInt(_0x120a51(0x133))/0xa+parseInt(_0x120a51(0x137))/0xb*(-parseInt(_0x120a51(0x116))/0xc);if(_0xbf652f===_0x353e88)break;else _0x246a25['push'](_0x246a25['shift']());}catch(_0xe50dd6){_0x246a25['push'](_0x246a25['shift']());}}}(_0x5e0e,0x33065));import{existsSync,mkdirSync,readFileSync,renameSync,writeFileSync}from'fs';function _0x5e0e(){const _0x135dee=['171FdMgJY','3080180DizZPJ','projects','vUYve','miaRX','4807IQofjL','ZcfJq','592926IRehpR','LlGvy','stringify','.tmp','entries','AtDzo','length','taoXm','VXauG','ssICX','object',').\x20Ignoring\x20local\x20profile\x20overrides.','utf-8','message','isArray','headers','tVsmh','profiles','5964HteJsb','rFCCE','settings','[ranger]\x20Warning:\x20','MPWRY','JfxVs','KMAov','wIqzw','jdDpy','split','ubcYF','7EVCOUB','10pjjoBr','keys','projects.json','9hpDYwI','\x20has\x20an\x20unexpected\x20shape.\x20Ignoring\x20local\x20profile\x20overrides.','warn','QhEtF','QstzP','156664yDKlUg','93604VPSsZl','JyBwU','72991eUceOf','1471570XfJDAl','setupHeaders','lastProfile','XtEyE'];_0x5e0e=function(){return _0x135dee;};return _0x5e0e();}import{unlinkSync}from'fs';import{dirname,join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';const CURRENT_VERSION=0x1;function _0xef1d(_0x19f6a9,_0xa437fb){_0x19f6a9=_0x19f6a9-0x112;const _0x5e0eb4=_0x5e0e();let _0xef1df9=_0x5e0eb4[_0x19f6a9];return _0xef1df9;}export function getProjectsConfigPath(){const _0x39f630=_0xef1d,_0x8c81f9={'AtDzo':function(_0xc33bd,_0x31ed96,_0x35e507){return _0xc33bd(_0x31ed96,_0x35e507);},'CVOuD':_0x39f630(0x124)};return _0x8c81f9[_0x39f630(0x13e)](join,getRangerHomeDir(),_0x8c81f9['CVOuD']);}function emptyConfig(){return{'version':CURRENT_VERSION,'projects':{}};}export function readProjectsConfig(){const _0x559b02=_0xef1d,_0x30d90a={'KMAov':function(_0x2822ea){return _0x2822ea();},'APxFu':_0x559b02(0x145),'QstzP':function(_0x3693c5,_0x17e571){return _0x3693c5 instanceof _0x17e571;},'NPpRe':function(_0x38e81f,_0x534d39){return _0x38e81f(_0x534d39);},'jdDpy':function(_0x5da2e1,_0x4ae843){return _0x5da2e1(_0x4ae843);},'LlGvy':'object','XtEyE':function(_0x57f8b8,_0x501c95){return _0x57f8b8!==_0x501c95;},'QxOjp':function(_0x2d176d){return _0x2d176d();}},_0x8a08a=getProjectsConfigPath();if(!existsSync(_0x8a08a))return _0x30d90a[_0x559b02(0x11c)](emptyConfig);let _0x33038f;try{_0x33038f=readFileSync(_0x8a08a,_0x30d90a['APxFu']);}catch(_0x492162){const _0x22436b=_0x30d90a[_0x559b02(0x129)](_0x492162,Error)?_0x492162[_0x559b02(0x146)]:_0x30d90a['NPpRe'](String,_0x492162);return console[_0x559b02(0x127)]('[ranger]\x20Warning:\x20failed\x20to\x20read\x20'+_0x8a08a+':\x20'+_0x22436b+'.\x20Ignoring\x20local\x20profile\x20overrides.'),_0x30d90a[_0x559b02(0x11c)](emptyConfig);}let _0x3768af;try{_0x3768af=JSON['parse'](_0x33038f);}catch(_0x513386){const _0x3aeb8d=_0x513386 instanceof Error?_0x513386['message']:_0x30d90a[_0x559b02(0x11e)](String,_0x513386);return console['warn'](_0x559b02(0x119)+_0x8a08a+'\x20is\x20not\x20valid\x20JSON\x20('+_0x3aeb8d+_0x559b02(0x144)),_0x30d90a['KMAov'](emptyConfig);}if(!_0x3768af||typeof _0x3768af!==_0x30d90a[_0x559b02(0x13a)]||Array[_0x559b02(0x112)](_0x3768af)||_0x3768af['version']!==CURRENT_VERSION||_0x30d90a[_0x559b02(0x131)](typeof _0x3768af[_0x559b02(0x134)],_0x30d90a['LlGvy'])||_0x3768af['projects']===null||Array['isArray'](_0x3768af['projects']))return console['warn']('[ranger]\x20Warning:\x20'+_0x8a08a+_0x559b02(0x126)),_0x30d90a['QxOjp'](emptyConfig);return _0x3768af;}export function writeProjectsConfig(_0x5af1f6){const _0x5e6759=_0xef1d,_0x5c3b61={'RQXHv':function(_0x55ca2f,_0x509185){return _0x55ca2f(_0x509185);},'QhEtF':function(_0x2db430,_0x2355c8){return _0x2db430(_0x2355c8);},'hYIVj':function(_0x2b06bf,_0x2ec648,_0x16a47a){return _0x2b06bf(_0x2ec648,_0x16a47a);},'JfxVs':function(_0x1a2cf1,_0x15ad23,_0x5ba5a8,_0x3a3e6b){return _0x1a2cf1(_0x15ad23,_0x5ba5a8,_0x3a3e6b);}},_0x28be65=getProjectsConfigPath(),_0x581bd0=_0x5c3b61['RQXHv'](dirname,_0x28be65);!_0x5c3b61[_0x5e6759(0x128)](existsSync,_0x581bd0)&&_0x5c3b61['hYIVj'](mkdirSync,_0x581bd0,{'recursive':!![]});const _0x5c771f=_0x28be65+'.'+process['pid']+'.'+Date['now']()+_0x5e6759(0x13c),_0x46d121=JSON[_0x5e6759(0x13b)](_0x5af1f6,null,0x2)+'\x0a';try{_0x5c3b61[_0x5e6759(0x11b)](writeFileSync,_0x5c771f,_0x46d121,{'encoding':_0x5e6759(0x145),'mode':0x180}),renameSync(_0x5c771f,_0x28be65);}catch(_0xb9d2a3){try{existsSync(_0x5c771f)&&unlinkSync(_0x5c771f);}catch{}throw _0xb9d2a3;}}export function readProfileOverrides(_0x55b04c,_0x5e2331){const _0xd5dde7=_0xef1d,_0x1795b8=readProjectsConfig(),_0x3707ae=_0x1795b8['projects'][_0x55b04c];if(!_0x3707ae||!_0x3707ae['profiles'])return null;const _0x55f571=_0x3707ae[_0xd5dde7(0x115)][_0x5e2331];if(!_0x55f571||!_0x55f571['settings'])return null;return _0x55f571[_0xd5dde7(0x118)]??null;}export function setProfileOverride(_0x4a2097,_0x3e6b60,_0x307ad6,_0x251fcb){const _0x11b381=_0xef1d,_0x421ae3={'JyBwU':'keyPath\x20is\x20required','tVsmh':function(_0x492ff9,_0x49c64b,_0x32ab98,_0x2a0376){return _0x492ff9(_0x49c64b,_0x32ab98,_0x2a0376);}};if(!_0x307ad6)throw new Error(_0x421ae3[_0x11b381(0x12c)]);const _0x168fb7=readProjectsConfig(),_0x4ac2eb=_0x168fb7['projects'][_0x4a2097]??={},_0x2d8de2=_0x4ac2eb['profiles']??={},_0x54bb29=_0x2d8de2[_0x3e6b60]??={},_0x372a5a=_0x54bb29['settings']??={};_0x421ae3[_0x11b381(0x114)](setByKeyPath,_0x372a5a,_0x307ad6,_0x251fcb),writeProjectsConfig(_0x168fb7);}export function unsetProfileOverride(_0x3d1ac4,_0x42b38f,_0x2be055){const _0x47974a=_0xef1d,_0x445edb={'wkwTQ':function(_0xe27b1c,_0x4cfffb,_0x9487a){return _0xe27b1c(_0x4cfffb,_0x9487a);}};if(!_0x2be055)throw new Error('keyPath\x20is\x20required');const _0x58d61c=readProjectsConfig(),_0x348ed7=_0x58d61c['projects'][_0x3d1ac4];if(!_0x348ed7?.[_0x47974a(0x115)])return![];const _0x4719e6=_0x348ed7[_0x47974a(0x115)][_0x42b38f];if(!_0x4719e6?.[_0x47974a(0x118)])return![];const _0x46e235=_0x445edb['wkwTQ'](deleteByKeyPath,_0x4719e6['settings'],_0x2be055);if(!_0x46e235)return![];return writeProjectsConfig(_0x58d61c),!![];}export function resetProfileOverrides(_0x178acb,_0xd8a8e7){const _0x2cd375=_0xef1d,_0x1aa4c9={'ZcfJq':function(_0x59261a,_0x4de898){return _0x59261a in _0x4de898;},'MPWRY':function(_0x326e38,_0x2679af){return _0x326e38===_0x2679af;}},_0x4c8316=readProjectsConfig(),_0x5bba93=_0x4c8316['projects'][_0x178acb];if(!_0x5bba93?.['profiles'])return;if(!_0x1aa4c9[_0x2cd375(0x138)](_0xd8a8e7,_0x5bba93[_0x2cd375(0x115)]))return;delete _0x5bba93['profiles'][_0xd8a8e7],_0x1aa4c9[_0x2cd375(0x11a)](Object[_0x2cd375(0x123)](_0x5bba93[_0x2cd375(0x115)])[_0x2cd375(0x13f)],0x0)&&(!_0x5bba93['lastProfile']?delete _0x4c8316[_0x2cd375(0x134)][_0x178acb]:_0x5bba93['profiles']={}),writeProjectsConfig(_0x4c8316);}export function readLastProfile(_0x49971b){const _0x80f9b3=_0xef1d,_0x3385d0={'vUYve':function(_0x555338){return _0x555338();}},_0x4fe453=_0x3385d0[_0x80f9b3(0x135)](readProjectsConfig),_0x40fe6f=_0x4fe453[_0x80f9b3(0x134)][_0x49971b];return _0x40fe6f?.['lastProfile']??null;}export function writeLastProfile(_0x4fb7d9,_0x30f39a){const _0x44627e=_0xef1d,_0x5523ce={'csaxK':function(_0x2e1056,_0xcd5b3a){return _0x2e1056(_0xcd5b3a);}},_0xfd3f50=readProjectsConfig(),_0x3d71f8=_0xfd3f50[_0x44627e(0x134)][_0x4fb7d9]??={};_0x3d71f8[_0x44627e(0x130)]=_0x30f39a,_0x5523ce['csaxK'](writeProjectsConfig,_0xfd3f50);}export function mergeCloudProfileSettings(_0x1b31db,_0x495738){const _0x49a268=_0xef1d,_0x46566f={'wIqzw':function(_0x50a25f,_0x45677f){return _0x50a25f??_0x45677f;},'VXauG':_0x49a268(0x12f),'hJlPq':function(_0x3807dc,_0x2816fd){return _0x3807dc(_0x2816fd);}},_0x59e4d4={..._0x46566f[_0x49a268(0x11d)](_0x1b31db,{})};if(!_0x495738)return _0x59e4d4;for(const [_0x54e040,_0x570ad3]of Object['entries'](_0x495738)){if(_0x570ad3===undefined)continue;if(_0x570ad3===null){delete _0x59e4d4[_0x54e040];continue;}if(_0x54e040===_0x49a268(0x113)||_0x54e040===_0x46566f[_0x49a268(0x141)]){const _0x3d31ff=asRecord(_0x59e4d4[_0x54e040])??{},_0x25e607=_0x46566f['hJlPq'](asRecord,_0x570ad3);if(!_0x25e607){_0x59e4d4[_0x54e040]=_0x570ad3;continue;}const _0x1755e3={..._0x3d31ff};for(const [_0x3e8baa,_0x669c65]of Object[_0x49a268(0x13d)](_0x25e607)){if(_0x669c65===null)delete _0x1755e3[_0x3e8baa];else _0x669c65!==undefined&&(_0x1755e3[_0x3e8baa]=_0x669c65);}_0x59e4d4[_0x54e040]=_0x1755e3;continue;}_0x59e4d4[_0x54e040]=_0x570ad3;}return _0x59e4d4;}function asRecord(_0x54e676){const _0x1eb760=_0xef1d,_0x3ce573={'WaKLc':_0x1eb760(0x143)};return _0x54e676&&typeof _0x54e676===_0x3ce573['WaKLc']&&!Array[_0x1eb760(0x112)](_0x54e676)?_0x54e676:undefined;}function setByKeyPath(_0x5ccb30,_0x2a0bab,_0x1155fd){const _0x46afdf=_0xef1d,_0x128aa9={'zjikJ':function(_0x1c4175,_0x18d437){return _0x1c4175<_0x18d437;},'ssICX':function(_0x3f44c8,_0x2a8e93){return _0x3f44c8-_0x2a8e93;},'miaRX':function(_0x2ff5a6,_0x3c3a45){return _0x2ff5a6!==_0x3c3a45;},'OzQAv':_0x46afdf(0x143)},_0x227c91=_0x2a0bab['split']('.');let _0x2f2c44=_0x5ccb30;for(let _0x3dfb29=0x0;_0x128aa9['zjikJ'](_0x3dfb29,_0x128aa9[_0x46afdf(0x142)](_0x227c91['length'],0x1));_0x3dfb29++){const _0x577d5a=_0x227c91[_0x3dfb29],_0x5cbfde=_0x2f2c44[_0x577d5a];(!_0x5cbfde||_0x128aa9[_0x46afdf(0x136)](typeof _0x5cbfde,_0x128aa9['OzQAv'])||Array[_0x46afdf(0x112)](_0x5cbfde))&&(_0x2f2c44[_0x577d5a]={}),_0x2f2c44=_0x2f2c44[_0x577d5a];}_0x2f2c44[_0x227c91[_0x227c91['length']-0x1]]=_0x1155fd;}function deleteByKeyPath(_0x511f53,_0x47aff5){const _0x58d90e=_0xef1d,_0x2051f2={'taoXm':function(_0x3c08b9,_0xa87845){return _0x3c08b9!==_0xa87845;},'ubcYF':_0x58d90e(0x143),'rFCCE':function(_0x37cb42,_0x2d1dbe){return _0x37cb42-_0x2d1dbe;}},_0x57f80a=_0x47aff5[_0x58d90e(0x11f)]('.');let _0x2c7e6a=_0x511f53;for(let _0x5e817c=0x0;_0x5e817c<_0x57f80a[_0x58d90e(0x13f)]-0x1;_0x5e817c++){const _0x4278b=_0x57f80a[_0x5e817c],_0x2b53ab=_0x2c7e6a[_0x4278b];if(!_0x2b53ab||_0x2051f2[_0x58d90e(0x140)](typeof _0x2b53ab,_0x2051f2[_0x58d90e(0x120)])||Array[_0x58d90e(0x112)](_0x2b53ab))return![];_0x2c7e6a=_0x2b53ab;}const _0x175a1f=_0x57f80a[_0x2051f2[_0x58d90e(0x117)](_0x57f80a[_0x58d90e(0x13f)],0x1)];if(!(_0x175a1f in _0x2c7e6a))return![];return delete _0x2c7e6a[_0x175a1f],!![];}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(function(_0x216d62,_0x3e039f){const _0x259a39=_0x4447,_0x2b1d4e=_0x216d62();while(!![]){try{const _0x115d7f=parseInt(_0x259a39(0x19c))/0x1*(-parseInt(_0x259a39(0x191))/0x2)+parseInt(_0x259a39(0x189))/0x3*(-parseInt(_0x259a39(0x180))/0x4)+-parseInt(_0x259a39(0x18a))/0x5*(parseInt(_0x259a39(0x182))/0x6)+parseInt(_0x259a39(0x19e))/0x7*(-parseInt(_0x259a39(0x19f))/0x8)+-parseInt(_0x259a39(0x18c))/0x9+-parseInt(_0x259a39(0x186))/0xa+-parseInt(_0x259a39(0x183))/0xb*(-parseInt(_0x259a39(0x184))/0xc);if(_0x115d7f===_0x3e039f)break;else _0x2b1d4e['push'](_0x2b1d4e['shift']());}catch(_0x36aa28){_0x2b1d4e['push'](_0x2b1d4e['shift']());}}}(_0x4070,0xb511d));function _0x4070(){const _0x53904f=['\x22\x20exists\x20both\x20locally\x20and\x20in\x20the\x20cloud.\x20Which\x20one\x20should\x20be\x20used?','1024191zyzjNb','profile','length','liIkm','string','61378YrMCrk','cftLT','Profile\x20\x22','\x22.\x20Run:\x20ranger\x20profile\x20config\x20set\x20','url','\x20\x20-\x20run\x20`ranger\x20profile\x20use\x20<name>`\x20once,\x20or\x0a','name','envStartPath','Ranger\x20can\x27t\x20verify\x20with\x20a\x20browser\x20until\x20a\x20profile\x20is\x20set\x20up.\x20Options:\x0a','RANGER_TEST_USERNAME','Local\x20profile','13uPGuuz','\x20\x20-\x20pass\x20--profile\x20<name>\x20/\x20set\x20RANGER_PROFILE,\x20or\x0a','1996708crsLwZ','24mlbTTj','baseUrl','cwd','env','\x20\x20-\x20set\x20RANGER_TEST_USERNAME\x20(+\x20RANGER_TEST_PASSWORD)\x20to\x20materialize\x20one,\x20or\x0a','resolvedEnv','tOrNx','log','48JjgYiX','startPath','568500KcAyaO','2008633PeCdCe','288bzUgtB','domains','9825250leATkB','cloud','cdpEndpoint','61887DeNGec','55LQnVFz'];_0x4070=function(){return _0x53904f;};return _0x4070();}import{existsSync}from'fs';function _0x4447(_0xf37e41,_0x326476){_0xf37e41=_0xf37e41-0x17c;const _0x40701b=_0x4070();let _0x4447e2=_0x40701b[_0xf37e41];return _0x4447e2;}import _0x334ccb from'inquirer';import{ApiError,fetchCloudProfile,listCloudProfiles,resolveAdHocProfile,resolveCloudProfileSession}from'./cloudProfile.js';import{isInteractive}from'./cloudProfileSession.js';import{mergeCloudProfileSettings,readProfileOverrides}from'./projectsConfig.js';import{readUrlEnvVars,resolveProfileUrl}from'./resolveProfileUrl.js';import{getEnvDir,loadSettings,resolveEnvVars}from'./settings.js';import{readActiveProfileName}from'./activeProfile.js';export async function resolveProfileContext(_0x5acd72){const _0x4fe88e=_0x4447,_0x1039e5={'sTFYx':function(_0x5c1c0f){return _0x5c1c0f();},'VbmtK':function(_0x57acf0,_0x4cffef){return _0x57acf0+_0x4cffef;},'liIkm':function(_0x513380,_0x2251b5){return _0x513380(_0x2251b5);},'MyiXV':function(_0x470ee2,_0x22a7cd){return _0x470ee2(_0x22a7cd);},'NwKdJ':function(_0x34ebb5,_0x803646){return _0x34ebb5===_0x803646;},'ZlPXs':'\x20\x20Run\x20`ranger\x20profile\x20ls`\x20to\x20see\x20available\x20profiles,\x20or\x20','piONo':'`ranger\x20profile\x20add`\x20to\x20create\x20one.','KWMze':_0x4fe88e(0x187),'cftLT':function(_0x152cab,_0x5c15fe){return _0x152cab(_0x5c15fe);},'YkhfR':function(_0x23b516,_0x31560c){return _0x23b516(_0x31560c);},'tOrNx':function(_0x47789b,_0x46e1d3){return _0x47789b(_0x46e1d3);},'VUGxk':function(_0x2ce4e1){return _0x2ce4e1();}},_0x3ee47b=_0x5acd72['profile'];let _0x5784d3=_0x5acd72['profile']??await readActiveProfileName(),_0x361b06=null;if(!_0x5784d3&&process[_0x4fe88e(0x1a2)][_0x4fe88e(0x19a)]){const _0x49cb7a=await _0x1039e5['sTFYx'](resolveAdHocProfile);_0x49cb7a&&(_0x5784d3=_0x49cb7a[_0x4fe88e(0x197)],_0x361b06=_0x49cb7a[_0x4fe88e(0x18d)]);}if(!_0x5784d3)try{const _0x4d9108=await listCloudProfiles();if(_0x4d9108[_0x4fe88e(0x18e)]===0x1){const _0x47afeb=_0x4d9108[0x0];_0x5784d3=_0x47afeb[_0x4fe88e(0x197)],console[_0x4fe88e(0x17f)]('\x0aUsing\x20the\x20only\x20cloud\x20profile\x20for\x20your\x20org:\x20'+_0x47afeb[_0x4fe88e(0x197)]),console['log']('\x20\x20(pass\x20--profile\x20<name>\x20to\x20pin,\x20or\x20RANGER_TEST_USERNAME=...\x20to\x20materialize\x20a\x20new\x20one)');}}catch{}if(!_0x5784d3)throw new Error(_0x1039e5['VbmtK'](_0x4fe88e(0x199)+_0x4fe88e(0x17c),_0x4fe88e(0x19d))+_0x4fe88e(0x196)+'\x20\x20-\x20run\x20`ranger\x20profile\x20add\x20<name>`\x20to\x20create\x20a\x20new\x20one.');const _0x284132=_0x1039e5['liIkm'](getEnvDir,_0x5784d3),_0x1cb7c8=_0x1039e5['MyiXV'](existsSync,_0x284132);let _0x750eb9=_0x361b06,_0x2dfb8a=![];if(!_0x750eb9)try{_0x750eb9=await fetchCloudProfile(_0x5784d3);if(!_0x750eb9)_0x2dfb8a=!![];}catch(_0x1f8f1d){_0x1f8f1d instanceof ApiError&&_0x1039e5['NwKdJ'](_0x1f8f1d['status'],0x194)&&(_0x2dfb8a=!![]);}if(_0x3ee47b&&_0x2dfb8a&&!_0x1cb7c8&&!_0x750eb9)throw new Error(_0x4fe88e(0x193)+_0x3ee47b+'\x22\x20not\x20found\x20locally\x20or\x20in\x20the\x20cloud.\x0a'+_0x1039e5['ZlPXs']+_0x1039e5['piONo']);if(_0x750eb9&&_0x1cb7c8){let _0x236db9=!![];if(isInteractive()){const {source:_0xe1443}=await _0x334ccb['prompt']([{'type':'list','name':'source','message':'Profile\x20\x22'+_0x5784d3+_0x4fe88e(0x18b),'choices':[{'name':'Cloud\x20profile\x20(recommended)','value':_0x1039e5['KWMze']},{'name':_0x4fe88e(0x19b),'value':'local'}],'default':'cloud'}]);_0x236db9=_0xe1443===_0x4fe88e(0x187);}if(!_0x236db9)_0x750eb9=null;}const _0x25c950=readProfileOverrides(process[_0x4fe88e(0x1a1)](),_0x5784d3);let _0x144212=null,_0x507019,_0x4bb480,_0x30d0f7,_0x370cc6,_0x10b516=null,_0x198e8f;const _0x5f2e13=expandOverrides(_0x25c950);if(_0x750eb9){_0x144212=_0x750eb9;const _0x5c2507=_0x750eb9['settings']??{},_0x3b0cab=mergeCloudProfileSettings(_0x5c2507,_0x25c950??undefined),_0x378d35={..._0x750eb9,'settings':_0x3b0cab},_0x133a5e=process[_0x4fe88e(0x1a2)]['RANGER_SESSION_STATE_PATH'];if(_0x133a5e){if(!_0x1039e5['liIkm'](existsSync,_0x133a5e))throw new Error('RANGER_SESSION_STATE_PATH='+_0x133a5e+'\x20does\x20not\x20exist.');_0x507019=_0x133a5e,_0x4bb480=_0x1039e5[_0x4fe88e(0x192)](resolveEnvVars,_0x3b0cab),_0x30d0f7=_0x1039e5['YkhfR'](Boolean,_0x4bb480['cdpEndpoint']),_0x10b516={'baseUrl':expandString(_0x5c2507['baseUrl']),'startPath':expandString(_0x5c2507['startPath'])};}else{const _0x5e5f9a=await _0x1039e5[_0x4fe88e(0x18f)](resolveCloudProfileSession,_0x378d35);_0x507019=_0x5e5f9a['authPath'],_0x4bb480=resolveEnvVars(_0x3b0cab),_0x30d0f7=Boolean(_0x4bb480[_0x4fe88e(0x188)]),_0x10b516={'baseUrl':_0x1039e5['liIkm'](expandString,_0x5c2507['baseUrl']),'startPath':_0x1039e5[_0x4fe88e(0x192)](expandString,_0x5c2507['startPath'])},_0x198e8f=_0x5e5f9a[_0x4fe88e(0x17d)]?.[_0x4fe88e(0x185)]?.[0x0];}}else{if(!_0x1cb7c8)throw new Error('Profile\x20\x22'+_0x5784d3+'\x22\x20not\x20found.\x20Run:\x20ranger\x20profile\x20add\x20'+_0x5784d3);const _0x545f9f=await loadSettings(_0x5784d3);_0x4bb480=resolveEnvVars(_0x545f9f),_0x30d0f7=_0x1039e5[_0x4fe88e(0x17e)](Boolean,_0x4bb480['cdpEndpoint']),_0x370cc6=_0x4bb480[_0x4fe88e(0x1a0)];}const _0x39ee7b=_0x1039e5['VUGxk'](readUrlEnvVars),_0xd28f8d=resolveProfileUrl({'flagBaseUrl':_0x5acd72['baseUrl'],'flagStartPath':_0x5acd72['startPath'],'envBaseUrl':_0x39ee7b['envBaseUrl'],'envStartPath':_0x39ee7b[_0x4fe88e(0x198)],'localSettingsBaseUrl':_0x370cc6,'projectOverrides':_0x5f2e13,'cloudSettings':_0x10b516,'authEnvironmentDomain':_0x198e8f}),_0x1a4fe3=_0xd28f8d[_0x4fe88e(0x195)]??_0xd28f8d[_0x4fe88e(0x1a0)];if(!_0x1a4fe3&&!_0x30d0f7)throw new Error('No\x20baseUrl\x20configured\x20for\x20profile\x20\x22'+_0x5784d3+_0x4fe88e(0x194)+_0x5784d3+'\x20baseUrl\x20<url>');return{'activeProfile':_0x5784d3,'resolvedCloudProfile':_0x144212,'cloudAuthPath':_0x507019,'resolvedSettings':_0x4bb480,'isCdpMode':_0x30d0f7,'url':_0x1a4fe3,'startPath':_0xd28f8d[_0x4fe88e(0x181)]};}function expandString(_0xf6e37d){const _0x236fb4=_0x4447,_0x27a0ab={'dmEwB':function(_0x432556,_0x1fa1ea){return _0x432556(_0x1fa1ea);}};if(typeof _0xf6e37d!==_0x236fb4(0x190))return _0xf6e37d;return _0x27a0ab['dmEwB'](resolveEnvVars,_0xf6e37d);}function expandOverrides(_0x9aef33){const _0xf99a57=_0x4447,_0x35b825={'VUdQl':function(_0x4f7f5e,_0x2fc4ed){return _0x4f7f5e(_0x2fc4ed);},'Wimxj':_0xf99a57(0x190)};if(!_0x9aef33)return _0x9aef33;const _0x1d8a1f={..._0x9aef33};return typeof _0x1d8a1f['baseUrl']===_0xf99a57(0x190)&&(_0x1d8a1f['baseUrl']=_0x35b825['VUdQl'](resolveEnvVars,_0x1d8a1f['baseUrl'])),typeof _0x1d8a1f['startPath']===_0x35b825['Wimxj']&&(_0x1d8a1f[_0xf99a57(0x181)]=resolveEnvVars(_0x1d8a1f[_0xf99a57(0x181)])),_0x1d8a1f;}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function _0x7d95(_0x4dc3c9,_0x349d9d){_0x4dc3c9=_0x4dc3c9-0x67;const _0x4ad791=_0x4ad7();let _0x7d95f7=_0x4ad791[_0x4dc3c9];return _0x7d95f7;}(function(_0xb27a23,_0x17e6ff){const _0x359ff8=_0x7d95,_0x25ba06=_0xb27a23();while(!![]){try{const _0x387ab4=-parseInt(_0x359ff8(0x7a))/0x1+-parseInt(_0x359ff8(0x79))/0x2+-parseInt(_0x359ff8(0x7c))/0x3+-parseInt(_0x359ff8(0x6c))/0x4+parseInt(_0x359ff8(0x6e))/0x5*(-parseInt(_0x359ff8(0x7b))/0x6)+parseInt(_0x359ff8(0x6f))/0x7+parseInt(_0x359ff8(0x68))/0x8;if(_0x387ab4===_0x17e6ff)break;else _0x25ba06['push'](_0x25ba06['shift']());}catch(_0x2951f7){_0x25ba06['push'](_0x25ba06['shift']());}}}(_0x4ad7,0x2acf2));function firstDefined(..._0x5d04e7){for(const _0x119bc3 of _0x5d04e7){if(_0x119bc3!==undefined&&_0x119bc3!==null&&_0x119bc3!=='')return _0x119bc3;}return undefined;}function normalizeAuthEnvironmentDomain(_0x17eca1){if(!_0x17eca1)return undefined;if(/^[a-z][a-z0-9+.-]*:\/\//i['test'](_0x17eca1))return _0x17eca1;return'https://'+_0x17eca1;}export function resolveBaseUrl(_0x3a9695){const _0x133047=_0x7d95,_0x48213b={'bCjlu':function(_0x33efdd,_0x27c59b){return _0x33efdd in _0x27c59b;},'UVIvo':function(_0x39c019,_0x1dd612){return _0x39c019===_0x1dd612;},'WiTtG':_0x133047(0x69),'xwzVP':function(_0x332df4,_0x5df804){return _0x332df4(_0x5df804);}},_0xc8f577=_0x3a9695[_0x133047(0x77)],_0x83aac=!!_0xc8f577&&_0x48213b['bCjlu'](_0x133047(0x6a),_0xc8f577),_0x29a402=_0xc8f577?.[_0x133047(0x6a)],_0x2464c3=!(_0x83aac&&_0x29a402===null);return firstDefined(_0x3a9695[_0x133047(0x75)],_0x3a9695[_0x133047(0x6d)],_0x3a9695['localSettingsBaseUrl'],_0x48213b[_0x133047(0x72)](typeof _0x29a402,_0x48213b['WiTtG'])?_0x29a402:undefined,_0x2464c3?_0x3a9695[_0x133047(0x76)]?.[_0x133047(0x6a)]:undefined,_0x2464c3?_0x48213b['xwzVP'](normalizeAuthEnvironmentDomain,_0x3a9695[_0x133047(0x70)]):undefined);}export function resolveStartPath(_0xe05ea8){const _0xec60c6=_0x7d95,_0x181a02={'NCjXM':function(_0x49116b,_0x279146,_0x36c34d,_0x37f619,_0x519e83){return _0x49116b(_0x279146,_0x36c34d,_0x37f619,_0x519e83);},'yiEpM':function(_0x27dfac,_0x35bb5c){return _0x27dfac===_0x35bb5c;}},_0x32d686=_0xe05ea8['projectOverrides'],_0x210abf=!!_0x32d686&&_0xec60c6(0x71)in _0x32d686,_0x5a7196=_0x32d686?.['startPath'],_0x3e0a3c=!(_0x210abf&&_0x5a7196===null);return _0x181a02['NCjXM'](firstDefined,_0xe05ea8[_0xec60c6(0x6b)],_0xe05ea8[_0xec60c6(0x67)],_0x181a02['yiEpM'](typeof _0x5a7196,'string')?_0x5a7196:undefined,_0x3e0a3c?_0xe05ea8['cloudSettings']?.[_0xec60c6(0x71)]:undefined);}function _0x4ad7(){const _0xe1b7d9=['997252LKhNID','envBaseUrl','29615gwyIKC','1212673LYnBAI','authEnvironmentDomain','startPath','UVIvo','endsWith','startsWith','flagBaseUrl','cloudSettings','projectOverrides','HhMnE','256722UcsCns','32070MBdMtW','258Xwkxue','753621qHTYlN','slice','envStartPath','7341976VCWGKf','string','baseUrl','flagStartPath'];_0x4ad7=function(){return _0xe1b7d9;};return _0x4ad7();}export function joinBaseAndPath(_0x494c04,_0xf98a34){const _0x1e8c35=_0x7d95,_0x98da08={'HhMnE':function(_0x4ce09c,_0x44413e){return _0x4ce09c+_0x44413e;}};if(!_0x494c04)return undefined;if(!_0xf98a34)return _0x494c04;const _0x3c577b=_0x494c04[_0x1e8c35(0x73)]('/')?_0x494c04[_0x1e8c35(0x7d)](0x0,-0x1):_0x494c04,_0x21e204=_0xf98a34[_0x1e8c35(0x74)]('/')?_0xf98a34:_0x98da08[_0x1e8c35(0x78)]('/',_0xf98a34);return _0x3c577b+_0x21e204;}export function resolveProfileUrl(_0x2562c0){const _0x372efa=resolveBaseUrl(_0x2562c0),_0x252ee5=resolveStartPath(_0x2562c0);return{'baseUrl':_0x372efa,'startPath':_0x252ee5,'url':joinBaseAndPath(_0x372efa,_0x252ee5)};}export function readUrlEnvVars(_0x2ae07d=process['env']){return{'envBaseUrl':_0x2ae07d['RANGER_BASE_URL'],'envStartPath':_0x2ae07d['RANGER_START_PATH']};}
|