@lovrabet/rabetbase-cli 2.2.3-beta.1 → 2.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/add.js +1 -1
- package/lib/commands/app/discover.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/remove.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app/use.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/update.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/standard-page-status.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/non-interactive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/init.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/skill/index.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/save.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/copy-directory.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x5d82b5,_0x35249c){const _0x59c4eb=a116_0xc13f,_0x5baa4b=_0x5d82b5();while(!![]){try{const _0x2143ed=-parseInt(_0x59c4eb(0x1ea))/0x1*(parseInt(_0x59c4eb(0x1d5))/0x2)+-parseInt(_0x59c4eb(0x1d8))/0x3+parseInt(_0x59c4eb(0x1d3))/0x4+parseInt(_0x59c4eb(0x1ef))/0x5*(-parseInt(_0x59c4eb(0x1dd))/0x6)+parseInt(_0x59c4eb(0x1eb))/0x7+-parseInt(_0x59c4eb(0x1f0))/0x8+parseInt(_0x59c4eb(0x1f6))/0x9;if(_0x2143ed===_0x35249c)break;else _0x5baa4b['push'](_0x5baa4b['shift']());}catch(_0x21d208){_0x5baa4b['push'](_0x5baa4b['shift']());}}}(a116_0x494c,0x58ef8));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';function a116_0x494c(){const _0x54eab0=['trim','yellow','705365EKAjtz','5560016CdSUqy','join','log','utf8','keys','init','14119227NCltuT','1.0.0','\x20\x20appcode:\x20','app','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','green','✓\x20Upgraded\x20','version','parse','.bak','appcode','cyan','Please\x20enter\x20App\x20Code:','1344268VyfWen','string','212gziQpN','\x20\x20Apps:\x20','apps','1774515gGnwsk','gray','info','App\x20Code\x20cannot\x20be\x20empty','setLogPath','12jRpVkQ','\x20api\x20generate\x27\x20and\x20\x27','Migration\x20cancelled.\x20Run\x20`','Invalid\x20App\x20Code','env','\x20\x20Default:\x20','toLocaleString','从旧配置文件升级成功','✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory','production','defaultApp','\x20project\x20init`\x20to\x20start\x20fresh.','\x20→\x20.rabetbase.json','2368pYmzCR','1953497ZCrPtU','bold'];a116_0x494c=function(){return _0x54eab0;};return a116_0x494c();}import{fileURLToPath}from'node:url';import a116_0x51b88c from'chalk';import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';function a116_0xc13f(_0x243ccb,_0x4b6620){_0x243ccb=_0x243ccb-0x1cd;const _0x494ce3=a116_0x494c();let _0xc13f43=_0x494ce3[_0x243ccb];return _0xc13f43;}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(_0x349058){const _0x243795=a116_0xc13f,{appcode:_0x304c3a,env:_0x43252b,autoYes:_0x1bfcc8}=_0x349058,_0x4c84f9=process['cwd']();if(getProjectConfigPath())throw new Error('.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.');let _0x5d164a;for(const _0x4ac181 of LEGACY_CONFIG_NAMES){const _0x4eab60=resolve(_0x4c84f9,_0x4ac181);if(existsSync(_0x4eab60)){_0x5d164a=_0x4eab60;break;}}if(_0x5d164a){let _0xc350c8={};try{_0xc350c8=JSON[_0x243795(0x1ce)](readFileSync(_0x5d164a,_0x243795(0x1f3)));}catch{}const _0x3f6864=basename(_0x5d164a),_0x5dea28=_0xc350c8?.[_0x243795(0x1d0)]||_0xc350c8?.['app'];let _0x44cc88=_0x1bfcc8;!_0x1bfcc8&&(console[_0x243795(0x1f2)](a116_0x51b88c[_0x243795(0x1ee)](_0x243795(0x1fa)+a116_0x51b88c[_0x243795(0x1ec)](_0x3f6864))),_0x5dea28&&console[_0x243795(0x1f2)](a116_0x51b88c[_0x243795(0x1d1)](_0x243795(0x1f8)+_0x5dea28)),_0x44cc88=await confirm({'message':'Upgrade\x20it\x20to\x20'+a116_0x51b88c['bold']('.rabetbase.json')+'?\x20(Old\x20file\x20→\x20*.bak)','default':!![]}));if(!_0x44cc88){console[_0x243795(0x1f2)](_0x243795(0x1df)+CLI_BIN_NAME+_0x243795(0x1e8));return;}const _0x40a13f=resolve(_0x4c84f9,NEW_CONFIG_NAME),_0x4186c3=getCliVersionFromPkg(),_0x3039fc=readRawConfig(),_0x144dc4=_0x304c3a||(typeof _0xc350c8?.[_0x243795(0x1d0)]===_0x243795(0x1d4)?_0xc350c8[_0x243795(0x1d0)]:undefined)||(typeof _0xc350c8?.[_0x243795(0x1f9)]===_0x243795(0x1d4)?_0xc350c8[_0x243795(0x1f9)]:undefined)||await askAppcode(),_0x32cd7c=typeof _0xc350c8?.[_0x243795(0x1e1)]===_0x243795(0x1d4)?_0xc350c8[_0x243795(0x1e1)]:typeof _0x3039fc[_0x243795(0x1e1)]===_0x243795(0x1d4)?_0x3039fc[_0x243795(0x1e1)]:'production',_0x12227f=buildCanonicalProjectConfig({..._0x3039fc,..._0xc350c8},{'appCodes':[_0x144dc4],'env':_0x32cd7c,'metadata':{'version':_0x4186c3,'migratedAt':new Date()['toLocaleString'](),'migratedFrom':_0x5d164a}});writeConfigFile(_0x40a13f,_0x12227f);const _0x33a7bd=_0x5d164a+'.bak';renameSync(_0x5d164a,_0x33a7bd),logger[_0x243795(0x1dc)](_0x4c84f9),logger[_0x243795(0x1da)](_0x243795(0x1f5),_0x243795(0x1e4),{'from':_0x5d164a,'to':_0x40a13f,'appcode':_0x144dc4,'env':_0x12227f['env']}),console[_0x243795(0x1f2)](a116_0x51b88c[_0x243795(0x1fb)](_0x243795(0x1fc)+_0x3f6864+_0x243795(0x1e9))),console[_0x243795(0x1f2)](a116_0x51b88c[_0x243795(0x1d1)](_0x243795(0x1d6)+Object[_0x243795(0x1f4)](_0x12227f[_0x243795(0x1d7)]||{})[_0x243795(0x1f1)](',\x20'))),console[_0x243795(0x1f2)](a116_0x51b88c[_0x243795(0x1d1)](_0x243795(0x1e2)+_0x12227f[_0x243795(0x1e7)])),console[_0x243795(0x1f2)](a116_0x51b88c[_0x243795(0x1d9)]('\x20\x20Old\x20file\x20backed\x20up\x20as\x20'+_0x3f6864+_0x243795(0x1cf)));return;}const _0x3c9168=_0x304c3a||await askAppcode(),_0x31a7d6=resolve(_0x4c84f9,NEW_CONFIG_NAME),_0x9fa667=getCliVersionFromPkg(),_0x3bfe52=readRawConfig(),_0x1ac460=typeof _0x3bfe52[_0x243795(0x1e1)]===_0x243795(0x1d4)?_0x3bfe52[_0x243795(0x1e1)]:undefined,_0x3d0c25=buildCanonicalProjectConfig({},{'appCodes':[_0x3c9168],'env':_0x43252b||_0x1ac460||_0x243795(0x1e6),'metadata':{'version':_0x9fa667,'createdAt':new Date()[_0x243795(0x1e3)]()}});writeConfigFile(_0x31a7d6,_0x3d0c25),logger[_0x243795(0x1dc)](_0x4c84f9),logger[_0x243795(0x1da)]('init','初始化项目配置文件成功',{'appcode':_0x3c9168,'env':_0x3d0c25['env'],'version':_0x3d0c25['version'],'configPath':_0x31a7d6}),console[_0x243795(0x1f2)](a116_0x51b88c['green'](_0x243795(0x1e5))),console[_0x243795(0x1f2)](a116_0x51b88c[_0x243795(0x1d1)](_0x243795(0x1d6)+Object['keys'](_0x3d0c25[_0x243795(0x1d7)]||{})['join'](',\x20'))),console[_0x243795(0x1f2)](a116_0x51b88c[_0x243795(0x1d1)](_0x243795(0x1e2)+_0x3d0c25['defaultApp'])),console[_0x243795(0x1f2)]('\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27'+CLI_BIN_NAME+_0x243795(0x1de)+CLI_BIN_NAME+'\x20api\x20pull\x27');}function askAppcode(){const _0x3dfa82=a116_0xc13f;return input({'message':_0x3dfa82(0x1d2),'validate':_0x9b9a81=>{const _0x45da18=_0x3dfa82;if(!_0x9b9a81[_0x45da18(0x1ed)]())return _0x45da18(0x1db);const {valid:_0x4b94c8,message:_0x516920}=validateAppcode(_0x9b9a81[_0x45da18(0x1ed)]());return _0x4b94c8||_0x516920||_0x45da18(0x1e0);}});}function getCliVersionFromPkg(){const _0x38111a=a116_0xc13f;try{const _0x5b1402=fileURLToPath(import.meta.url),_0x26305e=resolve(dirname(_0x5b1402),'../..'),_0x3c0990=JSON[_0x38111a(0x1ce)](readFileSync(resolve(_0x26305e,'package.json'),'utf8'));return _0x3c0990[_0x38111a(0x1cd)]||_0x38111a(0x1f7);}catch{return _0x38111a(0x1f7);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a117_0x1cc928=a117_0x3160;(function(_0x54fb9,_0x3dcd79){const _0x1e3805=a117_0x3160,_0x52d15b=_0x54fb9();while(!![]){try{const _0xd9fe08=-parseInt(_0x1e3805(0x108))/0x1+parseInt(_0x1e3805(0xba))/0x2*(-parseInt(_0x1e3805(0xe6))/0x3)+-parseInt(_0x1e3805(0xaf))/0x4*(-parseInt(_0x1e3805(0xe3))/0x5)+-parseInt(_0x1e3805(0xb3))/0x6*(parseInt(_0x1e3805(0xab))/0x7)+parseInt(_0x1e3805(0x102))/0x8*(parseInt(_0x1e3805(0xa5))/0x9)+-parseInt(_0x1e3805(0xa1))/0xa+parseInt(_0x1e3805(0xb0))/0xb;if(_0xd9fe08===_0x3dcd79)break;else _0x52d15b['push'](_0x52d15b['shift']());}catch(_0x21f1ae){_0x52d15b['push'](_0x52d15b['shift']());}}}(a117_0x2654,0xbdb16));import a117_0x32b75f from'chalk';import a117_0xeb17f3 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';function a117_0x2654(){const _0x5bd241=['done','label','entries','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','\x20\x20Step\x20','configMigration','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','not\x20found\x20or\x20already\x20at\x20latest','no\x20legacy\x20config\x20found','@lovrabet/sdk','failed','Step\x201/7:\x20Config\x20migration\x20—\x20','FAIL','path','\x20→\x20keys:\x20','status','Remove\x20legacy\x20artifacts','package.json','includes','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','mcpServers','parse','sdkUpgrade','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','stringify','oldArtifacts','filter','Config\x20file:','\x20\x20Current\x20version\x20in\x20','skipped','Step\x201/7:\x20Migrating\x20config...','args','red','skipped\x20(no\x20legacy\x20config)','Upgrade\x20@lovrabet/sdk','info','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','Step\x205/7:\x20Removing\x20old\x20skill...','\x20\x20npm\x20install','626705laUyXv','no\x20matching\x20entry\x20found','\x20→\x20','3119943aXNNfo','bold','detail','@lovrabet/sdk:','gray','cyan','Remove\x20old\x20skill','object','\x20\x20Action:\x20delete','keys','start','latest','Upgrade\x20completed\x20successfully!','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','lovrabet/lovrabet-skill\x20removed','needsSkillSwap','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','utf8','Remove\x20.lovrabet/','\x20→\x20latest','dependencies','some','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','\x20\x20Fields\x20to\x20migrate:\x20','===\x20Upgrade\x20Summary\x20===','Step\x206/7:\x20Installing\x20new\x20skill...','green','Step\x204/7:\x20MCP\x20config\x20—\x20','432PBrvIa','\x20\x20New\x20config\x20(.rabetbase.json):\x20','MCP\x20config:','fail','fields','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','141910ZgWBlT','oldMcpConfig','===\x20Upgrade\x20Analysis\x20===','no\x20legacy\x20entry','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','Config\x20migration','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','lovrabet/rabetbase','Legacy\x20artifacts:','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','undefined','string','message','log','push','step','needed','.lovrabet','\x20removed\x20(','exit\x20','files','\x20\x20bun\x20install','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','FOUND','not\x20found\x20(will\x20create)','Step\x204/7:\x20Cleaning\x20MCP\x20config...','@lovrabet/dataset-mcp-server','\x20\x20\x20\x20\x20\x20\x20','8648200lleHla','white','yellow','yes','144459Rshrqs','error','Clean\x20MCP\x20config','.cursor/mcp.json','Install\x20new\x20skill','hasNewConfig','623Zagjfj','oldPath','length','isDirectory','12nzxfpv','32908205Wegitf','join','isArray','95106sIFloO','Upgrade\x20cancelled.','succeed','none\x20found','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','lovrabet/rabetbase\x20installed\x20globally','not\x20needed','2GMsUDY'];a117_0x2654=function(){return _0x5bd241;};return a117_0x2654();}import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=CONFIG_NAMES[a117_0x1cc928(0xd6)](_0xdaf19c=>_0xdaf19c!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x4c1999){const _0x2b3d38=a117_0x1cc928,_0x1adc50=[];for(const _0x2671b1 of Object['values'](CORE_IDE_CONFIGS)){if(_0x2671b1[_0x2b3d38(0x11c)])for(const _0x22c0b2 of _0x2671b1[_0x2b3d38(0x11c)]){_0x1adc50[_0x2b3d38(0x116)](resolve(_0x4c1999,_0x22c0b2[_0x2b3d38(0xc9)]));}}return _0x1adc50;}function analyse(_0x89b3a6){const _0x4c3ee7=a117_0x1cc928;let _0x4ca268=null;const _0x15ac15=resolve(_0x89b3a6,NEW_CONFIG_NAME),_0x47a4aa=existsSync(_0x15ac15);for(const _0x5b28c9 of LEGACY_CONFIG_NAMES){const _0x5b7e5a=resolve(_0x89b3a6,_0x5b28c9);if(existsSync(_0x5b7e5a)){const _0x1aa85a=readConfigFile(_0x5b7e5a),_0x31dfb0=Object[_0x4c3ee7(0xef)](_0x1aa85a)[_0x4c3ee7(0xd6)](_0x36b790=>typeof _0x1aa85a[_0x36b790]!==_0x4c3ee7(0x112));_0x4ca268={'oldPath':_0x5b7e5a,'hasNewConfig':_0x47a4aa,'fields':_0x31dfb0};break;}}const _0x37aa8d=[],_0x5be079=resolve(_0x89b3a6,_0x4c3ee7(0x119));if(existsSync(_0x5be079))_0x37aa8d[_0x4c3ee7(0x116)](_0x5be079);const _0xa86b09=resolve(_0x89b3a6,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0xa86b09))_0x37aa8d[_0x4c3ee7(0x116)](_0xa86b09);const _0x42bf35=resolve(_0x89b3a6,'.claude/skills/lovrabet');if(existsSync(_0x42bf35))_0x37aa8d[_0x4c3ee7(0x116)](_0x42bf35);for(const _0x3f25b0 of collectIdeSkillFiles(_0x89b3a6)){if(existsSync(_0x3f25b0))_0x37aa8d[_0x4c3ee7(0x116)](_0x3f25b0);}let _0x5a29ec=null;const _0x513668=resolve(_0x89b3a6,_0x4c3ee7(0xa8));if(existsSync(_0x513668))try{const _0x323954=JSON[_0x4c3ee7(0xd1)](readFileSync(_0x513668,_0x4c3ee7(0xf7)));if(_0x323954?.[_0x4c3ee7(0xd0)]&&typeof _0x323954[_0x4c3ee7(0xd0)]===_0x4c3ee7(0xed)){const _0x56cebb=[];for(const [_0x42ce5f,_0x5a2eea]of Object[_0x4c3ee7(0xbd)](_0x323954[_0x4c3ee7(0xd0)])){const _0x15f2b5=_0x5a2eea;_0x15f2b5?.[_0x4c3ee7(0xdb)]&&Array[_0x4c3ee7(0xb2)](_0x15f2b5[_0x4c3ee7(0xdb)])&&_0x15f2b5[_0x4c3ee7(0xdb)][_0x4c3ee7(0xfb)](_0x241a51=>typeof _0x241a51===_0x4c3ee7(0x113)&&_0x241a51[_0x4c3ee7(0xce)](_0x4c3ee7(0x122)))&&_0x56cebb[_0x4c3ee7(0x116)](_0x42ce5f);}_0x56cebb[_0x4c3ee7(0xad)]>0x0&&(_0x5a29ec={'path':_0x513668,'keys':_0x56cebb});}}catch{}const _0x18c89f=_0x37aa8d['length']>0x0||_0x4ca268!==null;let _0x5220ca=null;const _0x19d2b8=resolve(_0x89b3a6,_0x4c3ee7(0xcd));if(existsSync(_0x19d2b8))try{const _0x5a674e=JSON['parse'](readFileSync(_0x19d2b8,_0x4c3ee7(0xf7)));for(const _0x498e85 of[_0x4c3ee7(0xfa),'devDependencies']){const _0x53183a=_0x5a674e?.[_0x498e85]?.[_0x4c3ee7(0xc5)];if(typeof _0x53183a===_0x4c3ee7(0x113)){_0x53183a!==_0x4c3ee7(0xf1)&&(_0x5220ca={'pkgPath':_0x19d2b8,'currentVersion':_0x53183a,'field':_0x498e85});break;}}}catch{}return{'configMigration':_0x4ca268,'oldArtifacts':_0x37aa8d,'oldMcpConfig':_0x5a29ec,'needsSkillSwap':_0x18c89f,'sdkUpgrade':_0x5220ca};}function printReport(_0x1ceb91){const _0x160703=a117_0x1cc928,{configMigration:_0x15fc65,oldArtifacts:_0x13d069,oldMcpConfig:_0x521c94,needsSkillSwap:_0x3a7309}=_0x1ceb91;console['log'](''),console[_0x160703(0x115)](a117_0x32b75f[_0x160703(0xe7)](_0x160703(0x10a))),console[_0x160703(0x115)]('');_0x15fc65?(console[_0x160703(0x115)](a117_0x32b75f['cyan'](_0x160703(0xd7))+('\x20\x20'+a117_0x32b75f[_0x160703(0xa3)](_0x15fc65[_0x160703(0xac)]))),console[_0x160703(0x115)](_0x160703(0x103)+(_0x15fc65[_0x160703(0xaa)]?a117_0x32b75f[_0x160703(0x100)]('already\x20exists\x20(will\x20merge)'):a117_0x32b75f[_0x160703(0xea)](_0x160703(0x120)))),console[_0x160703(0x115)](_0x160703(0xfd)+_0x15fc65[_0x160703(0x106)][_0x160703(0xb1)](',\x20')),console[_0x160703(0x115)](_0x160703(0xc1))):console[_0x160703(0x115)](a117_0x32b75f[_0x160703(0xeb)](_0x160703(0xd7))+'\x20\x20'+a117_0x32b75f[_0x160703(0xea)](_0x160703(0xc4)));console[_0x160703(0x115)]('');if(_0x13d069[_0x160703(0xad)]>0x0){console[_0x160703(0x115)](a117_0x32b75f[_0x160703(0xeb)](_0x160703(0x110)));for(const _0x388137 of _0x13d069){console[_0x160703(0x115)]('\x20\x20'+a117_0x32b75f[_0x160703(0xdc)](_0x160703(0x11f))+'\x20\x20'+_0x388137);}console[_0x160703(0x115)](_0x160703(0xee));}else console[_0x160703(0x115)](a117_0x32b75f['cyan'](_0x160703(0x110))+'\x20\x20'+a117_0x32b75f[_0x160703(0xea)](_0x160703(0xb6)));console[_0x160703(0x115)]('');_0x521c94?(console['log'](a117_0x32b75f[_0x160703(0xeb)](_0x160703(0x104))+('\x20\x20'+a117_0x32b75f[_0x160703(0xa3)](_0x521c94[_0x160703(0xc9)])+_0x160703(0xca)+_0x521c94[_0x160703(0xef)]['join'](',\x20'))),console[_0x160703(0x115)](_0x160703(0x10e))):console['log'](a117_0x32b75f['cyan'](_0x160703(0x104))+'\x20\x20'+a117_0x32b75f['gray'](_0x160703(0x10b)));console[_0x160703(0x115)](''),console[_0x160703(0x115)](a117_0x32b75f['cyan']('Skill\x20swap:')+('\x20\x20'+(_0x3a7309?a117_0x32b75f[_0x160703(0xa3)](_0x160703(0x118)):a117_0x32b75f[_0x160703(0x100)](_0x160703(0xb9)))));_0x3a7309&&console[_0x160703(0x115)]('\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`'+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console['log']('');if(_0x1ceb91[_0x160703(0xd2)]){const {currentVersion:_0x52a1f6,field:_0x16ebcd,pkgPath:_0x298070}=_0x1ceb91['sdkUpgrade'];console['log'](a117_0x32b75f[_0x160703(0xeb)](_0x160703(0xe9))+('\x20\x20'+a117_0x32b75f[_0x160703(0xa3)](_0x298070))),console[_0x160703(0x115)](_0x160703(0xd8)+_0x16ebcd+':\x20'+a117_0x32b75f[_0x160703(0xa3)](_0x52a1f6)+_0x160703(0xe5)+a117_0x32b75f[_0x160703(0x100)](_0x160703(0xf1))),console[_0x160703(0x115)](_0x160703(0x107));}else console[_0x160703(0x115)](a117_0x32b75f['cyan'](_0x160703(0xe9))+'\x20\x20'+a117_0x32b75f['gray'](_0x160703(0xc3)));console[_0x160703(0x115)]('');}function execConfigMigration(_0x9a7bc3,_0x1266f2){const _0x21a99e=a117_0x1cc928,{configMigration:_0x4797b4}=_0x9a7bc3;if(!_0x4797b4?.['oldPath'])return{'step':0x1,'label':_0x21a99e(0x10d),'ok':!![],'detail':_0x21a99e(0xdd)};const _0x32cf55=readConfigFile(_0x4797b4[_0x21a99e(0xac)]),_0x572c42=resolve(_0x1266f2,NEW_CONFIG_NAME),_0x3ae700=_0x4797b4['hasNewConfig']?readConfigFile(_0x572c42):{};for(const [_0x692cfc,_0x5068f9]of Object['entries'](_0x32cf55)){!(_0x692cfc in _0x3ae700)&&(_0x3ae700[_0x692cfc]=_0x5068f9);}writeConfigFile(_0x572c42,_0x3ae700);const _0x32172e=_0x4797b4['oldPath']+'.bak';return renameSync(_0x4797b4[_0x21a99e(0xac)],_0x32172e),{'step':0x1,'label':_0x21a99e(0x10d),'ok':!![],'detail':_0x4797b4[_0x21a99e(0xac)]+_0x21a99e(0xe5)+_0x572c42+'\x20(backup:\x20'+_0x32172e+')'};}function a117_0x3160(_0x1ca5c8,_0x26e855){_0x1ca5c8=_0x1ca5c8-0xa0;const _0x265421=a117_0x2654();let _0x316069=_0x265421[_0x1ca5c8];return _0x316069;}function execRemoveOldArtifacts(_0x17c815){const _0x2ce07b=a117_0x1cc928,_0x5110b9=[];for(const _0xcf2e59 of _0x17c815){try{if(!existsSync(_0xcf2e59))continue;const _0x27033f=tryStat(_0xcf2e59);_0x27033f?.[_0x2ce07b(0xae)]()?rmSync(_0xcf2e59,{'recursive':!![],'force':!![]}):unlinkSync(_0xcf2e59);}catch(_0x447b34){_0x5110b9[_0x2ce07b(0x116)](_0xcf2e59+':\x20'+_0x447b34[_0x2ce07b(0x114)]);}}return{'step':0x3,'label':_0x2ce07b(0xcc),'ok':_0x5110b9[_0x2ce07b(0xad)]===0x0,'detail':_0x5110b9[_0x2ce07b(0xad)]>0x0?_0x17c815['length']-_0x5110b9['length']+'/'+_0x17c815[_0x2ce07b(0xad)]+_0x2ce07b(0x11a)+_0x5110b9[_0x2ce07b(0xb1)](';\x20')+')':_0x17c815[_0x2ce07b(0xad)]+'\x20removed'};}function execCleanMcp(_0x1f93ce){const _0x2f17b5=a117_0x1cc928;if(!_0x1f93ce[_0x2f17b5(0x109)])return{'step':0x4,'label':_0x2f17b5(0xa7),'ok':!![],'detail':'skipped'};try{const _0x4938b1=readFileSync(_0x1f93ce[_0x2f17b5(0x109)][_0x2f17b5(0xc9)],_0x2f17b5(0xf7)),_0x89d4e1=JSON[_0x2f17b5(0xd1)](_0x4938b1);if(_0x89d4e1?.['mcpServers']&&typeof _0x89d4e1['mcpServers']===_0x2f17b5(0xed)){const _0x59f9c3=[];for(const [_0x16c6d4,_0x5a0376]of Object['entries'](_0x89d4e1[_0x2f17b5(0xd0)])){_0x5a0376?.['args']&&Array[_0x2f17b5(0xb2)](_0x5a0376[_0x2f17b5(0xdb)])&&_0x5a0376[_0x2f17b5(0xdb)]['some'](_0x156233=>typeof _0x156233==='string'&&_0x156233[_0x2f17b5(0xce)](_0x2f17b5(0x122)))&&_0x59f9c3[_0x2f17b5(0x116)](_0x16c6d4);}for(const _0x147b4a of _0x59f9c3){delete _0x89d4e1[_0x2f17b5(0xd0)][_0x147b4a];}return _0x59f9c3[_0x2f17b5(0xad)]>0x0&&writeFileSync(_0x1f93ce[_0x2f17b5(0x109)][_0x2f17b5(0xc9)],JSON['stringify'](_0x89d4e1,null,0x2)+'\x0a',_0x2f17b5(0xf7)),{'step':0x4,'label':_0x2f17b5(0xa7),'ok':!![],'detail':'removed\x20'+_0x59f9c3['join'](',\x20')+'\x20from\x20'+_0x1f93ce['oldMcpConfig'][_0x2f17b5(0xc9)]};}return{'step':0x4,'label':_0x2f17b5(0xa7),'ok':!![],'detail':_0x2f17b5(0xe4)};}catch(_0x26ccd3){return{'step':0x4,'label':_0x2f17b5(0xa7),'ok':![],'detail':_0x26ccd3[_0x2f17b5(0x114)]};}}function execSkillsRemove(_0x5df726,_0x4642e7){const _0x78e69b=a117_0x1cc928,_0x586096=runNpxSkillsRemove(_0x5df726,{'stdio':'inherit','yes':_0x4642e7});return{'step':0x5,'label':_0x78e69b(0xec),'ok':_0x586096['ok'],'detail':_0x586096['ok']?_0x78e69b(0xf4):_0x586096[_0x78e69b(0xa6)]??_0x78e69b(0x11b)+_0x586096[_0x78e69b(0xcb)]};}function execSkillsAdd(_0x5a702a,_0x805494){const _0x384375=a117_0x1cc928,_0x2d96c0=runNpxSkillsAddGlobal(_0x5a702a,_0x384375(0x10f),{'stdio':'inherit','yes':_0x805494});return{'step':0x6,'label':_0x384375(0xa9),'ok':_0x2d96c0['ok'],'detail':_0x2d96c0['ok']?_0x384375(0xb8):_0x2d96c0[_0x384375(0xa6)]??_0x384375(0x11b)+_0x2d96c0[_0x384375(0xcb)]};}function execUpgradeSdk(_0x155c25){const _0x5710f5=a117_0x1cc928;if(!_0x155c25[_0x5710f5(0xd2)])return{'step':0x7,'label':_0x5710f5(0xde),'ok':!![],'detail':_0x5710f5(0xfc)};const {pkgPath:_0x13b415,currentVersion:_0x3df345,field:_0x25993a}=_0x155c25[_0x5710f5(0xd2)];try{const _0x118dc5=readFileSync(_0x13b415,'utf8'),_0x3d984d=JSON[_0x5710f5(0xd1)](_0x118dc5);return _0x3d984d[_0x25993a][_0x5710f5(0xc5)]=_0x5710f5(0xf1),writeFileSync(_0x13b415,JSON[_0x5710f5(0xd4)](_0x3d984d,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':_0x5710f5(0xde),'ok':!![],'detail':_0x25993a+'[\x22@lovrabet/sdk\x22]:\x20'+_0x3df345+_0x5710f5(0xf9)};}catch(_0x57db8a){return{'step':0x7,'label':_0x5710f5(0xde),'ok':![],'detail':_0x57db8a[_0x5710f5(0x114)]};}}function tryStat(_0x3156a4){try{return statSync(_0x3156a4);}catch{return undefined;}}function printSummary(_0x3350d3){const _0x4bf979=a117_0x1cc928;console[_0x4bf979(0x115)](''),console[_0x4bf979(0x115)](a117_0x32b75f[_0x4bf979(0xe7)](_0x4bf979(0xfe))),console[_0x4bf979(0x115)]('');for(const _0xf11062 of _0x3350d3){const _0x4ee0a3=_0xf11062['ok']?a117_0x32b75f[_0x4bf979(0x100)]('OK'):a117_0x32b75f[_0x4bf979(0xdc)](_0x4bf979(0xc8));console['log']('\x20\x20'+_0x4ee0a3+_0x4bf979(0xbf)+_0xf11062[_0x4bf979(0x117)]+':\x20'+_0xf11062[_0x4bf979(0xbc)]);if(_0xf11062['detail'])console[_0x4bf979(0x115)](_0x4bf979(0xa0)+a117_0x32b75f[_0x4bf979(0xea)](_0xf11062[_0x4bf979(0xe8)]));}console['log']('');}export async function upgradeApp(_0x4cc047,_0x42676f){const _0xe9b24a=a117_0x1cc928,_0x4585e1=process['cwd'](),_0x1eba55=analyse(_0x4585e1),_0x5659b6=!_0x1eba55[_0xe9b24a(0xc0)]&&_0x1eba55[_0xe9b24a(0xd5)][_0xe9b24a(0xad)]===0x0&&!_0x1eba55[_0xe9b24a(0x109)]&&!_0x1eba55[_0xe9b24a(0xf5)]&&!_0x1eba55[_0xe9b24a(0xd2)];if(_0x5659b6){console['log'](a117_0x32b75f['green'](_0xe9b24a(0xe0)));return;}printReport(_0x1eba55);const _0x38fcda=!!(_0x42676f[_0xe9b24a(0xa4)]||_0x42676f['Y']||_0x4cc047);if(!_0x38fcda)try{const _0x2faeda=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x2faeda){console['log'](a117_0x32b75f[_0xe9b24a(0xea)](_0xe9b24a(0xb4)));return;}}catch(_0x360d51){if(_0x360d51?.[_0xe9b24a(0x114)]==='CANCEL'){console[_0xe9b24a(0x115)](a117_0x32b75f['gray'](_0xe9b24a(0xb4)));return;}throw _0x360d51;}const _0x12176b=[],_0x657fa6=a117_0xeb17f3({'text':_0xe9b24a(0xda),'color':_0xe9b24a(0xeb)})[_0xe9b24a(0xf0)](),_0x130753=execConfigMigration(_0x1eba55,_0x4585e1);_0x12176b[_0xe9b24a(0x116)](_0x130753),_0x657fa6[_0x130753['ok']?_0xe9b24a(0xb5):_0xe9b24a(0x105)](_0xe9b24a(0xc7)+(_0x130753['detail']??(_0x130753['ok']?'done':'failed')));const _0x394727=resolve(_0x4585e1,'.lovrabet'),_0x4e2c16=a117_0xeb17f3({'text':_0xe9b24a(0xcf),'color':_0xe9b24a(0xeb)})[_0xe9b24a(0xf0)]();if(existsSync(_0x394727))try{rmSync(_0x394727,{'recursive':!![],'force':!![]}),_0x4e2c16[_0xe9b24a(0xb5)](_0xe9b24a(0x10c)),_0x12176b[_0xe9b24a(0x116)]({'step':0x2,'label':_0xe9b24a(0xf8),'ok':!![]});}catch(_0x361a16){_0x4e2c16[_0xe9b24a(0x105)](_0xe9b24a(0xf6)+_0x361a16['message']),_0x12176b[_0xe9b24a(0x116)]({'step':0x2,'label':_0xe9b24a(0xf8),'ok':![],'detail':_0x361a16['message']});}else _0x4e2c16[_0xe9b24a(0xdf)](_0xe9b24a(0xbe)),_0x12176b[_0xe9b24a(0x116)]({'step':0x2,'label':_0xe9b24a(0xf8),'ok':!![],'detail':_0xe9b24a(0xd9)});const _0x14aa05=a117_0xeb17f3({'text':'Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','color':'cyan'})[_0xe9b24a(0xf0)](),_0x3a8679=execRemoveOldArtifacts(_0x1eba55[_0xe9b24a(0xd5)]);_0x12176b[_0xe9b24a(0x116)](_0x3a8679),_0x14aa05[_0x3a8679['ok']?'succeed':_0xe9b24a(0x105)](_0xe9b24a(0xb7)+(_0x3a8679['detail']??(_0x3a8679['ok']?_0xe9b24a(0xbb):_0xe9b24a(0xc6))));const _0x2521be=a117_0xeb17f3({'text':_0xe9b24a(0x121),'color':_0xe9b24a(0xeb)})['start'](),_0x4519fa=execCleanMcp(_0x1eba55);_0x12176b[_0xe9b24a(0x116)](_0x4519fa),_0x2521be[_0x4519fa['ok']?'succeed':_0xe9b24a(0x105)](_0xe9b24a(0x101)+(_0x4519fa[_0xe9b24a(0xe8)]??(_0x4519fa['ok']?'done':'failed')));const _0x3a59c1=a117_0xeb17f3({'text':_0xe9b24a(0xe1),'color':_0xe9b24a(0xeb)})[_0xe9b24a(0xf0)](),_0x55cb72=execSkillsRemove(_0x4585e1,_0x38fcda);_0x12176b[_0xe9b24a(0x116)](_0x55cb72),_0x3a59c1[_0x55cb72['ok']?_0xe9b24a(0xb5):_0xe9b24a(0x105)](_0xe9b24a(0xd3)+(_0x55cb72[_0xe9b24a(0xe8)]??(_0x55cb72['ok']?_0xe9b24a(0xbb):_0xe9b24a(0xc6))));const _0x61d9f=a117_0xeb17f3({'text':_0xe9b24a(0xff),'color':'cyan'})[_0xe9b24a(0xf0)](),_0x246d5f=execSkillsAdd(_0x4585e1,_0x38fcda);_0x12176b[_0xe9b24a(0x116)](_0x246d5f),_0x61d9f[_0x246d5f['ok']?'succeed':'fail'](_0xe9b24a(0xc2)+(_0x246d5f[_0xe9b24a(0xe8)]??(_0x246d5f['ok']?'done':_0xe9b24a(0xc6))));const _0x3bb65b=a117_0xeb17f3({'text':'Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','color':'cyan'})[_0xe9b24a(0xf0)](),_0x23771f=execUpgradeSdk(_0x1eba55);_0x12176b[_0xe9b24a(0x116)](_0x23771f),_0x3bb65b[_0x23771f['ok']?_0xe9b24a(0xb5):'fail'](_0xe9b24a(0x11e)+(_0x23771f[_0xe9b24a(0xe8)]??(_0x23771f['ok']?'done':_0xe9b24a(0xc6)))),printSummary(_0x12176b);const _0x471f31=_0x12176b[_0xe9b24a(0xfb)](_0x15bbcd=>!_0x15bbcd['ok']);_0x471f31?console[_0xe9b24a(0x115)](a117_0x32b75f[_0xe9b24a(0xa3)](_0xe9b24a(0xf3))):console[_0xe9b24a(0x115)](a117_0x32b75f[_0xe9b24a(0x100)](_0xe9b24a(0xf2))),_0x23771f['ok']&&_0x1eba55['sdkUpgrade']&&(console[_0xe9b24a(0x115)](''),console[_0xe9b24a(0x115)](a117_0x32b75f[_0xe9b24a(0xe7)][_0xe9b24a(0xeb)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0xe9b24a(0x115)](a117_0x32b75f['cyan'](_0xe9b24a(0x111))),console[_0xe9b24a(0x115)](''),console['log'](a117_0x32b75f['white'](_0xe9b24a(0xe2))),console['log'](a117_0x32b75f[_0xe9b24a(0xa2)]('\x20\x20#\x20or')),console[_0xe9b24a(0x115)](a117_0x32b75f[_0xe9b24a(0xa2)](_0xe9b24a(0x11d))),console[_0xe9b24a(0x115)](''));}
|
|
1
|
+
function a117_0x31f8(){const _0x22a4d9=['skipped','yes','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','not\x20needed','inherit','sdkUpgrade','3990780kcYLxs','not\x20found\x20or\x20already\x20at\x20latest','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','green','detail','log','.lovrabet','oldArtifacts','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','697606zVMTUq','mcpServers','needed','\x20\x20Step\x20','latest','isDirectory','oldMcpConfig','undefined','message','.claude/skills/lovrabet','includes','none\x20found','done','@lovrabet/sdk:','no\x20legacy\x20config\x20found','step','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','gray','bold','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','oldPath','label','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','Proceed\x20with\x20upgrade?','Skill\x20swap:','keys','some','lovrabet/lovrabet-skill\x20removed','Upgrade\x20@lovrabet/sdk','3990848jXVWOa','4umJVNh','cwd','Config\x20file:','yellow','MCP\x20config:','===\x20Upgrade\x20Analysis\x20===','CANCEL','3537170xGZafD','info','.bak','Remove\x20legacy\x20artifacts','dependencies','stringify','files','string','\x20→\x20keys:\x20','Upgrade\x20completed\x20successfully!','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','skipped\x20(no\x20legacy\x20config)','\x20\x20npm\x20install','Step\x206/7:\x20Installing\x20new\x20skill...','values','1595667lUdoKe','Config\x20migration','.cursor/mcp.json','fail','Remove\x20.lovrabet/','removed\x20','\x20removed\x20(','start','join','status','cyan','succeed','no\x20matching\x20entry\x20found','not\x20found\x20(will\x20create)','Clean\x20MCP\x20config','@lovrabet/dataset-mcp-server','\x20\x20bun\x20install','[\x22@lovrabet/sdk\x22]:\x20','red','path','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','\x20\x20Action:\x20delete','error','\x20\x20#\x20or','Install\x20new\x20skill','@lovrabet/sdk','Step\x204/7:\x20MCP\x20config\x20—\x20','Step\x205/7:\x20Removing\x20old\x20skill...','Remove\x20old\x20skill','utf8','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','1383453vIHjEK','args','already\x20exists\x20(will\x20merge)','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','object','needsSkillSwap','parse','FAIL','\x20\x20Current\x20version\x20in\x20','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','fields','push','6ZoZoVN','white','Legacy\x20artifacts:','Step\x201/7:\x20Migrating\x20config...','\x20→\x20','\x20removed','517772qavViT','isArray','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','filter','\x20\x20New\x20config\x20(.rabetbase.json):\x20','Upgrade\x20cancelled.','length','devDependencies','package.json','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','failed','entries','lovrabet/rabetbase','\x20from\x20'];a117_0x31f8=function(){return _0x22a4d9;};return a117_0x31f8();}const a117_0xcd8c1c=a117_0x1127;(function(_0x3c662e,_0x5ee658){const _0x1c9208=a117_0x1127,_0x155d23=_0x3c662e();while(!![]){try{const _0x1b0fe8=parseInt(_0x1c9208(0x19b))/0x1+parseInt(_0x1c9208(0x17d))/0x2+-parseInt(_0x1c9208(0x14c))/0x3*(-parseInt(_0x1c9208(0x136))/0x4)+-parseInt(_0x1c9208(0x192))/0x5*(parseInt(_0x1c9208(0x177))/0x6)+parseInt(_0x1c9208(0x13d))/0x7+-parseInt(_0x1c9208(0x135))/0x8+-parseInt(_0x1c9208(0x16b))/0x9;if(_0x1b0fe8===_0x5ee658)break;else _0x155d23['push'](_0x155d23['shift']());}catch(_0x59ca79){_0x155d23['push'](_0x155d23['shift']());}}}(a117_0x31f8,0x848f2));import a117_0x2f4a59 from'chalk';import a117_0x19da61 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';import{CONFIG_NAMES,NEW_CONFIG_NAME,readConfigFile,writeConfigFile}from'../../context.js';import{CORE_IDE_CONFIGS}from'../../utils/ai_config.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE,runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=CONFIG_NAMES[a117_0xcd8c1c(0x180)](_0x3add03=>_0x3add03!==NEW_CONFIG_NAME);function a117_0x1127(_0x24d6e7,_0xc1ea48){_0x24d6e7=_0x24d6e7-0x127;const _0x31f80e=a117_0x31f8();let _0x1127ab=_0x31f80e[_0x24d6e7];return _0x1127ab;}function collectIdeSkillFiles(_0x3028f1){const _0x2def36=a117_0xcd8c1c,_0x26b702=[];for(const _0xed6063 of Object[_0x2def36(0x14b)](CORE_IDE_CONFIGS)){if(_0xed6063[_0x2def36(0x143)])for(const _0x86caf7 of _0xed6063['files']){_0x26b702[_0x2def36(0x176)](resolve(_0x3028f1,_0x86caf7[_0x2def36(0x15f)]));}}return _0x26b702;}function analyse(_0xc68b8f){const _0x17cfdb=a117_0xcd8c1c;let _0x53e0f9=null;const _0x311dfc=resolve(_0xc68b8f,NEW_CONFIG_NAME),_0x2bac7d=existsSync(_0x311dfc);for(const _0x382efa of LEGACY_CONFIG_NAMES){const _0xbe263e=resolve(_0xc68b8f,_0x382efa);if(existsSync(_0xbe263e)){const _0xba3762=readConfigFile(_0xbe263e),_0x19e364=Object['keys'](_0xba3762)[_0x17cfdb(0x180)](_0x530755=>typeof _0xba3762[_0x530755]!==_0x17cfdb(0x1a2));_0x53e0f9={'oldPath':_0xbe263e,'hasNewConfig':_0x2bac7d,'fields':_0x19e364};break;}}const _0x422f8f=[],_0x17ac52=resolve(_0xc68b8f,_0x17cfdb(0x198));if(existsSync(_0x17ac52))_0x422f8f['push'](_0x17ac52);const _0x59ccf7=resolve(_0xc68b8f,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x59ccf7))_0x422f8f[_0x17cfdb(0x176)](_0x59ccf7);const _0x1acc51=resolve(_0xc68b8f,_0x17cfdb(0x1a4));if(existsSync(_0x1acc51))_0x422f8f[_0x17cfdb(0x176)](_0x1acc51);for(const _0x27f1cb of collectIdeSkillFiles(_0xc68b8f)){if(existsSync(_0x27f1cb))_0x422f8f[_0x17cfdb(0x176)](_0x27f1cb);}let _0x18bb03=null;const _0x3bb642=resolve(_0xc68b8f,_0x17cfdb(0x14e));if(existsSync(_0x3bb642))try{const _0x3e2362=JSON[_0x17cfdb(0x171)](readFileSync(_0x3bb642,_0x17cfdb(0x169)));if(_0x3e2362?.[_0x17cfdb(0x19c)]&&typeof _0x3e2362[_0x17cfdb(0x19c)]===_0x17cfdb(0x16f)){const _0x2ab699=[];for(const [_0x413d01,_0xc89872]of Object[_0x17cfdb(0x188)](_0x3e2362[_0x17cfdb(0x19c)])){const _0x4551be=_0xc89872;_0x4551be?.[_0x17cfdb(0x16c)]&&Array[_0x17cfdb(0x17e)](_0x4551be[_0x17cfdb(0x16c)])&&_0x4551be[_0x17cfdb(0x16c)][_0x17cfdb(0x132)](_0x2e521e=>typeof _0x2e521e===_0x17cfdb(0x144)&&_0x2e521e[_0x17cfdb(0x1a5)]('@lovrabet/dataset-mcp-server'))&&_0x2ab699[_0x17cfdb(0x176)](_0x413d01);}_0x2ab699['length']>0x0&&(_0x18bb03={'path':_0x3bb642,'keys':_0x2ab699});}}catch{}const _0x14ae0c=_0x422f8f[_0x17cfdb(0x183)]>0x0||_0x53e0f9!==null;let _0x21ce23=null;const _0x1d0854=resolve(_0xc68b8f,_0x17cfdb(0x185));if(existsSync(_0x1d0854))try{const _0x5da6ba=JSON[_0x17cfdb(0x171)](readFileSync(_0x1d0854,_0x17cfdb(0x169)));for(const _0x131670 of[_0x17cfdb(0x141),_0x17cfdb(0x184)]){const _0x5d9238=_0x5da6ba?.[_0x131670]?.[_0x17cfdb(0x165)];if(typeof _0x5d9238===_0x17cfdb(0x144)){_0x5d9238!==_0x17cfdb(0x19f)&&(_0x21ce23={'pkgPath':_0x1d0854,'currentVersion':_0x5d9238,'field':_0x131670});break;}}}catch{}return{'configMigration':_0x53e0f9,'oldArtifacts':_0x422f8f,'oldMcpConfig':_0x18bb03,'needsSkillSwap':_0x14ae0c,'sdkUpgrade':_0x21ce23};}function printReport(_0x129510){const _0x102f73=a117_0xcd8c1c,{configMigration:_0x5515df,oldArtifacts:_0x1e5c74,oldMcpConfig:_0x546447,needsSkillSwap:_0x8ad8e3}=_0x129510;console[_0x102f73(0x197)](''),console[_0x102f73(0x197)](a117_0x2f4a59[_0x102f73(0x12a)](_0x102f73(0x13b))),console[_0x102f73(0x197)]('');_0x5515df?(console['log'](a117_0x2f4a59[_0x102f73(0x156)](_0x102f73(0x138))+('\x20\x20'+a117_0x2f4a59[_0x102f73(0x139)](_0x5515df['oldPath']))),console[_0x102f73(0x197)](_0x102f73(0x181)+(_0x5515df['hasNewConfig']?a117_0x2f4a59[_0x102f73(0x195)](_0x102f73(0x16d)):a117_0x2f4a59[_0x102f73(0x129)](_0x102f73(0x159)))),console['log']('\x20\x20Fields\x20to\x20migrate:\x20'+_0x5515df[_0x102f73(0x175)][_0x102f73(0x154)](',\x20')),console[_0x102f73(0x197)](_0x102f73(0x12e))):console[_0x102f73(0x197)](a117_0x2f4a59[_0x102f73(0x156)](_0x102f73(0x138))+'\x20\x20'+a117_0x2f4a59[_0x102f73(0x129)](_0x102f73(0x1a9)));console[_0x102f73(0x197)]('');if(_0x1e5c74[_0x102f73(0x183)]>0x0){console[_0x102f73(0x197)](a117_0x2f4a59[_0x102f73(0x156)](_0x102f73(0x179)));for(const _0x37f039 of _0x1e5c74){console[_0x102f73(0x197)]('\x20\x20'+a117_0x2f4a59['red']('FOUND')+'\x20\x20'+_0x37f039);}console[_0x102f73(0x197)](_0x102f73(0x161));}else console[_0x102f73(0x197)](a117_0x2f4a59[_0x102f73(0x156)](_0x102f73(0x179))+'\x20\x20'+a117_0x2f4a59[_0x102f73(0x129)](_0x102f73(0x1a6)));console[_0x102f73(0x197)]('');_0x546447?(console[_0x102f73(0x197)](a117_0x2f4a59[_0x102f73(0x156)](_0x102f73(0x13a))+('\x20\x20'+a117_0x2f4a59[_0x102f73(0x139)](_0x546447[_0x102f73(0x15f)])+_0x102f73(0x145)+_0x546447[_0x102f73(0x131)][_0x102f73(0x154)](',\x20'))),console[_0x102f73(0x197)](_0x102f73(0x174))):console['log'](a117_0x2f4a59[_0x102f73(0x156)](_0x102f73(0x13a))+'\x20\x20'+a117_0x2f4a59[_0x102f73(0x129)]('no\x20legacy\x20entry'));console[_0x102f73(0x197)](''),console['log'](a117_0x2f4a59['cyan'](_0x102f73(0x130))+('\x20\x20'+(_0x8ad8e3?a117_0x2f4a59[_0x102f73(0x139)](_0x102f73(0x19d)):a117_0x2f4a59[_0x102f73(0x195)](_0x102f73(0x18f)))));_0x8ad8e3&&console[_0x102f73(0x197)]('\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`'+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x102f73(0x197)]('');if(_0x129510['sdkUpgrade']){const {currentVersion:_0x3caae8,field:_0x556428,pkgPath:_0x4a1f4f}=_0x129510[_0x102f73(0x191)];console['log'](a117_0x2f4a59[_0x102f73(0x156)](_0x102f73(0x1a8))+('\x20\x20'+a117_0x2f4a59[_0x102f73(0x139)](_0x4a1f4f))),console[_0x102f73(0x197)](_0x102f73(0x173)+_0x556428+':\x20'+a117_0x2f4a59['yellow'](_0x3caae8)+_0x102f73(0x17b)+a117_0x2f4a59['green'](_0x102f73(0x19f))),console['log'](_0x102f73(0x1ab));}else console[_0x102f73(0x197)](a117_0x2f4a59['cyan'](_0x102f73(0x1a8))+'\x20\x20'+a117_0x2f4a59['gray'](_0x102f73(0x193)));console['log']('');}function execConfigMigration(_0x2989d7,_0xc74212){const _0x34542d=a117_0xcd8c1c,{configMigration:_0x37fb5b}=_0x2989d7;if(!_0x37fb5b?.[_0x34542d(0x12c)])return{'step':0x1,'label':_0x34542d(0x14d),'ok':!![],'detail':_0x34542d(0x148)};const _0x5c3e51=readConfigFile(_0x37fb5b[_0x34542d(0x12c)]),_0x3a1dc5=resolve(_0xc74212,NEW_CONFIG_NAME),_0x2527f6=_0x37fb5b['hasNewConfig']?readConfigFile(_0x3a1dc5):{};for(const [_0x56c8c6,_0x5e2933]of Object[_0x34542d(0x188)](_0x5c3e51)){!(_0x56c8c6 in _0x2527f6)&&(_0x2527f6[_0x56c8c6]=_0x5e2933);}writeConfigFile(_0x3a1dc5,_0x2527f6);const _0x4203f4=_0x37fb5b['oldPath']+_0x34542d(0x13f);return renameSync(_0x37fb5b[_0x34542d(0x12c)],_0x4203f4),{'step':0x1,'label':_0x34542d(0x14d),'ok':!![],'detail':_0x37fb5b['oldPath']+_0x34542d(0x17b)+_0x3a1dc5+'\x20(backup:\x20'+_0x4203f4+')'};}function execRemoveOldArtifacts(_0x4f3a54){const _0x2df13b=a117_0xcd8c1c,_0x431d43=[];for(const _0x10f756 of _0x4f3a54){try{if(!existsSync(_0x10f756))continue;const _0x6f98f2=tryStat(_0x10f756);_0x6f98f2?.[_0x2df13b(0x1a0)]()?rmSync(_0x10f756,{'recursive':!![],'force':!![]}):unlinkSync(_0x10f756);}catch(_0x58f3f2){_0x431d43[_0x2df13b(0x176)](_0x10f756+':\x20'+_0x58f3f2['message']);}}return{'step':0x3,'label':_0x2df13b(0x140),'ok':_0x431d43[_0x2df13b(0x183)]===0x0,'detail':_0x431d43['length']>0x0?_0x4f3a54[_0x2df13b(0x183)]-_0x431d43[_0x2df13b(0x183)]+'/'+_0x4f3a54[_0x2df13b(0x183)]+_0x2df13b(0x152)+_0x431d43['join'](';\x20')+')':_0x4f3a54[_0x2df13b(0x183)]+_0x2df13b(0x17c)};}function execCleanMcp(_0x53318a){const _0x36ffb2=a117_0xcd8c1c;if(!_0x53318a[_0x36ffb2(0x1a1)])return{'step':0x4,'label':_0x36ffb2(0x15a),'ok':!![],'detail':_0x36ffb2(0x18b)};try{const _0x4afb58=readFileSync(_0x53318a[_0x36ffb2(0x1a1)]['path'],_0x36ffb2(0x169)),_0x556768=JSON['parse'](_0x4afb58);if(_0x556768?.[_0x36ffb2(0x19c)]&&typeof _0x556768['mcpServers']===_0x36ffb2(0x16f)){const _0x1cb466=[];for(const [_0x28d3e2,_0x19adf3]of Object[_0x36ffb2(0x188)](_0x556768[_0x36ffb2(0x19c)])){_0x19adf3?.[_0x36ffb2(0x16c)]&&Array[_0x36ffb2(0x17e)](_0x19adf3[_0x36ffb2(0x16c)])&&_0x19adf3[_0x36ffb2(0x16c)][_0x36ffb2(0x132)](_0x5a5dec=>typeof _0x5a5dec===_0x36ffb2(0x144)&&_0x5a5dec[_0x36ffb2(0x1a5)](_0x36ffb2(0x15b)))&&_0x1cb466[_0x36ffb2(0x176)](_0x28d3e2);}for(const _0x413a1c of _0x1cb466){delete _0x556768[_0x36ffb2(0x19c)][_0x413a1c];}return _0x1cb466[_0x36ffb2(0x183)]>0x0&&writeFileSync(_0x53318a[_0x36ffb2(0x1a1)][_0x36ffb2(0x15f)],JSON[_0x36ffb2(0x142)](_0x556768,null,0x2)+'\x0a',_0x36ffb2(0x169)),{'step':0x4,'label':_0x36ffb2(0x15a),'ok':!![],'detail':_0x36ffb2(0x151)+_0x1cb466[_0x36ffb2(0x154)](',\x20')+_0x36ffb2(0x18a)+_0x53318a[_0x36ffb2(0x1a1)][_0x36ffb2(0x15f)]};}return{'step':0x4,'label':_0x36ffb2(0x15a),'ok':!![],'detail':_0x36ffb2(0x158)};}catch(_0x4b3434){return{'step':0x4,'label':_0x36ffb2(0x15a),'ok':![],'detail':_0x4b3434[_0x36ffb2(0x1a3)]};}}function execSkillsRemove(_0x31e434,_0x1cba89){const _0x260960=a117_0xcd8c1c,_0x48adee=runNpxSkillsRemove(_0x31e434,{'stdio':_0x260960(0x190),'yes':_0x1cba89});return{'step':0x5,'label':_0x260960(0x168),'ok':_0x48adee['ok'],'detail':_0x48adee['ok']?_0x260960(0x133):_0x48adee[_0x260960(0x162)]??'exit\x20'+_0x48adee[_0x260960(0x155)]};}function execSkillsAdd(_0x51fc76,_0x5e1b84){const _0x1d276b=a117_0xcd8c1c,_0x5c3795=runNpxSkillsAddGlobal(_0x51fc76,_0x1d276b(0x189),{'stdio':_0x1d276b(0x190),'yes':_0x5e1b84});return{'step':0x6,'label':_0x1d276b(0x164),'ok':_0x5c3795['ok'],'detail':_0x5c3795['ok']?'lovrabet/rabetbase\x20installed\x20globally':_0x5c3795[_0x1d276b(0x162)]??'exit\x20'+_0x5c3795[_0x1d276b(0x155)]};}function execUpgradeSdk(_0x554ec3){const _0x1d8b4c=a117_0xcd8c1c;if(!_0x554ec3['sdkUpgrade'])return{'step':0x7,'label':_0x1d8b4c(0x134),'ok':!![],'detail':_0x1d8b4c(0x17f)};const {pkgPath:_0x12c4c7,currentVersion:_0x13745a,field:_0x519551}=_0x554ec3['sdkUpgrade'];try{const _0x38adf9=readFileSync(_0x12c4c7,_0x1d8b4c(0x169)),_0x39ce98=JSON['parse'](_0x38adf9);return _0x39ce98[_0x519551][_0x1d8b4c(0x165)]=_0x1d8b4c(0x19f),writeFileSync(_0x12c4c7,JSON[_0x1d8b4c(0x142)](_0x39ce98,null,0x2)+'\x0a',_0x1d8b4c(0x169)),{'step':0x7,'label':_0x1d8b4c(0x134),'ok':!![],'detail':_0x519551+_0x1d8b4c(0x15d)+_0x13745a+'\x20→\x20latest'};}catch(_0x362699){return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':![],'detail':_0x362699[_0x1d8b4c(0x1a3)]};}}function tryStat(_0x122f2b){try{return statSync(_0x122f2b);}catch{return undefined;}}function printSummary(_0x54acc2){const _0x5675dd=a117_0xcd8c1c;console[_0x5675dd(0x197)](''),console[_0x5675dd(0x197)](a117_0x2f4a59[_0x5675dd(0x12a)]('===\x20Upgrade\x20Summary\x20===')),console['log']('');for(const _0x3c84ae of _0x54acc2){const _0x519e90=_0x3c84ae['ok']?a117_0x2f4a59[_0x5675dd(0x195)]('OK'):a117_0x2f4a59[_0x5675dd(0x15e)](_0x5675dd(0x172));console[_0x5675dd(0x197)]('\x20\x20'+_0x519e90+_0x5675dd(0x19e)+_0x3c84ae[_0x5675dd(0x1aa)]+':\x20'+_0x3c84ae[_0x5675dd(0x12d)]);if(_0x3c84ae[_0x5675dd(0x196)])console[_0x5675dd(0x197)]('\x20\x20\x20\x20\x20\x20\x20'+a117_0x2f4a59[_0x5675dd(0x129)](_0x3c84ae[_0x5675dd(0x196)]));}console[_0x5675dd(0x197)]('');}export async function upgradeApp(_0x2313f1,_0x1992bc){const _0x37aa71=a117_0xcd8c1c,_0x4c5823=process[_0x37aa71(0x137)](),_0x5b147a=analyse(_0x4c5823),_0x318562=!_0x5b147a['configMigration']&&_0x5b147a[_0x37aa71(0x199)][_0x37aa71(0x183)]===0x0&&!_0x5b147a['oldMcpConfig']&&!_0x5b147a[_0x37aa71(0x170)]&&!_0x5b147a['sdkUpgrade'];if(_0x318562){console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x195)]('No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.'));return;}printReport(_0x5b147a);const _0x1c12b2=!!(_0x1992bc[_0x37aa71(0x18c)]||_0x1992bc['Y']||_0x2313f1);if(!_0x1c12b2)try{const _0x1928b1=await askConfirm(_0x37aa71(0x12f));if(!_0x1928b1){console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x129)](_0x37aa71(0x182)));return;}}catch(_0x243ee9){if(_0x243ee9?.[_0x37aa71(0x1a3)]===_0x37aa71(0x13c)){console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x129)]('Upgrade\x20cancelled.'));return;}throw _0x243ee9;}const _0x26b025=[],_0x49c7a3=a117_0x19da61({'text':_0x37aa71(0x17a),'color':'cyan'})['start'](),_0x4979ff=execConfigMigration(_0x5b147a,_0x4c5823);_0x26b025[_0x37aa71(0x176)](_0x4979ff),_0x49c7a3[_0x4979ff['ok']?_0x37aa71(0x157):_0x37aa71(0x14f)]('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0x4979ff[_0x37aa71(0x196)]??(_0x4979ff['ok']?_0x37aa71(0x1a7):_0x37aa71(0x187))));const _0x4e4d1c=resolve(_0x4c5823,_0x37aa71(0x198)),_0x2772b3=a117_0x19da61({'text':_0x37aa71(0x12b),'color':'cyan'})['start']();if(existsSync(_0x4e4d1c))try{rmSync(_0x4e4d1c,{'recursive':!![],'force':!![]}),_0x2772b3[_0x37aa71(0x157)](_0x37aa71(0x16e)),_0x26b025[_0x37aa71(0x176)]({'step':0x2,'label':_0x37aa71(0x150),'ok':!![]});}catch(_0x22be8c){_0x2772b3[_0x37aa71(0x14f)](_0x37aa71(0x147)+_0x22be8c[_0x37aa71(0x1a3)]),_0x26b025[_0x37aa71(0x176)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x22be8c[_0x37aa71(0x1a3)]});}else _0x2772b3[_0x37aa71(0x13e)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x26b025[_0x37aa71(0x176)]({'step':0x2,'label':_0x37aa71(0x150),'ok':!![],'detail':_0x37aa71(0x18b)});const _0x205ea0=a117_0x19da61({'text':_0x37aa71(0x16a),'color':'cyan'})[_0x37aa71(0x153)](),_0x3dd88b=execRemoveOldArtifacts(_0x5b147a[_0x37aa71(0x199)]);_0x26b025['push'](_0x3dd88b),_0x205ea0[_0x3dd88b['ok']?_0x37aa71(0x157):_0x37aa71(0x14f)](_0x37aa71(0x18e)+(_0x3dd88b[_0x37aa71(0x196)]??(_0x3dd88b['ok']?'done':_0x37aa71(0x187))));const _0x4dc3a3=a117_0x19da61({'text':'Step\x204/7:\x20Cleaning\x20MCP\x20config...','color':_0x37aa71(0x156)})[_0x37aa71(0x153)](),_0x47ebdb=execCleanMcp(_0x5b147a);_0x26b025['push'](_0x47ebdb),_0x4dc3a3[_0x47ebdb['ok']?_0x37aa71(0x157):_0x37aa71(0x14f)](_0x37aa71(0x166)+(_0x47ebdb[_0x37aa71(0x196)]??(_0x47ebdb['ok']?_0x37aa71(0x1a7):_0x37aa71(0x187))));const _0x55bc56=a117_0x19da61({'text':_0x37aa71(0x167),'color':'cyan'})[_0x37aa71(0x153)](),_0x2cec2c=execSkillsRemove(_0x4c5823,_0x1c12b2);_0x26b025[_0x37aa71(0x176)](_0x2cec2c),_0x55bc56[_0x2cec2c['ok']?_0x37aa71(0x157):'fail'](_0x37aa71(0x160)+(_0x2cec2c[_0x37aa71(0x196)]??(_0x2cec2c['ok']?_0x37aa71(0x1a7):_0x37aa71(0x187))));const _0x433143=a117_0x19da61({'text':_0x37aa71(0x14a),'color':'cyan'})[_0x37aa71(0x153)](),_0x3032ee=execSkillsAdd(_0x4c5823,_0x1c12b2);_0x26b025[_0x37aa71(0x176)](_0x3032ee),_0x433143[_0x3032ee['ok']?_0x37aa71(0x157):_0x37aa71(0x14f)](_0x37aa71(0x18d)+(_0x3032ee[_0x37aa71(0x196)]??(_0x3032ee['ok']?_0x37aa71(0x1a7):'failed')));const _0x10672e=a117_0x19da61({'text':_0x37aa71(0x194),'color':_0x37aa71(0x156)})[_0x37aa71(0x153)](),_0xd8e303=execUpgradeSdk(_0x5b147a);_0x26b025[_0x37aa71(0x176)](_0xd8e303),_0x10672e[_0xd8e303['ok']?_0x37aa71(0x157):_0x37aa71(0x14f)](_0x37aa71(0x19a)+(_0xd8e303[_0x37aa71(0x196)]??(_0xd8e303['ok']?_0x37aa71(0x1a7):_0x37aa71(0x187)))),printSummary(_0x26b025);const _0x386f7c=_0x26b025[_0x37aa71(0x132)](_0x264ae5=>!_0x264ae5['ok']);_0x386f7c?console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x139)](_0x37aa71(0x128))):console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x195)](_0x37aa71(0x146))),_0xd8e303['ok']&&_0x5b147a[_0x37aa71(0x191)]&&(console[_0x37aa71(0x197)](''),console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x12a)][_0x37aa71(0x156)](_0x37aa71(0x186))),console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x156)](_0x37aa71(0x127))),console[_0x37aa71(0x197)](''),console[_0x37aa71(0x197)](a117_0x2f4a59['white'](_0x37aa71(0x149))),console['log'](a117_0x2f4a59[_0x37aa71(0x178)](_0x37aa71(0x163))),console[_0x37aa71(0x197)](a117_0x2f4a59[_0x37aa71(0x178)](_0x37aa71(0x15c))),console[_0x37aa71(0x197)](''));}
|
package/lib/commands/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a118_0x19fe86=a118_0x1526;(function(_0x22fbbc,_0x2e9350){const _0x3cb886=a118_0x1526,_0x58898a=_0x22fbbc();while(!![]){try{const _0xf48b44=-parseInt(_0x3cb886(0x85))/0x1+parseInt(_0x3cb886(0x82))/0x2*(parseInt(_0x3cb886(0x80))/0x3)+-parseInt(_0x3cb886(0x8e))/0x4*(parseInt(_0x3cb886(0x9d))/0x5)+-parseInt(_0x3cb886(0xa4))/0x6+parseInt(_0x3cb886(0x91))/0x7*(-parseInt(_0x3cb886(0x7a))/0x8)+parseInt(_0x3cb886(0x83))/0x9*(parseInt(_0x3cb886(0x8c))/0xa)+-parseInt(_0x3cb886(0xa0))/0xb*(-parseInt(_0x3cb886(0xa3))/0xc);if(_0xf48b44===_0x2e9350)break;else _0x58898a['push'](_0x58898a['shift']());}catch(_0x1bb090){_0x58898a['push'](_0x58898a['shift']());}}}(a118_0x3a79,0x416a0));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';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';function a118_0x3a79(){const _0x542eb8=['run','has','Platform\x20Issue','project','Quick\x20Start','2125gvUTVC','command','set','1358577GkHLfF','Configuration','from','12tWNgtA','123930QSLZhT','build','create','BFF\x20Scripts','auth','length','description','Code\x20Generation','875624wQLwuB','App\x20Management','Skills','Menu','Project','Schema','670863sLIrih','\x20\x20[high-risk-write]','4qrtvqk','4253031QSinpI','show','105286wBGsJv','Logs','skill','install','commands','Run\x20any\x20package.json\x20script','Run\x20Scripts','10yfdsKR','isSingleCommand','4052XkpZiC','wildcardDef','push','14EDnSmQ','preview','Database\x20Connections','Instant\x20API','start','service','get'];a118_0x3a79=function(){return _0x542eb8;};return a118_0x3a79();}import{initDefinitions}from'../commands/init/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x11433c){const _0x218a3f=a118_0x1526;for(const _0x19f4db of _0x11433c){definitions[_0x218a3f(0x9f)](_0x19f4db['service']+':'+_0x19f4db['command'],_0x19f4db);let _0x449334=serviceGroups[_0x218a3f(0x97)](_0x19f4db[_0x218a3f(0x96)]);!_0x449334&&(_0x449334=[],serviceGroups[_0x218a3f(0x9f)](_0x19f4db[_0x218a3f(0x96)],_0x449334)),_0x449334['push'](_0x19f4db);}}function registerDeclarativeService(_0x563590,_0x5c5035,_0x3ed5f2){const _0x44bff4=a118_0x1526;registerDefinitions(_0x5c5035);_0x3ed5f2?.[_0x44bff4(0x8f)]&®isterDefinitions([_0x3ed5f2[_0x44bff4(0x8f)]]);const _0x5ec500=_0x206419=>_0x206419==='read'?'':_0x206419==='write'?'\x20\x20[write]':_0x44bff4(0x81),_0x34b6fb={'service':_0x5c5035[0x0][_0x44bff4(0x96)],'label':_0x563590,'commands':_0x5c5035['map'](_0x2cf342=>({'command':_0x2cf342[_0x44bff4(0x9e)],'description':_0x2cf342[_0x44bff4(0x78)],'tag':_0x5ec500(_0x2cf342['risk'])})),'declarative':!![],'defaultCommand':_0x3ed5f2?.['defaultCommand']??(_0x3ed5f2?.[_0x44bff4(0x8d)]?_0x5c5035[0x0]['command']:undefined),'wildcardDef':_0x3ed5f2?.['wildcardDef'],'isSingleCommand':_0x3ed5f2?.[_0x44bff4(0x8d)]};serviceRegistry[_0x44bff4(0x90)](_0x34b6fb),serviceByName['set'](_0x34b6fb[_0x44bff4(0x96)],_0x34b6fb);}registerDeclarativeService(a118_0x19fe86(0x9c),initDefinitions,{'defaultCommand':'run','isSingleCommand':!![]}),registerDeclarativeService(a118_0x19fe86(0x7e),projectDefinitions),registerDeclarativeService(a118_0x19fe86(0x7b),appDefinitions),registerDeclarativeService(a118_0x19fe86(0x8b),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a118_0x19fe86(0x77)]-0x1];last[a118_0x19fe86(0x89)]=[{'command':'<script>','description':a118_0x19fe86(0x8a),'tag':''}];}registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':'login'}),registerDeclarativeService('Self\x20Update',[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a118_0x19fe86(0x7f),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a118_0x19fe86(0xa1),configDefinitions),registerDeclarativeService(a118_0x19fe86(0x9a),issueDefinitions),registerDeclarativeService('API',apiDefinitions),registerDeclarativeService(a118_0x19fe86(0x7d),menuDefinitions),registerDeclarativeService(a118_0x19fe86(0x93),dbDefinitions),registerDeclarativeService('Dataset\x20&\x20Operations',datasetDefinitions),registerDeclarativeService('Smart\x20List\x20Pages',pageDefinitions),registerDeclarativeService(a118_0x19fe86(0x94),dataDefinitions),registerDeclarativeService(a118_0x19fe86(0x75),bffDefinitions),registerDeclarativeService('SQL\x20Queries',sqlDefinitions),registerDeclarativeService(a118_0x19fe86(0x79),codegenDefinitions),registerDeclarativeService(a118_0x19fe86(0x7c),skillDefinitions),registerDeclarativeService(a118_0x19fe86(0x86),logsDefinitions,{'defaultCommand':a118_0x19fe86(0x84)});export const deprecatedAliases={'create':{'service':a118_0x19fe86(0x9b),'command':a118_0x19fe86(0x74)},'start':{'service':a118_0x19fe86(0x98),'command':a118_0x19fe86(0x95)},'build':{'service':a118_0x19fe86(0x98),'command':a118_0x19fe86(0xa5)},'preview':{'service':a118_0x19fe86(0x98),'command':a118_0x19fe86(0x92)},'logout':{'service':a118_0x19fe86(0x76),'command':'logout'},'skills':{'service':a118_0x19fe86(0x87),'command':a118_0x19fe86(0x88)}};export const deprecatedSubcommands={'bff':{'new':'create'},'sql':{'new':a118_0x19fe86(0x74)}};export function resolveDeprecatedSubcommand(_0x320e34,_0x733d4c){return deprecatedSubcommands[_0x320e34]?.[_0x733d4c];}function a118_0x1526(_0x450a2d,_0x4944a5){_0x450a2d=_0x450a2d-0x74;const _0x3a790b=a118_0x3a79();let _0x152694=_0x3a790b[_0x450a2d];return _0x152694;}export function findDefinition(_0x54204c,_0x4b65fd){const _0x45441f=a118_0x19fe86;return definitions[_0x45441f(0x97)](_0x54204c+':'+_0x4b65fd);}export function isKnownService(_0x46b3ca){const _0x123f9f=a118_0x19fe86;return serviceByName[_0x123f9f(0x99)](_0x46b3ca);}export function isDeclarativeService(_0x4f0f8f){const _0x2bcc33=a118_0x19fe86;return serviceGroups['has'](_0x4f0f8f)||serviceByName[_0x2bcc33(0x97)](_0x4f0f8f)?.[_0x2bcc33(0x8f)]!==undefined;}export function getServiceEntry(_0x46348a){const _0x48ce0c=a118_0x19fe86;return serviceByName[_0x48ce0c(0x97)](_0x46348a);}export function getLegacyHandler(_0x285b75,_0x2452e4){return undefined;}export function getAllDefinitions(){const _0x2a8867=a118_0x19fe86;return Array[_0x2a8867(0xa2)](definitions['values']());}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a119_0x3e789f=a119_0x2536;(function(_0x592078,_0x15cb44){const _0x45f5e6=a119_0x2536,_0x2a8333=_0x592078();while(!![]){try{const _0x18b6cb=parseInt(_0x45f5e6(0x17c))/0x1+parseInt(_0x45f5e6(0x169))/0x2*(-parseInt(_0x45f5e6(0x19c))/0x3)+-parseInt(_0x45f5e6(0x194))/0x4*(parseInt(_0x45f5e6(0x191))/0x5)+-parseInt(_0x45f5e6(0x18d))/0x6*(parseInt(_0x45f5e6(0x17b))/0x7)+-parseInt(_0x45f5e6(0x19b))/0x8+-parseInt(_0x45f5e6(0x18c))/0x9*(-parseInt(_0x45f5e6(0x195))/0xa)+parseInt(_0x45f5e6(0x16f))/0xb;if(_0x18b6cb===_0x15cb44)break;else _0x2a8333['push'](_0x2a8333['shift']());}catch(_0x3056b8){_0x2a8333['push'](_0x2a8333['shift']());}}}(a119_0x2da8,0x35eee));import{readFileSync,existsSync}from'node:fs';import{CLI_BIN_NAME}from'../../constant/cli.js';import{resolve,delimiter,join}from'node:path';import{spawn}from'node:child_process';import{CliErrors}from'../../errors.js';import{checkSdkVersion,printSdkUpgradeWarning}from'../../utils/check-sdk-version.js';function a119_0x2da8(){const _0x26feea=['\x20run\x20','vite\x20preview\x20exited\x20with\x20code\x20','map','has','dev','9vbAGjS','45726PruMmu','.bin','scripts','padEnd','1805crkVxP','bool','\x20\x20AVAILABLE\x20SCRIPTS\x20\x20(current\x20project)','2416Lftfcu','1859470bLzwhz','--watch','\x20run\x20preview','push','build','keys','1524968bktDqL','377679JAwlIr','\x20run\x20<script>\x0a','node_modules','join','bun','yarn.lock','slice','run','vite','(none)','Script\x20name\x20defined\x20in\x20package.json','read','Script\x20\x22','bun.lockb','close','needsUpgrade','Run\x20a\x20package.json\x20script','watch','pnpm','Available:\x20','4vnJYGb','\x22\x20not\x20found\x20in\x20package.json.','boolean','\x20exited\x20with\x20code\x20','length','error','7629523RlPgag','belowMinimum','start','No\x20scripts\x20defined\x20in\x20package.json.','parse','\x20\x20\x20\x20','vite\x20build\x20--watch\x20exited\x20with\x20code\x20','entries','preview','\x20run\x20start','log','\x20run\x20build','21GFwyAl','24684RVRtrb','\x0a\x20\x20Usage:\x20','\x20run\x20preview\x20--watch\x20\x20\x20#\x20parallel\x20build\x20--watch\x20+\x20preview','Enable\x20watch\x20mode\x20for\x20preview','max','inherit','validation','No\x20package.json\x20found\x20in\x20current\x20directory.','bun.lock','args','cwd'];a119_0x2da8=function(){return _0x26feea;};return a119_0x2da8();}import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../utils/cli-version-check.js';const VERSION_CHECK_SCRIPTS=new Set([a119_0x3e789f(0x171),a119_0x3e789f(0x18b)]);function readPackageScripts(_0x4238b2){const _0x2033a3=a119_0x3e789f,_0x3b5f54=resolve(_0x4238b2,'package.json');if(!existsSync(_0x3b5f54))return null;try{const _0x574564=JSON[_0x2033a3(0x173)](readFileSync(_0x3b5f54,'utf-8'));return _0x574564[_0x2033a3(0x18f)]??{};}catch{return null;}}function detectPackageManager(_0x33f58f){const _0x3dfe85=a119_0x3e789f;if(existsSync(resolve(_0x33f58f,_0x3dfe85(0x1a9)))||existsSync(resolve(_0x33f58f,_0x3dfe85(0x184))))return _0x3dfe85(0x1a0);if(existsSync(resolve(_0x33f58f,'pnpm-lock.yaml')))return _0x3dfe85(0x167);if(existsSync(resolve(_0x33f58f,_0x3dfe85(0x1a1))))return'yarn';return'npm';}async function versionCheck(_0xf0c3e0){const _0x237d46=a119_0x3e789f,_0x2c9600=await checkCliVersion();(_0x2c9600[_0x237d46(0x164)]||_0x2c9600[_0x237d46(0x170)])&&(printCliUpgradeWarning(_0x2c9600),assertCliVersionSupported(_0x2c9600));const _0x180a28=await checkSdkVersion(_0xf0c3e0);if(_0x180a28[_0x237d46(0x164)])printSdkUpgradeWarning(_0x180a28);}function spawnScript(_0xe36f0d,_0x5d663f,_0x10821e,_0x5a9556){return new Promise((_0x2ce369,_0x1f560d)=>{const _0x144bd5=a119_0x2536,_0x9dac92=[_0x144bd5(0x1a3),_0x5d663f,..._0x10821e],_0x569510=spawn(_0xe36f0d,_0x9dac92,{'cwd':_0x5a9556,'stdio':_0x144bd5(0x181),'shell':!![],'env':{...process.env,'PATH':''+join(_0x5a9556,'node_modules',_0x144bd5(0x18e))+delimiter+process.env.PATH}});_0x569510['on']('close',_0xd1f0e6=>{const _0x4bc601=_0x144bd5;if(_0xd1f0e6===0x0||_0xd1f0e6===null)_0x2ce369();else _0x1f560d(new Error(_0xe36f0d+_0x4bc601(0x187)+_0x5d663f+_0x4bc601(0x16c)+_0xd1f0e6));}),_0x569510['on'](_0x144bd5(0x16e),_0x1f560d);});}function spawnViteBuildWatch(_0x5f129e){return new Promise((_0x522f63,_0x46afc9)=>{const _0x3d1cba=a119_0x2536,_0x52cb9c=spawn(_0x3d1cba(0x1a4),[_0x3d1cba(0x199),_0x3d1cba(0x196)],{'cwd':_0x5f129e,'stdio':_0x3d1cba(0x181),'shell':!![],'env':{...process.env,'PATH':''+join(_0x5f129e,_0x3d1cba(0x19e),_0x3d1cba(0x18e))+delimiter+process.env.PATH}});_0x52cb9c['on'](_0x3d1cba(0x1aa),_0x257430=>{const _0x222493=_0x3d1cba;if(_0x257430===0x0||_0x257430===null)_0x522f63();else _0x46afc9(new Error(_0x222493(0x175)+_0x257430));}),_0x52cb9c['on'](_0x3d1cba(0x16e),_0x46afc9);});}function a119_0x2536(_0x16b58a,_0x2fb036){_0x16b58a=_0x16b58a-0x164;const _0x2da80f=a119_0x2da8();let _0x253652=_0x2da80f[_0x16b58a];return _0x253652;}function spawnVitePreview(_0x19a95b){return new Promise((_0x31364f,_0x4bffa5)=>{const _0x8304dd=a119_0x2536,_0x2a24df=spawn(_0x8304dd(0x1a4),[_0x8304dd(0x177)],{'cwd':_0x19a95b,'stdio':_0x8304dd(0x181),'shell':!![],'env':{...process.env,'PATH':''+join(_0x19a95b,'node_modules',_0x8304dd(0x18e))+delimiter+process.env.PATH}});_0x2a24df['on']('close',_0x5f2006=>{const _0x3cecd9=_0x8304dd;if(_0x5f2006===0x0||_0x5f2006===null)_0x31364f();else _0x4bffa5(new Error(_0x3cecd9(0x188)+_0x5f2006));}),_0x2a24df['on']('error',_0x4bffa5);});}const runFlags=[{'name':a119_0x3e789f(0x166),'type':a119_0x3e789f(0x16b),'description':a119_0x3e789f(0x17f),'default':![]}];export const runDefinition={'service':a119_0x3e789f(0x1a3),'command':a119_0x3e789f(0x1a3),'description':a119_0x3e789f(0x165),'risk':a119_0x3e789f(0x1a7),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':'script','description':a119_0x3e789f(0x1a6),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x31a9e4=a119_0x3e789f,_0x5b2c78=readPackageScripts(process[_0x31a9e4(0x186)]()),_0x3c186b=[];if(_0x5b2c78&&Object[_0x31a9e4(0x19a)](_0x5b2c78)[_0x31a9e4(0x16d)]>0x0){const _0x548af6=Object['keys'](_0x5b2c78),_0xb3c4b9=Math[_0x31a9e4(0x180)](..._0x548af6[_0x31a9e4(0x189)](_0x1955c8=>_0x1955c8[_0x31a9e4(0x16d)]));_0x3c186b[_0x31a9e4(0x198)](_0x31a9e4(0x193));for(const [_0x2757b1,_0x5b765e]of Object[_0x31a9e4(0x176)](_0x5b2c78)){_0x3c186b['push'](_0x31a9e4(0x174)+CLI_BIN_NAME+_0x31a9e4(0x187)+_0x2757b1[_0x31a9e4(0x190)](_0xb3c4b9+0x2)+'#\x20'+_0x5b765e);}}else _0x3c186b[_0x31a9e4(0x198)]('\x20\x20EXAMPLES'),_0x3c186b[_0x31a9e4(0x198)](_0x31a9e4(0x174)+CLI_BIN_NAME+_0x31a9e4(0x178)),_0x3c186b[_0x31a9e4(0x198)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x31a9e4(0x17a)),_0x3c186b[_0x31a9e4(0x198)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x31a9e4(0x197)),_0x3c186b[_0x31a9e4(0x198)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x31a9e4(0x17e));return _0x3c186b[_0x31a9e4(0x19f)]('\x0a');},async 'execute'(_0x2725e6){const _0x74f48d=a119_0x3e789f,_0x26d031=process['cwd'](),_0x253fa8=_0x2725e6[_0x74f48d(0x185)][0x0],_0x4ab598=_0x2725e6[_0x74f48d(0x185)][_0x74f48d(0x1a2)](0x1),_0x20d34f=readPackageScripts(_0x26d031);if(!_0x20d34f)throw CliErrors[_0x74f48d(0x182)](_0x74f48d(0x183));if(!_0x253fa8){const _0xb69071=Object['keys'](_0x20d34f);if(_0xb69071[_0x74f48d(0x16d)]===0x0)console['log'](_0x74f48d(0x172));else{console[_0x74f48d(0x179)]('\x0a\x20\x20Available\x20scripts:\x0a');const _0x550bc8=Math[_0x74f48d(0x180)](..._0xb69071[_0x74f48d(0x189)](_0x54e907=>_0x54e907[_0x74f48d(0x16d)]));for(const [_0x3795e4,_0x1613d1]of Object[_0x74f48d(0x176)](_0x20d34f)){console[_0x74f48d(0x179)](_0x74f48d(0x174)+_0x3795e4[_0x74f48d(0x190)](_0x550bc8+0x2)+_0x1613d1);}console[_0x74f48d(0x179)](_0x74f48d(0x17d)+CLI_BIN_NAME+_0x74f48d(0x19d));}return{'ok':!![]};}if(!_0x20d34f[_0x253fa8])throw CliErrors['validation'](_0x74f48d(0x1a8)+_0x253fa8+_0x74f48d(0x16a),_0x74f48d(0x168)+(Object[_0x74f48d(0x19a)](_0x20d34f)[_0x74f48d(0x19f)](',\x20')||_0x74f48d(0x1a5)));const _0x384810=detectPackageManager(_0x26d031);VERSION_CHECK_SCRIPTS[_0x74f48d(0x18a)](_0x253fa8)&&await versionCheck(_0x26d031);if(_0x253fa8===_0x74f48d(0x177)&&_0x2725e6[_0x74f48d(0x192)](_0x74f48d(0x166)))return await Promise['all']([spawnViteBuildWatch(_0x26d031),spawnVitePreview(_0x26d031)]),{'ok':!![]};return await spawnScript(_0x384810,_0x253fa8,_0x4ab598,_0x26d031),{'ok':!![]};}};
|
package/lib/commands/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a120_0x5391(_0x1d3628,_0x639827){_0x1d3628=_0x1d3628-0x86;const _0x872a45=a120_0x872a();let _0x5391e4=_0x872a45[_0x1d3628];return _0x5391e4;}function a120_0x872a(){const _0x41f465=['schema','931086TBOjmM','8665784VGtLxo','20QcPrVZ','12MLWoUT','631386MzPDRx','2321694yedihy','720604HDUCKG','Export\x20machine-readable\x20command\x20schema\x20(JSON)','2657864KiBrtO','read','4uPkybd','export','30FjodWY','529331ydjAFB','json'];a120_0x872a=function(){return _0x41f465;};return a120_0x872a();}const a120_0x5bf417=a120_0x5391;(function(_0x21d032,_0x4def0b){const _0x49a83f=a120_0x5391,_0x396a15=_0x21d032();while(!![]){try{const _0x14c368=parseInt(_0x49a83f(0x95))/0x1*(-parseInt(_0x49a83f(0x92))/0x2)+parseInt(_0x49a83f(0x88))/0x3+-parseInt(_0x49a83f(0x8e))/0x4*(-parseInt(_0x49a83f(0x8a))/0x5)+parseInt(_0x49a83f(0x8b))/0x6*(parseInt(_0x49a83f(0x8c))/0x7)+parseInt(_0x49a83f(0x89))/0x8+parseInt(_0x49a83f(0x8d))/0x9*(-parseInt(_0x49a83f(0x94))/0xa)+parseInt(_0x49a83f(0x90))/0xb;if(_0x14c368===_0x4def0b)break;else _0x396a15['push'](_0x396a15['shift']());}catch(_0x447d3c){_0x396a15['push'](_0x396a15['shift']());}}}(a120_0x872a,0xabca1));import{buildSchemaPayload}from'../framework/schema-export.js';async function execute(_0x4bc684){const _0x108f94=await buildSchemaPayload();return{'ok':!![],'data':_0x108f94};}export const schemaDefinition={'service':a120_0x5bf417(0x87),'command':a120_0x5bf417(0x93),'description':a120_0x5bf417(0x8f),'risk':a120_0x5bf417(0x91),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a120_0x5bf417(0x86),'flags':[],'execute':execute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a121_0x12fb37=a121_0xb7b6;(function(_0x14bc00,_0x3357f3){const _0x4950f1=a121_0xb7b6,_0x292d57=_0x14bc00();while(!![]){try{const _0x2a0ac8=-parseInt(_0x4950f1(0x13d))/0x1+parseInt(_0x4950f1(0x13c))/0x2*(parseInt(_0x4950f1(0x151))/0x3)+parseInt(_0x4950f1(0x133))/0x4+-parseInt(_0x4950f1(0x13f))/0x5*(-parseInt(_0x4950f1(0x13a))/0x6)+parseInt(_0x4950f1(0x135))/0x7*(-parseInt(_0x4950f1(0x13e))/0x8)+parseInt(_0x4950f1(0x142))/0x9*(-parseInt(_0x4950f1(0x139))/0xa)+-parseInt(_0x4950f1(0x137))/0xb*(-parseInt(_0x4950f1(0x141))/0xc);if(_0x2a0ac8===_0x3357f3)break;else _0x292d57['push'](_0x292d57['shift']());}catch(_0x3f004c){_0x292d57['push'](_0x292d57['shift']());}}}(a121_0x43a5,0xeac41));import{CliErrors}from'../../errors.js';function a121_0x43a5(){const _0x58a6d3=['2125333ZMROVf','../../skills/npx-skills-add.js','1936JvSGDb',')...','9780OmjOzK','6SAkTpG','info','34VLWmsD','104995XUcFiY','48JzBzVR','3146255uAQljI','cwd','7272xiAPNm','9189ALPKbm','inherit','skill-install','pipe','install','apiError','skipped','Installing\x20official\x20skill\x20via\x20npx\x20(','npx\x20skills\x20add\x20failed:\x20','Install\x20developer\x20skill\x20package','Skipped\x20npx\x20(RABETBASE_SKIP_NPX_SKILLS=1);\x20assuming\x20skill\x20is\x20already\x20present.','Check\x20network\x20connectivity\x20and\x20try\x20again.','log','skill','write','249987zzuxoJ','error','unknown','6937392ZbCrzp','执行安装技能包命令(委托给\x20npx\x20skills\x20add\x20-g\x20-y)'];a121_0x43a5=function(){return _0x58a6d3;};return a121_0x43a5();}import{CLI_BIN_NAME}from'../../constant/cli.js';function a121_0xb7b6(_0x5db376,_0x2e569e){_0x5db376=_0x5db376-0x133;const _0x43a564=a121_0x43a5();let _0xb7b645=_0x43a564[_0x5db376];return _0xb7b645;}import{logger}from'../../utils/logger.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE}from'../../skills/npx-skills-add.js';export const skillDefinitions=[{'service':a121_0x12fb37(0x14f),'command':a121_0x12fb37(0x146),'description':a121_0x12fb37(0x14b),'risk':a121_0x12fb37(0x150),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x268519){const _0x499f04=a121_0x12fb37;logger['setLogPath'](process[_0x499f04(0x140)]()),logger[_0x499f04(0x13b)](_0x499f04(0x144),_0x499f04(0x134));const {runNpxSkillsAddGlobal:_0x7c9922}=await import(_0x499f04(0x136)),_0x579295=_0x268519['nonInteractive']?_0x499f04(0x145):_0x499f04(0x143);console['log'](_0x499f04(0x149)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+_0x499f04(0x138));const _0x1559ff=_0x7c9922(process[_0x499f04(0x140)](),'lovrabet/rabetbase',{'stdio':_0x579295});if(_0x1559ff[_0x499f04(0x148)])console[_0x499f04(0x14e)](_0x499f04(0x14c));else{if(_0x1559ff['ok'])console[_0x499f04(0x14e)](CLI_BIN_NAME+'\x20skill\x20installed');else throw CliErrors[_0x499f04(0x147)](_0x499f04(0x14a)+(_0x1559ff[_0x499f04(0x152)]||_0x499f04(0x153)),_0x499f04(0x14d));}return{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a122_0xbbada6=a122_0x2ccd;(function(_0x563d5c,_0x5af9e1){const _0x3c4005=a122_0x2ccd,_0x177c7c=_0x563d5c();while(!![]){try{const _0x58b448=parseInt(_0x3c4005(0x175))/0x1+-parseInt(_0x3c4005(0x188))/0x2*(-parseInt(_0x3c4005(0x183))/0x3)+-parseInt(_0x3c4005(0x15b))/0x4+-parseInt(_0x3c4005(0x18c))/0x5+-parseInt(_0x3c4005(0x157))/0x6*(-parseInt(_0x3c4005(0x185))/0x7)+-parseInt(_0x3c4005(0x15e))/0x8*(parseInt(_0x3c4005(0x177))/0x9)+parseInt(_0x3c4005(0x170))/0xa*(parseInt(_0x3c4005(0x184))/0xb);if(_0x58b448===_0x5af9e1)break;else _0x177c7c['push'](_0x177c7c['shift']());}catch(_0x106c68){_0x177c7c['push'](_0x177c7c['shift']());}}}(a122_0x1f3a,0xc58f6));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';function a122_0x1f3a(){const _0x1c70b1=['high-risk-write','number','\x20\x20SELECT\x201\x20AS\x20id','File\x20already\x20exists:\x20','✎\x20手动输入\x20dbId','114mXAscX','105182icJhWp','623odBgxH','请输入\x20SQL\x20名称:','dbId','9556uaoOGk','stringify','parse','toISOString','7553410vYdawc','str','name','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','SQL\x20query\x20display\x20name','请输入目标数据库\x20dbId:','flagMissing','flag','validation','isFinite','sql','length','appCode','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','db-id','请选择本地\x20SQL\x20模式:','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','适合带动态标签的\x20MyBatis\x20XML\x20SQL','52884JCKEhE','nonInteractive','<server-generated-sqlCode>','trim','880412cdzMHl','Created\x20SQL\x20query\x20','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','224hAkiqn','sqlName','普通\x20SQL(sql)','请选择目标数据库:','map','SQL\x20名称不能为空','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','sqls','/smartapi/custom/saveUserCustomSql','join','string','sqlRootDir','description','mode','SELECT\x201\x20AS\x20id;','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','sqlCode','830WUeZji','dbId\x20必须为正整数','lastSync','isInteger','MyBatis\x20XML(mybatisXml)','899447rGMUzN','lockFilePath','38286OeCBkF','new','Local\x20SQL\x20file\x20mode','mybatisXml','dbName','POST','catch'];a122_0x1f3a=function(){return _0x1c70b1;};return a122_0x1f3a();}import{getDbName,listDatabases}from'../../core/db-resolver.js';function a122_0x2ccd(_0x1e3f67,_0x19c8b6){_0x1e3f67=_0x1e3f67-0x14d;const _0x1f3a57=a122_0x1f3a();let _0x2ccd75=_0x1f3a57[_0x1e3f67];return _0x2ccd75;}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(_0x2a152e){const _0x498fa6=a122_0x2ccd;if(_0x2a152e===_0x498fa6(0x17a))return[_0x498fa6(0x16d),_0x498fa6(0x180),'</select>','']['join']('\x0a');return[_0x498fa6(0x16c),''][_0x498fa6(0x167)]('\x0a');}export const sqlCreate={'service':a122_0xbbada6(0x14f),'command':'create','description':a122_0xbbada6(0x152),'risk':a122_0xbbada6(0x17e),'flags':[{'name':a122_0xbbada6(0x18e),'type':a122_0xbbada6(0x168),'description':a122_0xbbada6(0x190)},{'name':a122_0xbbada6(0x153),'type':a122_0xbbada6(0x17f),'description':'Target\x20database\x20ID'},{'name':'mode','type':a122_0xbbada6(0x168),'enum':[a122_0xbbada6(0x14f),a122_0xbbada6(0x17a)],'description':a122_0xbbada6(0x179)}],async 'validate'(_0x413bf1){const _0x439305=a122_0xbbada6;if(!_0x413bf1['nonInteractive'])return;if(!_0x413bf1[_0x439305(0x18d)](_0x439305(0x18e))['trim']())throw CliErrors[_0x439305(0x192)]('name','--name\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x1b18c8=resolveProvidedDbId(_0x413bf1);if(typeof _0x1b18c8!=='number'||!Number[_0x439305(0x14e)](_0x1b18c8)||_0x1b18c8<=0x0)throw CliErrors[_0x439305(0x192)](_0x439305(0x153),_0x439305(0x15d));if(!_0x413bf1[_0x439305(0x18d)](_0x439305(0x16b))[_0x439305(0x15a)]())throw CliErrors[_0x439305(0x192)](_0x439305(0x16b),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');},async 'dryRun'(_0x35c2d0){const _0x4694cf=a122_0xbbada6,_0x3d567a=loadSqlProjectConfig(_0x35c2d0[_0x4694cf(0x151)]),{sqlName:_0x3e5b96,dbId:_0x2fe5a5,dbName:_0x24bed1,mode:_0x2dfc0a}=await resolveSqlNewInputs(_0x35c2d0),_0x5be822=buildSqlRelativePath(_0x4694cf(0x159),_0x3e5b96,_0x24bed1,_0x2dfc0a,_0x2fe5a5),_0x72af85=_0x3d567a[_0x4694cf(0x169)]+'/'+_0x5be822;return{'method':_0x4694cf(0x17c),'url':_0x4694cf(0x166),'body':{'appCode':_0x35c2d0[_0x4694cf(0x151)],'sqlName':_0x3e5b96,'dbId':_0x2fe5a5,'mode':_0x2dfc0a,'localPath':_0x72af85},'description':_0x4694cf(0x164)+_0x3d567a[_0x4694cf(0x169)]};},async 'execute'(_0x205aab){const _0x9556dd=a122_0xbbada6,_0x1f5371=loadSqlProjectConfig(_0x205aab['appCode']),{sqlName:_0x5d2ab5,dbId:_0x40e2d8,dbName:_0x3d9745,mode:_0x168d83}=await resolveSqlNewInputs(_0x205aab),_0x15aadb=generateSqlTemplate(_0x168d83),_0x46e0db=await createSqlQuery({'appCode':_0x205aab[_0x9556dd(0x151)],'sqlName':_0x5d2ab5,'dbId':_0x40e2d8,'sqlContent':_0x15aadb}),_0x5a5f99=ensureRemoteSqlContent(_0x46e0db),_0x2f0694=_0x3d9745||await getDbName(_0x205aab[_0x9556dd(0x151)],_0x40e2d8)[_0x9556dd(0x17d)](()=>undefined),_0x872828=buildSqlRelativePath(_0x46e0db[_0x9556dd(0x16f)],_0x46e0db[_0x9556dd(0x15f)],_0x2f0694,_0x168d83,_0x40e2d8),_0x151680=_0x1f5371[_0x9556dd(0x169)]+'/'+_0x872828,_0x4d3b83=buildLocalSqlFileContent({'sqlCode':_0x46e0db[_0x9556dd(0x16f)],'sqlName':_0x46e0db[_0x9556dd(0x15f)],'dbId':_0x46e0db[_0x9556dd(0x187)]},_0x5a5f99,{'dbName':_0x2f0694,'mode':_0x168d83,'syncedAt':new Date()[_0x9556dd(0x18b)](),'description':_0x46e0db[_0x9556dd(0x16a)]});if(await fileExists(_0x151680))throw CliErrors['validation'](_0x9556dd(0x181)+_0x151680);await ensureParentDirectory(_0x151680),await writeFile(_0x151680,_0x4d3b83,'utf8');const _0x42ac69=await readSqlLockFile(_0x1f5371['lockFilePath']),{lockData:_0x3cd161,appLock:_0x268080}=ensureSqlLockScope(_0x42ac69??createEmptySqlLock(),_0x1f5371[_0x9556dd(0x151)],_0x1f5371['sqlRoot'],_0x9556dd(0x178));return _0x268080[_0x9556dd(0x165)][_0x46e0db[_0x9556dd(0x16f)]]={...buildSqlLockEntry(_0x46e0db,_0x5a5f99,computeSqlContentHash(_0x4d3b83),{'dbName':_0x2f0694}),'path':_0x872828,'mode':_0x168d83},_0x268080[_0x9556dd(0x172)]=new Date()[_0x9556dd(0x18b)](),await writeSqlLockFile(_0x1f5371[_0x9556dd(0x176)],_0x3cd161),{'ok':!![],'data':{'id':_0x46e0db['id'],'sqlCode':_0x46e0db[_0x9556dd(0x16f)],'sqlName':_0x46e0db['sqlName'],'dbId':_0x46e0db[_0x9556dd(0x187)],'path':_0x151680,'mode':_0x168d83},'message':_0x9556dd(0x15c)+_0x46e0db[_0x9556dd(0x16f)]};}};async function resolveSqlNewInputs(_0x57b8c8){const _0x25a104=await resolveSqlNameInput(_0x57b8c8),{dbId:_0x4e6c65,dbName:_0x3ea42c}=await resolveDbSelection(_0x57b8c8),_0x132704=await resolveSqlModeInput(_0x57b8c8);return{'sqlName':_0x25a104,'dbId':_0x4e6c65,'dbName':_0x3ea42c,'mode':_0x132704};}async function resolveSqlNameInput(_0x2df6a4){const _0x36c9b8=a122_0xbbada6,_0x3bdcad=_0x2df6a4['str'](_0x36c9b8(0x18e))[_0x36c9b8(0x15a)]();if(_0x3bdcad)return _0x3bdcad;if(_0x2df6a4[_0x36c9b8(0x158)])throw CliErrors[_0x36c9b8(0x192)](_0x36c9b8(0x18e),_0x36c9b8(0x16e));return(await input({'message':_0x36c9b8(0x186),'validate':_0x31d594=>_0x31d594[_0x36c9b8(0x15a)]()?!![]:_0x36c9b8(0x163)}))[_0x36c9b8(0x15a)]();}async function resolveDbSelection(_0x57272a){const _0x49e043=a122_0xbbada6,_0x4cc2b5=resolveProvidedDbId(_0x57272a);if(typeof _0x4cc2b5===_0x49e043(0x17f)&&Number[_0x49e043(0x14e)](_0x4cc2b5)&&_0x4cc2b5>0x0)return{'dbId':_0x4cc2b5,'dbName':await getDbName(_0x57272a['appCode'],_0x4cc2b5)[_0x49e043(0x17d)](()=>undefined)};if(_0x57272a[_0x49e043(0x158)])throw CliErrors[_0x49e043(0x192)](_0x49e043(0x153),'--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0xd83437=await listDatabases(_0x57272a[_0x49e043(0x151)])[_0x49e043(0x17d)](()=>[]);if(_0xd83437[_0x49e043(0x150)]===0x1)return{'dbId':_0xd83437[0x0]['dbId'],'dbName':_0xd83437[0x0][_0x49e043(0x17b)]};if(_0xd83437['length']>0x1){const _0xed732f=await select({'message':_0x49e043(0x161),'choices':[..._0xd83437[_0x49e043(0x162)](_0x5098cd=>({'name':_0x5098cd[_0x49e043(0x17b)]+'\x20('+_0x5098cd[_0x49e043(0x187)]+')','value':serializeDbSelection(_0x5098cd)})),{'name':_0x49e043(0x182),'value':'__manual__'}]});if(_0xed732f!=='__manual__')return deserializeDbSelection(_0xed732f);}const _0xee28e0=await input({'message':_0x49e043(0x191),'validate':_0x474fd4=>{const _0x4feca7=_0x49e043,_0x414b55=_0x474fd4[_0x4feca7(0x15a)]();if(!_0x414b55)return'dbId\x20不能为空';const _0x3f5bbe=Number(_0x414b55);if(!Number[_0x4feca7(0x173)](_0x3f5bbe)||_0x3f5bbe<=0x0)return _0x4feca7(0x171);return!![];}});return{'dbId':Number(_0xee28e0['trim']())};}async function resolveSqlModeInput(_0x25b748){const _0x5965cd=a122_0xbbada6,_0x2d227e=_0x25b748['str'](_0x5965cd(0x16b))['trim']();if(_0x2d227e===_0x5965cd(0x14f)||_0x2d227e===_0x5965cd(0x17a))return _0x2d227e;if(_0x25b748[_0x5965cd(0x158)])throw CliErrors['flagMissing']('mode',_0x5965cd(0x18f));return await select({'message':_0x5965cd(0x154),'choices':[{'name':_0x5965cd(0x160),'value':_0x5965cd(0x14f),'description':_0x5965cd(0x155)},{'name':_0x5965cd(0x174),'value':_0x5965cd(0x17a),'description':_0x5965cd(0x156)}]});}function serializeDbSelection(_0x50a85c){const _0xd8593e=a122_0xbbada6;return JSON[_0xd8593e(0x189)]({'dbId':_0x50a85c['dbId'],'dbName':_0x50a85c['dbName']});}function deserializeDbSelection(_0x480d72){const _0x547c27=a122_0xbbada6;try{const _0x3a3731=JSON[_0x547c27(0x18a)](_0x480d72);if(typeof _0x3a3731[_0x547c27(0x187)]===_0x547c27(0x17f)&&Number['isFinite'](_0x3a3731[_0x547c27(0x187)]))return{'dbId':_0x3a3731['dbId'],'dbName':_0x3a3731['dbName']};}catch{}throw CliErrors[_0x547c27(0x14d)]('Invalid\x20database\x20selection\x20payload:\x20'+_0x480d72);}function resolveProvidedDbId(_0x42072b){const _0x38df92=a122_0xbbada6,_0x1ce3aa=_0x42072b[_0x38df92(0x193)](_0x38df92(0x153));if(typeof _0x1ce3aa==='number'&&Number[_0x38df92(0x14e)](_0x1ce3aa))return _0x1ce3aa;return undefined;}
|
|
1
|
+
const a122_0x40ae5f=a122_0x3a2e;(function(_0x249b13,_0x1cdc97){const _0x431060=a122_0x3a2e,_0x310c82=_0x249b13();while(!![]){try{const _0x53ede6=parseInt(_0x431060(0x189))/0x1+parseInt(_0x431060(0x1c1))/0x2+-parseInt(_0x431060(0x19c))/0x3+parseInt(_0x431060(0x1b6))/0x4+parseInt(_0x431060(0x1b8))/0x5*(parseInt(_0x431060(0x187))/0x6)+parseInt(_0x431060(0x19e))/0x7*(-parseInt(_0x431060(0x18e))/0x8)+parseInt(_0x431060(0x1b4))/0x9*(-parseInt(_0x431060(0x1b0))/0xa);if(_0x53ede6===_0x1cdc97)break;else _0x310c82['push'](_0x310c82['shift']());}catch(_0x4f0e03){_0x310c82['push'](_0x310c82['shift']());}}}(a122_0x58c1,0x20845));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';function a122_0x58c1(){const _0x50426b=['str','mybatisXml','7938VsMDMd','dbId','348096jdOLJe','sqlRootDir','5vbbmjD','/smartapi/custom/saveUserCustomSql','✎\x20手动输入\x20dbId','description','dbName','请选择目标数据库:','Created\x20SQL\x20query\x20','high-risk-write','SQL\x20query\x20display\x20name','478830gpVzRv','Local\x20SQL\x20file\x20mode','utf8','\x20\x20SELECT\x201\x20AS\x20id','</select>','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','请选择本地\x20SQL\x20模式:','nonInteractive','File\x20already\x20exists:\x20','lastSync','1441914ayGwFi','dbId\x20必须为正整数','214895uoYARY','flagMissing','sql','join','sqlName','248kIPPMc','toISOString','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','db-id','<server-generated-sqlCode>','mode','普通\x20SQL(sql)','appCode','isInteger','trim','MyBatis\x20XML(mybatisXml)','stringify','number','288642VzyXoR','lockFilePath','11578VaesFG','sqlRoot','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','请输入\x20SQL\x20名称:','SELECT\x201\x20AS\x20id;','map','Invalid\x20database\x20selection\x20payload:\x20','validation','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','SQL\x20名称不能为空','sqlCode','__manual__','length','name','catch','dbId\x20不能为空','isFinite','5680FtciXs','string'];a122_0x58c1=function(){return _0x50426b;};return a122_0x58c1();}import{getDbName,listDatabases}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{buildSqlRelativePath}from'../../core/sql-sync/utils.js';import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x4334e9){const _0x335f8d=a122_0x3a2e;if(_0x4334e9===_0x335f8d(0x1b3))return[_0x335f8d(0x1a0),_0x335f8d(0x1c4),_0x335f8d(0x1c5),''][_0x335f8d(0x18c)]('\x0a');return[_0x335f8d(0x1a2),''][_0x335f8d(0x18c)]('\x0a');}export const sqlCreate={'service':a122_0x40ae5f(0x18b),'command':'create','description':a122_0x40ae5f(0x191),'risk':a122_0x40ae5f(0x1bf),'flags':[{'name':'name','type':a122_0x40ae5f(0x1b1),'description':a122_0x40ae5f(0x1c0)},{'name':a122_0x40ae5f(0x192),'type':a122_0x40ae5f(0x19b),'description':'Target\x20database\x20ID'},{'name':a122_0x40ae5f(0x194),'type':a122_0x40ae5f(0x1b1),'enum':['sql',a122_0x40ae5f(0x1b3)],'description':a122_0x40ae5f(0x1c2)}],async 'validate'(_0x10030e){const _0x27f898=a122_0x40ae5f;if(!_0x10030e[_0x27f898(0x1c8)])return;if(!_0x10030e[_0x27f898(0x1b2)]('name')['trim']())throw CliErrors[_0x27f898(0x18a)]('name',_0x27f898(0x1a6));const _0x54031f=resolveProvidedDbId(_0x10030e);if(typeof _0x54031f!=='number'||!Number['isFinite'](_0x54031f)||_0x54031f<=0x0)throw CliErrors[_0x27f898(0x18a)](_0x27f898(0x192),_0x27f898(0x190));if(!_0x10030e[_0x27f898(0x1b2)](_0x27f898(0x194))[_0x27f898(0x198)]())throw CliErrors[_0x27f898(0x18a)]('mode','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');},async 'dryRun'(_0x1b4244){const _0x3a7dfd=a122_0x40ae5f,_0x51ccc1=loadSqlProjectConfig(_0x1b4244[_0x3a7dfd(0x196)]),{sqlName:_0x58350b,dbId:_0x4d14be,dbName:_0x4456c9,mode:_0x3ff878}=await resolveSqlNewInputs(_0x1b4244),_0x2b0063=buildSqlRelativePath(_0x3a7dfd(0x193),_0x58350b,_0x4456c9,_0x3ff878,_0x4d14be),_0x4f7990=_0x51ccc1['sqlRootDir']+'/'+_0x2b0063;return{'method':'POST','url':_0x3a7dfd(0x1b9),'body':{'appCode':_0x1b4244[_0x3a7dfd(0x196)],'sqlName':_0x58350b,'dbId':_0x4d14be,'mode':_0x3ff878,'localPath':_0x4f7990},'description':'Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20'+_0x51ccc1['sqlRootDir']};},async 'execute'(_0x243d63){const _0x159e72=a122_0x40ae5f,_0x56673c=loadSqlProjectConfig(_0x243d63['appCode']),{sqlName:_0x41d95a,dbId:_0x5dafbc,dbName:_0x4762a3,mode:_0x20f58f}=await resolveSqlNewInputs(_0x243d63),_0x2657e0=generateSqlTemplate(_0x20f58f),_0x590efc=await createSqlQuery({'appCode':_0x243d63['appCode'],'sqlName':_0x41d95a,'dbId':_0x5dafbc,'sqlContent':_0x2657e0}),_0x5d326c=ensureRemoteSqlContent(_0x590efc),_0x47ae42=_0x4762a3||await getDbName(_0x243d63[_0x159e72(0x196)],_0x5dafbc)[_0x159e72(0x1ad)](()=>undefined),_0x4ea4a5=buildSqlRelativePath(_0x590efc[_0x159e72(0x1a9)],_0x590efc[_0x159e72(0x18d)],_0x47ae42,_0x20f58f,_0x5dafbc),_0x587d81=_0x56673c[_0x159e72(0x1b7)]+'/'+_0x4ea4a5,_0xe1f0bd=buildLocalSqlFileContent({'sqlCode':_0x590efc[_0x159e72(0x1a9)],'sqlName':_0x590efc[_0x159e72(0x18d)],'dbId':_0x590efc[_0x159e72(0x1b5)]},_0x5d326c,{'dbName':_0x47ae42,'mode':_0x20f58f,'syncedAt':new Date()[_0x159e72(0x18f)](),'description':_0x590efc[_0x159e72(0x1bb)]});if(await fileExists(_0x587d81))throw CliErrors[_0x159e72(0x1a5)](_0x159e72(0x185)+_0x587d81);await ensureParentDirectory(_0x587d81),await writeFile(_0x587d81,_0xe1f0bd,_0x159e72(0x1c3));const _0x346d53=await readSqlLockFile(_0x56673c[_0x159e72(0x19d)]),{lockData:_0x28f4f8,appLock:_0x265e24}=ensureSqlLockScope(_0x346d53??createEmptySqlLock(),_0x56673c[_0x159e72(0x196)],_0x56673c[_0x159e72(0x19f)],'new');return _0x265e24['sqls'][_0x590efc['sqlCode']]={...buildSqlLockEntry(_0x590efc,_0x5d326c,computeSqlContentHash(_0xe1f0bd),{'dbName':_0x47ae42}),'path':_0x4ea4a5,'mode':_0x20f58f},_0x265e24[_0x159e72(0x186)]=new Date()[_0x159e72(0x18f)](),await writeSqlLockFile(_0x56673c[_0x159e72(0x19d)],_0x28f4f8),{'ok':!![],'data':{'id':_0x590efc['id'],'sqlCode':_0x590efc[_0x159e72(0x1a9)],'sqlName':_0x590efc[_0x159e72(0x18d)],'dbId':_0x590efc[_0x159e72(0x1b5)],'path':_0x587d81,'mode':_0x20f58f},'message':_0x159e72(0x1be)+_0x590efc[_0x159e72(0x1a9)]};}};async function resolveSqlNewInputs(_0x2bf4fb){const _0x3b97a0=await resolveSqlNameInput(_0x2bf4fb),{dbId:_0x40faa9,dbName:_0x545211}=await resolveDbSelection(_0x2bf4fb),_0x5644cd=await resolveSqlModeInput(_0x2bf4fb);return{'sqlName':_0x3b97a0,'dbId':_0x40faa9,'dbName':_0x545211,'mode':_0x5644cd};}async function resolveSqlNameInput(_0x38ef49){const _0x2e3435=a122_0x40ae5f,_0x5ea0b9=_0x38ef49[_0x2e3435(0x1b2)](_0x2e3435(0x1ac))['trim']();if(_0x5ea0b9)return _0x5ea0b9;if(_0x38ef49[_0x2e3435(0x1c8)])throw CliErrors['flagMissing']('name',_0x2e3435(0x1a6));return(await input({'message':_0x2e3435(0x1a1),'validate':_0x4ddba7=>_0x4ddba7[_0x2e3435(0x198)]()?!![]:_0x2e3435(0x1a8)}))[_0x2e3435(0x198)]();}async function resolveDbSelection(_0x1d16c5){const _0x4b3c7a=a122_0x40ae5f,_0x4bc25d=resolveProvidedDbId(_0x1d16c5);if(typeof _0x4bc25d===_0x4b3c7a(0x19b)&&Number[_0x4b3c7a(0x1af)](_0x4bc25d)&&_0x4bc25d>0x0)return{'dbId':_0x4bc25d,'dbName':await getDbName(_0x1d16c5[_0x4b3c7a(0x196)],_0x4bc25d)['catch'](()=>undefined)};if(_0x1d16c5[_0x4b3c7a(0x1c8)])throw CliErrors[_0x4b3c7a(0x18a)]('db-id',_0x4b3c7a(0x190));const _0x1217e0=await listDatabases(_0x1d16c5[_0x4b3c7a(0x196)])['catch'](()=>[]);if(_0x1217e0[_0x4b3c7a(0x1ab)]===0x1)return{'dbId':_0x1217e0[0x0]['dbId'],'dbName':_0x1217e0[0x0][_0x4b3c7a(0x1bc)]};if(_0x1217e0[_0x4b3c7a(0x1ab)]>0x1){const _0x476260=await select({'message':_0x4b3c7a(0x1bd),'choices':[..._0x1217e0[_0x4b3c7a(0x1a3)](_0x4416a1=>({'name':_0x4416a1['dbName']+'\x20('+_0x4416a1[_0x4b3c7a(0x1b5)]+')','value':serializeDbSelection(_0x4416a1)})),{'name':_0x4b3c7a(0x1ba),'value':_0x4b3c7a(0x1aa)}]});if(_0x476260!==_0x4b3c7a(0x1aa))return deserializeDbSelection(_0x476260);}const _0x17257e=await input({'message':'请输入目标数据库\x20dbId:','validate':_0x28aff9=>{const _0x3adb4a=_0x4b3c7a,_0x3fb979=_0x28aff9[_0x3adb4a(0x198)]();if(!_0x3fb979)return _0x3adb4a(0x1ae);const _0xea4256=Number(_0x3fb979);if(!Number[_0x3adb4a(0x197)](_0xea4256)||_0xea4256<=0x0)return _0x3adb4a(0x188);return!![];}});return{'dbId':Number(_0x17257e['trim']())};}async function resolveSqlModeInput(_0xeda81a){const _0x380abb=a122_0x40ae5f,_0x14cc2b=_0xeda81a[_0x380abb(0x1b2)](_0x380abb(0x194))[_0x380abb(0x198)]();if(_0x14cc2b===_0x380abb(0x18b)||_0x14cc2b===_0x380abb(0x1b3))return _0x14cc2b;if(_0xeda81a['nonInteractive'])throw CliErrors[_0x380abb(0x18a)](_0x380abb(0x194),_0x380abb(0x1a7));return await select({'message':_0x380abb(0x1c7),'choices':[{'name':_0x380abb(0x195),'value':_0x380abb(0x18b),'description':_0x380abb(0x1c6)},{'name':_0x380abb(0x199),'value':'mybatisXml','description':'适合带动态标签的\x20MyBatis\x20XML\x20SQL'}]});}function serializeDbSelection(_0x486163){const _0x24f607=a122_0x40ae5f;return JSON[_0x24f607(0x19a)]({'dbId':_0x486163['dbId'],'dbName':_0x486163[_0x24f607(0x1bc)]});}function deserializeDbSelection(_0x227e3f){const _0x1c3a06=a122_0x40ae5f;try{const _0x4e52a8=JSON['parse'](_0x227e3f);if(typeof _0x4e52a8[_0x1c3a06(0x1b5)]===_0x1c3a06(0x19b)&&Number[_0x1c3a06(0x1af)](_0x4e52a8[_0x1c3a06(0x1b5)]))return{'dbId':_0x4e52a8[_0x1c3a06(0x1b5)],'dbName':_0x4e52a8['dbName']};}catch{}throw CliErrors[_0x1c3a06(0x1a5)](_0x1c3a06(0x1a4)+_0x227e3f);}function a122_0x3a2e(_0x3fc256,_0x5a01d0){_0x3fc256=_0x3fc256-0x185;const _0x58c1ac=a122_0x58c1();let _0x3a2e1e=_0x58c1ac[_0x3fc256];return _0x3a2e1e;}function resolveProvidedDbId(_0x50832e){const _0x460b29=a122_0x40ae5f,_0x3ff503=_0x50832e['flag']('db-id');if(typeof _0x3ff503===_0x460b29(0x19b)&&Number['isFinite'](_0x3ff503))return _0x3ff503;return undefined;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a123_0x29f02d=a123_0x37be;(function(_0x3e8585,_0x38100f){const _0x2f677a=a123_0x37be,_0x1936df=_0x3e8585();while(!![]){try{const _0x320bbc=-parseInt(_0x2f677a(0x114))/0x1*(-parseInt(_0x2f677a(0xf3))/0x2)+parseInt(_0x2f677a(0xf1))/0x3*(-parseInt(_0x2f677a(0x111))/0x4)+-parseInt(_0x2f677a(0x10c))/0x5*(-parseInt(_0x2f677a(0xf4))/0x6)+parseInt(_0x2f677a(0x115))/0x7*(-parseInt(_0x2f677a(0xf8))/0x8)+parseInt(_0x2f677a(0xfb))/0x9+-parseInt(_0x2f677a(0x10d))/0xa+-parseInt(_0x2f677a(0x110))/0xb*(-parseInt(_0x2f677a(0xf2))/0xc);if(_0x320bbc===_0x38100f)break;else _0x1936df['push'](_0x1936df['shift']());}catch(_0x1dab80){_0x1936df['push'](_0x1936df['shift']());}}}(a123_0x51ec,0x92a00));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{fileExists}from'../../core/bff/file-system.js';function a123_0x37be(_0x3b171f,_0x33dca1){_0x3b171f=_0x3b171f-0xf1;const _0x51eca6=a123_0x51ec();let _0x37be60=_0x51eca6[_0x3b171f];return _0x37be60;}import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';function a123_0x51ec(){const _0x376371=['str','1731246KbMTQO','20wvEFiU','replace','sqls','10YKGjNe','14665dOhRiE','startsWith','197223SYfarH','84dVaRih','86532ICRFbr','60ezCYlZ','delete','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','filter','3688DfLSTL','entries','sqlcode','1013283iuPRrx','trashDir','high-risk-write','Deleted\x20','\x20(local\x20file\x20moved\x20to\x20trash)','projectRoot','sqlRoot','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','lockFilePath','sql','appCode','remoteId','length','validation','POST','sqlRootDir','lastSync','413185iDzMnN','5782430uOBfta','trashedTo'];a123_0x51ec=function(){return _0x376371;};return a123_0x51ec();}import{ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDelete={'service':a123_0x29f02d(0x104),'command':a123_0x29f02d(0xf5),'description':'Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','risk':a123_0x29f02d(0xfd),'flags':[SQLCODE_FLAG],async 'validate'(_0x5ce408){const _0x2f620=a123_0x29f02d,_0x33de4c=loadSqlProjectConfig(_0x5ce408['appCode']),_0x49e723=await readSqlLockFile(_0x33de4c[_0x2f620(0x103)]);if(!_0x49e723)throw CliErrors['validation'](_0x2f620(0xf6));},async 'dryRun'(_0x3fe537){const _0x310198=a123_0x29f02d,_0x1047d9=loadSqlProjectConfig(_0x3fe537[_0x310198(0x105)]),_0x3fb37a=await readSqlLockFile(_0x1047d9[_0x310198(0x103)]);if(!_0x3fb37a)throw CliErrors[_0x310198(0x108)](_0x310198(0xf6));const {appLock:_0x1972ac}=ensureSqlLockScope(_0x3fb37a,_0x3fe537[_0x310198(0x105)],_0x1047d9[_0x310198(0x101)],'delete'),_0x10a838=_0x3fe537[_0x310198(0x10f)](_0x310198(0xfa)),_0x63b894=_0x1972ac[_0x310198(0x113)][_0x10a838];if(!_0x63b894)throw CliErrors[_0x310198(0x108)](_0x310198(0x102)+_0x10a838+'\x22.');return{'method':_0x310198(0x109),'url':'/smartapi/custom/deleteUserCustomSql','body':{'sqlCode':_0x10a838,'id':_0x63b894[_0x310198(0x106)],'localPath':resolveLocalSqlFilePath(_0x1047d9,_0x10a838,_0x63b894)},'description':'Would\x20delete\x20SQL\x20'+_0x10a838+'\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20'+_0x1047d9[_0x310198(0xfc)]};},async 'execute'(_0xc7d99d){const _0x5cb34e=a123_0x29f02d,_0x2f4907=loadSqlProjectConfig(_0xc7d99d[_0x5cb34e(0x105)]),_0x5af13d=await readSqlLockFile(_0x2f4907[_0x5cb34e(0x103)]);if(!_0x5af13d)throw CliErrors[_0x5cb34e(0x108)]('SQL\x20lock\x20file\x20not\x20found.');const {lockData:_0x849221,appLock:_0x1a8cae}=ensureSqlLockScope(_0x5af13d,_0xc7d99d[_0x5cb34e(0x105)],_0x2f4907['sqlRoot'],'delete'),_0x2a3cd9=_0xc7d99d[_0x5cb34e(0x10f)](_0x5cb34e(0xfa)),_0x1f4a8c=_0x1a8cae['sqls'][_0x2a3cd9];if(!_0x1f4a8c)throw CliErrors[_0x5cb34e(0x108)](_0x5cb34e(0x102)+_0x2a3cd9+'\x22.');await deleteSqlQuery({'id':_0x1f4a8c[_0x5cb34e(0x106)],'sqlCode':_0x2a3cd9}),_0x1a8cae[_0x5cb34e(0x113)]=Object['fromEntries'](Object[_0x5cb34e(0xf9)](_0x1a8cae[_0x5cb34e(0x113)])[_0x5cb34e(0xf7)](([_0x17ab4e])=>_0x17ab4e!==_0x2a3cd9)),_0x1a8cae[_0x5cb34e(0x10b)]=new Date()['toISOString'](),await writeSqlLockFile(_0x2f4907[_0x5cb34e(0x103)],_0x849221);const _0x64d400=resolveLocalSqlFilePath(_0x2f4907,_0x2a3cd9,_0x1f4a8c);let _0x41525c;await fileExists(_0x64d400)&&(_0x41525c=await moveToTrash(_0x2f4907[_0x5cb34e(0x100)],_0x2f4907['trashDir'],_0x64d400),await cleanupEmptyDirectories(dirname(_0x64d400),_0x2f4907[_0x5cb34e(0x10a)]));const _0x29b135={'deleted':_0x2a3cd9,'remoteId':_0x1f4a8c[_0x5cb34e(0x106)]};if(_0x41525c)_0x29b135[_0x5cb34e(0x10e)]=_0x41525c;return{'ok':!![],'data':_0x29b135,'message':_0x5cb34e(0xfe)+_0x2a3cd9+(_0x41525c?_0x5cb34e(0xff):'')};}};async function moveToTrash(_0x29ecb7,_0x4a63f6,_0x1f164c){const _0x1d5967=a123_0x29f02d,_0x1d72ac=new Date()['toISOString']()[_0x1d5967(0x112)](/[:.]/g,'-'),_0x57d972=relative(_0x29ecb7,_0x1f164c),_0x25f2b0=join(_0x4a63f6,_0x1d72ac,_0x57d972);return await mkdir(dirname(_0x25f2b0),{'recursive':!![]}),await rename(_0x1f164c,_0x25f2b0),_0x25f2b0;}async function cleanupEmptyDirectories(_0x14bdb1,_0x354573){const _0x2285f6=a123_0x29f02d;let _0x4a9534=resolve(_0x14bdb1);const _0x577b2e=resolve(_0x354573);while(_0x4a9534[_0x2285f6(0x116)](''+_0x577b2e+sep)||_0x4a9534===_0x577b2e){if(_0x4a9534===_0x577b2e)return;try{const _0x4200c4=await readdir(_0x4a9534);if(_0x4200c4[_0x2285f6(0x107)]>0x0)return;await rmdir(_0x4a9534);}catch{return;}_0x4a9534=dirname(_0x4a9534);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a124_0x2117ab=a124_0x3a55;function a124_0x686f(){const _0xe65a7=['sqlCode','1183908eYOdBB','205356WLyWpf','Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','detail','856VNkoLV','sqlName','verbose','boolean','dbId','bool','sqlContent','12pfLqEY','86320dGbNGV','sql','257696NuVzse','604059RLGNuO','3248DWSDqp','sqlcode','6127749guIfHi','appCode','read','str','Return\x20full\x20raw\x20SQL\x20query\x20object'];a124_0x686f=function(){return _0xe65a7;};return a124_0x686f();}(function(_0x496196,_0x5d2775){const _0x2ca8ff=a124_0x3a55,_0x3ec2fb=_0x496196();while(!![]){try{const _0x4756=parseInt(_0x2ca8ff(0x8c))/0x1+parseInt(_0x2ca8ff(0x7e))/0x2+parseInt(_0x2ca8ff(0x88))/0x3*(parseInt(_0x2ca8ff(0x8b))/0x4)+-parseInt(_0x2ca8ff(0x89))/0x5+parseInt(_0x2ca8ff(0x7d))/0x6+parseInt(_0x2ca8ff(0x8d))/0x7*(-parseInt(_0x2ca8ff(0x81))/0x8)+-parseInt(_0x2ca8ff(0x8f))/0x9;if(_0x4756===_0x5d2775)break;else _0x3ec2fb['push'](_0x3ec2fb['shift']());}catch(_0x315d61){_0x3ec2fb['push'](_0x3ec2fb['shift']());}}}(a124_0x686f,0x6511a));import{getSqlQueryInfo}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';function a124_0x3a55(_0x27de80,_0x21b3cd){_0x27de80=_0x27de80-0x78;const _0x686f09=a124_0x686f();let _0x3a5529=_0x686f09[_0x27de80];return _0x3a5529;}export const sqlDetail={'service':a124_0x2117ab(0x8a),'command':a124_0x2117ab(0x80),'description':a124_0x2117ab(0x7f),'risk':a124_0x2117ab(0x79),'flags':[SQLCODE_FLAG,{'name':a124_0x2117ab(0x83),'type':a124_0x2117ab(0x84),'description':a124_0x2117ab(0x7b)}],async 'execute'(_0x908be4){const _0x483f62=a124_0x2117ab,_0xd4943c=await getSqlQueryInfo(_0x908be4[_0x483f62(0x78)],_0x908be4[_0x483f62(0x7a)](_0x483f62(0x8e))),_0x2591b8=_0x908be4[_0x483f62(0x86)]('verbose');if(_0x2591b8)return{'ok':!![],'data':_0xd4943c};const _0x5b6ba0=_0xd4943c[_0x483f62(0x85)]?await getDbName(_0x908be4[_0x483f62(0x78)],_0xd4943c['dbId']):undefined;return{'ok':!![],'data':{'sqlCode':_0xd4943c[_0x483f62(0x7c)],'sqlName':_0xd4943c[_0x483f62(0x82)],'db':_0x5b6ba0?_0x5b6ba0+'\x20('+_0xd4943c['dbId']+')':_0xd4943c[_0x483f62(0x85)]??'','description':_0xd4943c['description']??'','sqlContent':_0xd4943c[_0x483f62(0x87)]??''}};}};
|
package/lib/commands/sql/exec.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a125_0x15df(_0x2699a0,_0x5e7588){_0x2699a0=_0x2699a0-0x1b6;const _0x3a7e8a=a125_0x3a7e();let _0x15df05=_0x3a7e8a[_0x2699a0];return _0x15df05;}const a125_0x342397=a125_0x15df;(function(_0x35f012,_0x322ebe){const _0x22c4e9=a125_0x15df,_0x20e648=_0x35f012();while(!![]){try{const _0x215bea=-parseInt(_0x22c4e9(0x1c8))/0x1*(-parseInt(_0x22c4e9(0x1b8))/0x2)+-parseInt(_0x22c4e9(0x1bd))/0x3+-parseInt(_0x22c4e9(0x1c6))/0x4+parseInt(_0x22c4e9(0x1ca))/0x5+-parseInt(_0x22c4e9(0x1c9))/0x6*(parseInt(_0x22c4e9(0x1be))/0x7)+parseInt(_0x22c4e9(0x1c1))/0x8*(-parseInt(_0x22c4e9(0x1c3))/0x9)+parseInt(_0x22c4e9(0x1c4))/0xa;if(_0x215bea===_0x322ebe)break;else _0x20e648['push'](_0x20e648['shift']());}catch(_0x43bf72){_0x20e648['push'](_0x20e648['shift']());}}}(a125_0x3a7e,0xe5f14));import{executeSql}from'../../core/api-client.js';function a125_0x3a7e(){const _0xeea2e5=['SQL\x20execution\x20failed','str','26SIHWqq','now','Returned\x20','sql','\x20row(s)\x20in\x20','3370791DZGPVR','10249484EeKXNy','params','length','9328GaIvtm','execError','6192eqhwOh','32636380naKIXf','string','558568ZaLSUn','read','75117WbwSvQ','6fAlpYV','1156720joCuxm','exec','sqlcode'];a125_0x3a7e=function(){return _0xeea2e5;};return a125_0x3a7e();}import{SQLCODE_FLAG}from'../../commands/common/flags.js';import{parseJsonParams}from'../../utils/params.js';export const sqlExec={'service':a125_0x342397(0x1bb),'command':a125_0x342397(0x1cb),'description':'Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode','risk':a125_0x342397(0x1c7),'flags':[SQLCODE_FLAG,{'name':a125_0x342397(0x1bf),'type':a125_0x342397(0x1c5),'description':'SQL\x20parameters\x20as\x20JSON\x20string\x20(e.g.\x20\x27{\x22key\x22:\x22value\x22}\x27)'}],async 'execute'(_0x145bcd){const _0x49b5bb=a125_0x342397,_0x29ebdb=parseJsonParams(_0x145bcd[_0x49b5bb(0x1b7)](_0x49b5bb(0x1bf))),_0x4b79d6=Date[_0x49b5bb(0x1b9)](),_0x185289=await executeSql(_0x145bcd['appCode'],_0x145bcd[_0x49b5bb(0x1b7)](_0x49b5bb(0x1cc)),_0x29ebdb),_0x38f27d=Date['now']()-_0x4b79d6,_0x2cdfac=_0x185289?.['execResult']??_0x185289,_0x558cfa=_0x185289?.['execSuccess']??!![];if(!_0x558cfa)return{'ok':![],'data':{'error':_0x185289?.[_0x49b5bb(0x1c2)]||_0x49b5bb(0x1b6),'elapsed':_0x38f27d},'message':_0x49b5bb(0x1b6)};const _0x3bded1=Array['isArray'](_0x2cdfac)?_0x2cdfac:[];return{'ok':!![],'data':{'rows':_0x3bded1,'rowCount':_0x3bded1['length'],'elapsed':_0x38f27d},'message':_0x49b5bb(0x1ba)+_0x3bded1[_0x49b5bb(0x1c0)]+_0x49b5bb(0x1bc)+_0x38f27d+'ms'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a126_0x5b6b(){const _0x5281cc=['808XNNNxK','2846460LNTKuV','4TbPyRh','78363uohlrk','12739430QEMbRk','102573BXaawR','9521346RSujyi','2075945REWUJB','275YzLtBJ','7LrzYza','1029612wRwmoa','1mvKUjO'];a126_0x5b6b=function(){return _0x5281cc;};return a126_0x5b6b();}(function(_0x406cbb,_0x2e2c54){const _0x27146b=a126_0x1413,_0x5654b=_0x406cbb();while(!![]){try{const _0x32e0d7=parseInt(_0x27146b(0x168))/0x1*(parseInt(_0x27146b(0x16a))/0x2)+parseInt(_0x27146b(0x162))/0x3+-parseInt(_0x27146b(0x15f))/0x4*(parseInt(_0x27146b(0x164))/0x5)+-parseInt(_0x27146b(0x163))/0x6*(-parseInt(_0x27146b(0x166))/0x7)+-parseInt(_0x27146b(0x169))/0x8*(parseInt(_0x27146b(0x160))/0x9)+parseInt(_0x27146b(0x161))/0xa+parseInt(_0x27146b(0x165))/0xb*(-parseInt(_0x27146b(0x167))/0xc);if(_0x32e0d7===_0x2e2c54)break;else _0x5654b['push'](_0x5654b['shift']());}catch(_0x2baed4){_0x5654b['push'](_0x5654b['shift']());}}}(a126_0x5b6b,0xd682a));import{sqlList}from'../../commands/sql/list.js';import{sqlDetail}from'../../commands/sql/detail.js';import{sqlValidate}from'../../commands/sql/validate.js';import{sqlSave}from'../../commands/sql/save.js';import{sqlExec}from'../../commands/sql/exec.js';import{sqlPull}from'../../commands/sql/pull.js';import{sqlCreate}from'../../commands/sql/create.js';function a126_0x1413(_0x3caa78,_0x3f15a7){_0x3caa78=_0x3caa78-0x15f;const _0x5b6bfc=a126_0x5b6b();let _0x141338=_0x5b6bfc[_0x3caa78];return _0x141338;}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
|
-
function
|
|
1
|
+
function a127_0x8f99(_0x1a25a2,_0x57c4ea){_0x1a25a2=_0x1a25a2-0x105;const _0x292abd=a127_0x292a();let _0x8f99ff=_0x292abd[_0x1a25a2];return _0x8f99ff;}const a127_0x23a1e1=a127_0x8f99;(function(_0x2eadd0,_0x2a8aad){const _0x321c78=a127_0x8f99,_0x52a148=_0x2eadd0();while(!![]){try{const _0x293800=parseInt(_0x321c78(0x10d))/0x1*(-parseInt(_0x321c78(0x10a))/0x2)+parseInt(_0x321c78(0x112))/0x3*(-parseInt(_0x321c78(0x122))/0x4)+parseInt(_0x321c78(0x105))/0x5+parseInt(_0x321c78(0x11c))/0x6+-parseInt(_0x321c78(0x128))/0x7+parseInt(_0x321c78(0x114))/0x8+parseInt(_0x321c78(0x123))/0x9*(parseInt(_0x321c78(0x11f))/0xa);if(_0x293800===_0x2a8aad)break;else _0x52a148['push'](_0x52a148['shift']());}catch(_0xebec46){_0x52a148['push'](_0x52a148['shift']());}}}(a127_0x292a,0x5eeba));function a127_0x292a(){const _0x56337d=['sqlcode','totalCount','1QasDGQ','length','sqlName','paging','Page\x20number','1776GudCLC','pagesize','5269280LjQqck','name','list','sql','read','verbose','List\x20custom\x20SQL\x20queries','Page\x20size','140016UqFEAg','sqlCode','tableData','1655930LMqBcA','str','description','4748JPxdEz','81tQUOnb','appCode','dbId','No\x20custom\x20SQL\x20queries\x20found.','page','3972752JHAbPs','bool','1142080WtYtkH','num','number','Return\x20full\x20SQL\x20query\x20objects\x20including\x20parameters\x20and\x20SQL\x20content','Found\x20','1483430QMPwFR'];a127_0x292a=function(){return _0x56337d;};return a127_0x292a();}import{listSqlQueries}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';export const sqlList={'service':a127_0x23a1e1(0x117),'command':a127_0x23a1e1(0x116),'description':a127_0x23a1e1(0x11a),'risk':a127_0x23a1e1(0x118),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a127_0x23a1e1(0x115),'type':'string','description':'Filter\x20by\x20SQL\x20name'},{'name':a127_0x23a1e1(0x127),'type':a127_0x23a1e1(0x107),'description':a127_0x23a1e1(0x111),'default':0x1},{'name':'pagesize','type':'number','description':a127_0x23a1e1(0x11b)},{'name':a127_0x23a1e1(0x119),'type':'boolean','description':a127_0x23a1e1(0x108)}],async 'execute'(_0x1dc172){const _0x3ff8f0=a127_0x23a1e1,_0x40bffb=await listSqlQueries(_0x1dc172[_0x3ff8f0(0x124)],{'sqlCode':_0x1dc172[_0x3ff8f0(0x120)](_0x3ff8f0(0x10b))||undefined,'sqlName':_0x1dc172[_0x3ff8f0(0x120)]('name')||undefined,'currentPage':_0x1dc172['num'](_0x3ff8f0(0x127)),'pageSize':_0x1dc172[_0x3ff8f0(0x106)](_0x3ff8f0(0x113),0x32)}),_0x365cb5=_0x1dc172[_0x3ff8f0(0x129)](_0x3ff8f0(0x119)),_0x5053ad=_0x40bffb[_0x3ff8f0(0x11e)]??[],_0x32512a=_0x40bffb[_0x3ff8f0(0x110)]?.[_0x3ff8f0(0x10c)]??_0x5053ad[_0x3ff8f0(0x10e)];let _0x3510b4;return _0x365cb5?_0x3510b4=_0x5053ad:_0x3510b4=await Promise['all'](_0x5053ad['map'](async _0x444ff4=>{const _0x4b71ac=_0x3ff8f0;let _0x59b0e5;try{_0x59b0e5=_0x444ff4[_0x4b71ac(0x125)]?await getDbName(_0x1dc172[_0x4b71ac(0x124)],_0x444ff4['dbId']):undefined;}catch{}return{'sqlCode':_0x444ff4[_0x4b71ac(0x11d)],'sqlName':_0x444ff4[_0x4b71ac(0x10f)],'description':_0x444ff4[_0x4b71ac(0x121)]??'','db':_0x59b0e5?_0x59b0e5+'\x20('+_0x444ff4[_0x4b71ac(0x125)]+')':_0x444ff4[_0x4b71ac(0x125)]??''};})),{'ok':!![],'data':_0x3510b4,'message':_0x5053ad[_0x3ff8f0(0x10e)]===0x0?_0x3ff8f0(0x126):_0x3ff8f0(0x109)+_0x5053ad[_0x3ff8f0(0x10e)]+'\x20SQL\x20queries\x20(total:\x20'+_0x32512a+').'};}};
|