@lovrabet/rabetbase-cli 2.1.9 → 2.1.10-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/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -0
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/link-create.js +1 -1
- package/lib/commands/dataset/link-delete.js +1 -1
- package/lib/commands/dataset/link-shared.js +1 -1
- package/lib/commands/dataset/link-update.js +1 -1
- package/lib/commands/dataset/links.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.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/report.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/index.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/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/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 +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x12cd6f,_0x2275f3){const _0x2b433a=a109_0x35fe,_0xd4cc6d=_0x12cd6f();while(!![]){try{const _0x51103d=parseInt(_0x2b433a(0x121))/0x1*(parseInt(_0x2b433a(0x111))/0x2)+parseInt(_0x2b433a(0x10d))/0x3*(parseInt(_0x2b433a(0x120))/0x4)+-parseInt(_0x2b433a(0x114))/0x5*(parseInt(_0x2b433a(0xfd))/0x6)+-parseInt(_0x2b433a(0xf2))/0x7*(-parseInt(_0x2b433a(0x112))/0x8)+-parseInt(_0x2b433a(0x106))/0x9*(-parseInt(_0x2b433a(0x103))/0xa)+-parseInt(_0x2b433a(0x10b))/0xb*(parseInt(_0x2b433a(0x117))/0xc)+-parseInt(_0x2b433a(0xf1))/0xd;if(_0x51103d===_0x2275f3)break;else _0xd4cc6d['push'](_0xd4cc6d['shift']());}catch(_0x4e43d4){_0xd4cc6d['push'](_0xd4cc6d['shift']());}}}(a109_0x26e7,0xa4df9));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a109_0xb78388 from'chalk';import{input,confirm}from'@inquirer/prompts';function a109_0x26e7(){const _0x2d4845=['\x20api\x20pull\x27','\x20\x20Apps:\x20','\x20project\x20init`\x20to\x20start\x20fresh.','Migration\x20cancelled.\x20Run\x20`','join','?\x20(Old\x20file\x20→\x20*.bak)','从旧配置文件升级成功','log','2501116WMwJjD','1031yzThdK','Invalid\x20App\x20Code','yellow','1.0.0','env','cwd','appcode','.bak','7643571JKNeua','7915733BIcOoh','App\x20Code\x20cannot\x20be\x20empty','setLogPath','info','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','trim','apps','keys','defaultApp','Please\x20enter\x20App\x20Code:','.rabetbase.json','162MVHJYf','\x20\x20appcode:\x20','utf8','app','version','parse','650kuOPfz','../..','green','7335NKdhvd','\x20→\x20.rabetbase.json','cyan','\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27','production','1111CWuloy','bold','6KhVycj','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','string','\x20\x20Default:\x20','564WpEZmk','8MhHpul','✓\x20Upgraded\x20','185285LSnWdT','gray','\x20api\x20generate\x27\x20and\x20\x27','54804RzszqE'];a109_0x26e7=function(){return _0x2d4845;};return a109_0x26e7();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';import{readRawConfig,getProjectConfigPath,writeConfigFile,NEW_CONFIG_NAME,LEGACY_CONFIG_NAMES}from'../../context.js';import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x3df137){const _0x4d722c=a109_0x35fe,{appcode:_0x4258f8,env:_0x4287c3,autoYes:_0x57f2d0}=_0x3df137,_0x23eaef=process[_0x4d722c(0x126)]();if(getProjectConfigPath())throw new Error(_0x4d722c(0xf6));let _0x352bee;for(const _0x24eba1 of LEGACY_CONFIG_NAMES){const _0x3c9e57=resolve(_0x23eaef,_0x24eba1);if(existsSync(_0x3c9e57)){_0x352bee=_0x3c9e57;break;}}if(_0x352bee){let _0x1133af={};try{_0x1133af=JSON[_0x4d722c(0x102)](readFileSync(_0x352bee,_0x4d722c(0xff)));}catch{}const _0x28e2b8=basename(_0x352bee),_0x1f5cf9=_0x1133af?.[_0x4d722c(0x127)]||_0x1133af?.[_0x4d722c(0x100)];let _0x1c58ae=_0x57f2d0;!_0x57f2d0&&(console['log'](a109_0xb78388[_0x4d722c(0x123)](_0x4d722c(0x10e)+a109_0xb78388[_0x4d722c(0x10c)](_0x28e2b8))),_0x1f5cf9&&console['log'](a109_0xb78388[_0x4d722c(0x108)](_0x4d722c(0xfe)+_0x1f5cf9)),_0x1c58ae=await confirm({'message':'Upgrade\x20it\x20to\x20'+a109_0xb78388[_0x4d722c(0x10c)](_0x4d722c(0xfc))+_0x4d722c(0x11d),'default':!![]}));if(!_0x1c58ae){console[_0x4d722c(0x11f)](_0x4d722c(0x11b)+CLI_BIN_NAME+_0x4d722c(0x11a));return;}const _0x26a2ba=resolve(_0x23eaef,NEW_CONFIG_NAME),_0x4df537=getCliVersionFromPkg(),_0x3c2dbe=readRawConfig(),_0x4e0383=_0x4258f8||(typeof _0x1133af?.[_0x4d722c(0x127)]===_0x4d722c(0x10f)?_0x1133af[_0x4d722c(0x127)]:undefined)||(typeof _0x1133af?.[_0x4d722c(0x100)]===_0x4d722c(0x10f)?_0x1133af['app']:undefined)||await askAppcode(),_0x27fae5=typeof _0x1133af?.['env']===_0x4d722c(0x10f)?_0x1133af[_0x4d722c(0x125)]:typeof _0x3c2dbe[_0x4d722c(0x125)]===_0x4d722c(0x10f)?_0x3c2dbe[_0x4d722c(0x125)]:_0x4d722c(0x10a),_0x312a13=buildCanonicalProjectConfig({..._0x3c2dbe,..._0x1133af},{'appCodes':[_0x4e0383],'env':_0x27fae5,'metadata':{'version':_0x4df537,'migratedAt':new Date()['toLocaleString'](),'migratedFrom':_0x352bee}});writeConfigFile(_0x26a2ba,_0x312a13);const _0x492acd=_0x352bee+_0x4d722c(0x128);renameSync(_0x352bee,_0x492acd),logger['setLogPath'](_0x23eaef),logger['info']('init',_0x4d722c(0x11e),{'from':_0x352bee,'to':_0x26a2ba,'appcode':_0x4e0383,'env':_0x312a13[_0x4d722c(0x125)]}),console[_0x4d722c(0x11f)](a109_0xb78388[_0x4d722c(0x105)](_0x4d722c(0x113)+_0x28e2b8+_0x4d722c(0x107))),console[_0x4d722c(0x11f)](a109_0xb78388['cyan'](_0x4d722c(0x119)+Object['keys'](_0x312a13['apps']||{})['join'](',\x20'))),console['log'](a109_0xb78388[_0x4d722c(0x108)](_0x4d722c(0x110)+_0x312a13['defaultApp'])),console[_0x4d722c(0x11f)](a109_0xb78388[_0x4d722c(0x115)]('\x20\x20Old\x20file\x20backed\x20up\x20as\x20'+_0x28e2b8+_0x4d722c(0x128)));return;}const _0x1aa1c2=_0x4258f8||await askAppcode(),_0x514c55=resolve(_0x23eaef,NEW_CONFIG_NAME),_0x2ca923=getCliVersionFromPkg(),_0x20af77=readRawConfig(),_0x20f7eb=typeof _0x20af77[_0x4d722c(0x125)]===_0x4d722c(0x10f)?_0x20af77[_0x4d722c(0x125)]:undefined,_0x5ae7ee=buildCanonicalProjectConfig({},{'appCodes':[_0x1aa1c2],'env':_0x4287c3||_0x20f7eb||_0x4d722c(0x10a),'metadata':{'version':_0x2ca923,'createdAt':new Date()['toLocaleString']()}});writeConfigFile(_0x514c55,_0x5ae7ee),logger[_0x4d722c(0xf4)](_0x23eaef),logger[_0x4d722c(0xf5)]('init','初始化项目配置文件成功',{'appcode':_0x1aa1c2,'env':_0x5ae7ee[_0x4d722c(0x125)],'version':_0x5ae7ee[_0x4d722c(0x101)],'configPath':_0x514c55}),console['log'](a109_0xb78388[_0x4d722c(0x105)]('✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory')),console[_0x4d722c(0x11f)](a109_0xb78388[_0x4d722c(0x108)]('\x20\x20Apps:\x20'+Object[_0x4d722c(0xf9)](_0x5ae7ee[_0x4d722c(0xf8)]||{})[_0x4d722c(0x11c)](',\x20'))),console[_0x4d722c(0x11f)](a109_0xb78388[_0x4d722c(0x108)](_0x4d722c(0x110)+_0x5ae7ee[_0x4d722c(0xfa)])),console[_0x4d722c(0x11f)](_0x4d722c(0x109)+CLI_BIN_NAME+_0x4d722c(0x116)+CLI_BIN_NAME+_0x4d722c(0x118));}function a109_0x35fe(_0x414b40,_0x3707af){_0x414b40=_0x414b40-0xf1;const _0x26e7e=a109_0x26e7();let _0x35fe01=_0x26e7e[_0x414b40];return _0x35fe01;}function askAppcode(){const _0x255b80=a109_0x35fe;return input({'message':_0x255b80(0xfb),'validate':_0x3ee386=>{const _0x21e46b=_0x255b80;if(!_0x3ee386['trim']())return _0x21e46b(0xf3);const {valid:_0x53769e,message:_0x2fbe29}=validateAppcode(_0x3ee386[_0x21e46b(0xf7)]());return _0x53769e||_0x2fbe29||_0x21e46b(0x122);}});}function getCliVersionFromPkg(){const _0x6800cd=a109_0x35fe;try{const _0x5e69f5=fileURLToPath(import.meta.url),_0x2336be=resolve(dirname(_0x5e69f5),_0x6800cd(0x104)),_0x5a9e90=JSON[_0x6800cd(0x102)](readFileSync(resolve(_0x2336be,'package.json'),_0x6800cd(0xff)));return _0x5a9e90[_0x6800cd(0x101)]||_0x6800cd(0x124);}catch{return _0x6800cd(0x124);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a109_0x4933b9=a109_0x1318;(function(_0x3ce0ec,_0x1152c1){const _0x4a9e74=a109_0x1318,_0x135d64=_0x3ce0ec();while(!![]){try{const _0x49d1d4=-parseInt(_0x4a9e74(0x191))/0x1+-parseInt(_0x4a9e74(0x1a3))/0x2+parseInt(_0x4a9e74(0x151))/0x3+parseInt(_0x4a9e74(0x174))/0x4+parseInt(_0x4a9e74(0x163))/0x5+-parseInt(_0x4a9e74(0x189))/0x6*(-parseInt(_0x4a9e74(0x132))/0x7)+parseInt(_0x4a9e74(0x178))/0x8*(-parseInt(_0x4a9e74(0x13d))/0x9);if(_0x49d1d4===_0x1152c1)break;else _0x135d64['push'](_0x135d64['shift']());}catch(_0x57f356){_0x135d64['push'](_0x135d64['shift']());}}}(a109_0x243b,0x3591f));function a109_0x243b(){const _0x448dfa=['some','111534vlfmMd','sdkUpgrade','oldArtifacts','removed\x20','info','red','.lovrabet','===\x20Upgrade\x20Analysis\x20===','utf8','lovrabet/rabetbase\x20installed\x20globally','cyan','\x20removed','Step\x205/7:\x20Removing\x20old\x20skill...','not\x20found\x20or\x20already\x20at\x20latest','Step\x206/7:\x20Installing\x20new\x20skill...','\x20\x20bun\x20install','white','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','undefined','280hWbwBH','oldMcpConfig','\x20\x20Fields\x20to\x20migrate:\x20','string','no\x20matching\x20entry\x20found','.cursor/mcp.json','\x20→\x20','no\x20legacy\x20config\x20found','Proceed\x20with\x20upgrade?','yellow','isArray','2280843hGFPUi','Legacy\x20artifacts:','not\x20found\x20(will\x20create)','dependencies','Upgrade\x20completed\x20successfully!','error','isDirectory','MCP\x20config:','object','Upgrade\x20cancelled.','Skill\x20swap:','devDependencies','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','FAIL','exit\x20','\x20\x20npm\x20install','log','Install\x20new\x20skill','CANCEL','needed','986322XnXJFW','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','green','cwd','Upgrade\x20@lovrabet/sdk','configMigration','parse','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','status','@lovrabet/dataset-mcp-server','fields','already\x20exists\x20(will\x20merge)','values','needsSkillSwap','push','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','Step\x204/7:\x20MCP\x20config\x20—\x20','length','1105680vdmcxK','Clean\x20MCP\x20config','oldPath','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','FOUND','[\x22@lovrabet/sdk\x22]:\x20','\x20→\x20keys:\x20','\x20→\x20latest','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','message','Config\x20file:','bold','join','detail','@lovrabet/sdk:','Step\x204/7:\x20Cleaning\x20MCP\x20config...','990368MsYWmG','gray','not\x20needed','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','24Ehjigw','includes','Remove\x20.lovrabet/','package.json','path','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','files','done','hasNewConfig','\x20\x20\x20\x20\x20\x20\x20','args','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','\x20\x20Step\x20','mcpServers','start','Step\x201/7:\x20Migrating\x20config...','none\x20found','48558szmDYs','.cursor/rules/lovrabet_rules.mdc','@lovrabet/sdk','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','\x20\x20Current\x20version\x20in\x20','lovrabet/rabetbase','stringify','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','85751KXnYgc','.claude/skills/lovrabet','keys','fail','filter','label','skipped','Remove\x20legacy\x20artifacts','succeed','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','Step\x201/7:\x20Config\x20migration\x20—\x20','failed','\x20\x20Action:\x20delete','Config\x20migration','\x20(backup:\x20','inherit','entries'];a109_0x243b=function(){return _0x448dfa;};return a109_0x243b();}import a109_0x2de4fe from'chalk';import a109_0x563880 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[a109_0x4933b9(0x195)](_0x2ba821=>_0x2ba821!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x47b705){const _0x134333=a109_0x4933b9,_0x125b5b=[];for(const _0x135c83 of Object[_0x134333(0x15d)](CORE_IDE_CONFIGS)){if(_0x135c83[_0x134333(0x17e)])for(const _0x165b4c of _0x135c83[_0x134333(0x17e)]){_0x125b5b['push'](resolve(_0x47b705,_0x165b4c[_0x134333(0x17c)]));}}return _0x125b5b;}function analyse(_0x4f8ea2){const _0x6d2307=a109_0x4933b9;let _0x8523fb=null;const _0x3846e8=resolve(_0x4f8ea2,NEW_CONFIG_NAME),_0x517546=existsSync(_0x3846e8);for(const _0x60d436 of LEGACY_CONFIG_NAMES){const _0x530d20=resolve(_0x4f8ea2,_0x60d436);if(existsSync(_0x530d20)){const _0x12809b=readConfigFile(_0x530d20),_0x549b4e=Object[_0x6d2307(0x193)](_0x12809b)['filter'](_0x108ebc=>typeof _0x12809b[_0x108ebc]!==_0x6d2307(0x131));_0x8523fb={'oldPath':_0x530d20,'hasNewConfig':_0x517546,'fields':_0x549b4e};break;}}const _0x599112=[],_0x22985f=resolve(_0x4f8ea2,_0x6d2307(0x1a9));if(existsSync(_0x22985f))_0x599112['push'](_0x22985f);const _0x2aba89=resolve(_0x4f8ea2,_0x6d2307(0x18a));if(existsSync(_0x2aba89))_0x599112[_0x6d2307(0x15f)](_0x2aba89);const _0x40b145=resolve(_0x4f8ea2,_0x6d2307(0x192));if(existsSync(_0x40b145))_0x599112[_0x6d2307(0x15f)](_0x40b145);for(const _0x1e0df1 of collectIdeSkillFiles(_0x4f8ea2)){if(existsSync(_0x1e0df1))_0x599112[_0x6d2307(0x15f)](_0x1e0df1);}let _0x12683c=null;const _0xd877f3=resolve(_0x4f8ea2,_0x6d2307(0x137));if(existsSync(_0xd877f3))try{const _0x491c65=JSON[_0x6d2307(0x157)](readFileSync(_0xd877f3,_0x6d2307(0x1ab)));if(_0x491c65?.['mcpServers']&&typeof _0x491c65[_0x6d2307(0x185)]===_0x6d2307(0x145)){const _0x125f83=[];for(const [_0x1adea2,_0x3c9ce6]of Object['entries'](_0x491c65[_0x6d2307(0x185)])){const _0x24710c=_0x3c9ce6;_0x24710c?.[_0x6d2307(0x182)]&&Array['isArray'](_0x24710c[_0x6d2307(0x182)])&&_0x24710c[_0x6d2307(0x182)]['some'](_0x5d983c=>typeof _0x5d983c==='string'&&_0x5d983c['includes'](_0x6d2307(0x15a)))&&_0x125f83[_0x6d2307(0x15f)](_0x1adea2);}_0x125f83[_0x6d2307(0x162)]>0x0&&(_0x12683c={'path':_0xd877f3,'keys':_0x125f83});}}catch{}const _0x42273a=_0x599112[_0x6d2307(0x162)]>0x0||_0x8523fb!==null;let _0x3dbc01=null;const _0x25fbcf=resolve(_0x4f8ea2,_0x6d2307(0x17b));if(existsSync(_0x25fbcf))try{const _0x4d9a7f=JSON[_0x6d2307(0x157)](readFileSync(_0x25fbcf,_0x6d2307(0x1ab)));for(const _0x1a3960 of[_0x6d2307(0x140),_0x6d2307(0x148)]){const _0x3844f2=_0x4d9a7f?.[_0x1a3960]?.[_0x6d2307(0x18b)];if(typeof _0x3844f2===_0x6d2307(0x135)){_0x3844f2!=='latest'&&(_0x3dbc01={'pkgPath':_0x25fbcf,'currentVersion':_0x3844f2,'field':_0x1a3960});break;}}}catch{}return{'configMigration':_0x8523fb,'oldArtifacts':_0x599112,'oldMcpConfig':_0x12683c,'needsSkillSwap':_0x42273a,'sdkUpgrade':_0x3dbc01};}function a109_0x1318(_0x5d9255,_0x5e0423){_0x5d9255=_0x5d9255-0x12f;const _0x243bea=a109_0x243b();let _0x131844=_0x243bea[_0x5d9255];return _0x131844;}function printReport(_0x33052c){const _0x4e835e=a109_0x4933b9,{configMigration:_0x2a9028,oldArtifacts:_0x218860,oldMcpConfig:_0x153aac,needsSkillSwap:_0x231dbd}=_0x33052c;console['log'](''),console[_0x4e835e(0x14d)](a109_0x2de4fe['bold'](_0x4e835e(0x1aa))),console[_0x4e835e(0x14d)]('');_0x2a9028?(console['log'](a109_0x2de4fe[_0x4e835e(0x1ad)](_0x4e835e(0x16e))+('\x20\x20'+a109_0x2de4fe[_0x4e835e(0x13b)](_0x2a9028[_0x4e835e(0x165)]))),console[_0x4e835e(0x14d)]('\x20\x20New\x20config\x20(.rabetbase.json):\x20'+(_0x2a9028[_0x4e835e(0x180)]?a109_0x2de4fe['green'](_0x4e835e(0x15c)):a109_0x2de4fe[_0x4e835e(0x175)](_0x4e835e(0x13f)))),console['log'](_0x4e835e(0x134)+_0x2a9028[_0x4e835e(0x15b)][_0x4e835e(0x170)](',\x20')),console['log']('\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak')):console[_0x4e835e(0x14d)](a109_0x2de4fe[_0x4e835e(0x1ad)](_0x4e835e(0x16e))+'\x20\x20'+a109_0x2de4fe['gray'](_0x4e835e(0x139)));console['log']('');if(_0x218860[_0x4e835e(0x162)]>0x0){console[_0x4e835e(0x14d)](a109_0x2de4fe[_0x4e835e(0x1ad)](_0x4e835e(0x13e)));for(const _0x119f70 of _0x218860){console['log']('\x20\x20'+a109_0x2de4fe[_0x4e835e(0x1a8)](_0x4e835e(0x168))+'\x20\x20'+_0x119f70);}console['log'](_0x4e835e(0x19d));}else console['log'](a109_0x2de4fe[_0x4e835e(0x1ad)](_0x4e835e(0x13e))+'\x20\x20'+a109_0x2de4fe['gray'](_0x4e835e(0x188)));console[_0x4e835e(0x14d)]('');_0x153aac?(console[_0x4e835e(0x14d)](a109_0x2de4fe[_0x4e835e(0x1ad)]('MCP\x20config:')+('\x20\x20'+a109_0x2de4fe['yellow'](_0x153aac[_0x4e835e(0x17c)])+_0x4e835e(0x16a)+_0x153aac[_0x4e835e(0x193)][_0x4e835e(0x170)](',\x20'))),console['log']('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console[_0x4e835e(0x14d)](a109_0x2de4fe['cyan'](_0x4e835e(0x144))+'\x20\x20'+a109_0x2de4fe['gray']('no\x20legacy\x20entry'));console['log'](''),console[_0x4e835e(0x14d)](a109_0x2de4fe[_0x4e835e(0x1ad)](_0x4e835e(0x147))+('\x20\x20'+(_0x231dbd?a109_0x2de4fe[_0x4e835e(0x13b)](_0x4e835e(0x150)):a109_0x2de4fe['green'](_0x4e835e(0x176)))));_0x231dbd&&console['log']('\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`'+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console['log']('');if(_0x33052c[_0x4e835e(0x1a4)]){const {currentVersion:_0xbeb4ac,field:_0x471d81,pkgPath:_0x4a62ad}=_0x33052c[_0x4e835e(0x1a4)];console['log'](a109_0x2de4fe[_0x4e835e(0x1ad)](_0x4e835e(0x172))+('\x20\x20'+a109_0x2de4fe[_0x4e835e(0x13b)](_0x4a62ad))),console[_0x4e835e(0x14d)](_0x4e835e(0x18d)+_0x471d81+':\x20'+a109_0x2de4fe[_0x4e835e(0x13b)](_0xbeb4ac)+_0x4e835e(0x138)+a109_0x2de4fe[_0x4e835e(0x153)]('latest')),console['log'](_0x4e835e(0x130));}else console[_0x4e835e(0x14d)](a109_0x2de4fe[_0x4e835e(0x1ad)](_0x4e835e(0x172))+'\x20\x20'+a109_0x2de4fe[_0x4e835e(0x175)](_0x4e835e(0x1b0)));console[_0x4e835e(0x14d)]('');}function execConfigMigration(_0x503ac1,_0x4028bb){const _0x4c7e6f=a109_0x4933b9,{configMigration:_0x372f84}=_0x503ac1;if(!_0x372f84?.[_0x4c7e6f(0x165)])return{'step':0x1,'label':_0x4c7e6f(0x19e),'ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x281aea=readConfigFile(_0x372f84['oldPath']),_0x2b3e76=resolve(_0x4028bb,NEW_CONFIG_NAME),_0x500eab=_0x372f84['hasNewConfig']?readConfigFile(_0x2b3e76):{};for(const [_0x58d3cf,_0x28be04]of Object['entries'](_0x281aea)){!(_0x58d3cf in _0x500eab)&&(_0x500eab[_0x58d3cf]=_0x28be04);}writeConfigFile(_0x2b3e76,_0x500eab);const _0x46873b=_0x372f84['oldPath']+'.bak';return renameSync(_0x372f84['oldPath'],_0x46873b),{'step':0x1,'label':_0x4c7e6f(0x19e),'ok':!![],'detail':_0x372f84[_0x4c7e6f(0x165)]+_0x4c7e6f(0x138)+_0x2b3e76+_0x4c7e6f(0x19f)+_0x46873b+')'};}function execRemoveOldArtifacts(_0x51eb73){const _0x59be21=a109_0x4933b9,_0x40a2c2=[];for(const _0x4e50cc of _0x51eb73){try{if(!existsSync(_0x4e50cc))continue;const _0x41eb86=tryStat(_0x4e50cc);_0x41eb86?.[_0x59be21(0x143)]()?rmSync(_0x4e50cc,{'recursive':!![],'force':!![]}):unlinkSync(_0x4e50cc);}catch(_0x129716){_0x40a2c2[_0x59be21(0x15f)](_0x4e50cc+':\x20'+_0x129716['message']);}}return{'step':0x3,'label':_0x59be21(0x198),'ok':_0x40a2c2[_0x59be21(0x162)]===0x0,'detail':_0x40a2c2[_0x59be21(0x162)]>0x0?_0x51eb73[_0x59be21(0x162)]-_0x40a2c2[_0x59be21(0x162)]+'/'+_0x51eb73[_0x59be21(0x162)]+'\x20removed\x20('+_0x40a2c2['join'](';\x20')+')':_0x51eb73['length']+_0x59be21(0x1ae)};}function execCleanMcp(_0xfec50d){const _0x597f1d=a109_0x4933b9;if(!_0xfec50d['oldMcpConfig'])return{'step':0x4,'label':_0x597f1d(0x164),'ok':!![],'detail':_0x597f1d(0x197)};try{const _0x57e2ca=readFileSync(_0xfec50d[_0x597f1d(0x133)][_0x597f1d(0x17c)],'utf8'),_0x12820d=JSON[_0x597f1d(0x157)](_0x57e2ca);if(_0x12820d?.[_0x597f1d(0x185)]&&typeof _0x12820d[_0x597f1d(0x185)]===_0x597f1d(0x145)){const _0x4fd956=[];for(const [_0x518715,_0x34d49d]of Object[_0x597f1d(0x1a1)](_0x12820d['mcpServers'])){_0x34d49d?.[_0x597f1d(0x182)]&&Array[_0x597f1d(0x13c)](_0x34d49d[_0x597f1d(0x182)])&&_0x34d49d['args'][_0x597f1d(0x1a2)](_0x533236=>typeof _0x533236===_0x597f1d(0x135)&&_0x533236[_0x597f1d(0x179)](_0x597f1d(0x15a)))&&_0x4fd956[_0x597f1d(0x15f)](_0x518715);}for(const _0x39d990 of _0x4fd956){delete _0x12820d[_0x597f1d(0x185)][_0x39d990];}return _0x4fd956['length']>0x0&&writeFileSync(_0xfec50d[_0x597f1d(0x133)][_0x597f1d(0x17c)],JSON[_0x597f1d(0x18f)](_0x12820d,null,0x2)+'\x0a',_0x597f1d(0x1ab)),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x597f1d(0x1a6)+_0x4fd956[_0x597f1d(0x170)](',\x20')+'\x20from\x20'+_0xfec50d[_0x597f1d(0x133)][_0x597f1d(0x17c)]};}return{'step':0x4,'label':_0x597f1d(0x164),'ok':!![],'detail':_0x597f1d(0x136)};}catch(_0x3ae6c4){return{'step':0x4,'label':_0x597f1d(0x164),'ok':![],'detail':_0x3ae6c4[_0x597f1d(0x16d)]};}}function execSkillsRemove(_0x1ef4de,_0x14d37a){const _0x4770f7=a109_0x4933b9,_0x1dd77b=runNpxSkillsRemove(_0x1ef4de,{'stdio':'inherit','yes':_0x14d37a});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x1dd77b['ok'],'detail':_0x1dd77b['ok']?'lovrabet/lovrabet-skill\x20removed':_0x1dd77b[_0x4770f7(0x142)]??_0x4770f7(0x14b)+_0x1dd77b[_0x4770f7(0x159)]};}function execSkillsAdd(_0xec9a0b,_0x1253c6){const _0x30bb8c=a109_0x4933b9,_0x38a81f=runNpxSkillsAddGlobal(_0xec9a0b,_0x30bb8c(0x18e),{'stdio':_0x30bb8c(0x1a0),'yes':_0x1253c6});return{'step':0x6,'label':_0x30bb8c(0x14e),'ok':_0x38a81f['ok'],'detail':_0x38a81f['ok']?_0x30bb8c(0x1ac):_0x38a81f['error']??'exit\x20'+_0x38a81f[_0x30bb8c(0x159)]};}function execUpgradeSdk(_0x5ede43){const _0x35ddc4=a109_0x4933b9;if(!_0x5ede43[_0x35ddc4(0x1a4)])return{'step':0x7,'label':_0x35ddc4(0x155),'ok':!![],'detail':_0x35ddc4(0x158)};const {pkgPath:_0x38e1bc,currentVersion:_0x27021b,field:_0x54cb03}=_0x5ede43[_0x35ddc4(0x1a4)];try{const _0x370dc8=readFileSync(_0x38e1bc,_0x35ddc4(0x1ab)),_0x398555=JSON['parse'](_0x370dc8);return _0x398555[_0x54cb03]['@lovrabet/sdk']='latest',writeFileSync(_0x38e1bc,JSON[_0x35ddc4(0x18f)](_0x398555,null,0x2)+'\x0a',_0x35ddc4(0x1ab)),{'step':0x7,'label':_0x35ddc4(0x155),'ok':!![],'detail':_0x54cb03+_0x35ddc4(0x169)+_0x27021b+_0x35ddc4(0x16b)};}catch(_0x2ec22f){return{'step':0x7,'label':_0x35ddc4(0x155),'ok':![],'detail':_0x2ec22f[_0x35ddc4(0x16d)]};}}function tryStat(_0x51026e){try{return statSync(_0x51026e);}catch{return undefined;}}function printSummary(_0x142737){const _0x547aaa=a109_0x4933b9;console[_0x547aaa(0x14d)](''),console[_0x547aaa(0x14d)](a109_0x2de4fe[_0x547aaa(0x16f)]('===\x20Upgrade\x20Summary\x20===')),console[_0x547aaa(0x14d)]('');for(const _0x381728 of _0x142737){const _0x127504=_0x381728['ok']?a109_0x2de4fe['green']('OK'):a109_0x2de4fe[_0x547aaa(0x1a8)](_0x547aaa(0x14a));console[_0x547aaa(0x14d)]('\x20\x20'+_0x127504+_0x547aaa(0x184)+_0x381728['step']+':\x20'+_0x381728[_0x547aaa(0x196)]);if(_0x381728['detail'])console[_0x547aaa(0x14d)](_0x547aaa(0x181)+a109_0x2de4fe[_0x547aaa(0x175)](_0x381728[_0x547aaa(0x171)]));}console[_0x547aaa(0x14d)]('');}export async function upgradeApp(_0x5fa534,_0x2fbee3){const _0x315ded=a109_0x4933b9,_0x26a00d=process[_0x315ded(0x154)](),_0x5b1f66=analyse(_0x26a00d),_0x4b54c4=!_0x5b1f66[_0x315ded(0x156)]&&_0x5b1f66[_0x315ded(0x1a5)][_0x315ded(0x162)]===0x0&&!_0x5b1f66['oldMcpConfig']&&!_0x5b1f66[_0x315ded(0x15e)]&&!_0x5b1f66[_0x315ded(0x1a4)];if(_0x4b54c4){console[_0x315ded(0x14d)](a109_0x2de4fe[_0x315ded(0x153)](_0x315ded(0x19a)));return;}printReport(_0x5b1f66);const _0x1b363a=!!(_0x2fbee3['yes']||_0x2fbee3['Y']||_0x5fa534);if(!_0x1b363a)try{const _0x5a8d07=await askConfirm(_0x315ded(0x13a));if(!_0x5a8d07){console[_0x315ded(0x14d)](a109_0x2de4fe['gray'](_0x315ded(0x146)));return;}}catch(_0x1d9d02){if(_0x1d9d02?.[_0x315ded(0x16d)]===_0x315ded(0x14f)){console['log'](a109_0x2de4fe[_0x315ded(0x175)](_0x315ded(0x146)));return;}throw _0x1d9d02;}const _0x54a49e=[],_0x2eec8a=a109_0x563880({'text':_0x315ded(0x187),'color':_0x315ded(0x1ad)})['start'](),_0x1407d7=execConfigMigration(_0x5b1f66,_0x26a00d);_0x54a49e[_0x315ded(0x15f)](_0x1407d7),_0x2eec8a[_0x1407d7['ok']?_0x315ded(0x199):'fail'](_0x315ded(0x19b)+(_0x1407d7[_0x315ded(0x171)]??(_0x1407d7['ok']?_0x315ded(0x17f):'failed')));const _0x30d062=resolve(_0x26a00d,_0x315ded(0x1a9)),_0x53311c=a109_0x563880({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':_0x315ded(0x1ad)})[_0x315ded(0x186)]();if(existsSync(_0x30d062))try{rmSync(_0x30d062,{'recursive':!![],'force':!![]}),_0x53311c[_0x315ded(0x199)](_0x315ded(0x149)),_0x54a49e[_0x315ded(0x15f)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![]});}catch(_0x1f674b){_0x53311c[_0x315ded(0x194)](_0x315ded(0x12f)+_0x1f674b[_0x315ded(0x16d)]),_0x54a49e[_0x315ded(0x15f)]({'step':0x2,'label':_0x315ded(0x17a),'ok':![],'detail':_0x1f674b[_0x315ded(0x16d)]});}else _0x53311c[_0x315ded(0x1a7)](_0x315ded(0x167)),_0x54a49e['push']({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![],'detail':'skipped'});const _0x23a489=a109_0x563880({'text':_0x315ded(0x16c),'color':_0x315ded(0x1ad)})[_0x315ded(0x186)](),_0x10c1be=execRemoveOldArtifacts(_0x5b1f66['oldArtifacts']);_0x54a49e[_0x315ded(0x15f)](_0x10c1be),_0x23a489[_0x10c1be['ok']?_0x315ded(0x199):_0x315ded(0x194)](_0x315ded(0x166)+(_0x10c1be[_0x315ded(0x171)]??(_0x10c1be['ok']?_0x315ded(0x17f):'failed')));const _0x2b8a88=a109_0x563880({'text':_0x315ded(0x173),'color':_0x315ded(0x1ad)})[_0x315ded(0x186)](),_0x1c0fae=execCleanMcp(_0x5b1f66);_0x54a49e[_0x315ded(0x15f)](_0x1c0fae),_0x2b8a88[_0x1c0fae['ok']?_0x315ded(0x199):_0x315ded(0x194)](_0x315ded(0x161)+(_0x1c0fae[_0x315ded(0x171)]??(_0x1c0fae['ok']?_0x315ded(0x17f):_0x315ded(0x19c))));const _0xf6f5dc=a109_0x563880({'text':_0x315ded(0x1af),'color':_0x315ded(0x1ad)})[_0x315ded(0x186)](),_0x2eb588=execSkillsRemove(_0x26a00d,_0x1b363a);_0x54a49e['push'](_0x2eb588),_0xf6f5dc[_0x2eb588['ok']?_0x315ded(0x199):'fail'](_0x315ded(0x152)+(_0x2eb588[_0x315ded(0x171)]??(_0x2eb588['ok']?_0x315ded(0x17f):'failed')));const _0x3997cc=a109_0x563880({'text':_0x315ded(0x1b1),'color':_0x315ded(0x1ad)})['start'](),_0x106561=execSkillsAdd(_0x26a00d,_0x1b363a);_0x54a49e['push'](_0x106561),_0x3997cc[_0x106561['ok']?'succeed':_0x315ded(0x194)](_0x315ded(0x18c)+(_0x106561['detail']??(_0x106561['ok']?_0x315ded(0x17f):_0x315ded(0x19c))));const _0x68ce06=a109_0x563880({'text':_0x315ded(0x17d),'color':_0x315ded(0x1ad)})['start'](),_0xd529e3=execUpgradeSdk(_0x5b1f66);_0x54a49e[_0x315ded(0x15f)](_0xd529e3),_0x68ce06[_0xd529e3['ok']?_0x315ded(0x199):'fail'](_0x315ded(0x190)+(_0xd529e3[_0x315ded(0x171)]??(_0xd529e3['ok']?'done':_0x315ded(0x19c)))),printSummary(_0x54a49e);const _0x5492a3=_0x54a49e[_0x315ded(0x1a2)](_0x3fddcb=>!_0x3fddcb['ok']);_0x5492a3?console[_0x315ded(0x14d)](a109_0x2de4fe[_0x315ded(0x13b)](_0x315ded(0x160))):console['log'](a109_0x2de4fe[_0x315ded(0x153)](_0x315ded(0x141))),_0xd529e3['ok']&&_0x5b1f66[_0x315ded(0x1a4)]&&(console[_0x315ded(0x14d)](''),console['log'](a109_0x2de4fe[_0x315ded(0x16f)]['cyan'](_0x315ded(0x183))),console[_0x315ded(0x14d)](a109_0x2de4fe[_0x315ded(0x1ad)](_0x315ded(0x177))),console['log'](''),console[_0x315ded(0x14d)](a109_0x2de4fe[_0x315ded(0x1b3)](_0x315ded(0x14c))),console[_0x315ded(0x14d)](a109_0x2de4fe[_0x315ded(0x1b3)]('\x20\x20#\x20or')),console[_0x315ded(0x14d)](a109_0x2de4fe[_0x315ded(0x1b3)](_0x315ded(0x1b2))),console[_0x315ded(0x14d)](''));}
|
|
1
|
+
const a110_0x5b1000=a110_0x1316;(function(_0x1b5607,_0x1b3070){const _0x5253a3=a110_0x1316,_0x5a89a6=_0x1b5607();while(!![]){try{const _0x1880ff=parseInt(_0x5253a3(0xec))/0x1*(parseInt(_0x5253a3(0xab))/0x2)+-parseInt(_0x5253a3(0xc1))/0x3+parseInt(_0x5253a3(0xb5))/0x4*(-parseInt(_0x5253a3(0x97))/0x5)+-parseInt(_0x5253a3(0xd2))/0x6+parseInt(_0x5253a3(0xb7))/0x7*(-parseInt(_0x5253a3(0xad))/0x8)+-parseInt(_0x5253a3(0xfd))/0x9+parseInt(_0x5253a3(0xa0))/0xa;if(_0x1880ff===_0x1b3070)break;else _0x5a89a6['push'](_0x5a89a6['shift']());}catch(_0x811ac8){_0x5a89a6['push'](_0x5a89a6['shift']());}}}(a110_0xfa51,0x45b36));function a110_0xfa51(){const _0xaa98bc=['fields','path','Upgrade\x20completed\x20successfully!','skipped\x20(no\x20legacy\x20config)','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','oldArtifacts','includes','keys','215wsNAxa','string','white','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','lovrabet/rabetbase','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','status','no\x20matching\x20entry\x20found','\x20from\x20','18999610wzPJiH','values','Install\x20new\x20skill','step','skipped','\x20\x20\x20\x20\x20\x20\x20','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','\x20\x20Current\x20version\x20in\x20','no\x20legacy\x20config\x20found','\x20\x20New\x20config\x20(.rabetbase.json):\x20','.claude/skills/lovrabet','562iRcxuz','isDirectory','73912ydxtTO','\x20removed','args','filter','entries','FOUND','Config\x20file:','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','41644pCiIKq','MCP\x20config:','427CeqXCo','@lovrabet/sdk:','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','utf8','files','gray','undefined','succeed','Skill\x20swap:','Legacy\x20artifacts:','128868QQnxjP','@lovrabet/sdk','detail','done','error','parse','oldMcpConfig','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','red','object','not\x20needed','none\x20found','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','===\x20Upgrade\x20Summary\x20===','Upgrade\x20@lovrabet/sdk','length','1990800oXfSAw','label','hasNewConfig','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','info','lovrabet/lovrabet-skill\x20removed','CANCEL','FAIL','start','===\x20Upgrade\x20Analysis\x20===','yes','not\x20found\x20(will\x20create)','message','Proceed\x20with\x20upgrade?','package.json','bold','Upgrade\x20cancelled.','log','.lovrabet','failed','.cursor/mcp.json','green','not\x20found\x20or\x20already\x20at\x20latest','yellow','\x20(backup:\x20','removed\x20','823zzgrLO','\x20→\x20','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','push','\x20\x20Step\x20','Step\x201/7:\x20Migrating\x20config...','inherit','Step\x201/7:\x20Config\x20migration\x20—\x20','devDependencies','.cursor/rules/lovrabet_rules.mdc','exit\x20','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','[\x22@lovrabet/sdk\x22]:\x20','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','Step\x204/7:\x20MCP\x20config\x20—\x20','cyan','4137498ZfKDlo','join','some','latest','mcpServers','stringify','Clean\x20MCP\x20config','Config\x20migration','\x20\x20Fields\x20to\x20migrate:\x20','fail','Remove\x20legacy\x20artifacts','Remove\x20.lovrabet/','\x20→\x20keys:\x20','isArray','\x20→\x20latest','sdkUpgrade','oldPath','@lovrabet/dataset-mcp-server'];a110_0xfa51=function(){return _0xaa98bc;};return a110_0xfa51();}import a110_0x37e341 from'chalk';import a110_0x295161 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[a110_0x5b1000(0xb0)](_0x509716=>_0x509716!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x477b57){const _0x430474=a110_0x5b1000,_0x1f8b87=[];for(const _0x514be1 of Object[_0x430474(0xa1)](CORE_IDE_CONFIGS)){if(_0x514be1[_0x430474(0xbb)])for(const _0x50a201 of _0x514be1['files']){_0x1f8b87[_0x430474(0xef)](resolve(_0x477b57,_0x50a201[_0x430474(0x90)]));}}return _0x1f8b87;}function analyse(_0x3102ea){const _0x3a33e7=a110_0x5b1000;let _0x499d74=null;const _0x4b7a05=resolve(_0x3102ea,NEW_CONFIG_NAME),_0x2ae781=existsSync(_0x4b7a05);for(const _0xcdc908 of LEGACY_CONFIG_NAMES){const _0x1af8e6=resolve(_0x3102ea,_0xcdc908);if(existsSync(_0x1af8e6)){const _0x52e1ea=readConfigFile(_0x1af8e6),_0x1a84fd=Object[_0x3a33e7(0x96)](_0x52e1ea)[_0x3a33e7(0xb0)](_0xcb40d4=>typeof _0x52e1ea[_0xcb40d4]!==_0x3a33e7(0xbd));_0x499d74={'oldPath':_0x1af8e6,'hasNewConfig':_0x2ae781,'fields':_0x1a84fd};break;}}const _0x30ca5e=[],_0x1dca36=resolve(_0x3102ea,_0x3a33e7(0xe4));if(existsSync(_0x1dca36))_0x30ca5e[_0x3a33e7(0xef)](_0x1dca36);const _0x19955d=resolve(_0x3102ea,_0x3a33e7(0xf5));if(existsSync(_0x19955d))_0x30ca5e['push'](_0x19955d);const _0x402768=resolve(_0x3102ea,_0x3a33e7(0xaa));if(existsSync(_0x402768))_0x30ca5e[_0x3a33e7(0xef)](_0x402768);for(const _0x4f6dc0 of collectIdeSkillFiles(_0x3102ea)){if(existsSync(_0x4f6dc0))_0x30ca5e['push'](_0x4f6dc0);}let _0x494983=null;const _0x36004e=resolve(_0x3102ea,_0x3a33e7(0xe6));if(existsSync(_0x36004e))try{const _0x2f3a7a=JSON[_0x3a33e7(0xc6)](readFileSync(_0x36004e,'utf8'));if(_0x2f3a7a?.[_0x3a33e7(0x81)]&&typeof _0x2f3a7a['mcpServers']===_0x3a33e7(0xca)){const _0x2c45b2=[];for(const [_0x34748e,_0x12b609]of Object['entries'](_0x2f3a7a[_0x3a33e7(0x81)])){const _0x214d96=_0x12b609;_0x214d96?.[_0x3a33e7(0xaf)]&&Array[_0x3a33e7(0x8a)](_0x214d96[_0x3a33e7(0xaf)])&&_0x214d96[_0x3a33e7(0xaf)][_0x3a33e7(0x7f)](_0x248d2e=>typeof _0x248d2e===_0x3a33e7(0x98)&&_0x248d2e[_0x3a33e7(0x95)](_0x3a33e7(0x8e)))&&_0x2c45b2[_0x3a33e7(0xef)](_0x34748e);}_0x2c45b2[_0x3a33e7(0xd1)]>0x0&&(_0x494983={'path':_0x36004e,'keys':_0x2c45b2});}}catch{}const _0x41d49a=_0x30ca5e['length']>0x0||_0x499d74!==null;let _0x25c135=null;const _0x553c30=resolve(_0x3102ea,_0x3a33e7(0xe0));if(existsSync(_0x553c30))try{const _0x5894ce=JSON[_0x3a33e7(0xc6)](readFileSync(_0x553c30,_0x3a33e7(0xba)));for(const _0x4bc558 of['dependencies',_0x3a33e7(0xf4)]){const _0x35172d=_0x5894ce?.[_0x4bc558]?.[_0x3a33e7(0xc2)];if(typeof _0x35172d===_0x3a33e7(0x98)){_0x35172d!==_0x3a33e7(0x80)&&(_0x25c135={'pkgPath':_0x553c30,'currentVersion':_0x35172d,'field':_0x4bc558});break;}}}catch{}return{'configMigration':_0x499d74,'oldArtifacts':_0x30ca5e,'oldMcpConfig':_0x494983,'needsSkillSwap':_0x41d49a,'sdkUpgrade':_0x25c135};}function printReport(_0x4e5dc6){const _0x57c3cb=a110_0x5b1000,{configMigration:_0x54ca17,oldArtifacts:_0x340710,oldMcpConfig:_0x2e7796,needsSkillSwap:_0x3852c2}=_0x4e5dc6;console['log'](''),console['log'](a110_0x37e341[_0x57c3cb(0xe1)](_0x57c3cb(0xdb))),console[_0x57c3cb(0xe3)]('');_0x54ca17?(console[_0x57c3cb(0xe3)](a110_0x37e341[_0x57c3cb(0xfc)](_0x57c3cb(0xb3))+('\x20\x20'+a110_0x37e341[_0x57c3cb(0xe9)](_0x54ca17['oldPath']))),console[_0x57c3cb(0xe3)](_0x57c3cb(0xa9)+(_0x54ca17['hasNewConfig']?a110_0x37e341[_0x57c3cb(0xe7)]('already\x20exists\x20(will\x20merge)'):a110_0x37e341[_0x57c3cb(0xbc)](_0x57c3cb(0xdd)))),console[_0x57c3cb(0xe3)](_0x57c3cb(0x85)+_0x54ca17[_0x57c3cb(0x8f)][_0x57c3cb(0xfe)](',\x20')),console[_0x57c3cb(0xe3)](_0x57c3cb(0x9c))):console[_0x57c3cb(0xe3)](a110_0x37e341[_0x57c3cb(0xfc)]('Config\x20file:')+'\x20\x20'+a110_0x37e341[_0x57c3cb(0xbc)](_0x57c3cb(0xa8)));console[_0x57c3cb(0xe3)]('');if(_0x340710[_0x57c3cb(0xd1)]>0x0){console[_0x57c3cb(0xe3)](a110_0x37e341[_0x57c3cb(0xfc)](_0x57c3cb(0xc0)));for(const _0x22b59b of _0x340710){console[_0x57c3cb(0xe3)]('\x20\x20'+a110_0x37e341[_0x57c3cb(0xc9)](_0x57c3cb(0xb2))+'\x20\x20'+_0x22b59b);}console[_0x57c3cb(0xe3)]('\x20\x20Action:\x20delete');}else console[_0x57c3cb(0xe3)](a110_0x37e341[_0x57c3cb(0xfc)]('Legacy\x20artifacts:')+'\x20\x20'+a110_0x37e341[_0x57c3cb(0xbc)](_0x57c3cb(0xcc)));console[_0x57c3cb(0xe3)]('');_0x2e7796?(console['log'](a110_0x37e341['cyan'](_0x57c3cb(0xb6))+('\x20\x20'+a110_0x37e341[_0x57c3cb(0xe9)](_0x2e7796[_0x57c3cb(0x90)])+_0x57c3cb(0x89)+_0x2e7796[_0x57c3cb(0x96)][_0x57c3cb(0xfe)](',\x20'))),console[_0x57c3cb(0xe3)](_0x57c3cb(0x93))):console['log'](a110_0x37e341[_0x57c3cb(0xfc)]('MCP\x20config:')+'\x20\x20'+a110_0x37e341[_0x57c3cb(0xbc)]('no\x20legacy\x20entry'));console[_0x57c3cb(0xe3)](''),console[_0x57c3cb(0xe3)](a110_0x37e341[_0x57c3cb(0xfc)](_0x57c3cb(0xbf))+('\x20\x20'+(_0x3852c2?a110_0x37e341[_0x57c3cb(0xe9)]('needed'):a110_0x37e341['green'](_0x57c3cb(0xcb)))));_0x3852c2&&console[_0x57c3cb(0xe3)](_0x57c3cb(0x9a)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x57c3cb(0xe3)]('');if(_0x4e5dc6[_0x57c3cb(0x8c)]){const {currentVersion:_0x88bb72,field:_0x24aec1,pkgPath:_0x19a8d8}=_0x4e5dc6[_0x57c3cb(0x8c)];console[_0x57c3cb(0xe3)](a110_0x37e341[_0x57c3cb(0xfc)](_0x57c3cb(0xb8))+('\x20\x20'+a110_0x37e341['yellow'](_0x19a8d8))),console[_0x57c3cb(0xe3)](_0x57c3cb(0xa7)+_0x24aec1+':\x20'+a110_0x37e341[_0x57c3cb(0xe9)](_0x88bb72)+_0x57c3cb(0xed)+a110_0x37e341['green'](_0x57c3cb(0x80))),console['log']('\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)');}else console[_0x57c3cb(0xe3)](a110_0x37e341[_0x57c3cb(0xfc)](_0x57c3cb(0xb8))+'\x20\x20'+a110_0x37e341[_0x57c3cb(0xbc)](_0x57c3cb(0xe8)));console[_0x57c3cb(0xe3)]('');}function a110_0x1316(_0x72c84c,_0x5417e4){_0x72c84c=_0x72c84c-0x7f;const _0xfa5100=a110_0xfa51();let _0x131607=_0xfa5100[_0x72c84c];return _0x131607;}function execConfigMigration(_0x4ee9e7,_0x20898e){const _0x3cb321=a110_0x5b1000,{configMigration:_0x31fd00}=_0x4ee9e7;if(!_0x31fd00?.[_0x3cb321(0x8d)])return{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x3cb321(0x92)};const _0x439526=readConfigFile(_0x31fd00[_0x3cb321(0x8d)]),_0xf9f988=resolve(_0x20898e,NEW_CONFIG_NAME),_0x11ea5f=_0x31fd00[_0x3cb321(0xd4)]?readConfigFile(_0xf9f988):{};for(const [_0x285d65,_0xb71308]of Object[_0x3cb321(0xb1)](_0x439526)){!(_0x285d65 in _0x11ea5f)&&(_0x11ea5f[_0x285d65]=_0xb71308);}writeConfigFile(_0xf9f988,_0x11ea5f);const _0x5a05eb=_0x31fd00[_0x3cb321(0x8d)]+'.bak';return renameSync(_0x31fd00[_0x3cb321(0x8d)],_0x5a05eb),{'step':0x1,'label':_0x3cb321(0x84),'ok':!![],'detail':_0x31fd00[_0x3cb321(0x8d)]+'\x20→\x20'+_0xf9f988+_0x3cb321(0xea)+_0x5a05eb+')'};}function execRemoveOldArtifacts(_0x5f1d32){const _0x5b0d40=a110_0x5b1000,_0x24d560=[];for(const _0x129fd of _0x5f1d32){try{if(!existsSync(_0x129fd))continue;const _0x2620b6=tryStat(_0x129fd);_0x2620b6?.[_0x5b0d40(0xac)]()?rmSync(_0x129fd,{'recursive':!![],'force':!![]}):unlinkSync(_0x129fd);}catch(_0x3b4bc2){_0x24d560[_0x5b0d40(0xef)](_0x129fd+':\x20'+_0x3b4bc2[_0x5b0d40(0xde)]);}}return{'step':0x3,'label':_0x5b0d40(0x87),'ok':_0x24d560[_0x5b0d40(0xd1)]===0x0,'detail':_0x24d560[_0x5b0d40(0xd1)]>0x0?_0x5f1d32[_0x5b0d40(0xd1)]-_0x24d560[_0x5b0d40(0xd1)]+'/'+_0x5f1d32[_0x5b0d40(0xd1)]+'\x20removed\x20('+_0x24d560[_0x5b0d40(0xfe)](';\x20')+')':_0x5f1d32[_0x5b0d40(0xd1)]+_0x5b0d40(0xae)};}function execCleanMcp(_0x54b973){const _0x520a4c=a110_0x5b1000;if(!_0x54b973[_0x520a4c(0xc7)])return{'step':0x4,'label':_0x520a4c(0x83),'ok':!![],'detail':_0x520a4c(0xa4)};try{const _0x39dbc1=readFileSync(_0x54b973[_0x520a4c(0xc7)]['path'],_0x520a4c(0xba)),_0x52bcc3=JSON[_0x520a4c(0xc6)](_0x39dbc1);if(_0x52bcc3?.[_0x520a4c(0x81)]&&typeof _0x52bcc3[_0x520a4c(0x81)]==='object'){const _0x2973f9=[];for(const [_0x255f8d,_0x4ba1b9]of Object[_0x520a4c(0xb1)](_0x52bcc3[_0x520a4c(0x81)])){_0x4ba1b9?.['args']&&Array[_0x520a4c(0x8a)](_0x4ba1b9['args'])&&_0x4ba1b9[_0x520a4c(0xaf)][_0x520a4c(0x7f)](_0x18159f=>typeof _0x18159f===_0x520a4c(0x98)&&_0x18159f[_0x520a4c(0x95)](_0x520a4c(0x8e)))&&_0x2973f9[_0x520a4c(0xef)](_0x255f8d);}for(const _0x2aa5d0 of _0x2973f9){delete _0x52bcc3[_0x520a4c(0x81)][_0x2aa5d0];}return _0x2973f9[_0x520a4c(0xd1)]>0x0&&writeFileSync(_0x54b973[_0x520a4c(0xc7)][_0x520a4c(0x90)],JSON['stringify'](_0x52bcc3,null,0x2)+'\x0a',_0x520a4c(0xba)),{'step':0x4,'label':_0x520a4c(0x83),'ok':!![],'detail':_0x520a4c(0xeb)+_0x2973f9[_0x520a4c(0xfe)](',\x20')+_0x520a4c(0x9f)+_0x54b973[_0x520a4c(0xc7)]['path']};}return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x520a4c(0x9e)};}catch(_0x40d2ba){return{'step':0x4,'label':_0x520a4c(0x83),'ok':![],'detail':_0x40d2ba['message']};}}function execSkillsRemove(_0x247ca5,_0x311411){const _0x3ec306=a110_0x5b1000,_0x365cb4=runNpxSkillsRemove(_0x247ca5,{'stdio':_0x3ec306(0xf2),'yes':_0x311411});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x365cb4['ok'],'detail':_0x365cb4['ok']?_0x3ec306(0xd7):_0x365cb4[_0x3ec306(0xc5)]??_0x3ec306(0xf6)+_0x365cb4[_0x3ec306(0x9d)]};}function execSkillsAdd(_0x19a172,_0x305f05){const _0xd43196=a110_0x5b1000,_0x15b856=runNpxSkillsAddGlobal(_0x19a172,_0xd43196(0x9b),{'stdio':_0xd43196(0xf2),'yes':_0x305f05});return{'step':0x6,'label':_0xd43196(0xa2),'ok':_0x15b856['ok'],'detail':_0x15b856['ok']?'lovrabet/rabetbase\x20installed\x20globally':_0x15b856[_0xd43196(0xc5)]??_0xd43196(0xf6)+_0x15b856[_0xd43196(0x9d)]};}function execUpgradeSdk(_0xde6fda){const _0x1dafc9=a110_0x5b1000;if(!_0xde6fda['sdkUpgrade'])return{'step':0x7,'label':_0x1dafc9(0xd0),'ok':!![],'detail':_0x1dafc9(0xce)};const {pkgPath:_0x182d52,currentVersion:_0x286379,field:_0x1cfc92}=_0xde6fda[_0x1dafc9(0x8c)];try{const _0x548ce7=readFileSync(_0x182d52,'utf8'),_0x448b93=JSON[_0x1dafc9(0xc6)](_0x548ce7);return _0x448b93[_0x1cfc92]['@lovrabet/sdk']=_0x1dafc9(0x80),writeFileSync(_0x182d52,JSON[_0x1dafc9(0x82)](_0x448b93,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x1cfc92+_0x1dafc9(0xf9)+_0x286379+_0x1dafc9(0x8b)};}catch(_0x2d9570){return{'step':0x7,'label':_0x1dafc9(0xd0),'ok':![],'detail':_0x2d9570[_0x1dafc9(0xde)]};}}function tryStat(_0x25f6b3){try{return statSync(_0x25f6b3);}catch{return undefined;}}function printSummary(_0x1039aa){const _0x2ecf15=a110_0x5b1000;console[_0x2ecf15(0xe3)](''),console[_0x2ecf15(0xe3)](a110_0x37e341['bold'](_0x2ecf15(0xcf))),console[_0x2ecf15(0xe3)]('');for(const _0x5b8bd8 of _0x1039aa){const _0x1a20f=_0x5b8bd8['ok']?a110_0x37e341[_0x2ecf15(0xe7)]('OK'):a110_0x37e341[_0x2ecf15(0xc9)](_0x2ecf15(0xd9));console[_0x2ecf15(0xe3)]('\x20\x20'+_0x1a20f+_0x2ecf15(0xf0)+_0x5b8bd8[_0x2ecf15(0xa3)]+':\x20'+_0x5b8bd8[_0x2ecf15(0xd3)]);if(_0x5b8bd8[_0x2ecf15(0xc3)])console[_0x2ecf15(0xe3)](_0x2ecf15(0xa5)+a110_0x37e341[_0x2ecf15(0xbc)](_0x5b8bd8['detail']));}console['log']('');}export async function upgradeApp(_0x42829b,_0x2bb097){const _0x356965=a110_0x5b1000,_0x3dfd46=process['cwd'](),_0x2f791d=analyse(_0x3dfd46),_0x49b894=!_0x2f791d['configMigration']&&_0x2f791d[_0x356965(0x94)][_0x356965(0xd1)]===0x0&&!_0x2f791d['oldMcpConfig']&&!_0x2f791d['needsSkillSwap']&&!_0x2f791d[_0x356965(0x8c)];if(_0x49b894){console[_0x356965(0xe3)](a110_0x37e341['green'](_0x356965(0xf8)));return;}printReport(_0x2f791d);const _0x5be542=!!(_0x2bb097[_0x356965(0xdc)]||_0x2bb097['Y']||_0x42829b);if(!_0x5be542)try{const _0x2567da=await askConfirm(_0x356965(0xdf));if(!_0x2567da){console[_0x356965(0xe3)](a110_0x37e341[_0x356965(0xbc)]('Upgrade\x20cancelled.'));return;}}catch(_0xea481){if(_0xea481?.['message']===_0x356965(0xd8)){console[_0x356965(0xe3)](a110_0x37e341['gray'](_0x356965(0xe2)));return;}throw _0xea481;}const _0xb6d35d=[],_0x4de743=a110_0x295161({'text':_0x356965(0xf1),'color':_0x356965(0xfc)})[_0x356965(0xda)](),_0xcc0d89=execConfigMigration(_0x2f791d,_0x3dfd46);_0xb6d35d[_0x356965(0xef)](_0xcc0d89),_0x4de743[_0xcc0d89['ok']?'succeed':_0x356965(0x86)](_0x356965(0xf3)+(_0xcc0d89[_0x356965(0xc3)]??(_0xcc0d89['ok']?_0x356965(0xc4):'failed')));const _0x3f5488=resolve(_0x3dfd46,_0x356965(0xe4)),_0x2ba655=a110_0x295161({'text':_0x356965(0xa6),'color':_0x356965(0xfc)})[_0x356965(0xda)]();if(existsSync(_0x3f5488))try{rmSync(_0x3f5488,{'recursive':!![],'force':!![]}),_0x2ba655[_0x356965(0xbe)](_0x356965(0xee)),_0xb6d35d['push']({'step':0x2,'label':_0x356965(0x88),'ok':!![]});}catch(_0x2d8508){_0x2ba655[_0x356965(0x86)](_0x356965(0xc8)+_0x2d8508[_0x356965(0xde)]),_0xb6d35d[_0x356965(0xef)]({'step':0x2,'label':_0x356965(0x88),'ok':![],'detail':_0x2d8508[_0x356965(0xde)]});}else _0x2ba655[_0x356965(0xd6)](_0x356965(0xb9)),_0xb6d35d[_0x356965(0xef)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![],'detail':_0x356965(0xa4)});const _0x54cf61=a110_0x295161({'text':_0x356965(0xb4),'color':_0x356965(0xfc)})[_0x356965(0xda)](),_0x2f6296=execRemoveOldArtifacts(_0x2f791d[_0x356965(0x94)]);_0xb6d35d[_0x356965(0xef)](_0x2f6296),_0x54cf61[_0x2f6296['ok']?_0x356965(0xbe):_0x356965(0x86)]('Step\x203/7:\x20Legacy\x20artifacts\x20—\x20'+(_0x2f6296[_0x356965(0xc3)]??(_0x2f6296['ok']?_0x356965(0xc4):_0x356965(0xe5))));const _0x9c2285=a110_0x295161({'text':'Step\x204/7:\x20Cleaning\x20MCP\x20config...','color':_0x356965(0xfc)})[_0x356965(0xda)](),_0x486e30=execCleanMcp(_0x2f791d);_0xb6d35d[_0x356965(0xef)](_0x486e30),_0x9c2285[_0x486e30['ok']?'succeed':_0x356965(0x86)](_0x356965(0xfb)+(_0x486e30[_0x356965(0xc3)]??(_0x486e30['ok']?_0x356965(0xc4):_0x356965(0xe5))));const _0x5041ce=a110_0x295161({'text':'Step\x205/7:\x20Removing\x20old\x20skill...','color':_0x356965(0xfc)})[_0x356965(0xda)](),_0x55b119=execSkillsRemove(_0x3dfd46,_0x5be542);_0xb6d35d[_0x356965(0xef)](_0x55b119),_0x5041ce[_0x55b119['ok']?_0x356965(0xbe):_0x356965(0x86)]('Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20'+(_0x55b119[_0x356965(0xc3)]??(_0x55b119['ok']?'done':'failed')));const _0x16bf8d=a110_0x295161({'text':'Step\x206/7:\x20Installing\x20new\x20skill...','color':_0x356965(0xfc)})['start'](),_0x5a59cd=execSkillsAdd(_0x3dfd46,_0x5be542);_0xb6d35d[_0x356965(0xef)](_0x5a59cd),_0x16bf8d[_0x5a59cd['ok']?_0x356965(0xbe):_0x356965(0x86)](_0x356965(0xfa)+(_0x5a59cd[_0x356965(0xc3)]??(_0x5a59cd['ok']?'done':_0x356965(0xe5))));const _0x4a65bb=a110_0x295161({'text':'Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','color':_0x356965(0xfc)})[_0x356965(0xda)](),_0xcc400c=execUpgradeSdk(_0x2f791d);_0xb6d35d[_0x356965(0xef)](_0xcc400c),_0x4a65bb[_0xcc400c['ok']?_0x356965(0xbe):_0x356965(0x86)]('Step\x207/7:\x20@lovrabet/sdk\x20—\x20'+(_0xcc400c[_0x356965(0xc3)]??(_0xcc400c['ok']?'done':_0x356965(0xe5)))),printSummary(_0xb6d35d);const _0x1f1b8b=_0xb6d35d[_0x356965(0x7f)](_0x2246a1=>!_0x2246a1['ok']);_0x1f1b8b?console[_0x356965(0xe3)](a110_0x37e341[_0x356965(0xe9)](_0x356965(0xcd))):console[_0x356965(0xe3)](a110_0x37e341[_0x356965(0xe7)](_0x356965(0x91))),_0xcc400c['ok']&&_0x2f791d[_0x356965(0x8c)]&&(console[_0x356965(0xe3)](''),console[_0x356965(0xe3)](a110_0x37e341[_0x356965(0xe1)][_0x356965(0xfc)](_0x356965(0xd5))),console[_0x356965(0xe3)](a110_0x37e341[_0x356965(0xfc)](_0x356965(0xf7))),console[_0x356965(0xe3)](''),console[_0x356965(0xe3)](a110_0x37e341[_0x356965(0x99)]('\x20\x20npm\x20install')),console[_0x356965(0xe3)](a110_0x37e341[_0x356965(0x99)]('\x20\x20#\x20or')),console['log'](a110_0x37e341[_0x356965(0x99)]('\x20\x20bun\x20install')),console[_0x356965(0xe3)](''));}
|
package/lib/commands/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a111_0x164bbd=a111_0x3ddb;(function(_0x4ff6e8,_0x40789e){const _0x541ae2=a111_0x3ddb,_0x132c1a=_0x4ff6e8();while(!![]){try{const _0x120386=parseInt(_0x541ae2(0xd3))/0x1*(parseInt(_0x541ae2(0xb7))/0x2)+parseInt(_0x541ae2(0xe4))/0x3*(-parseInt(_0x541ae2(0xc9))/0x4)+-parseInt(_0x541ae2(0xbf))/0x5*(-parseInt(_0x541ae2(0xc1))/0x6)+-parseInt(_0x541ae2(0xc4))/0x7*(-parseInt(_0x541ae2(0xce))/0x8)+parseInt(_0x541ae2(0xd8))/0x9+-parseInt(_0x541ae2(0xc6))/0xa*(parseInt(_0x541ae2(0xc2))/0xb)+-parseInt(_0x541ae2(0xab))/0xc*(-parseInt(_0x541ae2(0xcb))/0xd);if(_0x120386===_0x40789e)break;else _0x132c1a['push'](_0x132c1a['shift']());}catch(_0xc12b16){_0x132c1a['push'](_0x132c1a['shift']());}}}(a111_0xb7f2,0x92ca1));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{appDefinitions}from'../commands/app/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';function a111_0x3ddb(_0x541ff6,_0x29857e){_0x541ff6=_0x541ff6-0xab;const _0xb7f2b1=a111_0xb7f2();let _0x3ddb14=_0xb7f2b1[_0x541ff6];return _0x3ddb14;}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=[];function a111_0xb7f2(){const _0x1875a0=['Menu','142jiXErP','Dataset\x20&\x20Operations','defaultCommand','has','App\x20Management','from','length','Self\x20Update','5CUMMkD','\x20\x20[write]','5152998PlCCvB','213697mfbYJR','Project','10346XauLKU','Smart\x20List\x20Pages','390ECvVrZ','isSingleCommand','set','4IMfBln','\x20\x20[high-risk-write]','13iHhOns','show','Schema','8xMjYym','push','SQL\x20Queries','Run\x20Scripts','Authentication','3651vhGkfX','Logs','Quick\x20Start','Code\x20Generation','command','1404216TkKDUI','read','start','service','Skills','Run\x20any\x20package.json\x20script','skill','Database\x20Connections','create','get','commands','install','1733943RhMtDg','7935924eNCYZS','build','wildcardDef','<script>','description','preview','run','Instant\x20API','BFF\x20Scripts','Platform\x20Issue','values'];a111_0xb7f2=function(){return _0x1875a0;};return a111_0xb7f2();}const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0xa35629){const _0x4e4525=a111_0x3ddb;for(const _0x48c3df of _0xa35629){definitions['set'](_0x48c3df[_0x4e4525(0xdb)]+':'+_0x48c3df[_0x4e4525(0xd7)],_0x48c3df);let _0x53179f=serviceGroups[_0x4e4525(0xe1)](_0x48c3df[_0x4e4525(0xdb)]);!_0x53179f&&(_0x53179f=[],serviceGroups[_0x4e4525(0xc8)](_0x48c3df[_0x4e4525(0xdb)],_0x53179f)),_0x53179f['push'](_0x48c3df);}}function registerDeclarativeService(_0x42acd7,_0x5e9374,_0x2b1cbc){const _0x473b6c=a111_0x3ddb;registerDefinitions(_0x5e9374);_0x2b1cbc?.[_0x473b6c(0xad)]&®isterDefinitions([_0x2b1cbc[_0x473b6c(0xad)]]);const _0x135995=_0xe51d0e=>_0xe51d0e===_0x473b6c(0xd9)?'':_0xe51d0e==='write'?_0x473b6c(0xc0):_0x473b6c(0xca),_0x46d081={'service':_0x5e9374[0x0][_0x473b6c(0xdb)],'label':_0x42acd7,'commands':_0x5e9374['map'](_0x2410cd=>({'command':_0x2410cd[_0x473b6c(0xd7)],'description':_0x2410cd[_0x473b6c(0xaf)],'tag':_0x135995(_0x2410cd['risk'])})),'declarative':!![],'defaultCommand':_0x2b1cbc?.[_0x473b6c(0xb9)]??(_0x2b1cbc?.[_0x473b6c(0xc7)]?_0x5e9374[0x0][_0x473b6c(0xd7)]:undefined),'wildcardDef':_0x2b1cbc?.['wildcardDef'],'isSingleCommand':_0x2b1cbc?.[_0x473b6c(0xc7)]};serviceRegistry[_0x473b6c(0xcf)](_0x46d081),serviceByName[_0x473b6c(0xc8)](_0x46d081[_0x473b6c(0xdb)],_0x46d081);}registerDeclarativeService(a111_0x164bbd(0xd5),initDefinitions,{'defaultCommand':a111_0x164bbd(0xb1),'isSingleCommand':!![]}),registerDeclarativeService(a111_0x164bbd(0xc3),projectDefinitions),registerDeclarativeService(a111_0x164bbd(0xbb),appDefinitions),registerDeclarativeService(a111_0x164bbd(0xd1),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a111_0x164bbd(0xbd)]-0x1];last[a111_0x164bbd(0xe2)]=[{'command':a111_0x164bbd(0xae),'description':a111_0x164bbd(0xdd),'tag':''}];}registerDeclarativeService(a111_0x164bbd(0xd2),authDefinitions,{'defaultCommand':'login'}),registerDeclarativeService(a111_0x164bbd(0xbe),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a111_0x164bbd(0xcd),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Configuration',configDefinitions),registerDeclarativeService(a111_0x164bbd(0xb4),issueDefinitions),registerDeclarativeService('API',apiDefinitions),registerDeclarativeService(a111_0x164bbd(0xb6),menuDefinitions),registerDeclarativeService(a111_0x164bbd(0xdf),dbDefinitions),registerDeclarativeService(a111_0x164bbd(0xb8),datasetDefinitions),registerDeclarativeService(a111_0x164bbd(0xc5),pageDefinitions),registerDeclarativeService(a111_0x164bbd(0xb2),dataDefinitions),registerDeclarativeService(a111_0x164bbd(0xb3),bffDefinitions),registerDeclarativeService(a111_0x164bbd(0xd0),sqlDefinitions),registerDeclarativeService(a111_0x164bbd(0xd6),codegenDefinitions),registerDeclarativeService(a111_0x164bbd(0xdc),skillDefinitions),registerDeclarativeService(a111_0x164bbd(0xd4),logsDefinitions,{'defaultCommand':a111_0x164bbd(0xcc)});export const deprecatedAliases={'create':{'service':'project','command':a111_0x164bbd(0xe0)},'start':{'service':a111_0x164bbd(0xb1),'command':a111_0x164bbd(0xda)},'build':{'service':a111_0x164bbd(0xb1),'command':a111_0x164bbd(0xac)},'preview':{'service':a111_0x164bbd(0xb1),'command':a111_0x164bbd(0xb0)},'logout':{'service':'auth','command':'logout'},'skills':{'service':a111_0x164bbd(0xde),'command':a111_0x164bbd(0xe3)}};export const deprecatedSubcommands={'bff':{'new':'create'},'sql':{'new':'create'}};export function resolveDeprecatedSubcommand(_0x5cbe28,_0x2bacb3){return deprecatedSubcommands[_0x5cbe28]?.[_0x2bacb3];}export function findDefinition(_0x53732d,_0x15d2b9){const _0x2aef0c=a111_0x164bbd;return definitions[_0x2aef0c(0xe1)](_0x53732d+':'+_0x15d2b9);}export function isKnownService(_0x828555){return serviceByName['has'](_0x828555);}export function isDeclarativeService(_0x3418dd){const _0x5b0929=a111_0x164bbd;return serviceGroups[_0x5b0929(0xba)](_0x3418dd)||serviceByName['get'](_0x3418dd)?.[_0x5b0929(0xad)]!==undefined;}export function getServiceEntry(_0x3d19ce){const _0x515ba9=a111_0x164bbd;return serviceByName[_0x515ba9(0xe1)](_0x3d19ce);}export function getLegacyHandler(_0x3f429a,_0x23a9e0){return undefined;}export function getAllDefinitions(){const _0x49f0ad=a111_0x164bbd;return Array[_0x49f0ad(0xbc)](definitions[_0x49f0ad(0xb5)]());}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a112_0x1e459f=a112_0x25fc;(function(_0xa8839a,_0x2119c1){const _0x2cd77f=a112_0x25fc,_0x1a8a93=_0xa8839a();while(!![]){try{const _0x54563a=parseInt(_0x2cd77f(0xda))/0x1*(-parseInt(_0x2cd77f(0x10b))/0x2)+parseInt(_0x2cd77f(0x109))/0x3+parseInt(_0x2cd77f(0x105))/0x4+parseInt(_0x2cd77f(0xe2))/0x5*(-parseInt(_0x2cd77f(0x111))/0x6)+parseInt(_0x2cd77f(0xdd))/0x7*(-parseInt(_0x2cd77f(0xe6))/0x8)+-parseInt(_0x2cd77f(0x110))/0x9+parseInt(_0x2cd77f(0xf5))/0xa;if(_0x54563a===_0x2119c1)break;else _0x1a8a93['push'](_0x1a8a93['shift']());}catch(_0x2a20a4){_0x1a8a93['push'](_0x1a8a93['shift']());}}}(a112_0x37ba,0xb4b30));import{readFileSync,existsSync}from'node:fs';function a112_0x25fc(_0x2fa0fb,_0x3e1b01){_0x2fa0fb=_0x2fa0fb-0xda;const _0x37ba30=a112_0x37ba();let _0x25fcf4=_0x37ba30[_0x2fa0fb];return _0x25fcf4;}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([a112_0x1e459f(0xed),a112_0x1e459f(0xeb)]);function readPackageScripts(_0x5d6c9c){const _0x4a8f72=a112_0x1e459f,_0xd2379d=resolve(_0x5d6c9c,'package.json');if(!existsSync(_0xd2379d))return null;try{const _0x141807=JSON['parse'](readFileSync(_0xd2379d,_0x4a8f72(0x114)));return _0x141807[_0x4a8f72(0xf1)]??{};}catch{return null;}}function a112_0x37ba(){const _0xc1260e=['\x20run\x20','utf-8','bun','join','vite','728747bOsAqw','\x20run\x20<script>\x0a','build','10138779IBEdEq','Available:\x20','(none)','args','close','184135UEQHwi','\x20\x20\x20\x20','.bin','watch','8etAJSv','max','node_modules','yarn','slice','dev','validation','start','\x20run\x20build','bool','entries','scripts','\x20run\x20preview','bun.lockb','vite\x20preview\x20exited\x20with\x20code\x20','15039460naEjfY','error','Script\x20name\x20defined\x20in\x20package.json','cwd','\x20run\x20preview\x20--watch\x20\x20\x20#\x20parallel\x20build\x20--watch\x20+\x20preview','read','has','length','Enable\x20watch\x20mode\x20for\x20preview','padEnd','needsUpgrade','bun.lock','keys','run','inherit','boolean','5215840DGBfDb','log','npm','push','2596623LMSgQv','\x20\x20EXAMPLES','2GtYPmK','pnpm-lock.yaml','--watch','map','No\x20package.json\x20found\x20in\x20current\x20directory.','508014MjMRRX','114sxfOAA','\x22\x20not\x20found\x20in\x20package.json.'];a112_0x37ba=function(){return _0xc1260e;};return a112_0x37ba();}function detectPackageManager(_0x157940){const _0x1faa4d=a112_0x1e459f;if(existsSync(resolve(_0x157940,_0x1faa4d(0xf3)))||existsSync(resolve(_0x157940,_0x1faa4d(0x100))))return _0x1faa4d(0x115);if(existsSync(resolve(_0x157940,_0x1faa4d(0x10c))))return'pnpm';if(existsSync(resolve(_0x157940,'yarn.lock')))return _0x1faa4d(0xe9);return _0x1faa4d(0x107);}async function versionCheck(_0x294fdd){const _0x23bc25=a112_0x1e459f,_0x360634=await checkCliVersion();(_0x360634[_0x23bc25(0xff)]||_0x360634['belowMinimum'])&&(printCliUpgradeWarning(_0x360634),assertCliVersionSupported(_0x360634));const _0x296958=await checkSdkVersion(_0x294fdd);if(_0x296958[_0x23bc25(0xff)])printSdkUpgradeWarning(_0x296958);}function spawnScript(_0x2c2616,_0x52baa0,_0x15269e,_0x49f577){return new Promise((_0x3c9d4f,_0x380614)=>{const _0x2932be=a112_0x25fc,_0x975ead=['run',_0x52baa0,..._0x15269e],_0x179e96=spawn(_0x2c2616,_0x975ead,{'cwd':_0x49f577,'stdio':_0x2932be(0x103),'shell':!![],'env':{...process.env,'PATH':''+join(_0x49f577,'node_modules',_0x2932be(0xe4))+delimiter+process.env.PATH}});_0x179e96['on'](_0x2932be(0xe1),_0x137cf5=>{const _0x201a47=_0x2932be;if(_0x137cf5===0x0||_0x137cf5===null)_0x3c9d4f();else _0x380614(new Error(_0x2c2616+_0x201a47(0x113)+_0x52baa0+'\x20exited\x20with\x20code\x20'+_0x137cf5));}),_0x179e96['on'](_0x2932be(0xf6),_0x380614);});}function spawnViteBuildWatch(_0x67646){return new Promise((_0x256f66,_0x5928d2)=>{const _0x5758ed=a112_0x25fc,_0x3aec95=spawn(_0x5758ed(0x117),[_0x5758ed(0xdc),_0x5758ed(0x10d)],{'cwd':_0x67646,'stdio':_0x5758ed(0x103),'shell':!![],'env':{...process.env,'PATH':''+join(_0x67646,'node_modules',_0x5758ed(0xe4))+delimiter+process.env.PATH}});_0x3aec95['on'](_0x5758ed(0xe1),_0x199aeb=>{if(_0x199aeb===0x0||_0x199aeb===null)_0x256f66();else _0x5928d2(new Error('vite\x20build\x20--watch\x20exited\x20with\x20code\x20'+_0x199aeb));}),_0x3aec95['on']('error',_0x5928d2);});}function spawnVitePreview(_0x181523){return new Promise((_0x5c09c5,_0x55eece)=>{const _0x46e85b=a112_0x25fc,_0xb30e9d=spawn('vite',['preview'],{'cwd':_0x181523,'stdio':_0x46e85b(0x103),'shell':!![],'env':{...process.env,'PATH':''+join(_0x181523,_0x46e85b(0xe8),_0x46e85b(0xe4))+delimiter+process.env.PATH}});_0xb30e9d['on'](_0x46e85b(0xe1),_0x26e36a=>{const _0xf75444=_0x46e85b;if(_0x26e36a===0x0||_0x26e36a===null)_0x5c09c5();else _0x55eece(new Error(_0xf75444(0xf4)+_0x26e36a));}),_0xb30e9d['on'](_0x46e85b(0xf6),_0x55eece);});}const runFlags=[{'name':'watch','type':a112_0x1e459f(0x104),'description':a112_0x1e459f(0xfd),'default':![]}];export const runDefinition={'service':a112_0x1e459f(0x102),'command':a112_0x1e459f(0x102),'description':'Run\x20a\x20package.json\x20script','risk':a112_0x1e459f(0xfa),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':'script','description':a112_0x1e459f(0xf7),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x3f8830=a112_0x1e459f,_0x22b8eb=readPackageScripts(process[_0x3f8830(0xf8)]()),_0x25017c=[];if(_0x22b8eb&&Object[_0x3f8830(0x101)](_0x22b8eb)[_0x3f8830(0xfc)]>0x0){const _0x2fbd64=Object[_0x3f8830(0x101)](_0x22b8eb),_0x395e2b=Math[_0x3f8830(0xe7)](..._0x2fbd64[_0x3f8830(0x10e)](_0x5b541a=>_0x5b541a[_0x3f8830(0xfc)]));_0x25017c[_0x3f8830(0x108)]('\x20\x20AVAILABLE\x20SCRIPTS\x20\x20(current\x20project)');for(const [_0xb82e12,_0x236522]of Object[_0x3f8830(0xf0)](_0x22b8eb)){_0x25017c[_0x3f8830(0x108)](_0x3f8830(0xe3)+CLI_BIN_NAME+_0x3f8830(0x113)+_0xb82e12[_0x3f8830(0xfe)](_0x395e2b+0x2)+'#\x20'+_0x236522);}}else _0x25017c[_0x3f8830(0x108)](_0x3f8830(0x10a)),_0x25017c[_0x3f8830(0x108)]('\x20\x20\x20\x20'+CLI_BIN_NAME+'\x20run\x20start'),_0x25017c[_0x3f8830(0x108)](_0x3f8830(0xe3)+CLI_BIN_NAME+_0x3f8830(0xee)),_0x25017c[_0x3f8830(0x108)](_0x3f8830(0xe3)+CLI_BIN_NAME+_0x3f8830(0xf2)),_0x25017c[_0x3f8830(0x108)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x3f8830(0xf9));return _0x25017c[_0x3f8830(0x116)]('\x0a');},async 'execute'(_0x5b8cc8){const _0xd224c1=a112_0x1e459f,_0x1d3810=process[_0xd224c1(0xf8)](),_0x1b016e=_0x5b8cc8['args'][0x0],_0x57c608=_0x5b8cc8[_0xd224c1(0xe0)][_0xd224c1(0xea)](0x1),_0x4459d4=readPackageScripts(_0x1d3810);if(!_0x4459d4)throw CliErrors['validation'](_0xd224c1(0x10f));if(!_0x1b016e){const _0x587dd4=Object['keys'](_0x4459d4);if(_0x587dd4[_0xd224c1(0xfc)]===0x0)console['log']('No\x20scripts\x20defined\x20in\x20package.json.');else{console['log']('\x0a\x20\x20Available\x20scripts:\x0a');const _0x3a609b=Math[_0xd224c1(0xe7)](..._0x587dd4[_0xd224c1(0x10e)](_0x48a494=>_0x48a494[_0xd224c1(0xfc)]));for(const [_0x58babc,_0x155d5a]of Object['entries'](_0x4459d4)){console[_0xd224c1(0x106)](_0xd224c1(0xe3)+_0x58babc[_0xd224c1(0xfe)](_0x3a609b+0x2)+_0x155d5a);}console[_0xd224c1(0x106)]('\x0a\x20\x20Usage:\x20'+CLI_BIN_NAME+_0xd224c1(0xdb));}return{'ok':!![]};}if(!_0x4459d4[_0x1b016e])throw CliErrors[_0xd224c1(0xec)]('Script\x20\x22'+_0x1b016e+_0xd224c1(0x112),_0xd224c1(0xde)+(Object['keys'](_0x4459d4)['join'](',\x20')||_0xd224c1(0xdf)));const _0x6c8b1b=detectPackageManager(_0x1d3810);VERSION_CHECK_SCRIPTS[_0xd224c1(0xfb)](_0x1b016e)&&await versionCheck(_0x1d3810);if(_0x1b016e==='preview'&&_0x5b8cc8[_0xd224c1(0xef)](_0xd224c1(0xe5)))return await Promise['all']([spawnViteBuildWatch(_0x1d3810),spawnVitePreview(_0x1d3810)]),{'ok':!![]};return await spawnScript(_0x6c8b1b,_0x1b016e,_0x57c608,_0x1d3810),{'ok':!![]};}};
|
package/lib/commands/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a113_0x242996=a113_0x320f;function a113_0x320f(_0x1530e1,_0x3b80d6){_0x1530e1=_0x1530e1-0x1c4;const _0x5c7b4b=a113_0x5c7b();let _0x320f99=_0x5c7b4b[_0x1530e1];return _0x320f99;}(function(_0x39157b,_0x3f1881){const _0x228a63=a113_0x320f,_0x453f8f=_0x39157b();while(!![]){try{const _0x1adcb2=parseInt(_0x228a63(0x1ce))/0x1+-parseInt(_0x228a63(0x1c7))/0x2+parseInt(_0x228a63(0x1c6))/0x3*(-parseInt(_0x228a63(0x1c8))/0x4)+parseInt(_0x228a63(0x1c4))/0x5*(-parseInt(_0x228a63(0x1cd))/0x6)+-parseInt(_0x228a63(0x1cc))/0x7+-parseInt(_0x228a63(0x1c5))/0x8+parseInt(_0x228a63(0x1cb))/0x9;if(_0x1adcb2===_0x3f1881)break;else _0x453f8f['push'](_0x453f8f['shift']());}catch(_0x59b941){_0x453f8f['push'](_0x453f8f['shift']());}}}(a113_0x5c7b,0x28193));import{buildSchemaPayload}from'../framework/schema-export.js';async function execute(_0x56af11){const _0x341b5b=await buildSchemaPayload();return{'ok':!![],'data':_0x341b5b};}export const schemaDefinition={'service':'schema','command':'export','description':a113_0x242996(0x1cf),'risk':a113_0x242996(0x1c9),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a113_0x242996(0x1ca),'flags':[],'execute':execute};function a113_0x5c7b(){const _0x2757bb=['40032hnukxi','15cukIyw','109278zPfQIv','14992iDHVYM','read','json','3834279Probdd','2006193evmWlu','1301556vhOzkJ','320120vBPNiD','Export\x20machine-readable\x20command\x20schema\x20(JSON)','5rPiVaw'];a113_0x5c7b=function(){return _0x2757bb;};return a113_0x5c7b();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a114_0x3dee3c=a114_0x4747;(function(_0x4dd02d,_0x117c48){const _0xcafaf6=a114_0x4747,_0xebc331=_0x4dd02d();while(!![]){try{const _0x41bfc0=-parseInt(_0xcafaf6(0x179))/0x1*(-parseInt(_0xcafaf6(0x17c))/0x2)+-parseInt(_0xcafaf6(0x180))/0x3*(-parseInt(_0xcafaf6(0x17d))/0x4)+parseInt(_0xcafaf6(0x171))/0x5*(parseInt(_0xcafaf6(0x18a))/0x6)+-parseInt(_0xcafaf6(0x17f))/0x7+-parseInt(_0xcafaf6(0x191))/0x8*(parseInt(_0xcafaf6(0x174))/0x9)+parseInt(_0xcafaf6(0x18c))/0xa*(-parseInt(_0xcafaf6(0x178))/0xb)+parseInt(_0xcafaf6(0x184))/0xc*(parseInt(_0xcafaf6(0x17b))/0xd);if(_0x41bfc0===_0x117c48)break;else _0xebc331['push'](_0xebc331['shift']());}catch(_0x31ac4c){_0xebc331['push'](_0xebc331['shift']());}}}(a114_0x3a14,0xdaebb));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE}from'../../skills/npx-skills-add.js';function a114_0x3a14(){const _0x4deca8=['Check\x20network\x20connectivity\x20and\x20try\x20again.','setLogPath','18lEUtPA','执行安装技能包命令(委托给\x20npx\x20skills\x20add\x20-g\x20-y)','skill-install','\x20skill\x20installed','2453gJCAtT','1TGKfBU','../../skills/npx-skills-add.js','598rxFdog','2889006GGipAe','4NLpQDq','lovrabet/rabetbase','9066022LTTMbR','4616643QVWaiE','skill','Skipped\x20npx\x20(RABETBASE_SKIP_NPX_SKILLS=1);\x20assuming\x20skill\x20is\x20already\x20present.','error','76344UbOErW','write','Install\x20developer\x20skill\x20package','apiError','Installing\x20official\x20skill\x20via\x20npx\x20(','unknown','54IzwKol','log','700TAvTDT','pipe','inherit','nonInteractive',')...','5672528wyoKkC','cwd','194195BKjQyc'];a114_0x3a14=function(){return _0x4deca8;};return a114_0x3a14();}function a114_0x4747(_0x43795b,_0x4db2e6){_0x43795b=_0x43795b-0x171;const _0x3a14da=a114_0x3a14();let _0x47479c=_0x3a14da[_0x43795b];return _0x47479c;}export const skillDefinitions=[{'service':a114_0x3dee3c(0x181),'command':'install','description':a114_0x3dee3c(0x186),'risk':a114_0x3dee3c(0x185),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x325421){const _0x45f2d6=a114_0x3dee3c;logger[_0x45f2d6(0x173)](process['cwd']()),logger['info'](_0x45f2d6(0x176),_0x45f2d6(0x175));const {runNpxSkillsAddGlobal:_0x110b46}=await import(_0x45f2d6(0x17a)),_0x43fd47=_0x325421[_0x45f2d6(0x18f)]?_0x45f2d6(0x18d):_0x45f2d6(0x18e);console[_0x45f2d6(0x18b)](_0x45f2d6(0x188)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+_0x45f2d6(0x190));const _0x441878=_0x110b46(process[_0x45f2d6(0x192)](),_0x45f2d6(0x17e),{'stdio':_0x43fd47});if(_0x441878['skipped'])console[_0x45f2d6(0x18b)](_0x45f2d6(0x182));else{if(_0x441878['ok'])console['log'](CLI_BIN_NAME+_0x45f2d6(0x177));else throw CliErrors[_0x45f2d6(0x187)]('npx\x20skills\x20add\x20failed:\x20'+(_0x441878[_0x45f2d6(0x183)]||_0x45f2d6(0x189)),_0x45f2d6(0x172));}return{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a114_0x53adff=a114_0x51a8;(function(_0x3d7574,_0x4d2b21){const _0x48b020=a114_0x51a8,_0xba76da=_0x3d7574();while(!![]){try{const _0x779122=-parseInt(_0x48b020(0x10c))/0x1+-parseInt(_0x48b020(0x11a))/0x2+-parseInt(_0x48b020(0x121))/0x3*(parseInt(_0x48b020(0x142))/0x4)+parseInt(_0x48b020(0x13f))/0x5+parseInt(_0x48b020(0x123))/0x6*(-parseInt(_0x48b020(0x106))/0x7)+parseInt(_0x48b020(0x144))/0x8*(-parseInt(_0x48b020(0x137))/0x9)+parseInt(_0x48b020(0x140))/0xa*(parseInt(_0x48b020(0x133))/0xb);if(_0x779122===_0x4d2b21)break;else _0xba76da['push'](_0xba76da['shift']());}catch(_0x70e84b){_0xba76da['push'](_0xba76da['shift']());}}}(a114_0x5070,0xab510));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';function a114_0x51a8(_0xbe0407,_0x1c461e){_0xbe0407=_0xbe0407-0x105;const _0x507014=a114_0x5070();let _0x51a8c8=_0x507014[_0xbe0407];return _0x51a8c8;}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(_0x41d484){const _0xe332e0=a114_0x51a8;if(_0x41d484===_0xe332e0(0x118))return['<select\x20id=\x22query\x22\x20resultType=\x22map\x22>',_0xe332e0(0x148),_0xe332e0(0x117),''][_0xe332e0(0x129)]('\x0a');return[_0xe332e0(0x130),''][_0xe332e0(0x129)]('\x0a');}export const sqlCreate={'service':a114_0x53adff(0x13e),'command':a114_0x53adff(0x122),'description':a114_0x53adff(0x11d),'risk':a114_0x53adff(0x13c),'flags':[{'name':'name','type':a114_0x53adff(0x112),'description':'SQL\x20query\x20display\x20name'},{'name':a114_0x53adff(0x11e),'type':a114_0x53adff(0x13d),'description':'Target\x20database\x20ID'},{'name':'mode','type':'string','enum':['sql',a114_0x53adff(0x118)],'description':'Local\x20SQL\x20file\x20mode'}],async 'validate'(_0xa36ab4){const _0x5abc8e=a114_0x53adff;if(!_0xa36ab4[_0x5abc8e(0x10e)])return;if(!_0xa36ab4[_0x5abc8e(0x12b)](_0x5abc8e(0x147))['trim']())throw CliErrors[_0x5abc8e(0x114)](_0x5abc8e(0x147),_0x5abc8e(0x12a));const _0x5b6ce7=resolveProvidedDbId(_0xa36ab4);if(typeof _0x5b6ce7!==_0x5abc8e(0x13d)||!Number[_0x5abc8e(0x109)](_0x5b6ce7)||_0x5b6ce7<=0x0)throw CliErrors[_0x5abc8e(0x114)](_0x5abc8e(0x11e),_0x5abc8e(0x134));if(!_0xa36ab4[_0x5abc8e(0x12b)](_0x5abc8e(0x13a))['trim']())throw CliErrors[_0x5abc8e(0x114)](_0x5abc8e(0x13a),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');},async 'dryRun'(_0x15ae41){const _0x5b4dc4=a114_0x53adff,_0x14fc9a=loadSqlProjectConfig(_0x15ae41[_0x5b4dc4(0x125)]),{sqlName:_0x1dd754,dbId:_0x52ebaf,dbName:_0x1e1c18,mode:_0x5f0681}=await resolveSqlNewInputs(_0x15ae41),_0x90760d=buildSqlRelativePath(_0x5b4dc4(0x10d),_0x1dd754,_0x1e1c18,_0x5f0681,_0x52ebaf),_0x454221=_0x14fc9a[_0x5b4dc4(0x10f)]+'/'+_0x90760d;return{'method':_0x5b4dc4(0x146),'url':_0x5b4dc4(0x116),'body':{'appCode':_0x15ae41[_0x5b4dc4(0x125)],'sqlName':_0x1dd754,'dbId':_0x52ebaf,'mode':_0x5f0681,'localPath':_0x454221},'description':_0x5b4dc4(0x107)+_0x14fc9a['sqlRootDir']};},async 'execute'(_0x18ef6e){const _0x5f5b83=a114_0x53adff,_0x43d522=loadSqlProjectConfig(_0x18ef6e[_0x5f5b83(0x125)]),{sqlName:_0x3a0a65,dbId:_0x69e80c,dbName:_0x32ec05,mode:_0x33935a}=await resolveSqlNewInputs(_0x18ef6e),_0x2a8d54=generateSqlTemplate(_0x33935a),_0x5b2a0e=await createSqlQuery({'appCode':_0x18ef6e['appCode'],'sqlName':_0x3a0a65,'dbId':_0x69e80c,'sqlContent':_0x2a8d54}),_0x5b47a6=ensureRemoteSqlContent(_0x5b2a0e),_0x520963=_0x32ec05||await getDbName(_0x18ef6e[_0x5f5b83(0x125)],_0x69e80c)[_0x5f5b83(0x124)](()=>undefined),_0x1e0ea5=buildSqlRelativePath(_0x5b2a0e[_0x5f5b83(0x143)],_0x5b2a0e[_0x5f5b83(0x128)],_0x520963,_0x33935a,_0x69e80c),_0x178793=_0x43d522['sqlRootDir']+'/'+_0x1e0ea5,_0x284912=buildLocalSqlFileContent({'sqlCode':_0x5b2a0e['sqlCode'],'sqlName':_0x5b2a0e[_0x5f5b83(0x128)],'dbId':_0x5b2a0e[_0x5f5b83(0x126)]},_0x5b47a6,{'dbName':_0x520963,'mode':_0x33935a,'syncedAt':new Date()[_0x5f5b83(0x111)](),'description':_0x5b2a0e[_0x5f5b83(0x113)]});if(await fileExists(_0x178793))throw CliErrors[_0x5f5b83(0x136)](_0x5f5b83(0x115)+_0x178793);await ensureParentDirectory(_0x178793),await writeFile(_0x178793,_0x284912,_0x5f5b83(0x138));const _0x152985=await readSqlLockFile(_0x43d522[_0x5f5b83(0x145)]),{lockData:_0x387ea1,appLock:_0x5768d6}=ensureSqlLockScope(_0x152985??createEmptySqlLock(),_0x43d522[_0x5f5b83(0x125)],_0x43d522['sqlRoot'],_0x5f5b83(0x149));return _0x5768d6['sqls'][_0x5b2a0e[_0x5f5b83(0x143)]]={...buildSqlLockEntry(_0x5b2a0e,_0x5b47a6,computeSqlContentHash(_0x284912),{'dbName':_0x520963}),'path':_0x1e0ea5,'mode':_0x33935a},_0x5768d6[_0x5f5b83(0x12c)]=new Date()[_0x5f5b83(0x111)](),await writeSqlLockFile(_0x43d522[_0x5f5b83(0x145)],_0x387ea1),{'ok':!![],'data':{'id':_0x5b2a0e['id'],'sqlCode':_0x5b2a0e[_0x5f5b83(0x143)],'sqlName':_0x5b2a0e[_0x5f5b83(0x128)],'dbId':_0x5b2a0e[_0x5f5b83(0x126)],'path':_0x178793,'mode':_0x33935a},'message':_0x5f5b83(0x10b)+_0x5b2a0e['sqlCode']};}};async function resolveSqlNewInputs(_0x521700){const _0x2fb052=await resolveSqlNameInput(_0x521700),{dbId:_0x127088,dbName:_0x508f68}=await resolveDbSelection(_0x521700),_0x2cad5b=await resolveSqlModeInput(_0x521700);return{'sqlName':_0x2fb052,'dbId':_0x127088,'dbName':_0x508f68,'mode':_0x2cad5b};}async function resolveSqlNameInput(_0x38187e){const _0xbd708d=a114_0x53adff,_0x4b7a45=_0x38187e[_0xbd708d(0x12b)](_0xbd708d(0x147))[_0xbd708d(0x10a)]();if(_0x4b7a45)return _0x4b7a45;if(_0x38187e[_0xbd708d(0x10e)])throw CliErrors[_0xbd708d(0x114)](_0xbd708d(0x147),'--name\x20is\x20required\x20in\x20non-interactive\x20mode.');return(await input({'message':'请输入\x20SQL\x20名称:','validate':_0x349666=>_0x349666[_0xbd708d(0x10a)]()?!![]:_0xbd708d(0x12d)}))[_0xbd708d(0x10a)]();}async function resolveDbSelection(_0xef990e){const _0x60c1a1=a114_0x53adff,_0x467ff8=resolveProvidedDbId(_0xef990e);if(typeof _0x467ff8==='number'&&Number['isFinite'](_0x467ff8)&&_0x467ff8>0x0)return{'dbId':_0x467ff8,'dbName':await getDbName(_0xef990e[_0x60c1a1(0x125)],_0x467ff8)['catch'](()=>undefined)};if(_0xef990e[_0x60c1a1(0x10e)])throw CliErrors[_0x60c1a1(0x114)](_0x60c1a1(0x11e),_0x60c1a1(0x134));const _0x108e29=await listDatabases(_0xef990e['appCode'])['catch'](()=>[]);if(_0x108e29[_0x60c1a1(0x13b)]===0x1)return{'dbId':_0x108e29[0x0][_0x60c1a1(0x126)],'dbName':_0x108e29[0x0][_0x60c1a1(0x139)]};if(_0x108e29['length']>0x1){const _0x370f0c=await select({'message':_0x60c1a1(0x132),'choices':[..._0x108e29[_0x60c1a1(0x120)](_0x45578d=>({'name':_0x45578d[_0x60c1a1(0x139)]+'\x20('+_0x45578d[_0x60c1a1(0x126)]+')','value':serializeDbSelection(_0x45578d)})),{'name':_0x60c1a1(0x131),'value':_0x60c1a1(0x141)}]});if(_0x370f0c!==_0x60c1a1(0x141))return deserializeDbSelection(_0x370f0c);}const _0x192d77=await input({'message':'请输入目标数据库\x20dbId:','validate':_0x12d144=>{const _0x344ded=_0x60c1a1,_0x46ed78=_0x12d144[_0x344ded(0x10a)]();if(!_0x46ed78)return'dbId\x20不能为空';const _0x12ba08=Number(_0x46ed78);if(!Number[_0x344ded(0x105)](_0x12ba08)||_0x12ba08<=0x0)return _0x344ded(0x12f);return!![];}});return{'dbId':Number(_0x192d77[_0x60c1a1(0x10a)]())};}async function resolveSqlModeInput(_0x2887c5){const _0x36863a=a114_0x53adff,_0x1f8595=_0x2887c5[_0x36863a(0x12b)](_0x36863a(0x13a))[_0x36863a(0x10a)]();if(_0x1f8595===_0x36863a(0x13e)||_0x1f8595===_0x36863a(0x118))return _0x1f8595;if(_0x2887c5[_0x36863a(0x10e)])throw CliErrors['flagMissing'](_0x36863a(0x13a),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');return await select({'message':_0x36863a(0x108),'choices':[{'name':_0x36863a(0x110),'value':_0x36863a(0x13e),'description':_0x36863a(0x127)},{'name':_0x36863a(0x12e),'value':_0x36863a(0x118),'description':_0x36863a(0x11c)}]});}function serializeDbSelection(_0x356374){const _0x54ca8=a114_0x53adff;return JSON[_0x54ca8(0x119)]({'dbId':_0x356374[_0x54ca8(0x126)],'dbName':_0x356374[_0x54ca8(0x139)]});}function a114_0x5070(){const _0x288b62=['sqlCode','448xjhfsi','lockFilePath','POST','name','\x20\x20SELECT\x201\x20AS\x20id','new','isInteger','3227SziChj','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','请选择本地\x20SQL\x20模式:','isFinite','trim','Created\x20SQL\x20query\x20','433873XjTrrb','<server-generated-sqlCode>','nonInteractive','sqlRootDir','普通\x20SQL(sql)','toISOString','string','description','flagMissing','File\x20already\x20exists:\x20','/smartapi/custom/saveUserCustomSql','</select>','mybatisXml','stringify','857006wZUfEQ','flag','适合带动态标签的\x20MyBatis\x20XML\x20SQL','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','db-id','parse','map','156zhXDvf','create','10452OuavIm','catch','appCode','dbId','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','sqlName','join','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','str','lastSync','SQL\x20名称不能为空','MyBatis\x20XML(mybatisXml)','dbId\x20必须为正整数','SELECT\x201\x20AS\x20id;','✎\x20手动输入\x20dbId','请选择目标数据库:','11EIyPvL','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','Invalid\x20database\x20selection\x20payload:\x20','validation','1215UmWZMj','utf8','dbName','mode','length','high-risk-write','number','sql','2349595HxtbzB','23475710sVEJGT','__manual__','34060bpkCLy'];a114_0x5070=function(){return _0x288b62;};return a114_0x5070();}function deserializeDbSelection(_0x4754b7){const _0x379193=a114_0x53adff;try{const _0x258977=JSON[_0x379193(0x11f)](_0x4754b7);if(typeof _0x258977[_0x379193(0x126)]===_0x379193(0x13d)&&Number[_0x379193(0x109)](_0x258977['dbId']))return{'dbId':_0x258977[_0x379193(0x126)],'dbName':_0x258977[_0x379193(0x139)]};}catch{}throw CliErrors[_0x379193(0x136)](_0x379193(0x135)+_0x4754b7);}function resolveProvidedDbId(_0x2d6b74){const _0x5912c9=a114_0x53adff,_0x6f332f=_0x2d6b74[_0x5912c9(0x11b)](_0x5912c9(0x11e));if(typeof _0x6f332f===_0x5912c9(0x13d)&&Number[_0x5912c9(0x109)](_0x6f332f))return _0x6f332f;return undefined;}
|
|
1
|
+
const a115_0x203e48=a115_0x5bf8;(function(_0xdaeeee,_0x3749be){const _0x2ee7c9=a115_0x5bf8,_0x4e458e=_0xdaeeee();while(!![]){try{const _0x24716e=parseInt(_0x2ee7c9(0xdf))/0x1+-parseInt(_0x2ee7c9(0xbb))/0x2+-parseInt(_0x2ee7c9(0xcb))/0x3+-parseInt(_0x2ee7c9(0xdd))/0x4+parseInt(_0x2ee7c9(0xbd))/0x5*(parseInt(_0x2ee7c9(0xde))/0x6)+parseInt(_0x2ee7c9(0xc9))/0x7+parseInt(_0x2ee7c9(0x9f))/0x8;if(_0x24716e===_0x3749be)break;else _0x4e458e['push'](_0x4e458e['shift']());}catch(_0x1b9405){_0x4e458e['push'](_0x4e458e['shift']());}}}(a115_0x1fea,0x505a6));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';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 a115_0x5bf8(_0x300e86,_0x47add2){_0x300e86=_0x300e86-0x9f;const _0x1feac1=a115_0x1fea();let _0x5bf853=_0x1feac1[_0x300e86];return _0x5bf853;}function generateSqlTemplate(_0x37ab31){const _0x4febda=a115_0x5bf8;if(_0x37ab31==='mybatisXml')return[_0x4febda(0xd2),_0x4febda(0xbf),_0x4febda(0xb6),''][_0x4febda(0xb5)]('\x0a');return[_0x4febda(0xa2),'']['join']('\x0a');}export const sqlCreate={'service':a115_0x203e48(0xc8),'command':'create','description':a115_0x203e48(0xd5),'risk':a115_0x203e48(0xac),'flags':[{'name':a115_0x203e48(0xb3),'type':a115_0x203e48(0xda),'description':a115_0x203e48(0xba)},{'name':a115_0x203e48(0xcc),'type':'number','description':a115_0x203e48(0xb1)},{'name':a115_0x203e48(0xa3),'type':a115_0x203e48(0xda),'enum':[a115_0x203e48(0xc8),a115_0x203e48(0xb8)],'description':a115_0x203e48(0xc7)}],async 'validate'(_0x3caff2){const _0x1cf0d5=a115_0x203e48;if(!_0x3caff2[_0x1cf0d5(0xc4)])return;if(!_0x3caff2[_0x1cf0d5(0xc1)]('name')[_0x1cf0d5(0xd4)]())throw CliErrors[_0x1cf0d5(0xc6)](_0x1cf0d5(0xb3),_0x1cf0d5(0xca));const _0x28d91b=resolveProvidedDbId(_0x3caff2);if(typeof _0x28d91b!==_0x1cf0d5(0xd7)||!Number[_0x1cf0d5(0xdc)](_0x28d91b)||_0x28d91b<=0x0)throw CliErrors['flagMissing'](_0x1cf0d5(0xcc),_0x1cf0d5(0xa9));if(!_0x3caff2[_0x1cf0d5(0xc1)](_0x1cf0d5(0xa3))[_0x1cf0d5(0xd4)]())throw CliErrors['flagMissing'](_0x1cf0d5(0xa3),_0x1cf0d5(0xad));},async 'dryRun'(_0x4801bb){const _0x22b999=a115_0x203e48,_0xfe4c68=loadSqlProjectConfig(_0x4801bb[_0x22b999(0xa8)]),{sqlName:_0x1ee44f,dbId:_0x85bab8,dbName:_0x3d049c,mode:_0x27f05f}=await resolveSqlNewInputs(_0x4801bb),_0x29e64b=buildSqlRelativePath(_0x22b999(0xae),_0x1ee44f,_0x3d049c,_0x27f05f,_0x85bab8),_0x3c695b=_0xfe4c68[_0x22b999(0xa1)]+'/'+_0x29e64b;return{'method':'POST','url':_0x22b999(0xb7),'body':{'appCode':_0x4801bb[_0x22b999(0xa8)],'sqlName':_0x1ee44f,'dbId':_0x85bab8,'mode':_0x27f05f,'localPath':_0x3c695b},'description':_0x22b999(0xbc)+_0xfe4c68[_0x22b999(0xa1)]};},async 'execute'(_0x5b9f3f){const _0x51619f=a115_0x203e48,_0x49a561=loadSqlProjectConfig(_0x5b9f3f[_0x51619f(0xa8)]),{sqlName:_0x157e6a,dbId:_0x47a279,dbName:_0x4b6de0,mode:_0x454227}=await resolveSqlNewInputs(_0x5b9f3f),_0x11ede8=generateSqlTemplate(_0x454227),_0x5117c1=await createSqlQuery({'appCode':_0x5b9f3f[_0x51619f(0xa8)],'sqlName':_0x157e6a,'dbId':_0x47a279,'sqlContent':_0x11ede8}),_0x38d3bc=ensureRemoteSqlContent(_0x5117c1),_0x590a97=_0x4b6de0||await getDbName(_0x5b9f3f['appCode'],_0x47a279)[_0x51619f(0xc5)](()=>undefined),_0x558724=buildSqlRelativePath(_0x5117c1[_0x51619f(0xcf)],_0x5117c1[_0x51619f(0xbe)],_0x590a97,_0x454227,_0x47a279),_0x1900a8=_0x49a561[_0x51619f(0xa1)]+'/'+_0x558724,_0x5b4f2e=buildLocalSqlFileContent({'sqlCode':_0x5117c1[_0x51619f(0xcf)],'sqlName':_0x5117c1['sqlName'],'dbId':_0x5117c1[_0x51619f(0xa6)]},_0x38d3bc,{'dbName':_0x590a97,'mode':_0x454227,'syncedAt':new Date()['toISOString'](),'description':_0x5117c1['description']});if(await fileExists(_0x1900a8))throw CliErrors[_0x51619f(0xd9)](_0x51619f(0xc2)+_0x1900a8);await ensureParentDirectory(_0x1900a8),await writeFile(_0x1900a8,_0x5b4f2e,_0x51619f(0xa4));const _0x554980=await readSqlLockFile(_0x49a561[_0x51619f(0xa5)]),{lockData:_0x56d19c,appLock:_0x16e350}=ensureSqlLockScope(_0x554980??createEmptySqlLock(),_0x49a561[_0x51619f(0xa8)],_0x49a561['sqlRoot'],_0x51619f(0xab));return _0x16e350[_0x51619f(0xc3)][_0x5117c1[_0x51619f(0xcf)]]={...buildSqlLockEntry(_0x5117c1,_0x38d3bc,computeSqlContentHash(_0x5b4f2e),{'dbName':_0x590a97}),'path':_0x558724,'mode':_0x454227},_0x16e350[_0x51619f(0xd6)]=new Date()[_0x51619f(0xa7)](),await writeSqlLockFile(_0x49a561[_0x51619f(0xa5)],_0x56d19c),{'ok':!![],'data':{'id':_0x5117c1['id'],'sqlCode':_0x5117c1['sqlCode'],'sqlName':_0x5117c1[_0x51619f(0xbe)],'dbId':_0x5117c1[_0x51619f(0xa6)],'path':_0x1900a8,'mode':_0x454227},'message':'Created\x20SQL\x20query\x20'+_0x5117c1['sqlCode']};}};function a115_0x1fea(){const _0x24a61b=['new','high-risk-write','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','<server-generated-sqlCode>','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','stringify','Target\x20database\x20ID','请输入\x20SQL\x20名称:','name','SQL\x20名称不能为空','join','</select>','/smartapi/custom/saveUserCustomSql','mybatisXml','MyBatis\x20XML(mybatisXml)','SQL\x20query\x20display\x20name','697392ihArfj','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','193430jyfBlo','sqlName','\x20\x20SELECT\x201\x20AS\x20id','dbName','str','File\x20already\x20exists:\x20','sqls','nonInteractive','catch','flagMissing','Local\x20SQL\x20file\x20mode','sql','1261708jittWb','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','92688rVeZBr','db-id','isInteger','__manual__','sqlCode','length','parse','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','请输入目标数据库\x20dbId:','trim','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','lastSync','number','普通\x20SQL(sql)','validation','string','flag','isFinite','879024sSjSvn','24XoVpAw','302174WlcDBq','2330496DZpGDl','请选择本地\x20SQL\x20模式:','sqlRootDir','SELECT\x201\x20AS\x20id;','mode','utf8','lockFilePath','dbId','toISOString','appCode','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','map'];a115_0x1fea=function(){return _0x24a61b;};return a115_0x1fea();}async function resolveSqlNewInputs(_0x20e4be){const _0x1d3442=await resolveSqlNameInput(_0x20e4be),{dbId:_0x5a56c2,dbName:_0x54b4bf}=await resolveDbSelection(_0x20e4be),_0x5f1472=await resolveSqlModeInput(_0x20e4be);return{'sqlName':_0x1d3442,'dbId':_0x5a56c2,'dbName':_0x54b4bf,'mode':_0x5f1472};}async function resolveSqlNameInput(_0x21cd36){const _0x50c8ce=a115_0x203e48,_0x2d20c9=_0x21cd36['str'](_0x50c8ce(0xb3))[_0x50c8ce(0xd4)]();if(_0x2d20c9)return _0x2d20c9;if(_0x21cd36[_0x50c8ce(0xc4)])throw CliErrors['flagMissing']('name','--name\x20is\x20required\x20in\x20non-interactive\x20mode.');return(await input({'message':_0x50c8ce(0xb2),'validate':_0x33af4c=>_0x33af4c[_0x50c8ce(0xd4)]()?!![]:_0x50c8ce(0xb4)}))[_0x50c8ce(0xd4)]();}async function resolveDbSelection(_0x2ad7c9){const _0x22bdee=a115_0x203e48,_0x5b1d8c=resolveProvidedDbId(_0x2ad7c9);if(typeof _0x5b1d8c===_0x22bdee(0xd7)&&Number['isFinite'](_0x5b1d8c)&&_0x5b1d8c>0x0)return{'dbId':_0x5b1d8c,'dbName':await getDbName(_0x2ad7c9[_0x22bdee(0xa8)],_0x5b1d8c)[_0x22bdee(0xc5)](()=>undefined)};if(_0x2ad7c9[_0x22bdee(0xc4)])throw CliErrors[_0x22bdee(0xc6)](_0x22bdee(0xcc),_0x22bdee(0xa9));const _0x48b3ec=await listDatabases(_0x2ad7c9[_0x22bdee(0xa8)])[_0x22bdee(0xc5)](()=>[]);if(_0x48b3ec[_0x22bdee(0xd0)]===0x1)return{'dbId':_0x48b3ec[0x0][_0x22bdee(0xa6)],'dbName':_0x48b3ec[0x0][_0x22bdee(0xc0)]};if(_0x48b3ec[_0x22bdee(0xd0)]>0x1){const _0x41ee16=await select({'message':'请选择目标数据库:','choices':[..._0x48b3ec[_0x22bdee(0xaa)](_0x4efc7e=>({'name':_0x4efc7e[_0x22bdee(0xc0)]+'\x20('+_0x4efc7e[_0x22bdee(0xa6)]+')','value':serializeDbSelection(_0x4efc7e)})),{'name':'✎\x20手动输入\x20dbId','value':_0x22bdee(0xce)}]});if(_0x41ee16!==_0x22bdee(0xce))return deserializeDbSelection(_0x41ee16);}const _0x690401=await input({'message':_0x22bdee(0xd3),'validate':_0x4f19b6=>{const _0x305e9f=_0x22bdee,_0xe729e7=_0x4f19b6['trim']();if(!_0xe729e7)return'dbId\x20不能为空';const _0x320c25=Number(_0xe729e7);if(!Number[_0x305e9f(0xcd)](_0x320c25)||_0x320c25<=0x0)return'dbId\x20必须为正整数';return!![];}});return{'dbId':Number(_0x690401[_0x22bdee(0xd4)]())};}async function resolveSqlModeInput(_0x110d22){const _0x32dca7=a115_0x203e48,_0x3fe0f6=_0x110d22[_0x32dca7(0xc1)]('mode')['trim']();if(_0x3fe0f6==='sql'||_0x3fe0f6===_0x32dca7(0xb8))return _0x3fe0f6;if(_0x110d22['nonInteractive'])throw CliErrors[_0x32dca7(0xc6)](_0x32dca7(0xa3),_0x32dca7(0xad));return await select({'message':_0x32dca7(0xa0),'choices':[{'name':_0x32dca7(0xd8),'value':_0x32dca7(0xc8),'description':_0x32dca7(0xaf)},{'name':_0x32dca7(0xb9),'value':'mybatisXml','description':'适合带动态标签的\x20MyBatis\x20XML\x20SQL'}]});}function serializeDbSelection(_0x13ee50){const _0x182155=a115_0x203e48;return JSON[_0x182155(0xb0)]({'dbId':_0x13ee50[_0x182155(0xa6)],'dbName':_0x13ee50['dbName']});}function deserializeDbSelection(_0x3d3dc8){const _0x565d35=a115_0x203e48;try{const _0x103f24=JSON[_0x565d35(0xd1)](_0x3d3dc8);if(typeof _0x103f24[_0x565d35(0xa6)]===_0x565d35(0xd7)&&Number[_0x565d35(0xdc)](_0x103f24[_0x565d35(0xa6)]))return{'dbId':_0x103f24[_0x565d35(0xa6)],'dbName':_0x103f24['dbName']};}catch{}throw CliErrors[_0x565d35(0xd9)]('Invalid\x20database\x20selection\x20payload:\x20'+_0x3d3dc8);}function resolveProvidedDbId(_0x1695e0){const _0x160f41=a115_0x203e48,_0x56c1f9=_0x1695e0[_0x160f41(0xdb)]('db-id');if(typeof _0x56c1f9===_0x160f41(0xd7)&&Number[_0x160f41(0xdc)](_0x56c1f9))return _0x56c1f9;return undefined;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a116_0x514f(){const _0x111444=['279934Kiyqai','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20','remoteId','3355732NVzWbg','sqlcode','fromEntries','trashedTo','1958iQkvZN','30OpCdZa','appCode','/smartapi/custom/deleteUserCustomSql','projectRoot','high-risk-write','56BmaJNf','toISOString','785624ZBSjuX','lockFilePath','delete','length','sqlRoot','Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','entries','Would\x20delete\x20SQL\x20','2703321olFNEC','trashDir','validation','80436LFHuJW','2265eqxFQm','str','6425xMBeOT','440QxTvzm','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','sql','3426zTqwLn','sqlRootDir','sqls'];a116_0x514f=function(){return _0x111444;};return a116_0x514f();}const a116_0x4f70ec=a116_0x5d61;(function(_0x107a8a,_0x57679){const _0x2ec19e=a116_0x5d61,_0x5c0b0c=_0x107a8a();while(!![]){try{const _0x3d2180=-parseInt(_0x2ec19e(0x1eb))/0x1+-parseInt(_0x2ec19e(0x1f2))/0x2*(-parseInt(_0x2ec19e(0x1e1))/0x3)+parseInt(_0x2ec19e(0x1ee))/0x4+-parseInt(_0x2ec19e(0x1e3))/0x5*(-parseInt(_0x2ec19e(0x1e8))/0x6)+parseInt(_0x2ec19e(0x1fa))/0x7*(-parseInt(_0x2ec19e(0x1f8))/0x8)+parseInt(_0x2ec19e(0x202))/0x9*(-parseInt(_0x2ec19e(0x1f3))/0xa)+-parseInt(_0x2ec19e(0x1e4))/0xb*(-parseInt(_0x2ec19e(0x1e0))/0xc);if(_0x3d2180===_0x57679)break;else _0x5c0b0c['push'](_0x5c0b0c['shift']());}catch(_0x386ca3){_0x5c0b0c['push'](_0x5c0b0c['shift']());}}}(a116_0x514f,0x95b94));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';function a116_0x5d61(_0xe96248,_0x2e77d5){_0xe96248=_0xe96248-0x1de;const _0x514f39=a116_0x514f();let _0x5d610e=_0x514f39[_0xe96248];return _0x5d610e;}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':a116_0x4f70ec(0x1e7),'command':a116_0x4f70ec(0x1fc),'description':a116_0x4f70ec(0x1ff),'risk':a116_0x4f70ec(0x1f7),'flags':[SQLCODE_FLAG],async 'validate'(_0x339d68){const _0x34633a=a116_0x4f70ec,_0x45295f=loadSqlProjectConfig(_0x339d68['appCode']),_0x5f4ad5=await readSqlLockFile(_0x45295f[_0x34633a(0x1fb)]);if(!_0x5f4ad5)throw CliErrors[_0x34633a(0x1df)](_0x34633a(0x1e6));},async 'dryRun'(_0x354ea1){const _0x404249=a116_0x4f70ec,_0xa0c902=loadSqlProjectConfig(_0x354ea1[_0x404249(0x1f4)]),_0x1ad93e=await readSqlLockFile(_0xa0c902[_0x404249(0x1fb)]);if(!_0x1ad93e)throw CliErrors[_0x404249(0x1df)](_0x404249(0x1e6));const {appLock:_0x3a0989}=ensureSqlLockScope(_0x1ad93e,_0x354ea1[_0x404249(0x1f4)],_0xa0c902[_0x404249(0x1fe)],_0x404249(0x1fc)),_0x119898=_0x354ea1['str']('sqlcode'),_0xbf6b3c=_0x3a0989[_0x404249(0x1ea)][_0x119898];if(!_0xbf6b3c)throw CliErrors[_0x404249(0x1df)](_0x404249(0x1e5)+_0x119898+'\x22.');return{'method':'POST','url':_0x404249(0x1f5),'body':{'sqlCode':_0x119898,'id':_0xbf6b3c[_0x404249(0x1ed)],'localPath':resolveLocalSqlFilePath(_0xa0c902,_0x119898,_0xbf6b3c)},'description':_0x404249(0x201)+_0x119898+_0x404249(0x1ec)+_0xa0c902[_0x404249(0x1de)]};},async 'execute'(_0x168bff){const _0x2361cf=a116_0x4f70ec,_0x1be4ea=loadSqlProjectConfig(_0x168bff[_0x2361cf(0x1f4)]),_0x1e7357=await readSqlLockFile(_0x1be4ea[_0x2361cf(0x1fb)]);if(!_0x1e7357)throw CliErrors['validation']('SQL\x20lock\x20file\x20not\x20found.');const {lockData:_0xa23fd6,appLock:_0x398172}=ensureSqlLockScope(_0x1e7357,_0x168bff[_0x2361cf(0x1f4)],_0x1be4ea[_0x2361cf(0x1fe)],_0x2361cf(0x1fc)),_0x3cbb81=_0x168bff[_0x2361cf(0x1e2)](_0x2361cf(0x1ef)),_0x42566e=_0x398172['sqls'][_0x3cbb81];if(!_0x42566e)throw CliErrors[_0x2361cf(0x1df)](_0x2361cf(0x1e5)+_0x3cbb81+'\x22.');await deleteSqlQuery({'id':_0x42566e['remoteId'],'sqlCode':_0x3cbb81}),_0x398172['sqls']=Object[_0x2361cf(0x1f0)](Object[_0x2361cf(0x200)](_0x398172[_0x2361cf(0x1ea)])['filter'](([_0x20c9d6])=>_0x20c9d6!==_0x3cbb81)),_0x398172['lastSync']=new Date()['toISOString'](),await writeSqlLockFile(_0x1be4ea['lockFilePath'],_0xa23fd6);const _0x28c645=resolveLocalSqlFilePath(_0x1be4ea,_0x3cbb81,_0x42566e);let _0x1369a0;await fileExists(_0x28c645)&&(_0x1369a0=await moveToTrash(_0x1be4ea[_0x2361cf(0x1f6)],_0x1be4ea['trashDir'],_0x28c645),await cleanupEmptyDirectories(dirname(_0x28c645),_0x1be4ea[_0x2361cf(0x1e9)]));const _0x5158fe={'deleted':_0x3cbb81,'remoteId':_0x42566e[_0x2361cf(0x1ed)]};if(_0x1369a0)_0x5158fe[_0x2361cf(0x1f1)]=_0x1369a0;return{'ok':!![],'data':_0x5158fe,'message':'Deleted\x20'+_0x3cbb81+(_0x1369a0?'\x20(local\x20file\x20moved\x20to\x20trash)':'')};}};async function moveToTrash(_0x207b6b,_0x3e7336,_0x317b49){const _0x20e07e=a116_0x4f70ec,_0x5d478d=new Date()[_0x20e07e(0x1f9)]()['replace'](/[:.]/g,'-'),_0x17b738=relative(_0x207b6b,_0x317b49),_0x1e6396=join(_0x3e7336,_0x5d478d,_0x17b738);return await mkdir(dirname(_0x1e6396),{'recursive':!![]}),await rename(_0x317b49,_0x1e6396),_0x1e6396;}async function cleanupEmptyDirectories(_0x4057dd,_0x4d5431){const _0x2180b5=a116_0x4f70ec;let _0x44c0ec=resolve(_0x4057dd);const _0x593c57=resolve(_0x4d5431);while(_0x44c0ec['startsWith'](''+_0x593c57+sep)||_0x44c0ec===_0x593c57){if(_0x44c0ec===_0x593c57)return;try{const _0x230b9f=await readdir(_0x44c0ec);if(_0x230b9f[_0x2180b5(0x1fd)]>0x0)return;await rmdir(_0x44c0ec);}catch{return;}_0x44c0ec=dirname(_0x44c0ec);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a117_0x1338df=a117_0x5857;(function(_0x116c39,_0xa1bceb){const _0x5dc64f=a117_0x5857,_0x2596f6=_0x116c39();while(!![]){try{const _0x1abdfd=-parseInt(_0x5dc64f(0x10f))/0x1*(-parseInt(_0x5dc64f(0x114))/0x2)+-parseInt(_0x5dc64f(0x119))/0x3*(-parseInt(_0x5dc64f(0x112))/0x4)+-parseInt(_0x5dc64f(0x110))/0x5*(-parseInt(_0x5dc64f(0x117))/0x6)+parseInt(_0x5dc64f(0x109))/0x7+parseInt(_0x5dc64f(0x11b))/0x8*(-parseInt(_0x5dc64f(0x10e))/0x9)+parseInt(_0x5dc64f(0x10a))/0xa+-parseInt(_0x5dc64f(0x11d))/0xb;if(_0x1abdfd===_0xa1bceb)break;else _0x2596f6['push'](_0x2596f6['shift']());}catch(_0x4c9417){_0x2596f6['push'](_0x2596f6['shift']());}}}(a117_0x3f66,0x4a1c3));import{getSqlQueryInfo}from'../../core/api-client.js';function a117_0x5857(_0x261790,_0xca03b){_0x261790=_0x261790-0x109;const _0x3f6626=a117_0x3f66();let _0x58575c=_0x3f6626[_0x261790];return _0x58575c;}import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';function a117_0x3f66(){const _0x52c06f=['verbose','sql','dbId','108MMMoZQ','200042GpledY','12185uJnNSB','sqlName','4fWzYZf','sqlCode','2JlmKxh','Return\x20full\x20raw\x20SQL\x20query\x20object','appCode','30qdDERg','str','663492LCagBd','detail','176296oSFEdM','sqlContent','880880Xaqfsm','Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','boolean','511595XobKNZ','1416030FnYQOJ'];a117_0x3f66=function(){return _0x52c06f;};return a117_0x3f66();}export const sqlDetail={'service':a117_0x1338df(0x10c),'command':a117_0x1338df(0x11a),'description':a117_0x1338df(0x11e),'risk':'read','flags':[SQLCODE_FLAG,{'name':'verbose','type':a117_0x1338df(0x11f),'description':a117_0x1338df(0x115)}],async 'execute'(_0x23c3d7){const _0x15f936=a117_0x1338df,_0x52c185=await getSqlQueryInfo(_0x23c3d7[_0x15f936(0x116)],_0x23c3d7[_0x15f936(0x118)]('sqlcode')),_0x11c14f=_0x23c3d7['bool'](_0x15f936(0x10b));if(_0x11c14f)return{'ok':!![],'data':_0x52c185};const _0x32b86b=_0x52c185['dbId']?await getDbName(_0x23c3d7[_0x15f936(0x116)],_0x52c185[_0x15f936(0x10d)]):undefined;return{'ok':!![],'data':{'sqlCode':_0x52c185[_0x15f936(0x113)],'sqlName':_0x52c185[_0x15f936(0x111)],'db':_0x32b86b?_0x32b86b+'\x20('+_0x52c185['dbId']+')':_0x52c185[_0x15f936(0x10d)]??'','description':_0x52c185['description']??'','sqlContent':_0x52c185[_0x15f936(0x11c)]??''}};}};
|
package/lib/commands/sql/exec.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a118_0x5606(_0x2e5cda,_0x257f2e){_0x2e5cda=_0x2e5cda-0xa5;const _0x3ba0ef=a118_0x3ba0();let _0x5606a6=_0x3ba0ef[_0x2e5cda];return _0x5606a6;}const a118_0x3b1a9c=a118_0x5606;(function(_0x4fbc6e,_0x3f28a6){const _0x156064=a118_0x5606,_0x192204=_0x4fbc6e();while(!![]){try{const _0x4d9a72=parseInt(_0x156064(0xb8))/0x1*(parseInt(_0x156064(0xbb))/0x2)+parseInt(_0x156064(0xb1))/0x3*(-parseInt(_0x156064(0xaf))/0x4)+-parseInt(_0x156064(0xae))/0x5*(parseInt(_0x156064(0xbf))/0x6)+parseInt(_0x156064(0xba))/0x7*(-parseInt(_0x156064(0xb2))/0x8)+-parseInt(_0x156064(0xb9))/0x9+parseInt(_0x156064(0xa8))/0xa*(parseInt(_0x156064(0xb3))/0xb)+parseInt(_0x156064(0xa9))/0xc*(parseInt(_0x156064(0xbc))/0xd);if(_0x4d9a72===_0x3f28a6)break;else _0x192204['push'](_0x192204['shift']());}catch(_0x43e7cb){_0x192204['push'](_0x192204['shift']());}}}(a118_0x3ba0,0x35c1a));import{executeSql}from'../../core/api-client.js';function a118_0x3ba0(){const _0x5d508c=['2462571uSaoRn','42217iCruBC','2vHFNUp','10029097KHcKow','execSuccess','now','6822dhWziH','execError','SQL\x20execution\x20failed','params','sqlcode','190TfcxOo','12rmIZTn','isArray','execResult','string','str','1555zPMkgb','9808xFhSpA','Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode','321FLjqZB','136ASvWcw','112035TmBMmE','appCode','length','read','sql','247319hkHHWU'];a118_0x3ba0=function(){return _0x5d508c;};return a118_0x3ba0();}import{SQLCODE_FLAG}from'../../commands/common/flags.js';import{parseJsonParams}from'../../utils/params.js';export const sqlExec={'service':a118_0x3b1a9c(0xb7),'command':'exec','description':a118_0x3b1a9c(0xb0),'risk':a118_0x3b1a9c(0xb6),'flags':[SQLCODE_FLAG,{'name':a118_0x3b1a9c(0xa6),'type':a118_0x3b1a9c(0xac),'description':'SQL\x20parameters\x20as\x20JSON\x20string\x20(e.g.\x20\x27{\x22key\x22:\x22value\x22}\x27)'}],async 'execute'(_0x48fc13){const _0x25bba2=a118_0x3b1a9c,_0xc99b57=parseJsonParams(_0x48fc13[_0x25bba2(0xad)](_0x25bba2(0xa6))),_0x208482=Date[_0x25bba2(0xbe)](),_0x2c6ba7=await executeSql(_0x48fc13[_0x25bba2(0xb4)],_0x48fc13[_0x25bba2(0xad)](_0x25bba2(0xa7)),_0xc99b57),_0x5f2a19=Date['now']()-_0x208482,_0x11dbc4=_0x2c6ba7?.[_0x25bba2(0xab)]??_0x2c6ba7,_0x51e304=_0x2c6ba7?.[_0x25bba2(0xbd)]??!![];if(!_0x51e304)return{'ok':![],'data':{'error':_0x2c6ba7?.[_0x25bba2(0xc0)]||_0x25bba2(0xa5),'elapsed':_0x5f2a19},'message':_0x25bba2(0xa5)};const _0x2a1350=Array[_0x25bba2(0xaa)](_0x11dbc4)?_0x11dbc4:[];return{'ok':!![],'data':{'rows':_0x2a1350,'rowCount':_0x2a1350[_0x25bba2(0xb5)],'elapsed':_0x5f2a19},'message':'Returned\x20'+_0x2a1350[_0x25bba2(0xb5)]+'\x20row(s)\x20in\x20'+_0x5f2a19+'ms'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x405802,_0xfddc30){const _0x3998d0=a119_0x1025,_0x366cfd=_0x405802();while(!![]){try{const _0x473d83=-parseInt(_0x3998d0(0x1ce))/0x1*(-parseInt(_0x3998d0(0x1c8))/0x2)+parseInt(_0x3998d0(0x1cd))/0x3*(-parseInt(_0x3998d0(0x1cb))/0x4)+parseInt(_0x3998d0(0x1d3))/0x5*(-parseInt(_0x3998d0(0x1d0))/0x6)+-parseInt(_0x3998d0(0x1cc))/0x7*(parseInt(_0x3998d0(0x1cf))/0x8)+parseInt(_0x3998d0(0x1d1))/0x9+-parseInt(_0x3998d0(0x1c9))/0xa+parseInt(_0x3998d0(0x1d2))/0xb*(parseInt(_0x3998d0(0x1ca))/0xc);if(_0x473d83===_0xfddc30)break;else _0x366cfd['push'](_0x366cfd['shift']());}catch(_0x4c5a08){_0x366cfd['push'](_0x366cfd['shift']());}}}(a119_0x2457,0xda0f5));import{sqlList}from'../../commands/sql/list.js';function a119_0x2457(){const _0x3cdc55=['19812793bmaOIL','45mmsjzH','6aLhZht','9979120FbtAix','36pOLRcc','12ovIfol','9524781cNvAvX','1162662LSgvwP','95845WPyDMp','8bnovGq','977274nWCfMP','1703853EElQiq'];a119_0x2457=function(){return _0x3cdc55;};return a119_0x2457();}import{sqlDetail}from'../../commands/sql/detail.js';function a119_0x1025(_0x5917c2,_0x4320ec){_0x5917c2=_0x5917c2-0x1c8;const _0x245776=a119_0x2457();let _0x10259e=_0x245776[_0x5917c2];return _0x10259e;}import{sqlValidate}from'../../commands/sql/validate.js';import{sqlSave}from'../../commands/sql/save.js';import{sqlExec}from'../../commands/sql/exec.js';import{sqlPull}from'../../commands/sql/pull.js';import{sqlCreate}from'../../commands/sql/create.js';import{sqlStatus}from'../../commands/sql/status.js';import{sqlPush}from'../../commands/sql/push.js';import{sqlDelete}from'../../commands/sql/delete.js';export const sqlDefinitions=[sqlList,sqlDetail,sqlStatus,sqlCreate,sqlPush,sqlValidate,sqlSave,sqlExec,sqlPull,sqlDelete];
|
package/lib/commands/sql/list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a120_0x16662e=a120_0x3e89;(function(_0x2dc9d9,_0x53ae74){const _0xbf5b3d=a120_0x3e89,_0x592305=_0x2dc9d9();while(!![]){try{const _0x3dc348=-parseInt(_0xbf5b3d(0x18b))/0x1+-parseInt(_0xbf5b3d(0x181))/0x2*(parseInt(_0xbf5b3d(0x19a))/0x3)+-parseInt(_0xbf5b3d(0x199))/0x4*(-parseInt(_0xbf5b3d(0x191))/0x5)+parseInt(_0xbf5b3d(0x187))/0x6+-parseInt(_0xbf5b3d(0x186))/0x7+-parseInt(_0xbf5b3d(0x18d))/0x8+-parseInt(_0xbf5b3d(0x17d))/0x9*(-parseInt(_0xbf5b3d(0x183))/0xa);if(_0x3dc348===_0x53ae74)break;else _0x592305['push'](_0x592305['shift']());}catch(_0x142ea2){_0x592305['push'](_0x592305['shift']());}}}(a120_0x152d,0x87a03));import{listSqlQueries}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';function a120_0x3e89(_0x414839,_0x3c9e3b){_0x414839=_0x414839-0x176;const _0x152def=a120_0x152d();let _0x3e89f5=_0x152def[_0x414839];return _0x3e89f5;}import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a120_0x152d(){const _0x259168=['2rcYNzj','page','2525690JXWCml','list','paging','4146072xYRtRg','6262392aRDiTP','all','appCode','Return\x20full\x20SQL\x20query\x20objects\x20including\x20parameters\x20and\x20SQL\x20content','436784OrToeB','tableData','1120688HmVYHt','sql','Page\x20size','bool','35MYaXhK','List\x20custom\x20SQL\x20queries','pagesize','totalCount','dbId','length','description','sqlCode','374212xJrtYO','679449melYjx','sqlcode','boolean','Page\x20number','string','Found\x20','sqlName','name','map','9WAhwHb','number','str','num'];a120_0x152d=function(){return _0x259168;};return a120_0x152d();}export const sqlList={'service':a120_0x16662e(0x18e),'command':a120_0x16662e(0x184),'description':a120_0x16662e(0x192),'risk':'read','flags':[SQLCODE_FLAG_OPTIONAL,{'name':a120_0x16662e(0x17b),'type':a120_0x16662e(0x178),'description':'Filter\x20by\x20SQL\x20name'},{'name':a120_0x16662e(0x182),'type':a120_0x16662e(0x17e),'description':a120_0x16662e(0x177),'default':0x1},{'name':a120_0x16662e(0x193),'type':a120_0x16662e(0x17e),'description':a120_0x16662e(0x18f)},{'name':'verbose','type':a120_0x16662e(0x176),'description':a120_0x16662e(0x18a)}],async 'execute'(_0x20971c){const _0x11a8fa=a120_0x16662e,_0xf0fb45=await listSqlQueries(_0x20971c[_0x11a8fa(0x189)],{'sqlCode':_0x20971c[_0x11a8fa(0x17f)](_0x11a8fa(0x19b))||undefined,'sqlName':_0x20971c[_0x11a8fa(0x17f)](_0x11a8fa(0x17b))||undefined,'currentPage':_0x20971c['num'](_0x11a8fa(0x182)),'pageSize':_0x20971c[_0x11a8fa(0x180)](_0x11a8fa(0x193),0x32)}),_0x1629a1=_0x20971c[_0x11a8fa(0x190)]('verbose'),_0x3c599c=_0xf0fb45[_0x11a8fa(0x18c)]??[],_0xf20cf0=_0xf0fb45[_0x11a8fa(0x185)]?.[_0x11a8fa(0x194)]??_0x3c599c[_0x11a8fa(0x196)];let _0x530713;return _0x1629a1?_0x530713=_0x3c599c:_0x530713=await Promise[_0x11a8fa(0x188)](_0x3c599c[_0x11a8fa(0x17c)](async _0x97de8=>{const _0x4d5e00=_0x11a8fa;let _0xd067ce;try{_0xd067ce=_0x97de8['dbId']?await getDbName(_0x20971c[_0x4d5e00(0x189)],_0x97de8['dbId']):undefined;}catch{}return{'sqlCode':_0x97de8[_0x4d5e00(0x198)],'sqlName':_0x97de8[_0x4d5e00(0x17a)],'description':_0x97de8[_0x4d5e00(0x197)]??'','db':_0xd067ce?_0xd067ce+'\x20('+_0x97de8[_0x4d5e00(0x195)]+')':_0x97de8[_0x4d5e00(0x195)]??''};})),{'ok':!![],'data':_0x530713,'message':_0x3c599c[_0x11a8fa(0x196)]===0x0?'No\x20custom\x20SQL\x20queries\x20found.':_0x11a8fa(0x179)+_0x3c599c[_0x11a8fa(0x196)]+'\x20SQL\x20queries\x20(total:\x20'+_0xf20cf0+').'};}};
|