@lovrabet/rabetbase-cli 2.3.12 → 2.3.13-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/add.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/remove.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/update.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/standard-page-status.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/permit/index.js +1 -1
- package/lib/commands/permit/page-get.js +1 -1
- package/lib/commands/permit/page-set.js +1 -1
- package/lib/commands/permit/role-apis-set.js +1 -1
- package/lib/commands/permit/role-menus-set.js +1 -1
- package/lib/commands/permit/role-menus.js +1 -1
- package/lib/commands/permit/shared.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/non-interactive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/init.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/create.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/save.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/copy-directory.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3da65a,_0x46c9d4){const _0x48c13d=a151_0x2e2b,_0x4b7caf=_0x3da65a();while(!![]){try{const _0x184c52=parseInt(_0x48c13d(0xbd))/0x1+parseInt(_0x48c13d(0xba))/0x2*(-parseInt(_0x48c13d(0xa8))/0x3)+-parseInt(_0x48c13d(0xbc))/0x4+-parseInt(_0x48c13d(0xbe))/0x5+parseInt(_0x48c13d(0xb6))/0x6*(parseInt(_0x48c13d(0x9f))/0x7)+-parseInt(_0x48c13d(0x99))/0x8*(parseInt(_0x48c13d(0xa2))/0x9)+-parseInt(_0x48c13d(0xca))/0xa*(-parseInt(_0x48c13d(0x98))/0xb);if(_0x184c52===_0x46c9d4)break;else _0x4b7caf['push'](_0x4b7caf['shift']());}catch(_0x1fb717){_0x4b7caf['push'](_0x4b7caf['shift']());}}}(a151_0x3646,0xc7cc8));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a151_0x34f7fc from'chalk';import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';function a151_0x2e2b(_0x50a2c0,_0x4012d0){_0x50a2c0=_0x50a2c0-0x98;const _0x364694=a151_0x3646();let _0x2e2b80=_0x364694[_0x50a2c0];return _0x2e2b80;}import{readRawConfig,getProjectConfigPath,writeConfigFile,NEW_CONFIG_NAME,LEGACY_CONFIG_NAMES}from'../../context.js';import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';function a151_0x3646(){const _0x4b6fbe=['string','cyan','.bak','147282Qermiu','.rabetbase.json','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','join','2ihYUui','appcode','6418780BYHOrp','267158CAjVwH','6946060lxToMK','Migration\x20cancelled.\x20Run\x20`','utf8','trim','\x20\x20appcode:\x20','env','Please\x20enter\x20App\x20Code:','?\x20(Old\x20file\x20→\x20*.bak)','\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27','\x20workspace\x20init`\x20to\x20start\x20fresh.','init','App\x20Code\x20cannot\x20be\x20empty','10560510qCzYll','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','55sksMKS','8179064uLeiOb','1.0.0','log','green','keys','Invalid\x20App\x20Code','259hcKRPI','info','Upgrade\x20it\x20to\x20','9rkJJmH','yellow','version','setLogPath','\x20\x20Apps:\x20','parse','4862958wIOdTh','\x20→\x20.rabetbase.json','apps','✓\x20Upgraded\x20','package.json','gray','\x20\x20Default:\x20','toLocaleString','app','cwd','production'];a151_0x3646=function(){return _0x4b6fbe;};return a151_0x3646();}export async function initConfig(_0x570849){const _0x55c44b=a151_0x2e2b,{appcode:_0x153fef,env:_0x1b8cf6,autoYes:_0x1e319d}=_0x570849,_0x2108c8=process[_0x55c44b(0xb1)]();if(getProjectConfigPath())throw new Error(_0x55c44b(0xb8));let _0x1b3708;for(const _0x3aab01 of LEGACY_CONFIG_NAMES){const _0x2f1e5b=resolve(_0x2108c8,_0x3aab01);if(existsSync(_0x2f1e5b)){_0x1b3708=_0x2f1e5b;break;}}if(_0x1b3708){let _0x2aa5b1={};try{_0x2aa5b1=JSON[_0x55c44b(0xa7)](readFileSync(_0x1b3708,_0x55c44b(0xc0)));}catch{}const _0x904083=basename(_0x1b3708),_0x28c81e=_0x2aa5b1?.[_0x55c44b(0xbb)]||_0x2aa5b1?.['app'];let _0x324bed=_0x1e319d;!_0x1e319d&&(console[_0x55c44b(0x9b)](a151_0x34f7fc[_0x55c44b(0xa3)](_0x55c44b(0xcb)+a151_0x34f7fc['bold'](_0x904083))),_0x28c81e&&console[_0x55c44b(0x9b)](a151_0x34f7fc[_0x55c44b(0xb4)](_0x55c44b(0xc2)+_0x28c81e)),_0x324bed=await confirm({'message':_0x55c44b(0xa1)+a151_0x34f7fc['bold'](_0x55c44b(0xb7))+_0x55c44b(0xc5),'default':!![]}));if(!_0x324bed){console['log'](_0x55c44b(0xbf)+CLI_BIN_NAME+_0x55c44b(0xc7));return;}const _0x17bed5=resolve(_0x2108c8,NEW_CONFIG_NAME),_0x474ca8=getCliVersionFromPkg(),_0x23b43e=readRawConfig(),_0x20a4b8=_0x153fef||(typeof _0x2aa5b1?.[_0x55c44b(0xbb)]===_0x55c44b(0xb3)?_0x2aa5b1[_0x55c44b(0xbb)]:undefined)||(typeof _0x2aa5b1?.[_0x55c44b(0xb0)]==='string'?_0x2aa5b1[_0x55c44b(0xb0)]:undefined)||await askAppcode(),_0xb8f4eb=typeof _0x2aa5b1?.[_0x55c44b(0xc3)]===_0x55c44b(0xb3)?_0x2aa5b1[_0x55c44b(0xc3)]:typeof _0x23b43e[_0x55c44b(0xc3)]===_0x55c44b(0xb3)?_0x23b43e[_0x55c44b(0xc3)]:'production',_0x227202=buildCanonicalProjectConfig({..._0x23b43e,..._0x2aa5b1},{'appCodes':[_0x20a4b8],'env':_0xb8f4eb,'metadata':{'version':_0x474ca8,'migratedAt':new Date()['toLocaleString'](),'migratedFrom':_0x1b3708}});writeConfigFile(_0x17bed5,_0x227202);const _0xe05498=_0x1b3708+_0x55c44b(0xb5);renameSync(_0x1b3708,_0xe05498),logger[_0x55c44b(0xa5)](_0x2108c8),logger[_0x55c44b(0xa0)]('init','从旧配置文件升级成功',{'from':_0x1b3708,'to':_0x17bed5,'appcode':_0x20a4b8,'env':_0x227202[_0x55c44b(0xc3)]}),console[_0x55c44b(0x9b)](a151_0x34f7fc[_0x55c44b(0x9c)](_0x55c44b(0xab)+_0x904083+_0x55c44b(0xa9))),console[_0x55c44b(0x9b)](a151_0x34f7fc[_0x55c44b(0xb4)]('\x20\x20Apps:\x20'+Object[_0x55c44b(0x9d)](_0x227202[_0x55c44b(0xaa)]||{})[_0x55c44b(0xb9)](',\x20'))),console[_0x55c44b(0x9b)](a151_0x34f7fc[_0x55c44b(0xb4)](_0x55c44b(0xae)+_0x227202['defaultApp'])),console[_0x55c44b(0x9b)](a151_0x34f7fc[_0x55c44b(0xad)]('\x20\x20Old\x20file\x20backed\x20up\x20as\x20'+_0x904083+_0x55c44b(0xb5)));return;}const _0x5e443b=_0x153fef||await askAppcode(),_0x4b15ca=resolve(_0x2108c8,NEW_CONFIG_NAME),_0x5bca1b=getCliVersionFromPkg(),_0x53b699=readRawConfig(),_0x55f16e=typeof _0x53b699[_0x55c44b(0xc3)]===_0x55c44b(0xb3)?_0x53b699[_0x55c44b(0xc3)]:undefined,_0x137169=buildCanonicalProjectConfig({},{'appCodes':[_0x5e443b],'env':_0x1b8cf6||_0x55f16e||_0x55c44b(0xb2),'metadata':{'version':_0x5bca1b,'createdAt':new Date()[_0x55c44b(0xaf)]()}});writeConfigFile(_0x4b15ca,_0x137169),logger[_0x55c44b(0xa5)](_0x2108c8),logger[_0x55c44b(0xa0)](_0x55c44b(0xc8),'初始化项目配置文件成功',{'appcode':_0x5e443b,'env':_0x137169['env'],'version':_0x137169[_0x55c44b(0xa4)],'configPath':_0x4b15ca}),console['log'](a151_0x34f7fc[_0x55c44b(0x9c)]('✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory')),console[_0x55c44b(0x9b)](a151_0x34f7fc[_0x55c44b(0xb4)](_0x55c44b(0xa6)+Object[_0x55c44b(0x9d)](_0x137169[_0x55c44b(0xaa)]||{})[_0x55c44b(0xb9)](',\x20'))),console[_0x55c44b(0x9b)](a151_0x34f7fc[_0x55c44b(0xb4)](_0x55c44b(0xae)+_0x137169['defaultApp'])),console[_0x55c44b(0x9b)](_0x55c44b(0xc6)+CLI_BIN_NAME+'\x20api\x20generate\x27\x20and\x20\x27'+CLI_BIN_NAME+'\x20api\x20pull\x27');}function askAppcode(){const _0x4587e1=a151_0x2e2b;return input({'message':_0x4587e1(0xc4),'validate':_0x243d5c=>{const _0xb123ab=_0x4587e1;if(!_0x243d5c[_0xb123ab(0xc1)]())return _0xb123ab(0xc9);const {valid:_0xfac906,message:_0x156616}=validateAppcode(_0x243d5c[_0xb123ab(0xc1)]());return _0xfac906||_0x156616||_0xb123ab(0x9e);}});}function getCliVersionFromPkg(){const _0x41491f=a151_0x2e2b;try{const _0x535290=fileURLToPath(import.meta.url),_0x1371ed=resolve(dirname(_0x535290),'../..'),_0x3f5f00=JSON[_0x41491f(0xa7)](readFileSync(resolve(_0x1371ed,_0x41491f(0xac)),'utf8'));return _0x3f5f00['version']||_0x41491f(0x9a);}catch{return _0x41491f(0x9a);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a152_0x173eab=a152_0x42db;(function(_0x478d47,_0x4b2b11){const _0x5439c0=a152_0x42db,_0x1bd620=_0x478d47();while(!![]){try{const _0x349c59=-parseInt(_0x5439c0(0x200))/0x1*(parseInt(_0x5439c0(0x224))/0x2)+-parseInt(_0x5439c0(0x23e))/0x3*(-parseInt(_0x5439c0(0x1e0))/0x4)+parseInt(_0x5439c0(0x214))/0x5*(-parseInt(_0x5439c0(0x1fe))/0x6)+parseInt(_0x5439c0(0x215))/0x7+parseInt(_0x5439c0(0x219))/0x8*(-parseInt(_0x5439c0(0x239))/0x9)+parseInt(_0x5439c0(0x1fb))/0xa*(-parseInt(_0x5439c0(0x21a))/0xb)+parseInt(_0x5439c0(0x1e2))/0xc*(parseInt(_0x5439c0(0x21d))/0xd);if(_0x349c59===_0x4b2b11)break;else _0x1bd620['push'](_0x1bd620['shift']());}catch(_0x2729c3){_0x1bd620['push'](_0x1bd620['shift']());}}}(a152_0x4596,0xa79da));import a152_0x55d77d from'chalk';import a152_0x1faa62 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';import{CONFIG_NAMES,NEW_CONFIG_NAME,readConfigFile,writeConfigFile}from'../../context.js';import{CORE_IDE_CONFIGS}from'../../utils/ai_config.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE,runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=CONFIG_NAMES[a152_0x173eab(0x202)](_0x1babe3=>_0x1babe3!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x446fca){const _0x1722ac=a152_0x173eab,_0x372bdf=[];for(const _0x580888 of Object['values'](CORE_IDE_CONFIGS)){if(_0x580888[_0x1722ac(0x1e4)])for(const _0x57c2d3 of _0x580888['files']){_0x372bdf[_0x1722ac(0x21e)](resolve(_0x446fca,_0x57c2d3[_0x1722ac(0x1ea)]));}}return _0x372bdf;}function analyse(_0x4858fa){const _0x42561a=a152_0x173eab;let _0x49a976=null;const _0x168a0a=resolve(_0x4858fa,NEW_CONFIG_NAME),_0xa95fac=existsSync(_0x168a0a);for(const _0x124acb of LEGACY_CONFIG_NAMES){const _0x111281=resolve(_0x4858fa,_0x124acb);if(existsSync(_0x111281)){const _0x4db9d8=readConfigFile(_0x111281),_0x64df8c=Object[_0x42561a(0x249)](_0x4db9d8)['filter'](_0x568296=>typeof _0x4db9d8[_0x568296]!=='undefined');_0x49a976={'oldPath':_0x111281,'hasNewConfig':_0xa95fac,'fields':_0x64df8c};break;}}const _0x225753=[],_0x32ccbf=resolve(_0x4858fa,_0x42561a(0x255));if(existsSync(_0x32ccbf))_0x225753['push'](_0x32ccbf);const _0x53fd12=resolve(_0x4858fa,_0x42561a(0x20f));if(existsSync(_0x53fd12))_0x225753[_0x42561a(0x21e)](_0x53fd12);const _0x4ed7ed=resolve(_0x4858fa,'.claude/skills/lovrabet');if(existsSync(_0x4ed7ed))_0x225753[_0x42561a(0x21e)](_0x4ed7ed);for(const _0x233704 of collectIdeSkillFiles(_0x4858fa)){if(existsSync(_0x233704))_0x225753[_0x42561a(0x21e)](_0x233704);}let _0x2e9f0c=null;const _0x538727=resolve(_0x4858fa,_0x42561a(0x1ec));if(existsSync(_0x538727))try{const _0x4dbb29=JSON['parse'](readFileSync(_0x538727,'utf8'));if(_0x4dbb29?.[_0x42561a(0x213)]&&typeof _0x4dbb29['mcpServers']==='object'){const _0x4d73d4=[];for(const [_0x8be0bd,_0xab523c]of Object[_0x42561a(0x22d)](_0x4dbb29[_0x42561a(0x213)])){const _0x5de981=_0xab523c;_0x5de981?.['args']&&Array[_0x42561a(0x1d5)](_0x5de981[_0x42561a(0x230)])&&_0x5de981[_0x42561a(0x230)][_0x42561a(0x216)](_0x3833af=>typeof _0x3833af===_0x42561a(0x21f)&&_0x3833af['includes'](_0x42561a(0x209)))&&_0x4d73d4['push'](_0x8be0bd);}_0x4d73d4['length']>0x0&&(_0x2e9f0c={'path':_0x538727,'keys':_0x4d73d4});}}catch{}const _0x58587e=_0x225753[_0x42561a(0x241)]>0x0||_0x49a976!==null;let _0x196ae3=null;const _0x3875f7=resolve(_0x4858fa,_0x42561a(0x23d));if(existsSync(_0x3875f7))try{const _0x30b218=JSON[_0x42561a(0x23a)](readFileSync(_0x3875f7,'utf8'));for(const _0x160ff8 of[_0x42561a(0x22f),_0x42561a(0x20d)]){const _0x4ed981=_0x30b218?.[_0x160ff8]?.[_0x42561a(0x1f6)];if(typeof _0x4ed981===_0x42561a(0x21f)){_0x4ed981!==_0x42561a(0x240)&&(_0x196ae3={'pkgPath':_0x3875f7,'currentVersion':_0x4ed981,'field':_0x160ff8});break;}}}catch{}return{'configMigration':_0x49a976,'oldArtifacts':_0x225753,'oldMcpConfig':_0x2e9f0c,'needsSkillSwap':_0x58587e,'sdkUpgrade':_0x196ae3};}function printReport(_0x1da44b){const _0x30e3e8=a152_0x173eab,{configMigration:_0x104312,oldArtifacts:_0x3ad0e7,oldMcpConfig:_0x181116,needsSkillSwap:_0x120c21}=_0x1da44b;console[_0x30e3e8(0x22c)](''),console['log'](a152_0x55d77d['bold'](_0x30e3e8(0x204))),console['log']('');_0x104312?(console[_0x30e3e8(0x22c)](a152_0x55d77d[_0x30e3e8(0x233)](_0x30e3e8(0x23c))+('\x20\x20'+a152_0x55d77d['yellow'](_0x104312['oldPath']))),console[_0x30e3e8(0x22c)](_0x30e3e8(0x218)+(_0x104312['hasNewConfig']?a152_0x55d77d[_0x30e3e8(0x212)](_0x30e3e8(0x1ef)):a152_0x55d77d[_0x30e3e8(0x1f0)](_0x30e3e8(0x24d)))),console[_0x30e3e8(0x22c)](_0x30e3e8(0x1db)+_0x104312[_0x30e3e8(0x1df)]['join'](',\x20')),console[_0x30e3e8(0x22c)](_0x30e3e8(0x211))):console['log'](a152_0x55d77d['cyan']('Config\x20file:')+'\x20\x20'+a152_0x55d77d[_0x30e3e8(0x1f0)](_0x30e3e8(0x1e9)));console['log']('');if(_0x3ad0e7[_0x30e3e8(0x241)]>0x0){console[_0x30e3e8(0x22c)](a152_0x55d77d['cyan'](_0x30e3e8(0x1e6)));for(const _0x2c3cff of _0x3ad0e7){console[_0x30e3e8(0x22c)]('\x20\x20'+a152_0x55d77d[_0x30e3e8(0x1dc)](_0x30e3e8(0x210))+'\x20\x20'+_0x2c3cff);}console[_0x30e3e8(0x22c)]('\x20\x20Action:\x20delete');}else console[_0x30e3e8(0x22c)](a152_0x55d77d[_0x30e3e8(0x233)](_0x30e3e8(0x1e6))+'\x20\x20'+a152_0x55d77d[_0x30e3e8(0x1f0)](_0x30e3e8(0x234)));console[_0x30e3e8(0x22c)]('');_0x181116?(console[_0x30e3e8(0x22c)](a152_0x55d77d['cyan'](_0x30e3e8(0x1f8))+('\x20\x20'+a152_0x55d77d[_0x30e3e8(0x1ee)](_0x181116['path'])+_0x30e3e8(0x1fd)+_0x181116[_0x30e3e8(0x249)][_0x30e3e8(0x24c)](',\x20'))),console[_0x30e3e8(0x22c)](_0x30e3e8(0x244))):console[_0x30e3e8(0x22c)](a152_0x55d77d[_0x30e3e8(0x233)]('MCP\x20config:')+'\x20\x20'+a152_0x55d77d[_0x30e3e8(0x1f0)](_0x30e3e8(0x207)));console['log'](''),console[_0x30e3e8(0x22c)](a152_0x55d77d[_0x30e3e8(0x233)](_0x30e3e8(0x238))+('\x20\x20'+(_0x120c21?a152_0x55d77d[_0x30e3e8(0x1ee)](_0x30e3e8(0x1eb)):a152_0x55d77d[_0x30e3e8(0x212)](_0x30e3e8(0x1fa)))));_0x120c21&&console['log']('\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`'+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x30e3e8(0x22c)]('');if(_0x1da44b['sdkUpgrade']){const {currentVersion:_0x55f70e,field:_0x43ebf4,pkgPath:_0xa613cb}=_0x1da44b['sdkUpgrade'];console[_0x30e3e8(0x22c)](a152_0x55d77d[_0x30e3e8(0x233)](_0x30e3e8(0x1d9))+('\x20\x20'+a152_0x55d77d[_0x30e3e8(0x1ee)](_0xa613cb))),console[_0x30e3e8(0x22c)](_0x30e3e8(0x226)+_0x43ebf4+':\x20'+a152_0x55d77d['yellow'](_0x55f70e)+_0x30e3e8(0x245)+a152_0x55d77d['green'](_0x30e3e8(0x240))),console[_0x30e3e8(0x22c)](_0x30e3e8(0x1e1));}else console[_0x30e3e8(0x22c)](a152_0x55d77d[_0x30e3e8(0x233)](_0x30e3e8(0x1d9))+'\x20\x20'+a152_0x55d77d[_0x30e3e8(0x1f0)](_0x30e3e8(0x1fc)));console[_0x30e3e8(0x22c)]('');}function execConfigMigration(_0x50da2e,_0x3fb225){const _0x550e25=a152_0x173eab,{configMigration:_0x19726e}=_0x50da2e;if(!_0x19726e?.[_0x550e25(0x24f)])return{'step':0x1,'label':_0x550e25(0x201),'ok':!![],'detail':_0x550e25(0x24b)};const _0x2d48ca=readConfigFile(_0x19726e[_0x550e25(0x24f)]),_0xcdea95=resolve(_0x3fb225,NEW_CONFIG_NAME),_0xf6d951=_0x19726e['hasNewConfig']?readConfigFile(_0xcdea95):{};for(const [_0x31f742,_0xac121]of Object[_0x550e25(0x22d)](_0x2d48ca)){!(_0x31f742 in _0xf6d951)&&(_0xf6d951[_0x31f742]=_0xac121);}writeConfigFile(_0xcdea95,_0xf6d951);const _0x17c470=_0x19726e[_0x550e25(0x24f)]+_0x550e25(0x20c);return renameSync(_0x19726e[_0x550e25(0x24f)],_0x17c470),{'step':0x1,'label':_0x550e25(0x201),'ok':!![],'detail':_0x19726e[_0x550e25(0x24f)]+'\x20→\x20'+_0xcdea95+'\x20(backup:\x20'+_0x17c470+')'};}function execRemoveOldArtifacts(_0xcdcd7c){const _0x33fa7d=a152_0x173eab,_0x34b2d6=[];for(const _0x33ef5a of _0xcdcd7c){try{if(!existsSync(_0x33ef5a))continue;const _0x533a5a=tryStat(_0x33ef5a);_0x533a5a?.['isDirectory']()?rmSync(_0x33ef5a,{'recursive':!![],'force':!![]}):unlinkSync(_0x33ef5a);}catch(_0x187110){_0x34b2d6[_0x33fa7d(0x21e)](_0x33ef5a+':\x20'+_0x187110[_0x33fa7d(0x1f5)]);}}return{'step':0x3,'label':_0x33fa7d(0x1e3),'ok':_0x34b2d6[_0x33fa7d(0x241)]===0x0,'detail':_0x34b2d6[_0x33fa7d(0x241)]>0x0?_0xcdcd7c['length']-_0x34b2d6[_0x33fa7d(0x241)]+'/'+_0xcdcd7c['length']+_0x33fa7d(0x251)+_0x34b2d6[_0x33fa7d(0x24c)](';\x20')+')':_0xcdcd7c[_0x33fa7d(0x241)]+'\x20removed'};}function execCleanMcp(_0x262258){const _0x3961ea=a152_0x173eab;if(!_0x262258[_0x3961ea(0x24a)])return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x3961ea(0x236)};try{const _0x3e6f27=readFileSync(_0x262258[_0x3961ea(0x24a)][_0x3961ea(0x1ea)],_0x3961ea(0x225)),_0x181d7c=JSON[_0x3961ea(0x23a)](_0x3e6f27);if(_0x181d7c?.[_0x3961ea(0x213)]&&typeof _0x181d7c[_0x3961ea(0x213)]===_0x3961ea(0x1e5)){const _0xf0a5d8=[];for(const [_0x1c9e64,_0x4a554a]of Object[_0x3961ea(0x22d)](_0x181d7c[_0x3961ea(0x213)])){_0x4a554a?.[_0x3961ea(0x230)]&&Array[_0x3961ea(0x1d5)](_0x4a554a[_0x3961ea(0x230)])&&_0x4a554a[_0x3961ea(0x230)][_0x3961ea(0x216)](_0x4c2e7c=>typeof _0x4c2e7c===_0x3961ea(0x21f)&&_0x4c2e7c[_0x3961ea(0x250)](_0x3961ea(0x209)))&&_0xf0a5d8[_0x3961ea(0x21e)](_0x1c9e64);}for(const _0x525b20 of _0xf0a5d8){delete _0x181d7c[_0x3961ea(0x213)][_0x525b20];}return _0xf0a5d8['length']>0x0&&writeFileSync(_0x262258['oldMcpConfig'][_0x3961ea(0x1ea)],JSON[_0x3961ea(0x1d8)](_0x181d7c,null,0x2)+'\x0a',_0x3961ea(0x225)),{'step':0x4,'label':_0x3961ea(0x231),'ok':!![],'detail':_0x3961ea(0x23b)+_0xf0a5d8[_0x3961ea(0x24c)](',\x20')+'\x20from\x20'+_0x262258[_0x3961ea(0x24a)][_0x3961ea(0x1ea)]};}return{'step':0x4,'label':_0x3961ea(0x231),'ok':!![],'detail':_0x3961ea(0x21c)};}catch(_0x3e8be2){return{'step':0x4,'label':_0x3961ea(0x231),'ok':![],'detail':_0x3e8be2[_0x3961ea(0x1f5)]};}}function a152_0x42db(_0x4f80dd,_0x4891ff){_0x4f80dd=_0x4f80dd-0x1d4;const _0x4596e9=a152_0x4596();let _0x42db4b=_0x4596e9[_0x4f80dd];return _0x42db4b;}function a152_0x4596(){const _0x2ab643=['detail','\x20\x20#\x20or','log','entries','Remove\x20.lovrabet/','dependencies','args','Clean\x20MCP\x20config','Install\x20new\x20skill','cyan','none\x20found','\x20\x20npm\x20install','skipped','failed','Skill\x20swap:','45SelrLh','parse','removed\x20','Config\x20file:','package.json','3CduyKE','Step\x206/7:\x20Installing\x20new\x20skill...','latest','length','needsSkillSwap','Remove\x20old\x20skill','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','\x20→\x20','\x20\x20bun\x20install','succeed','error','keys','oldMcpConfig','skipped\x20(no\x20legacy\x20config)','join','not\x20found\x20(will\x20create)','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','oldPath','includes','\x20removed\x20(','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','white','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','.lovrabet','[\x22@lovrabet/sdk\x22]:\x20','isArray','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','Upgrade\x20cancelled.','stringify','@lovrabet/sdk:','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','\x20\x20Fields\x20to\x20migrate:\x20','red','start','cwd','fields','3420168zJlgZk','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','18624SSHZHc','Remove\x20legacy\x20artifacts','files','object','Legacy\x20artifacts:','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','no\x20legacy\x20config\x20found','path','needed','.cursor/mcp.json','===\x20Upgrade\x20Summary\x20===','yellow','already\x20exists\x20(will\x20merge)','gray','\x20\x20\x20\x20\x20\x20\x20','Step\x204/7:\x20Cleaning\x20MCP\x20config...','sdkUpgrade','lovrabet/lovrabet-skill\x20removed','message','@lovrabet/sdk','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','MCP\x20config:','lovrabet/rabetbase','not\x20needed','8345780KifdnS','not\x20found\x20or\x20already\x20at\x20latest','\x20→\x20keys:\x20','12AxZizF','Upgrade\x20@lovrabet/sdk','25rvMKxE','Config\x20migration','filter','done','===\x20Upgrade\x20Analysis\x20===','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','bold','no\x20legacy\x20entry','lovrabet/rabetbase\x20installed\x20globally','@lovrabet/dataset-mcp-server','exit\x20','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','.bak','devDependencies','Step\x201/7:\x20Config\x20migration\x20—\x20','.cursor/rules/lovrabet_rules.mdc','FOUND','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','green','mcpServers','45575IpzYMX','9255211JqxUEk','some','inherit','\x20\x20New\x20config\x20(.rabetbase.json):\x20','921408BAXxJw','11qHynrJ','fail','no\x20matching\x20entry\x20found','9113aLktDu','push','string','Step\x205/7:\x20Removing\x20old\x20skill...','status','Step\x201/7:\x20Migrating\x20config...','CANCEL','91994SyHsaL','utf8','\x20\x20Current\x20version\x20in\x20','oldArtifacts','Upgrade\x20completed\x20successfully!','step'];a152_0x4596=function(){return _0x2ab643;};return a152_0x4596();}function execSkillsRemove(_0x1d157e,_0xe7eec4){const _0x1494fb=a152_0x173eab,_0x7d4f7a=runNpxSkillsRemove(_0x1d157e,{'stdio':'inherit','yes':_0xe7eec4});return{'step':0x5,'label':_0x1494fb(0x243),'ok':_0x7d4f7a['ok'],'detail':_0x7d4f7a['ok']?_0x1494fb(0x1f4):_0x7d4f7a[_0x1494fb(0x248)]??_0x1494fb(0x20a)+_0x7d4f7a[_0x1494fb(0x221)]};}function execSkillsAdd(_0x1439da,_0x3a3492){const _0x4a4caf=a152_0x173eab,_0x3d7757=runNpxSkillsAddGlobal(_0x1439da,_0x4a4caf(0x1f9),{'stdio':_0x4a4caf(0x217),'yes':_0x3a3492});return{'step':0x6,'label':_0x4a4caf(0x232),'ok':_0x3d7757['ok'],'detail':_0x3d7757['ok']?_0x4a4caf(0x208):_0x3d7757[_0x4a4caf(0x248)]??_0x4a4caf(0x20a)+_0x3d7757[_0x4a4caf(0x221)]};}function execUpgradeSdk(_0x1c071d){const _0x4b838c=a152_0x173eab;if(!_0x1c071d[_0x4b838c(0x1f3)])return{'step':0x7,'label':_0x4b838c(0x1ff),'ok':!![],'detail':_0x4b838c(0x254)};const {pkgPath:_0x52335e,currentVersion:_0x5a342e,field:_0x494f7d}=_0x1c071d[_0x4b838c(0x1f3)];try{const _0xe50862=readFileSync(_0x52335e,_0x4b838c(0x225)),_0x428e6b=JSON[_0x4b838c(0x23a)](_0xe50862);return _0x428e6b[_0x494f7d][_0x4b838c(0x1f6)]=_0x4b838c(0x240),writeFileSync(_0x52335e,JSON[_0x4b838c(0x1d8)](_0x428e6b,null,0x2)+'\x0a',_0x4b838c(0x225)),{'step':0x7,'label':_0x4b838c(0x1ff),'ok':!![],'detail':_0x494f7d+_0x4b838c(0x1d4)+_0x5a342e+'\x20→\x20latest'};}catch(_0x296cc7){return{'step':0x7,'label':_0x4b838c(0x1ff),'ok':![],'detail':_0x296cc7[_0x4b838c(0x1f5)]};}}function tryStat(_0x5ed558){try{return statSync(_0x5ed558);}catch{return undefined;}}function printSummary(_0xa7fa18){const _0xcc1bb=a152_0x173eab;console[_0xcc1bb(0x22c)](''),console[_0xcc1bb(0x22c)](a152_0x55d77d[_0xcc1bb(0x206)](_0xcc1bb(0x1ed))),console[_0xcc1bb(0x22c)]('');for(const _0x13b844 of _0xa7fa18){const _0x2cc859=_0x13b844['ok']?a152_0x55d77d[_0xcc1bb(0x212)]('OK'):a152_0x55d77d[_0xcc1bb(0x1dc)]('FAIL');console[_0xcc1bb(0x22c)]('\x20\x20'+_0x2cc859+'\x20\x20Step\x20'+_0x13b844[_0xcc1bb(0x229)]+':\x20'+_0x13b844['label']);if(_0x13b844[_0xcc1bb(0x22a)])console[_0xcc1bb(0x22c)](_0xcc1bb(0x1f1)+a152_0x55d77d[_0xcc1bb(0x1f0)](_0x13b844[_0xcc1bb(0x22a)]));}console[_0xcc1bb(0x22c)]('');}export async function upgradeApp(_0x1f081c,_0x5eb9b0){const _0x55771a=a152_0x173eab,_0x48dd20=process[_0x55771a(0x1de)](),_0x212e26=analyse(_0x48dd20),_0x4d4fb1=!_0x212e26['configMigration']&&_0x212e26['oldArtifacts'][_0x55771a(0x241)]===0x0&&!_0x212e26['oldMcpConfig']&&!_0x212e26[_0x55771a(0x242)]&&!_0x212e26[_0x55771a(0x1f3)];if(_0x4d4fb1){console[_0x55771a(0x22c)](a152_0x55d77d[_0x55771a(0x212)](_0x55771a(0x1d6)));return;}printReport(_0x212e26);const _0x95bbba=!!(_0x5eb9b0['yes']||_0x5eb9b0['Y']||_0x1f081c);if(!_0x95bbba)try{const _0x11aebe=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x11aebe){console[_0x55771a(0x22c)](a152_0x55d77d[_0x55771a(0x1f0)](_0x55771a(0x1d7)));return;}}catch(_0x42dedd){if(_0x42dedd?.[_0x55771a(0x1f5)]===_0x55771a(0x223)){console[_0x55771a(0x22c)](a152_0x55d77d['gray']('Upgrade\x20cancelled.'));return;}throw _0x42dedd;}const _0x694b8=[],_0x2cbab5=a152_0x1faa62({'text':_0x55771a(0x222),'color':_0x55771a(0x233)})[_0x55771a(0x1dd)](),_0x38f269=execConfigMigration(_0x212e26,_0x48dd20);_0x694b8[_0x55771a(0x21e)](_0x38f269),_0x2cbab5[_0x38f269['ok']?_0x55771a(0x247):_0x55771a(0x21b)](_0x55771a(0x20e)+(_0x38f269[_0x55771a(0x22a)]??(_0x38f269['ok']?_0x55771a(0x203):_0x55771a(0x237))));const _0x5e4d5a=resolve(_0x48dd20,'.lovrabet'),_0x256659=a152_0x1faa62({'text':_0x55771a(0x20b),'color':'cyan'})[_0x55771a(0x1dd)]();if(existsSync(_0x5e4d5a))try{rmSync(_0x5e4d5a,{'recursive':!![],'force':!![]}),_0x256659[_0x55771a(0x247)](_0x55771a(0x1e8)),_0x694b8[_0x55771a(0x21e)]({'step':0x2,'label':_0x55771a(0x22e),'ok':!![]});}catch(_0x56464a){_0x256659[_0x55771a(0x21b)](_0x55771a(0x1f7)+_0x56464a['message']),_0x694b8[_0x55771a(0x21e)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x56464a['message']});}else _0x256659['info'](_0x55771a(0x1e7)),_0x694b8[_0x55771a(0x21e)]({'step':0x2,'label':_0x55771a(0x22e),'ok':!![],'detail':_0x55771a(0x236)});const _0x39a4c2=a152_0x1faa62({'text':'Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','color':_0x55771a(0x233)})[_0x55771a(0x1dd)](),_0x469f83=execRemoveOldArtifacts(_0x212e26[_0x55771a(0x227)]);_0x694b8[_0x55771a(0x21e)](_0x469f83),_0x39a4c2[_0x469f83['ok']?_0x55771a(0x247):'fail'](_0x55771a(0x24e)+(_0x469f83[_0x55771a(0x22a)]??(_0x469f83['ok']?_0x55771a(0x203):_0x55771a(0x237))));const _0xd4117d=a152_0x1faa62({'text':_0x55771a(0x1f2),'color':'cyan'})[_0x55771a(0x1dd)](),_0x6d4195=execCleanMcp(_0x212e26);_0x694b8['push'](_0x6d4195),_0xd4117d[_0x6d4195['ok']?_0x55771a(0x247):_0x55771a(0x21b)]('Step\x204/7:\x20MCP\x20config\x20—\x20'+(_0x6d4195['detail']??(_0x6d4195['ok']?'done':_0x55771a(0x237))));const _0x1cbe4c=a152_0x1faa62({'text':_0x55771a(0x220),'color':'cyan'})[_0x55771a(0x1dd)](),_0x9ceabc=execSkillsRemove(_0x48dd20,_0x95bbba);_0x694b8[_0x55771a(0x21e)](_0x9ceabc),_0x1cbe4c[_0x9ceabc['ok']?'succeed':_0x55771a(0x21b)](_0x55771a(0x1da)+(_0x9ceabc[_0x55771a(0x22a)]??(_0x9ceabc['ok']?_0x55771a(0x203):_0x55771a(0x237))));const _0xabdb99=a152_0x1faa62({'text':_0x55771a(0x23f),'color':_0x55771a(0x233)})['start'](),_0x58ed94=execSkillsAdd(_0x48dd20,_0x95bbba);_0x694b8[_0x55771a(0x21e)](_0x58ed94),_0xabdb99[_0x58ed94['ok']?_0x55771a(0x247):_0x55771a(0x21b)]('Step\x206/7:\x20Install\x20new\x20skill\x20—\x20'+(_0x58ed94[_0x55771a(0x22a)]??(_0x58ed94['ok']?'done':_0x55771a(0x237))));const _0x4787a3=a152_0x1faa62({'text':_0x55771a(0x252),'color':_0x55771a(0x233)})[_0x55771a(0x1dd)](),_0xdb046d=execUpgradeSdk(_0x212e26);_0x694b8[_0x55771a(0x21e)](_0xdb046d),_0x4787a3[_0xdb046d['ok']?'succeed':_0x55771a(0x21b)]('Step\x207/7:\x20@lovrabet/sdk\x20—\x20'+(_0xdb046d[_0x55771a(0x22a)]??(_0xdb046d['ok']?_0x55771a(0x203):'failed'))),printSummary(_0x694b8);const _0x413bcd=_0x694b8[_0x55771a(0x216)](_0x1443ae=>!_0x1443ae['ok']);_0x413bcd?console[_0x55771a(0x22c)](a152_0x55d77d[_0x55771a(0x1ee)](_0x55771a(0x205))):console[_0x55771a(0x22c)](a152_0x55d77d[_0x55771a(0x212)](_0x55771a(0x228))),_0xdb046d['ok']&&_0x212e26[_0x55771a(0x1f3)]&&(console[_0x55771a(0x22c)](''),console[_0x55771a(0x22c)](a152_0x55d77d[_0x55771a(0x206)][_0x55771a(0x233)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x55771a(0x22c)](a152_0x55d77d[_0x55771a(0x233)]('Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:')),console[_0x55771a(0x22c)](''),console[_0x55771a(0x22c)](a152_0x55d77d[_0x55771a(0x253)](_0x55771a(0x235))),console['log'](a152_0x55d77d[_0x55771a(0x253)](_0x55771a(0x22b))),console['log'](a152_0x55d77d[_0x55771a(0x253)](_0x55771a(0x246))),console[_0x55771a(0x22c)](''));}
|
|
1
|
+
(function(_0x46e4a3,_0x3eaeb1){const _0x5138b0=a152_0x372a,_0x3e365c=_0x46e4a3();while(!![]){try{const _0x211288=-parseInt(_0x5138b0(0xc3))/0x1*(-parseInt(_0x5138b0(0xbf))/0x2)+parseInt(_0x5138b0(0x9f))/0x3*(parseInt(_0x5138b0(0xe5))/0x4)+-parseInt(_0x5138b0(0xdd))/0x5*(parseInt(_0x5138b0(0x7c))/0x6)+parseInt(_0x5138b0(0x93))/0x7*(-parseInt(_0x5138b0(0xb4))/0x8)+-parseInt(_0x5138b0(0x96))/0x9*(-parseInt(_0x5138b0(0xe3))/0xa)+parseInt(_0x5138b0(0xbc))/0xb*(-parseInt(_0x5138b0(0x9c))/0xc)+parseInt(_0x5138b0(0xc1))/0xd*(parseInt(_0x5138b0(0xa1))/0xe);if(_0x211288===_0x3eaeb1)break;else _0x3e365c['push'](_0x3e365c['shift']());}catch(_0x183a6b){_0x3e365c['push'](_0x3e365c['shift']());}}}(a152_0xf7d8,0x70fad));import a152_0x409791 from'chalk';import a152_0x529bab from'ora';function a152_0x372a(_0x508130,_0x3c9e5e){_0x508130=_0x508130-0x70;const _0xf7d8e4=a152_0xf7d8();let _0x372aa4=_0xf7d8e4[_0x508130];return _0x372aa4;}function a152_0xf7d8(){const _0x2306b2=['latest','not\x20found\x20(will\x20create)','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','===\x20Upgrade\x20Analysis\x20===','detail','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','args','lovrabet/rabetbase\x20installed\x20globally','failed','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','yes','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','\x20→\x20keys:\x20','48sgoWpY','mcpServers','none\x20found','undefined','stringify','Skill\x20swap:','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','bold','error','\x20removed\x20(','status','keys','\x20\x20npm\x20install','Config\x20migration','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','white','@lovrabet/sdk:','inherit','filter','Config\x20file:','\x20\x20Step\x20','gray','7whgHuc','FOUND','Step\x204/7:\x20MCP\x20config\x20—\x20','414myoEPz','entries','FAIL','\x20from\x20','\x20\x20New\x20config\x20(.rabetbase.json):\x20','push','9744HWZeLo','Step\x204/7:\x20Cleaning\x20MCP\x20config...','.cursor/rules/lovrabet_rules.mdc','3IeKMwm','lovrabet/rabetbase','28jiTCIG','utf8','needed','hasNewConfig','\x20\x20\x20\x20\x20\x20\x20','oldMcpConfig','red','some','skipped\x20(no\x20legacy\x20config)','needsSkillSwap','isArray','oldArtifacts','skipped','already\x20exists\x20(will\x20merge)','object','join','package.json','@lovrabet/sdk','Upgrade\x20@lovrabet/sdk','3156688GqCkbf','.claude/skills/lovrabet','step','\x20\x20#\x20or','values','path','info','Clean\x20MCP\x20config','5203fFZZdK','done','not\x20found\x20or\x20already\x20at\x20latest','32EooehF','[\x22@lovrabet/sdk\x22]:\x20','182767exGWGn','fail','40427WbwAnD','message','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','string','no\x20legacy\x20entry','log','Remove\x20.lovrabet/','start','succeed','yellow','.lovrabet','green','configMigration','cyan','Step\x206/7:\x20Installing\x20new\x20skill...','===\x20Upgrade\x20Summary\x20===','\x20\x20Action:\x20delete','parse','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','oldPath','MCP\x20config:','cwd','Legacy\x20artifacts:','\x20→\x20latest','.bak','176080Cbufkc','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','\x20(backup:\x20','Remove\x20old\x20skill','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','69670fFdbae','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','2110892weDANL','files','label','\x20\x20Fields\x20to\x20migrate:\x20','Upgrade\x20cancelled.','removed\x20','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','Step\x201/7:\x20Migrating\x20config...','isDirectory','@lovrabet/dataset-mcp-server','length','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','no\x20legacy\x20config\x20found','no\x20matching\x20entry\x20found','\x20\x20Current\x20version\x20in\x20','CANCEL','Remove\x20legacy\x20artifacts','Step\x205/7:\x20Removing\x20old\x20skill...','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','Upgrade\x20completed\x20successfully!','\x20removed','sdkUpgrade'];a152_0xf7d8=function(){return _0x2306b2;};return a152_0xf7d8();}import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';import{CONFIG_NAMES,NEW_CONFIG_NAME,readConfigFile,writeConfigFile}from'../../context.js';import{CORE_IDE_CONFIGS}from'../../utils/ai_config.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE,runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=CONFIG_NAMES['filter'](_0x3e1847=>_0x3e1847!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0xe7d6be){const _0x2bba22=a152_0x372a,_0x487cb7=[];for(const _0x561a4b of Object[_0x2bba22(0xb8)](CORE_IDE_CONFIGS)){if(_0x561a4b[_0x2bba22(0xe6)])for(const _0x4ecca8 of _0x561a4b[_0x2bba22(0xe6)]){_0x487cb7[_0x2bba22(0x9b)](resolve(_0xe7d6be,_0x4ecca8['path']));}}return _0x487cb7;}function analyse(_0x6a6278){const _0x3c459c=a152_0x372a;let _0x57971d=null;const _0x2f51a7=resolve(_0x6a6278,NEW_CONFIG_NAME),_0x4aab94=existsSync(_0x2f51a7);for(const _0x4a04f2 of LEGACY_CONFIG_NAMES){const _0x6a65ba=resolve(_0x6a6278,_0x4a04f2);if(existsSync(_0x6a65ba)){const _0x22d670=readConfigFile(_0x6a65ba),_0x131c86=Object[_0x3c459c(0x87)](_0x22d670)[_0x3c459c(0x8f)](_0x557b2d=>typeof _0x22d670[_0x557b2d]!==_0x3c459c(0x7f));_0x57971d={'oldPath':_0x6a65ba,'hasNewConfig':_0x4aab94,'fields':_0x131c86};break;}}const _0x1f8fcd=[],_0x3716ad=resolve(_0x6a6278,_0x3c459c(0xcd));if(existsSync(_0x3716ad))_0x1f8fcd[_0x3c459c(0x9b)](_0x3716ad);const _0x184d61=resolve(_0x6a6278,_0x3c459c(0x9e));if(existsSync(_0x184d61))_0x1f8fcd[_0x3c459c(0x9b)](_0x184d61);const _0x220073=resolve(_0x6a6278,_0x3c459c(0xb5));if(existsSync(_0x220073))_0x1f8fcd[_0x3c459c(0x9b)](_0x220073);for(const _0x1a6068 of collectIdeSkillFiles(_0x6a6278)){if(existsSync(_0x1a6068))_0x1f8fcd[_0x3c459c(0x9b)](_0x1a6068);}let _0x10b3d8=null;const _0x487ee1=resolve(_0x6a6278,'.cursor/mcp.json');if(existsSync(_0x487ee1))try{const _0x7a5707=JSON[_0x3c459c(0xd4)](readFileSync(_0x487ee1,_0x3c459c(0xa2)));if(_0x7a5707?.[_0x3c459c(0x7d)]&&typeof _0x7a5707[_0x3c459c(0x7d)]==='object'){const _0x36c219=[];for(const [_0x446661,_0x3893fd]of Object[_0x3c459c(0x97)](_0x7a5707[_0x3c459c(0x7d)])){const _0x1bc0bb=_0x3893fd;_0x1bc0bb?.[_0x3c459c(0x75)]&&Array[_0x3c459c(0xab)](_0x1bc0bb[_0x3c459c(0x75)])&&_0x1bc0bb[_0x3c459c(0x75)]['some'](_0x186e2e=>typeof _0x186e2e===_0x3c459c(0xc6)&&_0x186e2e['includes'](_0x3c459c(0xee)))&&_0x36c219[_0x3c459c(0x9b)](_0x446661);}_0x36c219[_0x3c459c(0xef)]>0x0&&(_0x10b3d8={'path':_0x487ee1,'keys':_0x36c219});}}catch{}const _0x58b31e=_0x1f8fcd[_0x3c459c(0xef)]>0x0||_0x57971d!==null;let _0x59c869=null;const _0x120934=resolve(_0x6a6278,_0x3c459c(0xb1));if(existsSync(_0x120934))try{const _0x3e0659=JSON[_0x3c459c(0xd4)](readFileSync(_0x120934,_0x3c459c(0xa2)));for(const _0x41acf5 of['dependencies','devDependencies']){const _0x20bb91=_0x3e0659?.[_0x41acf5]?.['@lovrabet/sdk'];if(typeof _0x20bb91===_0x3c459c(0xc6)){_0x20bb91!==_0x3c459c(0xfb)&&(_0x59c869={'pkgPath':_0x120934,'currentVersion':_0x20bb91,'field':_0x41acf5});break;}}}catch{}return{'configMigration':_0x57971d,'oldArtifacts':_0x1f8fcd,'oldMcpConfig':_0x10b3d8,'needsSkillSwap':_0x58b31e,'sdkUpgrade':_0x59c869};}function printReport(_0x879684){const _0x4ce5bb=a152_0x372a,{configMigration:_0x2eb345,oldArtifacts:_0x114cdc,oldMcpConfig:_0x2c23f4,needsSkillSwap:_0x2df0d}=_0x879684;console['log'](''),console[_0x4ce5bb(0xc8)](a152_0x409791[_0x4ce5bb(0x83)](_0x4ce5bb(0x72))),console[_0x4ce5bb(0xc8)]('');_0x2eb345?(console[_0x4ce5bb(0xc8)](a152_0x409791[_0x4ce5bb(0xd0)](_0x4ce5bb(0x90))+('\x20\x20'+a152_0x409791[_0x4ce5bb(0xcc)](_0x2eb345[_0x4ce5bb(0xd7)]))),console[_0x4ce5bb(0xc8)](_0x4ce5bb(0x9a)+(_0x2eb345['hasNewConfig']?a152_0x409791['green'](_0x4ce5bb(0xae)):a152_0x409791['gray'](_0x4ce5bb(0x70)))),console['log'](_0x4ce5bb(0xe8)+_0x2eb345['fields'][_0x4ce5bb(0xb0)](',\x20')),console[_0x4ce5bb(0xc8)](_0x4ce5bb(0x78))):console[_0x4ce5bb(0xc8)](a152_0x409791['cyan'](_0x4ce5bb(0x90))+'\x20\x20'+a152_0x409791[_0x4ce5bb(0x92)](_0x4ce5bb(0xf1)));console['log']('');if(_0x114cdc[_0x4ce5bb(0xef)]>0x0){console[_0x4ce5bb(0xc8)](a152_0x409791['cyan'](_0x4ce5bb(0xda)));for(const _0x4e8e79 of _0x114cdc){console[_0x4ce5bb(0xc8)]('\x20\x20'+a152_0x409791[_0x4ce5bb(0xa7)](_0x4ce5bb(0x94))+'\x20\x20'+_0x4e8e79);}console[_0x4ce5bb(0xc8)](_0x4ce5bb(0xd3));}else console[_0x4ce5bb(0xc8)](a152_0x409791[_0x4ce5bb(0xd0)](_0x4ce5bb(0xda))+'\x20\x20'+a152_0x409791[_0x4ce5bb(0x92)](_0x4ce5bb(0x7e)));console[_0x4ce5bb(0xc8)]('');_0x2c23f4?(console[_0x4ce5bb(0xc8)](a152_0x409791[_0x4ce5bb(0xd0)](_0x4ce5bb(0xd8))+('\x20\x20'+a152_0x409791[_0x4ce5bb(0xcc)](_0x2c23f4['path'])+_0x4ce5bb(0x7b)+_0x2c23f4['keys']['join'](',\x20'))),console['log'](_0x4ce5bb(0xc5))):console[_0x4ce5bb(0xc8)](a152_0x409791[_0x4ce5bb(0xd0)]('MCP\x20config:')+'\x20\x20'+a152_0x409791['gray'](_0x4ce5bb(0xc7)));console[_0x4ce5bb(0xc8)](''),console['log'](a152_0x409791[_0x4ce5bb(0xd0)](_0x4ce5bb(0x81))+('\x20\x20'+(_0x2df0d?a152_0x409791[_0x4ce5bb(0xcc)](_0x4ce5bb(0xa3)):a152_0x409791[_0x4ce5bb(0xce)]('not\x20needed'))));_0x2df0d&&console[_0x4ce5bb(0xc8)](_0x4ce5bb(0xd5)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x4ce5bb(0xc8)]('');if(_0x879684[_0x4ce5bb(0xfa)]){const {currentVersion:_0x1c25c2,field:_0x4c0bdc,pkgPath:_0x21ae05}=_0x879684[_0x4ce5bb(0xfa)];console[_0x4ce5bb(0xc8)](a152_0x409791['cyan'](_0x4ce5bb(0x8d))+('\x20\x20'+a152_0x409791[_0x4ce5bb(0xcc)](_0x21ae05))),console[_0x4ce5bb(0xc8)](_0x4ce5bb(0xf3)+_0x4c0bdc+':\x20'+a152_0x409791[_0x4ce5bb(0xcc)](_0x1c25c2)+'\x20→\x20'+a152_0x409791['green'](_0x4ce5bb(0xfb))),console[_0x4ce5bb(0xc8)](_0x4ce5bb(0xd6));}else console[_0x4ce5bb(0xc8)](a152_0x409791['cyan'](_0x4ce5bb(0x8d))+'\x20\x20'+a152_0x409791[_0x4ce5bb(0x92)](_0x4ce5bb(0xbe)));console[_0x4ce5bb(0xc8)]('');}function execConfigMigration(_0x5d0e16,_0x6f995){const _0x7cb939=a152_0x372a,{configMigration:_0x550778}=_0x5d0e16;if(!_0x550778?.[_0x7cb939(0xd7)])return{'step':0x1,'label':_0x7cb939(0x89),'ok':!![],'detail':_0x7cb939(0xa9)};const _0x2bf5ef=readConfigFile(_0x550778[_0x7cb939(0xd7)]),_0x216819=resolve(_0x6f995,NEW_CONFIG_NAME),_0xf73fdb=_0x550778[_0x7cb939(0xa4)]?readConfigFile(_0x216819):{};for(const [_0x857c6b,_0x590f7f]of Object['entries'](_0x2bf5ef)){!(_0x857c6b in _0xf73fdb)&&(_0xf73fdb[_0x857c6b]=_0x590f7f);}writeConfigFile(_0x216819,_0xf73fdb);const _0x2f636f=_0x550778['oldPath']+_0x7cb939(0xdc);return renameSync(_0x550778['oldPath'],_0x2f636f),{'step':0x1,'label':_0x7cb939(0x89),'ok':!![],'detail':_0x550778[_0x7cb939(0xd7)]+'\x20→\x20'+_0x216819+_0x7cb939(0xe0)+_0x2f636f+')'};}function execRemoveOldArtifacts(_0x1a87d5){const _0x25f35f=a152_0x372a,_0x188185=[];for(const _0x2c8710 of _0x1a87d5){try{if(!existsSync(_0x2c8710))continue;const _0x5c24d2=tryStat(_0x2c8710);_0x5c24d2?.[_0x25f35f(0xed)]()?rmSync(_0x2c8710,{'recursive':!![],'force':!![]}):unlinkSync(_0x2c8710);}catch(_0x193700){_0x188185['push'](_0x2c8710+':\x20'+_0x193700[_0x25f35f(0xc4)]);}}return{'step':0x3,'label':_0x25f35f(0xf5),'ok':_0x188185[_0x25f35f(0xef)]===0x0,'detail':_0x188185[_0x25f35f(0xef)]>0x0?_0x1a87d5[_0x25f35f(0xef)]-_0x188185['length']+'/'+_0x1a87d5['length']+_0x25f35f(0x85)+_0x188185[_0x25f35f(0xb0)](';\x20')+')':_0x1a87d5[_0x25f35f(0xef)]+_0x25f35f(0xf9)};}function execCleanMcp(_0x2b41b4){const _0x2fc2a7=a152_0x372a;if(!_0x2b41b4[_0x2fc2a7(0xa6)])return{'step':0x4,'label':_0x2fc2a7(0xbb),'ok':!![],'detail':_0x2fc2a7(0xad)};try{const _0x228f53=readFileSync(_0x2b41b4[_0x2fc2a7(0xa6)][_0x2fc2a7(0xb9)],_0x2fc2a7(0xa2)),_0x12d184=JSON[_0x2fc2a7(0xd4)](_0x228f53);if(_0x12d184?.[_0x2fc2a7(0x7d)]&&typeof _0x12d184[_0x2fc2a7(0x7d)]===_0x2fc2a7(0xaf)){const _0x43f3f2=[];for(const [_0x302f71,_0x263cb0]of Object[_0x2fc2a7(0x97)](_0x12d184[_0x2fc2a7(0x7d)])){_0x263cb0?.[_0x2fc2a7(0x75)]&&Array['isArray'](_0x263cb0[_0x2fc2a7(0x75)])&&_0x263cb0[_0x2fc2a7(0x75)]['some'](_0xda61da=>typeof _0xda61da===_0x2fc2a7(0xc6)&&_0xda61da['includes'](_0x2fc2a7(0xee)))&&_0x43f3f2[_0x2fc2a7(0x9b)](_0x302f71);}for(const _0x1f18ff of _0x43f3f2){delete _0x12d184['mcpServers'][_0x1f18ff];}return _0x43f3f2[_0x2fc2a7(0xef)]>0x0&&writeFileSync(_0x2b41b4[_0x2fc2a7(0xa6)][_0x2fc2a7(0xb9)],JSON[_0x2fc2a7(0x80)](_0x12d184,null,0x2)+'\x0a',_0x2fc2a7(0xa2)),{'step':0x4,'label':_0x2fc2a7(0xbb),'ok':!![],'detail':_0x2fc2a7(0xea)+_0x43f3f2[_0x2fc2a7(0xb0)](',\x20')+_0x2fc2a7(0x99)+_0x2b41b4['oldMcpConfig'][_0x2fc2a7(0xb9)]};}return{'step':0x4,'label':_0x2fc2a7(0xbb),'ok':!![],'detail':_0x2fc2a7(0xf2)};}catch(_0x55c507){return{'step':0x4,'label':_0x2fc2a7(0xbb),'ok':![],'detail':_0x55c507[_0x2fc2a7(0xc4)]};}}function execSkillsRemove(_0x53d0fc,_0x2cb861){const _0x3c0f62=a152_0x372a,_0x26aeb7=runNpxSkillsRemove(_0x53d0fc,{'stdio':_0x3c0f62(0x8e),'yes':_0x2cb861});return{'step':0x5,'label':_0x3c0f62(0xe1),'ok':_0x26aeb7['ok'],'detail':_0x26aeb7['ok']?'lovrabet/lovrabet-skill\x20removed':_0x26aeb7[_0x3c0f62(0x84)]??'exit\x20'+_0x26aeb7['status']};}function execSkillsAdd(_0x48644d,_0x1632e4){const _0x5a67f5=a152_0x372a,_0x38ba53=runNpxSkillsAddGlobal(_0x48644d,_0x5a67f5(0xa0),{'stdio':_0x5a67f5(0x8e),'yes':_0x1632e4});return{'step':0x6,'label':'Install\x20new\x20skill','ok':_0x38ba53['ok'],'detail':_0x38ba53['ok']?_0x5a67f5(0x76):_0x38ba53[_0x5a67f5(0x84)]??'exit\x20'+_0x38ba53[_0x5a67f5(0x86)]};}function execUpgradeSdk(_0x144b69){const _0x5edbeb=a152_0x372a;if(!_0x144b69['sdkUpgrade'])return{'step':0x7,'label':_0x5edbeb(0xb3),'ok':!![],'detail':_0x5edbeb(0xe4)};const {pkgPath:_0xcf0c61,currentVersion:_0x463aff,field:_0x1a899a}=_0x144b69[_0x5edbeb(0xfa)];try{const _0x1b8817=readFileSync(_0xcf0c61,_0x5edbeb(0xa2)),_0x4a5042=JSON[_0x5edbeb(0xd4)](_0x1b8817);return _0x4a5042[_0x1a899a][_0x5edbeb(0xb2)]='latest',writeFileSync(_0xcf0c61,JSON[_0x5edbeb(0x80)](_0x4a5042,null,0x2)+'\x0a',_0x5edbeb(0xa2)),{'step':0x7,'label':_0x5edbeb(0xb3),'ok':!![],'detail':_0x1a899a+_0x5edbeb(0xc0)+_0x463aff+_0x5edbeb(0xdb)};}catch(_0xff0316){return{'step':0x7,'label':_0x5edbeb(0xb3),'ok':![],'detail':_0xff0316['message']};}}function tryStat(_0x248ebf){try{return statSync(_0x248ebf);}catch{return undefined;}}function printSummary(_0x471d1f){const _0x3d9cf2=a152_0x372a;console[_0x3d9cf2(0xc8)](''),console[_0x3d9cf2(0xc8)](a152_0x409791[_0x3d9cf2(0x83)](_0x3d9cf2(0xd2))),console[_0x3d9cf2(0xc8)]('');for(const _0x38810c of _0x471d1f){const _0xe6fbe=_0x38810c['ok']?a152_0x409791['green']('OK'):a152_0x409791['red'](_0x3d9cf2(0x98));console[_0x3d9cf2(0xc8)]('\x20\x20'+_0xe6fbe+_0x3d9cf2(0x91)+_0x38810c[_0x3d9cf2(0xb6)]+':\x20'+_0x38810c[_0x3d9cf2(0xe7)]);if(_0x38810c['detail'])console[_0x3d9cf2(0xc8)](_0x3d9cf2(0xa5)+a152_0x409791[_0x3d9cf2(0x92)](_0x38810c[_0x3d9cf2(0x73)]));}console[_0x3d9cf2(0xc8)]('');}export async function upgradeApp(_0x4a7a63,_0x152404){const _0x52325b=a152_0x372a,_0x43f379=process[_0x52325b(0xd9)](),_0x5806ae=analyse(_0x43f379),_0x30c753=!_0x5806ae[_0x52325b(0xcf)]&&_0x5806ae['oldArtifacts'][_0x52325b(0xef)]===0x0&&!_0x5806ae[_0x52325b(0xa6)]&&!_0x5806ae[_0x52325b(0xaa)]&&!_0x5806ae[_0x52325b(0xfa)];if(_0x30c753){console[_0x52325b(0xc8)](a152_0x409791[_0x52325b(0xce)](_0x52325b(0xf0)));return;}printReport(_0x5806ae);const _0x512d76=!!(_0x152404[_0x52325b(0x79)]||_0x152404['Y']||_0x4a7a63);if(!_0x512d76)try{const _0x32b174=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x32b174){console['log'](a152_0x409791['gray'](_0x52325b(0xe9)));return;}}catch(_0x2dad9d){if(_0x2dad9d?.['message']===_0x52325b(0xf4)){console[_0x52325b(0xc8)](a152_0x409791[_0x52325b(0x92)](_0x52325b(0xe9)));return;}throw _0x2dad9d;}const _0x56cad5=[],_0x337ce5=a152_0x529bab({'text':_0x52325b(0xec),'color':_0x52325b(0xd0)})[_0x52325b(0xca)](),_0x5b7487=execConfigMigration(_0x5806ae,_0x43f379);_0x56cad5[_0x52325b(0x9b)](_0x5b7487),_0x337ce5[_0x5b7487['ok']?_0x52325b(0xcb):_0x52325b(0xc2)]('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0x5b7487[_0x52325b(0x73)]??(_0x5b7487['ok']?_0x52325b(0xbd):'failed')));const _0x1e6367=resolve(_0x43f379,_0x52325b(0xcd)),_0x1b766e=a152_0x529bab({'text':_0x52325b(0x74),'color':'cyan'})['start']();if(existsSync(_0x1e6367))try{rmSync(_0x1e6367,{'recursive':!![],'force':!![]}),_0x1b766e[_0x52325b(0xcb)](_0x52325b(0x8a)),_0x56cad5[_0x52325b(0x9b)]({'step':0x2,'label':_0x52325b(0xc9),'ok':!![]});}catch(_0x1a35aa){_0x1b766e[_0x52325b(0xc2)](_0x52325b(0xeb)+_0x1a35aa[_0x52325b(0xc4)]),_0x56cad5[_0x52325b(0x9b)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x1a35aa[_0x52325b(0xc4)]});}else _0x1b766e[_0x52325b(0xba)](_0x52325b(0x8b)),_0x56cad5[_0x52325b(0x9b)]({'step':0x2,'label':_0x52325b(0xc9),'ok':!![],'detail':'skipped'});const _0xe74b25=a152_0x529bab({'text':'Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','color':'cyan'})[_0x52325b(0xca)](),_0x14021b=execRemoveOldArtifacts(_0x5806ae[_0x52325b(0xac)]);_0x56cad5[_0x52325b(0x9b)](_0x14021b),_0xe74b25[_0x14021b['ok']?'succeed':'fail'](_0x52325b(0x7a)+(_0x14021b[_0x52325b(0x73)]??(_0x14021b['ok']?_0x52325b(0xbd):'failed')));const _0x47fabf=a152_0x529bab({'text':_0x52325b(0x9d),'color':_0x52325b(0xd0)})[_0x52325b(0xca)](),_0x44e417=execCleanMcp(_0x5806ae);_0x56cad5['push'](_0x44e417),_0x47fabf[_0x44e417['ok']?'succeed':_0x52325b(0xc2)](_0x52325b(0x95)+(_0x44e417[_0x52325b(0x73)]??(_0x44e417['ok']?_0x52325b(0xbd):_0x52325b(0x77))));const _0x54961a=a152_0x529bab({'text':_0x52325b(0xf6),'color':_0x52325b(0xd0)})[_0x52325b(0xca)](),_0x23651f=execSkillsRemove(_0x43f379,_0x512d76);_0x56cad5[_0x52325b(0x9b)](_0x23651f),_0x54961a[_0x23651f['ok']?_0x52325b(0xcb):_0x52325b(0xc2)](_0x52325b(0xdf)+(_0x23651f[_0x52325b(0x73)]??(_0x23651f['ok']?'done':'failed')));const _0x153c59=a152_0x529bab({'text':_0x52325b(0xd1),'color':_0x52325b(0xd0)})[_0x52325b(0xca)](),_0x45986a=execSkillsAdd(_0x43f379,_0x512d76);_0x56cad5[_0x52325b(0x9b)](_0x45986a),_0x153c59[_0x45986a['ok']?_0x52325b(0xcb):_0x52325b(0xc2)](_0x52325b(0xf7)+(_0x45986a['detail']??(_0x45986a['ok']?_0x52325b(0xbd):'failed')));const _0x3be9c2=a152_0x529bab({'text':_0x52325b(0x71),'color':'cyan'})[_0x52325b(0xca)](),_0x662423=execUpgradeSdk(_0x5806ae);_0x56cad5['push'](_0x662423),_0x3be9c2[_0x662423['ok']?_0x52325b(0xcb):_0x52325b(0xc2)](_0x52325b(0xde)+(_0x662423[_0x52325b(0x73)]??(_0x662423['ok']?'done':'failed'))),printSummary(_0x56cad5);const _0x161905=_0x56cad5[_0x52325b(0xa8)](_0x29a6ad=>!_0x29a6ad['ok']);_0x161905?console[_0x52325b(0xc8)](a152_0x409791[_0x52325b(0xcc)](_0x52325b(0xe2))):console['log'](a152_0x409791[_0x52325b(0xce)](_0x52325b(0xf8))),_0x662423['ok']&&_0x5806ae[_0x52325b(0xfa)]&&(console[_0x52325b(0xc8)](''),console[_0x52325b(0xc8)](a152_0x409791[_0x52325b(0x83)][_0x52325b(0xd0)](_0x52325b(0x82))),console[_0x52325b(0xc8)](a152_0x409791[_0x52325b(0xd0)]('Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:')),console[_0x52325b(0xc8)](''),console['log'](a152_0x409791[_0x52325b(0x8c)](_0x52325b(0x88))),console[_0x52325b(0xc8)](a152_0x409791[_0x52325b(0x8c)](_0x52325b(0xb7))),console[_0x52325b(0xc8)](a152_0x409791[_0x52325b(0x8c)]('\x20\x20bun\x20install')),console['log'](''));}
|
package/lib/commands/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a153_0x45799f=a153_0x2017;(function(_0x3a9688,_0x185c4f){const _0xcc3c47=a153_0x2017,_0x462470=_0x3a9688();while(!![]){try{const _0x55fc39=-parseInt(_0xcc3c47(0x11e))/0x1+-parseInt(_0xcc3c47(0x11f))/0x2+-parseInt(_0xcc3c47(0x117))/0x3+-parseInt(_0xcc3c47(0x109))/0x4+-parseInt(_0xcc3c47(0x10f))/0x5*(parseInt(_0xcc3c47(0x110))/0x6)+parseInt(_0xcc3c47(0x116))/0x7+parseInt(_0xcc3c47(0x10b))/0x8;if(_0x55fc39===_0x185c4f)break;else _0x462470['push'](_0x462470['shift']());}catch(_0x3cdb35){_0x462470['push'](_0x462470['shift']());}}}(a153_0x7c05,0x68fa6));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{taskDefinitions}from'../commands/task/index.js';import{roleDefinitions}from'../commands/role/index.js';import{permitDefinitions}from'../commands/permit/index.js';import{appDefinitions}from'../commands/app/index.js';import{appConfigDefinitions}from'../commands/app-config/index.js';import{notificationDefinitions}from'../commands/notification/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{fileDefinitions}from'../commands/file/index.js';function a153_0x7c05(){const _0x4b5e7a=['skills','Notification\x20Configuration','push','Dataset\x20&\x20Operations','skill\x20','Menu','Runtime\x20App\x20Config\x20Management','run','app\x20use','CLI\x20Built-in\x20Skill','build','Run\x20any\x20package.json\x20script','Schema','map','Async\x20Tasks','API\x20Development','description','project','<script>','Smart\x20List\x20Pages','preview','App\x20Management','Database\x20Connections','use','has','risk','skill','auth','\x20\x20[write]','\x20\x20[high-risk-write]','install','get','Code\x20Generation','set','Use\x20`rabetbase\x20workspace\x20use\x20--app\x20<name>`\x20instead.','SQL\x20Queries','1243876nAtPmN','length','18386280VkvlqM','Run\x20Scripts','show','`rabetbase\x20app\x20remote`\x20has\x20been\x20removed.','20555XjmAmW','348fMnMfm','create','Roles','Quick\x20Start','read','hidden','932652EFpwaO','1962537rplYMk','Diagnostics','filter','isSingleCommand','command','Platform\x20Issue','Project','538120TgnNDC','519650bFaEhm','BFF\x20Scripts','app','Permissions','defaultCommand','login','service','remote','commands','Authentication','wildcardDef','`rabetbase\x20'];a153_0x7c05=function(){return _0x4b5e7a;};return a153_0x7c05();}import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{projectDefinitions}from'../commands/project/index.js';import{initDefinitions}from'../commands/init/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x4e55d5){const _0xbea04c=a153_0x2017;for(const _0x3b3899 of _0x4e55d5){definitions[_0xbea04c(0x106)](_0x3b3899[_0xbea04c(0x125)]+':'+_0x3b3899['command'],_0x3b3899);let _0x590169=serviceGroups[_0xbea04c(0x104)](_0x3b3899[_0xbea04c(0x125)]);!_0x590169&&(_0x590169=[],serviceGroups[_0xbea04c(0x106)](_0x3b3899[_0xbea04c(0x125)],_0x590169)),_0x590169[_0xbea04c(0x12d)](_0x3b3899);}}function registerDeclarativeService(_0x1525eb,_0x25af59,_0x3aebfe){const _0x117486=a153_0x2017;registerDefinitions(_0x25af59);_0x3aebfe?.[_0x117486(0x129)]&®isterDefinitions([_0x3aebfe[_0x117486(0x129)]]);const _0x5699d4=_0x434530=>_0x434530===_0x117486(0x114)?'':_0x434530==='write'?_0x117486(0x101):_0x117486(0x102),_0x4d1e49={'service':_0x25af59[0x0]['service'],'label':_0x1525eb,'commands':_0x25af59[_0x117486(0x119)](_0x863abe=>!_0x863abe[_0x117486(0x115)])[_0x117486(0xf2)](_0x418dbd=>({'command':_0x418dbd[_0x117486(0x11b)],'description':_0x418dbd[_0x117486(0xf5)],'tag':_0x5699d4(_0x418dbd[_0x117486(0xfe)])})),'declarative':!![],'defaultCommand':_0x3aebfe?.[_0x117486(0x123)]??(_0x3aebfe?.[_0x117486(0x11a)]?_0x25af59[0x0][_0x117486(0x11b)]:undefined),'wildcardDef':_0x3aebfe?.[_0x117486(0x129)],'isSingleCommand':_0x3aebfe?.['isSingleCommand']};serviceRegistry[_0x117486(0x12d)](_0x4d1e49),serviceByName[_0x117486(0x106)](_0x4d1e49['service'],_0x4d1e49);}registerDeclarativeService(a153_0x45799f(0x113),initDefinitions,{'defaultCommand':'run','isSingleCommand':!![]}),registerDeclarativeService(a153_0x45799f(0x11d),projectDefinitions),registerDeclarativeService('Workspace',workspaceDefinitions),registerDeclarativeService(a153_0x45799f(0xfa),appDefinitions),registerDeclarativeService(a153_0x45799f(0x128),authDefinitions,{'defaultCommand':a153_0x45799f(0x124)}),registerDeclarativeService(a153_0x45799f(0x12e),datasetDefinitions),registerDeclarativeService(a153_0x45799f(0xf8),pageDefinitions),registerDeclarativeService(a153_0x45799f(0xf4),apiDefinitions),registerDeclarativeService('Instant\x20API',dataDefinitions),registerDeclarativeService(a153_0x45799f(0x120),bffDefinitions),registerDeclarativeService(a153_0x45799f(0x12c),notificationDefinitions),registerDeclarativeService(a153_0x45799f(0x108),sqlDefinitions),registerDeclarativeService(a153_0x45799f(0xfb),dbDefinitions),registerDeclarativeService(a153_0x45799f(0xea),menuDefinitions),registerDeclarativeService(a153_0x45799f(0xf3),taskDefinitions),registerDeclarativeService(a153_0x45799f(0x112),roleDefinitions),registerDeclarativeService(a153_0x45799f(0x122),permitDefinitions),registerDeclarativeService(a153_0x45799f(0xeb),appConfigDefinitions),registerDeclarativeService(a153_0x45799f(0x11c),issueDefinitions),registerDeclarativeService('File',fileDefinitions),registerDeclarativeService(a153_0x45799f(0x105),codegenDefinitions),registerDeclarativeService('Configuration',configDefinitions),registerDeclarativeService(a153_0x45799f(0x118),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a153_0x45799f(0xf1),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Self\x20Update',[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a153_0x45799f(0xee),cliSkillDefinitions,{'defaultCommand':a153_0x45799f(0x103)}),registerDeclarativeService('Logs',logsDefinitions,{'defaultCommand':a153_0x45799f(0x10d)}),registerDeclarativeService(a153_0x45799f(0x10c),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a153_0x45799f(0x10a)]-0x1];last[a153_0x45799f(0x127)]=[{'command':a153_0x45799f(0xf7),'description':a153_0x45799f(0xf0),'tag':''}];}function a153_0x2017(_0x202b4e,_0x171763){_0x202b4e=_0x202b4e-0xe9;const _0x7c05fd=a153_0x7c05();let _0x2017df=_0x7c05fd[_0x202b4e];return _0x2017df;}export const deprecatedAliases={'create':{'service':a153_0x45799f(0xf6),'command':a153_0x45799f(0x111)},'start':{'service':'run','command':'start'},'build':{'service':a153_0x45799f(0xec),'command':a153_0x45799f(0xef)},'preview':{'service':a153_0x45799f(0xec),'command':a153_0x45799f(0xf9)},'logout':{'service':a153_0x45799f(0x100),'command':'logout'}};const CLI_SKILL_INSTALL_REMOVED_HINT='Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.',APP_REMOTE_REMOVED_HINT='Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.',APP_USE_REMOVED_HINT=a153_0x45799f(0x107);export function resolveRemovedCommand(_0x2cf024,_0x3456c2){const _0xabb4c0=a153_0x45799f;if(_0x2cf024===_0xabb4c0(0xff)){const _0x6268c1=_0x3456c2?_0xabb4c0(0xe9)+_0x3456c2:_0xabb4c0(0xff);return{'command':_0x6268c1,'message':_0xabb4c0(0x12a)+_0x6268c1+'`\x20has\x20been\x20removed.','hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x2cf024===_0xabb4c0(0x12b))return{'command':_0xabb4c0(0x12b),'message':'`rabetbase\x20skills`\x20has\x20been\x20removed.','hint':CLI_SKILL_INSTALL_REMOVED_HINT};if(_0x2cf024==='app'&&_0x3456c2===_0xabb4c0(0x126))return{'command':'app\x20remote','message':_0xabb4c0(0x10e),'hint':APP_REMOTE_REMOVED_HINT};if(_0x2cf024===_0xabb4c0(0x121)&&_0x3456c2===_0xabb4c0(0xfc))return{'command':_0xabb4c0(0xed),'message':'`rabetbase\x20app\x20use`\x20has\x20been\x20removed.','hint':APP_USE_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':a153_0x45799f(0x111)},'sql':{'new':'create'}};export function resolveDeprecatedSubcommand(_0x2c8f80,_0x527b7e){return deprecatedSubcommands[_0x2c8f80]?.[_0x527b7e];}export function findDefinition(_0x53e2a1,_0x2b9bf2){const _0x19950f=a153_0x45799f;return definitions[_0x19950f(0x104)](_0x53e2a1+':'+_0x2b9bf2);}export function isKnownService(_0x1c64fc){return serviceByName['has'](_0x1c64fc);}export function isDeclarativeService(_0xb9ec0c){const _0x416406=a153_0x45799f;return serviceGroups[_0x416406(0xfd)](_0xb9ec0c)||serviceByName[_0x416406(0x104)](_0xb9ec0c)?.['wildcardDef']!==undefined;}export function getServiceEntry(_0x2a0880){const _0x245284=a153_0x45799f;return serviceByName[_0x245284(0x104)](_0x2a0880);}export function getLegacyHandler(_0x36f8a6,_0x464f5f){return undefined;}export function getAllDefinitions(){return Array['from'](definitions['values']());}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a154_0x154467=a154_0x3411;(function(_0x46ae9e,_0x163aea){const _0x1cfc02=a154_0x3411,_0x49e347=_0x46ae9e();while(!![]){try{const _0x2e263b=parseInt(_0x1cfc02(0xc7))/0x1*(-parseInt(_0x1cfc02(0xc6))/0x2)+parseInt(_0x1cfc02(0xcd))/0x3+parseInt(_0x1cfc02(0xcc))/0x4*(-parseInt(_0x1cfc02(0xc5))/0x5)+parseInt(_0x1cfc02(0xc2))/0x6+parseInt(_0x1cfc02(0xd2))/0x7+parseInt(_0x1cfc02(0xbd))/0x8+parseInt(_0x1cfc02(0xbe))/0x9;if(_0x2e263b===_0x163aea)break;else _0x49e347['push'](_0x49e347['shift']());}catch(_0x22918d){_0x49e347['push'](_0x49e347['shift']());}}}(a154_0x3dcf,0xa46d9));import{createAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a154_0x3dcf(){const _0x503c7b=['name','2822561NkMPqs','write','create','POST','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','215264LWDRwE','9989496IApqcz','Created\x20role\x20','trim','roleName','831942ipXdlE','length','flagMissing','87005MOdHWg','2056398IIjsYe','1NSJYUa','/smartapi/permit/role/create','appCode','role','validation','92dzSzlc','1269561tHbzPG','CUSTOM','str','Pass\x20--name\x20<roleName>.'];a154_0x3dcf=function(){return _0x503c7b;};return a154_0x3dcf();}import{asDryRunResult}from'../../commands/common/dry-run.js';function a154_0x3411(_0x5babe1,_0x114b48){_0x5babe1=_0x5babe1-0xb9;const _0x3dcf4d=a154_0x3dcf();let _0x3411e3=_0x3dcf4d[_0x5babe1];return _0x3411e3;}import{NAME_FLAG,REMARK_FLAG,projectRole}from'../../commands/role/shared.js';const CREATE_PATH=a154_0x154467(0xc8);function readName(_0x28cb16){const _0x2c28f4=a154_0x154467,_0x5b9576=_0x28cb16[_0x2c28f4(0xcf)](_0x2c28f4(0xd1))[_0x2c28f4(0xc0)]();if(!_0x5b9576)throw CliErrors[_0x2c28f4(0xc4)](_0x2c28f4(0xd1),_0x2c28f4(0xd0));if(_0x5b9576[_0x2c28f4(0xc3)]>0x40)throw CliErrors[_0x2c28f4(0xcb)](_0x2c28f4(0xbc));return _0x5b9576;}export const roleCreate={'service':a154_0x154467(0xca),'command':'create','description':'Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','risk':a154_0x154467(0xb9),'flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4daddb){readName(_0x4daddb);},async 'dryRun'(_0x4ab168){const _0x563a42=a154_0x154467,_0x35ec4a=readName(_0x4ab168),_0x573626=_0x4ab168[_0x563a42(0xcf)]('remark')[_0x563a42(0xc0)]()||undefined;return asDryRunResult({'operation':'create','selector':{'appCode':_0x4ab168[_0x563a42(0xc9)],'roleName':_0x35ec4a},'before':null,'after':{'roleName':_0x35ec4a,'roleType':_0x563a42(0xce),'remark':_0x573626},'dryRun':!![],'backend':{'method':_0x563a42(0xbb),'path':CREATE_PATH},'warnings':[]},{'method':_0x563a42(0xbb),'url':CREATE_PATH});},async 'execute'(_0x21a9fa){const _0x5e5a3e=a154_0x154467,_0x1355d9=readName(_0x21a9fa),_0x2bcb9b=_0x21a9fa['str']('remark')['trim']()||undefined,_0x5cd9ab=await createAppRole({'appCode':_0x21a9fa[_0x5e5a3e(0xc9)],'roleName':_0x1355d9,..._0x2bcb9b?{'remark':_0x2bcb9b}:{}});return{'ok':!![],'data':{'operation':_0x5e5a3e(0xba),'selector':{'appCode':_0x21a9fa[_0x5e5a3e(0xc9)],'roleId':_0x5cd9ab['id'],'roleName':_0x1355d9},'before':null,'after':projectRole(_0x5cd9ab),'dryRun':![],'backend':{'method':_0x5e5a3e(0xbb),'path':CREATE_PATH},'warnings':[]},'message':_0x5e5a3e(0xbf)+_0x5cd9ab[_0x5e5a3e(0xc1)]+'\x20(id='+_0x5cd9ab['id']+')'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a155_0x22ed38=a155_0x3ead;function a155_0x11bd(){const _0x29c04e=['\x20(id=','Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','role','appCode','Deleted\x20role\x20','4694400iNVeVX','delete','3727878hijLku','/smartapi/permit/role/delete','1225358RXGNib','7vBhujs','2080688WoPtSb','userCount','2532365FinieJ','Role\x20still\x20has\x20','3266166BsvtJb','high-risk-write','1171060DUJANU','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','POST','num','roleName'];a155_0x11bd=function(){return _0x29c04e;};return a155_0x11bd();}(function(_0x39dc8e,_0x158701){const _0x367870=a155_0x3ead,_0x44fa03=_0x39dc8e();while(!![]){try{const _0x3657de=-parseInt(_0x367870(0x76))/0x1+parseInt(_0x367870(0x6e))/0x2+parseInt(_0x367870(0x6c))/0x3+parseInt(_0x367870(0x70))/0x4+-parseInt(_0x367870(0x72))/0x5+-parseInt(_0x367870(0x74))/0x6*(-parseInt(_0x367870(0x6f))/0x7)+-parseInt(_0x367870(0x6a))/0x8;if(_0x3657de===_0x158701)break;else _0x44fa03['push'](_0x44fa03['shift']());}catch(_0x45bdf0){_0x44fa03['push'](_0x44fa03['shift']());}}}(a155_0x11bd,0xa0091));import{deleteAppRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a155_0x3ead(_0x156ee1,_0x2af492){_0x156ee1=_0x156ee1-0x66;const _0x11bd60=a155_0x11bd();let _0x3ead73=_0x11bd60[_0x156ee1];return _0x3ead73;}import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';const DELETE_PATH=a155_0x22ed38(0x6d);export const roleDelete={'service':a155_0x22ed38(0x67),'command':a155_0x22ed38(0x6b),'description':a155_0x22ed38(0x66),'risk':a155_0x22ed38(0x75),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x1657cb){const _0x3b2117=a155_0x22ed38,_0x4e7245=_0x1657cb[_0x3b2117(0x79)]('id'),_0x824c76=await getRoleById(_0x1657cb['appCode'],_0x4e7245);return assertCustomRole(_0x824c76,'delete'),asDryRunResult({'operation':'delete','selector':{'appCode':_0x1657cb[_0x3b2117(0x68)],'roleId':_0x4e7245,'roleName':_0x824c76['roleName']},'before':projectRole(_0x824c76),'after':null,'dryRun':!![],'backend':{'method':'POST','path':DELETE_PATH},'warnings':_0x824c76['userCount']>0x0?[_0x3b2117(0x73)+_0x824c76[_0x3b2117(0x71)]+_0x3b2117(0x77)]:[]},{'method':_0x3b2117(0x78),'url':DELETE_PATH});},async 'execute'(_0x5e1af9){const _0x10b031=a155_0x22ed38,_0x3b8f51=_0x5e1af9['num']('id'),_0x123050=await getRoleById(_0x5e1af9[_0x10b031(0x68)],_0x3b8f51);return assertCustomRole(_0x123050,_0x10b031(0x6b)),await deleteAppRole(_0x3b8f51),{'ok':!![],'data':{'operation':_0x10b031(0x6b),'selector':{'appCode':_0x5e1af9['appCode'],'roleId':_0x3b8f51,'roleName':_0x123050[_0x10b031(0x7a)]},'before':projectRole(_0x123050),'after':null,'dryRun':![],'backend':{'method':_0x10b031(0x78),'path':DELETE_PATH},'warnings':[]},'message':_0x10b031(0x69)+_0x123050[_0x10b031(0x7a)]+_0x10b031(0x7b)+_0x3b8f51+')'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a156_0x5e77da=a156_0x5d6f;(function(_0x54eda6,_0x5c5956){const _0x435312=a156_0x5d6f,_0x18119c=_0x54eda6();while(!![]){try{const _0x46ecdf=-parseInt(_0x435312(0x73))/0x1*(parseInt(_0x435312(0x7b))/0x2)+parseInt(_0x435312(0x74))/0x3+parseInt(_0x435312(0x75))/0x4*(-parseInt(_0x435312(0x72))/0x5)+parseInt(_0x435312(0x77))/0x6*(parseInt(_0x435312(0x6c))/0x7)+parseInt(_0x435312(0x76))/0x8*(-parseInt(_0x435312(0x70))/0x9)+parseInt(_0x435312(0x6f))/0xa+parseInt(_0x435312(0x7c))/0xb;if(_0x46ecdf===_0x5c5956)break;else _0x18119c['push'](_0x18119c['shift']());}catch(_0x14cf79){_0x18119c['push'](_0x18119c['shift']());}}}(a156_0x336c,0xaf896));function a156_0x5d6f(_0x2fb3d1,_0x5ee7fc){_0x2fb3d1=_0x2fb3d1-0x6b;const _0x336cfa=a156_0x336c();let _0x5d6f18=_0x336cfa[_0x2fb3d1];return _0x5d6f18;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a156_0x336c(){const _0x1b5e06=['12dHKuvn','16zUxtyS','6rwZcsl','appCode','read','Role\x20','86aaqaDR','14003638sfhLRx','detail','Show\x20a\x20single\x20role\x27s\x20detail','4381993pBgQiT','roleType','role','3841570GWfLsI','5591493GZrRlG','roleName','1034080bdlXyM','3877iTGZBA','1396491JEakXR'];a156_0x336c=function(){return _0x1b5e06;};return a156_0x336c();}export const roleDetail={'service':a156_0x5e77da(0x6e),'command':a156_0x5e77da(0x7d),'description':a156_0x5e77da(0x6b),'risk':a156_0x5e77da(0x79),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x515711){const _0x13ec05=a156_0x5e77da,_0x479567=_0x515711['num']('id'),_0x203d7f=await getRoleById(_0x515711[_0x13ec05(0x78)],_0x479567);return{'ok':!![],'data':{'role':projectRole(_0x203d7f)},'message':_0x13ec05(0x7a)+_0x203d7f[_0x13ec05(0x71)]+'\x20('+_0x203d7f[_0x13ec05(0x6d)]+')'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x3e5b7d,_0x397777){const _0x59d15a=a157_0x281e,_0xf98b3=_0x3e5b7d();while(!![]){try{const _0x2ffa73=-parseInt(_0x59d15a(0x88))/0x1+-parseInt(_0x59d15a(0x8c))/0x2+-parseInt(_0x59d15a(0x82))/0x3*(-parseInt(_0x59d15a(0x8a))/0x4)+parseInt(_0x59d15a(0x85))/0x5*(parseInt(_0x59d15a(0x8b))/0x6)+-parseInt(_0x59d15a(0x83))/0x7+parseInt(_0x59d15a(0x89))/0x8*(-parseInt(_0x59d15a(0x86))/0x9)+-parseInt(_0x59d15a(0x87))/0xa*(-parseInt(_0x59d15a(0x84))/0xb);if(_0x2ffa73===_0x397777)break;else _0xf98b3['push'](_0xf98b3['shift']());}catch(_0x51d4c7){_0xf98b3['push'](_0xf98b3['shift']());}}}(a157_0x458f,0x6454e));import{roleList}from'../../commands/role/list.js';import{roleDetail}from'../../commands/role/detail.js';import{roleCreate}from'../../commands/role/create.js';import{roleUpdate}from'../../commands/role/update.js';function a157_0x281e(_0x250c0b,_0x914817){_0x250c0b=_0x250c0b-0x82;const _0x458fbc=a157_0x458f();let _0x281e0e=_0x458fbc[_0x250c0b];return _0x281e0e;}import{roleDelete}from'../../commands/role/delete.js';function a157_0x458f(){const _0x3010ce=['388812PNNigS','2172684BYxmgy','1385426hOfzTv','5192176hyIyQz','35xXIwQT','1017qaHKEM','20afhObA','551628xyazDg','22696rKWnNu','4uNuGUa','6198FsAvKe'];a157_0x458f=function(){return _0x3010ce;};return a157_0x458f();}import{roleUserResolve}from'../../commands/role/user-resolve.js';import{roleUserAdd}from'../../commands/role/user-add.js';import{roleUserRemove}from'../../commands/role/user-remove.js';export const roleDefinitions=[roleList,roleDetail,roleCreate,roleUpdate,roleDelete,roleUserResolve,roleUserAdd,roleUserRemove];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a158_0x21ed9e=a158_0x3404;(function(_0x457747,_0xa0118a){const _0x3326f3=a158_0x3404,_0x519955=_0x457747();while(!![]){try{const _0x154b61=parseInt(_0x3326f3(0x10a))/0x1*(parseInt(_0x3326f3(0x104))/0x2)+parseInt(_0x3326f3(0xf5))/0x3*(-parseInt(_0x3326f3(0x103))/0x4)+parseInt(_0x3326f3(0x101))/0x5*(parseInt(_0x3326f3(0xf7))/0x6)+parseInt(_0x3326f3(0x10e))/0x7*(parseInt(_0x3326f3(0xfe))/0x8)+-parseInt(_0x3326f3(0x116))/0x9*(-parseInt(_0x3326f3(0x110))/0xa)+-parseInt(_0x3326f3(0x10b))/0xb*(-parseInt(_0x3326f3(0x105))/0xc)+parseInt(_0x3326f3(0x102))/0xd;if(_0x154b61===_0xa0118a)break;else _0x519955['push'](_0x519955['shift']());}catch(_0x4c6f28){_0x519955['push'](_0x519955['shift']());}}}(a158_0x25e5,0x42773));function a158_0x3404(_0x1bbf56,_0x158543){_0x1bbf56=_0x1bbf56-0xf3;const _0x25e54a=a158_0x25e5();let _0x34047d=_0x25e54a[_0x1bbf56];return _0x34047d;}import{listAppRoles}from'../../core/api-client.js';function a158_0x25e5(){const _0x4315d5=['validation','number','read','includes','map','Found\x20','33SMNUVF','DEV','24YozHFG','--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.','appCode','Page\x20index\x20(1-based)','num','page','Filter\x20by\x20role\x20type','101224xnvkvo','toUpperCase','trim','101825dxSRYi','1217970cSPbeA','113908evFUJN','33946GJfbkw','84QfDSjr','join','List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','ADMIN','type','1VTLNAN','979DgRlgy','string','--pagesize\x20must\x20be\x20between\x201\x20and\x20100.','161afXRoy','str','1017250aBvAdQ','roleType','Page\x20size\x20(1-100)','Use\x20one\x20of:\x20','Invalid\x20--type\x20\x22','CUSTOM','9AiLhHP','pagesize','\x20role(s)'];a158_0x25e5=function(){return _0x4315d5;};return a158_0x25e5();}import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{projectRole}from'../../commands/role/shared.js';const ROLE_TYPES=[a158_0x21ed9e(0x108),a158_0x21ed9e(0xf6),'USER',a158_0x21ed9e(0x115)];export const roleList={'service':'role','command':'list','description':a158_0x21ed9e(0x107),'risk':a158_0x21ed9e(0x11b),'flags':[APPCODE_FLAG_OPTIONAL,{'name':'type','type':a158_0x21ed9e(0x10c),'required':![],'description':a158_0x21ed9e(0xfd),'enum':ROLE_TYPES},{'name':a158_0x21ed9e(0xfc),'type':'number','description':a158_0x21ed9e(0xfa),'default':0x1},{'name':a158_0x21ed9e(0x117),'type':a158_0x21ed9e(0x11a),'description':a158_0x21ed9e(0x112),'default':0x64}],async 'validate'(_0x3d4c01){const _0x111713=a158_0x21ed9e,_0x1a2cee=_0x3d4c01[_0x111713(0x10f)](_0x111713(0x109))['trim']();if(_0x1a2cee&&!ROLE_TYPES[_0x111713(0x11c)](_0x1a2cee[_0x111713(0xff)]()))throw CliErrors[_0x111713(0x119)](_0x111713(0x114)+_0x1a2cee+'\x22.',_0x111713(0x113)+ROLE_TYPES[_0x111713(0x106)](',\x20')+'.');const _0x119625=_0x3d4c01[_0x111713(0xfb)](_0x111713(0xfc),0x1),_0x21672f=_0x3d4c01['num']('pagesize',0x64);if(_0x119625<0x1)throw CliErrors[_0x111713(0x119)](_0x111713(0xf8));if(_0x21672f<0x1||_0x21672f>0x64)throw CliErrors[_0x111713(0x119)](_0x111713(0x10d));},async 'execute'(_0x40457b){const _0xde7c7c=a158_0x21ed9e,_0x3e2169=_0x40457b[_0xde7c7c(0xfb)](_0xde7c7c(0xfc),0x1)||0x1,_0x22cf4a=_0x40457b['num'](_0xde7c7c(0x117),0x64)||0x64,_0x27ee00=_0x40457b[_0xde7c7c(0x10f)]('type')[_0xde7c7c(0x100)]()[_0xde7c7c(0xff)](),{items:_0x58e6c7,paging:_0x515b42}=await listAppRoles(_0x40457b[_0xde7c7c(0xf9)],{'currentPage':_0x3e2169,'pageSize':_0x22cf4a}),_0x43f953=_0x27ee00?_0x58e6c7['filter'](_0x54f8b8=>_0x54f8b8[_0xde7c7c(0x111)]===_0x27ee00):_0x58e6c7,_0x1f80a4=_0x43f953[_0xde7c7c(0xf3)](projectRole);return{'ok':!![],'data':{'roles':_0x1f80a4,'paging':_0x515b42},'message':_0xde7c7c(0xf4)+_0x1f80a4['length']+_0xde7c7c(0x118)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a159_0x117748=a159_0xa3f7;(function(_0x4a79fe,_0xe6872b){const _0x28bbc4=a159_0xa3f7,_0x130f36=_0x4a79fe();while(!![]){try{const _0x5aa06c=-parseInt(_0x28bbc4(0x91))/0x1*(-parseInt(_0x28bbc4(0xa6))/0x2)+parseInt(_0x28bbc4(0x8d))/0x3*(parseInt(_0x28bbc4(0xbb))/0x4)+-parseInt(_0x28bbc4(0x90))/0x5+-parseInt(_0x28bbc4(0x80))/0x6*(-parseInt(_0x28bbc4(0xbf))/0x7)+parseInt(_0x28bbc4(0x9c))/0x8+-parseInt(_0x28bbc4(0x9b))/0x9*(-parseInt(_0x28bbc4(0x84))/0xa)+-parseInt(_0x28bbc4(0x96))/0xb;if(_0x5aa06c===_0xe6872b)break;else _0x130f36['push'](_0x130f36['shift']());}catch(_0x53e464){_0x130f36['push'](_0x130f36['shift']());}}}(a159_0xa201,0xbeb65));import{getAppRole,getTenantMembers,listAppRoles,listRoleUsers}from'../../core/api-client.js';import{getSessionUserInfo}from'../../auth/get-session-user.js';import{CliErrors}from'../../errors.js';export const ROLE_ID_FLAG={'name':'id','type':'number','required':!![],'description':'Role\x20id\x20(from\x20`role\x20list`)'};function a159_0xa3f7(_0x1ef433,_0x230a01){_0x1ef433=_0x1ef433-0x80;const _0xa201d2=a159_0xa201();let _0xa3f71b=_0xa201d2[_0x1ef433];return _0xa3f71b;}export const ROLE_REF_FLAG={'name':a159_0x117748(0xb5),'type':a159_0x117748(0xa5),'required':!![],'description':'Role\x20id\x20or\x20role\x20name\x20(CUSTOM\x20roles\x20may\x20be\x20referenced\x20by\x20name)'};export const USER_REF_FLAG={'name':'user','type':a159_0x117748(0xa5),'required':!![],'description':a159_0x117748(0x87)};export const NAME_FLAG={'name':a159_0x117748(0xb2),'type':'string','required':!![],'description':a159_0x117748(0x81)};export const USER_NAME_FLAG={'name':'name','type':a159_0x117748(0xa5),'required':!![],'description':a159_0x117748(0xa4)};export const REMARK_FLAG={'name':'remark','type':a159_0x117748(0xa5),'required':![],'description':a159_0x117748(0xa9)};export const EXPECT_USER_COUNT_FLAG={'name':a159_0x117748(0x9f),'type':a159_0x117748(0x9e),'required':![],'description':a159_0x117748(0xc9)};export const BUILTIN_ROLE_TYPES=[a159_0x117748(0x8a),'DEV','USER'];function a159_0xa201(){const _0x3896c2=['username','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','Disambiguate\x20with\x20--role\x20<id>.','includes','push',';\x20no\x20change.','nickname','No\x20tenant\x20member\x20matches\x20\x22','Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs','splice','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','\x20member(s)\x20but\x20role\x20has\x20','Role\x20name\x20\x22','trim','userList','roleType','test','8907174myxCQu','Role\x20name','tenant','\x20not\x20found\x20in\x20app\x20','619270KlAKLy','expectUserCount','CUSTOM','User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId','Anti-drift\x20check\x20failed:\x20expected\x20','User\x20','ADMIN','flagMissing','/smartapi/permit/user-role/update-user-list','267xlxuWL','str','Cannot\x20','3013280TLPajA','733297StPlez','Multiple\x20tenant\x20members\x20match\x20\x22','filter','dryRun','appCode','52571596CbYFap','\x20built-in\x20role\x20','user-add','flag','roleName','135PPrhMS','8071176tbCMMN','\x22:\x20','number','expect-user-count','\x22\x20is\x20ambiguous\x20(ids:\x20','map','Missing\x20role\x20reference.','DEV','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','string','4FomHBR','userId','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.','Optional\x20role\x20remark/description','\x20is\x20already\x20a\x20member\x20of\x20role\x20','userCount','Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.','Pass\x20--role\x20<id|name>.','findIndex','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.','toLowerCase','Pass\x20--user\x20<id|name>.','name','validation','length','role','Disambiguate\x20with\x20--user\x20<id>.','\x20not\x20found\x20in\x20the\x20user-role\x20list.','Role\x20id\x20','Missing\x20user\x20reference.','POST','57264nGXHmU','join','user','find','7zOxlDO','authRequired'];a159_0xa201=function(){return _0x3896c2;};return a159_0xa201();}export function isBuiltinRole(_0xf4f569){return BUILTIN_ROLE_TYPES['includes'](_0xf4f569);}export function assertCustomRole(_0x438ab1,_0x255577){const _0x1a6838=a159_0x117748;if(_0x438ab1['roleType']!==_0x1a6838(0x86))throw CliErrors[_0x1a6838(0xb3)](_0x1a6838(0x8f)+_0x255577+_0x1a6838(0x97)+_0x438ab1[_0x1a6838(0x9a)]+'\x20('+_0x438ab1[_0x1a6838(0xd0)]+').',_0x1a6838(0xc2));}export function assertPermConfigurable(_0x124895){const _0x4a8d4b=a159_0x117748;if(_0x124895[_0x4a8d4b(0xd0)]===_0x4a8d4b(0xa3)||_0x124895['roleType']==='ADMIN')throw CliErrors[_0x4a8d4b(0xb3)]('Cannot\x20change\x20the\x20permission\x20matrix\x20of\x20built-in\x20role\x20'+_0x124895[_0x4a8d4b(0x9a)]+'\x20('+_0x124895[_0x4a8d4b(0xd0)]+').','DEV\x20/\x20ADMIN\x20keep\x20full\x20access\x20by\x20design;\x20configure\x20a\x20CUSTOM\x20role\x20instead.');}export function projectRole(_0x508ac8){const _0x5a7e86=a159_0x117748;return{'id':_0x508ac8['id'],'roleName':_0x508ac8[_0x5a7e86(0x9a)],'roleType':_0x508ac8['roleType'],'remark':_0x508ac8['remark'],'userCount':_0x508ac8[_0x5a7e86(0xab)],'permitCount':_0x508ac8['permitCount'],'builtin':isBuiltinRole(_0x508ac8[_0x5a7e86(0xd0)])};}export async function resolveRoleRef(_0x4976e8,_0x966cc2){const _0x11d436=a159_0x117748,_0x17f4c8=_0x966cc2[_0x11d436(0xce)]();if(!_0x17f4c8)throw CliErrors[_0x11d436(0xb3)](_0x11d436(0xa2),'Pass\x20--role\x20<id|name>.');if(/^\d+$/[_0x11d436(0xd1)](_0x17f4c8))return getRoleById(_0x4976e8,Number(_0x17f4c8));const _0x5ebe20=await listAllAppRoles(_0x4976e8),_0x223818=_0x5ebe20[_0x11d436(0x93)](_0x2411ab=>_0x2411ab[_0x11d436(0x9a)]===_0x17f4c8);if(_0x223818[_0x11d436(0xb4)]===0x0)throw CliErrors[_0x11d436(0xb3)](_0x11d436(0xcd)+_0x17f4c8+'\x22\x20not\x20found\x20in\x20app\x20'+_0x4976e8+'.',_0x11d436(0xaf));if(_0x223818[_0x11d436(0xb4)]>0x1){const _0x400249=_0x223818['map'](_0x26e64f=>_0x26e64f['id'])[_0x11d436(0xbc)](',\x20');throw CliErrors[_0x11d436(0xb3)](_0x11d436(0xcd)+_0x17f4c8+_0x11d436(0xa0)+_0x400249+').',_0x11d436(0xc3));}return _0x223818[0x0];}export async function getRoleById(_0x53da63,_0x2e4a03){const _0xc28b55=a159_0x117748,_0x215c4b=await getAppRole(_0x2e4a03);if(!_0x215c4b)throw CliErrors['validation'](_0xc28b55(0xb8)+_0x2e4a03+_0xc28b55(0x83)+_0x53da63+'.',_0xc28b55(0xa8));return _0x215c4b;}async function listAllAppRoles(_0x5b0886){const _0x3bb9d6=a159_0x117748,_0x5339ab=0x64,_0x5ca574=[];for(let _0x77319c=0x1;;_0x77319c+=0x1){const {items:_0xe0fc4f,paging:_0x416144}=await listAppRoles(_0x5b0886,{'currentPage':_0x77319c,'pageSize':_0x5339ab});_0x5ca574[_0x3bb9d6(0xc5)](..._0xe0fc4f);if(_0xe0fc4f[_0x3bb9d6(0xb4)]<_0x5339ab||_0x416144&&_0x5ca574[_0x3bb9d6(0xb4)]>=_0x416144['totalCount'])return _0x5ca574;}}export async function resolveTenantCode(){const _0x4d6762=a159_0x117748,_0x58dd37=await getSessionUserInfo(),_0x343917=_0x58dd37?.['user']?.[_0x4d6762(0x82)]?.['tenant_code'];if(!_0x343917)throw CliErrors[_0x4d6762(0xc0)](_0x4d6762(0xac));return _0x343917;}function matchMember(_0x363e97,_0x509b41){const _0x116afe=a159_0x117748,_0x94ebe1=_0x509b41['trim']()[_0x116afe(0xb0)]();return(_0x363e97['nickname']??'')[_0x116afe(0xb0)]()===_0x94ebe1||(_0x363e97[_0x116afe(0xc1)]??'')[_0x116afe(0xb0)]()===_0x94ebe1;}export async function resolveUserRef(_0x4b3563){const _0x462904=a159_0x117748,_0xdc658b=_0x4b3563[_0x462904(0xce)]();if(!_0xdc658b)throw CliErrors[_0x462904(0xb3)](_0x462904(0xb9),_0x462904(0xb1));const _0x4fb61d=await resolveTenantCode(),_0x34265a=await getTenantMembers(_0x4fb61d);if(/^\d+$/[_0x462904(0xd1)](_0xdc658b)){const _0x5c68ba=Number(_0xdc658b),_0x28f8b5=_0x34265a[_0x462904(0xbe)](_0x1f68c7=>_0x1f68c7[_0x462904(0xa7)]===_0x5c68ba);return{'userId':_0x5c68ba,'username':_0x28f8b5?.[_0x462904(0xc1)]??String(_0x5c68ba),'nickname':_0x28f8b5?.['nickname'],'matchedBy':'id'};}const _0x182bec=_0x34265a[_0x462904(0x93)](_0x25deaf=>matchMember(_0x25deaf,_0xdc658b));if(_0x182bec[_0x462904(0xb4)]===0x0)throw CliErrors[_0x462904(0xb3)](_0x462904(0xc8)+_0xdc658b+'\x22.','Check\x20the\x20nickname/username,\x20or\x20pass\x20--user\x20<id>.');if(_0x182bec[_0x462904(0xb4)]>0x1){const _0x146454=_0x182bec[_0x462904(0xa1)](_0x31a436=>(_0x31a436['nickname']??_0x31a436[_0x462904(0xc1)]??'?')+'('+_0x31a436['userId']+')')[_0x462904(0xbc)](',\x20');throw CliErrors[_0x462904(0xb3)](_0x462904(0x92)+_0xdc658b+_0x462904(0x9d)+_0x146454+'.',_0x462904(0xb6));}const _0x12462e=_0x182bec[0x0];return{'userId':_0x12462e[_0x462904(0xa7)],'username':_0x12462e['username']??String(_0x12462e[_0x462904(0xa7)]),'nickname':_0x12462e[_0x462904(0xc7)],'matchedBy':_0x462904(0xb2)};}export const UPDATE_USER_LIST_PATH=a159_0x117748(0x8c);function userIdsOf(_0x5e4c94){const _0x1ffa42=a159_0x117748;return(_0x5e4c94?.[_0x1ffa42(0xcf)]??[])[_0x1ffa42(0xa1)](_0x283297=>_0x283297[_0x1ffa42(0xa7)]);}export function computeRoleUserMutation(_0x3b5dac){const _0x5a9ed3=a159_0x117748,{operation:_0x5d2359,appCode:_0x1b98e7,roleUsers:_0x4cf3e8,targetRoleId:_0x2b1236,user:_0x1deed8}=_0x3b5dac,_0x287abb=_0x4cf3e8[_0x5a9ed3(0xbe)](_0x1954a6=>_0x1954a6['id']===_0x2b1236);if(!_0x287abb)throw CliErrors[_0x5a9ed3(0xb3)](_0x5a9ed3(0xb8)+_0x2b1236+_0x5a9ed3(0xb7),_0x5a9ed3(0xa8));const _0x1a0f75=userIdsOf(_0x287abb),_0x2378a5=[];if(_0x3b5dac[_0x5a9ed3(0x85)]!==undefined&&_0x3b5dac['expectUserCount']!==_0x1a0f75['length'])throw CliErrors['validation'](_0x5a9ed3(0x88)+_0x3b5dac[_0x5a9ed3(0x85)]+_0x5a9ed3(0xcc)+_0x1a0f75[_0x5a9ed3(0xb4)]+'.',_0x5a9ed3(0xcb));const _0x416d66=_0x1a0f75[_0x5a9ed3(0xc4)](_0x1deed8[_0x5a9ed3(0xa7)]);let _0x94150=![];const _0xec7841=[..._0x287abb[_0x5a9ed3(0xcf)]];if(_0x5d2359===_0x5a9ed3(0x98))_0x416d66?_0x2378a5[_0x5a9ed3(0xc5)]('User\x20'+_0x1deed8[_0x5a9ed3(0xa7)]+_0x5a9ed3(0xaa)+_0x287abb[_0x5a9ed3(0x9a)]+';\x20no\x20change.'):(_0xec7841[_0x5a9ed3(0xc5)]({'userId':_0x1deed8[_0x5a9ed3(0xa7)],'username':_0x1deed8[_0x5a9ed3(0xc1)],..._0x1deed8[_0x5a9ed3(0xc7)]?{'nickname':_0x1deed8[_0x5a9ed3(0xc7)]}:{}}),_0x94150=!![]);else{if(!_0x416d66)_0x2378a5[_0x5a9ed3(0xc5)](_0x5a9ed3(0x89)+_0x1deed8[_0x5a9ed3(0xa7)]+'\x20is\x20not\x20a\x20member\x20of\x20role\x20'+_0x287abb[_0x5a9ed3(0x9a)]+_0x5a9ed3(0xc6));else{const _0x2fb23c=_0xec7841[_0x5a9ed3(0xae)](_0x44fa55=>_0x44fa55[_0x5a9ed3(0xa7)]===_0x1deed8['userId']);if(_0x2fb23c>=0x0)_0xec7841[_0x5a9ed3(0xca)](_0x2fb23c,0x1);_0x94150=!![];}}const _0x443d65=_0x4cf3e8[_0x5a9ed3(0xa1)](_0x4bd8d6=>_0x4bd8d6['id']===_0x2b1236?{..._0x4bd8d6,'userList':_0xec7841}:_0x4bd8d6),_0x2592da=_0xec7841[_0x5a9ed3(0xa1)](_0x4c27cf=>_0x4c27cf['userId']),_0xb27b4b={'operation':_0x5d2359,'selector':{'appCode':_0x1b98e7,'roleId':_0x2b1236,'roleName':_0x287abb['roleName'],'userId':_0x1deed8[_0x5a9ed3(0xa7)]},'before':{'userIds':_0x1a0f75},'after':{'userIds':_0x2592da},'dryRun':_0x3b5dac[_0x5a9ed3(0x94)],'backend':{'method':_0x5a9ed3(0xba),'path':UPDATE_USER_LIST_PATH},'warnings':_0x2378a5};return{'roleList':_0x443d65,'mutation':_0xb27b4b,'changed':_0x94150};}export async function loadRoleUsers(_0x85d9b9){return listRoleUsers(_0x85d9b9);}export function readRoleRef(_0x4d272b){const _0x5e64e4=a159_0x117748,_0x3feadb=_0x4d272b[_0x5e64e4(0x8e)](_0x5e64e4(0xb5))[_0x5e64e4(0xce)]();if(!_0x3feadb)throw CliErrors['flagMissing'](_0x5e64e4(0xb5),_0x5e64e4(0xad));return _0x3feadb;}export async function prepareUserMutation(_0xa83f04,_0x25acd8,_0x48f1f8){const _0x26f33b=a159_0x117748,_0x4c60d9=readRoleRef(_0xa83f04),_0x2ce28d=_0xa83f04[_0x26f33b(0x8e)](_0x26f33b(0xbd))[_0x26f33b(0xce)]();if(!_0x2ce28d)throw CliErrors[_0x26f33b(0x8b)](_0x26f33b(0xbd),_0x26f33b(0xb1));const _0x55fba6=_0xa83f04[_0x26f33b(0x99)](_0x26f33b(0x9f)),_0x3b6588=_0x55fba6===undefined||_0x55fba6===null?undefined:Number(_0x55fba6),_0x44ab47=await resolveRoleRef(_0xa83f04[_0x26f33b(0x95)],_0x4c60d9),_0x67c442=await resolveUserRef(_0x2ce28d),_0x39a63f=await loadRoleUsers(_0xa83f04['appCode']);return computeRoleUserMutation({'operation':_0x25acd8,'appCode':_0xa83f04[_0x26f33b(0x95)],'roleUsers':_0x39a63f,'targetRoleId':_0x44ab47['id'],'user':{'userId':_0x67c442[_0x26f33b(0xa7)],'username':_0x67c442[_0x26f33b(0xc1)],'nickname':_0x67c442[_0x26f33b(0xc7)]},'dryRun':_0x48f1f8,..._0x3b6588!==undefined?{'expectUserCount':_0x3b6588}:{}});}
|
|
1
|
+
const a159_0x5982d2=a159_0x9419;(function(_0x2300f1,_0x1f5af2){const _0x4ae676=a159_0x9419,_0x50eeb7=_0x2300f1();while(!![]){try{const _0x5879df=-parseInt(_0x4ae676(0xe8))/0x1+parseInt(_0x4ae676(0x10a))/0x2*(-parseInt(_0x4ae676(0xf3))/0x3)+-parseInt(_0x4ae676(0x101))/0x4+parseInt(_0x4ae676(0xf1))/0x5*(parseInt(_0x4ae676(0x112))/0x6)+-parseInt(_0x4ae676(0xed))/0x7*(parseInt(_0x4ae676(0xf8))/0x8)+-parseInt(_0x4ae676(0xf5))/0x9*(parseInt(_0x4ae676(0xdf))/0xa)+parseInt(_0x4ae676(0x111))/0xb;if(_0x5879df===_0x1f5af2)break;else _0x50eeb7['push'](_0x50eeb7['shift']());}catch(_0x698c56){_0x50eeb7['push'](_0x50eeb7['shift']());}}}(a159_0x5b76,0x596fc));import{getAppRole,getTenantMembers,listAppRoles,listRoleUsers}from'../../core/api-client.js';import{getSessionUserInfo}from'../../auth/get-session-user.js';import{CliErrors}from'../../errors.js';export const ROLE_ID_FLAG={'name':'id','type':'number','required':!![],'description':a159_0x5982d2(0xef)};export const ROLE_REF_FLAG={'name':a159_0x5982d2(0xe9),'type':a159_0x5982d2(0x108),'required':!![],'description':a159_0x5982d2(0x10b)};export const USER_REF_FLAG={'name':'user','type':a159_0x5982d2(0x108),'required':!![],'description':a159_0x5982d2(0xd8)};export const NAME_FLAG={'name':a159_0x5982d2(0x113),'type':a159_0x5982d2(0x108),'required':!![],'description':a159_0x5982d2(0x10d)};export const USER_NAME_FLAG={'name':'name','type':'string','required':!![],'description':a159_0x5982d2(0xe1)};export const REMARK_FLAG={'name':a159_0x5982d2(0x11a),'type':a159_0x5982d2(0x108),'required':![],'description':a159_0x5982d2(0xfb)};export const EXPECT_USER_COUNT_FLAG={'name':'expect-user-count','type':'number','required':![],'description':'Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs'};export const BUILTIN_ROLE_TYPES=['ADMIN',a159_0x5982d2(0xee),a159_0x5982d2(0x10f)];export function isBuiltinRole(_0x25ecf5){const _0x3131d7=a159_0x5982d2;return BUILTIN_ROLE_TYPES[_0x3131d7(0x100)](_0x25ecf5);}export function assertCustomRole(_0x1e8df0,_0x4fff87){const _0x14cc8d=a159_0x5982d2;if(_0x1e8df0['roleType']!==_0x14cc8d(0x11b))throw CliErrors['validation'](_0x14cc8d(0x10e)+_0x4fff87+_0x14cc8d(0xf7)+_0x1e8df0[_0x14cc8d(0x104)]+'\x20('+_0x1e8df0['roleType']+').',_0x14cc8d(0x120));}export function assertPermConfigurable(_0x5bbc4b){const _0x7425b4=a159_0x5982d2;if(_0x5bbc4b[_0x7425b4(0xde)]===_0x7425b4(0xee)||_0x5bbc4b[_0x7425b4(0xde)]===_0x7425b4(0xfd))throw CliErrors[_0x7425b4(0xf6)](_0x7425b4(0x121)+_0x5bbc4b[_0x7425b4(0x104)]+'\x20('+_0x5bbc4b['roleType']+').',_0x7425b4(0xdb));}export function projectRole(_0x9afa1b){const _0x483cff=a159_0x5982d2;return{'id':_0x9afa1b['id'],'roleName':_0x9afa1b[_0x483cff(0x104)],'roleType':_0x9afa1b[_0x483cff(0xde)],'remark':_0x9afa1b[_0x483cff(0x11a)],'userCount':_0x9afa1b['userCount'],'permitCount':_0x9afa1b[_0x483cff(0xdd)],'builtin':isBuiltinRole(_0x9afa1b['roleType'])};}export async function resolveRoleRef(_0xd9571f,_0x42173b){const _0x298a24=a159_0x5982d2,_0x127e1c=_0x42173b[_0x298a24(0x109)]();if(!_0x127e1c)throw CliErrors[_0x298a24(0xf6)](_0x298a24(0x117),_0x298a24(0xe6));if(/^\d+$/[_0x298a24(0xff)](_0x127e1c))return getRoleById(_0xd9571f,Number(_0x127e1c));const _0xa2dafe=await listAllAppRoles(_0xd9571f),_0x2aff54=_0xa2dafe[_0x298a24(0xdc)](_0x231a38=>_0x231a38[_0x298a24(0x104)]===_0x127e1c);if(_0x2aff54[_0x298a24(0x11c)]===0x0)throw CliErrors[_0x298a24(0xf6)](_0x298a24(0xe7)+_0x127e1c+'\x22\x20not\x20found\x20in\x20app\x20'+_0xd9571f+'.',_0x298a24(0xe3));if(_0x2aff54[_0x298a24(0x11c)]>0x1){const _0x1a8271=_0x2aff54[_0x298a24(0x110)](_0x4d475c=>_0x4d475c['id'])[_0x298a24(0x11d)](',\x20');throw CliErrors[_0x298a24(0xf6)](_0x298a24(0xe7)+_0x127e1c+_0x298a24(0x115)+_0x1a8271+').','Disambiguate\x20with\x20--role\x20<id>.');}return _0x2aff54[0x0];}export async function getRoleById(_0x2492ef,_0x52e499){const _0x278864=a159_0x5982d2,_0x33570a=await getAppRole(_0x52e499);if(!_0x33570a)throw CliErrors[_0x278864(0xf6)](_0x278864(0xd7)+_0x52e499+'\x20not\x20found\x20in\x20app\x20'+_0x2492ef+'.',_0x278864(0x114));return _0x33570a;}async function listAllAppRoles(_0x372362){const _0x4c7bf4=a159_0x5982d2,_0x43fb68=0x64,_0x24116d=[];for(let _0x2b210c=0x1;;_0x2b210c+=0x1){const {items:_0x102863,paging:_0x498591}=await listAppRoles(_0x372362,{'currentPage':_0x2b210c,'pageSize':_0x43fb68});_0x24116d[_0x4c7bf4(0xf0)](..._0x102863);if(_0x102863[_0x4c7bf4(0x11c)]<_0x43fb68||_0x498591&&_0x24116d[_0x4c7bf4(0x11c)]>=_0x498591['totalCount'])return _0x24116d;}}export async function resolveTenantCode(){const _0x18c19d=a159_0x5982d2,_0x566e45=await getSessionUserInfo(),_0xc292f6=_0x566e45?.[_0x18c19d(0x118)]?.['tenant']?.[_0x18c19d(0xec)];if(!_0xc292f6)throw CliErrors['authRequired'](_0x18c19d(0x10c));return _0xc292f6;}function matchMember(_0x3c95f8,_0x1c60e9){const _0x5d8c28=a159_0x5982d2,_0x559287=_0x1c60e9[_0x5d8c28(0x109)]()[_0x5d8c28(0x107)]();return(_0x3c95f8[_0x5d8c28(0x122)]??'')[_0x5d8c28(0x107)]()===_0x559287||(_0x3c95f8[_0x5d8c28(0x116)]??'')['toLowerCase']()===_0x559287;}export async function resolveUserRef(_0x1c1ab2){const _0x3b3c57=a159_0x5982d2,_0x373ad9=_0x1c1ab2['trim']();if(!_0x373ad9)throw CliErrors[_0x3b3c57(0xf6)]('Missing\x20user\x20reference.',_0x3b3c57(0xfe));const _0x4e07fc=await resolveTenantCode(),_0x125091=await getTenantMembers(_0x4e07fc);if(/^\d+$/['test'](_0x373ad9)){const _0x5e18cf=Number(_0x373ad9),_0x5bc0e8=_0x125091[_0x3b3c57(0x102)](_0x278631=>_0x278631[_0x3b3c57(0x11f)]===_0x5e18cf);return{'userId':_0x5e18cf,'username':_0x5bc0e8?.['username']??String(_0x5e18cf),'nickname':_0x5bc0e8?.[_0x3b3c57(0x122)],'matchedBy':'id'};}const _0x46d8f9=_0x125091[_0x3b3c57(0xdc)](_0x1a68d3=>matchMember(_0x1a68d3,_0x373ad9));if(_0x46d8f9[_0x3b3c57(0x11c)]===0x0)throw CliErrors[_0x3b3c57(0xf6)](_0x3b3c57(0xeb)+_0x373ad9+'\x22.',_0x3b3c57(0x119));if(_0x46d8f9['length']>0x1){const _0x3c06cb=_0x46d8f9[_0x3b3c57(0x110)](_0x13e65b=>(_0x13e65b[_0x3b3c57(0x122)]??_0x13e65b[_0x3b3c57(0x116)]??'?')+'('+_0x13e65b[_0x3b3c57(0x11f)]+')')[_0x3b3c57(0x11d)](',\x20');throw CliErrors[_0x3b3c57(0xf6)](_0x3b3c57(0xe2)+_0x373ad9+_0x3b3c57(0xd6)+_0x3c06cb+'.','Disambiguate\x20with\x20--user\x20<id>.');}const _0x4d0b9b=_0x46d8f9[0x0];return{'userId':_0x4d0b9b[_0x3b3c57(0x11f)],'username':_0x4d0b9b[_0x3b3c57(0x116)]??String(_0x4d0b9b[_0x3b3c57(0x11f)]),'nickname':_0x4d0b9b[_0x3b3c57(0x122)],'matchedBy':_0x3b3c57(0x113)};}export const UPDATE_USER_LIST_PATH='/smartapi/permit/user-role/update-user-list';function userIdsOf(_0x24f3a5){const _0x5eab94=a159_0x5982d2;return(_0x24f3a5?.[_0x5eab94(0xf9)]??[])[_0x5eab94(0x110)](_0x469bbb=>_0x469bbb[_0x5eab94(0x11f)]);}export function computeRoleUserMutation(_0x43234d){const _0x25c9fb=a159_0x5982d2,{operation:_0x3a09d1,appCode:_0x5afb2e,roleUsers:_0x40a9eb,targetRoleId:_0x3f341a,user:_0xf7d95}=_0x43234d,_0x2eb5ca=_0x40a9eb[_0x25c9fb(0x102)](_0x454aad=>_0x454aad['id']===_0x3f341a);if(!_0x2eb5ca)throw CliErrors[_0x25c9fb(0xf6)](_0x25c9fb(0xd7)+_0x3f341a+'\x20not\x20found\x20in\x20the\x20user-role\x20list.','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.');const _0x5df2bb=userIdsOf(_0x2eb5ca),_0x4e7818=[];if(_0x43234d[_0x25c9fb(0xf4)]!==undefined&&_0x43234d[_0x25c9fb(0xf4)]!==_0x5df2bb[_0x25c9fb(0x11c)])throw CliErrors['validation'](_0x25c9fb(0xd9)+_0x43234d[_0x25c9fb(0xf4)]+_0x25c9fb(0x105)+_0x5df2bb[_0x25c9fb(0x11c)]+'.',_0x25c9fb(0xe0));const _0x198ab4=_0x5df2bb['includes'](_0xf7d95[_0x25c9fb(0x11f)]);let _0x1a7739=![];const _0x31e010=[..._0x2eb5ca[_0x25c9fb(0xf9)]];if(_0x3a09d1===_0x25c9fb(0xf2))_0x198ab4?_0x4e7818[_0x25c9fb(0xf0)](_0x25c9fb(0xfc)+_0xf7d95[_0x25c9fb(0x11f)]+_0x25c9fb(0x106)+_0x2eb5ca[_0x25c9fb(0x104)]+';\x20no\x20change.'):(_0x31e010['push']({'userId':_0xf7d95[_0x25c9fb(0x11f)],'username':_0xf7d95[_0x25c9fb(0x116)],..._0xf7d95[_0x25c9fb(0x122)]?{'nickname':_0xf7d95['nickname']}:{}}),_0x1a7739=!![]);else{if(!_0x198ab4)_0x4e7818[_0x25c9fb(0xf0)](_0x25c9fb(0xfc)+_0xf7d95['userId']+_0x25c9fb(0x11e)+_0x2eb5ca[_0x25c9fb(0x104)]+';\x20no\x20change.');else{const _0x40de2a=_0x31e010['findIndex'](_0x1d9af4=>_0x1d9af4['userId']===_0xf7d95['userId']);if(_0x40de2a>=0x0)_0x31e010[_0x25c9fb(0x103)](_0x40de2a,0x1);_0x1a7739=!![];}}const _0x90781=_0x40a9eb['map'](_0x4fdf74=>_0x4fdf74['id']===_0x3f341a?{..._0x4fdf74,'userList':_0x31e010}:_0x4fdf74),_0x5204ce=_0x31e010[_0x25c9fb(0x110)](_0x28b01b=>_0x28b01b['userId']),_0x222024={'operation':_0x3a09d1,'selector':{'appCode':_0x5afb2e,'roleId':_0x3f341a,'roleName':_0x2eb5ca[_0x25c9fb(0x104)],'userId':_0xf7d95['userId']},'before':{'userIds':_0x5df2bb},'after':{'userIds':_0x5204ce},'dryRun':_0x43234d[_0x25c9fb(0xe5)],'backend':{'method':'POST','path':UPDATE_USER_LIST_PATH},'warnings':_0x4e7818};return{'roleList':_0x90781,'mutation':_0x222024,'changed':_0x1a7739};}function a159_0x9419(_0x425dba,_0x4ab4cf){_0x425dba=_0x425dba-0xd6;const _0x5b76f8=a159_0x5b76();let _0x94193c=_0x5b76f8[_0x425dba];return _0x94193c;}function a159_0x5b76(){const _0x5c874=['dryRun','Pass\x20--role\x20<id|name>.','Role\x20name\x20\x22','342818btYmTc','role','flag','No\x20tenant\x20member\x20matches\x20\x22','tenant_code','45024yKyqFR','DEV','Role\x20id\x20(from\x20`role\x20list`)','push','10uEwmFH','user-add','14613pOFISv','expectUserCount','1746FSIZPP','validation','\x20built-in\x20role\x20','304zLZwuw','userList','flagMissing','Optional\x20role\x20remark/description','User\x20','ADMIN','Pass\x20--user\x20<id|name>.','test','includes','2413704ASooVK','find','splice','roleName','\x20member(s)\x20but\x20role\x20has\x20','\x20is\x20already\x20a\x20member\x20of\x20role\x20','toLowerCase','string','trim','214gINDad','Role\x20id\x20or\x20role\x20name\x20(CUSTOM\x20roles\x20may\x20be\x20referenced\x20by\x20name)','Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.','Role\x20name','Cannot\x20','USER','map','19586127Sztdim','2033034xBfuQn','name','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.','\x22\x20is\x20ambiguous\x20(ids:\x20','username','Missing\x20role\x20reference.','user','Check\x20the\x20nickname/username,\x20or\x20pass\x20--user\x20<id>.','remark','CUSTOM','length','join','\x20is\x20not\x20a\x20member\x20of\x20role\x20','userId','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','Cannot\x20change\x20the\x20permission\x20matrix\x20of\x20built-in\x20role\x20','nickname','expect-user-count','\x22:\x20','Role\x20id\x20','User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId','Anti-drift\x20check\x20failed:\x20expected\x20','str','DEV\x20/\x20ADMIN\x20keep\x20full\x20access\x20by\x20design;\x20configure\x20a\x20CUSTOM\x20role\x20instead.','filter','permitCount','roleType','19590piOZqt','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','Multiple\x20tenant\x20members\x20match\x20\x22','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.','appCode'];a159_0x5b76=function(){return _0x5c874;};return a159_0x5b76();}export async function loadRoleUsers(_0x11d8f5){return listRoleUsers(_0x11d8f5);}export function readRoleRef(_0x28ad9a){const _0x2b9311=a159_0x5982d2,_0x55dec7=_0x28ad9a[_0x2b9311(0xda)](_0x2b9311(0xe9))[_0x2b9311(0x109)]();if(!_0x55dec7)throw CliErrors['flagMissing']('role',_0x2b9311(0xe6));return _0x55dec7;}export async function prepareUserMutation(_0x435a77,_0x448015,_0x595f76){const _0x427c3c=a159_0x5982d2,_0x1c20e6=readRoleRef(_0x435a77),_0xbfc475=_0x435a77[_0x427c3c(0xda)](_0x427c3c(0x118))['trim']();if(!_0xbfc475)throw CliErrors[_0x427c3c(0xfa)](_0x427c3c(0x118),_0x427c3c(0xfe));const _0x4fe010=_0x435a77[_0x427c3c(0xea)](_0x427c3c(0x123)),_0x58b12f=_0x4fe010===undefined||_0x4fe010===null?undefined:Number(_0x4fe010),_0x470851=await resolveRoleRef(_0x435a77[_0x427c3c(0xe4)],_0x1c20e6),_0x38add3=await resolveUserRef(_0xbfc475),_0x25ea5e=await loadRoleUsers(_0x435a77['appCode']);return computeRoleUserMutation({'operation':_0x448015,'appCode':_0x435a77[_0x427c3c(0xe4)],'roleUsers':_0x25ea5e,'targetRoleId':_0x470851['id'],'user':{'userId':_0x38add3['userId'],'username':_0x38add3['username'],'nickname':_0x38add3[_0x427c3c(0x122)]},'dryRun':_0x595f76,..._0x58b12f!==undefined?{'expectUserCount':_0x58b12f}:{}});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a160_0x54e229=a160_0x208a;(function(_0xd92db6,_0x4edf84){const _0x10b687=a160_0x208a,_0x54e5bf=_0xd92db6();while(!![]){try{const _0x4f7764=-parseInt(_0x10b687(0xdb))/0x1+-parseInt(_0x10b687(0xda))/0x2*(parseInt(_0x10b687(0xd0))/0x3)+-parseInt(_0x10b687(0xcf))/0x4*(-parseInt(_0x10b687(0xdc))/0x5)+-parseInt(_0x10b687(0xc9))/0x6+-parseInt(_0x10b687(0xd1))/0x7*(parseInt(_0x10b687(0xc5))/0x8)+parseInt(_0x10b687(0xd6))/0x9+parseInt(_0x10b687(0xdd))/0xa;if(_0x4f7764===_0x4edf84)break;else _0x54e5bf['push'](_0x54e5bf['shift']());}catch(_0xe2be36){_0x54e5bf['push'](_0x54e5bf['shift']());}}}(a160_0x562b,0x97a03));import{updateAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a160_0x562b(){const _0x5a2a02=['POST','appCode','update','3843084RJuElJ','177NxEqZl','2619239lkggVI','num','/smartapi/permit/role/update','Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.','validation','6148476NTwLIe','name','write','--name\x20cannot\x20be\x20empty.','9394lgxkCu','1037828Uhssuh','5VsfbLn','14461400UTzOZP','role','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','\x20(id=','roleName','string','8pSNzAu','flag','trim','Updated\x20role\x20','4679328lIJnXU','New\x20role\x20name','remark'];a160_0x562b=function(){return _0x5a2a02;};return a160_0x562b();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a160_0x208a(_0x59cb5a,_0xec869d){_0x59cb5a=_0x59cb5a-0xc5;const _0x562ba7=a160_0x562b();let _0x208a72=_0x562ba7[_0x59cb5a];return _0x208a72;}import{assertCustomRole,getRoleById,projectRole,REMARK_FLAG,ROLE_ID_FLAG}from'../../commands/role/shared.js';const UPDATE_PATH=a160_0x54e229(0xd3);function readPatch(_0x529d05){const _0x14a1b6=a160_0x54e229,_0x2dab0a=_0x529d05[_0x14a1b6(0xc6)](_0x14a1b6(0xd7)),_0x2427d4=_0x529d05[_0x14a1b6(0xc6)]('remark'),_0x1a13b8={};if(_0x2dab0a!==undefined&&_0x2dab0a!==null){const _0xd7108b=String(_0x2dab0a)[_0x14a1b6(0xc7)]();if(!_0xd7108b)throw CliErrors[_0x14a1b6(0xd5)](_0x14a1b6(0xd9));if(_0xd7108b['length']>0x40)throw CliErrors[_0x14a1b6(0xd5)](_0x14a1b6(0xdf));_0x1a13b8[_0x14a1b6(0xe1)]=_0xd7108b;}_0x2427d4!==undefined&&_0x2427d4!==null&&(_0x1a13b8[_0x14a1b6(0xcb)]=String(_0x2427d4));if(_0x1a13b8[_0x14a1b6(0xe1)]===undefined&&_0x1a13b8['remark']===undefined)throw CliErrors[_0x14a1b6(0xd5)]('Nothing\x20to\x20update.',_0x14a1b6(0xd4));return _0x1a13b8;}export const roleUpdate={'service':a160_0x54e229(0xde),'command':a160_0x54e229(0xce),'description':'Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(DEV/ADMIN\x20rejected)','risk':a160_0x54e229(0xd8),'flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':'name','type':a160_0x54e229(0xe2),'required':![],'description':a160_0x54e229(0xca)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3721a4){readPatch(_0x3721a4);},async 'dryRun'(_0x5b9b65){const _0x534dd3=a160_0x54e229,_0x486d5f=_0x5b9b65[_0x534dd3(0xd2)]('id'),_0x1b0184=readPatch(_0x5b9b65),_0x4dc1b7=await getRoleById(_0x5b9b65[_0x534dd3(0xcd)],_0x486d5f);return assertCustomRole(_0x4dc1b7,_0x534dd3(0xce)),asDryRunResult({'operation':_0x534dd3(0xce),'selector':{'appCode':_0x5b9b65[_0x534dd3(0xcd)],'roleId':_0x486d5f,'roleName':_0x4dc1b7['roleName']},'before':projectRole(_0x4dc1b7),'after':projectRole({..._0x4dc1b7,..._0x1b0184[_0x534dd3(0xe1)]!==undefined?{'roleName':_0x1b0184[_0x534dd3(0xe1)]}:{},..._0x1b0184[_0x534dd3(0xcb)]!==undefined?{'remark':_0x1b0184[_0x534dd3(0xcb)]}:{}}),'dryRun':!![],'backend':{'method':_0x534dd3(0xcc),'path':UPDATE_PATH},'warnings':[]},{'method':'POST','url':UPDATE_PATH});},async 'execute'(_0x4e8e70){const _0x32b571=a160_0x54e229,_0x46b4af=_0x4e8e70[_0x32b571(0xd2)]('id'),_0x20e8f4=readPatch(_0x4e8e70),_0x2f32e3=await getRoleById(_0x4e8e70[_0x32b571(0xcd)],_0x46b4af);assertCustomRole(_0x2f32e3,_0x32b571(0xce)),await updateAppRole({'id':_0x46b4af,'appCode':_0x4e8e70['appCode'],..._0x20e8f4['roleName']!==undefined?{'roleName':_0x20e8f4[_0x32b571(0xe1)]}:{},..._0x20e8f4[_0x32b571(0xcb)]!==undefined?{'remark':_0x20e8f4[_0x32b571(0xcb)]}:{}});const _0x5de9ec=await getRoleById(_0x4e8e70[_0x32b571(0xcd)],_0x46b4af);return{'ok':!![],'data':{'operation':_0x32b571(0xce),'selector':{'appCode':_0x4e8e70[_0x32b571(0xcd)],'roleId':_0x46b4af,'roleName':_0x5de9ec[_0x32b571(0xe1)]},'before':projectRole(_0x2f32e3),'after':projectRole(_0x5de9ec),'dryRun':![],'backend':{'method':_0x32b571(0xcc),'path':UPDATE_PATH},'warnings':[]},'message':_0x32b571(0xc8)+_0x5de9ec[_0x32b571(0xe1)]+_0x32b571(0xe0)+_0x46b4af+')'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a161_0x4cdbeb=a161_0x3fb9;function a161_0x3fb9(_0x318071,_0x4113b4){_0x318071=_0x318071-0x1bd;const _0x55ffa1=a161_0x55ff();let _0x3fb927=_0x55ffa1[_0x318071];return _0x3fb927;}(function(_0x332449,_0x3ca5e0){const _0x161e76=a161_0x3fb9,_0x47fc19=_0x332449();while(!![]){try{const _0x53645a=parseInt(_0x161e76(0x1bd))/0x1+-parseInt(_0x161e76(0x1cd))/0x2+parseInt(_0x161e76(0x1d1))/0x3+parseInt(_0x161e76(0x1c2))/0x4*(parseInt(_0x161e76(0x1cf))/0x5)+parseInt(_0x161e76(0x1be))/0x6*(parseInt(_0x161e76(0x1c9))/0x7)+parseInt(_0x161e76(0x1c8))/0x8+parseInt(_0x161e76(0x1d0))/0x9*(-parseInt(_0x161e76(0x1d3))/0xa);if(_0x53645a===_0x3ca5e0)break;else _0x47fc19['push'](_0x47fc19['shift']());}catch(_0x43e0cb){_0x47fc19['push'](_0x47fc19['shift']());}}}(a161_0x55ff,0x1eee6));import{updateRoleUsers}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{EXPECT_USER_COUNT_FLAG,prepareUserMutation,ROLE_REF_FLAG,UPDATE_USER_LIST_PATH,USER_REF_FLAG}from'../../commands/role/shared.js';function a161_0x55ff(){const _0xb99efe=['\x20already\x20in\x20role\x20','292780jbPUgt','selector','827990ALJisK','9BYEGoi','733572oESkAA','userId','2191260QARxLi','39980wpNCNE','624vKpxKW','roleName','POST','role','4YMzRqX','user-add','\x20to\x20role\x20','No\x20change:\x20user\x20','Added\x20user\x20','high-risk-write','103072rPBlQX','1967CyZzpt','Add\x20a\x20user\x20to\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','appCode'];a161_0x55ff=function(){return _0xb99efe;};return a161_0x55ff();}export const roleUserAdd={'service':a161_0x4cdbeb(0x1c1),'command':a161_0x4cdbeb(0x1c3),'description':a161_0x4cdbeb(0x1ca),'risk':a161_0x4cdbeb(0x1c7),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x2558d6){const _0xe1614f=a161_0x4cdbeb,{mutation:_0x359984}=await prepareUserMutation(_0x2558d6,_0xe1614f(0x1c3),!![]);return asDryRunResult(_0x359984,{'method':_0xe1614f(0x1c0),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0xe95894){const _0x987e06=a161_0x4cdbeb,{roleList:_0x37b6a5,mutation:_0x2fc592,changed:_0x56bf}=await prepareUserMutation(_0xe95894,_0x987e06(0x1c3),![]);return _0x56bf&&await updateRoleUsers(_0xe95894[_0x987e06(0x1cb)],_0x37b6a5),{'ok':!![],'data':_0x2fc592,'message':_0x56bf?_0x987e06(0x1c6)+_0x2fc592[_0x987e06(0x1ce)]['userId']+_0x987e06(0x1c4)+_0x2fc592[_0x987e06(0x1ce)][_0x987e06(0x1bf)]:_0x987e06(0x1c5)+_0x2fc592[_0x987e06(0x1ce)][_0x987e06(0x1d2)]+_0x987e06(0x1cc)+_0x2fc592['selector'][_0x987e06(0x1bf)]};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a162_0x359e40=a162_0x1878;(function(_0x32095b,_0x4dc105){const _0x5771c1=a162_0x1878,_0x14a0be=_0x32095b();while(!![]){try{const _0x341280=-parseInt(_0x5771c1(0x12f))/0x1+-parseInt(_0x5771c1(0x139))/0x2+-parseInt(_0x5771c1(0x136))/0x3+-parseInt(_0x5771c1(0x13b))/0x4*(-parseInt(_0x5771c1(0x132))/0x5)+-parseInt(_0x5771c1(0x135))/0x6+-parseInt(_0x5771c1(0x130))/0x7*(-parseInt(_0x5771c1(0x134))/0x8)+parseInt(_0x5771c1(0x129))/0x9;if(_0x341280===_0x4dc105)break;else _0x14a0be['push'](_0x14a0be['shift']());}catch(_0x435dfb){_0x14a0be['push'](_0x14a0be['shift']());}}}(a162_0x14cd,0x4a6e1));function a162_0x1878(_0x3cb2b8,_0x1866e1){_0x3cb2b8=_0x3cb2b8-0x128;const _0x14cde4=a162_0x14cd();let _0x187810=_0x14cde4[_0x3cb2b8];return _0x187810;}import{updateRoleUsers}from'../../core/api-client.js';function a162_0x14cd(){const _0x391f85=['appCode','role','userId','roleName','227128RbsFxg','7wvOLOv','user-remove','1065UAcwdF','No\x20change:\x20user\x20','3622072ujQKtt','2701068vqBrLx','944343uUZqpL','POST','high-risk-write','199020mApvBq','Removed\x20user\x20','9796IiilGp','\x20from\x20role\x20','3798594MEgLks','selector'];a162_0x14cd=function(){return _0x391f85;};return a162_0x14cd();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{EXPECT_USER_COUNT_FLAG,prepareUserMutation,ROLE_REF_FLAG,UPDATE_USER_LIST_PATH,USER_REF_FLAG}from'../../commands/role/shared.js';export const roleUserRemove={'service':a162_0x359e40(0x12c),'command':a162_0x359e40(0x131),'description':'Remove\x20a\x20user\x20from\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','risk':a162_0x359e40(0x138),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x345077){const _0x407215=a162_0x359e40,{mutation:_0x1830c3}=await prepareUserMutation(_0x345077,_0x407215(0x131),!![]);return asDryRunResult(_0x1830c3,{'method':_0x407215(0x137),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x14d42a){const _0x3dbb91=a162_0x359e40,{roleList:_0x187fe9,mutation:_0x181ccb,changed:_0xed2cdc}=await prepareUserMutation(_0x14d42a,'user-remove',![]);return _0xed2cdc&&await updateRoleUsers(_0x14d42a[_0x3dbb91(0x12b)],_0x187fe9),{'ok':!![],'data':_0x181ccb,'message':_0xed2cdc?_0x3dbb91(0x13a)+_0x181ccb[_0x3dbb91(0x12a)][_0x3dbb91(0x12d)]+_0x3dbb91(0x128)+_0x181ccb[_0x3dbb91(0x12a)][_0x3dbb91(0x12e)]:_0x3dbb91(0x133)+_0x181ccb['selector']['userId']+'\x20not\x20in\x20role\x20'+_0x181ccb['selector'][_0x3dbb91(0x12e)]};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a163_0x5f1401=a163_0x39b3;function a163_0x39b3(_0x4e5210,_0x5807b1){_0x4e5210=_0x4e5210-0x1c1;const _0x15fbf2=a163_0x15fb();let _0x39b3c6=_0x15fbf2[_0x4e5210];return _0x39b3c6;}(function(_0x48b30c,_0x9e1b25){const _0x2d76db=a163_0x39b3,_0xe356e4=_0x48b30c();while(!![]){try{const _0x1be9f3=-parseInt(_0x2d76db(0x1d1))/0x1+-parseInt(_0x2d76db(0x1c2))/0x2*(-parseInt(_0x2d76db(0x1c9))/0x3)+parseInt(_0x2d76db(0x1c3))/0x4*(parseInt(_0x2d76db(0x1c4))/0x5)+-parseInt(_0x2d76db(0x1d5))/0x6+-parseInt(_0x2d76db(0x1d6))/0x7*(-parseInt(_0x2d76db(0x1c8))/0x8)+-parseInt(_0x2d76db(0x1c6))/0x9*(-parseInt(_0x2d76db(0x1d4))/0xa)+-parseInt(_0x2d76db(0x1d7))/0xb*(parseInt(_0x2d76db(0x1ce))/0xc);if(_0x1be9f3===_0x9e1b25)break;else _0xe356e4['push'](_0xe356e4['shift']());}catch(_0x3f9e0b){_0xe356e4['push'](_0xe356e4['shift']());}}}(a163_0x15fb,0xdeb47));function a163_0x15fb(){const _0x2ce27c=['user-resolve','9tkZBXF','read','2224MFerxA','12Usyzdq','name','matchedBy','str','userId','105972mmMuBp','username','Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','901351yTURty','\x22\x20→\x20userId\x20','flagMissing','1745090fdxzDY','482256HERdNC','27062QGbHgO','737PTGinV','trim','446698btEhpi','760wduDaV','9025BtuRvw'];a163_0x15fb=function(){return _0x2ce27c;};return a163_0x15fb();}import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{resolveUserRef,USER_NAME_FLAG}from'../../commands/role/shared.js';export const roleUserResolve={'service':'role','command':a163_0x5f1401(0x1c5),'description':a163_0x5f1401(0x1d0),'risk':a163_0x5f1401(0x1c7),'flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5f15b4){const _0x41802f=a163_0x5f1401;if(!_0x5f15b4['str'](_0x41802f(0x1ca))[_0x41802f(0x1c1)]())throw CliErrors[_0x41802f(0x1d3)](_0x41802f(0x1ca),'Pass\x20--name\x20<nickname|username>.');},async 'execute'(_0x471a70){const _0xff374f=a163_0x5f1401,_0x4fd129=_0x471a70[_0xff374f(0x1cc)](_0xff374f(0x1ca))[_0xff374f(0x1c1)](),_0x2bfc90=await resolveUserRef(_0x4fd129);return{'ok':!![],'data':{'user':{'userId':_0x2bfc90[_0xff374f(0x1cd)],'username':_0x2bfc90[_0xff374f(0x1cf)],'nickname':_0x2bfc90['nickname'],'matchedBy':_0x2bfc90[_0xff374f(0x1cb)]}},'message':'Resolved\x20\x22'+_0x4fd129+_0xff374f(0x1d2)+_0x2bfc90[_0xff374f(0x1cd)]};}};
|