@lovrabet/rabetbase-cli 2.2.4-beta.2 → 2.2.4-beta.3
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/discover.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/remove.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app/use.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-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-selector.js +1 -1
- package/lib/commands/common/flags.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/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/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-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/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/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/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/shared/compare-table.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/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/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/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/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/skill/index.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/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.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-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/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(_0x55015c,_0x1a5d0e){const _0x1bc350=a116_0x1e07,_0xd0c10d=_0x55015c();while(!![]){try{const _0x4ff213=-parseInt(_0x1bc350(0x11b))/0x1*(-parseInt(_0x1bc350(0xff))/0x2)+-parseInt(_0x1bc350(0x11a))/0x3*(parseInt(_0x1bc350(0x10b))/0x4)+parseInt(_0x1bc350(0xf7))/0x5+parseInt(_0x1bc350(0x121))/0x6*(-parseInt(_0x1bc350(0xf4))/0x7)+parseInt(_0x1bc350(0xf9))/0x8+-parseInt(_0x1bc350(0x10d))/0x9+parseInt(_0x1bc350(0x104))/0xa;if(_0x4ff213===_0x1a5d0e)break;else _0xd0c10d['push'](_0xd0c10d['shift']());}catch(_0x37c94f){_0xd0c10d['push'](_0xd0c10d['shift']());}}}(a116_0xead1,0x53e7f));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a116_0x45fc47 from'chalk';import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';import{readRawConfig,getProjectConfigPath,writeConfigFile,NEW_CONFIG_NAME,LEGACY_CONFIG_NAMES}from'../../context.js';import{validateAppcode}from'../../commands/common/validate.js';function a116_0x1e07(_0xb2e46c,_0x218c37){_0xb2e46c=_0xb2e46c-0xf2;const _0xead17a=a116_0xead1();let _0x1e0704=_0xead17a[_0xb2e46c];return _0x1e0704;}import{buildCanonicalProjectConfig}from'../../config/schema.js';function a116_0xead1(){const _0x41ff8c=['.bak','init','\x20project\x20init`\x20to\x20start\x20fresh.','\x20\x20appcode:\x20','\x20\x20Default:\x20','43006lIHKuv','✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','appcode','bold','2034760TrhQdm','version','\x20\x20Apps:\x20','.rabetbase.json','env','\x20→\x20.rabetbase.json','trim','614264ajJtqk','app','2295135qjsegf','defaultApp','App\x20Code\x20cannot\x20be\x20empty','Migration\x20cancelled.\x20Run\x20`','\x20api\x20generate\x27\x20and\x20\x27','string','package.json','green','✓\x20Upgraded\x20','apps','../..','Please\x20enter\x20App\x20Code:','gray','3EQkkzU','31VpSlTq','\x20\x20Old\x20file\x20backed\x20up\x20as\x20','1.0.0','log','info','\x20api\x20pull\x27','18zxERYu','utf8','parse','join','cyan','Upgrade\x20it\x20to\x20','993132pXNzEC','从旧配置文件升级成功','toLocaleString','1378550PoFJXh','setLogPath','256872KseHpC'];a116_0xead1=function(){return _0x41ff8c;};return a116_0xead1();}export async function initConfig(_0x4cc6fa){const _0x2c2de3=a116_0x1e07,{appcode:_0x4d08a6,env:_0x3a6f99,autoYes:_0x5b8cfe}=_0x4cc6fa,_0x5bba3d=process['cwd']();if(getProjectConfigPath())throw new Error('.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.');let _0x1c3966;for(const _0x461639 of LEGACY_CONFIG_NAMES){const _0x2a4216=resolve(_0x5bba3d,_0x461639);if(existsSync(_0x2a4216)){_0x1c3966=_0x2a4216;break;}}if(_0x1c3966){let _0x1e3e2c={};try{_0x1e3e2c=JSON[_0x2c2de3(0x123)](readFileSync(_0x1c3966,_0x2c2de3(0x122)));}catch{}const _0x4e6b58=basename(_0x1c3966),_0x12ff46=_0x1e3e2c?.[_0x2c2de3(0x102)]||_0x1e3e2c?.[_0x2c2de3(0x10c)];let _0x13f6e7=_0x5b8cfe;!_0x5b8cfe&&(console[_0x2c2de3(0x11e)](a116_0x45fc47['yellow'](_0x2c2de3(0x101)+a116_0x45fc47['bold'](_0x4e6b58))),_0x12ff46&&console[_0x2c2de3(0x11e)](a116_0x45fc47[_0x2c2de3(0xf2)](_0x2c2de3(0xfd)+_0x12ff46)),_0x13f6e7=await confirm({'message':_0x2c2de3(0xf3)+a116_0x45fc47[_0x2c2de3(0x103)](_0x2c2de3(0x107))+'?\x20(Old\x20file\x20→\x20*.bak)','default':!![]}));if(!_0x13f6e7){console['log'](_0x2c2de3(0x110)+CLI_BIN_NAME+_0x2c2de3(0xfc));return;}const _0x30f787=resolve(_0x5bba3d,NEW_CONFIG_NAME),_0x3262cb=getCliVersionFromPkg(),_0x3e9532=readRawConfig(),_0x3045a5=_0x4d08a6||(typeof _0x1e3e2c?.[_0x2c2de3(0x102)]===_0x2c2de3(0x112)?_0x1e3e2c['appcode']:undefined)||(typeof _0x1e3e2c?.['app']===_0x2c2de3(0x112)?_0x1e3e2c[_0x2c2de3(0x10c)]:undefined)||await askAppcode(),_0x32bf5b=typeof _0x1e3e2c?.[_0x2c2de3(0x108)]==='string'?_0x1e3e2c[_0x2c2de3(0x108)]:typeof _0x3e9532[_0x2c2de3(0x108)]===_0x2c2de3(0x112)?_0x3e9532[_0x2c2de3(0x108)]:'production',_0x4b3d97=buildCanonicalProjectConfig({..._0x3e9532,..._0x1e3e2c},{'appCodes':[_0x3045a5],'env':_0x32bf5b,'metadata':{'version':_0x3262cb,'migratedAt':new Date()[_0x2c2de3(0xf6)](),'migratedFrom':_0x1c3966}});writeConfigFile(_0x30f787,_0x4b3d97);const _0x3bb4c1=_0x1c3966+'.bak';renameSync(_0x1c3966,_0x3bb4c1),logger[_0x2c2de3(0xf8)](_0x5bba3d),logger[_0x2c2de3(0x11f)]('init',_0x2c2de3(0xf5),{'from':_0x1c3966,'to':_0x30f787,'appcode':_0x3045a5,'env':_0x4b3d97[_0x2c2de3(0x108)]}),console['log'](a116_0x45fc47['green'](_0x2c2de3(0x115)+_0x4e6b58+_0x2c2de3(0x109))),console[_0x2c2de3(0x11e)](a116_0x45fc47['cyan'](_0x2c2de3(0x106)+Object['keys'](_0x4b3d97[_0x2c2de3(0x116)]||{})['join'](',\x20'))),console['log'](a116_0x45fc47[_0x2c2de3(0xf2)]('\x20\x20Default:\x20'+_0x4b3d97[_0x2c2de3(0x10e)])),console[_0x2c2de3(0x11e)](a116_0x45fc47[_0x2c2de3(0x119)](_0x2c2de3(0x11c)+_0x4e6b58+_0x2c2de3(0xfa)));return;}const _0x12a65b=_0x4d08a6||await askAppcode(),_0xa7cbee=resolve(_0x5bba3d,NEW_CONFIG_NAME),_0x35def8=getCliVersionFromPkg(),_0x2f6533=readRawConfig(),_0x5a9793=typeof _0x2f6533[_0x2c2de3(0x108)]===_0x2c2de3(0x112)?_0x2f6533[_0x2c2de3(0x108)]:undefined,_0xa4e774=buildCanonicalProjectConfig({},{'appCodes':[_0x12a65b],'env':_0x3a6f99||_0x5a9793||'production','metadata':{'version':_0x35def8,'createdAt':new Date()[_0x2c2de3(0xf6)]()}});writeConfigFile(_0xa7cbee,_0xa4e774),logger[_0x2c2de3(0xf8)](_0x5bba3d),logger['info'](_0x2c2de3(0xfb),'初始化项目配置文件成功',{'appcode':_0x12a65b,'env':_0xa4e774[_0x2c2de3(0x108)],'version':_0xa4e774[_0x2c2de3(0x105)],'configPath':_0xa7cbee}),console[_0x2c2de3(0x11e)](a116_0x45fc47[_0x2c2de3(0x114)](_0x2c2de3(0x100))),console[_0x2c2de3(0x11e)](a116_0x45fc47[_0x2c2de3(0xf2)]('\x20\x20Apps:\x20'+Object['keys'](_0xa4e774[_0x2c2de3(0x116)]||{})[_0x2c2de3(0x124)](',\x20'))),console[_0x2c2de3(0x11e)](a116_0x45fc47[_0x2c2de3(0xf2)](_0x2c2de3(0xfe)+_0xa4e774[_0x2c2de3(0x10e)])),console[_0x2c2de3(0x11e)]('\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27'+CLI_BIN_NAME+_0x2c2de3(0x111)+CLI_BIN_NAME+_0x2c2de3(0x120));}function askAppcode(){const _0x44fe5e=a116_0x1e07;return input({'message':_0x44fe5e(0x118),'validate':_0x431763=>{const _0x3304a1=_0x44fe5e;if(!_0x431763[_0x3304a1(0x10a)]())return _0x3304a1(0x10f);const {valid:_0x39a725,message:_0x4fb90a}=validateAppcode(_0x431763[_0x3304a1(0x10a)]());return _0x39a725||_0x4fb90a||'Invalid\x20App\x20Code';}});}function getCliVersionFromPkg(){const _0x38f8a7=a116_0x1e07;try{const _0x375b7d=fileURLToPath(import.meta.url),_0x5a213d=resolve(dirname(_0x375b7d),_0x38f8a7(0x117)),_0x4aec0c=JSON[_0x38f8a7(0x123)](readFileSync(resolve(_0x5a213d,_0x38f8a7(0x113)),'utf8'));return _0x4aec0c[_0x38f8a7(0x105)]||_0x38f8a7(0x11d);}catch{return _0x38f8a7(0x11d);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a117_0x143f15=a117_0x1695;(function(_0x43402c,_0x27bf80){const _0x232c82=a117_0x1695,_0x41b6d4=_0x43402c();while(!![]){try{const _0x3a0866=parseInt(_0x232c82(0x1ea))/0x1+-parseInt(_0x232c82(0x223))/0x2+-parseInt(_0x232c82(0x227))/0x3+-parseInt(_0x232c82(0x212))/0x4+parseInt(_0x232c82(0x23c))/0x5*(parseInt(_0x232c82(0x21e))/0x6)+-parseInt(_0x232c82(0x21f))/0x7+-parseInt(_0x232c82(0x1da))/0x8*(-parseInt(_0x232c82(0x213))/0x9);if(_0x3a0866===_0x27bf80)break;else _0x41b6d4['push'](_0x41b6d4['shift']());}catch(_0x20689e){_0x41b6d4['push'](_0x41b6d4['shift']());}}}(a117_0x1480,0xcd0cb));import a117_0x245bc0 from'chalk';import a117_0x33dda3 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';function a117_0x1480(){const _0x52943e=['mcpServers','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','Step\x201/7:\x20Migrating\x20config...','step','.cursor/mcp.json','\x20(backup:\x20','status','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','[\x22@lovrabet/sdk\x22]:\x20','white','exit\x20','bold','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','.claude/skills/lovrabet','args','\x20removed\x20(','Install\x20new\x20skill','push','oldPath','sdkUpgrade','993505rgxDWR','entries','parse','none\x20found','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','no\x20matching\x20entry\x20found','values','===\x20Upgrade\x20Summary\x20===','\x20→\x20latest','\x20\x20\x20\x20\x20\x20\x20','red','succeed','.bak','.lovrabet','\x20removed','start','Config\x20migration','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','gray','string','join','Remove\x20legacy\x20artifacts','Remove\x20.lovrabet/','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','@lovrabet/dataset-mcp-server','fail','yes','lovrabet/lovrabet-skill\x20removed','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','stringify','Upgrade\x20@lovrabet/sdk','24365400cAfRCH','files','CANCEL','skipped','Skill\x20swap:','package.json','not\x20needed','Config\x20file:','object','label','removed\x20','lovrabet/rabetbase\x20installed\x20globally','.cursor/rules/lovrabet_rules.mdc','oldArtifacts','utf8','dependencies','611165xFZfxL','Step\x204/7:\x20MCP\x20config\x20—\x20','some','not\x20found\x20or\x20already\x20at\x20latest','devDependencies','Legacy\x20artifacts:','MCP\x20config:','@lovrabet/sdk:','FAIL','green','cyan','needed','Remove\x20old\x20skill','configMigration','done','oldMcpConfig','filter','not\x20found\x20(will\x20create)','Clean\x20MCP\x20config','keys','info','length','log','already\x20exists\x20(will\x20merge)','Step\x201/7:\x20Config\x20migration\x20—\x20','yellow','inherit','failed','\x20\x20New\x20config\x20(.rabetbase.json):\x20','message','latest','Upgrade\x20cancelled.','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','Upgrade\x20completed\x20successfully!','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','undefined','error','isDirectory','@lovrabet/sdk','cwd','5824568nONWIl','9JceBgS','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','isArray','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','detail','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','\x20\x20Step\x20','\x20\x20npm\x20install','no\x20legacy\x20entry','\x20→\x20','\x20\x20#\x20or','6qYVApY','1706208UwyRXp','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','hasNewConfig','path','1247410HCwYPX','no\x20legacy\x20config\x20found','\x20\x20Fields\x20to\x20migrate:\x20','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','2076201rBiYZC'];a117_0x1480=function(){return _0x52943e;};return a117_0x1480();}const LEGACY_CONFIG_NAMES=CONFIG_NAMES[a117_0x143f15(0x1fa)](_0x167dac=>_0x167dac!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x5bda95){const _0x1573da=a117_0x143f15,_0x447ca0=[];for(const _0xfd6fcd of Object[_0x1573da(0x242)](CORE_IDE_CONFIGS)){if(_0xfd6fcd[_0x1573da(0x1db)])for(const _0x55afc5 of _0xfd6fcd[_0x1573da(0x1db)]){_0x447ca0[_0x1573da(0x239)](resolve(_0x5bda95,_0x55afc5[_0x1573da(0x222)]));}}return _0x447ca0;}function analyse(_0x4208ad){const _0x45f9ee=a117_0x143f15;let _0x4f3f10=null;const _0x57b35f=resolve(_0x4208ad,NEW_CONFIG_NAME),_0x265c55=existsSync(_0x57b35f);for(const _0x3a3b94 of LEGACY_CONFIG_NAMES){const _0x38ceb5=resolve(_0x4208ad,_0x3a3b94);if(existsSync(_0x38ceb5)){const _0x52e242=readConfigFile(_0x38ceb5),_0x756342=Object[_0x45f9ee(0x1fd)](_0x52e242)[_0x45f9ee(0x1fa)](_0x2d73db=>typeof _0x52e242[_0x2d73db]!==_0x45f9ee(0x20d));_0x4f3f10={'oldPath':_0x38ceb5,'hasNewConfig':_0x265c55,'fields':_0x756342};break;}}const _0x58884b=[],_0x16d22c=resolve(_0x4208ad,_0x45f9ee(0x249));if(existsSync(_0x16d22c))_0x58884b[_0x45f9ee(0x239)](_0x16d22c);const _0x53e308=resolve(_0x4208ad,_0x45f9ee(0x1e6));if(existsSync(_0x53e308))_0x58884b[_0x45f9ee(0x239)](_0x53e308);const _0xfaceaf=resolve(_0x4208ad,_0x45f9ee(0x235));if(existsSync(_0xfaceaf))_0x58884b[_0x45f9ee(0x239)](_0xfaceaf);for(const _0x40bdb4 of collectIdeSkillFiles(_0x4208ad)){if(existsSync(_0x40bdb4))_0x58884b[_0x45f9ee(0x239)](_0x40bdb4);}let _0x1ace58=null;const _0x16a943=resolve(_0x4208ad,_0x45f9ee(0x22c));if(existsSync(_0x16a943))try{const _0xf12f2f=JSON[_0x45f9ee(0x23e)](readFileSync(_0x16a943,_0x45f9ee(0x1e8)));if(_0xf12f2f?.['mcpServers']&&typeof _0xf12f2f[_0x45f9ee(0x228)]===_0x45f9ee(0x1e2)){const _0x20a1af=[];for(const [_0x39b8d0,_0x5e5e9c]of Object['entries'](_0xf12f2f[_0x45f9ee(0x228)])){const _0x54a3f1=_0x5e5e9c;_0x54a3f1?.[_0x45f9ee(0x236)]&&Array[_0x45f9ee(0x215)](_0x54a3f1[_0x45f9ee(0x236)])&&_0x54a3f1[_0x45f9ee(0x236)][_0x45f9ee(0x1ec)](_0x1b2fa7=>typeof _0x1b2fa7===_0x45f9ee(0x1ce)&&_0x1b2fa7['includes']('@lovrabet/dataset-mcp-server'))&&_0x20a1af[_0x45f9ee(0x239)](_0x39b8d0);}_0x20a1af[_0x45f9ee(0x1ff)]>0x0&&(_0x1ace58={'path':_0x16a943,'keys':_0x20a1af});}}catch{}const _0x2f727e=_0x58884b[_0x45f9ee(0x1ff)]>0x0||_0x4f3f10!==null;let _0x2ddf0a=null;const _0xe498b2=resolve(_0x4208ad,_0x45f9ee(0x1df));if(existsSync(_0xe498b2))try{const _0x2b5586=JSON['parse'](readFileSync(_0xe498b2,_0x45f9ee(0x1e8)));for(const _0x20e23e of[_0x45f9ee(0x1e9),_0x45f9ee(0x1ee)]){const _0x138431=_0x2b5586?.[_0x20e23e]?.[_0x45f9ee(0x210)];if(typeof _0x138431===_0x45f9ee(0x1ce)){_0x138431!==_0x45f9ee(0x208)&&(_0x2ddf0a={'pkgPath':_0xe498b2,'currentVersion':_0x138431,'field':_0x20e23e});break;}}}catch{}return{'configMigration':_0x4f3f10,'oldArtifacts':_0x58884b,'oldMcpConfig':_0x1ace58,'needsSkillSwap':_0x2f727e,'sdkUpgrade':_0x2ddf0a};}function a117_0x1695(_0x1cf228,_0x14c8b9){_0x1cf228=_0x1cf228-0x1cd;const _0x1480e3=a117_0x1480();let _0x1695f2=_0x1480e3[_0x1cf228];return _0x1695f2;}function printReport(_0x1904f0){const _0x556c86=a117_0x143f15,{configMigration:_0x1c1e8b,oldArtifacts:_0x22a381,oldMcpConfig:_0x5db8d6,needsSkillSwap:_0x2ea57b}=_0x1904f0;console[_0x556c86(0x200)](''),console[_0x556c86(0x200)](a117_0x245bc0[_0x556c86(0x233)]('===\x20Upgrade\x20Analysis\x20===')),console['log']('');_0x1c1e8b?(console[_0x556c86(0x200)](a117_0x245bc0[_0x556c86(0x1f4)](_0x556c86(0x1e1))+('\x20\x20'+a117_0x245bc0['yellow'](_0x1c1e8b['oldPath']))),console[_0x556c86(0x200)](_0x556c86(0x206)+(_0x1c1e8b[_0x556c86(0x221)]?a117_0x245bc0[_0x556c86(0x1f3)](_0x556c86(0x201)):a117_0x245bc0[_0x556c86(0x1cd)](_0x556c86(0x1fb)))),console[_0x556c86(0x200)](_0x556c86(0x225)+_0x1c1e8b['fields'][_0x556c86(0x1cf)](',\x20')),console[_0x556c86(0x200)](_0x556c86(0x218))):console[_0x556c86(0x200)](a117_0x245bc0[_0x556c86(0x1f4)](_0x556c86(0x1e1))+'\x20\x20'+a117_0x245bc0[_0x556c86(0x1cd)](_0x556c86(0x224)));console['log']('');if(_0x22a381[_0x556c86(0x1ff)]>0x0){console[_0x556c86(0x200)](a117_0x245bc0[_0x556c86(0x1f4)]('Legacy\x20artifacts:'));for(const _0x50fc40 of _0x22a381){console[_0x556c86(0x200)]('\x20\x20'+a117_0x245bc0[_0x556c86(0x246)]('FOUND')+'\x20\x20'+_0x50fc40);}console[_0x556c86(0x200)]('\x20\x20Action:\x20delete');}else console[_0x556c86(0x200)](a117_0x245bc0[_0x556c86(0x1f4)](_0x556c86(0x1ef))+'\x20\x20'+a117_0x245bc0[_0x556c86(0x1cd)](_0x556c86(0x23f)));console[_0x556c86(0x200)]('');_0x5db8d6?(console[_0x556c86(0x200)](a117_0x245bc0[_0x556c86(0x1f4)](_0x556c86(0x1f0))+('\x20\x20'+a117_0x245bc0[_0x556c86(0x203)](_0x5db8d6[_0x556c86(0x222)])+'\x20→\x20keys:\x20'+_0x5db8d6[_0x556c86(0x1fd)][_0x556c86(0x1cf)](',\x20'))),console['log'](_0x556c86(0x214))):console['log'](a117_0x245bc0[_0x556c86(0x1f4)]('MCP\x20config:')+'\x20\x20'+a117_0x245bc0[_0x556c86(0x1cd)](_0x556c86(0x21b)));console['log'](''),console[_0x556c86(0x200)](a117_0x245bc0[_0x556c86(0x1f4)](_0x556c86(0x1de))+('\x20\x20'+(_0x2ea57b?a117_0x245bc0['yellow'](_0x556c86(0x1f5)):a117_0x245bc0['green'](_0x556c86(0x1e0)))));_0x2ea57b&&console['log'](_0x556c86(0x1d7)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x556c86(0x200)]('');if(_0x1904f0[_0x556c86(0x23b)]){const {currentVersion:_0x4c921e,field:_0x10797c,pkgPath:_0xb72cfe}=_0x1904f0[_0x556c86(0x23b)];console[_0x556c86(0x200)](a117_0x245bc0['cyan'](_0x556c86(0x1f1))+('\x20\x20'+a117_0x245bc0['yellow'](_0xb72cfe))),console[_0x556c86(0x200)]('\x20\x20Current\x20version\x20in\x20'+_0x10797c+':\x20'+a117_0x245bc0['yellow'](_0x4c921e)+_0x556c86(0x21c)+a117_0x245bc0[_0x556c86(0x1f3)](_0x556c86(0x208))),console[_0x556c86(0x200)]('\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)');}else console[_0x556c86(0x200)](a117_0x245bc0['cyan'](_0x556c86(0x1f1))+'\x20\x20'+a117_0x245bc0['gray'](_0x556c86(0x1ed)));console['log']('');}function execConfigMigration(_0x2d9893,_0x2adc12){const _0x1937df=a117_0x143f15,{configMigration:_0x59e323}=_0x2d9893;if(!_0x59e323?.[_0x1937df(0x23a)])return{'step':0x1,'label':_0x1937df(0x24c),'ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x345cdc=readConfigFile(_0x59e323[_0x1937df(0x23a)]),_0xc9269c=resolve(_0x2adc12,NEW_CONFIG_NAME),_0x1b8e1a=_0x59e323[_0x1937df(0x221)]?readConfigFile(_0xc9269c):{};for(const [_0xe92445,_0x2ce919]of Object[_0x1937df(0x23d)](_0x345cdc)){!(_0xe92445 in _0x1b8e1a)&&(_0x1b8e1a[_0xe92445]=_0x2ce919);}writeConfigFile(_0xc9269c,_0x1b8e1a);const _0x42e48e=_0x59e323[_0x1937df(0x23a)]+_0x1937df(0x248);return renameSync(_0x59e323['oldPath'],_0x42e48e),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x59e323[_0x1937df(0x23a)]+'\x20→\x20'+_0xc9269c+_0x1937df(0x22d)+_0x42e48e+')'};}function execRemoveOldArtifacts(_0x489b32){const _0x4232fd=a117_0x143f15,_0x5426a9=[];for(const _0x2dd8e4 of _0x489b32){try{if(!existsSync(_0x2dd8e4))continue;const _0x43f706=tryStat(_0x2dd8e4);_0x43f706?.[_0x4232fd(0x20f)]()?rmSync(_0x2dd8e4,{'recursive':!![],'force':!![]}):unlinkSync(_0x2dd8e4);}catch(_0x4c3aee){_0x5426a9[_0x4232fd(0x239)](_0x2dd8e4+':\x20'+_0x4c3aee[_0x4232fd(0x207)]);}}return{'step':0x3,'label':_0x4232fd(0x1d0),'ok':_0x5426a9[_0x4232fd(0x1ff)]===0x0,'detail':_0x5426a9[_0x4232fd(0x1ff)]>0x0?_0x489b32[_0x4232fd(0x1ff)]-_0x5426a9[_0x4232fd(0x1ff)]+'/'+_0x489b32[_0x4232fd(0x1ff)]+_0x4232fd(0x237)+_0x5426a9['join'](';\x20')+')':_0x489b32[_0x4232fd(0x1ff)]+_0x4232fd(0x24a)};}function execCleanMcp(_0x4f7bfc){const _0x4ccff2=a117_0x143f15;if(!_0x4f7bfc[_0x4ccff2(0x1f9)])return{'step':0x4,'label':_0x4ccff2(0x1fc),'ok':!![],'detail':_0x4ccff2(0x1dd)};try{const _0x2cf854=readFileSync(_0x4f7bfc[_0x4ccff2(0x1f9)][_0x4ccff2(0x222)],_0x4ccff2(0x1e8)),_0x5d41d6=JSON['parse'](_0x2cf854);if(_0x5d41d6?.[_0x4ccff2(0x228)]&&typeof _0x5d41d6[_0x4ccff2(0x228)]===_0x4ccff2(0x1e2)){const _0x296235=[];for(const [_0x2cef77,_0x609dfa]of Object['entries'](_0x5d41d6['mcpServers'])){_0x609dfa?.['args']&&Array[_0x4ccff2(0x215)](_0x609dfa[_0x4ccff2(0x236)])&&_0x609dfa[_0x4ccff2(0x236)]['some'](_0x5560e2=>typeof _0x5560e2===_0x4ccff2(0x1ce)&&_0x5560e2['includes'](_0x4ccff2(0x1d3)))&&_0x296235[_0x4ccff2(0x239)](_0x2cef77);}for(const _0x540747 of _0x296235){delete _0x5d41d6['mcpServers'][_0x540747];}return _0x296235[_0x4ccff2(0x1ff)]>0x0&&writeFileSync(_0x4f7bfc[_0x4ccff2(0x1f9)][_0x4ccff2(0x222)],JSON[_0x4ccff2(0x1d8)](_0x5d41d6,null,0x2)+'\x0a',_0x4ccff2(0x1e8)),{'step':0x4,'label':_0x4ccff2(0x1fc),'ok':!![],'detail':_0x4ccff2(0x1e4)+_0x296235[_0x4ccff2(0x1cf)](',\x20')+'\x20from\x20'+_0x4f7bfc[_0x4ccff2(0x1f9)][_0x4ccff2(0x222)]};}return{'step':0x4,'label':_0x4ccff2(0x1fc),'ok':!![],'detail':_0x4ccff2(0x241)};}catch(_0x37ead8){return{'step':0x4,'label':_0x4ccff2(0x1fc),'ok':![],'detail':_0x37ead8[_0x4ccff2(0x207)]};}}function execSkillsRemove(_0x76b7ee,_0x353c06){const _0x1d65b7=a117_0x143f15,_0x3247cd=runNpxSkillsRemove(_0x76b7ee,{'stdio':_0x1d65b7(0x204),'yes':_0x353c06});return{'step':0x5,'label':_0x1d65b7(0x1f6),'ok':_0x3247cd['ok'],'detail':_0x3247cd['ok']?_0x1d65b7(0x1d6):_0x3247cd[_0x1d65b7(0x20e)]??_0x1d65b7(0x232)+_0x3247cd[_0x1d65b7(0x22e)]};}function execSkillsAdd(_0x29f310,_0x2a0ac6){const _0x13fc55=a117_0x143f15,_0x505c2e=runNpxSkillsAddGlobal(_0x29f310,'lovrabet/rabetbase',{'stdio':_0x13fc55(0x204),'yes':_0x2a0ac6});return{'step':0x6,'label':_0x13fc55(0x238),'ok':_0x505c2e['ok'],'detail':_0x505c2e['ok']?_0x13fc55(0x1e5):_0x505c2e[_0x13fc55(0x20e)]??_0x13fc55(0x232)+_0x505c2e[_0x13fc55(0x22e)]};}function execUpgradeSdk(_0x384677){const _0x34feef=a117_0x143f15;if(!_0x384677[_0x34feef(0x23b)])return{'step':0x7,'label':_0x34feef(0x1d9),'ok':!![],'detail':'skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)'};const {pkgPath:_0x3f3558,currentVersion:_0x332cad,field:_0x31d0fc}=_0x384677[_0x34feef(0x23b)];try{const _0x4e48e6=readFileSync(_0x3f3558,_0x34feef(0x1e8)),_0x5b76e2=JSON['parse'](_0x4e48e6);return _0x5b76e2[_0x31d0fc][_0x34feef(0x210)]=_0x34feef(0x208),writeFileSync(_0x3f3558,JSON[_0x34feef(0x1d8)](_0x5b76e2,null,0x2)+'\x0a',_0x34feef(0x1e8)),{'step':0x7,'label':_0x34feef(0x1d9),'ok':!![],'detail':_0x31d0fc+_0x34feef(0x230)+_0x332cad+_0x34feef(0x244)};}catch(_0x5901a3){return{'step':0x7,'label':_0x34feef(0x1d9),'ok':![],'detail':_0x5901a3[_0x34feef(0x207)]};}}function tryStat(_0x272c47){try{return statSync(_0x272c47);}catch{return undefined;}}function printSummary(_0x53ba2c){const _0x43b9ab=a117_0x143f15;console[_0x43b9ab(0x200)](''),console[_0x43b9ab(0x200)](a117_0x245bc0[_0x43b9ab(0x233)](_0x43b9ab(0x243))),console[_0x43b9ab(0x200)]('');for(const _0xa8141b of _0x53ba2c){const _0x29617e=_0xa8141b['ok']?a117_0x245bc0[_0x43b9ab(0x1f3)]('OK'):a117_0x245bc0['red'](_0x43b9ab(0x1f2));console[_0x43b9ab(0x200)]('\x20\x20'+_0x29617e+_0x43b9ab(0x219)+_0xa8141b[_0x43b9ab(0x22b)]+':\x20'+_0xa8141b[_0x43b9ab(0x1e3)]);if(_0xa8141b['detail'])console[_0x43b9ab(0x200)](_0x43b9ab(0x245)+a117_0x245bc0[_0x43b9ab(0x1cd)](_0xa8141b[_0x43b9ab(0x217)]));}console['log']('');}export async function upgradeApp(_0x1799eb,_0x38a075){const _0x4cd161=a117_0x143f15,_0x4b9483=process[_0x4cd161(0x211)](),_0x36ef27=analyse(_0x4b9483),_0xbfb3ab=!_0x36ef27[_0x4cd161(0x1f7)]&&_0x36ef27[_0x4cd161(0x1e7)]['length']===0x0&&!_0x36ef27[_0x4cd161(0x1f9)]&&!_0x36ef27['needsSkillSwap']&&!_0x36ef27[_0x4cd161(0x23b)];if(_0xbfb3ab){console[_0x4cd161(0x200)](a117_0x245bc0[_0x4cd161(0x1f3)](_0x4cd161(0x234)));return;}printReport(_0x36ef27);const _0x1cdc41=!!(_0x38a075[_0x4cd161(0x1d5)]||_0x38a075['Y']||_0x1799eb);if(!_0x1cdc41)try{const _0x248263=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x248263){console['log'](a117_0x245bc0[_0x4cd161(0x1cd)](_0x4cd161(0x209)));return;}}catch(_0x5950da){if(_0x5950da?.[_0x4cd161(0x207)]===_0x4cd161(0x1dc)){console[_0x4cd161(0x200)](a117_0x245bc0[_0x4cd161(0x1cd)](_0x4cd161(0x209)));return;}throw _0x5950da;}const _0x32956a=[],_0x410b54=a117_0x33dda3({'text':_0x4cd161(0x22a),'color':_0x4cd161(0x1f4)})['start'](),_0x2dafb6=execConfigMigration(_0x36ef27,_0x4b9483);_0x32956a[_0x4cd161(0x239)](_0x2dafb6),_0x410b54[_0x2dafb6['ok']?'succeed':_0x4cd161(0x1d4)](_0x4cd161(0x202)+(_0x2dafb6[_0x4cd161(0x217)]??(_0x2dafb6['ok']?_0x4cd161(0x1f8):_0x4cd161(0x205))));const _0x5f2417=resolve(_0x4b9483,'.lovrabet'),_0x4cf0bc=a117_0x33dda3({'text':_0x4cd161(0x229),'color':'cyan'})['start']();if(existsSync(_0x5f2417))try{rmSync(_0x5f2417,{'recursive':!![],'force':!![]}),_0x4cf0bc[_0x4cd161(0x247)](_0x4cd161(0x220)),_0x32956a['push']({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![]});}catch(_0x3dbdce){_0x4cf0bc[_0x4cd161(0x1d4)](_0x4cd161(0x20c)+_0x3dbdce[_0x4cd161(0x207)]),_0x32956a[_0x4cd161(0x239)]({'step':0x2,'label':_0x4cd161(0x1d1),'ok':![],'detail':_0x3dbdce[_0x4cd161(0x207)]});}else _0x4cf0bc[_0x4cd161(0x1fe)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x32956a[_0x4cd161(0x239)]({'step':0x2,'label':_0x4cd161(0x1d1),'ok':!![],'detail':_0x4cd161(0x1dd)});const _0x41872b=a117_0x33dda3({'text':_0x4cd161(0x216),'color':_0x4cd161(0x1f4)})[_0x4cd161(0x24b)](),_0x9367d2=execRemoveOldArtifacts(_0x36ef27[_0x4cd161(0x1e7)]);_0x32956a['push'](_0x9367d2),_0x41872b[_0x9367d2['ok']?_0x4cd161(0x247):_0x4cd161(0x1d4)](_0x4cd161(0x20a)+(_0x9367d2[_0x4cd161(0x217)]??(_0x9367d2['ok']?_0x4cd161(0x1f8):_0x4cd161(0x205))));const _0x36dee7=a117_0x33dda3({'text':'Step\x204/7:\x20Cleaning\x20MCP\x20config...','color':_0x4cd161(0x1f4)})[_0x4cd161(0x24b)](),_0x5c8349=execCleanMcp(_0x36ef27);_0x32956a['push'](_0x5c8349),_0x36dee7[_0x5c8349['ok']?_0x4cd161(0x247):'fail'](_0x4cd161(0x1eb)+(_0x5c8349[_0x4cd161(0x217)]??(_0x5c8349['ok']?'done':_0x4cd161(0x205))));const _0x46add1=a117_0x33dda3({'text':'Step\x205/7:\x20Removing\x20old\x20skill...','color':'cyan'})[_0x4cd161(0x24b)](),_0x33867e=execSkillsRemove(_0x4b9483,_0x1cdc41);_0x32956a[_0x4cd161(0x239)](_0x33867e),_0x46add1[_0x33867e['ok']?_0x4cd161(0x247):'fail']('Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20'+(_0x33867e[_0x4cd161(0x217)]??(_0x33867e['ok']?_0x4cd161(0x1f8):_0x4cd161(0x205))));const _0x28b1db=a117_0x33dda3({'text':'Step\x206/7:\x20Installing\x20new\x20skill...','color':_0x4cd161(0x1f4)})[_0x4cd161(0x24b)](),_0x43c714=execSkillsAdd(_0x4b9483,_0x1cdc41);_0x32956a[_0x4cd161(0x239)](_0x43c714),_0x28b1db[_0x43c714['ok']?_0x4cd161(0x247):'fail'](_0x4cd161(0x22f)+(_0x43c714['detail']??(_0x43c714['ok']?_0x4cd161(0x1f8):_0x4cd161(0x205))));const _0x3dbc15=a117_0x33dda3({'text':_0x4cd161(0x240),'color':_0x4cd161(0x1f4)})[_0x4cd161(0x24b)](),_0x2a5094=execUpgradeSdk(_0x36ef27);_0x32956a[_0x4cd161(0x239)](_0x2a5094),_0x3dbc15[_0x2a5094['ok']?_0x4cd161(0x247):_0x4cd161(0x1d4)](_0x4cd161(0x1d2)+(_0x2a5094[_0x4cd161(0x217)]??(_0x2a5094['ok']?_0x4cd161(0x1f8):_0x4cd161(0x205)))),printSummary(_0x32956a);const _0x4146dc=_0x32956a[_0x4cd161(0x1ec)](_0x1bb185=>!_0x1bb185['ok']);_0x4146dc?console[_0x4cd161(0x200)](a117_0x245bc0['yellow'](_0x4cd161(0x226))):console[_0x4cd161(0x200)](a117_0x245bc0[_0x4cd161(0x1f3)](_0x4cd161(0x20b))),_0x2a5094['ok']&&_0x36ef27[_0x4cd161(0x23b)]&&(console[_0x4cd161(0x200)](''),console['log'](a117_0x245bc0[_0x4cd161(0x233)][_0x4cd161(0x1f4)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x4cd161(0x200)](a117_0x245bc0[_0x4cd161(0x1f4)](_0x4cd161(0x24d))),console[_0x4cd161(0x200)](''),console[_0x4cd161(0x200)](a117_0x245bc0[_0x4cd161(0x231)](_0x4cd161(0x21a))),console[_0x4cd161(0x200)](a117_0x245bc0['white'](_0x4cd161(0x21d))),console[_0x4cd161(0x200)](a117_0x245bc0[_0x4cd161(0x231)]('\x20\x20bun\x20install')),console[_0x4cd161(0x200)](''));}
|
|
1
|
+
function a117_0x4c5e(){const _0x518bfc=['MCP\x20config:','filter','Legacy\x20artifacts:','undefined','125880VkgfeL','yes','\x20\x20Step\x20','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','needed','join','error','needsSkillSwap','green','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','not\x20found\x20(will\x20create)','\x20→\x20','660918ffSZav','oldMcpConfig','log','utf8','length','\x20from\x20','removed\x20','cwd','not\x20found\x20or\x20already\x20at\x20latest','===\x20Upgrade\x20Summary\x20===','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','entries','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','Step\x201/7:\x20Migrating\x20config...','Config\x20file:','Skill\x20swap:','label','.cursor/mcp.json','object','fields','parse','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','step','hasNewConfig','message','no\x20matching\x20entry\x20found','isDirectory','Remove\x20legacy\x20artifacts','skipped','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','string','configMigration','\x20\x20bun\x20install','@lovrabet/sdk','some','[\x22@lovrabet/sdk\x22]:\x20','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','Upgrade\x20@lovrabet/sdk','red','Step\x204/7:\x20MCP\x20config\x20—\x20','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','6201315EHQfrR','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','inherit','Step\x204/7:\x20Cleaning\x20MCP\x20config...','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','4107936qxDayb','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','Install\x20new\x20skill','gray','8haeyLZ','info','CANCEL','\x20\x20Action:\x20delete','100823NcyMji','latest','10PsNsfa','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','4uKgLOE','package.json','stringify','\x20→\x20keys:\x20','mcpServers','.bak','devDependencies','cyan','bold','Step\x205/7:\x20Removing\x20old\x20skill...','no\x20legacy\x20config\x20found','oldPath','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','keys','Config\x20migration','Upgrade\x20cancelled.','fail','path','succeed','.cursor/rules/lovrabet_rules.mdc','16kFFxtN','start','3877890mqFsWV','includes','\x20(backup:\x20','lovrabet/rabetbase','Proceed\x20with\x20upgrade?','Step\x206/7:\x20Installing\x20new\x20skill...','done','Remove\x20old\x20skill','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','already\x20exists\x20(will\x20merge)','push','sdkUpgrade','status','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','Clean\x20MCP\x20config','\x20→\x20latest','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','isArray','yellow','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','Remove\x20.lovrabet/','lovrabet/rabetbase\x20installed\x20globally','white','skipped\x20(no\x20legacy\x20config)','@lovrabet/sdk:','.lovrabet','\x20\x20\x20\x20\x20\x20\x20','detail','14516799rjUyMg','files','exit\x20','args','@lovrabet/dataset-mcp-server','failed'];a117_0x4c5e=function(){return _0x518bfc;};return a117_0x4c5e();}const a117_0x15b06d=a117_0x2015;(function(_0x56a9aa,_0x47fabe){const _0x54d6fc=a117_0x2015,_0x40e668=_0x56a9aa();while(!![]){try{const _0xfdd4db=-parseInt(_0x54d6fc(0x14b))/0x1+-parseInt(_0x54d6fc(0x147))/0x2*(parseInt(_0x54d6fc(0x115))/0x3)+parseInt(_0x54d6fc(0x14f))/0x4*(parseInt(_0x54d6fc(0xe3))/0x5)+-parseInt(_0x54d6fc(0x109))/0x6+-parseInt(_0x54d6fc(0x143))/0x7*(parseInt(_0x54d6fc(0xe1))/0x8)+parseInt(_0x54d6fc(0x13e))/0x9+parseInt(_0x54d6fc(0x14d))/0xa*(parseInt(_0x54d6fc(0xff))/0xb);if(_0xfdd4db===_0x47fabe)break;else _0x40e668['push'](_0x40e668['shift']());}catch(_0x4eebd1){_0x40e668['push'](_0x40e668['shift']());}}}(a117_0x4c5e,0x9456f));import a117_0x5749c7 from'chalk';import a117_0x4707bc from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';function a117_0x2015(_0x66bec1,_0x1ca8f4){_0x66bec1=_0x66bec1-0xdc;const _0x4c5ea0=a117_0x4c5e();let _0x2015f6=_0x4c5ea0[_0x66bec1];return _0x2015f6;}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[a117_0x15b06d(0x106)](_0x69b8e8=>_0x69b8e8!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x319b47){const _0x1825ba=a117_0x15b06d,_0x1ddb4a=[];for(const _0x33025a of Object['values'](CORE_IDE_CONFIGS)){if(_0x33025a[_0x1825ba(0x100)])for(const _0x28ea5d of _0x33025a[_0x1825ba(0x100)]){_0x1ddb4a[_0x1825ba(0xed)](resolve(_0x319b47,_0x28ea5d[_0x1825ba(0xde)]));}}return _0x1ddb4a;}function analyse(_0xd88035){const _0x30b034=a117_0x15b06d;let _0x21db6f=null;const _0x358509=resolve(_0xd88035,NEW_CONFIG_NAME),_0x52b36a=existsSync(_0x358509);for(const _0x47b471 of LEGACY_CONFIG_NAMES){const _0x59a46e=resolve(_0xd88035,_0x47b471);if(existsSync(_0x59a46e)){const _0x65043a=readConfigFile(_0x59a46e),_0x34f88f=Object[_0x30b034(0x15c)](_0x65043a)['filter'](_0x5f4501=>typeof _0x65043a[_0x5f4501]!==_0x30b034(0x108));_0x21db6f={'oldPath':_0x59a46e,'hasNewConfig':_0x52b36a,'fields':_0x34f88f};break;}}const _0x2f606b=[],_0x393148=resolve(_0xd88035,'.lovrabet');if(existsSync(_0x393148))_0x2f606b[_0x30b034(0xed)](_0x393148);const _0x251fcd=resolve(_0xd88035,_0x30b034(0xe0));if(existsSync(_0x251fcd))_0x2f606b['push'](_0x251fcd);const _0x386860=resolve(_0xd88035,'.claude/skills/lovrabet');if(existsSync(_0x386860))_0x2f606b['push'](_0x386860);for(const _0x460319 of collectIdeSkillFiles(_0xd88035)){if(existsSync(_0x460319))_0x2f606b[_0x30b034(0xed)](_0x460319);}let _0x111b60=null;const _0x44afc4=resolve(_0xd88035,_0x30b034(0x126));if(existsSync(_0x44afc4))try{const _0x14d181=JSON[_0x30b034(0x129)](readFileSync(_0x44afc4,_0x30b034(0x118)));if(_0x14d181?.[_0x30b034(0x153)]&&typeof _0x14d181[_0x30b034(0x153)]===_0x30b034(0x127)){const _0x512b42=[];for(const [_0x1c8565,_0xfc0bc5]of Object[_0x30b034(0x120)](_0x14d181[_0x30b034(0x153)])){const _0x31cb28=_0xfc0bc5;_0x31cb28?.[_0x30b034(0x102)]&&Array[_0x30b034(0xf4)](_0x31cb28['args'])&&_0x31cb28['args'][_0x30b034(0x137)](_0x3f7c7b=>typeof _0x3f7c7b===_0x30b034(0x133)&&_0x3f7c7b[_0x30b034(0xe4)](_0x30b034(0x103)))&&_0x512b42['push'](_0x1c8565);}_0x512b42[_0x30b034(0x119)]>0x0&&(_0x111b60={'path':_0x44afc4,'keys':_0x512b42});}}catch{}const _0xfbe245=_0x2f606b[_0x30b034(0x119)]>0x0||_0x21db6f!==null;let _0x2cd5ac=null;const _0x21b3ae=resolve(_0xd88035,_0x30b034(0x150));if(existsSync(_0x21b3ae))try{const _0x1e3375=JSON[_0x30b034(0x129)](readFileSync(_0x21b3ae,_0x30b034(0x118)));for(const _0x168fc7 of['dependencies',_0x30b034(0x155)]){const _0x479399=_0x1e3375?.[_0x168fc7]?.[_0x30b034(0x136)];if(typeof _0x479399===_0x30b034(0x133)){_0x479399!==_0x30b034(0x14c)&&(_0x2cd5ac={'pkgPath':_0x21b3ae,'currentVersion':_0x479399,'field':_0x168fc7});break;}}}catch{}return{'configMigration':_0x21db6f,'oldArtifacts':_0x2f606b,'oldMcpConfig':_0x111b60,'needsSkillSwap':_0xfbe245,'sdkUpgrade':_0x2cd5ac};}function printReport(_0x50bc05){const _0x69d59d=a117_0x15b06d,{configMigration:_0x18ef91,oldArtifacts:_0xa5e103,oldMcpConfig:_0x18ec55,needsSkillSwap:_0x3cef73}=_0x50bc05;console[_0x69d59d(0x117)](''),console['log'](a117_0x5749c7['bold']('===\x20Upgrade\x20Analysis\x20===')),console[_0x69d59d(0x117)]('');_0x18ef91?(console[_0x69d59d(0x117)](a117_0x5749c7[_0x69d59d(0x156)](_0x69d59d(0x123))+('\x20\x20'+a117_0x5749c7[_0x69d59d(0xf5)](_0x18ef91[_0x69d59d(0x15a)]))),console[_0x69d59d(0x117)]('\x20\x20New\x20config\x20(.rabetbase.json):\x20'+(_0x18ef91['hasNewConfig']?a117_0x5749c7[_0x69d59d(0x111)](_0x69d59d(0xec)):a117_0x5749c7[_0x69d59d(0x146)](_0x69d59d(0x113)))),console[_0x69d59d(0x117)]('\x20\x20Fields\x20to\x20migrate:\x20'+_0x18ef91[_0x69d59d(0x128)][_0x69d59d(0x10e)](',\x20')),console[_0x69d59d(0x117)](_0x69d59d(0x112))):console['log'](a117_0x5749c7[_0x69d59d(0x156)](_0x69d59d(0x123))+'\x20\x20'+a117_0x5749c7[_0x69d59d(0x146)](_0x69d59d(0x159)));console[_0x69d59d(0x117)]('');if(_0xa5e103[_0x69d59d(0x119)]>0x0){console[_0x69d59d(0x117)](a117_0x5749c7[_0x69d59d(0x156)](_0x69d59d(0x107)));for(const _0x2b73e3 of _0xa5e103){console['log']('\x20\x20'+a117_0x5749c7[_0x69d59d(0x13b)]('FOUND')+'\x20\x20'+_0x2b73e3);}console[_0x69d59d(0x117)](_0x69d59d(0x14a));}else console['log'](a117_0x5749c7[_0x69d59d(0x156)](_0x69d59d(0x107))+'\x20\x20'+a117_0x5749c7[_0x69d59d(0x146)]('none\x20found'));console[_0x69d59d(0x117)]('');_0x18ec55?(console[_0x69d59d(0x117)](a117_0x5749c7[_0x69d59d(0x156)]('MCP\x20config:')+('\x20\x20'+a117_0x5749c7[_0x69d59d(0xf5)](_0x18ec55['path'])+_0x69d59d(0x152)+_0x18ec55['keys'][_0x69d59d(0x10e)](',\x20'))),console['log'](_0x69d59d(0xf6))):console[_0x69d59d(0x117)](a117_0x5749c7[_0x69d59d(0x156)](_0x69d59d(0x105))+'\x20\x20'+a117_0x5749c7[_0x69d59d(0x146)]('no\x20legacy\x20entry'));console[_0x69d59d(0x117)](''),console[_0x69d59d(0x117)](a117_0x5749c7[_0x69d59d(0x156)](_0x69d59d(0x124))+('\x20\x20'+(_0x3cef73?a117_0x5749c7['yellow'](_0x69d59d(0x10d)):a117_0x5749c7['green']('not\x20needed'))));_0x3cef73&&console[_0x69d59d(0x117)](_0x69d59d(0x15b)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x69d59d(0x117)]('');if(_0x50bc05['sdkUpgrade']){const {currentVersion:_0x4b5475,field:_0xabc0ad,pkgPath:_0x10ec1c}=_0x50bc05[_0x69d59d(0xee)];console[_0x69d59d(0x117)](a117_0x5749c7[_0x69d59d(0x156)](_0x69d59d(0xfb))+('\x20\x20'+a117_0x5749c7[_0x69d59d(0xf5)](_0x10ec1c))),console['log']('\x20\x20Current\x20version\x20in\x20'+_0xabc0ad+':\x20'+a117_0x5749c7[_0x69d59d(0xf5)](_0x4b5475)+'\x20→\x20'+a117_0x5749c7['green']('latest')),console[_0x69d59d(0x117)]('\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)');}else console[_0x69d59d(0x117)](a117_0x5749c7[_0x69d59d(0x156)](_0x69d59d(0xfb))+'\x20\x20'+a117_0x5749c7[_0x69d59d(0x146)](_0x69d59d(0x11d)));console[_0x69d59d(0x117)]('');}function execConfigMigration(_0x5fd4af,_0x304dd7){const _0xd5930b=a117_0x15b06d,{configMigration:_0x2e304c}=_0x5fd4af;if(!_0x2e304c?.[_0xd5930b(0x15a)])return{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0xd5930b(0xfa)};const _0xd4012d=readConfigFile(_0x2e304c[_0xd5930b(0x15a)]),_0x104126=resolve(_0x304dd7,NEW_CONFIG_NAME),_0x5773a7=_0x2e304c[_0xd5930b(0x12c)]?readConfigFile(_0x104126):{};for(const [_0x176bae,_0x5bbb75]of Object[_0xd5930b(0x120)](_0xd4012d)){!(_0x176bae in _0x5773a7)&&(_0x5773a7[_0x176bae]=_0x5bbb75);}writeConfigFile(_0x104126,_0x5773a7);const _0x849e9b=_0x2e304c['oldPath']+_0xd5930b(0x154);return renameSync(_0x2e304c[_0xd5930b(0x15a)],_0x849e9b),{'step':0x1,'label':_0xd5930b(0x15d),'ok':!![],'detail':_0x2e304c[_0xd5930b(0x15a)]+_0xd5930b(0x114)+_0x104126+_0xd5930b(0xe5)+_0x849e9b+')'};}function execRemoveOldArtifacts(_0x47a3e5){const _0x525768=a117_0x15b06d,_0x1a7d60=[];for(const _0x32792e of _0x47a3e5){try{if(!existsSync(_0x32792e))continue;const _0x36116c=tryStat(_0x32792e);_0x36116c?.[_0x525768(0x12f)]()?rmSync(_0x32792e,{'recursive':!![],'force':!![]}):unlinkSync(_0x32792e);}catch(_0x469801){_0x1a7d60[_0x525768(0xed)](_0x32792e+':\x20'+_0x469801['message']);}}return{'step':0x3,'label':_0x525768(0x130),'ok':_0x1a7d60[_0x525768(0x119)]===0x0,'detail':_0x1a7d60[_0x525768(0x119)]>0x0?_0x47a3e5[_0x525768(0x119)]-_0x1a7d60[_0x525768(0x119)]+'/'+_0x47a3e5[_0x525768(0x119)]+'\x20removed\x20('+_0x1a7d60[_0x525768(0x10e)](';\x20')+')':_0x47a3e5[_0x525768(0x119)]+'\x20removed'};}function execCleanMcp(_0x51fcbf){const _0x130044=a117_0x15b06d;if(!_0x51fcbf[_0x130044(0x116)])return{'step':0x4,'label':_0x130044(0xf1),'ok':!![],'detail':_0x130044(0x131)};try{const _0x5cac2=readFileSync(_0x51fcbf['oldMcpConfig'][_0x130044(0xde)],'utf8'),_0x1e6641=JSON['parse'](_0x5cac2);if(_0x1e6641?.['mcpServers']&&typeof _0x1e6641[_0x130044(0x153)]===_0x130044(0x127)){const _0x5951fa=[];for(const [_0x588d41,_0x4de140]of Object[_0x130044(0x120)](_0x1e6641[_0x130044(0x153)])){_0x4de140?.[_0x130044(0x102)]&&Array[_0x130044(0xf4)](_0x4de140[_0x130044(0x102)])&&_0x4de140[_0x130044(0x102)]['some'](_0x14d970=>typeof _0x14d970==='string'&&_0x14d970[_0x130044(0xe4)](_0x130044(0x103)))&&_0x5951fa['push'](_0x588d41);}for(const _0x4fe154 of _0x5951fa){delete _0x1e6641[_0x130044(0x153)][_0x4fe154];}return _0x5951fa[_0x130044(0x119)]>0x0&&writeFileSync(_0x51fcbf[_0x130044(0x116)][_0x130044(0xde)],JSON[_0x130044(0x151)](_0x1e6641,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':_0x130044(0xf1),'ok':!![],'detail':_0x130044(0x11b)+_0x5951fa[_0x130044(0x10e)](',\x20')+_0x130044(0x11a)+_0x51fcbf['oldMcpConfig'][_0x130044(0xde)]};}return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x130044(0x12e)};}catch(_0x35fb0a){return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':![],'detail':_0x35fb0a[_0x130044(0x12d)]};}}function execSkillsRemove(_0x2258ca,_0x5b9234){const _0x5ba326=a117_0x15b06d,_0x3828fc=runNpxSkillsRemove(_0x2258ca,{'stdio':_0x5ba326(0x140),'yes':_0x5b9234});return{'step':0x5,'label':_0x5ba326(0xea),'ok':_0x3828fc['ok'],'detail':_0x3828fc['ok']?'lovrabet/lovrabet-skill\x20removed':_0x3828fc[_0x5ba326(0x10f)]??_0x5ba326(0x101)+_0x3828fc[_0x5ba326(0xef)]};}function execSkillsAdd(_0x5e8039,_0x44d29e){const _0x286c3e=a117_0x15b06d,_0x2f6063=runNpxSkillsAddGlobal(_0x5e8039,_0x286c3e(0xe6),{'stdio':_0x286c3e(0x140),'yes':_0x44d29e});return{'step':0x6,'label':_0x286c3e(0x145),'ok':_0x2f6063['ok'],'detail':_0x2f6063['ok']?_0x286c3e(0xf8):_0x2f6063[_0x286c3e(0x10f)]??'exit\x20'+_0x2f6063['status']};}function execUpgradeSdk(_0xeb8d0b){const _0x400065=a117_0x15b06d;if(!_0xeb8d0b[_0x400065(0xee)])return{'step':0x7,'label':_0x400065(0x13a),'ok':!![],'detail':_0x400065(0x142)};const {pkgPath:_0x4de549,currentVersion:_0xfbffa9,field:_0xb67890}=_0xeb8d0b[_0x400065(0xee)];try{const _0x1c0407=readFileSync(_0x4de549,'utf8'),_0x2e7e86=JSON['parse'](_0x1c0407);return _0x2e7e86[_0xb67890]['@lovrabet/sdk']=_0x400065(0x14c),writeFileSync(_0x4de549,JSON[_0x400065(0x151)](_0x2e7e86,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':_0x400065(0x13a),'ok':!![],'detail':_0xb67890+_0x400065(0x138)+_0xfbffa9+_0x400065(0xf2)};}catch(_0x124a42){return{'step':0x7,'label':_0x400065(0x13a),'ok':![],'detail':_0x124a42[_0x400065(0x12d)]};}}function tryStat(_0x199c74){try{return statSync(_0x199c74);}catch{return undefined;}}function printSummary(_0x74afb7){const _0x421a8e=a117_0x15b06d;console[_0x421a8e(0x117)](''),console[_0x421a8e(0x117)](a117_0x5749c7[_0x421a8e(0x157)](_0x421a8e(0x11e))),console['log']('');for(const _0x45ee97 of _0x74afb7){const _0x40d643=_0x45ee97['ok']?a117_0x5749c7[_0x421a8e(0x111)]('OK'):a117_0x5749c7['red']('FAIL');console[_0x421a8e(0x117)]('\x20\x20'+_0x40d643+_0x421a8e(0x10b)+_0x45ee97[_0x421a8e(0x12b)]+':\x20'+_0x45ee97[_0x421a8e(0x125)]);if(_0x45ee97['detail'])console[_0x421a8e(0x117)](_0x421a8e(0xfd)+a117_0x5749c7['gray'](_0x45ee97[_0x421a8e(0xfe)]));}console[_0x421a8e(0x117)]('');}export async function upgradeApp(_0x50468d,_0x4361e3){const _0x42dd3b=a117_0x15b06d,_0x41417e=process[_0x42dd3b(0x11c)](),_0x746065=analyse(_0x41417e),_0x17e527=!_0x746065[_0x42dd3b(0x134)]&&_0x746065['oldArtifacts'][_0x42dd3b(0x119)]===0x0&&!_0x746065['oldMcpConfig']&&!_0x746065[_0x42dd3b(0x110)]&&!_0x746065[_0x42dd3b(0xee)];if(_0x17e527){console[_0x42dd3b(0x117)](a117_0x5749c7[_0x42dd3b(0x111)](_0x42dd3b(0x10c)));return;}printReport(_0x746065);const _0x57f6a5=!!(_0x4361e3[_0x42dd3b(0x10a)]||_0x4361e3['Y']||_0x50468d);if(!_0x57f6a5)try{const _0x2a72fc=await askConfirm(_0x42dd3b(0xe7));if(!_0x2a72fc){console[_0x42dd3b(0x117)](a117_0x5749c7['gray'](_0x42dd3b(0xdc)));return;}}catch(_0x2b5b5e){if(_0x2b5b5e?.[_0x42dd3b(0x12d)]===_0x42dd3b(0x149)){console[_0x42dd3b(0x117)](a117_0x5749c7[_0x42dd3b(0x146)](_0x42dd3b(0xdc)));return;}throw _0x2b5b5e;}const _0x5f375e=[],_0x1a3339=a117_0x4707bc({'text':_0x42dd3b(0x122),'color':'cyan'})[_0x42dd3b(0xe2)](),_0x53b1eb=execConfigMigration(_0x746065,_0x41417e);_0x5f375e[_0x42dd3b(0xed)](_0x53b1eb),_0x1a3339[_0x53b1eb['ok']?_0x42dd3b(0xdf):_0x42dd3b(0xdd)]('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0x53b1eb['detail']??(_0x53b1eb['ok']?_0x42dd3b(0xe9):_0x42dd3b(0x104))));const _0x5896ae=resolve(_0x41417e,_0x42dd3b(0xfc)),_0x2b407c=a117_0x4707bc({'text':_0x42dd3b(0x144),'color':_0x42dd3b(0x156)})['start']();if(existsSync(_0x5896ae))try{rmSync(_0x5896ae,{'recursive':!![],'force':!![]}),_0x2b407c[_0x42dd3b(0xdf)](_0x42dd3b(0x11f)),_0x5f375e[_0x42dd3b(0xed)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![]});}catch(_0x7fdec3){_0x2b407c[_0x42dd3b(0xdd)](_0x42dd3b(0xeb)+_0x7fdec3[_0x42dd3b(0x12d)]),_0x5f375e['push']({'step':0x2,'label':_0x42dd3b(0xf7),'ok':![],'detail':_0x7fdec3['message']});}else _0x2b407c[_0x42dd3b(0x148)](_0x42dd3b(0x12a)),_0x5f375e[_0x42dd3b(0xed)]({'step':0x2,'label':_0x42dd3b(0xf7),'ok':!![],'detail':_0x42dd3b(0x131)});const _0x3e7bd0=a117_0x4707bc({'text':_0x42dd3b(0x132),'color':_0x42dd3b(0x156)})[_0x42dd3b(0xe2)](),_0x10f3d8=execRemoveOldArtifacts(_0x746065['oldArtifacts']);_0x5f375e[_0x42dd3b(0xed)](_0x10f3d8),_0x3e7bd0[_0x10f3d8['ok']?_0x42dd3b(0xdf):'fail'](_0x42dd3b(0xf0)+(_0x10f3d8[_0x42dd3b(0xfe)]??(_0x10f3d8['ok']?_0x42dd3b(0xe9):'failed')));const _0x4907a8=a117_0x4707bc({'text':_0x42dd3b(0x141),'color':_0x42dd3b(0x156)})['start'](),_0x542bdf=execCleanMcp(_0x746065);_0x5f375e[_0x42dd3b(0xed)](_0x542bdf),_0x4907a8[_0x542bdf['ok']?_0x42dd3b(0xdf):_0x42dd3b(0xdd)](_0x42dd3b(0x13c)+(_0x542bdf['detail']??(_0x542bdf['ok']?_0x42dd3b(0xe9):'failed')));const _0x10cbe5=a117_0x4707bc({'text':_0x42dd3b(0x158),'color':_0x42dd3b(0x156)})[_0x42dd3b(0xe2)](),_0x1063a4=execSkillsRemove(_0x41417e,_0x57f6a5);_0x5f375e[_0x42dd3b(0xed)](_0x1063a4),_0x10cbe5[_0x1063a4['ok']?_0x42dd3b(0xdf):_0x42dd3b(0xdd)](_0x42dd3b(0x121)+(_0x1063a4['detail']??(_0x1063a4['ok']?_0x42dd3b(0xe9):_0x42dd3b(0x104))));const _0x12239b=a117_0x4707bc({'text':_0x42dd3b(0xe8),'color':_0x42dd3b(0x156)})[_0x42dd3b(0xe2)](),_0x43a81d=execSkillsAdd(_0x41417e,_0x57f6a5);_0x5f375e[_0x42dd3b(0xed)](_0x43a81d),_0x12239b[_0x43a81d['ok']?_0x42dd3b(0xdf):_0x42dd3b(0xdd)](_0x42dd3b(0x13d)+(_0x43a81d[_0x42dd3b(0xfe)]??(_0x43a81d['ok']?'done':_0x42dd3b(0x104))));const _0x5d4277=a117_0x4707bc({'text':_0x42dd3b(0x14e),'color':_0x42dd3b(0x156)})[_0x42dd3b(0xe2)](),_0x277cb5=execUpgradeSdk(_0x746065);_0x5f375e[_0x42dd3b(0xed)](_0x277cb5),_0x5d4277[_0x277cb5['ok']?_0x42dd3b(0xdf):_0x42dd3b(0xdd)](_0x42dd3b(0x139)+(_0x277cb5['detail']??(_0x277cb5['ok']?'done':_0x42dd3b(0x104)))),printSummary(_0x5f375e);const _0x522c1f=_0x5f375e[_0x42dd3b(0x137)](_0x926e5c=>!_0x926e5c['ok']);_0x522c1f?console[_0x42dd3b(0x117)](a117_0x5749c7[_0x42dd3b(0xf5)](_0x42dd3b(0xf3))):console[_0x42dd3b(0x117)](a117_0x5749c7[_0x42dd3b(0x111)]('Upgrade\x20completed\x20successfully!')),_0x277cb5['ok']&&_0x746065[_0x42dd3b(0xee)]&&(console[_0x42dd3b(0x117)](''),console['log'](a117_0x5749c7[_0x42dd3b(0x157)][_0x42dd3b(0x156)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console['log'](a117_0x5749c7[_0x42dd3b(0x156)](_0x42dd3b(0x13f))),console['log'](''),console[_0x42dd3b(0x117)](a117_0x5749c7[_0x42dd3b(0xf9)]('\x20\x20npm\x20install')),console[_0x42dd3b(0x117)](a117_0x5749c7[_0x42dd3b(0xf9)]('\x20\x20#\x20or')),console[_0x42dd3b(0x117)](a117_0x5749c7['white'](_0x42dd3b(0x135))),console[_0x42dd3b(0x117)](''));}
|
package/lib/commands/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a118_0x54b318=a118_0x1900;(function(_0x3408b4,_0x588f41){const _0x581058=a118_0x1900,_0x2ecc22=_0x3408b4();while(!![]){try{const _0x406a7e=-parseInt(_0x581058(0x95))/0x1*(-parseInt(_0x581058(0xaf))/0x2)+parseInt(_0x581058(0x9d))/0x3*(-parseInt(_0x581058(0xa2))/0x4)+parseInt(_0x581058(0xa9))/0x5+parseInt(_0x581058(0xaa))/0x6*(-parseInt(_0x581058(0x9f))/0x7)+-parseInt(_0x581058(0x91))/0x8*(parseInt(_0x581058(0x87))/0x9)+parseInt(_0x581058(0x84))/0xa+parseInt(_0x581058(0xa4))/0xb;if(_0x406a7e===_0x588f41)break;else _0x2ecc22['push'](_0x2ecc22['shift']());}catch(_0x2609a0){_0x2ecc22['push'](_0x2ecc22['shift']());}}}(a118_0x1666,0xcd3c8));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';function a118_0x1666(){const _0x55ec8d=['54zoUGrM','<script>','3514fxxlsX','command','from','172504DmBvYY','Code\x20Generation','17237374ntXRpP','preview','BFF\x20Scripts','Smart\x20List\x20Pages','run','5807270crMRiw','8994wVjTNs','description','install','defaultCommand','get','58bmBIar','Logs','Configuration','push','Dataset\x20&\x20Operations','Run\x20any\x20package.json\x20script','4893490IbcfLB','Quick\x20Start','write','27yGVAzV','Run\x20Scripts','set','create','login','risk','Schema','App\x20Management','service','length','2266792ACPKaR','wildcardDef','auth','Menu','56FkgzTW','logout','project','has','isSingleCommand','Instant\x20API','skill','values'];a118_0x1666=function(){return _0x55ec8d;};return a118_0x1666();}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{appDefinitions}from'../commands/app/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{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{skillDefinitions}from'../commands/skill/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(_0x58d138){const _0x43e1d3=a118_0x1900;for(const _0x46a478 of _0x58d138){definitions['set'](_0x46a478['service']+':'+_0x46a478[_0x43e1d3(0xa0)],_0x46a478);let _0x553b1=serviceGroups[_0x43e1d3(0xae)](_0x46a478['service']);!_0x553b1&&(_0x553b1=[],serviceGroups['set'](_0x46a478[_0x43e1d3(0x8f)],_0x553b1)),_0x553b1['push'](_0x46a478);}}function registerDeclarativeService(_0x10a58c,_0x1856a2,_0x3691a1){const _0x3fea02=a118_0x1900;registerDefinitions(_0x1856a2);_0x3691a1?.['wildcardDef']&®isterDefinitions([_0x3691a1[_0x3fea02(0x92)]]);const _0x434539=_0x5d0bfc=>_0x5d0bfc==='read'?'':_0x5d0bfc===_0x3fea02(0x86)?'\x20\x20[write]':'\x20\x20[high-risk-write]',_0x47014f={'service':_0x1856a2[0x0][_0x3fea02(0x8f)],'label':_0x10a58c,'commands':_0x1856a2['map'](_0x4cd9e6=>({'command':_0x4cd9e6['command'],'description':_0x4cd9e6[_0x3fea02(0xab)],'tag':_0x434539(_0x4cd9e6[_0x3fea02(0x8c)])})),'declarative':!![],'defaultCommand':_0x3691a1?.[_0x3fea02(0xad)]??(_0x3691a1?.['isSingleCommand']?_0x1856a2[0x0]['command']:undefined),'wildcardDef':_0x3691a1?.[_0x3fea02(0x92)],'isSingleCommand':_0x3691a1?.[_0x3fea02(0x99)]};serviceRegistry[_0x3fea02(0x81)](_0x47014f),serviceByName[_0x3fea02(0x89)](_0x47014f[_0x3fea02(0x8f)],_0x47014f);}registerDeclarativeService(a118_0x54b318(0x85),initDefinitions,{'defaultCommand':a118_0x54b318(0xa8),'isSingleCommand':!![]}),registerDeclarativeService('Project',projectDefinitions),registerDeclarativeService(a118_0x54b318(0x8e),appDefinitions),registerDeclarativeService(a118_0x54b318(0x88),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a118_0x54b318(0x90)]-0x1];last['commands']=[{'command':a118_0x54b318(0x9e),'description':a118_0x54b318(0x83),'tag':''}];}registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':a118_0x54b318(0x8b)}),registerDeclarativeService('Self\x20Update',[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a118_0x54b318(0x8d),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a118_0x54b318(0x80),configDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService('API',apiDefinitions),registerDeclarativeService(a118_0x54b318(0x94),menuDefinitions),registerDeclarativeService('Database\x20Connections',dbDefinitions),registerDeclarativeService(a118_0x54b318(0x82),datasetDefinitions),registerDeclarativeService(a118_0x54b318(0xa7),pageDefinitions),registerDeclarativeService(a118_0x54b318(0x9a),dataDefinitions),registerDeclarativeService(a118_0x54b318(0xa6),bffDefinitions),registerDeclarativeService('SQL\x20Queries',sqlDefinitions),registerDeclarativeService(a118_0x54b318(0xa3),codegenDefinitions),registerDeclarativeService('Skills',skillDefinitions),registerDeclarativeService(a118_0x54b318(0xb0),logsDefinitions,{'defaultCommand':'show'});function a118_0x1900(_0x289ee2,_0x26a3e4){_0x289ee2=_0x289ee2-0x80;const _0x166644=a118_0x1666();let _0x1900f7=_0x166644[_0x289ee2];return _0x1900f7;}export const deprecatedAliases={'create':{'service':a118_0x54b318(0x97),'command':a118_0x54b318(0x8a)},'start':{'service':a118_0x54b318(0xa8),'command':'start'},'build':{'service':'run','command':'build'},'preview':{'service':a118_0x54b318(0xa8),'command':a118_0x54b318(0xa5)},'logout':{'service':a118_0x54b318(0x93),'command':a118_0x54b318(0x96)},'skills':{'service':a118_0x54b318(0x9b),'command':a118_0x54b318(0xac)}};export const deprecatedSubcommands={'bff':{'new':a118_0x54b318(0x8a)},'sql':{'new':'create'}};export function resolveDeprecatedSubcommand(_0x14e7ca,_0x9598c4){return deprecatedSubcommands[_0x14e7ca]?.[_0x9598c4];}export function findDefinition(_0x2f7874,_0x57634b){const _0x3e6738=a118_0x54b318;return definitions[_0x3e6738(0xae)](_0x2f7874+':'+_0x57634b);}export function isKnownService(_0x46e991){const _0x359c27=a118_0x54b318;return serviceByName[_0x359c27(0x98)](_0x46e991);}export function isDeclarativeService(_0x440d29){const _0x1958a7=a118_0x54b318;return serviceGroups['has'](_0x440d29)||serviceByName[_0x1958a7(0xae)](_0x440d29)?.[_0x1958a7(0x92)]!==undefined;}export function getServiceEntry(_0x12d29d){const _0x44e805=a118_0x54b318;return serviceByName[_0x44e805(0xae)](_0x12d29d);}export function getLegacyHandler(_0x3c770d,_0x2e6497){return undefined;}export function getAllDefinitions(){const _0x5c2350=a118_0x54b318;return Array[_0x5c2350(0xa1)](definitions[_0x5c2350(0x9c)]());}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a119_0x39cc48=a119_0x5efc;(function(_0xc5d7b3,_0x46ffc3){const _0x28faee=a119_0x5efc,_0x5c0595=_0xc5d7b3();while(!![]){try{const _0x2b1ac6=-parseInt(_0x28faee(0x1c5))/0x1+parseInt(_0x28faee(0x1c1))/0x2*(parseInt(_0x28faee(0x1de))/0x3)+parseInt(_0x28faee(0x1df))/0x4+parseInt(_0x28faee(0x1d9))/0x5*(parseInt(_0x28faee(0x1e3))/0x6)+-parseInt(_0x28faee(0x1ca))/0x7+-parseInt(_0x28faee(0x1db))/0x8+-parseInt(_0x28faee(0x1cf))/0x9*(parseInt(_0x28faee(0x1b9))/0xa);if(_0x2b1ac6===_0x46ffc3)break;else _0x5c0595['push'](_0x5c0595['shift']());}catch(_0x55968b){_0x5c0595['push'](_0x5c0595['shift']());}}}(a119_0x2c4e,0x7da7e));import{readFileSync,existsSync}from'node:fs';function a119_0x2c4e(){const _0x196bd5=['\x20run\x20build','read','preview','No\x20package.json\x20found\x20in\x20current\x20directory.','map','1034hvdVUD','\x20run\x20<script>\x0a','error','\x20run\x20','193062XKdzee','\x20run\x20preview','bool','\x0a\x20\x20Available\x20scripts:\x0a','Run\x20a\x20package.json\x20script','4383330wGPcxW','\x20\x20\x20\x20','start','keys','(none)','9MmYwzi','package.json','boolean','args','close','padEnd','Script\x20name\x20defined\x20in\x20package.json','push','bun.lockb','log','3502160CiSRJK','\x0a\x20\x20Usage:\x20','6166128GsNxbF','\x20\x20EXAMPLES','.bin','4707ZNmVta','3034264tOfTBW','length','yarn.lock','join','6rDgZdU','\x20exited\x20with\x20code\x20','vite\x20preview\x20exited\x20with\x20code\x20','utf-8','\x20run\x20preview\x20--watch\x20\x20\x20#\x20parallel\x20build\x20--watch\x20+\x20preview','validation','bun','inherit','cwd','slice','bun.lock','Available:\x20','\x22\x20not\x20found\x20in\x20package.json.','run','scripts','Script\x20\x22','\x20run\x20start','entries','No\x20scripts\x20defined\x20in\x20package.json.','watch','pnpm-lock.yaml','max','--watch','\x20\x20AVAILABLE\x20SCRIPTS\x20\x20(current\x20project)','vite','1654670pTUhAz','all','belowMinimum'];a119_0x2c4e=function(){return _0x196bd5;};return a119_0x2c4e();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{resolve,delimiter,join}from'node:path';import{spawn}from'node:child_process';function a119_0x5efc(_0x45ac35,_0x42dcc9){_0x45ac35=_0x45ac35-0x1b6;const _0x2c4e5b=a119_0x2c4e();let _0x5efc0f=_0x2c4e5b[_0x45ac35];return _0x5efc0f;}import{CliErrors}from'../../errors.js';import{checkSdkVersion,printSdkUpgradeWarning}from'../../utils/check-sdk-version.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../utils/cli-version-check.js';const VERSION_CHECK_SCRIPTS=new Set([a119_0x39cc48(0x1cc),'dev']);function readPackageScripts(_0x5d88d6){const _0x25cd25=a119_0x39cc48,_0x4a88cf=resolve(_0x5d88d6,_0x25cd25(0x1d0));if(!existsSync(_0x4a88cf))return null;try{const _0x40a0c1=JSON['parse'](readFileSync(_0x4a88cf,_0x25cd25(0x1e6)));return _0x40a0c1[_0x25cd25(0x1f1)]??{};}catch{return null;}}function detectPackageManager(_0x50f416){const _0x4efe0e=a119_0x39cc48;if(existsSync(resolve(_0x50f416,_0x4efe0e(0x1d7)))||existsSync(resolve(_0x50f416,_0x4efe0e(0x1ed))))return _0x4efe0e(0x1e9);if(existsSync(resolve(_0x50f416,_0x4efe0e(0x1f7))))return'pnpm';if(existsSync(resolve(_0x50f416,_0x4efe0e(0x1e1))))return'yarn';return'npm';}async function versionCheck(_0x28ea67){const _0x2944f0=a119_0x39cc48,_0x3cf554=await checkCliVersion();(_0x3cf554['needsUpgrade']||_0x3cf554[_0x2944f0(0x1bb)])&&(printCliUpgradeWarning(_0x3cf554),assertCliVersionSupported(_0x3cf554));const _0x5b54b8=await checkSdkVersion(_0x28ea67);if(_0x5b54b8['needsUpgrade'])printSdkUpgradeWarning(_0x5b54b8);}function spawnScript(_0x288b06,_0x28ed2d,_0x4da58f,_0x3d6e04){return new Promise((_0x3643dc,_0x1b1b57)=>{const _0x3a53e1=a119_0x5efc,_0xe6ae53=[_0x3a53e1(0x1f0),_0x28ed2d,..._0x4da58f],_0x5c45d2=spawn(_0x288b06,_0xe6ae53,{'cwd':_0x3d6e04,'stdio':_0x3a53e1(0x1ea),'shell':!![],'env':{...process.env,'PATH':''+join(_0x3d6e04,'node_modules','.bin')+delimiter+process.env.PATH}});_0x5c45d2['on'](_0x3a53e1(0x1d3),_0x2154c1=>{const _0x4710c6=_0x3a53e1;if(_0x2154c1===0x0||_0x2154c1===null)_0x3643dc();else _0x1b1b57(new Error(_0x288b06+_0x4710c6(0x1c4)+_0x28ed2d+_0x4710c6(0x1e4)+_0x2154c1));}),_0x5c45d2['on'](_0x3a53e1(0x1c3),_0x1b1b57);});}function spawnViteBuildWatch(_0x362b5e){return new Promise((_0x54cad1,_0x1c1b21)=>{const _0x499265=a119_0x5efc,_0x5782e4=spawn(_0x499265(0x1b8),['build',_0x499265(0x1b6)],{'cwd':_0x362b5e,'stdio':_0x499265(0x1ea),'shell':!![],'env':{...process.env,'PATH':''+join(_0x362b5e,'node_modules',_0x499265(0x1dd))+delimiter+process.env.PATH}});_0x5782e4['on']('close',_0x332b5c=>{if(_0x332b5c===0x0||_0x332b5c===null)_0x54cad1();else _0x1c1b21(new Error('vite\x20build\x20--watch\x20exited\x20with\x20code\x20'+_0x332b5c));}),_0x5782e4['on']('error',_0x1c1b21);});}function spawnVitePreview(_0x2b7379){return new Promise((_0x3420b6,_0x56438d)=>{const _0x1c7eb1=a119_0x5efc,_0x37ca5d=spawn(_0x1c7eb1(0x1b8),[_0x1c7eb1(0x1be)],{'cwd':_0x2b7379,'stdio':_0x1c7eb1(0x1ea),'shell':!![],'env':{...process.env,'PATH':''+join(_0x2b7379,'node_modules','.bin')+delimiter+process.env.PATH}});_0x37ca5d['on'](_0x1c7eb1(0x1d3),_0x5c82ea=>{const _0x3dd657=_0x1c7eb1;if(_0x5c82ea===0x0||_0x5c82ea===null)_0x3420b6();else _0x56438d(new Error(_0x3dd657(0x1e5)+_0x5c82ea));}),_0x37ca5d['on'](_0x1c7eb1(0x1c3),_0x56438d);});}const runFlags=[{'name':a119_0x39cc48(0x1f6),'type':a119_0x39cc48(0x1d1),'description':'Enable\x20watch\x20mode\x20for\x20preview','default':![]}];export const runDefinition={'service':a119_0x39cc48(0x1f0),'command':a119_0x39cc48(0x1f0),'description':a119_0x39cc48(0x1c9),'risk':a119_0x39cc48(0x1bd),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':'script','description':a119_0x39cc48(0x1d5),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x3b0b40=a119_0x39cc48,_0x2b3d8a=readPackageScripts(process[_0x3b0b40(0x1eb)]()),_0x12412d=[];if(_0x2b3d8a&&Object['keys'](_0x2b3d8a)[_0x3b0b40(0x1e0)]>0x0){const _0x15db61=Object[_0x3b0b40(0x1cd)](_0x2b3d8a),_0x5d3e7c=Math[_0x3b0b40(0x1f8)](..._0x15db61[_0x3b0b40(0x1c0)](_0x5e44f4=>_0x5e44f4[_0x3b0b40(0x1e0)]));_0x12412d['push'](_0x3b0b40(0x1b7));for(const [_0x274a8e,_0x4886dc]of Object[_0x3b0b40(0x1f4)](_0x2b3d8a)){_0x12412d['push'](_0x3b0b40(0x1cb)+CLI_BIN_NAME+_0x3b0b40(0x1c4)+_0x274a8e[_0x3b0b40(0x1d4)](_0x5d3e7c+0x2)+'#\x20'+_0x4886dc);}}else _0x12412d['push'](_0x3b0b40(0x1dc)),_0x12412d[_0x3b0b40(0x1d6)](_0x3b0b40(0x1cb)+CLI_BIN_NAME+_0x3b0b40(0x1f3)),_0x12412d[_0x3b0b40(0x1d6)](_0x3b0b40(0x1cb)+CLI_BIN_NAME+_0x3b0b40(0x1bc)),_0x12412d[_0x3b0b40(0x1d6)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x3b0b40(0x1c6)),_0x12412d[_0x3b0b40(0x1d6)](_0x3b0b40(0x1cb)+CLI_BIN_NAME+_0x3b0b40(0x1e7));return _0x12412d[_0x3b0b40(0x1e2)]('\x0a');},async 'execute'(_0x2816eb){const _0x473027=a119_0x39cc48,_0x3def32=process['cwd'](),_0x2a5b89=_0x2816eb['args'][0x0],_0x2e9071=_0x2816eb[_0x473027(0x1d2)][_0x473027(0x1ec)](0x1),_0x5769cb=readPackageScripts(_0x3def32);if(!_0x5769cb)throw CliErrors[_0x473027(0x1e8)](_0x473027(0x1bf));if(!_0x2a5b89){const _0x17ce71=Object[_0x473027(0x1cd)](_0x5769cb);if(_0x17ce71['length']===0x0)console[_0x473027(0x1d8)](_0x473027(0x1f5));else{console[_0x473027(0x1d8)](_0x473027(0x1c8));const _0x496919=Math[_0x473027(0x1f8)](..._0x17ce71['map'](_0x3acc47=>_0x3acc47[_0x473027(0x1e0)]));for(const [_0x399e24,_0x401dab]of Object['entries'](_0x5769cb)){console['log']('\x20\x20\x20\x20'+_0x399e24['padEnd'](_0x496919+0x2)+_0x401dab);}console[_0x473027(0x1d8)](_0x473027(0x1da)+CLI_BIN_NAME+_0x473027(0x1c2));}return{'ok':!![]};}if(!_0x5769cb[_0x2a5b89])throw CliErrors[_0x473027(0x1e8)](_0x473027(0x1f2)+_0x2a5b89+_0x473027(0x1ef),_0x473027(0x1ee)+(Object[_0x473027(0x1cd)](_0x5769cb)[_0x473027(0x1e2)](',\x20')||_0x473027(0x1ce)));const _0x1e5b70=detectPackageManager(_0x3def32);VERSION_CHECK_SCRIPTS['has'](_0x2a5b89)&&await versionCheck(_0x3def32);if(_0x2a5b89===_0x473027(0x1be)&&_0x2816eb[_0x473027(0x1c7)](_0x473027(0x1f6)))return await Promise[_0x473027(0x1ba)]([spawnViteBuildWatch(_0x3def32),spawnVitePreview(_0x3def32)]),{'ok':!![]};return await spawnScript(_0x1e5b70,_0x2a5b89,_0x2e9071,_0x3def32),{'ok':!![]};}};
|
package/lib/commands/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a120_0x1b2a67=a120_0x194c;(function(_0x4a3f6b,_0x254faf){const _0x5cef94=a120_0x194c,_0x42137c=_0x4a3f6b();while(!![]){try{const _0x3c7152=parseInt(_0x5cef94(0x117))/0x1+-parseInt(_0x5cef94(0x11a))/0x2*(-parseInt(_0x5cef94(0x116))/0x3)+-parseInt(_0x5cef94(0x10e))/0x4+-parseInt(_0x5cef94(0x115))/0x5*(parseInt(_0x5cef94(0x112))/0x6)+-parseInt(_0x5cef94(0x119))/0x7*(parseInt(_0x5cef94(0x114))/0x8)+-parseInt(_0x5cef94(0x118))/0x9+parseInt(_0x5cef94(0x11b))/0xa;if(_0x3c7152===_0x254faf)break;else _0x42137c['push'](_0x42137c['shift']());}catch(_0x2e8562){_0x42137c['push'](_0x42137c['shift']());}}}(a120_0xdc87,0xa0967));function a120_0x194c(_0x489722,_0x2e6e33){_0x489722=_0x489722-0x10e;const _0xdc87be=a120_0xdc87();let _0x194c76=_0xdc87be[_0x489722];return _0x194c76;}import{buildSchemaPayload}from'../framework/schema-export.js';async function execute(_0x76f638){const _0x1fbe11=await buildSchemaPayload();return{'ok':!![],'data':_0x1fbe11};}function a120_0xdc87(){const _0x3acd45=['17695eVJMWE','162009DlXHzC','241846ceIwhB','4784121lTLJGM','21oEelYk','22whKNpQ','24043090EcRSoG','693440VziaVA','read','export','json','1590UQvUmM','Export\x20machine-readable\x20command\x20schema\x20(JSON)','2505752tyVywF'];a120_0xdc87=function(){return _0x3acd45;};return a120_0xdc87();}export const schemaDefinition={'service':'schema','command':a120_0x1b2a67(0x110),'description':a120_0x1b2a67(0x113),'risk':a120_0x1b2a67(0x10f),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a120_0x1b2a67(0x111),'flags':[],'execute':execute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x2b08eb,_0x47790a){const _0xdc2b20=a121_0x2390,_0x5e23f3=_0x2b08eb();while(!![]){try{const _0x531113=parseInt(_0xdc2b20(0x1f1))/0x1*(-parseInt(_0xdc2b20(0x1f0))/0x2)+-parseInt(_0xdc2b20(0x1ea))/0x3+parseInt(_0xdc2b20(0x1f6))/0x4*(parseInt(_0xdc2b20(0x1e0))/0x5)+-parseInt(_0xdc2b20(0x1ef))/0x6*(-parseInt(_0xdc2b20(0x1de))/0x7)+-parseInt(_0xdc2b20(0x1e8))/0x8+-parseInt(_0xdc2b20(0x1ec))/0x9*(parseInt(_0xdc2b20(0x1f5))/0xa)+parseInt(_0xdc2b20(0x1e7))/0xb;if(_0x531113===_0x47790a)break;else _0x5e23f3['push'](_0x5e23f3['shift']());}catch(_0x25ebfd){_0x5e23f3['push'](_0x5e23f3['shift']());}}}(a121_0x132d,0xcee9e));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';function a121_0x2390(_0x48bcc0,_0xd06985){_0x48bcc0=_0x48bcc0-0x1de;const _0x132d87=a121_0x132d();let _0x2390b9=_0x132d87[_0x48bcc0];return _0x2390b9;}function a121_0x132d(){const _0x4ffc7e=['apiError','info','setLogPath','Installing\x20official\x20skill\x20via\x20npx\x20(','error','25991471rDBBnv','9320880eszeJb','nonInteractive','2338161GFVutS','Skipped\x20npx\x20(RABETBASE_SKIP_NPX_SKILLS=1);\x20assuming\x20skill\x20is\x20already\x20present.','114489QThkro','cwd','lovrabet/rabetbase','732LcIqUz','4VeoQOw','528579tTxMqJ','skill-install','执行安装技能包命令(委托给\x20npx\x20skills\x20add\x20-g\x20-y)','inherit','100nEKRHc','3203132kLxKnY','log','686JAzvlW','npx\x20skills\x20add\x20failed:\x20','10kncYBH','../../skills/npx-skills-add.js'];a121_0x132d=function(){return _0x4ffc7e;};return a121_0x132d();}import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE}from'../../skills/npx-skills-add.js';export const skillDefinitions=[{'service':'skill','command':'install','description':'Install\x20developer\x20skill\x20package','risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x4edc88){const _0x2d249b=a121_0x2390;logger[_0x2d249b(0x1e4)](process[_0x2d249b(0x1ed)]()),logger[_0x2d249b(0x1e3)](_0x2d249b(0x1f2),_0x2d249b(0x1f3));const {runNpxSkillsAddGlobal:_0xd07157}=await import(_0x2d249b(0x1e1)),_0x1788d1=_0x4edc88[_0x2d249b(0x1e9)]?'pipe':_0x2d249b(0x1f4);console[_0x2d249b(0x1f7)](_0x2d249b(0x1e5)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+')...');const _0x44ff71=_0xd07157(process[_0x2d249b(0x1ed)](),_0x2d249b(0x1ee),{'stdio':_0x1788d1});if(_0x44ff71['skipped'])console[_0x2d249b(0x1f7)](_0x2d249b(0x1eb));else{if(_0x44ff71['ok'])console[_0x2d249b(0x1f7)](CLI_BIN_NAME+'\x20skill\x20installed');else throw CliErrors[_0x2d249b(0x1e2)](_0x2d249b(0x1df)+(_0x44ff71[_0x2d249b(0x1e6)]||'unknown'),'Check\x20network\x20connectivity\x20and\x20try\x20again.');}return{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a122_0x3b4c55=a122_0xe45f;(function(_0x50a0d5,_0xa1a335){const _0x1bd484=a122_0xe45f,_0x33f817=_0x50a0d5();while(!![]){try{const _0x23b0ff=parseInt(_0x1bd484(0x1da))/0x1+-parseInt(_0x1bd484(0x1e4))/0x2+-parseInt(_0x1bd484(0x1f5))/0x3+-parseInt(_0x1bd484(0x201))/0x4+-parseInt(_0x1bd484(0x1e6))/0x5+-parseInt(_0x1bd484(0x1f6))/0x6+parseInt(_0x1bd484(0x1ea))/0x7;if(_0x23b0ff===_0xa1a335)break;else _0x33f817['push'](_0x33f817['shift']());}catch(_0x1386ff){_0x33f817['push'](_0x33f817['shift']());}}}(a122_0x11d4,0xb0784));import{writeFile}from'node:fs/promises';function a122_0xe45f(_0x38b725,_0x90b8b4){_0x38b725=_0x38b725-0x1d9;const _0x11d491=a122_0x11d4();let _0xe45ff7=_0x11d491[_0x38b725];return _0xe45ff7;}import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';function a122_0x11d4(){const _0x57d510=['mybatisXml','dbName','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','dbId\x20必须为正整数','937432WBXRIR','catch','db-id','MyBatis\x20XML(mybatisXml)','</select>','__manual__','description','isFinite','appCode','str','sqlName','sql','number','/smartapi/custom/saveUserCustomSql','请输入目标数据库\x20dbId:','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','stringify','Created\x20SQL\x20query\x20','high-risk-write','flag','<server-generated-sqlCode>','toISOString','Local\x20SQL\x20file\x20mode','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','211282HCcRWB','isInteger','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','sqlRoot','new','validation','请选择目标数据库:','create','map','Invalid\x20database\x20selection\x20payload:\x20','196878pIkyfb','dbId','4580070dSzEhP','name','flagMissing','sqls','23833824vmpNui','File\x20already\x20exists:\x20','sqlRootDir','length','nonInteractive','SELECT\x201\x20AS\x20id;','trim','sqlCode','join','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','适合带动态标签的\x20MyBatis\x20XML\x20SQL','3363186hHsIkN','3140526gIAtxU','dbId\x20不能为空','lockFilePath','请输入\x20SQL\x20名称:','utf8','SQL\x20query\x20display\x20name','mode'];a122_0x11d4=function(){return _0x57d510;};return a122_0x11d4();}import{buildSqlRelativePath}from'../../core/sql-sync/utils.js';import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x5b7d1b){const _0x550c49=a122_0xe45f;if(_0x5b7d1b===_0x550c49(0x1fd))return['<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','\x20\x20SELECT\x201\x20AS\x20id',_0x550c49(0x205),''][_0x550c49(0x1f2)]('\x0a');return[_0x550c49(0x1ef),''][_0x550c49(0x1f2)]('\x0a');}export const sqlCreate={'service':a122_0x3b4c55(0x20c),'command':a122_0x3b4c55(0x1e1),'description':a122_0x3b4c55(0x1f3),'risk':a122_0x3b4c55(0x213),'flags':[{'name':a122_0x3b4c55(0x1e7),'type':'string','description':a122_0x3b4c55(0x1fb)},{'name':'db-id','type':a122_0x3b4c55(0x20d),'description':'Target\x20database\x20ID'},{'name':a122_0x3b4c55(0x1fc),'type':'string','enum':[a122_0x3b4c55(0x20c),'mybatisXml'],'description':a122_0x3b4c55(0x217)}],async 'validate'(_0x3be497){const _0x3dde76=a122_0x3b4c55;if(!_0x3be497[_0x3dde76(0x1ee)])return;if(!_0x3be497[_0x3dde76(0x20a)](_0x3dde76(0x1e7))[_0x3dde76(0x1f0)]())throw CliErrors[_0x3dde76(0x1e8)](_0x3dde76(0x1e7),_0x3dde76(0x210));const _0x59bebf=resolveProvidedDbId(_0x3be497);if(typeof _0x59bebf!==_0x3dde76(0x20d)||!Number['isFinite'](_0x59bebf)||_0x59bebf<=0x0)throw CliErrors['flagMissing'](_0x3dde76(0x203),'--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');if(!_0x3be497['str'](_0x3dde76(0x1fc))[_0x3dde76(0x1f0)]())throw CliErrors['flagMissing'](_0x3dde76(0x1fc),_0x3dde76(0x1dc));},async 'dryRun'(_0x24a8fb){const _0x3b8c34=a122_0x3b4c55,_0x434aab=loadSqlProjectConfig(_0x24a8fb[_0x3b8c34(0x209)]),{sqlName:_0x508d18,dbId:_0x228f82,dbName:_0x17f529,mode:_0x1c73e2}=await resolveSqlNewInputs(_0x24a8fb),_0xbbce13=buildSqlRelativePath(_0x3b8c34(0x215),_0x508d18,_0x17f529,_0x1c73e2,_0x228f82),_0x5b3511=_0x434aab[_0x3b8c34(0x1ec)]+'/'+_0xbbce13;return{'method':'POST','url':_0x3b8c34(0x20e),'body':{'appCode':_0x24a8fb[_0x3b8c34(0x209)],'sqlName':_0x508d18,'dbId':_0x228f82,'mode':_0x1c73e2,'localPath':_0x5b3511},'description':_0x3b8c34(0x1d9)+_0x434aab[_0x3b8c34(0x1ec)]};},async 'execute'(_0x29214a){const _0x5e6bf7=a122_0x3b4c55,_0x14ba19=loadSqlProjectConfig(_0x29214a['appCode']),{sqlName:_0x386fc4,dbId:_0x1e66d2,dbName:_0x28bd13,mode:_0x57c33c}=await resolveSqlNewInputs(_0x29214a),_0x2a4694=generateSqlTemplate(_0x57c33c),_0x2cc0c2=await createSqlQuery({'appCode':_0x29214a['appCode'],'sqlName':_0x386fc4,'dbId':_0x1e66d2,'sqlContent':_0x2a4694}),_0x4148d7=ensureRemoteSqlContent(_0x2cc0c2),_0x276e89=_0x28bd13||await getDbName(_0x29214a[_0x5e6bf7(0x209)],_0x1e66d2)[_0x5e6bf7(0x202)](()=>undefined),_0x4adfd4=buildSqlRelativePath(_0x2cc0c2[_0x5e6bf7(0x1f1)],_0x2cc0c2[_0x5e6bf7(0x20b)],_0x276e89,_0x57c33c,_0x1e66d2),_0x498e50=_0x14ba19[_0x5e6bf7(0x1ec)]+'/'+_0x4adfd4,_0x29d561=buildLocalSqlFileContent({'sqlCode':_0x2cc0c2[_0x5e6bf7(0x1f1)],'sqlName':_0x2cc0c2[_0x5e6bf7(0x20b)],'dbId':_0x2cc0c2[_0x5e6bf7(0x1e5)]},_0x4148d7,{'dbName':_0x276e89,'mode':_0x57c33c,'syncedAt':new Date()[_0x5e6bf7(0x216)](),'description':_0x2cc0c2[_0x5e6bf7(0x207)]});if(await fileExists(_0x498e50))throw CliErrors[_0x5e6bf7(0x1df)](_0x5e6bf7(0x1eb)+_0x498e50);await ensureParentDirectory(_0x498e50),await writeFile(_0x498e50,_0x29d561,_0x5e6bf7(0x1fa));const _0x4f9b9f=await readSqlLockFile(_0x14ba19[_0x5e6bf7(0x1f8)]),{lockData:_0x4fb1e7,appLock:_0x18fb87}=ensureSqlLockScope(_0x4f9b9f??createEmptySqlLock(),_0x14ba19[_0x5e6bf7(0x209)],_0x14ba19[_0x5e6bf7(0x1dd)],_0x5e6bf7(0x1de));return _0x18fb87[_0x5e6bf7(0x1e9)][_0x2cc0c2[_0x5e6bf7(0x1f1)]]={...buildSqlLockEntry(_0x2cc0c2,_0x4148d7,computeSqlContentHash(_0x29d561),{'dbName':_0x276e89}),'path':_0x4adfd4,'mode':_0x57c33c},_0x18fb87['lastSync']=new Date()[_0x5e6bf7(0x216)](),await writeSqlLockFile(_0x14ba19[_0x5e6bf7(0x1f8)],_0x4fb1e7),{'ok':!![],'data':{'id':_0x2cc0c2['id'],'sqlCode':_0x2cc0c2[_0x5e6bf7(0x1f1)],'sqlName':_0x2cc0c2[_0x5e6bf7(0x20b)],'dbId':_0x2cc0c2[_0x5e6bf7(0x1e5)],'path':_0x498e50,'mode':_0x57c33c},'message':_0x5e6bf7(0x212)+_0x2cc0c2[_0x5e6bf7(0x1f1)]};}};async function resolveSqlNewInputs(_0x561a51){const _0x5b589e=await resolveSqlNameInput(_0x561a51),{dbId:_0xdb32cf,dbName:_0x2eeb5e}=await resolveDbSelection(_0x561a51),_0x1cf44a=await resolveSqlModeInput(_0x561a51);return{'sqlName':_0x5b589e,'dbId':_0xdb32cf,'dbName':_0x2eeb5e,'mode':_0x1cf44a};}async function resolveSqlNameInput(_0x50810c){const _0x46d29c=a122_0x3b4c55,_0x114067=_0x50810c[_0x46d29c(0x20a)]('name')[_0x46d29c(0x1f0)]();if(_0x114067)return _0x114067;if(_0x50810c['nonInteractive'])throw CliErrors[_0x46d29c(0x1e8)](_0x46d29c(0x1e7),_0x46d29c(0x210));return(await input({'message':_0x46d29c(0x1f9),'validate':_0x2865b1=>_0x2865b1['trim']()?!![]:'SQL\x20名称不能为空'}))['trim']();}async function resolveDbSelection(_0x3a386d){const _0x18574e=a122_0x3b4c55,_0x92f0e=resolveProvidedDbId(_0x3a386d);if(typeof _0x92f0e===_0x18574e(0x20d)&&Number[_0x18574e(0x208)](_0x92f0e)&&_0x92f0e>0x0)return{'dbId':_0x92f0e,'dbName':await getDbName(_0x3a386d[_0x18574e(0x209)],_0x92f0e)[_0x18574e(0x202)](()=>undefined)};if(_0x3a386d[_0x18574e(0x1ee)])throw CliErrors[_0x18574e(0x1e8)](_0x18574e(0x203),'--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x2a2763=await listDatabases(_0x3a386d['appCode'])['catch'](()=>[]);if(_0x2a2763[_0x18574e(0x1ed)]===0x1)return{'dbId':_0x2a2763[0x0][_0x18574e(0x1e5)],'dbName':_0x2a2763[0x0][_0x18574e(0x1fe)]};if(_0x2a2763['length']>0x1){const _0xd7a4da=await select({'message':_0x18574e(0x1e0),'choices':[..._0x2a2763[_0x18574e(0x1e2)](_0xdf7333=>({'name':_0xdf7333[_0x18574e(0x1fe)]+'\x20('+_0xdf7333['dbId']+')','value':serializeDbSelection(_0xdf7333)})),{'name':'✎\x20手动输入\x20dbId','value':_0x18574e(0x206)}]});if(_0xd7a4da!==_0x18574e(0x206))return deserializeDbSelection(_0xd7a4da);}const _0x5c9214=await input({'message':_0x18574e(0x20f),'validate':_0x3fd295=>{const _0x11ef2e=_0x18574e,_0x224abd=_0x3fd295[_0x11ef2e(0x1f0)]();if(!_0x224abd)return _0x11ef2e(0x1f7);const _0x50e8ef=Number(_0x224abd);if(!Number[_0x11ef2e(0x1db)](_0x50e8ef)||_0x50e8ef<=0x0)return _0x11ef2e(0x200);return!![];}});return{'dbId':Number(_0x5c9214[_0x18574e(0x1f0)]())};}async function resolveSqlModeInput(_0x28632a){const _0x10600e=a122_0x3b4c55,_0x16c043=_0x28632a[_0x10600e(0x20a)](_0x10600e(0x1fc))[_0x10600e(0x1f0)]();if(_0x16c043==='sql'||_0x16c043===_0x10600e(0x1fd))return _0x16c043;if(_0x28632a['nonInteractive'])throw CliErrors[_0x10600e(0x1e8)](_0x10600e(0x1fc),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');return await select({'message':'请选择本地\x20SQL\x20模式:','choices':[{'name':'普通\x20SQL(sql)','value':_0x10600e(0x20c),'description':_0x10600e(0x1ff)},{'name':_0x10600e(0x204),'value':_0x10600e(0x1fd),'description':_0x10600e(0x1f4)}]});}function serializeDbSelection(_0x48a947){const _0x3f973e=a122_0x3b4c55;return JSON[_0x3f973e(0x211)]({'dbId':_0x48a947[_0x3f973e(0x1e5)],'dbName':_0x48a947['dbName']});}function deserializeDbSelection(_0x28bcbe){const _0x3facc7=a122_0x3b4c55;try{const _0x25eec9=JSON['parse'](_0x28bcbe);if(typeof _0x25eec9[_0x3facc7(0x1e5)]===_0x3facc7(0x20d)&&Number[_0x3facc7(0x208)](_0x25eec9[_0x3facc7(0x1e5)]))return{'dbId':_0x25eec9[_0x3facc7(0x1e5)],'dbName':_0x25eec9['dbName']};}catch{}throw CliErrors['validation'](_0x3facc7(0x1e3)+_0x28bcbe);}function resolveProvidedDbId(_0x241004){const _0x2e1e9d=a122_0x3b4c55,_0x1f7c21=_0x241004[_0x2e1e9d(0x214)](_0x2e1e9d(0x203));if(typeof _0x1f7c21==='number'&&Number['isFinite'](_0x1f7c21))return _0x1f7c21;return undefined;}
|
|
1
|
+
const a122_0x516294=a122_0x3351;(function(_0x4969b8,_0x284326){const _0x91be47=a122_0x3351,_0x5019c2=_0x4969b8();while(!![]){try{const _0x1d8163=-parseInt(_0x91be47(0x157))/0x1*(-parseInt(_0x91be47(0x165))/0x2)+-parseInt(_0x91be47(0x164))/0x3+-parseInt(_0x91be47(0x192))/0x4*(parseInt(_0x91be47(0x15e))/0x5)+parseInt(_0x91be47(0x160))/0x6+parseInt(_0x91be47(0x18c))/0x7+-parseInt(_0x91be47(0x172))/0x8*(-parseInt(_0x91be47(0x181))/0x9)+parseInt(_0x91be47(0x163))/0xa;if(_0x1d8163===_0x284326)break;else _0x5019c2['push'](_0x5019c2['shift']());}catch(_0x43d19d){_0x5019c2['push'](_0x5019c2['shift']());}}}(a122_0x36b1,0xd7a92));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';function a122_0x3351(_0x1e1ad0,_0x4222de){_0x1e1ad0=_0x1e1ad0-0x154;const _0x36b1e3=a122_0x36b1();let _0x335170=_0x36b1e3[_0x1e1ad0];return _0x335170;}import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{buildSqlRelativePath}from'../../core/sql-sync/utils.js';import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x26bcad){const _0x482d20=a122_0x3351;if(_0x26bcad==='mybatisXml')return['<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','\x20\x20SELECT\x201\x20AS\x20id','</select>','']['join']('\x0a');return[_0x482d20(0x15b),''][_0x482d20(0x17b)]('\x0a');}export const sqlCreate={'service':'sql','command':'create','description':'Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','risk':a122_0x516294(0x159),'flags':[{'name':a122_0x516294(0x185),'type':'string','description':a122_0x516294(0x170)},{'name':'db-id','type':a122_0x516294(0x15f),'description':a122_0x516294(0x18a)},{'name':'mode','type':a122_0x516294(0x17e),'enum':[a122_0x516294(0x15c),a122_0x516294(0x168)],'description':a122_0x516294(0x182)}],async 'validate'(_0x237ea5){const _0x2133dd=a122_0x516294;if(!_0x237ea5[_0x2133dd(0x16f)])return;if(!_0x237ea5['str'](_0x2133dd(0x185))[_0x2133dd(0x16e)]())throw CliErrors[_0x2133dd(0x171)]('name',_0x2133dd(0x190));const _0x5962f6=resolveProvidedDbId(_0x237ea5);if(typeof _0x5962f6!==_0x2133dd(0x15f)||!Number[_0x2133dd(0x161)](_0x5962f6)||_0x5962f6<=0x0)throw CliErrors[_0x2133dd(0x171)](_0x2133dd(0x16b),_0x2133dd(0x173));if(!_0x237ea5[_0x2133dd(0x178)](_0x2133dd(0x188))['trim']())throw CliErrors[_0x2133dd(0x171)]('mode','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');},async 'dryRun'(_0x55cbcd){const _0x47ff29=a122_0x516294,_0xdf3233=loadSqlProjectConfig(_0x55cbcd[_0x47ff29(0x191)]),{sqlName:_0x517b65,dbId:_0x153adf,dbName:_0x4d461a,mode:_0x461da4}=await resolveSqlNewInputs(_0x55cbcd),_0x3f167c=buildSqlRelativePath('<server-generated-sqlCode>',_0x517b65,_0x4d461a,_0x461da4,_0x153adf),_0x1d61e0=_0xdf3233[_0x47ff29(0x155)]+'/'+_0x3f167c;return{'method':_0x47ff29(0x166),'url':_0x47ff29(0x17a),'body':{'appCode':_0x55cbcd[_0x47ff29(0x191)],'sqlName':_0x517b65,'dbId':_0x153adf,'mode':_0x461da4,'localPath':_0x1d61e0},'description':_0x47ff29(0x18b)+_0xdf3233[_0x47ff29(0x155)]};},async 'execute'(_0x531504){const _0x3f71ac=a122_0x516294,_0x29a9e6=loadSqlProjectConfig(_0x531504[_0x3f71ac(0x191)]),{sqlName:_0x28fcca,dbId:_0x4b895c,dbName:_0x28696a,mode:_0x4f54c7}=await resolveSqlNewInputs(_0x531504),_0x304dfd=generateSqlTemplate(_0x4f54c7),_0x3006ec=await createSqlQuery({'appCode':_0x531504['appCode'],'sqlName':_0x28fcca,'dbId':_0x4b895c,'sqlContent':_0x304dfd}),_0x5a0370=ensureRemoteSqlContent(_0x3006ec),_0x1dd312=_0x28696a||await getDbName(_0x531504[_0x3f71ac(0x191)],_0x4b895c)[_0x3f71ac(0x187)](()=>undefined),_0x23817a=buildSqlRelativePath(_0x3006ec[_0x3f71ac(0x154)],_0x3006ec[_0x3f71ac(0x18d)],_0x1dd312,_0x4f54c7,_0x4b895c),_0x14f25f=_0x29a9e6[_0x3f71ac(0x155)]+'/'+_0x23817a,_0x151834=buildLocalSqlFileContent({'sqlCode':_0x3006ec[_0x3f71ac(0x154)],'sqlName':_0x3006ec[_0x3f71ac(0x18d)],'dbId':_0x3006ec['dbId']},_0x5a0370,{'dbName':_0x1dd312,'mode':_0x4f54c7,'syncedAt':new Date()[_0x3f71ac(0x176)](),'description':_0x3006ec[_0x3f71ac(0x184)]});if(await fileExists(_0x14f25f))throw CliErrors[_0x3f71ac(0x162)]('File\x20already\x20exists:\x20'+_0x14f25f);await ensureParentDirectory(_0x14f25f),await writeFile(_0x14f25f,_0x151834,_0x3f71ac(0x174));const _0x37b545=await readSqlLockFile(_0x29a9e6[_0x3f71ac(0x189)]),{lockData:_0x4fd0a3,appLock:_0x37d5ec}=ensureSqlLockScope(_0x37b545??createEmptySqlLock(),_0x29a9e6[_0x3f71ac(0x191)],_0x29a9e6['sqlRoot'],_0x3f71ac(0x183));return _0x37d5ec[_0x3f71ac(0x167)][_0x3006ec[_0x3f71ac(0x154)]]={...buildSqlLockEntry(_0x3006ec,_0x5a0370,computeSqlContentHash(_0x151834),{'dbName':_0x1dd312}),'path':_0x23817a,'mode':_0x4f54c7},_0x37d5ec[_0x3f71ac(0x15d)]=new Date()[_0x3f71ac(0x176)](),await writeSqlLockFile(_0x29a9e6['lockFilePath'],_0x4fd0a3),{'ok':!![],'data':{'id':_0x3006ec['id'],'sqlCode':_0x3006ec[_0x3f71ac(0x154)],'sqlName':_0x3006ec[_0x3f71ac(0x18d)],'dbId':_0x3006ec['dbId'],'path':_0x14f25f,'mode':_0x4f54c7},'message':_0x3f71ac(0x16d)+_0x3006ec[_0x3f71ac(0x154)]};}};async function resolveSqlNewInputs(_0x5c2e19){const _0x19f3fd=await resolveSqlNameInput(_0x5c2e19),{dbId:_0x1beeda,dbName:_0x1598fc}=await resolveDbSelection(_0x5c2e19),_0x2c7891=await resolveSqlModeInput(_0x5c2e19);return{'sqlName':_0x19f3fd,'dbId':_0x1beeda,'dbName':_0x1598fc,'mode':_0x2c7891};}async function resolveSqlNameInput(_0x5af4f5){const _0x3110af=a122_0x516294,_0x4d23ae=_0x5af4f5[_0x3110af(0x178)]('name')[_0x3110af(0x16e)]();if(_0x4d23ae)return _0x4d23ae;if(_0x5af4f5['nonInteractive'])throw CliErrors[_0x3110af(0x171)](_0x3110af(0x185),_0x3110af(0x190));return(await input({'message':'请输入\x20SQL\x20名称:','validate':_0x24c823=>_0x24c823['trim']()?!![]:_0x3110af(0x177)}))[_0x3110af(0x16e)]();}function a122_0x36b1(){const _0x49cc6a=['new','description','name','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','catch','mode','lockFilePath','Target\x20database\x20ID','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','12219753sPYrWn','sqlName','dbId','flag','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','appCode','476072KpWWnC','sqlCode','sqlRootDir','isInteger','279557hXRDba','length','high-risk-write','dbName','SELECT\x201\x20AS\x20id;','sql','lastSync','45DyBqaj','number','4096614kPvGSY','isFinite','validation','4464930MDMoMO','4733865vNzchX','2WmgsfB','POST','sqls','mybatisXml','dbId\x20不能为空','普通\x20SQL(sql)','db-id','__manual__','Created\x20SQL\x20query\x20','trim','nonInteractive','SQL\x20query\x20display\x20name','flagMissing','3023720EsqEsb','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','utf8','请选择本地\x20SQL\x20模式:','toISOString','SQL\x20名称不能为空','str','✎\x20手动输入\x20dbId','/smartapi/custom/saveUserCustomSql','join','适合带动态标签的\x20MyBatis\x20XML\x20SQL','Invalid\x20database\x20selection\x20payload:\x20','string','请输入目标数据库\x20dbId:','请选择目标数据库:','9mcQDTB','Local\x20SQL\x20file\x20mode'];a122_0x36b1=function(){return _0x49cc6a;};return a122_0x36b1();}async function resolveDbSelection(_0x2f9476){const _0x155f0c=a122_0x516294,_0x2ee1f0=resolveProvidedDbId(_0x2f9476);if(typeof _0x2ee1f0===_0x155f0c(0x15f)&&Number['isFinite'](_0x2ee1f0)&&_0x2ee1f0>0x0)return{'dbId':_0x2ee1f0,'dbName':await getDbName(_0x2f9476[_0x155f0c(0x191)],_0x2ee1f0)[_0x155f0c(0x187)](()=>undefined)};if(_0x2f9476[_0x155f0c(0x16f)])throw CliErrors[_0x155f0c(0x171)](_0x155f0c(0x16b),_0x155f0c(0x173));const _0x36a274=await listDatabases(_0x2f9476[_0x155f0c(0x191)])['catch'](()=>[]);if(_0x36a274[_0x155f0c(0x158)]===0x1)return{'dbId':_0x36a274[0x0][_0x155f0c(0x18e)],'dbName':_0x36a274[0x0][_0x155f0c(0x15a)]};if(_0x36a274[_0x155f0c(0x158)]>0x1){const _0x3753e0=await select({'message':_0x155f0c(0x180),'choices':[..._0x36a274['map'](_0x3b2242=>({'name':_0x3b2242[_0x155f0c(0x15a)]+'\x20('+_0x3b2242[_0x155f0c(0x18e)]+')','value':serializeDbSelection(_0x3b2242)})),{'name':_0x155f0c(0x179),'value':_0x155f0c(0x16c)}]});if(_0x3753e0!=='__manual__')return deserializeDbSelection(_0x3753e0);}const _0x47776f=await input({'message':_0x155f0c(0x17f),'validate':_0x4982a1=>{const _0x10e077=_0x155f0c,_0x24979c=_0x4982a1[_0x10e077(0x16e)]();if(!_0x24979c)return _0x10e077(0x169);const _0x412089=Number(_0x24979c);if(!Number[_0x10e077(0x156)](_0x412089)||_0x412089<=0x0)return'dbId\x20必须为正整数';return!![];}});return{'dbId':Number(_0x47776f[_0x155f0c(0x16e)]())};}async function resolveSqlModeInput(_0x3e79f1){const _0x168899=a122_0x516294,_0x257f4a=_0x3e79f1[_0x168899(0x178)](_0x168899(0x188))['trim']();if(_0x257f4a==='sql'||_0x257f4a==='mybatisXml')return _0x257f4a;if(_0x3e79f1['nonInteractive'])throw CliErrors[_0x168899(0x171)](_0x168899(0x188),_0x168899(0x186));return await select({'message':_0x168899(0x175),'choices':[{'name':_0x168899(0x16a),'value':_0x168899(0x15c),'description':'适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句'},{'name':'MyBatis\x20XML(mybatisXml)','value':_0x168899(0x168),'description':_0x168899(0x17c)}]});}function serializeDbSelection(_0x496da2){const _0x447720=a122_0x516294;return JSON['stringify']({'dbId':_0x496da2['dbId'],'dbName':_0x496da2[_0x447720(0x15a)]});}function deserializeDbSelection(_0xa8845f){const _0x4b76cc=a122_0x516294;try{const _0xb0e31=JSON['parse'](_0xa8845f);if(typeof _0xb0e31['dbId']===_0x4b76cc(0x15f)&&Number[_0x4b76cc(0x161)](_0xb0e31['dbId']))return{'dbId':_0xb0e31[_0x4b76cc(0x18e)],'dbName':_0xb0e31[_0x4b76cc(0x15a)]};}catch{}throw CliErrors['validation'](_0x4b76cc(0x17d)+_0xa8845f);}function resolveProvidedDbId(_0x5d4b1b){const _0x5a5c59=a122_0x516294,_0x5c9535=_0x5d4b1b[_0x5a5c59(0x18f)](_0x5a5c59(0x16b));if(typeof _0x5c9535===_0x5a5c59(0x15f)&&Number[_0x5a5c59(0x161)](_0x5c9535))return _0x5c9535;return undefined;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a123_0x2318db=a123_0x4feb;(function(_0xce66e2,_0x38e63c){const _0x1cbec5=a123_0x4feb,_0x4629fc=_0xce66e2();while(!![]){try{const _0x259bb0=parseInt(_0x1cbec5(0x1b3))/0x1*(-parseInt(_0x1cbec5(0x1ac))/0x2)+parseInt(_0x1cbec5(0x1b6))/0x3*(-parseInt(_0x1cbec5(0x1b4))/0x4)+parseInt(_0x1cbec5(0x19c))/0x5*(-parseInt(_0x1cbec5(0x1b7))/0x6)+parseInt(_0x1cbec5(0x19f))/0x7*(-parseInt(_0x1cbec5(0x1a6))/0x8)+-parseInt(_0x1cbec5(0x19e))/0x9*(-parseInt(_0x1cbec5(0x1a5))/0xa)+parseInt(_0x1cbec5(0x1ae))/0xb*(parseInt(_0x1cbec5(0x1a1))/0xc)+parseInt(_0x1cbec5(0x1a0))/0xd;if(_0x259bb0===_0x38e63c)break;else _0x4629fc['push'](_0x4629fc['shift']());}catch(_0x1694fe){_0x4629fc['push'](_0x4629fc['shift']());}}}(a123_0x5d93,0xb4436));function a123_0x4feb(_0xf5f7ee,_0x2c8d2c){_0xf5f7ee=_0xf5f7ee-0x196;const _0x5d9337=a123_0x5d93();let _0x4feb16=_0x5d9337[_0xf5f7ee];return _0x4feb16;}import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';function a123_0x5d93(){const _0x156cc7=['entries','trashDir','filter','startsWith','Deleted\x20','104YFNoas','trashedTo','572209qDasMp','lockFilePath','toISOString','sql','delete','11514gGAeTF','756388ShDFyp','remoteId','12MmeXMj','7335180VpQulp','sqlcode','\x20(local\x20file\x20moved\x20to\x20trash)','Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','projectRoot','appCode','high-risk-write','sqlRoot','fromEntries','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','sqls','POST','validation','length','lastSync','5zJjHUD','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','6992748vmUQop','325360rGrIeY','18518201gWjnjo','300EwRXph','/smartapi/custom/deleteUserCustomSql','replace','Would\x20delete\x20SQL\x20','10RCYriG','32naoWGY'];a123_0x5d93=function(){return _0x156cc7;};return a123_0x5d93();}import{deleteSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{fileExists}from'../../core/bff/file-system.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDelete={'service':a123_0x2318db(0x1b1),'command':a123_0x2318db(0x1b2),'description':a123_0x2318db(0x1ba),'risk':a123_0x2318db(0x1bd),'flags':[SQLCODE_FLAG],async 'validate'(_0x4e3ec1){const _0x2fe14f=a123_0x2318db,_0x335993=loadSqlProjectConfig(_0x4e3ec1[_0x2fe14f(0x1bc)]),_0x5a91a4=await readSqlLockFile(_0x335993[_0x2fe14f(0x1af)]);if(!_0x5a91a4)throw CliErrors['validation'](_0x2fe14f(0x19d));},async 'dryRun'(_0x222db4){const _0x104602=a123_0x2318db,_0x432e51=loadSqlProjectConfig(_0x222db4[_0x104602(0x1bc)]),_0x1fc95f=await readSqlLockFile(_0x432e51['lockFilePath']);if(!_0x1fc95f)throw CliErrors[_0x104602(0x199)](_0x104602(0x19d));const {appLock:_0x68d0eb}=ensureSqlLockScope(_0x1fc95f,_0x222db4[_0x104602(0x1bc)],_0x432e51[_0x104602(0x1be)],_0x104602(0x1b2)),_0x3ae92b=_0x222db4['str'](_0x104602(0x1b8)),_0x154fd0=_0x68d0eb[_0x104602(0x197)][_0x3ae92b];if(!_0x154fd0)throw CliErrors[_0x104602(0x199)](_0x104602(0x196)+_0x3ae92b+'\x22.');return{'method':_0x104602(0x198),'url':_0x104602(0x1a2),'body':{'sqlCode':_0x3ae92b,'id':_0x154fd0[_0x104602(0x1b5)],'localPath':resolveLocalSqlFilePath(_0x432e51,_0x3ae92b,_0x154fd0)},'description':_0x104602(0x1a4)+_0x3ae92b+'\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20'+_0x432e51[_0x104602(0x1a8)]};},async 'execute'(_0x43ebd9){const _0x4ac6b7=a123_0x2318db,_0x31b375=loadSqlProjectConfig(_0x43ebd9[_0x4ac6b7(0x1bc)]),_0x293d84=await readSqlLockFile(_0x31b375[_0x4ac6b7(0x1af)]);if(!_0x293d84)throw CliErrors[_0x4ac6b7(0x199)]('SQL\x20lock\x20file\x20not\x20found.');const {lockData:_0x44781b,appLock:_0x4835c5}=ensureSqlLockScope(_0x293d84,_0x43ebd9[_0x4ac6b7(0x1bc)],_0x31b375[_0x4ac6b7(0x1be)],'delete'),_0x2e7676=_0x43ebd9['str'](_0x4ac6b7(0x1b8)),_0xf1eea1=_0x4835c5[_0x4ac6b7(0x197)][_0x2e7676];if(!_0xf1eea1)throw CliErrors[_0x4ac6b7(0x199)](_0x4ac6b7(0x196)+_0x2e7676+'\x22.');await deleteSqlQuery({'id':_0xf1eea1['remoteId'],'sqlCode':_0x2e7676}),_0x4835c5[_0x4ac6b7(0x197)]=Object[_0x4ac6b7(0x1bf)](Object[_0x4ac6b7(0x1a7)](_0x4835c5['sqls'])[_0x4ac6b7(0x1a9)](([_0x138b3c])=>_0x138b3c!==_0x2e7676)),_0x4835c5[_0x4ac6b7(0x19b)]=new Date()[_0x4ac6b7(0x1b0)](),await writeSqlLockFile(_0x31b375['lockFilePath'],_0x44781b);const _0x143c3d=resolveLocalSqlFilePath(_0x31b375,_0x2e7676,_0xf1eea1);let _0x1d4c84;await fileExists(_0x143c3d)&&(_0x1d4c84=await moveToTrash(_0x31b375[_0x4ac6b7(0x1bb)],_0x31b375[_0x4ac6b7(0x1a8)],_0x143c3d),await cleanupEmptyDirectories(dirname(_0x143c3d),_0x31b375['sqlRootDir']));const _0x1a9d8e={'deleted':_0x2e7676,'remoteId':_0xf1eea1[_0x4ac6b7(0x1b5)]};if(_0x1d4c84)_0x1a9d8e[_0x4ac6b7(0x1ad)]=_0x1d4c84;return{'ok':!![],'data':_0x1a9d8e,'message':_0x4ac6b7(0x1ab)+_0x2e7676+(_0x1d4c84?_0x4ac6b7(0x1b9):'')};}};async function moveToTrash(_0x4da0a5,_0x3e3117,_0x1197ef){const _0x510614=a123_0x2318db,_0x5e5a91=new Date()[_0x510614(0x1b0)]()[_0x510614(0x1a3)](/[:.]/g,'-'),_0x1fa730=relative(_0x4da0a5,_0x1197ef),_0x3f5c8d=join(_0x3e3117,_0x5e5a91,_0x1fa730);return await mkdir(dirname(_0x3f5c8d),{'recursive':!![]}),await rename(_0x1197ef,_0x3f5c8d),_0x3f5c8d;}async function cleanupEmptyDirectories(_0x32e755,_0x28b889){const _0x4fb0b=a123_0x2318db;let _0x2ea04a=resolve(_0x32e755);const _0x6f4d7b=resolve(_0x28b889);while(_0x2ea04a[_0x4fb0b(0x1aa)](''+_0x6f4d7b+sep)||_0x2ea04a===_0x6f4d7b){if(_0x2ea04a===_0x6f4d7b)return;try{const _0x2448c1=await readdir(_0x2ea04a);if(_0x2448c1[_0x4fb0b(0x19a)]>0x0)return;await rmdir(_0x2ea04a);}catch{return;}_0x2ea04a=dirname(_0x2ea04a);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a124_0x186b22=a124_0x243e;(function(_0x23b5d8,_0x18b58c){const _0x36e97b=a124_0x243e,_0x878a3b=_0x23b5d8();while(!![]){try{const _0x1b8adf=parseInt(_0x36e97b(0xb4))/0x1+parseInt(_0x36e97b(0x9e))/0x2*(-parseInt(_0x36e97b(0xa3))/0x3)+parseInt(_0x36e97b(0xad))/0x4*(-parseInt(_0x36e97b(0xa0))/0x5)+-parseInt(_0x36e97b(0xab))/0x6*(-parseInt(_0x36e97b(0xae))/0x7)+-parseInt(_0x36e97b(0x9c))/0x8+-parseInt(_0x36e97b(0x9d))/0x9+parseInt(_0x36e97b(0xb1))/0xa;if(_0x1b8adf===_0x18b58c)break;else _0x878a3b['push'](_0x878a3b['shift']());}catch(_0x5b2fad){_0x878a3b['push'](_0x878a3b['shift']());}}}(a124_0x5e1c,0x65463));import{getSqlQueryInfo}from'../../core/api-client.js';function a124_0x243e(_0x1d593f,_0x3ca310){_0x1d593f=_0x1d593f-0x9c;const _0x5e1c81=a124_0x5e1c();let _0x243ec2=_0x5e1c81[_0x1d593f];return _0x243ec2;}import{getDbName}from'../../core/db-resolver.js';function a124_0x5e1c(){const _0x15986e=['4gHgovV','1688351hMrMeo','sqlcode','dbId','24032200GTNnwm','sqlContent','appCode','10889Atihly','4967040HVNAsP','7039602faJvqu','94XTZqtE','str','3477895OnWQYc','read','Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','9054xljtFg','sqlName','description','boolean','verbose','bool','sql','detail','6iMNOaM','Return\x20full\x20raw\x20SQL\x20query\x20object'];a124_0x5e1c=function(){return _0x15986e;};return a124_0x5e1c();}import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDetail={'service':a124_0x186b22(0xa9),'command':a124_0x186b22(0xaa),'description':a124_0x186b22(0xa2),'risk':a124_0x186b22(0xa1),'flags':[SQLCODE_FLAG,{'name':a124_0x186b22(0xa7),'type':a124_0x186b22(0xa6),'description':a124_0x186b22(0xac)}],async 'execute'(_0x1776f7){const _0x39795d=a124_0x186b22,_0x32ed1d=await getSqlQueryInfo(_0x1776f7[_0x39795d(0xb3)],_0x1776f7[_0x39795d(0x9f)](_0x39795d(0xaf))),_0x129e49=_0x1776f7[_0x39795d(0xa8)](_0x39795d(0xa7));if(_0x129e49)return{'ok':!![],'data':_0x32ed1d};const _0x331520=_0x32ed1d[_0x39795d(0xb0)]?await getDbName(_0x1776f7['appCode'],_0x32ed1d[_0x39795d(0xb0)]):undefined;return{'ok':!![],'data':{'sqlCode':_0x32ed1d['sqlCode'],'sqlName':_0x32ed1d[_0x39795d(0xa4)],'db':_0x331520?_0x331520+'\x20('+_0x32ed1d[_0x39795d(0xb0)]+')':_0x32ed1d[_0x39795d(0xb0)]??'','description':_0x32ed1d[_0x39795d(0xa5)]??'','sqlContent':_0x32ed1d[_0x39795d(0xb2)]??''}};}};
|
package/lib/commands/sql/exec.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a125_0x367413=a125_0x2fd7;(function(_0x1d5ca5,_0x5c44b5){const _0x400f79=a125_0x2fd7,_0x3b3d26=_0x1d5ca5();while(!![]){try{const _0x2cf4a6=parseInt(_0x400f79(0xd4))/0x1*(parseInt(_0x400f79(0xd2))/0x2)+-parseInt(_0x400f79(0xe7))/0x3+-parseInt(_0x400f79(0xd3))/0x4*(-parseInt(_0x400f79(0xdb))/0x5)+parseInt(_0x400f79(0xe2))/0x6*(-parseInt(_0x400f79(0xdd))/0x7)+parseInt(_0x400f79(0xd8))/0x8*(parseInt(_0x400f79(0xd7))/0x9)+parseInt(_0x400f79(0xd6))/0xa*(-parseInt(_0x400f79(0xe1))/0xb)+-parseInt(_0x400f79(0xde))/0xc*(-parseInt(_0x400f79(0xea))/0xd);if(_0x2cf4a6===_0x5c44b5)break;else _0x3b3d26['push'](_0x3b3d26['shift']());}catch(_0x12ab5f){_0x3b3d26['push'](_0x3b3d26['shift']());}}}(a125_0x3819,0x74af1));function a125_0x2fd7(_0x3b04fe,_0x51ccdb){_0x3b04fe=_0x3b04fe-0xd2;const _0x3819f4=a125_0x3819();let _0x2fd727=_0x3819f4[_0x3b04fe];return _0x2fd727;}function a125_0x3819(){const _0x227f78=['831667DyDsXv','str','206740qbSrmx','477dheLua','94216RtXSQI','SQL\x20execution\x20failed','execResult','366470XrYCVB','Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode','7UejvtG','312quyFCd','SQL\x20parameters\x20as\x20JSON\x20string\x20(e.g.\x20\x27{\x22key\x22:\x22value\x22}\x27)','now','319IwZIYf','3299280lYztEy','appCode','sql','isArray','string','2301645woXyDy','length','execError','396071NRLlQB','\x20row(s)\x20in\x20','execSuccess','params','Returned\x20','2XDCPha','8LVugBk'];a125_0x3819=function(){return _0x227f78;};return a125_0x3819();}import{executeSql}from'../../core/api-client.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';import{parseJsonParams}from'../../utils/params.js';export const sqlExec={'service':a125_0x367413(0xe4),'command':'exec','description':a125_0x367413(0xdc),'risk':'read','flags':[SQLCODE_FLAG,{'name':a125_0x367413(0xed),'type':a125_0x367413(0xe6),'description':a125_0x367413(0xdf)}],async 'execute'(_0x5c499f){const _0x5a7940=a125_0x367413,_0x38047f=parseJsonParams(_0x5c499f['str']('params')),_0xd2a6a5=Date[_0x5a7940(0xe0)](),_0x1c9ed7=await executeSql(_0x5c499f[_0x5a7940(0xe3)],_0x5c499f[_0x5a7940(0xd5)]('sqlcode'),_0x38047f),_0xdfd745=Date[_0x5a7940(0xe0)]()-_0xd2a6a5,_0xa5045d=_0x1c9ed7?.[_0x5a7940(0xda)]??_0x1c9ed7,_0x406d16=_0x1c9ed7?.[_0x5a7940(0xec)]??!![];if(!_0x406d16)return{'ok':![],'data':{'error':_0x1c9ed7?.[_0x5a7940(0xe9)]||_0x5a7940(0xd9),'elapsed':_0xdfd745},'message':_0x5a7940(0xd9)};const _0x43ead8=Array[_0x5a7940(0xe5)](_0xa5045d)?_0xa5045d:[];return{'ok':!![],'data':{'rows':_0x43ead8,'rowCount':_0x43ead8[_0x5a7940(0xe8)],'elapsed':_0xdfd745},'message':_0x5a7940(0xee)+_0x43ead8[_0x5a7940(0xe8)]+_0x5a7940(0xeb)+_0xdfd745+'ms'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1efce2,_0xef9c84){const _0x10961f=a126_0xe1c5,_0x3b1334=_0x1efce2();while(!![]){try{const _0x425f80=parseInt(_0x10961f(0x133))/0x1*(parseInt(_0x10961f(0x135))/0x2)+-parseInt(_0x10961f(0x138))/0x3+-parseInt(_0x10961f(0x134))/0x4*(parseInt(_0x10961f(0x136))/0x5)+-parseInt(_0x10961f(0x131))/0x6+-parseInt(_0x10961f(0x132))/0x7*(-parseInt(_0x10961f(0x137))/0x8)+parseInt(_0x10961f(0x139))/0x9+-parseInt(_0x10961f(0x13b))/0xa*(-parseInt(_0x10961f(0x13a))/0xb);if(_0x425f80===_0xef9c84)break;else _0x3b1334['push'](_0x3b1334['shift']());}catch(_0x4e5897){_0x3b1334['push'](_0x3b1334['shift']());}}}(a126_0x1fe8,0xabe07));function a126_0xe1c5(_0x404774,_0x18b57d){_0x404774=_0x404774-0x131;const _0x1fe8ef=a126_0x1fe8();let _0xe1c5ca=_0x1fe8ef[_0x404774];return _0xe1c5ca;}import{sqlList}from'../../commands/sql/list.js';import{sqlDetail}from'../../commands/sql/detail.js';import{sqlValidate}from'../../commands/sql/validate.js';import{sqlSave}from'../../commands/sql/save.js';import{sqlExec}from'../../commands/sql/exec.js';import{sqlPull}from'../../commands/sql/pull.js';import{sqlCreate}from'../../commands/sql/create.js';import{sqlStatus}from'../../commands/sql/status.js';import{sqlPush}from'../../commands/sql/push.js';import{sqlDelete}from'../../commands/sql/delete.js';function a126_0x1fe8(){const _0x31ea46=['33184ViToXs','3288618gWFrUH','6029289IgVJvc','13871803vUcLXF','10EjeUko','7354422JTvPMu','1911jxTSky','8dFVYIv','48fuoYwN','131434YMXrvC','234660xoOXOV'];a126_0x1fe8=function(){return _0x31ea46;};return a126_0x1fe8();}export const sqlDefinitions=[sqlList,sqlDetail,sqlStatus,sqlCreate,sqlPush,sqlValidate,sqlSave,sqlExec,sqlPull,sqlDelete];
|
package/lib/commands/sql/list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a127_0x54d8(_0x5063fe,_0x359048){_0x5063fe=_0x5063fe-0x125;const _0x195e7e=a127_0x195e();let _0x54d86e=_0x195e7e[_0x5063fe];return _0x54d86e;}function a127_0x195e(){const _0x19850a=['list','pagesize','read','str','Page\x20size','length','verbose','24xsFhrC','8011386jntXMb','Page\x20number','335043GhgUio','appCode','paging','2QBmCSh','List\x20custom\x20SQL\x20queries','188223yJKrkX','num','Found\x20','\x20SQL\x20queries\x20(total:\x20','all','sqlcode','string','map','bool','description','tableData','sqlCode','16XeXaSC','No\x20custom\x20SQL\x20queries\x20found.','531545ZDDwiG','Return\x20full\x20SQL\x20query\x20objects\x20including\x20parameters\x20and\x20SQL\x20content','number','1356971OheVWd','1110643gXBUbH','40tPQgBl','name','3274698IRtcde','dbId','boolean','page','Filter\x20by\x20SQL\x20name'];a127_0x195e=function(){return _0x19850a;};return a127_0x195e();}const a127_0x3d867e=a127_0x54d8;(function(_0x22dfe7,_0x4e050f){const _0x5efbd4=a127_0x54d8,_0x4f0fcb=_0x22dfe7();while(!![]){try{const _0x3d6d8b=-parseInt(_0x5efbd4(0x12c))/0x1*(-parseInt(_0x5efbd4(0x141))/0x2)+parseInt(_0x5efbd4(0x13e))/0x3*(parseInt(_0x5efbd4(0x13b))/0x4)+parseInt(_0x5efbd4(0x128))/0x5+-parseInt(_0x5efbd4(0x12f))/0x6+-parseInt(_0x5efbd4(0x143))/0x7*(-parseInt(_0x5efbd4(0x126))/0x8)+-parseInt(_0x5efbd4(0x13c))/0x9+parseInt(_0x5efbd4(0x12d))/0xa*(parseInt(_0x5efbd4(0x12b))/0xb);if(_0x3d6d8b===_0x4e050f)break;else _0x4f0fcb['push'](_0x4f0fcb['shift']());}catch(_0x1a1d34){_0x4f0fcb['push'](_0x4f0fcb['shift']());}}}(a127_0x195e,0xf3bb3));import{listSqlQueries}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';export const sqlList={'service':'sql','command':a127_0x3d867e(0x134),'description':a127_0x3d867e(0x142),'risk':a127_0x3d867e(0x136),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a127_0x3d867e(0x12e),'type':a127_0x3d867e(0x149),'description':a127_0x3d867e(0x133)},{'name':a127_0x3d867e(0x132),'type':'number','description':a127_0x3d867e(0x13d),'default':0x1},{'name':a127_0x3d867e(0x135),'type':a127_0x3d867e(0x12a),'description':a127_0x3d867e(0x138)},{'name':'verbose','type':a127_0x3d867e(0x131),'description':a127_0x3d867e(0x129)}],async 'execute'(_0x4f4c7d){const _0x407f98=a127_0x3d867e,_0x47bfc3=await listSqlQueries(_0x4f4c7d[_0x407f98(0x13f)],{'sqlCode':_0x4f4c7d[_0x407f98(0x137)](_0x407f98(0x148))||undefined,'sqlName':_0x4f4c7d['str'](_0x407f98(0x12e))||undefined,'currentPage':_0x4f4c7d[_0x407f98(0x144)](_0x407f98(0x132)),'pageSize':_0x4f4c7d['num'](_0x407f98(0x135),0x32)}),_0x40a4d7=_0x4f4c7d[_0x407f98(0x14b)](_0x407f98(0x13a)),_0x48a93a=_0x47bfc3[_0x407f98(0x14d)]??[],_0x2f0f49=_0x47bfc3[_0x407f98(0x140)]?.['totalCount']??_0x48a93a[_0x407f98(0x139)];let _0x3e8d76;return _0x40a4d7?_0x3e8d76=_0x48a93a:_0x3e8d76=await Promise[_0x407f98(0x147)](_0x48a93a[_0x407f98(0x14a)](async _0x38bd3c=>{const _0x3979b2=_0x407f98;let _0x2c4f4c;try{_0x2c4f4c=_0x38bd3c[_0x3979b2(0x130)]?await getDbName(_0x4f4c7d['appCode'],_0x38bd3c[_0x3979b2(0x130)]):undefined;}catch{}return{'sqlCode':_0x38bd3c[_0x3979b2(0x125)],'sqlName':_0x38bd3c['sqlName'],'description':_0x38bd3c[_0x3979b2(0x14c)]??'','db':_0x2c4f4c?_0x2c4f4c+'\x20('+_0x38bd3c[_0x3979b2(0x130)]+')':_0x38bd3c[_0x3979b2(0x130)]??''};})),{'ok':!![],'data':_0x3e8d76,'message':_0x48a93a['length']===0x0?_0x407f98(0x127):_0x407f98(0x145)+_0x48a93a[_0x407f98(0x139)]+_0x407f98(0x146)+_0x2f0f49+').'};}};
|