@lovrabet/rabetbase-cli 2.2.3 → 2.2.4-beta.1
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(_0x34fa5e,_0x5b1f58){const _0x19a0a6=a116_0x4615,_0x508fe9=_0x34fa5e();while(!![]){try{const _0xe2e996=-parseInt(_0x19a0a6(0x106))/0x1*(parseInt(_0x19a0a6(0xeb))/0x2)+-parseInt(_0x19a0a6(0xf0))/0x3+-parseInt(_0x19a0a6(0xec))/0x4*(parseInt(_0x19a0a6(0x11f))/0x5)+-parseInt(_0x19a0a6(0x108))/0x6*(parseInt(_0x19a0a6(0x105))/0x7)+-parseInt(_0x19a0a6(0x117))/0x8*(parseInt(_0x19a0a6(0xf7))/0x9)+-parseInt(_0x19a0a6(0x110))/0xa*(parseInt(_0x19a0a6(0x11c))/0xb)+parseInt(_0x19a0a6(0xf2))/0xc;if(_0xe2e996===_0x5b1f58)break;else _0x508fe9['push'](_0x508fe9['shift']());}catch(_0x5427af){_0x508fe9['push'](_0x508fe9['shift']());}}}(a116_0x3aee,0x65a57));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a116_0x5711a3 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';function a116_0x3aee(){const _0x1c2278=['production','\x20api\x20pull\x27','join','setLogPath','4302djpqge','从旧配置文件升级成功','Migration\x20cancelled.\x20Run\x20`','Please\x20enter\x20App\x20Code:','\x20\x20Default:\x20','Invalid\x20App\x20Code','\x20\x20Apps:\x20','trim','env','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','✓\x20Upgraded\x20','gray','utf8','package.json','64365xlIeJy','22RGsIIh','log','234pyrCLG','version','appcode','\x20\x20appcode:\x20','.rabetbase.json','\x20api\x20generate\x27\x20and\x20\x27','string','.bak','2850jgjzEP','\x20\x20Old\x20file\x20backed\x20up\x20as\x20','apps','../..','App\x20Code\x20cannot\x20be\x20empty','bold','cwd','1056pUUqfU','cyan','parse','toLocaleString','defaultApp','16148BZiTMe','\x20project\x20init`\x20to\x20start\x20fresh.','1.0.0','90XaaMMl','green','yellow','4170TjNONW','180936YkKass','keys','info','app','1215102qBobYQ','初始化项目配置文件成功','30258480HnodLp'];a116_0x3aee=function(){return _0x1c2278;};return a116_0x3aee();}import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x576646){const _0x21512e=a116_0x4615,{appcode:_0x5e1754,env:_0x4f8f23,autoYes:_0xa0c2f7}=_0x576646,_0x1b9df2=process[_0x21512e(0x116)]();if(getProjectConfigPath())throw new Error('.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.');let _0x59a021;for(const _0x3a9e4e of LEGACY_CONFIG_NAMES){const _0x1df90b=resolve(_0x1b9df2,_0x3a9e4e);if(existsSync(_0x1df90b)){_0x59a021=_0x1df90b;break;}}if(_0x59a021){let _0x28fdb7={};try{_0x28fdb7=JSON[_0x21512e(0x119)](readFileSync(_0x59a021,'utf8'));}catch{}const _0x18e7ec=basename(_0x59a021),_0x352d56=_0x28fdb7?.[_0x21512e(0x10a)]||_0x28fdb7?.[_0x21512e(0xef)];let _0x1889f0=_0xa0c2f7;!_0xa0c2f7&&(console[_0x21512e(0x107)](a116_0x5711a3[_0x21512e(0xea)](_0x21512e(0x100)+a116_0x5711a3[_0x21512e(0x115)](_0x18e7ec))),_0x352d56&&console['log'](a116_0x5711a3[_0x21512e(0x118)](_0x21512e(0x10b)+_0x352d56)),_0x1889f0=await confirm({'message':'Upgrade\x20it\x20to\x20'+a116_0x5711a3[_0x21512e(0x115)](_0x21512e(0x10c))+'?\x20(Old\x20file\x20→\x20*.bak)','default':!![]}));if(!_0x1889f0){console['log'](_0x21512e(0xf9)+CLI_BIN_NAME+_0x21512e(0x11d));return;}const _0x3b44f4=resolve(_0x1b9df2,NEW_CONFIG_NAME),_0x181ddf=getCliVersionFromPkg(),_0x5645a=readRawConfig(),_0x28e065=_0x5e1754||(typeof _0x28fdb7?.[_0x21512e(0x10a)]===_0x21512e(0x10e)?_0x28fdb7['appcode']:undefined)||(typeof _0x28fdb7?.['app']==='string'?_0x28fdb7['app']:undefined)||await askAppcode(),_0x254cab=typeof _0x28fdb7?.[_0x21512e(0xff)]===_0x21512e(0x10e)?_0x28fdb7[_0x21512e(0xff)]:typeof _0x5645a[_0x21512e(0xff)]===_0x21512e(0x10e)?_0x5645a[_0x21512e(0xff)]:_0x21512e(0xf3),_0x59e5d9=buildCanonicalProjectConfig({..._0x5645a,..._0x28fdb7},{'appCodes':[_0x28e065],'env':_0x254cab,'metadata':{'version':_0x181ddf,'migratedAt':new Date()['toLocaleString'](),'migratedFrom':_0x59a021}});writeConfigFile(_0x3b44f4,_0x59e5d9);const _0x110bb6=_0x59a021+'.bak';renameSync(_0x59a021,_0x110bb6),logger[_0x21512e(0xf6)](_0x1b9df2),logger[_0x21512e(0xee)]('init',_0x21512e(0xf8),{'from':_0x59a021,'to':_0x3b44f4,'appcode':_0x28e065,'env':_0x59e5d9[_0x21512e(0xff)]}),console[_0x21512e(0x107)](a116_0x5711a3[_0x21512e(0x120)](_0x21512e(0x101)+_0x18e7ec+'\x20→\x20.rabetbase.json')),console[_0x21512e(0x107)](a116_0x5711a3[_0x21512e(0x118)](_0x21512e(0xfd)+Object['keys'](_0x59e5d9['apps']||{})['join'](',\x20'))),console[_0x21512e(0x107)](a116_0x5711a3[_0x21512e(0x118)]('\x20\x20Default:\x20'+_0x59e5d9['defaultApp'])),console[_0x21512e(0x107)](a116_0x5711a3[_0x21512e(0x102)](_0x21512e(0x111)+_0x18e7ec+_0x21512e(0x10f)));return;}const _0xff9b4=_0x5e1754||await askAppcode(),_0x322ff5=resolve(_0x1b9df2,NEW_CONFIG_NAME),_0x4a8269=getCliVersionFromPkg(),_0x467018=readRawConfig(),_0x2de330=typeof _0x467018['env']==='string'?_0x467018['env']:undefined,_0x41e392=buildCanonicalProjectConfig({},{'appCodes':[_0xff9b4],'env':_0x4f8f23||_0x2de330||_0x21512e(0xf3),'metadata':{'version':_0x4a8269,'createdAt':new Date()[_0x21512e(0x11a)]()}});writeConfigFile(_0x322ff5,_0x41e392),logger['setLogPath'](_0x1b9df2),logger[_0x21512e(0xee)]('init',_0x21512e(0xf1),{'appcode':_0xff9b4,'env':_0x41e392[_0x21512e(0xff)],'version':_0x41e392[_0x21512e(0x109)],'configPath':_0x322ff5}),console['log'](a116_0x5711a3[_0x21512e(0x120)]('✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory')),console[_0x21512e(0x107)](a116_0x5711a3[_0x21512e(0x118)](_0x21512e(0xfd)+Object[_0x21512e(0xed)](_0x41e392[_0x21512e(0x112)]||{})[_0x21512e(0xf5)](',\x20'))),console[_0x21512e(0x107)](a116_0x5711a3[_0x21512e(0x118)](_0x21512e(0xfb)+_0x41e392[_0x21512e(0x11b)])),console['log']('\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27'+CLI_BIN_NAME+_0x21512e(0x10d)+CLI_BIN_NAME+_0x21512e(0xf4));}function a116_0x4615(_0x207818,_0x31f7be){_0x207818=_0x207818-0xea;const _0x3aeec9=a116_0x3aee();let _0x461565=_0x3aeec9[_0x207818];return _0x461565;}function askAppcode(){const _0x1c3ae2=a116_0x4615;return input({'message':_0x1c3ae2(0xfa),'validate':_0x167457=>{const _0x104c2a=_0x1c3ae2;if(!_0x167457[_0x104c2a(0xfe)]())return _0x104c2a(0x114);const {valid:_0x59e672,message:_0x30439b}=validateAppcode(_0x167457[_0x104c2a(0xfe)]());return _0x59e672||_0x30439b||_0x104c2a(0xfc);}});}function getCliVersionFromPkg(){const _0x4a04d5=a116_0x4615;try{const _0x25329a=fileURLToPath(import.meta.url),_0xca241a=resolve(dirname(_0x25329a),_0x4a04d5(0x113)),_0x5e9b49=JSON[_0x4a04d5(0x119)](readFileSync(resolve(_0xca241a,_0x4a04d5(0x104)),_0x4a04d5(0x103)));return _0x5e9b49[_0x4a04d5(0x109)]||_0x4a04d5(0x11e);}catch{return _0x4a04d5(0x11e);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a117_0x31f8(){const _0x22a4d9=['skipped','yes','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','not\x20needed','inherit','sdkUpgrade','3990780kcYLxs','not\x20found\x20or\x20already\x20at\x20latest','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','green','detail','log','.lovrabet','oldArtifacts','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','697606zVMTUq','mcpServers','needed','\x20\x20Step\x20','latest','isDirectory','oldMcpConfig','undefined','message','.claude/skills/lovrabet','includes','none\x20found','done','@lovrabet/sdk:','no\x20legacy\x20config\x20found','step','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','gray','bold','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','oldPath','label','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','Proceed\x20with\x20upgrade?','Skill\x20swap:','keys','some','lovrabet/lovrabet-skill\x20removed','Upgrade\x20@lovrabet/sdk','3990848jXVWOa','4umJVNh','cwd','Config\x20file:','yellow','MCP\x20config:','===\x20Upgrade\x20Analysis\x20===','CANCEL','3537170xGZafD','info','.bak','Remove\x20legacy\x20artifacts','dependencies','stringify','files','string','\x20→\x20keys:\x20','Upgrade\x20completed\x20successfully!','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','skipped\x20(no\x20legacy\x20config)','\x20\x20npm\x20install','Step\x206/7:\x20Installing\x20new\x20skill...','values','1595667lUdoKe','Config\x20migration','.cursor/mcp.json','fail','Remove\x20.lovrabet/','removed\x20','\x20removed\x20(','start','join','status','cyan','succeed','no\x20matching\x20entry\x20found','not\x20found\x20(will\x20create)','Clean\x20MCP\x20config','@lovrabet/dataset-mcp-server','\x20\x20bun\x20install','[\x22@lovrabet/sdk\x22]:\x20','red','path','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','\x20\x20Action:\x20delete','error','\x20\x20#\x20or','Install\x20new\x20skill','@lovrabet/sdk','Step\x204/7:\x20MCP\x20config\x20—\x20','Step\x205/7:\x20Removing\x20old\x20skill...','Remove\x20old\x20skill','utf8','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','1383453vIHjEK','args','already\x20exists\x20(will\x20merge)','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','object','needsSkillSwap','parse','FAIL','\x20\x20Current\x20version\x20in\x20','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','fields','push','6ZoZoVN','white','Legacy\x20artifacts:','Step\x201/7:\x20Migrating\x20config...','\x20→\x20','\x20removed','517772qavViT','isArray','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','filter','\x20\x20New\x20config\x20(.rabetbase.json):\x20','Upgrade\x20cancelled.','length','devDependencies','package.json','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','failed','entries','lovrabet/rabetbase','\x20from\x20'];a117_0x31f8=function(){return _0x22a4d9;};return a117_0x31f8();}const a117_0xcd8c1c=a117_0x1127;(function(_0x3c662e,_0x5ee658){const _0x1c9208=a117_0x1127,_0x155d23=_0x3c662e();while(!![]){try{const _0x1b0fe8=parseInt(_0x1c9208(0x19b))/0x1+parseInt(_0x1c9208(0x17d))/0x2+-parseInt(_0x1c9208(0x14c))/0x3*(-parseInt(_0x1c9208(0x136))/0x4)+-parseInt(_0x1c9208(0x192))/0x5*(parseInt(_0x1c9208(0x177))/0x6)+parseInt(_0x1c9208(0x13d))/0x7+-parseInt(_0x1c9208(0x135))/0x8+-parseInt(_0x1c9208(0x16b))/0x9;if(_0x1b0fe8===_0x5ee658)break;else _0x155d23['push'](_0x155d23['shift']());}catch(_0x59ca79){_0x155d23['push'](_0x155d23['shift']());}}}(a117_0x31f8,0x848f2));import a117_0x2f4a59 from'chalk';import a117_0x19da61 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';import{CONFIG_NAMES,NEW_CONFIG_NAME,readConfigFile,writeConfigFile}from'../../context.js';import{CORE_IDE_CONFIGS}from'../../utils/ai_config.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE,runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=CONFIG_NAMES[a117_0xcd8c1c(0x180)](_0x3add03=>_0x3add03!==NEW_CONFIG_NAME);function a117_0x1127(_0x24d6e7,_0xc1ea48){_0x24d6e7=_0x24d6e7-0x127;const _0x31f80e=a117_0x31f8();let _0x1127ab=_0x31f80e[_0x24d6e7];return _0x1127ab;}function collectIdeSkillFiles(_0x3028f1){const _0x2def36=a117_0xcd8c1c,_0x26b702=[];for(const _0xed6063 of Object[_0x2def36(0x14b)](CORE_IDE_CONFIGS)){if(_0xed6063[_0x2def36(0x143)])for(const _0x86caf7 of _0xed6063['files']){_0x26b702[_0x2def36(0x176)](resolve(_0x3028f1,_0x86caf7[_0x2def36(0x15f)]));}}return _0x26b702;}function analyse(_0xc68b8f){const _0x17cfdb=a117_0xcd8c1c;let _0x53e0f9=null;const _0x311dfc=resolve(_0xc68b8f,NEW_CONFIG_NAME),_0x2bac7d=existsSync(_0x311dfc);for(const _0x382efa of LEGACY_CONFIG_NAMES){const _0xbe263e=resolve(_0xc68b8f,_0x382efa);if(existsSync(_0xbe263e)){const _0xba3762=readConfigFile(_0xbe263e),_0x19e364=Object['keys'](_0xba3762)[_0x17cfdb(0x180)](_0x530755=>typeof _0xba3762[_0x530755]!==_0x17cfdb(0x1a2));_0x53e0f9={'oldPath':_0xbe263e,'hasNewConfig':_0x2bac7d,'fields':_0x19e364};break;}}const _0x422f8f=[],_0x17ac52=resolve(_0xc68b8f,_0x17cfdb(0x198));if(existsSync(_0x17ac52))_0x422f8f['push'](_0x17ac52);const _0x59ccf7=resolve(_0xc68b8f,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x59ccf7))_0x422f8f[_0x17cfdb(0x176)](_0x59ccf7);const _0x1acc51=resolve(_0xc68b8f,_0x17cfdb(0x1a4));if(existsSync(_0x1acc51))_0x422f8f[_0x17cfdb(0x176)](_0x1acc51);for(const _0x27f1cb of collectIdeSkillFiles(_0xc68b8f)){if(existsSync(_0x27f1cb))_0x422f8f[_0x17cfdb(0x176)](_0x27f1cb);}let _0x18bb03=null;const _0x3bb642=resolve(_0xc68b8f,_0x17cfdb(0x14e));if(existsSync(_0x3bb642))try{const _0x3e2362=JSON[_0x17cfdb(0x171)](readFileSync(_0x3bb642,_0x17cfdb(0x169)));if(_0x3e2362?.[_0x17cfdb(0x19c)]&&typeof _0x3e2362[_0x17cfdb(0x19c)]===_0x17cfdb(0x16f)){const _0x2ab699=[];for(const [_0x413d01,_0xc89872]of Object[_0x17cfdb(0x188)](_0x3e2362[_0x17cfdb(0x19c)])){const _0x4551be=_0xc89872;_0x4551be?.[_0x17cfdb(0x16c)]&&Array[_0x17cfdb(0x17e)](_0x4551be[_0x17cfdb(0x16c)])&&_0x4551be[_0x17cfdb(0x16c)][_0x17cfdb(0x132)](_0x2e521e=>typeof _0x2e521e===_0x17cfdb(0x144)&&_0x2e521e[_0x17cfdb(0x1a5)]('@lovrabet/dataset-mcp-server'))&&_0x2ab699[_0x17cfdb(0x176)](_0x413d01);}_0x2ab699['length']>0x0&&(_0x18bb03={'path':_0x3bb642,'keys':_0x2ab699});}}catch{}const _0x14ae0c=_0x422f8f[_0x17cfdb(0x183)]>0x0||_0x53e0f9!==null;let _0x21ce23=null;const _0x1d0854=resolve(_0xc68b8f,_0x17cfdb(0x185));if(existsSync(_0x1d0854))try{const _0x5da6ba=JSON[_0x17cfdb(0x171)](readFileSync(_0x1d0854,_0x17cfdb(0x169)));for(const _0x131670 of[_0x17cfdb(0x141),_0x17cfdb(0x184)]){const _0x5d9238=_0x5da6ba?.[_0x131670]?.[_0x17cfdb(0x165)];if(typeof _0x5d9238===_0x17cfdb(0x144)){_0x5d9238!==_0x17cfdb(0x19f)&&(_0x21ce23={'pkgPath':_0x1d0854,'currentVersion':_0x5d9238,'field':_0x131670});break;}}}catch{}return{'configMigration':_0x53e0f9,'oldArtifacts':_0x422f8f,'oldMcpConfig':_0x18bb03,'needsSkillSwap':_0x14ae0c,'sdkUpgrade':_0x21ce23};}function printReport(_0x129510){const _0x102f73=a117_0xcd8c1c,{configMigration:_0x5515df,oldArtifacts:_0x1e5c74,oldMcpConfig:_0x546447,needsSkillSwap:_0x8ad8e3}=_0x129510;console[_0x102f73(0x197)](''),console[_0x102f73(0x197)](a117_0x2f4a59[_0x102f73(0x12a)](_0x102f73(0x13b))),console[_0x102f73(0x197)]('');_0x5515df?(console['log'](a117_0x2f4a59[_0x102f73(0x156)](_0x102f73(0x138))+('\x20\x20'+a117_0x2f4a59[_0x102f73(0x139)](_0x5515df['oldPath']))),console[_0x102f73(0x197)](_0x102f73(0x181)+(_0x5515df['hasNewConfig']?a117_0x2f4a59[_0x102f73(0x195)](_0x102f73(0x16d)):a117_0x2f4a59[_0x102f73(0x129)](_0x102f73(0x159)))),console['log']('\x20\x20Fields\x20to\x20migrate:\x20'+_0x5515df[_0x102f73(0x175)][_0x102f73(0x154)](',\x20')),console[_0x102f73(0x197)](_0x102f73(0x12e))):console[_0x102f73(0x197)](a117_0x2f4a59[_0x102f73(0x156)](_0x102f73(0x138))+'\x20\x20'+a117_0x2f4a59[_0x102f73(0x129)](_0x102f73(0x1a9)));console[_0x102f73(0x197)]('');if(_0x1e5c74[_0x102f73(0x183)]>0x0){console[_0x102f73(0x197)](a117_0x2f4a59[_0x102f73(0x156)](_0x102f73(0x179)));for(const _0x37f039 of _0x1e5c74){console[_0x102f73(0x197)]('\x20\x20'+a117_0x2f4a59['red']('FOUND')+'\x20\x20'+_0x37f039);}console[_0x102f73(0x197)](_0x102f73(0x161));}else console[_0x102f73(0x197)](a117_0x2f4a59[_0x102f73(0x156)](_0x102f73(0x179))+'\x20\x20'+a117_0x2f4a59[_0x102f73(0x129)](_0x102f73(0x1a6)));console[_0x102f73(0x197)]('');_0x546447?(console[_0x102f73(0x197)](a117_0x2f4a59[_0x102f73(0x156)](_0x102f73(0x13a))+('\x20\x20'+a117_0x2f4a59[_0x102f73(0x139)](_0x546447[_0x102f73(0x15f)])+_0x102f73(0x145)+_0x546447[_0x102f73(0x131)][_0x102f73(0x154)](',\x20'))),console[_0x102f73(0x197)](_0x102f73(0x174))):console['log'](a117_0x2f4a59[_0x102f73(0x156)](_0x102f73(0x13a))+'\x20\x20'+a117_0x2f4a59[_0x102f73(0x129)]('no\x20legacy\x20entry'));console[_0x102f73(0x197)](''),console['log'](a117_0x2f4a59['cyan'](_0x102f73(0x130))+('\x20\x20'+(_0x8ad8e3?a117_0x2f4a59[_0x102f73(0x139)](_0x102f73(0x19d)):a117_0x2f4a59[_0x102f73(0x195)](_0x102f73(0x18f)))));_0x8ad8e3&&console[_0x102f73(0x197)]('\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`'+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x102f73(0x197)]('');if(_0x129510['sdkUpgrade']){const {currentVersion:_0x3caae8,field:_0x556428,pkgPath:_0x4a1f4f}=_0x129510[_0x102f73(0x191)];console['log'](a117_0x2f4a59[_0x102f73(0x156)](_0x102f73(0x1a8))+('\x20\x20'+a117_0x2f4a59[_0x102f73(0x139)](_0x4a1f4f))),console[_0x102f73(0x197)](_0x102f73(0x173)+_0x556428+':\x20'+a117_0x2f4a59['yellow'](_0x3caae8)+_0x102f73(0x17b)+a117_0x2f4a59['green'](_0x102f73(0x19f))),console['log'](_0x102f73(0x1ab));}else console[_0x102f73(0x197)](a117_0x2f4a59['cyan'](_0x102f73(0x1a8))+'\x20\x20'+a117_0x2f4a59['gray'](_0x102f73(0x193)));console['log']('');}function execConfigMigration(_0x2989d7,_0xc74212){const _0x34542d=a117_0xcd8c1c,{configMigration:_0x37fb5b}=_0x2989d7;if(!_0x37fb5b?.[_0x34542d(0x12c)])return{'step':0x1,'label':_0x34542d(0x14d),'ok':!![],'detail':_0x34542d(0x148)};const _0x5c3e51=readConfigFile(_0x37fb5b[_0x34542d(0x12c)]),_0x3a1dc5=resolve(_0xc74212,NEW_CONFIG_NAME),_0x2527f6=_0x37fb5b['hasNewConfig']?readConfigFile(_0x3a1dc5):{};for(const [_0x56c8c6,_0x5e2933]of Object[_0x34542d(0x188)](_0x5c3e51)){!(_0x56c8c6 in _0x2527f6)&&(_0x2527f6[_0x56c8c6]=_0x5e2933);}writeConfigFile(_0x3a1dc5,_0x2527f6);const _0x4203f4=_0x37fb5b['oldPath']+_0x34542d(0x13f);return renameSync(_0x37fb5b[_0x34542d(0x12c)],_0x4203f4),{'step':0x1,'label':_0x34542d(0x14d),'ok':!![],'detail':_0x37fb5b['oldPath']+_0x34542d(0x17b)+_0x3a1dc5+'\x20(backup:\x20'+_0x4203f4+')'};}function execRemoveOldArtifacts(_0x4f3a54){const _0x2df13b=a117_0xcd8c1c,_0x431d43=[];for(const _0x10f756 of _0x4f3a54){try{if(!existsSync(_0x10f756))continue;const _0x6f98f2=tryStat(_0x10f756);_0x6f98f2?.[_0x2df13b(0x1a0)]()?rmSync(_0x10f756,{'recursive':!![],'force':!![]}):unlinkSync(_0x10f756);}catch(_0x58f3f2){_0x431d43[_0x2df13b(0x176)](_0x10f756+':\x20'+_0x58f3f2['message']);}}return{'step':0x3,'label':_0x2df13b(0x140),'ok':_0x431d43[_0x2df13b(0x183)]===0x0,'detail':_0x431d43['length']>0x0?_0x4f3a54[_0x2df13b(0x183)]-_0x431d43[_0x2df13b(0x183)]+'/'+_0x4f3a54[_0x2df13b(0x183)]+_0x2df13b(0x152)+_0x431d43['join'](';\x20')+')':_0x4f3a54[_0x2df13b(0x183)]+_0x2df13b(0x17c)};}function execCleanMcp(_0x53318a){const _0x36ffb2=a117_0xcd8c1c;if(!_0x53318a[_0x36ffb2(0x1a1)])return{'step':0x4,'label':_0x36ffb2(0x15a),'ok':!![],'detail':_0x36ffb2(0x18b)};try{const _0x4afb58=readFileSync(_0x53318a[_0x36ffb2(0x1a1)]['path'],_0x36ffb2(0x169)),_0x556768=JSON['parse'](_0x4afb58);if(_0x556768?.[_0x36ffb2(0x19c)]&&typeof _0x556768['mcpServers']===_0x36ffb2(0x16f)){const _0x1cb466=[];for(const [_0x28d3e2,_0x19adf3]of Object[_0x36ffb2(0x188)](_0x556768[_0x36ffb2(0x19c)])){_0x19adf3?.[_0x36ffb2(0x16c)]&&Array[_0x36ffb2(0x17e)](_0x19adf3[_0x36ffb2(0x16c)])&&_0x19adf3[_0x36ffb2(0x16c)][_0x36ffb2(0x132)](_0x5a5dec=>typeof _0x5a5dec===_0x36ffb2(0x144)&&_0x5a5dec[_0x36ffb2(0x1a5)](_0x36ffb2(0x15b)))&&_0x1cb466[_0x36ffb2(0x176)](_0x28d3e2);}for(const _0x413a1c of _0x1cb466){delete _0x556768[_0x36ffb2(0x19c)][_0x413a1c];}return _0x1cb466[_0x36ffb2(0x183)]>0x0&&writeFileSync(_0x53318a[_0x36ffb2(0x1a1)][_0x36ffb2(0x15f)],JSON[_0x36ffb2(0x142)](_0x556768,null,0x2)+'\x0a',_0x36ffb2(0x169)),{'step':0x4,'label':_0x36ffb2(0x15a),'ok':!![],'detail':_0x36ffb2(0x151)+_0x1cb466[_0x36ffb2(0x154)](',\x20')+_0x36ffb2(0x18a)+_0x53318a[_0x36ffb2(0x1a1)][_0x36ffb2(0x15f)]};}return{'step':0x4,'label':_0x36ffb2(0x15a),'ok':!![],'detail':_0x36ffb2(0x158)};}catch(_0x4b3434){return{'step':0x4,'label':_0x36ffb2(0x15a),'ok':![],'detail':_0x4b3434[_0x36ffb2(0x1a3)]};}}function execSkillsRemove(_0x31e434,_0x1cba89){const _0x260960=a117_0xcd8c1c,_0x48adee=runNpxSkillsRemove(_0x31e434,{'stdio':_0x260960(0x190),'yes':_0x1cba89});return{'step':0x5,'label':_0x260960(0x168),'ok':_0x48adee['ok'],'detail':_0x48adee['ok']?_0x260960(0x133):_0x48adee[_0x260960(0x162)]??'exit\x20'+_0x48adee[_0x260960(0x155)]};}function execSkillsAdd(_0x51fc76,_0x5e1b84){const _0x1d276b=a117_0xcd8c1c,_0x5c3795=runNpxSkillsAddGlobal(_0x51fc76,_0x1d276b(0x189),{'stdio':_0x1d276b(0x190),'yes':_0x5e1b84});return{'step':0x6,'label':_0x1d276b(0x164),'ok':_0x5c3795['ok'],'detail':_0x5c3795['ok']?'lovrabet/rabetbase\x20installed\x20globally':_0x5c3795[_0x1d276b(0x162)]??'exit\x20'+_0x5c3795[_0x1d276b(0x155)]};}function execUpgradeSdk(_0x554ec3){const _0x1d8b4c=a117_0xcd8c1c;if(!_0x554ec3['sdkUpgrade'])return{'step':0x7,'label':_0x1d8b4c(0x134),'ok':!![],'detail':_0x1d8b4c(0x17f)};const {pkgPath:_0x12c4c7,currentVersion:_0x13745a,field:_0x519551}=_0x554ec3['sdkUpgrade'];try{const _0x38adf9=readFileSync(_0x12c4c7,_0x1d8b4c(0x169)),_0x39ce98=JSON['parse'](_0x38adf9);return _0x39ce98[_0x519551][_0x1d8b4c(0x165)]=_0x1d8b4c(0x19f),writeFileSync(_0x12c4c7,JSON[_0x1d8b4c(0x142)](_0x39ce98,null,0x2)+'\x0a',_0x1d8b4c(0x169)),{'step':0x7,'label':_0x1d8b4c(0x134),'ok':!![],'detail':_0x519551+_0x1d8b4c(0x15d)+_0x13745a+'\x20→\x20latest'};}catch(_0x362699){return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':![],'detail':_0x362699[_0x1d8b4c(0x1a3)]};}}function tryStat(_0x122f2b){try{return statSync(_0x122f2b);}catch{return undefined;}}function printSummary(_0x54acc2){const _0x5675dd=a117_0xcd8c1c;console[_0x5675dd(0x197)](''),console[_0x5675dd(0x197)](a117_0x2f4a59[_0x5675dd(0x12a)]('===\x20Upgrade\x20Summary\x20===')),console['log']('');for(const _0x3c84ae of _0x54acc2){const _0x519e90=_0x3c84ae['ok']?a117_0x2f4a59[_0x5675dd(0x195)]('OK'):a117_0x2f4a59[_0x5675dd(0x15e)](_0x5675dd(0x172));console[_0x5675dd(0x197)]('\x20\x20'+_0x519e90+_0x5675dd(0x19e)+_0x3c84ae[_0x5675dd(0x1aa)]+':\x20'+_0x3c84ae[_0x5675dd(0x12d)]);if(_0x3c84ae[_0x5675dd(0x196)])console[_0x5675dd(0x197)]('\x20\x20\x20\x20\x20\x20\x20'+a117_0x2f4a59[_0x5675dd(0x129)](_0x3c84ae[_0x5675dd(0x196)]));}console[_0x5675dd(0x197)]('');}export async function upgradeApp(_0x2313f1,_0x1992bc){const _0x37aa71=a117_0xcd8c1c,_0x4c5823=process[_0x37aa71(0x137)](),_0x5b147a=analyse(_0x4c5823),_0x318562=!_0x5b147a['configMigration']&&_0x5b147a[_0x37aa71(0x199)][_0x37aa71(0x183)]===0x0&&!_0x5b147a['oldMcpConfig']&&!_0x5b147a[_0x37aa71(0x170)]&&!_0x5b147a['sdkUpgrade'];if(_0x318562){console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x195)]('No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.'));return;}printReport(_0x5b147a);const _0x1c12b2=!!(_0x1992bc[_0x37aa71(0x18c)]||_0x1992bc['Y']||_0x2313f1);if(!_0x1c12b2)try{const _0x1928b1=await askConfirm(_0x37aa71(0x12f));if(!_0x1928b1){console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x129)](_0x37aa71(0x182)));return;}}catch(_0x243ee9){if(_0x243ee9?.[_0x37aa71(0x1a3)]===_0x37aa71(0x13c)){console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x129)]('Upgrade\x20cancelled.'));return;}throw _0x243ee9;}const _0x26b025=[],_0x49c7a3=a117_0x19da61({'text':_0x37aa71(0x17a),'color':'cyan'})['start'](),_0x4979ff=execConfigMigration(_0x5b147a,_0x4c5823);_0x26b025[_0x37aa71(0x176)](_0x4979ff),_0x49c7a3[_0x4979ff['ok']?_0x37aa71(0x157):_0x37aa71(0x14f)]('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0x4979ff[_0x37aa71(0x196)]??(_0x4979ff['ok']?_0x37aa71(0x1a7):_0x37aa71(0x187))));const _0x4e4d1c=resolve(_0x4c5823,_0x37aa71(0x198)),_0x2772b3=a117_0x19da61({'text':_0x37aa71(0x12b),'color':'cyan'})['start']();if(existsSync(_0x4e4d1c))try{rmSync(_0x4e4d1c,{'recursive':!![],'force':!![]}),_0x2772b3[_0x37aa71(0x157)](_0x37aa71(0x16e)),_0x26b025[_0x37aa71(0x176)]({'step':0x2,'label':_0x37aa71(0x150),'ok':!![]});}catch(_0x22be8c){_0x2772b3[_0x37aa71(0x14f)](_0x37aa71(0x147)+_0x22be8c[_0x37aa71(0x1a3)]),_0x26b025[_0x37aa71(0x176)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x22be8c[_0x37aa71(0x1a3)]});}else _0x2772b3[_0x37aa71(0x13e)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x26b025[_0x37aa71(0x176)]({'step':0x2,'label':_0x37aa71(0x150),'ok':!![],'detail':_0x37aa71(0x18b)});const _0x205ea0=a117_0x19da61({'text':_0x37aa71(0x16a),'color':'cyan'})[_0x37aa71(0x153)](),_0x3dd88b=execRemoveOldArtifacts(_0x5b147a[_0x37aa71(0x199)]);_0x26b025['push'](_0x3dd88b),_0x205ea0[_0x3dd88b['ok']?_0x37aa71(0x157):_0x37aa71(0x14f)](_0x37aa71(0x18e)+(_0x3dd88b[_0x37aa71(0x196)]??(_0x3dd88b['ok']?'done':_0x37aa71(0x187))));const _0x4dc3a3=a117_0x19da61({'text':'Step\x204/7:\x20Cleaning\x20MCP\x20config...','color':_0x37aa71(0x156)})[_0x37aa71(0x153)](),_0x47ebdb=execCleanMcp(_0x5b147a);_0x26b025['push'](_0x47ebdb),_0x4dc3a3[_0x47ebdb['ok']?_0x37aa71(0x157):_0x37aa71(0x14f)](_0x37aa71(0x166)+(_0x47ebdb[_0x37aa71(0x196)]??(_0x47ebdb['ok']?_0x37aa71(0x1a7):_0x37aa71(0x187))));const _0x55bc56=a117_0x19da61({'text':_0x37aa71(0x167),'color':'cyan'})[_0x37aa71(0x153)](),_0x2cec2c=execSkillsRemove(_0x4c5823,_0x1c12b2);_0x26b025[_0x37aa71(0x176)](_0x2cec2c),_0x55bc56[_0x2cec2c['ok']?_0x37aa71(0x157):'fail'](_0x37aa71(0x160)+(_0x2cec2c[_0x37aa71(0x196)]??(_0x2cec2c['ok']?_0x37aa71(0x1a7):_0x37aa71(0x187))));const _0x433143=a117_0x19da61({'text':_0x37aa71(0x14a),'color':'cyan'})[_0x37aa71(0x153)](),_0x3032ee=execSkillsAdd(_0x4c5823,_0x1c12b2);_0x26b025[_0x37aa71(0x176)](_0x3032ee),_0x433143[_0x3032ee['ok']?_0x37aa71(0x157):_0x37aa71(0x14f)](_0x37aa71(0x18d)+(_0x3032ee[_0x37aa71(0x196)]??(_0x3032ee['ok']?_0x37aa71(0x1a7):'failed')));const _0x10672e=a117_0x19da61({'text':_0x37aa71(0x194),'color':_0x37aa71(0x156)})[_0x37aa71(0x153)](),_0xd8e303=execUpgradeSdk(_0x5b147a);_0x26b025[_0x37aa71(0x176)](_0xd8e303),_0x10672e[_0xd8e303['ok']?_0x37aa71(0x157):_0x37aa71(0x14f)](_0x37aa71(0x19a)+(_0xd8e303[_0x37aa71(0x196)]??(_0xd8e303['ok']?_0x37aa71(0x1a7):_0x37aa71(0x187)))),printSummary(_0x26b025);const _0x386f7c=_0x26b025[_0x37aa71(0x132)](_0x264ae5=>!_0x264ae5['ok']);_0x386f7c?console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x139)](_0x37aa71(0x128))):console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x195)](_0x37aa71(0x146))),_0xd8e303['ok']&&_0x5b147a[_0x37aa71(0x191)]&&(console[_0x37aa71(0x197)](''),console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x12a)][_0x37aa71(0x156)](_0x37aa71(0x186))),console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x156)](_0x37aa71(0x127))),console[_0x37aa71(0x197)](''),console[_0x37aa71(0x197)](a117_0x2f4a59['white'](_0x37aa71(0x149))),console['log'](a117_0x2f4a59[_0x37aa71(0x178)](_0x37aa71(0x163))),console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x178)](_0x37aa71(0x15c))),console[_0x37aa71(0x197)](''));}
|
|
1
|
+
const a117_0x392ddf=a117_0x3883;(function(_0x16a74b,_0x3a0f87){const _0x551216=a117_0x3883,_0x5036ae=_0x16a74b();while(!![]){try{const _0x382a2b=-parseInt(_0x551216(0x12b))/0x1*(parseInt(_0x551216(0x158))/0x2)+parseInt(_0x551216(0x122))/0x3+-parseInt(_0x551216(0x120))/0x4+-parseInt(_0x551216(0x14f))/0x5+parseInt(_0x551216(0x149))/0x6+-parseInt(_0x551216(0x176))/0x7+-parseInt(_0x551216(0x11d))/0x8*(-parseInt(_0x551216(0x16f))/0x9);if(_0x382a2b===_0x3a0f87)break;else _0x5036ae['push'](_0x5036ae['shift']());}catch(_0x56ef71){_0x5036ae['push'](_0x5036ae['shift']());}}}(a117_0x2b75,0xa8683));function a117_0x3883(_0x5d232b,_0x10fb23){_0x5d232b=_0x5d232b-0xfb;const _0x2b7541=a117_0x2b75();let _0x388307=_0x2b7541[_0x5d232b];return _0x388307;}import a117_0x22b16f from'chalk';import a117_0x520aa1 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';function a117_0x2b75(){const _0xba6aed=['yellow','Legacy\x20artifacts:','stringify','\x20(backup:\x20','start','\x20\x20New\x20config\x20(.rabetbase.json):\x20','no\x20legacy\x20config\x20found','join','Remove\x20legacy\x20artifacts','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','already\x20exists\x20(will\x20merge)','red','5240DODMgP','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','\x20\x20Current\x20version\x20in\x20','5171092OXtUTn','FOUND','1122441NkmPDf','files','\x20\x20bun\x20install','Step\x201/7:\x20Migrating\x20config...','push','step','done','keys','args','34zSsoYj','\x20→\x20latest','not\x20found\x20or\x20already\x20at\x20latest','succeed','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','path','not\x20needed','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','white','failed','includes','hasNewConfig','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','\x20\x20Fields\x20to\x20migrate:\x20','Step\x205/7:\x20Removing\x20old\x20skill...','entries','===\x20Upgrade\x20Summary\x20===','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','package.json','\x20\x20#\x20or','.claude/skills/lovrabet','log','Config\x20file:','Clean\x20MCP\x20config','\x20\x20Action:\x20delete','inherit','Step\x206/7:\x20Installing\x20new\x20skill...','fail','oldArtifacts','.cursor/mcp.json','3120546KtjiXS','string','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','Remove\x20.lovrabet/','status','Step\x204/7:\x20Cleaning\x20MCP\x20config...','2019745vTpZWW','values','length','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','info','yes','Remove\x20old\x20skill','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','454bVNVSf','fields','error','filter','===\x20Upgrade\x20Analysis\x20===','some','detail','sdkUpgrade','Upgrade\x20@lovrabet/sdk','\x20→\x20','Skill\x20swap:','needed','message','\x20from\x20','skipped','isDirectory','configMigration','MCP\x20config:','exit\x20','none\x20found','utf8','no\x20legacy\x20entry','\x20removed\x20(','21015zqASmE','mcpServers','FAIL','CANCEL','Config\x20migration','devDependencies','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','205996hkohZT','isArray','.lovrabet','bold','oldPath','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','latest','Upgrade\x20completed\x20successfully!','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','oldMcpConfig','Upgrade\x20cancelled.','cyan','object','removed\x20','@lovrabet/dataset-mcp-server','undefined','label','gray','parse','Install\x20new\x20skill','green','\x20→\x20keys:\x20','lovrabet/rabetbase','@lovrabet/sdk:'];a117_0x2b75=function(){return _0xba6aed;};return a117_0x2b75();}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_0x392ddf(0x15b)](_0x1c24e8=>_0x1c24e8!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x5e4b1e){const _0x3e9490=a117_0x392ddf,_0x29064=[];for(const _0x5ce974 of Object[_0x3e9490(0x150)](CORE_IDE_CONFIGS)){if(_0x5ce974[_0x3e9490(0x123)])for(const _0x568484 of _0x5ce974['files']){_0x29064['push'](resolve(_0x5e4b1e,_0x568484[_0x3e9490(0x130)]));}}return _0x29064;}function analyse(_0xd9de97){const _0x27c1f8=a117_0x392ddf;let _0x1d094a=null;const _0x1d0c7b=resolve(_0xd9de97,NEW_CONFIG_NAME),_0x4402ba=existsSync(_0x1d0c7b);for(const _0x20f917 of LEGACY_CONFIG_NAMES){const _0x5157ca=resolve(_0xd9de97,_0x20f917);if(existsSync(_0x5157ca)){const _0x32a42d=readConfigFile(_0x5157ca),_0x3c2ea9=Object['keys'](_0x32a42d)[_0x27c1f8(0x15b)](_0x2d795b=>typeof _0x32a42d[_0x2d795b]!==_0x27c1f8(0x108));_0x1d094a={'oldPath':_0x5157ca,'hasNewConfig':_0x4402ba,'fields':_0x3c2ea9};break;}}const _0x1e49fb=[],_0x2008f5=resolve(_0xd9de97,_0x27c1f8(0xfb));if(existsSync(_0x2008f5))_0x1e49fb['push'](_0x2008f5);const _0x3fac6d=resolve(_0xd9de97,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x3fac6d))_0x1e49fb[_0x27c1f8(0x126)](_0x3fac6d);const _0x2b3cbf=resolve(_0xd9de97,_0x27c1f8(0x13f));if(existsSync(_0x2b3cbf))_0x1e49fb['push'](_0x2b3cbf);for(const _0x34f375 of collectIdeSkillFiles(_0xd9de97)){if(existsSync(_0x34f375))_0x1e49fb[_0x27c1f8(0x126)](_0x34f375);}let _0x26b2e6=null;const _0xc6d506=resolve(_0xd9de97,_0x27c1f8(0x148));if(existsSync(_0xc6d506))try{const _0x194f1f=JSON['parse'](readFileSync(_0xc6d506,_0x27c1f8(0x16c)));if(_0x194f1f?.[_0x27c1f8(0x170)]&&typeof _0x194f1f[_0x27c1f8(0x170)]===_0x27c1f8(0x105)){const _0x334b85=[];for(const [_0x470205,_0x5106d9]of Object[_0x27c1f8(0x13a)](_0x194f1f[_0x27c1f8(0x170)])){const _0x47c5b9=_0x5106d9;_0x47c5b9?.['args']&&Array[_0x27c1f8(0x177)](_0x47c5b9['args'])&&_0x47c5b9[_0x27c1f8(0x12a)][_0x27c1f8(0x15d)](_0x49e050=>typeof _0x49e050===_0x27c1f8(0x14a)&&_0x49e050['includes'](_0x27c1f8(0x107)))&&_0x334b85['push'](_0x470205);}_0x334b85['length']>0x0&&(_0x26b2e6={'path':_0xc6d506,'keys':_0x334b85});}}catch{}const _0x261237=_0x1e49fb[_0x27c1f8(0x151)]>0x0||_0x1d094a!==null;let _0x2f68aa=null;const _0x41c1a9=resolve(_0xd9de97,_0x27c1f8(0x13d));if(existsSync(_0x41c1a9))try{const _0x303019=JSON['parse'](readFileSync(_0x41c1a9,'utf8'));for(const _0x1f92c1 of['dependencies',_0x27c1f8(0x174)]){const _0x3bef95=_0x303019?.[_0x1f92c1]?.['@lovrabet/sdk'];if(typeof _0x3bef95==='string'){_0x3bef95!==_0x27c1f8(0xff)&&(_0x2f68aa={'pkgPath':_0x41c1a9,'currentVersion':_0x3bef95,'field':_0x1f92c1});break;}}}catch{}return{'configMigration':_0x1d094a,'oldArtifacts':_0x1e49fb,'oldMcpConfig':_0x26b2e6,'needsSkillSwap':_0x261237,'sdkUpgrade':_0x2f68aa};}function printReport(_0x2cf870){const _0x3a2f07=a117_0x392ddf,{configMigration:_0x2490a3,oldArtifacts:_0x1e58c7,oldMcpConfig:_0x59355e,needsSkillSwap:_0x4661f8}=_0x2cf870;console['log'](''),console[_0x3a2f07(0x140)](a117_0x22b16f['bold'](_0x3a2f07(0x15c))),console[_0x3a2f07(0x140)]('');_0x2490a3?(console['log'](a117_0x22b16f[_0x3a2f07(0x104)]('Config\x20file:')+('\x20\x20'+a117_0x22b16f[_0x3a2f07(0x111)](_0x2490a3[_0x3a2f07(0xfd)]))),console['log'](_0x3a2f07(0x116)+(_0x2490a3[_0x3a2f07(0x136)]?a117_0x22b16f[_0x3a2f07(0x10d)](_0x3a2f07(0x11b)):a117_0x22b16f['gray']('not\x20found\x20(will\x20create)'))),console['log'](_0x3a2f07(0x138)+_0x2490a3[_0x3a2f07(0x159)][_0x3a2f07(0x118)](',\x20')),console['log'](_0x3a2f07(0x101))):console['log'](a117_0x22b16f[_0x3a2f07(0x104)](_0x3a2f07(0x141))+'\x20\x20'+a117_0x22b16f[_0x3a2f07(0x10a)](_0x3a2f07(0x117)));console[_0x3a2f07(0x140)]('');if(_0x1e58c7[_0x3a2f07(0x151)]>0x0){console['log'](a117_0x22b16f[_0x3a2f07(0x104)](_0x3a2f07(0x112)));for(const _0x558b08 of _0x1e58c7){console[_0x3a2f07(0x140)]('\x20\x20'+a117_0x22b16f['red'](_0x3a2f07(0x121))+'\x20\x20'+_0x558b08);}console[_0x3a2f07(0x140)](_0x3a2f07(0x143));}else console['log'](a117_0x22b16f['cyan'](_0x3a2f07(0x112))+'\x20\x20'+a117_0x22b16f['gray'](_0x3a2f07(0x16b)));console[_0x3a2f07(0x140)]('');_0x59355e?(console[_0x3a2f07(0x140)](a117_0x22b16f['cyan'](_0x3a2f07(0x169))+('\x20\x20'+a117_0x22b16f[_0x3a2f07(0x111)](_0x59355e[_0x3a2f07(0x130)])+_0x3a2f07(0x10e)+_0x59355e[_0x3a2f07(0x129)][_0x3a2f07(0x118)](',\x20'))),console[_0x3a2f07(0x140)](_0x3a2f07(0x175))):console[_0x3a2f07(0x140)](a117_0x22b16f[_0x3a2f07(0x104)](_0x3a2f07(0x169))+'\x20\x20'+a117_0x22b16f[_0x3a2f07(0x10a)](_0x3a2f07(0x16d)));console['log'](''),console['log'](a117_0x22b16f[_0x3a2f07(0x104)](_0x3a2f07(0x162))+('\x20\x20'+(_0x4661f8?a117_0x22b16f[_0x3a2f07(0x111)](_0x3a2f07(0x163)):a117_0x22b16f[_0x3a2f07(0x10d)](_0x3a2f07(0x131)))));_0x4661f8&&console['log'](_0x3a2f07(0x152)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console['log']('');if(_0x2cf870[_0x3a2f07(0x15f)]){const {currentVersion:_0x129862,field:_0x22a3a0,pkgPath:_0x2a9631}=_0x2cf870[_0x3a2f07(0x15f)];console[_0x3a2f07(0x140)](a117_0x22b16f[_0x3a2f07(0x104)](_0x3a2f07(0x110))+('\x20\x20'+a117_0x22b16f[_0x3a2f07(0x111)](_0x2a9631))),console[_0x3a2f07(0x140)](_0x3a2f07(0x11f)+_0x22a3a0+':\x20'+a117_0x22b16f[_0x3a2f07(0x111)](_0x129862)+'\x20→\x20'+a117_0x22b16f[_0x3a2f07(0x10d)](_0x3a2f07(0xff))),console[_0x3a2f07(0x140)](_0x3a2f07(0x12f));}else console[_0x3a2f07(0x140)](a117_0x22b16f['cyan']('@lovrabet/sdk:')+'\x20\x20'+a117_0x22b16f[_0x3a2f07(0x10a)](_0x3a2f07(0x12d)));console[_0x3a2f07(0x140)]('');}function execConfigMigration(_0x199bb1,_0x26b14b){const _0x46ccc0=a117_0x392ddf,{configMigration:_0x1a811b}=_0x199bb1;if(!_0x1a811b?.[_0x46ccc0(0xfd)])return{'step':0x1,'label':_0x46ccc0(0x173),'ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x559bde=readConfigFile(_0x1a811b[_0x46ccc0(0xfd)]),_0x2f2656=resolve(_0x26b14b,NEW_CONFIG_NAME),_0x7c896a=_0x1a811b[_0x46ccc0(0x136)]?readConfigFile(_0x2f2656):{};for(const [_0x40badb,_0x4a8cf1]of Object[_0x46ccc0(0x13a)](_0x559bde)){!(_0x40badb in _0x7c896a)&&(_0x7c896a[_0x40badb]=_0x4a8cf1);}writeConfigFile(_0x2f2656,_0x7c896a);const _0x342840=_0x1a811b[_0x46ccc0(0xfd)]+'.bak';return renameSync(_0x1a811b[_0x46ccc0(0xfd)],_0x342840),{'step':0x1,'label':_0x46ccc0(0x173),'ok':!![],'detail':_0x1a811b[_0x46ccc0(0xfd)]+_0x46ccc0(0x161)+_0x2f2656+_0x46ccc0(0x114)+_0x342840+')'};}function execRemoveOldArtifacts(_0x5b6b22){const _0x4aa083=a117_0x392ddf,_0x506ad5=[];for(const _0x3d5e1e of _0x5b6b22){try{if(!existsSync(_0x3d5e1e))continue;const _0x2c7062=tryStat(_0x3d5e1e);_0x2c7062?.[_0x4aa083(0x167)]()?rmSync(_0x3d5e1e,{'recursive':!![],'force':!![]}):unlinkSync(_0x3d5e1e);}catch(_0x2a04f6){_0x506ad5[_0x4aa083(0x126)](_0x3d5e1e+':\x20'+_0x2a04f6[_0x4aa083(0x164)]);}}return{'step':0x3,'label':_0x4aa083(0x119),'ok':_0x506ad5[_0x4aa083(0x151)]===0x0,'detail':_0x506ad5[_0x4aa083(0x151)]>0x0?_0x5b6b22['length']-_0x506ad5[_0x4aa083(0x151)]+'/'+_0x5b6b22[_0x4aa083(0x151)]+_0x4aa083(0x16e)+_0x506ad5['join'](';\x20')+')':_0x5b6b22[_0x4aa083(0x151)]+'\x20removed'};}function execCleanMcp(_0x49eb83){const _0x129804=a117_0x392ddf;if(!_0x49eb83[_0x129804(0x102)])return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x129804(0x166)};try{const _0x186425=readFileSync(_0x49eb83['oldMcpConfig'][_0x129804(0x130)],_0x129804(0x16c)),_0x89436d=JSON[_0x129804(0x10b)](_0x186425);if(_0x89436d?.[_0x129804(0x170)]&&typeof _0x89436d[_0x129804(0x170)]==='object'){const _0xab9e51=[];for(const [_0x2d1709,_0x5a106b]of Object['entries'](_0x89436d['mcpServers'])){_0x5a106b?.['args']&&Array[_0x129804(0x177)](_0x5a106b[_0x129804(0x12a)])&&_0x5a106b[_0x129804(0x12a)][_0x129804(0x15d)](_0x4714ac=>typeof _0x4714ac===_0x129804(0x14a)&&_0x4714ac[_0x129804(0x135)]('@lovrabet/dataset-mcp-server'))&&_0xab9e51[_0x129804(0x126)](_0x2d1709);}for(const _0x5e0683 of _0xab9e51){delete _0x89436d[_0x129804(0x170)][_0x5e0683];}return _0xab9e51[_0x129804(0x151)]>0x0&&writeFileSync(_0x49eb83[_0x129804(0x102)][_0x129804(0x130)],JSON['stringify'](_0x89436d,null,0x2)+'\x0a',_0x129804(0x16c)),{'step':0x4,'label':_0x129804(0x142),'ok':!![],'detail':_0x129804(0x106)+_0xab9e51['join'](',\x20')+_0x129804(0x165)+_0x49eb83[_0x129804(0x102)][_0x129804(0x130)]};}return{'step':0x4,'label':_0x129804(0x142),'ok':!![],'detail':'no\x20matching\x20entry\x20found'};}catch(_0x4bdfd7){return{'step':0x4,'label':_0x129804(0x142),'ok':![],'detail':_0x4bdfd7[_0x129804(0x164)]};}}function execSkillsRemove(_0x1814fa,_0x10c7a2){const _0x56f9ce=a117_0x392ddf,_0x497732=runNpxSkillsRemove(_0x1814fa,{'stdio':'inherit','yes':_0x10c7a2});return{'step':0x5,'label':_0x56f9ce(0x156),'ok':_0x497732['ok'],'detail':_0x497732['ok']?'lovrabet/lovrabet-skill\x20removed':_0x497732['error']??_0x56f9ce(0x16a)+_0x497732[_0x56f9ce(0x14d)]};}function execSkillsAdd(_0x126c8e,_0x1a2642){const _0x408a61=a117_0x392ddf,_0x549e8b=runNpxSkillsAddGlobal(_0x126c8e,_0x408a61(0x10f),{'stdio':_0x408a61(0x144),'yes':_0x1a2642});return{'step':0x6,'label':_0x408a61(0x10c),'ok':_0x549e8b['ok'],'detail':_0x549e8b['ok']?'lovrabet/rabetbase\x20installed\x20globally':_0x549e8b[_0x408a61(0x15a)]??_0x408a61(0x16a)+_0x549e8b[_0x408a61(0x14d)]};}function execUpgradeSdk(_0x3535de){const _0x99ed52=a117_0x392ddf;if(!_0x3535de['sdkUpgrade'])return{'step':0x7,'label':_0x99ed52(0x160),'ok':!![],'detail':'skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)'};const {pkgPath:_0xa2ef5d,currentVersion:_0x4713bd,field:_0x47e3e3}=_0x3535de['sdkUpgrade'];try{const _0x17b941=readFileSync(_0xa2ef5d,'utf8'),_0x33d8e5=JSON[_0x99ed52(0x10b)](_0x17b941);return _0x33d8e5[_0x47e3e3]['@lovrabet/sdk']='latest',writeFileSync(_0xa2ef5d,JSON[_0x99ed52(0x113)](_0x33d8e5,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':_0x99ed52(0x160),'ok':!![],'detail':_0x47e3e3+'[\x22@lovrabet/sdk\x22]:\x20'+_0x4713bd+_0x99ed52(0x12c)};}catch(_0x1ab48f){return{'step':0x7,'label':_0x99ed52(0x160),'ok':![],'detail':_0x1ab48f[_0x99ed52(0x164)]};}}function tryStat(_0x495ab9){try{return statSync(_0x495ab9);}catch{return undefined;}}function printSummary(_0x5838d8){const _0x24079c=a117_0x392ddf;console[_0x24079c(0x140)](''),console[_0x24079c(0x140)](a117_0x22b16f[_0x24079c(0xfc)](_0x24079c(0x13b))),console[_0x24079c(0x140)]('');for(const _0x4e9ecc of _0x5838d8){const _0x538c52=_0x4e9ecc['ok']?a117_0x22b16f[_0x24079c(0x10d)]('OK'):a117_0x22b16f[_0x24079c(0x11c)](_0x24079c(0x171));console[_0x24079c(0x140)]('\x20\x20'+_0x538c52+'\x20\x20Step\x20'+_0x4e9ecc[_0x24079c(0x127)]+':\x20'+_0x4e9ecc[_0x24079c(0x109)]);if(_0x4e9ecc[_0x24079c(0x15e)])console[_0x24079c(0x140)]('\x20\x20\x20\x20\x20\x20\x20'+a117_0x22b16f[_0x24079c(0x10a)](_0x4e9ecc[_0x24079c(0x15e)]));}console[_0x24079c(0x140)]('');}export async function upgradeApp(_0x39b37e,_0x24ee6f){const _0x4ee642=a117_0x392ddf,_0x55084f=process['cwd'](),_0x4c1098=analyse(_0x55084f),_0xeb2495=!_0x4c1098[_0x4ee642(0x168)]&&_0x4c1098[_0x4ee642(0x147)][_0x4ee642(0x151)]===0x0&&!_0x4c1098[_0x4ee642(0x102)]&&!_0x4c1098['needsSkillSwap']&&!_0x4c1098[_0x4ee642(0x15f)];if(_0xeb2495){console[_0x4ee642(0x140)](a117_0x22b16f[_0x4ee642(0x10d)](_0x4ee642(0x153)));return;}printReport(_0x4c1098);const _0x24d6a9=!!(_0x24ee6f[_0x4ee642(0x155)]||_0x24ee6f['Y']||_0x39b37e);if(!_0x24d6a9)try{const _0x32ed3e=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x32ed3e){console[_0x4ee642(0x140)](a117_0x22b16f[_0x4ee642(0x10a)](_0x4ee642(0x103)));return;}}catch(_0xf7e926){if(_0xf7e926?.[_0x4ee642(0x164)]===_0x4ee642(0x172)){console[_0x4ee642(0x140)](a117_0x22b16f[_0x4ee642(0x10a)](_0x4ee642(0x103)));return;}throw _0xf7e926;}const _0x42350a=[],_0x18045e=a117_0x520aa1({'text':_0x4ee642(0x125),'color':_0x4ee642(0x104)})[_0x4ee642(0x115)](),_0x59bea3=execConfigMigration(_0x4c1098,_0x55084f);_0x42350a[_0x4ee642(0x126)](_0x59bea3),_0x18045e[_0x59bea3['ok']?_0x4ee642(0x12e):_0x4ee642(0x146)]('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0x59bea3[_0x4ee642(0x15e)]??(_0x59bea3['ok']?_0x4ee642(0x128):_0x4ee642(0x134))));const _0x554f6e=resolve(_0x55084f,'.lovrabet'),_0x5ac0a7=a117_0x520aa1({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':_0x4ee642(0x104)})[_0x4ee642(0x115)]();if(existsSync(_0x554f6e))try{rmSync(_0x554f6e,{'recursive':!![],'force':!![]}),_0x5ac0a7[_0x4ee642(0x12e)](_0x4ee642(0x11e)),_0x42350a[_0x4ee642(0x126)]({'step':0x2,'label':_0x4ee642(0x14c),'ok':!![]});}catch(_0x338eba){_0x5ac0a7[_0x4ee642(0x146)]('Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20'+_0x338eba[_0x4ee642(0x164)]),_0x42350a[_0x4ee642(0x126)]({'step':0x2,'label':_0x4ee642(0x14c),'ok':![],'detail':_0x338eba['message']});}else _0x5ac0a7[_0x4ee642(0x154)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x42350a[_0x4ee642(0x126)]({'step':0x2,'label':_0x4ee642(0x14c),'ok':!![],'detail':_0x4ee642(0x166)});const _0x2da86c=a117_0x520aa1({'text':'Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','color':_0x4ee642(0x104)})[_0x4ee642(0x115)](),_0x3dd536=execRemoveOldArtifacts(_0x4c1098[_0x4ee642(0x147)]);_0x42350a[_0x4ee642(0x126)](_0x3dd536),_0x2da86c[_0x3dd536['ok']?_0x4ee642(0x12e):_0x4ee642(0x146)](_0x4ee642(0xfe)+(_0x3dd536[_0x4ee642(0x15e)]??(_0x3dd536['ok']?_0x4ee642(0x128):'failed')));const _0x4424f1=a117_0x520aa1({'text':_0x4ee642(0x14e),'color':_0x4ee642(0x104)})[_0x4ee642(0x115)](),_0x3bc93c=execCleanMcp(_0x4c1098);_0x42350a[_0x4ee642(0x126)](_0x3bc93c),_0x4424f1[_0x3bc93c['ok']?_0x4ee642(0x12e):_0x4ee642(0x146)]('Step\x204/7:\x20MCP\x20config\x20—\x20'+(_0x3bc93c['detail']??(_0x3bc93c['ok']?'done':_0x4ee642(0x134))));const _0x58e7d1=a117_0x520aa1({'text':_0x4ee642(0x139),'color':_0x4ee642(0x104)})[_0x4ee642(0x115)](),_0x747c7b=execSkillsRemove(_0x55084f,_0x24d6a9);_0x42350a[_0x4ee642(0x126)](_0x747c7b),_0x58e7d1[_0x747c7b['ok']?_0x4ee642(0x12e):_0x4ee642(0x146)](_0x4ee642(0x14b)+(_0x747c7b[_0x4ee642(0x15e)]??(_0x747c7b['ok']?'done':'failed')));const _0xea1780=a117_0x520aa1({'text':_0x4ee642(0x145),'color':'cyan'})[_0x4ee642(0x115)](),_0x3966b5=execSkillsAdd(_0x55084f,_0x24d6a9);_0x42350a[_0x4ee642(0x126)](_0x3966b5),_0xea1780[_0x3966b5['ok']?'succeed':_0x4ee642(0x146)](_0x4ee642(0x11a)+(_0x3966b5[_0x4ee642(0x15e)]??(_0x3966b5['ok']?_0x4ee642(0x128):_0x4ee642(0x134))));const _0x29e783=a117_0x520aa1({'text':_0x4ee642(0x137),'color':'cyan'})[_0x4ee642(0x115)](),_0x2a3c62=execUpgradeSdk(_0x4c1098);_0x42350a['push'](_0x2a3c62),_0x29e783[_0x2a3c62['ok']?_0x4ee642(0x12e):'fail'](_0x4ee642(0x132)+(_0x2a3c62[_0x4ee642(0x15e)]??(_0x2a3c62['ok']?'done':_0x4ee642(0x134)))),printSummary(_0x42350a);const _0x34e084=_0x42350a[_0x4ee642(0x15d)](_0x3aa2c6=>!_0x3aa2c6['ok']);_0x34e084?console[_0x4ee642(0x140)](a117_0x22b16f[_0x4ee642(0x111)](_0x4ee642(0x157))):console[_0x4ee642(0x140)](a117_0x22b16f['green'](_0x4ee642(0x100))),_0x2a3c62['ok']&&_0x4c1098[_0x4ee642(0x15f)]&&(console[_0x4ee642(0x140)](''),console['log'](a117_0x22b16f[_0x4ee642(0xfc)][_0x4ee642(0x104)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x4ee642(0x140)](a117_0x22b16f[_0x4ee642(0x104)](_0x4ee642(0x13c))),console[_0x4ee642(0x140)](''),console[_0x4ee642(0x140)](a117_0x22b16f[_0x4ee642(0x133)]('\x20\x20npm\x20install')),console[_0x4ee642(0x140)](a117_0x22b16f[_0x4ee642(0x133)](_0x4ee642(0x13e))),console['log'](a117_0x22b16f[_0x4ee642(0x133)](_0x4ee642(0x124))),console[_0x4ee642(0x140)](''));}
|
package/lib/commands/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a118_0xd20071=a118_0x363b;(function(_0x50b125,_0x36fc2f){const _0x46a449=a118_0x363b,_0x3f44e7=_0x50b125();while(!![]){try{const _0x2a9af0=-parseInt(_0x46a449(0x1e2))/0x1*(parseInt(_0x46a449(0x1c3))/0x2)+-parseInt(_0x46a449(0x1f2))/0x3+parseInt(_0x46a449(0x1d6))/0x4*(-parseInt(_0x46a449(0x1d9))/0x5)+parseInt(_0x46a449(0x1ce))/0x6*(-parseInt(_0x46a449(0x1cd))/0x7)+parseInt(_0x46a449(0x1c9))/0x8+-parseInt(_0x46a449(0x1c6))/0x9*(-parseInt(_0x46a449(0x1d0))/0xa)+-parseInt(_0x46a449(0x1ef))/0xb*(-parseInt(_0x46a449(0x1e8))/0xc);if(_0x2a9af0===_0x36fc2f)break;else _0x3f44e7['push'](_0x3f44e7['shift']());}catch(_0x3549a4){_0x3f44e7['push'](_0x3f44e7['shift']());}}}(a118_0x11f2,0x7fc1b));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';function a118_0x11f2(){const _0x595a8a=['logout','\x20\x20[high-risk-write]','<script>','skill','project','push','8002VUBGjV','show','length','401193uJdYni','Database\x20Connections','isSingleCommand','665000iJBbJq','Configuration','SQL\x20Queries','Menu','427wFtXyy','89634SwbuGa','Instant\x20API','10QHZGtR','Quick\x20Start','command','Authentication','BFF\x20Scripts','has','273484qgYhwY','set','Schema','75abCaPS','wildcardDef','preview','Logs','Run\x20any\x20package.json\x20script','run','API','write','Skills','2RECiHn','Diagnostics','map','Code\x20Generation','login','App\x20Management','15888UDYlwL','defaultCommand','Smart\x20List\x20Pages','create','Run\x20Scripts','Dataset\x20&\x20Operations','commands','19591ZxeLGC','get','\x20\x20[write]','52827vFDFQC','service','build'];a118_0x11f2=function(){return _0x595a8a;};return a118_0x11f2();}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(_0x28986a){const _0x3554bc=a118_0x363b;for(const _0x110220 of _0x28986a){definitions[_0x3554bc(0x1d7)](_0x110220[_0x3554bc(0x1f3)]+':'+_0x110220[_0x3554bc(0x1d2)],_0x110220);let _0x4f4691=serviceGroups['get'](_0x110220[_0x3554bc(0x1f3)]);!_0x4f4691&&(_0x4f4691=[],serviceGroups['set'](_0x110220[_0x3554bc(0x1f3)],_0x4f4691)),_0x4f4691[_0x3554bc(0x1c2)](_0x110220);}}function registerDeclarativeService(_0x2d93a2,_0x311c7d,_0x351459){const _0x9ceba6=a118_0x363b;registerDefinitions(_0x311c7d);_0x351459?.[_0x9ceba6(0x1da)]&®isterDefinitions([_0x351459[_0x9ceba6(0x1da)]]);const _0x549e93=_0x28ec9d=>_0x28ec9d==='read'?'':_0x28ec9d===_0x9ceba6(0x1e0)?_0x9ceba6(0x1f1):_0x9ceba6(0x1f6),_0x10556d={'service':_0x311c7d[0x0]['service'],'label':_0x2d93a2,'commands':_0x311c7d[_0x9ceba6(0x1e4)](_0x4e8086=>({'command':_0x4e8086['command'],'description':_0x4e8086['description'],'tag':_0x549e93(_0x4e8086['risk'])})),'declarative':!![],'defaultCommand':_0x351459?.[_0x9ceba6(0x1e9)]??(_0x351459?.[_0x9ceba6(0x1c8)]?_0x311c7d[0x0][_0x9ceba6(0x1d2)]:undefined),'wildcardDef':_0x351459?.['wildcardDef'],'isSingleCommand':_0x351459?.['isSingleCommand']};serviceRegistry[_0x9ceba6(0x1c2)](_0x10556d),serviceByName[_0x9ceba6(0x1d7)](_0x10556d[_0x9ceba6(0x1f3)],_0x10556d);}registerDeclarativeService(a118_0xd20071(0x1d1),initDefinitions,{'defaultCommand':'run','isSingleCommand':!![]}),registerDeclarativeService('Project',projectDefinitions),registerDeclarativeService(a118_0xd20071(0x1e7),appDefinitions),registerDeclarativeService(a118_0xd20071(0x1ec),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a118_0xd20071(0x1c5)]-0x1];last[a118_0xd20071(0x1ee)]=[{'command':a118_0xd20071(0x1bf),'description':a118_0xd20071(0x1dd),'tag':''}];}registerDeclarativeService(a118_0xd20071(0x1d3),authDefinitions,{'defaultCommand':a118_0xd20071(0x1e6)}),registerDeclarativeService('Self\x20Update',[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a118_0xd20071(0x1e3),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a118_0xd20071(0x1d8),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a118_0xd20071(0x1ca),configDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService(a118_0xd20071(0x1df),apiDefinitions),registerDeclarativeService(a118_0xd20071(0x1cc),menuDefinitions),registerDeclarativeService(a118_0xd20071(0x1c7),dbDefinitions),registerDeclarativeService(a118_0xd20071(0x1ed),datasetDefinitions),registerDeclarativeService(a118_0xd20071(0x1ea),pageDefinitions),registerDeclarativeService(a118_0xd20071(0x1cf),dataDefinitions),registerDeclarativeService(a118_0xd20071(0x1d4),bffDefinitions),registerDeclarativeService(a118_0xd20071(0x1cb),sqlDefinitions),registerDeclarativeService(a118_0xd20071(0x1e5),codegenDefinitions),registerDeclarativeService(a118_0xd20071(0x1e1),skillDefinitions),registerDeclarativeService(a118_0xd20071(0x1dc),logsDefinitions,{'defaultCommand':a118_0xd20071(0x1c4)});export const deprecatedAliases={'create':{'service':a118_0xd20071(0x1c1),'command':a118_0xd20071(0x1eb)},'start':{'service':a118_0xd20071(0x1de),'command':'start'},'build':{'service':a118_0xd20071(0x1de),'command':a118_0xd20071(0x1f4)},'preview':{'service':a118_0xd20071(0x1de),'command':a118_0xd20071(0x1db)},'logout':{'service':'auth','command':a118_0xd20071(0x1f5)},'skills':{'service':a118_0xd20071(0x1c0),'command':'install'}};export const deprecatedSubcommands={'bff':{'new':a118_0xd20071(0x1eb)},'sql':{'new':a118_0xd20071(0x1eb)}};function a118_0x363b(_0x1cabdd,_0x1305b4){_0x1cabdd=_0x1cabdd-0x1bf;const _0x11f28c=a118_0x11f2();let _0x363b09=_0x11f28c[_0x1cabdd];return _0x363b09;}export function resolveDeprecatedSubcommand(_0x1fd26f,_0x4932b7){return deprecatedSubcommands[_0x1fd26f]?.[_0x4932b7];}export function findDefinition(_0x216933,_0x41cbf2){const _0x12e152=a118_0xd20071;return definitions[_0x12e152(0x1f0)](_0x216933+':'+_0x41cbf2);}export function isKnownService(_0x487bb8){const _0x105811=a118_0xd20071;return serviceByName[_0x105811(0x1d5)](_0x487bb8);}export function isDeclarativeService(_0x10c947){const _0x4b1af5=a118_0xd20071;return serviceGroups[_0x4b1af5(0x1d5)](_0x10c947)||serviceByName[_0x4b1af5(0x1f0)](_0x10c947)?.[_0x4b1af5(0x1da)]!==undefined;}export function getServiceEntry(_0x513c92){const _0x19fdfc=a118_0xd20071;return serviceByName[_0x19fdfc(0x1f0)](_0x513c92);}export function getLegacyHandler(_0x263d75,_0x54648d){return undefined;}export function getAllDefinitions(){return Array['from'](definitions['values']());}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a119_0x44e052=a119_0x2386;(function(_0x2dd9d8,_0x405ec4){const _0x38d627=a119_0x2386,_0x53c907=_0x2dd9d8();while(!![]){try{const _0x2506a5=parseInt(_0x38d627(0x1b0))/0x1+parseInt(_0x38d627(0x1c6))/0x2*(parseInt(_0x38d627(0x1a6))/0x3)+parseInt(_0x38d627(0x1c0))/0x4+-parseInt(_0x38d627(0x199))/0x5*(-parseInt(_0x38d627(0x1ab))/0x6)+-parseInt(_0x38d627(0x1da))/0x7+-parseInt(_0x38d627(0x1a3))/0x8+-parseInt(_0x38d627(0x1bc))/0x9;if(_0x2506a5===_0x405ec4)break;else _0x53c907['push'](_0x53c907['shift']());}catch(_0x16b41e){_0x53c907['push'](_0x53c907['shift']());}}}(a119_0x4e26,0xa7cc0));import{readFileSync,existsSync}from'node:fs';import{CLI_BIN_NAME}from'../../constant/cli.js';import{resolve,delimiter,join}from'node:path';import{spawn}from'node:child_process';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(['start','dev']);function readPackageScripts(_0x3b428d){const _0x3e1264=a119_0x2386,_0x4c4612=resolve(_0x3b428d,_0x3e1264(0x1ad));if(!existsSync(_0x4c4612))return null;try{const _0x442f9a=JSON['parse'](readFileSync(_0x4c4612,_0x3e1264(0x1ae)));return _0x442f9a[_0x3e1264(0x1a1)]??{};}catch{return null;}}function detectPackageManager(_0x3d6f1e){const _0x26f7ae=a119_0x2386;if(existsSync(resolve(_0x3d6f1e,_0x26f7ae(0x1a4)))||existsSync(resolve(_0x3d6f1e,_0x26f7ae(0x19c))))return _0x26f7ae(0x1d9);if(existsSync(resolve(_0x3d6f1e,_0x26f7ae(0x1de))))return _0x26f7ae(0x1b6);if(existsSync(resolve(_0x3d6f1e,_0x26f7ae(0x1bf))))return'yarn';return _0x26f7ae(0x1d7);}async function versionCheck(_0x5c484e){const _0xa9e2b8=a119_0x2386,_0xea8daf=await checkCliVersion();(_0xea8daf[_0xa9e2b8(0x1a0)]||_0xea8daf[_0xa9e2b8(0x1d5)])&&(printCliUpgradeWarning(_0xea8daf),assertCliVersionSupported(_0xea8daf));const _0x4ae779=await checkSdkVersion(_0x5c484e);if(_0x4ae779[_0xa9e2b8(0x1a0)])printSdkUpgradeWarning(_0x4ae779);}function spawnScript(_0x42f385,_0x158fcc,_0x315a69,_0x5f81b1){return new Promise((_0x4e4c31,_0x19ac5a)=>{const _0x543866=a119_0x2386,_0x31de46=[_0x543866(0x1b9),_0x158fcc,..._0x315a69],_0xc9bc46=spawn(_0x42f385,_0x31de46,{'cwd':_0x5f81b1,'stdio':_0x543866(0x1d1),'shell':!![],'env':{...process.env,'PATH':''+join(_0x5f81b1,'node_modules',_0x543866(0x19f))+delimiter+process.env.PATH}});_0xc9bc46['on']('close',_0x5703fb=>{const _0x272b21=_0x543866;if(_0x5703fb===0x0||_0x5703fb===null)_0x4e4c31();else _0x19ac5a(new Error(_0x42f385+_0x272b21(0x1c7)+_0x158fcc+'\x20exited\x20with\x20code\x20'+_0x5703fb));}),_0xc9bc46['on'](_0x543866(0x1cb),_0x19ac5a);});}function a119_0x2386(_0x3b4cb1,_0x11bafa){_0x3b4cb1=_0x3b4cb1-0x198;const _0x4e26c3=a119_0x4e26();let _0x238608=_0x4e26c3[_0x3b4cb1];return _0x238608;}function spawnViteBuildWatch(_0x1396f8){return new Promise((_0x2e91ec,_0x269ce0)=>{const _0x2aec4b=a119_0x2386,_0x12e4b0=spawn(_0x2aec4b(0x1dc),[_0x2aec4b(0x1cc),_0x2aec4b(0x1d8)],{'cwd':_0x1396f8,'stdio':_0x2aec4b(0x1d1),'shell':!![],'env':{...process.env,'PATH':''+join(_0x1396f8,_0x2aec4b(0x1c9),'.bin')+delimiter+process.env.PATH}});_0x12e4b0['on']('close',_0x2ebdc2=>{const _0x8e7d1a=_0x2aec4b;if(_0x2ebdc2===0x0||_0x2ebdc2===null)_0x2e91ec();else _0x269ce0(new Error(_0x8e7d1a(0x1dd)+_0x2ebdc2));}),_0x12e4b0['on'](_0x2aec4b(0x1cb),_0x269ce0);});}function spawnVitePreview(_0x443865){return new Promise((_0x4d3d84,_0x55cdc2)=>{const _0x5c48fa=a119_0x2386,_0x299dd7=spawn(_0x5c48fa(0x1dc),[_0x5c48fa(0x1b1)],{'cwd':_0x443865,'stdio':_0x5c48fa(0x1d1),'shell':!![],'env':{...process.env,'PATH':''+join(_0x443865,_0x5c48fa(0x1c9),_0x5c48fa(0x19f))+delimiter+process.env.PATH}});_0x299dd7['on'](_0x5c48fa(0x1af),_0x42cc8e=>{const _0x50cd5f=_0x5c48fa;if(_0x42cc8e===0x0||_0x42cc8e===null)_0x4d3d84();else _0x55cdc2(new Error(_0x50cd5f(0x1b2)+_0x42cc8e));}),_0x299dd7['on'](_0x5c48fa(0x1cb),_0x55cdc2);});}const runFlags=[{'name':a119_0x44e052(0x1c3),'type':a119_0x44e052(0x1cf),'description':a119_0x44e052(0x1be),'default':![]}];function a119_0x4e26(){const _0x5d8a36=['scripts','join','6655792GlSxVU','bun.lockb','\x20run\x20preview','3033tEcndK','\x0a\x20\x20Available\x20scripts:\x0a','log','Script\x20\x22','No\x20scripts\x20defined\x20in\x20package.json.','1542QvUPlY','\x0a\x20\x20Usage:\x20','package.json','utf-8','close','569140vdFJmj','preview','vite\x20preview\x20exited\x20with\x20code\x20','\x20\x20EXAMPLES','script','Script\x20name\x20defined\x20in\x20package.json','pnpm','cwd','\x20run\x20preview\x20--watch\x20\x20\x20#\x20parallel\x20build\x20--watch\x20+\x20preview','run','\x22\x20not\x20found\x20in\x20package.json.','Run\x20a\x20package.json\x20script','1715058QwdHBz','length','Enable\x20watch\x20mode\x20for\x20preview','yarn.lock','2346112vioPrN','\x20run\x20<script>\x0a','bool','watch','(none)','\x20\x20\x20\x20','302ReltMp','\x20run\x20','push','node_modules','\x20run\x20build','error','build','\x20\x20AVAILABLE\x20SCRIPTS\x20\x20(current\x20project)','map','boolean','args','inherit','slice','read','validation','belowMinimum','keys','npm','--watch','bun','6765556lRMJSm','all','vite','vite\x20build\x20--watch\x20exited\x20with\x20code\x20','pnpm-lock.yaml','No\x20package.json\x20found\x20in\x20current\x20directory.','26615iVsXkm','entries','Available:\x20','bun.lock','max','padEnd','.bin','needsUpgrade'];a119_0x4e26=function(){return _0x5d8a36;};return a119_0x4e26();}export const runDefinition={'service':a119_0x44e052(0x1b9),'command':a119_0x44e052(0x1b9),'description':a119_0x44e052(0x1bb),'risk':a119_0x44e052(0x1d3),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a119_0x44e052(0x1b4),'description':a119_0x44e052(0x1b5),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x29ccaa=a119_0x44e052,_0x40b652=readPackageScripts(process['cwd']()),_0x435c51=[];if(_0x40b652&&Object[_0x29ccaa(0x1d6)](_0x40b652)[_0x29ccaa(0x1bd)]>0x0){const _0x608cba=Object['keys'](_0x40b652),_0x25a38e=Math['max'](..._0x608cba[_0x29ccaa(0x1ce)](_0x50734e=>_0x50734e[_0x29ccaa(0x1bd)]));_0x435c51[_0x29ccaa(0x1c8)](_0x29ccaa(0x1cd));for(const [_0x1d6fc7,_0x145ee6]of Object[_0x29ccaa(0x19a)](_0x40b652)){_0x435c51[_0x29ccaa(0x1c8)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x29ccaa(0x1c7)+_0x1d6fc7[_0x29ccaa(0x19e)](_0x25a38e+0x2)+'#\x20'+_0x145ee6);}}else _0x435c51[_0x29ccaa(0x1c8)](_0x29ccaa(0x1b3)),_0x435c51['push'](_0x29ccaa(0x1c5)+CLI_BIN_NAME+'\x20run\x20start'),_0x435c51[_0x29ccaa(0x1c8)](_0x29ccaa(0x1c5)+CLI_BIN_NAME+_0x29ccaa(0x1ca)),_0x435c51[_0x29ccaa(0x1c8)](_0x29ccaa(0x1c5)+CLI_BIN_NAME+_0x29ccaa(0x1a5)),_0x435c51[_0x29ccaa(0x1c8)](_0x29ccaa(0x1c5)+CLI_BIN_NAME+_0x29ccaa(0x1b8));return _0x435c51[_0x29ccaa(0x1a2)]('\x0a');},async 'execute'(_0x5d90f7){const _0x5bf9dd=a119_0x44e052,_0x4850b3=process[_0x5bf9dd(0x1b7)](),_0x3f9c10=_0x5d90f7[_0x5bf9dd(0x1d0)][0x0],_0x587ab9=_0x5d90f7[_0x5bf9dd(0x1d0)][_0x5bf9dd(0x1d2)](0x1),_0x495309=readPackageScripts(_0x4850b3);if(!_0x495309)throw CliErrors[_0x5bf9dd(0x1d4)](_0x5bf9dd(0x198));if(!_0x3f9c10){const _0x458f56=Object[_0x5bf9dd(0x1d6)](_0x495309);if(_0x458f56['length']===0x0)console['log'](_0x5bf9dd(0x1aa));else{console[_0x5bf9dd(0x1a8)](_0x5bf9dd(0x1a7));const _0x137d5f=Math[_0x5bf9dd(0x19d)](..._0x458f56[_0x5bf9dd(0x1ce)](_0xef78ff=>_0xef78ff[_0x5bf9dd(0x1bd)]));for(const [_0x260e0c,_0x37e33f]of Object[_0x5bf9dd(0x19a)](_0x495309)){console[_0x5bf9dd(0x1a8)](_0x5bf9dd(0x1c5)+_0x260e0c['padEnd'](_0x137d5f+0x2)+_0x37e33f);}console[_0x5bf9dd(0x1a8)](_0x5bf9dd(0x1ac)+CLI_BIN_NAME+_0x5bf9dd(0x1c1));}return{'ok':!![]};}if(!_0x495309[_0x3f9c10])throw CliErrors[_0x5bf9dd(0x1d4)](_0x5bf9dd(0x1a9)+_0x3f9c10+_0x5bf9dd(0x1ba),_0x5bf9dd(0x19b)+(Object['keys'](_0x495309)[_0x5bf9dd(0x1a2)](',\x20')||_0x5bf9dd(0x1c4)));const _0x23d1f0=detectPackageManager(_0x4850b3);VERSION_CHECK_SCRIPTS['has'](_0x3f9c10)&&await versionCheck(_0x4850b3);if(_0x3f9c10===_0x5bf9dd(0x1b1)&&_0x5d90f7[_0x5bf9dd(0x1c2)](_0x5bf9dd(0x1c3)))return await Promise[_0x5bf9dd(0x1db)]([spawnViteBuildWatch(_0x4850b3),spawnVitePreview(_0x4850b3)]),{'ok':!![]};return await spawnScript(_0x23d1f0,_0x3f9c10,_0x587ab9,_0x4850b3),{'ok':!![]};}};
|
package/lib/commands/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a120_0x160890=a120_0x3c23;(function(_0x4ac8be,_0x18a81d){const _0x225af0=a120_0x3c23,_0x410558=_0x4ac8be();while(!![]){try{const _0x284c92=-parseInt(_0x225af0(0x152))/0x1+parseInt(_0x225af0(0x156))/0x2+parseInt(_0x225af0(0x150))/0x3+parseInt(_0x225af0(0x15a))/0x4+-parseInt(_0x225af0(0x155))/0x5+-parseInt(_0x225af0(0x14f))/0x6+-parseInt(_0x225af0(0x153))/0x7;if(_0x284c92===_0x18a81d)break;else _0x410558['push'](_0x410558['shift']());}catch(_0x1afda9){_0x410558['push'](_0x410558['shift']());}}}(a120_0x4d1b,0xe9ec7));import{buildSchemaPayload}from'../framework/schema-export.js';async function execute(_0x409b8d){const _0x55bc59=await buildSchemaPayload();return{'ok':!![],'data':_0x55bc59};}function a120_0x3c23(_0x3df968,_0x32e259){_0x3df968=_0x3df968-0x14f;const _0x4d1b73=a120_0x4d1b();let _0x3c23cd=_0x4d1b73[_0x3df968];return _0x3c23cd;}export const schemaDefinition={'service':a120_0x160890(0x158),'command':a120_0x160890(0x154),'description':a120_0x160890(0x159),'risk':a120_0x160890(0x157),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a120_0x160890(0x151),'flags':[],'execute':execute};function a120_0x4d1b(){const _0x4f2763=['3467376HGGRRy','json','772713MtCTtU','5760356qoUvka','export','4343560BaEmkb','2665760xTcLWd','read','schema','Export\x20machine-readable\x20command\x20schema\x20(JSON)','5252952CphGJk','2276556mhQKjv'];a120_0x4d1b=function(){return _0x4f2763;};return a120_0x4d1b();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a121_0x45035c=a121_0x2a86;(function(_0x364bc5,_0x55e2cb){const _0x4f1563=a121_0x2a86,_0x240b47=_0x364bc5();while(!![]){try{const _0x54540a=-parseInt(_0x4f1563(0x1ce))/0x1+-parseInt(_0x4f1563(0x1d3))/0x2*(-parseInt(_0x4f1563(0x1c6))/0x3)+parseInt(_0x4f1563(0x1dc))/0x4+-parseInt(_0x4f1563(0x1dd))/0x5+parseInt(_0x4f1563(0x1d2))/0x6+-parseInt(_0x4f1563(0x1c2))/0x7*(parseInt(_0x4f1563(0x1d8))/0x8)+parseInt(_0x4f1563(0x1e0))/0x9;if(_0x54540a===_0x55e2cb)break;else _0x240b47['push'](_0x240b47['shift']());}catch(_0x32b30a){_0x240b47['push'](_0x240b47['shift']());}}}(a121_0x4f51,0x734e7));function a121_0x4f51(){const _0x471522=['error','384834AozLjP','Check\x20network\x20connectivity\x20and\x20try\x20again.','\x20skill\x20installed','nonInteractive','skipped','Skipped\x20npx\x20(RABETBASE_SKIP_NPX_SKILLS=1);\x20assuming\x20skill\x20is\x20already\x20present.','info','write','85138Dznnxr','npx\x20skills\x20add\x20failed:\x20','inherit','install','882546LSzwQZ','2FeTdkw','skill',')...','pipe','Installing\x20official\x20skill\x20via\x20npx\x20(','16hkaKbX','unknown','执行安装技能包命令(委托给\x20npx\x20skills\x20add\x20-g\x20-y)','setLogPath','3495376JOhkMy','1041525UvTYVg','../../skills/npx-skills-add.js','cwd','3494943HCKjsf','2701307hmMELI','lovrabet/rabetbase','log'];a121_0x4f51=function(){return _0x471522;};return a121_0x4f51();}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';function a121_0x2a86(_0x16c5a8,_0x258bd4){_0x16c5a8=_0x16c5a8-0x1c2;const _0x4f51bf=a121_0x4f51();let _0x2a865d=_0x4f51bf[_0x16c5a8];return _0x2a865d;}import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE}from'../../skills/npx-skills-add.js';export const skillDefinitions=[{'service':a121_0x45035c(0x1d4),'command':a121_0x45035c(0x1d1),'description':'Install\x20developer\x20skill\x20package','risk':a121_0x45035c(0x1cd),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x33721a){const _0x2fd12f=a121_0x45035c;logger[_0x2fd12f(0x1db)](process[_0x2fd12f(0x1df)]()),logger[_0x2fd12f(0x1cc)]('skill-install',_0x2fd12f(0x1da));const {runNpxSkillsAddGlobal:_0x7f1710}=await import(_0x2fd12f(0x1de)),_0x273c28=_0x33721a[_0x2fd12f(0x1c9)]?_0x2fd12f(0x1d6):_0x2fd12f(0x1d0);console['log'](_0x2fd12f(0x1d7)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+_0x2fd12f(0x1d5));const _0x3d9721=_0x7f1710(process['cwd'](),_0x2fd12f(0x1c3),{'stdio':_0x273c28});if(_0x3d9721[_0x2fd12f(0x1ca)])console[_0x2fd12f(0x1c4)](_0x2fd12f(0x1cb));else{if(_0x3d9721['ok'])console[_0x2fd12f(0x1c4)](CLI_BIN_NAME+_0x2fd12f(0x1c8));else throw CliErrors['apiError'](_0x2fd12f(0x1cf)+(_0x3d9721[_0x2fd12f(0x1c5)]||_0x2fd12f(0x1d9)),_0x2fd12f(0x1c7));}return{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a122_0x40ae5f=a122_0x3a2e;(function(_0x249b13,_0x1cdc97){const _0x431060=a122_0x3a2e,_0x310c82=_0x249b13();while(!![]){try{const _0x53ede6=parseInt(_0x431060(0x189))/0x1+parseInt(_0x431060(0x1c1))/0x2+-parseInt(_0x431060(0x19c))/0x3+parseInt(_0x431060(0x1b6))/0x4+parseInt(_0x431060(0x1b8))/0x5*(parseInt(_0x431060(0x187))/0x6)+parseInt(_0x431060(0x19e))/0x7*(-parseInt(_0x431060(0x18e))/0x8)+parseInt(_0x431060(0x1b4))/0x9*(-parseInt(_0x431060(0x1b0))/0xa);if(_0x53ede6===_0x1cdc97)break;else _0x310c82['push'](_0x310c82['shift']());}catch(_0x4f0e03){_0x310c82['push'](_0x310c82['shift']());}}}(a122_0x58c1,0x20845));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';function a122_0x58c1(){const _0x50426b=['str','mybatisXml','7938VsMDMd','dbId','348096jdOLJe','sqlRootDir','5vbbmjD','/smartapi/custom/saveUserCustomSql','✎\x20手动输入\x20dbId','description','dbName','请选择目标数据库:','Created\x20SQL\x20query\x20','high-risk-write','SQL\x20query\x20display\x20name','478830gpVzRv','Local\x20SQL\x20file\x20mode','utf8','\x20\x20SELECT\x201\x20AS\x20id','</select>','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','请选择本地\x20SQL\x20模式:','nonInteractive','File\x20already\x20exists:\x20','lastSync','1441914ayGwFi','dbId\x20必须为正整数','214895uoYARY','flagMissing','sql','join','sqlName','248kIPPMc','toISOString','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','db-id','<server-generated-sqlCode>','mode','普通\x20SQL(sql)','appCode','isInteger','trim','MyBatis\x20XML(mybatisXml)','stringify','number','288642VzyXoR','lockFilePath','11578VaesFG','sqlRoot','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','请输入\x20SQL\x20名称:','SELECT\x201\x20AS\x20id;','map','Invalid\x20database\x20selection\x20payload:\x20','validation','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','SQL\x20名称不能为空','sqlCode','__manual__','length','name','catch','dbId\x20不能为空','isFinite','5680FtciXs','string'];a122_0x58c1=function(){return _0x50426b;};return a122_0x58c1();}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';import{buildSqlRelativePath}from'../../core/sql-sync/utils.js';import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x4334e9){const _0x335f8d=a122_0x3a2e;if(_0x4334e9===_0x335f8d(0x1b3))return[_0x335f8d(0x1a0),_0x335f8d(0x1c4),_0x335f8d(0x1c5),''][_0x335f8d(0x18c)]('\x0a');return[_0x335f8d(0x1a2),''][_0x335f8d(0x18c)]('\x0a');}export const sqlCreate={'service':a122_0x40ae5f(0x18b),'command':'create','description':a122_0x40ae5f(0x191),'risk':a122_0x40ae5f(0x1bf),'flags':[{'name':'name','type':a122_0x40ae5f(0x1b1),'description':a122_0x40ae5f(0x1c0)},{'name':a122_0x40ae5f(0x192),'type':a122_0x40ae5f(0x19b),'description':'Target\x20database\x20ID'},{'name':a122_0x40ae5f(0x194),'type':a122_0x40ae5f(0x1b1),'enum':['sql',a122_0x40ae5f(0x1b3)],'description':a122_0x40ae5f(0x1c2)}],async 'validate'(_0x10030e){const _0x27f898=a122_0x40ae5f;if(!_0x10030e[_0x27f898(0x1c8)])return;if(!_0x10030e[_0x27f898(0x1b2)]('name')['trim']())throw CliErrors[_0x27f898(0x18a)]('name',_0x27f898(0x1a6));const _0x54031f=resolveProvidedDbId(_0x10030e);if(typeof _0x54031f!=='number'||!Number['isFinite'](_0x54031f)||_0x54031f<=0x0)throw CliErrors[_0x27f898(0x18a)](_0x27f898(0x192),_0x27f898(0x190));if(!_0x10030e[_0x27f898(0x1b2)](_0x27f898(0x194))[_0x27f898(0x198)]())throw CliErrors[_0x27f898(0x18a)]('mode','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');},async 'dryRun'(_0x1b4244){const _0x3a7dfd=a122_0x40ae5f,_0x51ccc1=loadSqlProjectConfig(_0x1b4244[_0x3a7dfd(0x196)]),{sqlName:_0x58350b,dbId:_0x4d14be,dbName:_0x4456c9,mode:_0x3ff878}=await resolveSqlNewInputs(_0x1b4244),_0x2b0063=buildSqlRelativePath(_0x3a7dfd(0x193),_0x58350b,_0x4456c9,_0x3ff878,_0x4d14be),_0x4f7990=_0x51ccc1['sqlRootDir']+'/'+_0x2b0063;return{'method':'POST','url':_0x3a7dfd(0x1b9),'body':{'appCode':_0x1b4244[_0x3a7dfd(0x196)],'sqlName':_0x58350b,'dbId':_0x4d14be,'mode':_0x3ff878,'localPath':_0x4f7990},'description':'Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20'+_0x51ccc1['sqlRootDir']};},async 'execute'(_0x243d63){const _0x159e72=a122_0x40ae5f,_0x56673c=loadSqlProjectConfig(_0x243d63['appCode']),{sqlName:_0x41d95a,dbId:_0x5dafbc,dbName:_0x4762a3,mode:_0x20f58f}=await resolveSqlNewInputs(_0x243d63),_0x2657e0=generateSqlTemplate(_0x20f58f),_0x590efc=await createSqlQuery({'appCode':_0x243d63['appCode'],'sqlName':_0x41d95a,'dbId':_0x5dafbc,'sqlContent':_0x2657e0}),_0x5d326c=ensureRemoteSqlContent(_0x590efc),_0x47ae42=_0x4762a3||await getDbName(_0x243d63[_0x159e72(0x196)],_0x5dafbc)[_0x159e72(0x1ad)](()=>undefined),_0x4ea4a5=buildSqlRelativePath(_0x590efc[_0x159e72(0x1a9)],_0x590efc[_0x159e72(0x18d)],_0x47ae42,_0x20f58f,_0x5dafbc),_0x587d81=_0x56673c[_0x159e72(0x1b7)]+'/'+_0x4ea4a5,_0xe1f0bd=buildLocalSqlFileContent({'sqlCode':_0x590efc[_0x159e72(0x1a9)],'sqlName':_0x590efc[_0x159e72(0x18d)],'dbId':_0x590efc[_0x159e72(0x1b5)]},_0x5d326c,{'dbName':_0x47ae42,'mode':_0x20f58f,'syncedAt':new Date()[_0x159e72(0x18f)](),'description':_0x590efc[_0x159e72(0x1bb)]});if(await fileExists(_0x587d81))throw CliErrors[_0x159e72(0x1a5)](_0x159e72(0x185)+_0x587d81);await ensureParentDirectory(_0x587d81),await writeFile(_0x587d81,_0xe1f0bd,_0x159e72(0x1c3));const _0x346d53=await readSqlLockFile(_0x56673c[_0x159e72(0x19d)]),{lockData:_0x28f4f8,appLock:_0x265e24}=ensureSqlLockScope(_0x346d53??createEmptySqlLock(),_0x56673c[_0x159e72(0x196)],_0x56673c[_0x159e72(0x19f)],'new');return _0x265e24['sqls'][_0x590efc['sqlCode']]={...buildSqlLockEntry(_0x590efc,_0x5d326c,computeSqlContentHash(_0xe1f0bd),{'dbName':_0x47ae42}),'path':_0x4ea4a5,'mode':_0x20f58f},_0x265e24[_0x159e72(0x186)]=new Date()[_0x159e72(0x18f)](),await writeSqlLockFile(_0x56673c[_0x159e72(0x19d)],_0x28f4f8),{'ok':!![],'data':{'id':_0x590efc['id'],'sqlCode':_0x590efc[_0x159e72(0x1a9)],'sqlName':_0x590efc[_0x159e72(0x18d)],'dbId':_0x590efc[_0x159e72(0x1b5)],'path':_0x587d81,'mode':_0x20f58f},'message':_0x159e72(0x1be)+_0x590efc[_0x159e72(0x1a9)]};}};async function resolveSqlNewInputs(_0x2bf4fb){const _0x3b97a0=await resolveSqlNameInput(_0x2bf4fb),{dbId:_0x40faa9,dbName:_0x545211}=await resolveDbSelection(_0x2bf4fb),_0x5644cd=await resolveSqlModeInput(_0x2bf4fb);return{'sqlName':_0x3b97a0,'dbId':_0x40faa9,'dbName':_0x545211,'mode':_0x5644cd};}async function resolveSqlNameInput(_0x38ef49){const _0x2e3435=a122_0x40ae5f,_0x5ea0b9=_0x38ef49[_0x2e3435(0x1b2)](_0x2e3435(0x1ac))['trim']();if(_0x5ea0b9)return _0x5ea0b9;if(_0x38ef49[_0x2e3435(0x1c8)])throw CliErrors['flagMissing']('name',_0x2e3435(0x1a6));return(await input({'message':_0x2e3435(0x1a1),'validate':_0x4ddba7=>_0x4ddba7[_0x2e3435(0x198)]()?!![]:_0x2e3435(0x1a8)}))[_0x2e3435(0x198)]();}async function resolveDbSelection(_0x1d16c5){const _0x4b3c7a=a122_0x40ae5f,_0x4bc25d=resolveProvidedDbId(_0x1d16c5);if(typeof _0x4bc25d===_0x4b3c7a(0x19b)&&Number[_0x4b3c7a(0x1af)](_0x4bc25d)&&_0x4bc25d>0x0)return{'dbId':_0x4bc25d,'dbName':await getDbName(_0x1d16c5[_0x4b3c7a(0x196)],_0x4bc25d)['catch'](()=>undefined)};if(_0x1d16c5[_0x4b3c7a(0x1c8)])throw CliErrors[_0x4b3c7a(0x18a)]('db-id',_0x4b3c7a(0x190));const _0x1217e0=await listDatabases(_0x1d16c5[_0x4b3c7a(0x196)])['catch'](()=>[]);if(_0x1217e0[_0x4b3c7a(0x1ab)]===0x1)return{'dbId':_0x1217e0[0x0]['dbId'],'dbName':_0x1217e0[0x0][_0x4b3c7a(0x1bc)]};if(_0x1217e0[_0x4b3c7a(0x1ab)]>0x1){const _0x476260=await select({'message':_0x4b3c7a(0x1bd),'choices':[..._0x1217e0[_0x4b3c7a(0x1a3)](_0x4416a1=>({'name':_0x4416a1['dbName']+'\x20('+_0x4416a1[_0x4b3c7a(0x1b5)]+')','value':serializeDbSelection(_0x4416a1)})),{'name':_0x4b3c7a(0x1ba),'value':_0x4b3c7a(0x1aa)}]});if(_0x476260!==_0x4b3c7a(0x1aa))return deserializeDbSelection(_0x476260);}const _0x17257e=await input({'message':'请输入目标数据库\x20dbId:','validate':_0x28aff9=>{const _0x3adb4a=_0x4b3c7a,_0x3fb979=_0x28aff9[_0x3adb4a(0x198)]();if(!_0x3fb979)return _0x3adb4a(0x1ae);const _0xea4256=Number(_0x3fb979);if(!Number[_0x3adb4a(0x197)](_0xea4256)||_0xea4256<=0x0)return _0x3adb4a(0x188);return!![];}});return{'dbId':Number(_0x17257e['trim']())};}async function resolveSqlModeInput(_0xeda81a){const _0x380abb=a122_0x40ae5f,_0x14cc2b=_0xeda81a[_0x380abb(0x1b2)](_0x380abb(0x194))[_0x380abb(0x198)]();if(_0x14cc2b===_0x380abb(0x18b)||_0x14cc2b===_0x380abb(0x1b3))return _0x14cc2b;if(_0xeda81a['nonInteractive'])throw CliErrors[_0x380abb(0x18a)](_0x380abb(0x194),_0x380abb(0x1a7));return await select({'message':_0x380abb(0x1c7),'choices':[{'name':_0x380abb(0x195),'value':_0x380abb(0x18b),'description':_0x380abb(0x1c6)},{'name':_0x380abb(0x199),'value':'mybatisXml','description':'适合带动态标签的\x20MyBatis\x20XML\x20SQL'}]});}function serializeDbSelection(_0x486163){const _0x24f607=a122_0x40ae5f;return JSON[_0x24f607(0x19a)]({'dbId':_0x486163['dbId'],'dbName':_0x486163[_0x24f607(0x1bc)]});}function deserializeDbSelection(_0x227e3f){const _0x1c3a06=a122_0x40ae5f;try{const _0x4e52a8=JSON['parse'](_0x227e3f);if(typeof _0x4e52a8[_0x1c3a06(0x1b5)]===_0x1c3a06(0x19b)&&Number[_0x1c3a06(0x1af)](_0x4e52a8[_0x1c3a06(0x1b5)]))return{'dbId':_0x4e52a8[_0x1c3a06(0x1b5)],'dbName':_0x4e52a8['dbName']};}catch{}throw CliErrors[_0x1c3a06(0x1a5)](_0x1c3a06(0x1a4)+_0x227e3f);}function a122_0x3a2e(_0x3fc256,_0x5a01d0){_0x3fc256=_0x3fc256-0x185;const _0x58c1ac=a122_0x58c1();let _0x3a2e1e=_0x58c1ac[_0x3fc256];return _0x3a2e1e;}function resolveProvidedDbId(_0x50832e){const _0x460b29=a122_0x40ae5f,_0x3ff503=_0x50832e['flag']('db-id');if(typeof _0x3ff503===_0x460b29(0x19b)&&Number['isFinite'](_0x3ff503))return _0x3ff503;return undefined;}
|
|
1
|
+
const a122_0x537ad4=a122_0x3011;(function(_0x5af962,_0x140839){const _0x4ec796=a122_0x3011,_0x35fce9=_0x5af962();while(!![]){try{const _0x54e21d=-parseInt(_0x4ec796(0x1b5))/0x1+-parseInt(_0x4ec796(0x1aa))/0x2+-parseInt(_0x4ec796(0x1c5))/0x3*(parseInt(_0x4ec796(0x1ab))/0x4)+parseInt(_0x4ec796(0x1ba))/0x5+parseInt(_0x4ec796(0x1d4))/0x6*(-parseInt(_0x4ec796(0x1a0))/0x7)+parseInt(_0x4ec796(0x1a6))/0x8*(parseInt(_0x4ec796(0x1ce))/0x9)+parseInt(_0x4ec796(0x1c7))/0xa;if(_0x54e21d===_0x140839)break;else _0x35fce9['push'](_0x35fce9['shift']());}catch(_0x46b533){_0x35fce9['push'](_0x35fce9['shift']());}}}(a122_0x1e0e,0x4692f));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';function a122_0x3011(_0x52a1f9,_0xc7627a){_0x52a1f9=_0x52a1f9-0x19f;const _0x1e0edd=a122_0x1e0e();let _0x3011ef=_0x1e0edd[_0x52a1f9];return _0x3011ef;}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';import{buildSqlRelativePath}from'../../core/sql-sync/utils.js';import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x37cd4){const _0x4c6594=a122_0x3011;if(_0x37cd4===_0x4c6594(0x1c4))return['<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','\x20\x20SELECT\x201\x20AS\x20id',_0x4c6594(0x1ac),''][_0x4c6594(0x1a8)]('\x0a');return[_0x4c6594(0x1a5),''][_0x4c6594(0x1a8)]('\x0a');}export const sqlCreate={'service':a122_0x537ad4(0x1cc),'command':'create','description':a122_0x537ad4(0x1a3),'risk':a122_0x537ad4(0x1a2),'flags':[{'name':a122_0x537ad4(0x1d2),'type':a122_0x537ad4(0x1c1),'description':a122_0x537ad4(0x1c2)},{'name':a122_0x537ad4(0x1d3),'type':a122_0x537ad4(0x1b6),'description':'Target\x20database\x20ID'},{'name':a122_0x537ad4(0x1de),'type':a122_0x537ad4(0x1c1),'enum':[a122_0x537ad4(0x1cc),a122_0x537ad4(0x1c4)],'description':'Local\x20SQL\x20file\x20mode'}],async 'validate'(_0x16ed8c){const _0x321ad4=a122_0x537ad4;if(!_0x16ed8c[_0x321ad4(0x1ae)])return;if(!_0x16ed8c[_0x321ad4(0x1be)]('name')[_0x321ad4(0x1c0)]())throw CliErrors[_0x321ad4(0x1b4)]('name',_0x321ad4(0x1b7));const _0x274f0a=resolveProvidedDbId(_0x16ed8c);if(typeof _0x274f0a!==_0x321ad4(0x1b6)||!Number[_0x321ad4(0x1d6)](_0x274f0a)||_0x274f0a<=0x0)throw CliErrors['flagMissing'](_0x321ad4(0x1d3),'--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');if(!_0x16ed8c[_0x321ad4(0x1be)](_0x321ad4(0x1de))[_0x321ad4(0x1c0)]())throw CliErrors[_0x321ad4(0x1b4)]('mode',_0x321ad4(0x1d7));},async 'dryRun'(_0x3b2dd0){const _0x243383=a122_0x537ad4,_0x12520e=loadSqlProjectConfig(_0x3b2dd0['appCode']),{sqlName:_0x3bff0b,dbId:_0x5b8e8f,dbName:_0x29b17d,mode:_0x337201}=await resolveSqlNewInputs(_0x3b2dd0),_0x44b4e6=buildSqlRelativePath(_0x243383(0x1c3),_0x3bff0b,_0x29b17d,_0x337201,_0x5b8e8f),_0x5171d4=_0x12520e[_0x243383(0x1b0)]+'/'+_0x44b4e6;return{'method':_0x243383(0x1b8),'url':_0x243383(0x1a7),'body':{'appCode':_0x3b2dd0['appCode'],'sqlName':_0x3bff0b,'dbId':_0x5b8e8f,'mode':_0x337201,'localPath':_0x5171d4},'description':'Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20'+_0x12520e[_0x243383(0x1b0)]};},async 'execute'(_0x21c242){const _0x5914eb=a122_0x537ad4,_0x495ecd=loadSqlProjectConfig(_0x21c242[_0x5914eb(0x1a4)]),{sqlName:_0x177cc6,dbId:_0x1794d3,dbName:_0x2fe4ff,mode:_0xa85f6}=await resolveSqlNewInputs(_0x21c242),_0x2a3089=generateSqlTemplate(_0xa85f6),_0x371ee0=await createSqlQuery({'appCode':_0x21c242['appCode'],'sqlName':_0x177cc6,'dbId':_0x1794d3,'sqlContent':_0x2a3089}),_0x5c1cf1=ensureRemoteSqlContent(_0x371ee0),_0x39238f=_0x2fe4ff||await getDbName(_0x21c242['appCode'],_0x1794d3)[_0x5914eb(0x1c6)](()=>undefined),_0x33ee03=buildSqlRelativePath(_0x371ee0[_0x5914eb(0x1d5)],_0x371ee0[_0x5914eb(0x1d8)],_0x39238f,_0xa85f6,_0x1794d3),_0x411f1f=_0x495ecd[_0x5914eb(0x1b0)]+'/'+_0x33ee03,_0x86360c=buildLocalSqlFileContent({'sqlCode':_0x371ee0['sqlCode'],'sqlName':_0x371ee0['sqlName'],'dbId':_0x371ee0[_0x5914eb(0x1bc)]},_0x5c1cf1,{'dbName':_0x39238f,'mode':_0xa85f6,'syncedAt':new Date()['toISOString'](),'description':_0x371ee0[_0x5914eb(0x1b2)]});if(await fileExists(_0x411f1f))throw CliErrors[_0x5914eb(0x19f)](_0x5914eb(0x1ad)+_0x411f1f);await ensureParentDirectory(_0x411f1f),await writeFile(_0x411f1f,_0x86360c,_0x5914eb(0x1b9));const _0x3058c2=await readSqlLockFile(_0x495ecd['lockFilePath']),{lockData:_0x3954b3,appLock:_0x11e43e}=ensureSqlLockScope(_0x3058c2??createEmptySqlLock(),_0x495ecd[_0x5914eb(0x1a4)],_0x495ecd['sqlRoot'],_0x5914eb(0x1ca));return _0x11e43e[_0x5914eb(0x1dd)][_0x371ee0[_0x5914eb(0x1d5)]]={...buildSqlLockEntry(_0x371ee0,_0x5c1cf1,computeSqlContentHash(_0x86360c),{'dbName':_0x39238f}),'path':_0x33ee03,'mode':_0xa85f6},_0x11e43e['lastSync']=new Date()[_0x5914eb(0x1cb)](),await writeSqlLockFile(_0x495ecd['lockFilePath'],_0x3954b3),{'ok':!![],'data':{'id':_0x371ee0['id'],'sqlCode':_0x371ee0['sqlCode'],'sqlName':_0x371ee0['sqlName'],'dbId':_0x371ee0[_0x5914eb(0x1bc)],'path':_0x411f1f,'mode':_0xa85f6},'message':_0x5914eb(0x1bf)+_0x371ee0[_0x5914eb(0x1d5)]};}};async function resolveSqlNewInputs(_0x2e0c7b){const _0x3e8f28=await resolveSqlNameInput(_0x2e0c7b),{dbId:_0x31bec9,dbName:_0x28c7e9}=await resolveDbSelection(_0x2e0c7b),_0x44eb05=await resolveSqlModeInput(_0x2e0c7b);return{'sqlName':_0x3e8f28,'dbId':_0x31bec9,'dbName':_0x28c7e9,'mode':_0x44eb05};}async function resolveSqlNameInput(_0x7399d0){const _0x454ed9=a122_0x537ad4,_0x123e3a=_0x7399d0['str'](_0x454ed9(0x1d2))[_0x454ed9(0x1c0)]();if(_0x123e3a)return _0x123e3a;if(_0x7399d0[_0x454ed9(0x1ae)])throw CliErrors[_0x454ed9(0x1b4)](_0x454ed9(0x1d2),'--name\x20is\x20required\x20in\x20non-interactive\x20mode.');return(await input({'message':_0x454ed9(0x1a9),'validate':_0x2b8af1=>_0x2b8af1[_0x454ed9(0x1c0)]()?!![]:_0x454ed9(0x1d0)}))[_0x454ed9(0x1c0)]();}async function resolveDbSelection(_0x3c97e1){const _0x3e4e82=a122_0x537ad4,_0x92f727=resolveProvidedDbId(_0x3c97e1);if(typeof _0x92f727===_0x3e4e82(0x1b6)&&Number[_0x3e4e82(0x1d6)](_0x92f727)&&_0x92f727>0x0)return{'dbId':_0x92f727,'dbName':await getDbName(_0x3c97e1[_0x3e4e82(0x1a4)],_0x92f727)[_0x3e4e82(0x1c6)](()=>undefined)};if(_0x3c97e1[_0x3e4e82(0x1ae)])throw CliErrors[_0x3e4e82(0x1b4)]('db-id',_0x3e4e82(0x1d9));const _0x55ab1d=await listDatabases(_0x3c97e1['appCode'])[_0x3e4e82(0x1c6)](()=>[]);if(_0x55ab1d[_0x3e4e82(0x1cf)]===0x1)return{'dbId':_0x55ab1d[0x0][_0x3e4e82(0x1bc)],'dbName':_0x55ab1d[0x0][_0x3e4e82(0x1a1)]};if(_0x55ab1d[_0x3e4e82(0x1cf)]>0x1){const _0x357ea5=await select({'message':_0x3e4e82(0x1af),'choices':[..._0x55ab1d[_0x3e4e82(0x1da)](_0x523388=>({'name':_0x523388[_0x3e4e82(0x1a1)]+'\x20('+_0x523388[_0x3e4e82(0x1bc)]+')','value':serializeDbSelection(_0x523388)})),{'name':_0x3e4e82(0x1db),'value':_0x3e4e82(0x1bd)}]});if(_0x357ea5!==_0x3e4e82(0x1bd))return deserializeDbSelection(_0x357ea5);}const _0x39bdfa=await input({'message':'请输入目标数据库\x20dbId:','validate':_0xb12cbe=>{const _0x24403a=_0x3e4e82,_0x3df13a=_0xb12cbe[_0x24403a(0x1c0)]();if(!_0x3df13a)return _0x24403a(0x1cd);const _0x4d992e=Number(_0x3df13a);if(!Number[_0x24403a(0x1dc)](_0x4d992e)||_0x4d992e<=0x0)return _0x24403a(0x1bb);return!![];}});return{'dbId':Number(_0x39bdfa[_0x3e4e82(0x1c0)]())};}async function resolveSqlModeInput(_0x41d70b){const _0x571ae1=a122_0x537ad4,_0x319506=_0x41d70b[_0x571ae1(0x1be)](_0x571ae1(0x1de))[_0x571ae1(0x1c0)]();if(_0x319506===_0x571ae1(0x1cc)||_0x319506==='mybatisXml')return _0x319506;if(_0x41d70b[_0x571ae1(0x1ae)])throw CliErrors[_0x571ae1(0x1b4)](_0x571ae1(0x1de),_0x571ae1(0x1d7));return await select({'message':_0x571ae1(0x1b3),'choices':[{'name':'普通\x20SQL(sql)','value':_0x571ae1(0x1cc),'description':_0x571ae1(0x1c9)},{'name':'MyBatis\x20XML(mybatisXml)','value':_0x571ae1(0x1c4),'description':_0x571ae1(0x1c8)}]});}function serializeDbSelection(_0x163eb9){return JSON['stringify']({'dbId':_0x163eb9['dbId'],'dbName':_0x163eb9['dbName']});}function deserializeDbSelection(_0xe8f327){const _0x5d8c27=a122_0x537ad4;try{const _0x3d5c82=JSON['parse'](_0xe8f327);if(typeof _0x3d5c82[_0x5d8c27(0x1bc)]===_0x5d8c27(0x1b6)&&Number[_0x5d8c27(0x1d6)](_0x3d5c82[_0x5d8c27(0x1bc)]))return{'dbId':_0x3d5c82[_0x5d8c27(0x1bc)],'dbName':_0x3d5c82[_0x5d8c27(0x1a1)]};}catch{}throw CliErrors[_0x5d8c27(0x19f)](_0x5d8c27(0x1d1)+_0xe8f327);}function resolveProvidedDbId(_0x4001eb){const _0x3875b2=a122_0x537ad4,_0x34e277=_0x4001eb[_0x3875b2(0x1b1)](_0x3875b2(0x1d3));if(typeof _0x34e277===_0x3875b2(0x1b6)&&Number[_0x3875b2(0x1d6)](_0x34e277))return _0x34e277;return undefined;}function a122_0x1e0e(){const _0x3b65d4=['sqlCode','isFinite','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','sqlName','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','map','✎\x20手动输入\x20dbId','isInteger','sqls','mode','validation','7utUYeq','dbName','high-risk-write','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','appCode','SELECT\x201\x20AS\x20id;','3032uLVWAN','/smartapi/custom/saveUserCustomSql','join','请输入\x20SQL\x20名称:','123256oEhivo','4awytxd','</select>','File\x20already\x20exists:\x20','nonInteractive','请选择目标数据库:','sqlRootDir','flag','description','请选择本地\x20SQL\x20模式:','flagMissing','408527aXXGhN','number','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','POST','utf8','693855MnqVaM','dbId\x20必须为正整数','dbId','__manual__','str','Created\x20SQL\x20query\x20','trim','string','SQL\x20query\x20display\x20name','<server-generated-sqlCode>','mybatisXml','54519IZmexF','catch','6325580suOUNW','适合带动态标签的\x20MyBatis\x20XML\x20SQL','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','new','toISOString','sql','dbId\x20不能为空','4707WPDLRv','length','SQL\x20名称不能为空','Invalid\x20database\x20selection\x20payload:\x20','name','db-id','1152882JQtsUv'];a122_0x1e0e=function(){return _0x3b65d4;};return a122_0x1e0e();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a123_0x565c43=a123_0x1f91;function a123_0x1f91(_0x5ab5e3,_0x53ab9e){_0x5ab5e3=_0x5ab5e3-0x11c;const _0x539be9=a123_0x539b();let _0x1f913d=_0x539be9[_0x5ab5e3];return _0x1f913d;}(function(_0x5ac232,_0x1a2216){const _0x4d3f83=a123_0x1f91,_0x505cdf=_0x5ac232();while(!![]){try{const _0x227f0b=parseInt(_0x4d3f83(0x12e))/0x1+-parseInt(_0x4d3f83(0x11f))/0x2+-parseInt(_0x4d3f83(0x122))/0x3+-parseInt(_0x4d3f83(0x125))/0x4*(parseInt(_0x4d3f83(0x12d))/0x5)+-parseInt(_0x4d3f83(0x142))/0x6*(parseInt(_0x4d3f83(0x132))/0x7)+parseInt(_0x4d3f83(0x138))/0x8*(parseInt(_0x4d3f83(0x140))/0x9)+-parseInt(_0x4d3f83(0x136))/0xa*(-parseInt(_0x4d3f83(0x139))/0xb);if(_0x227f0b===_0x1a2216)break;else _0x505cdf['push'](_0x505cdf['shift']());}catch(_0x2bc1ce){_0x505cdf['push'](_0x505cdf['shift']());}}}(a123_0x539b,0x81739));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';function a123_0x539b(){const _0x4f1400=['lockFilePath','963cSbHzw','Would\x20delete\x20SQL\x20','6aANKyZ','Deleted\x20','sqlRoot','filter','sqlcode','1061710EVRVJp','toISOString','\x20(local\x20file\x20moved\x20to\x20trash)','1430511KrAAGF','delete','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','20OVzEwf','sql','length','str','sqlRootDir','projectRoot','fromEntries','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','166865PcvXNI','95320cSpuvV','remoteId','high-risk-write','sqls','2823709AxLTsl','trashDir','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20','POST','8589290yYPqbH','replace','22056bVicly','22DAEAmF','entries','appCode','lastSync','validation','trashedTo'];a123_0x539b=function(){return _0x4f1400;};return a123_0x539b();}import{dirname,join,relative,resolve,sep}from'node:path';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_0x565c43(0x126),'command':a123_0x565c43(0x123),'description':'Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','risk':a123_0x565c43(0x130),'flags':[SQLCODE_FLAG],async 'validate'(_0xf74fc){const _0x431506=a123_0x565c43,_0x24cfc8=loadSqlProjectConfig(_0xf74fc[_0x431506(0x13b)]),_0x46e546=await readSqlLockFile(_0x24cfc8['lockFilePath']);if(!_0x46e546)throw CliErrors[_0x431506(0x13d)](_0x431506(0x12c));},async 'dryRun'(_0x879eb){const _0x33d4b5=a123_0x565c43,_0x2671a2=loadSqlProjectConfig(_0x879eb['appCode']),_0x1b57ed=await readSqlLockFile(_0x2671a2['lockFilePath']);if(!_0x1b57ed)throw CliErrors['validation'](_0x33d4b5(0x12c));const {appLock:_0x5ce591}=ensureSqlLockScope(_0x1b57ed,_0x879eb['appCode'],_0x2671a2[_0x33d4b5(0x11c)],_0x33d4b5(0x123)),_0x4f297b=_0x879eb[_0x33d4b5(0x128)](_0x33d4b5(0x11e)),_0x5b04d6=_0x5ce591['sqls'][_0x4f297b];if(!_0x5b04d6)throw CliErrors[_0x33d4b5(0x13d)](_0x33d4b5(0x124)+_0x4f297b+'\x22.');return{'method':_0x33d4b5(0x135),'url':'/smartapi/custom/deleteUserCustomSql','body':{'sqlCode':_0x4f297b,'id':_0x5b04d6[_0x33d4b5(0x12f)],'localPath':resolveLocalSqlFilePath(_0x2671a2,_0x4f297b,_0x5b04d6)},'description':_0x33d4b5(0x141)+_0x4f297b+_0x33d4b5(0x134)+_0x2671a2[_0x33d4b5(0x133)]};},async 'execute'(_0x4956b5){const _0x52bded=a123_0x565c43,_0xdbe309=loadSqlProjectConfig(_0x4956b5[_0x52bded(0x13b)]),_0x284b83=await readSqlLockFile(_0xdbe309[_0x52bded(0x13f)]);if(!_0x284b83)throw CliErrors[_0x52bded(0x13d)]('SQL\x20lock\x20file\x20not\x20found.');const {lockData:_0x44a4cd,appLock:_0xe9d52a}=ensureSqlLockScope(_0x284b83,_0x4956b5[_0x52bded(0x13b)],_0xdbe309[_0x52bded(0x11c)],_0x52bded(0x123)),_0x52f02f=_0x4956b5[_0x52bded(0x128)]('sqlcode'),_0xdb92fd=_0xe9d52a[_0x52bded(0x131)][_0x52f02f];if(!_0xdb92fd)throw CliErrors[_0x52bded(0x13d)](_0x52bded(0x124)+_0x52f02f+'\x22.');await deleteSqlQuery({'id':_0xdb92fd[_0x52bded(0x12f)],'sqlCode':_0x52f02f}),_0xe9d52a['sqls']=Object[_0x52bded(0x12b)](Object[_0x52bded(0x13a)](_0xe9d52a['sqls'])[_0x52bded(0x11d)](([_0x1a3153])=>_0x1a3153!==_0x52f02f)),_0xe9d52a[_0x52bded(0x13c)]=new Date()[_0x52bded(0x120)](),await writeSqlLockFile(_0xdbe309[_0x52bded(0x13f)],_0x44a4cd);const _0xedad5b=resolveLocalSqlFilePath(_0xdbe309,_0x52f02f,_0xdb92fd);let _0x320551;await fileExists(_0xedad5b)&&(_0x320551=await moveToTrash(_0xdbe309[_0x52bded(0x12a)],_0xdbe309[_0x52bded(0x133)],_0xedad5b),await cleanupEmptyDirectories(dirname(_0xedad5b),_0xdbe309[_0x52bded(0x129)]));const _0x3c9baf={'deleted':_0x52f02f,'remoteId':_0xdb92fd[_0x52bded(0x12f)]};if(_0x320551)_0x3c9baf[_0x52bded(0x13e)]=_0x320551;return{'ok':!![],'data':_0x3c9baf,'message':_0x52bded(0x143)+_0x52f02f+(_0x320551?_0x52bded(0x121):'')};}};async function moveToTrash(_0x133270,_0x455e32,_0x36aa3c){const _0x252726=a123_0x565c43,_0x571dd2=new Date()[_0x252726(0x120)]()[_0x252726(0x137)](/[:.]/g,'-'),_0x917ffd=relative(_0x133270,_0x36aa3c),_0x9915c9=join(_0x455e32,_0x571dd2,_0x917ffd);return await mkdir(dirname(_0x9915c9),{'recursive':!![]}),await rename(_0x36aa3c,_0x9915c9),_0x9915c9;}async function cleanupEmptyDirectories(_0x5d90f7,_0x48c189){const _0xb10359=a123_0x565c43;let _0x31e5da=resolve(_0x5d90f7);const _0x31b83d=resolve(_0x48c189);while(_0x31e5da['startsWith'](''+_0x31b83d+sep)||_0x31e5da===_0x31b83d){if(_0x31e5da===_0x31b83d)return;try{const _0x3df5bb=await readdir(_0x31e5da);if(_0x3df5bb[_0xb10359(0x127)]>0x0)return;await rmdir(_0x31e5da);}catch{return;}_0x31e5da=dirname(_0x31e5da);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a124_0x1802(_0x41dc28,_0x4cebc4){_0x41dc28=_0x41dc28-0x132;const _0x2fb029=a124_0x2fb0();let _0x18024f=_0x2fb029[_0x41dc28];return _0x18024f;}const a124_0x29f40b=a124_0x1802;(function(_0x28fc3c,_0x524eaf){const _0x5bf986=a124_0x1802,_0x203311=_0x28fc3c();while(!![]){try{const _0x29145c=parseInt(_0x5bf986(0x13d))/0x1*(parseInt(_0x5bf986(0x13c))/0x2)+-parseInt(_0x5bf986(0x139))/0x3+parseInt(_0x5bf986(0x13a))/0x4*(-parseInt(_0x5bf986(0x143))/0x5)+parseInt(_0x5bf986(0x13e))/0x6*(parseInt(_0x5bf986(0x13b))/0x7)+parseInt(_0x5bf986(0x135))/0x8+parseInt(_0x5bf986(0x138))/0x9*(-parseInt(_0x5bf986(0x149))/0xa)+parseInt(_0x5bf986(0x132))/0xb*(-parseInt(_0x5bf986(0x142))/0xc);if(_0x29145c===_0x524eaf)break;else _0x203311['push'](_0x203311['shift']());}catch(_0x3b2f9e){_0x203311['push'](_0x203311['shift']());}}}(a124_0x2fb0,0x25999));import{getSqlQueryInfo}from'../../core/api-client.js';function a124_0x2fb0(){const _0x43a28b=['verbose','202380AlviHa','5rPVtyF','sqlcode','sql','Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','boolean','sqlName','20vlPeOg','33jxPfPO','dbId','sqlCode','1724888qZbYMk','description','Return\x20full\x20raw\x20SQL\x20query\x20object','274824fJSsIQ','3366dSzUmY','670444Mpqlto','6405xxrdPy','2RBYKGd','161153oyLjYA','378wFTgiT','appCode','detail'];a124_0x2fb0=function(){return _0x43a28b;};return a124_0x2fb0();}import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDetail={'service':a124_0x29f40b(0x145),'command':a124_0x29f40b(0x140),'description':a124_0x29f40b(0x146),'risk':'read','flags':[SQLCODE_FLAG,{'name':a124_0x29f40b(0x141),'type':a124_0x29f40b(0x147),'description':a124_0x29f40b(0x137)}],async 'execute'(_0x3a3d80){const _0x5c351b=a124_0x29f40b,_0x3adc6e=await getSqlQueryInfo(_0x3a3d80[_0x5c351b(0x13f)],_0x3a3d80['str'](_0x5c351b(0x144))),_0x486875=_0x3a3d80['bool']('verbose');if(_0x486875)return{'ok':!![],'data':_0x3adc6e};const _0x3e9da8=_0x3adc6e[_0x5c351b(0x133)]?await getDbName(_0x3a3d80[_0x5c351b(0x13f)],_0x3adc6e[_0x5c351b(0x133)]):undefined;return{'ok':!![],'data':{'sqlCode':_0x3adc6e[_0x5c351b(0x134)],'sqlName':_0x3adc6e[_0x5c351b(0x148)],'db':_0x3e9da8?_0x3e9da8+'\x20('+_0x3adc6e['dbId']+')':_0x3adc6e[_0x5c351b(0x133)]??'','description':_0x3adc6e[_0x5c351b(0x136)]??'','sqlContent':_0x3adc6e['sqlContent']??''}};}};
|
package/lib/commands/sql/exec.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a125_0x3bb9e4=a125_0x264c;function a125_0x264c(_0x3f21ee,_0x387875){_0x3f21ee=_0x3f21ee-0x86;const _0x422ee7=a125_0x422e();let _0x264cfa=_0x422ee7[_0x3f21ee];return _0x264cfa;}(function(_0x5b2ba7,_0x174856){const _0x1a1fb5=a125_0x264c,_0x45c9dc=_0x5b2ba7();while(!![]){try{const _0x4547f9=parseInt(_0x1a1fb5(0x94))/0x1*(-parseInt(_0x1a1fb5(0x8c))/0x2)+parseInt(_0x1a1fb5(0x87))/0x3*(parseInt(_0x1a1fb5(0x99))/0x4)+parseInt(_0x1a1fb5(0x90))/0x5+-parseInt(_0x1a1fb5(0x9c))/0x6+-parseInt(_0x1a1fb5(0x86))/0x7*(-parseInt(_0x1a1fb5(0x93))/0x8)+-parseInt(_0x1a1fb5(0x8b))/0x9+parseInt(_0x1a1fb5(0x92))/0xa*(parseInt(_0x1a1fb5(0x9b))/0xb);if(_0x4547f9===_0x174856)break;else _0x45c9dc['push'](_0x45c9dc['shift']());}catch(_0x45a995){_0x45c9dc['push'](_0x45c9dc['shift']());}}}(a125_0x422e,0x20d24));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_0x3bb9e4(0x8d),'command':a125_0x3bb9e4(0x96),'description':a125_0x3bb9e4(0x9a),'risk':'read','flags':[SQLCODE_FLAG,{'name':'params','type':'string','description':a125_0x3bb9e4(0x98)}],async 'execute'(_0x306f51){const _0x4ef9b5=a125_0x3bb9e4,_0x3229d4=parseJsonParams(_0x306f51['str'](_0x4ef9b5(0x9e))),_0x102071=Date[_0x4ef9b5(0x91)](),_0x5045eb=await executeSql(_0x306f51['appCode'],_0x306f51[_0x4ef9b5(0x8f)](_0x4ef9b5(0x88)),_0x3229d4),_0x326228=Date[_0x4ef9b5(0x91)]()-_0x102071,_0x330d08=_0x5045eb?.['execResult']??_0x5045eb,_0x4012da=_0x5045eb?.[_0x4ef9b5(0x8e)]??!![];if(!_0x4012da)return{'ok':![],'data':{'error':_0x5045eb?.[_0x4ef9b5(0x97)]||'SQL\x20execution\x20failed','elapsed':_0x326228},'message':_0x4ef9b5(0x95)};const _0x1f783b=Array[_0x4ef9b5(0x8a)](_0x330d08)?_0x330d08:[];return{'ok':!![],'data':{'rows':_0x1f783b,'rowCount':_0x1f783b[_0x4ef9b5(0x89)],'elapsed':_0x326228},'message':_0x4ef9b5(0x9d)+_0x1f783b[_0x4ef9b5(0x89)]+'\x20row(s)\x20in\x20'+_0x326228+'ms'};}};function a125_0x422e(){const _0x51a40d=['execError','SQL\x20parameters\x20as\x20JSON\x20string\x20(e.g.\x20\x27{\x22key\x22:\x22value\x22}\x27)','12HbWmzA','Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode','599995UjMswN','377058QicncW','Returned\x20','params','35BoEMbG','101202bawvwS','sqlcode','length','isArray','1724625hXbOFZ','10kQWJfC','sql','execSuccess','str','818735AjNuNT','now','20UQQwZk','282544SUdlih','32345bsznhz','SQL\x20execution\x20failed','exec'];a125_0x422e=function(){return _0x51a40d;};return a125_0x422e();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x5f5c3d,_0xd85fb6){const _0x2f713b=a126_0x2ed3,_0xba498c=_0x5f5c3d();while(!![]){try{const _0x264bc8=-parseInt(_0x2f713b(0xb7))/0x1+parseInt(_0x2f713b(0xbb))/0x2*(-parseInt(_0x2f713b(0xb5))/0x3)+parseInt(_0x2f713b(0xbf))/0x4*(parseInt(_0x2f713b(0xbc))/0x5)+parseInt(_0x2f713b(0xbd))/0x6+parseInt(_0x2f713b(0xb6))/0x7*(parseInt(_0x2f713b(0xbe))/0x8)+parseInt(_0x2f713b(0xb8))/0x9*(parseInt(_0x2f713b(0xb9))/0xa)+-parseInt(_0x2f713b(0xba))/0xb;if(_0x264bc8===_0xd85fb6)break;else _0xba498c['push'](_0xba498c['shift']());}catch(_0x1af4eb){_0xba498c['push'](_0xba498c['shift']());}}}(a126_0x1abd,0x5c3ac));import{sqlList}from'../../commands/sql/list.js';import{sqlDetail}from'../../commands/sql/detail.js';function a126_0x2ed3(_0x2f4f38,_0x3f0e75){_0x2f4f38=_0x2f4f38-0xb5;const _0x1abdcf=a126_0x1abd();let _0x2ed3be=_0x1abdcf[_0x2f4f38];return _0x2ed3be;}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';function a126_0x1abd(){const _0x4a6695=['120STiekZ','82660ZQgxPN','390009wRrfbe','288197atcGJU','649393tDEFFh','9SypeeF','5188310xblhdK','6605555wFgCbP','4ARkuWE','5tgCLzk','4383690JPDuME'];a126_0x1abd=function(){return _0x4a6695;};return a126_0x1abd();}import{sqlDelete}from'../../commands/sql/delete.js';export const sqlDefinitions=[sqlList,sqlDetail,sqlStatus,sqlCreate,sqlPush,sqlValidate,sqlSave,sqlExec,sqlPull,sqlDelete];
|
package/lib/commands/sql/list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a127_0x374dc2=a127_0x1b36;function a127_0x3d6b(){const _0x275845=['dbId','string','tableData','all','56BTWLYC','\x20SQL\x20queries\x20(total:\x20','name','pagesize','No\x20custom\x20SQL\x20queries\x20found.','678424rciTxv','description','41198SDJkok','346908FykPhj','boolean','sqlcode','31nZawwc','4977464CtnFFu','Return\x20full\x20SQL\x20query\x20objects\x20including\x20parameters\x20and\x20SQL\x20content','3686220xwJEyG','verbose','read','paging','1198176MqtpDZ','page','list','sqlName','sqlCode','sql','List\x20custom\x20SQL\x20queries','appCode','str','976495pvGXOF','9THMRBJ','length','bool','number','map','Page\x20number'];a127_0x3d6b=function(){return _0x275845;};return a127_0x3d6b();}(function(_0x541386,_0x1cc094){const _0x2f71f5=a127_0x1b36,_0x18f339=_0x541386();while(!![]){try{const _0x5a5487=-parseInt(_0x2f71f5(0x1cd))/0x1*(parseInt(_0x2f71f5(0x1c9))/0x2)+parseInt(_0x2f71f5(0x1d4))/0x3+parseInt(_0x2f71f5(0x1c7))/0x4+parseInt(_0x2f71f5(0x1dd))/0x5+-parseInt(_0x2f71f5(0x1ca))/0x6*(-parseInt(_0x2f71f5(0x1e8))/0x7)+-parseInt(_0x2f71f5(0x1ce))/0x8*(parseInt(_0x2f71f5(0x1de))/0x9)+parseInt(_0x2f71f5(0x1d0))/0xa;if(_0x5a5487===_0x1cc094)break;else _0x18f339['push'](_0x18f339['shift']());}catch(_0x2f8687){_0x18f339['push'](_0x18f339['shift']());}}}(a127_0x3d6b,0x51b77));function a127_0x1b36(_0x501511,_0x57d386){_0x501511=_0x501511-0x1c5;const _0x3d6b9b=a127_0x3d6b();let _0x1b36a0=_0x3d6b9b[_0x501511];return _0x1b36a0;}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':a127_0x374dc2(0x1d9),'command':a127_0x374dc2(0x1d6),'description':a127_0x374dc2(0x1da),'risk':a127_0x374dc2(0x1d2),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':'name','type':a127_0x374dc2(0x1e5),'description':'Filter\x20by\x20SQL\x20name'},{'name':a127_0x374dc2(0x1d5),'type':a127_0x374dc2(0x1e1),'description':a127_0x374dc2(0x1e3),'default':0x1},{'name':a127_0x374dc2(0x1c5),'type':a127_0x374dc2(0x1e1),'description':'Page\x20size'},{'name':a127_0x374dc2(0x1d1),'type':a127_0x374dc2(0x1cb),'description':a127_0x374dc2(0x1cf)}],async 'execute'(_0x586ab8){const _0x227d7d=a127_0x374dc2,_0x1bb2b3=await listSqlQueries(_0x586ab8[_0x227d7d(0x1db)],{'sqlCode':_0x586ab8[_0x227d7d(0x1dc)](_0x227d7d(0x1cc))||undefined,'sqlName':_0x586ab8[_0x227d7d(0x1dc)](_0x227d7d(0x1ea))||undefined,'currentPage':_0x586ab8['num']('page'),'pageSize':_0x586ab8['num'](_0x227d7d(0x1c5),0x32)}),_0x476703=_0x586ab8[_0x227d7d(0x1e0)](_0x227d7d(0x1d1)),_0x239fb1=_0x1bb2b3[_0x227d7d(0x1e6)]??[],_0x743927=_0x1bb2b3[_0x227d7d(0x1d3)]?.['totalCount']??_0x239fb1[_0x227d7d(0x1df)];let _0x40a5bc;return _0x476703?_0x40a5bc=_0x239fb1:_0x40a5bc=await Promise[_0x227d7d(0x1e7)](_0x239fb1[_0x227d7d(0x1e2)](async _0x4574e3=>{const _0x4e9c20=_0x227d7d;let _0x55b926;try{_0x55b926=_0x4574e3[_0x4e9c20(0x1e4)]?await getDbName(_0x586ab8[_0x4e9c20(0x1db)],_0x4574e3[_0x4e9c20(0x1e4)]):undefined;}catch{}return{'sqlCode':_0x4574e3[_0x4e9c20(0x1d8)],'sqlName':_0x4574e3[_0x4e9c20(0x1d7)],'description':_0x4574e3[_0x4e9c20(0x1c8)]??'','db':_0x55b926?_0x55b926+'\x20('+_0x4574e3[_0x4e9c20(0x1e4)]+')':_0x4574e3[_0x4e9c20(0x1e4)]??''};})),{'ok':!![],'data':_0x40a5bc,'message':_0x239fb1[_0x227d7d(0x1df)]===0x0?_0x227d7d(0x1c6):'Found\x20'+_0x239fb1['length']+_0x227d7d(0x1e9)+_0x743927+').'};}};
|