@lovrabet/rabetbase-cli 2.2.3-beta.2 → 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
|
-
function a117_0x500f(_0x1f4797,_0x249f31){_0x1f4797=_0x1f4797-0x121;const _0xe0a73c=a117_0xe0a7();let _0x500f56=_0xe0a73c[_0x1f4797];return _0x500f56;}const a117_0x47b63e=a117_0x500f;(function(_0x158a22,_0x40f632){const _0x482d21=a117_0x500f,_0x3e9601=_0x158a22();while(!![]){try{const _0x3bf7b6=-parseInt(_0x482d21(0x15c))/0x1+-parseInt(_0x482d21(0x14c))/0x2*(-parseInt(_0x482d21(0x184))/0x3)+parseInt(_0x482d21(0x12f))/0x4*(parseInt(_0x482d21(0x1a4))/0x5)+parseInt(_0x482d21(0x122))/0x6+parseInt(_0x482d21(0x161))/0x7*(parseInt(_0x482d21(0x13a))/0x8)+parseInt(_0x482d21(0x186))/0x9*(-parseInt(_0x482d21(0x18d))/0xa)+-parseInt(_0x482d21(0x138))/0xb;if(_0x3bf7b6===_0x40f632)break;else _0x3e9601['push'](_0x3e9601['shift']());}catch(_0x4542b1){_0x3e9601['push'](_0x3e9601['shift']());}}}(a117_0xe0a7,0xcb652));import a117_0x5b1876 from'chalk';import a117_0x291a17 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';function a117_0xe0a7(){const _0xb60554=['4lpLMtC','not\x20found\x20or\x20already\x20at\x20latest','oldArtifacts','not\x20needed','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','yes','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','FAIL','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','18220400ajjEZg','Clean\x20MCP\x20config','53480YVTFOb','info','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','\x20→\x20latest','no\x20matching\x20entry\x20found','sdkUpgrade','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','dependencies','cyan','fail','fields','args','cwd','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','message','stringify','789062RKEpkD','Legacy\x20artifacts:','skipped\x20(no\x20legacy\x20config)','entries','\x20\x20bun\x20install','.cursor/rules/lovrabet_rules.mdc','push','oldPath','Config\x20migration','\x20removed','\x20\x20Action:\x20delete','none\x20found','Skill\x20swap:','.cursor/mcp.json','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','\x20\x20Step\x20','899029xhLFUW','bold','.bak','devDependencies','Step\x201/7:\x20Config\x20migration\x20—\x20','413OACsqW','label','\x20\x20Fields\x20to\x20migrate:\x20','\x20→\x20','yellow','error','@lovrabet/sdk:','package.json','Remove\x20.lovrabet/','skipped','mcpServers','.lovrabet','utf8','needed','\x20\x20New\x20config\x20(.rabetbase.json):\x20','Remove\x20old\x20skill','length','isDirectory','===\x20Upgrade\x20Summary\x20===','removed\x20','no\x20legacy\x20config\x20found','object','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','isArray','not\x20found\x20(will\x20create)','values','parse','white','Upgrade\x20cancelled.','\x20\x20#\x20or','\x20→\x20keys:\x20','Step\x206/7:\x20Installing\x20new\x20skill...','string','failed','6JSLvGW','green','695349cSFvdq','files','keys','configMigration','Proceed\x20with\x20upgrade?','inherit','already\x20exists\x20(will\x20merge)','70bXPLgv','red','join','step','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','filter','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','detail','Upgrade\x20@lovrabet/sdk','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','Step\x204/7:\x20MCP\x20config\x20—\x20','log','@lovrabet/dataset-mcp-server','lovrabet/lovrabet-skill\x20removed','path','includes','latest','CANCEL','gray','no\x20legacy\x20entry','start','\x20from\x20','exit\x20','5936515cqmkEc','succeed','Install\x20new\x20skill','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','9351492SxLgVt','done','some','@lovrabet/sdk','oldMcpConfig','Config\x20file:','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','Step\x204/7:\x20Cleaning\x20MCP\x20config...','needsSkillSwap','undefined','\x20removed\x20(','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','lovrabet/rabetbase\x20installed\x20globally'];a117_0xe0a7=function(){return _0xb60554;};return a117_0xe0a7();}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_0x47b63e(0x192)](_0x14acaa=>_0x14acaa!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x20f6bc){const _0x5a5586=a117_0x47b63e,_0x54372b=[];for(const _0x480680 of Object[_0x5a5586(0x17b)](CORE_IDE_CONFIGS)){if(_0x480680[_0x5a5586(0x187)])for(const _0x23dd14 of _0x480680['files']){_0x54372b['push'](resolve(_0x20f6bc,_0x23dd14['path']));}}return _0x54372b;}function analyse(_0x51686e){const _0x5bf08c=a117_0x47b63e;let _0x22bed0=null;const _0x13ec3e=resolve(_0x51686e,NEW_CONFIG_NAME),_0xaef5f2=existsSync(_0x13ec3e);for(const _0x4e31bc of LEGACY_CONFIG_NAMES){const _0x522eda=resolve(_0x51686e,_0x4e31bc);if(existsSync(_0x522eda)){const _0x3d2f0a=readConfigFile(_0x522eda),_0x5d1f39=Object[_0x5bf08c(0x188)](_0x3d2f0a)['filter'](_0x2d3659=>typeof _0x3d2f0a[_0x2d3659]!==_0x5bf08c(0x12b));_0x22bed0={'oldPath':_0x522eda,'hasNewConfig':_0xaef5f2,'fields':_0x5d1f39};break;}}const _0x15214e=[],_0xffdeb5=resolve(_0x51686e,_0x5bf08c(0x16c));if(existsSync(_0xffdeb5))_0x15214e[_0x5bf08c(0x152)](_0xffdeb5);const _0x4b0361=resolve(_0x51686e,_0x5bf08c(0x151));if(existsSync(_0x4b0361))_0x15214e[_0x5bf08c(0x152)](_0x4b0361);const _0x5cb92c=resolve(_0x51686e,'.claude/skills/lovrabet');if(existsSync(_0x5cb92c))_0x15214e[_0x5bf08c(0x152)](_0x5cb92c);for(const _0x1f2901 of collectIdeSkillFiles(_0x51686e)){if(existsSync(_0x1f2901))_0x15214e['push'](_0x1f2901);}let _0x2fdebc=null;const _0x4c74df=resolve(_0x51686e,_0x5bf08c(0x159));if(existsSync(_0x4c74df))try{const _0x58b2ce=JSON[_0x5bf08c(0x17c)](readFileSync(_0x4c74df,_0x5bf08c(0x16d)));if(_0x58b2ce?.['mcpServers']&&typeof _0x58b2ce[_0x5bf08c(0x16b)]===_0x5bf08c(0x176)){const _0x53f12c=[];for(const [_0xc3994b,_0x5636ab]of Object['entries'](_0x58b2ce['mcpServers'])){const _0x23609f=_0x5636ab;_0x23609f?.[_0x5bf08c(0x146)]&&Array[_0x5bf08c(0x179)](_0x23609f[_0x5bf08c(0x146)])&&_0x23609f[_0x5bf08c(0x146)]['some'](_0x22bffd=>typeof _0x22bffd===_0x5bf08c(0x182)&&_0x22bffd[_0x5bf08c(0x19c)](_0x5bf08c(0x199)))&&_0x53f12c[_0x5bf08c(0x152)](_0xc3994b);}_0x53f12c[_0x5bf08c(0x171)]>0x0&&(_0x2fdebc={'path':_0x4c74df,'keys':_0x53f12c});}}catch{}const _0x900483=_0x15214e['length']>0x0||_0x22bed0!==null;let _0x56748c=null;const _0x342ade=resolve(_0x51686e,_0x5bf08c(0x168));if(existsSync(_0x342ade))try{const _0x4a5a91=JSON['parse'](readFileSync(_0x342ade,'utf8'));for(const _0x592083 of[_0x5bf08c(0x142),_0x5bf08c(0x15f)]){const _0x4b79bf=_0x4a5a91?.[_0x592083]?.[_0x5bf08c(0x125)];if(typeof _0x4b79bf==='string'){_0x4b79bf!==_0x5bf08c(0x19d)&&(_0x56748c={'pkgPath':_0x342ade,'currentVersion':_0x4b79bf,'field':_0x592083});break;}}}catch{}return{'configMigration':_0x22bed0,'oldArtifacts':_0x15214e,'oldMcpConfig':_0x2fdebc,'needsSkillSwap':_0x900483,'sdkUpgrade':_0x56748c};}function printReport(_0x3902e7){const _0x55cab7=a117_0x47b63e,{configMigration:_0x3bd447,oldArtifacts:_0x14ad0e,oldMcpConfig:_0x562d72,needsSkillSwap:_0x125e11}=_0x3902e7;console[_0x55cab7(0x198)](''),console['log'](a117_0x5b1876[_0x55cab7(0x15d)]('===\x20Upgrade\x20Analysis\x20===')),console[_0x55cab7(0x198)]('');_0x3bd447?(console[_0x55cab7(0x198)](a117_0x5b1876['cyan'](_0x55cab7(0x127))+('\x20\x20'+a117_0x5b1876[_0x55cab7(0x165)](_0x3bd447['oldPath']))),console['log'](_0x55cab7(0x16f)+(_0x3bd447['hasNewConfig']?a117_0x5b1876['green'](_0x55cab7(0x18c)):a117_0x5b1876[_0x55cab7(0x19f)](_0x55cab7(0x17a)))),console[_0x55cab7(0x198)](_0x55cab7(0x163)+_0x3bd447[_0x55cab7(0x145)][_0x55cab7(0x18f)](',\x20')),console[_0x55cab7(0x198)](_0x55cab7(0x196))):console[_0x55cab7(0x198)](a117_0x5b1876[_0x55cab7(0x143)](_0x55cab7(0x127))+'\x20\x20'+a117_0x5b1876['gray'](_0x55cab7(0x175)));console['log']('');if(_0x14ad0e[_0x55cab7(0x171)]>0x0){console[_0x55cab7(0x198)](a117_0x5b1876[_0x55cab7(0x143)](_0x55cab7(0x14d)));for(const _0x74ee88 of _0x14ad0e){console[_0x55cab7(0x198)]('\x20\x20'+a117_0x5b1876['red']('FOUND')+'\x20\x20'+_0x74ee88);}console['log'](_0x55cab7(0x156));}else console['log'](a117_0x5b1876['cyan']('Legacy\x20artifacts:')+'\x20\x20'+a117_0x5b1876[_0x55cab7(0x19f)](_0x55cab7(0x157)));console[_0x55cab7(0x198)]('');_0x562d72?(console[_0x55cab7(0x198)](a117_0x5b1876['cyan']('MCP\x20config:')+('\x20\x20'+a117_0x5b1876[_0x55cab7(0x165)](_0x562d72[_0x55cab7(0x19b)])+_0x55cab7(0x180)+_0x562d72['keys'][_0x55cab7(0x18f)](',\x20'))),console[_0x55cab7(0x198)](_0x55cab7(0x141))):console[_0x55cab7(0x198)](a117_0x5b1876[_0x55cab7(0x143)]('MCP\x20config:')+'\x20\x20'+a117_0x5b1876[_0x55cab7(0x19f)](_0x55cab7(0x1a0)));console[_0x55cab7(0x198)](''),console[_0x55cab7(0x198)](a117_0x5b1876[_0x55cab7(0x143)](_0x55cab7(0x158))+('\x20\x20'+(_0x125e11?a117_0x5b1876[_0x55cab7(0x165)](_0x55cab7(0x16e)):a117_0x5b1876['green'](_0x55cab7(0x132)))));_0x125e11&&console[_0x55cab7(0x198)](_0x55cab7(0x135)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console['log']('');if(_0x3902e7[_0x55cab7(0x140)]){const {currentVersion:_0x9a412b,field:_0x25103e,pkgPath:_0x53773d}=_0x3902e7[_0x55cab7(0x140)];console[_0x55cab7(0x198)](a117_0x5b1876[_0x55cab7(0x143)]('@lovrabet/sdk:')+('\x20\x20'+a117_0x5b1876['yellow'](_0x53773d))),console[_0x55cab7(0x198)]('\x20\x20Current\x20version\x20in\x20'+_0x25103e+':\x20'+a117_0x5b1876[_0x55cab7(0x165)](_0x9a412b)+_0x55cab7(0x164)+a117_0x5b1876[_0x55cab7(0x185)](_0x55cab7(0x19d))),console[_0x55cab7(0x198)](_0x55cab7(0x13d));}else console[_0x55cab7(0x198)](a117_0x5b1876[_0x55cab7(0x143)](_0x55cab7(0x167))+'\x20\x20'+a117_0x5b1876[_0x55cab7(0x19f)](_0x55cab7(0x130)));console['log']('');}function execConfigMigration(_0x396a18,_0x336786){const _0x43ad5f=a117_0x47b63e,{configMigration:_0x5a531a}=_0x396a18;if(!_0x5a531a?.[_0x43ad5f(0x153)])return{'step':0x1,'label':_0x43ad5f(0x154),'ok':!![],'detail':_0x43ad5f(0x14e)};const _0x7e8ac9=readConfigFile(_0x5a531a['oldPath']),_0x356ebc=resolve(_0x336786,NEW_CONFIG_NAME),_0x86b85b=_0x5a531a['hasNewConfig']?readConfigFile(_0x356ebc):{};for(const [_0x43713e,_0x1516fb]of Object[_0x43ad5f(0x14f)](_0x7e8ac9)){!(_0x43713e in _0x86b85b)&&(_0x86b85b[_0x43713e]=_0x1516fb);}writeConfigFile(_0x356ebc,_0x86b85b);const _0x1abb9b=_0x5a531a[_0x43ad5f(0x153)]+_0x43ad5f(0x15e);return renameSync(_0x5a531a['oldPath'],_0x1abb9b),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x5a531a[_0x43ad5f(0x153)]+_0x43ad5f(0x164)+_0x356ebc+'\x20(backup:\x20'+_0x1abb9b+')'};}function execRemoveOldArtifacts(_0x181e80){const _0x15646d=a117_0x47b63e,_0x1201ac=[];for(const _0x167738 of _0x181e80){try{if(!existsSync(_0x167738))continue;const _0x37cb2f=tryStat(_0x167738);_0x37cb2f?.[_0x15646d(0x172)]()?rmSync(_0x167738,{'recursive':!![],'force':!![]}):unlinkSync(_0x167738);}catch(_0x5dacbe){_0x1201ac[_0x15646d(0x152)](_0x167738+':\x20'+_0x5dacbe[_0x15646d(0x14a)]);}}return{'step':0x3,'label':'Remove\x20legacy\x20artifacts','ok':_0x1201ac[_0x15646d(0x171)]===0x0,'detail':_0x1201ac[_0x15646d(0x171)]>0x0?_0x181e80[_0x15646d(0x171)]-_0x1201ac[_0x15646d(0x171)]+'/'+_0x181e80[_0x15646d(0x171)]+_0x15646d(0x12c)+_0x1201ac['join'](';\x20')+')':_0x181e80[_0x15646d(0x171)]+_0x15646d(0x155)};}function execCleanMcp(_0x2b0799){const _0xe6d41b=a117_0x47b63e;if(!_0x2b0799[_0xe6d41b(0x126)])return{'step':0x4,'label':_0xe6d41b(0x139),'ok':!![],'detail':'skipped'};try{const _0x1fa8f0=readFileSync(_0x2b0799[_0xe6d41b(0x126)]['path'],_0xe6d41b(0x16d)),_0x49b8c6=JSON[_0xe6d41b(0x17c)](_0x1fa8f0);if(_0x49b8c6?.[_0xe6d41b(0x16b)]&&typeof _0x49b8c6[_0xe6d41b(0x16b)]==='object'){const _0xcc8571=[];for(const [_0x22a198,_0x586378]of Object['entries'](_0x49b8c6[_0xe6d41b(0x16b)])){_0x586378?.[_0xe6d41b(0x146)]&&Array[_0xe6d41b(0x179)](_0x586378[_0xe6d41b(0x146)])&&_0x586378[_0xe6d41b(0x146)]['some'](_0x387629=>typeof _0x387629==='string'&&_0x387629[_0xe6d41b(0x19c)](_0xe6d41b(0x199)))&&_0xcc8571[_0xe6d41b(0x152)](_0x22a198);}for(const _0x31cd4b of _0xcc8571){delete _0x49b8c6[_0xe6d41b(0x16b)][_0x31cd4b];}return _0xcc8571['length']>0x0&&writeFileSync(_0x2b0799[_0xe6d41b(0x126)][_0xe6d41b(0x19b)],JSON['stringify'](_0x49b8c6,null,0x2)+'\x0a',_0xe6d41b(0x16d)),{'step':0x4,'label':_0xe6d41b(0x139),'ok':!![],'detail':_0xe6d41b(0x174)+_0xcc8571[_0xe6d41b(0x18f)](',\x20')+_0xe6d41b(0x1a2)+_0x2b0799[_0xe6d41b(0x126)][_0xe6d41b(0x19b)]};}return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0xe6d41b(0x13f)};}catch(_0x4fc6e3){return{'step':0x4,'label':_0xe6d41b(0x139),'ok':![],'detail':_0x4fc6e3[_0xe6d41b(0x14a)]};}}function execSkillsRemove(_0x566b8c,_0x4070de){const _0x40add9=a117_0x47b63e,_0x508f74=runNpxSkillsRemove(_0x566b8c,{'stdio':_0x40add9(0x18b),'yes':_0x4070de});return{'step':0x5,'label':_0x40add9(0x170),'ok':_0x508f74['ok'],'detail':_0x508f74['ok']?_0x40add9(0x19a):_0x508f74[_0x40add9(0x166)]??_0x40add9(0x1a3)+_0x508f74['status']};}function execSkillsAdd(_0x11e37e,_0x57054f){const _0xfc039a=a117_0x47b63e,_0x283f2b=runNpxSkillsAddGlobal(_0x11e37e,'lovrabet/rabetbase',{'stdio':_0xfc039a(0x18b),'yes':_0x57054f});return{'step':0x6,'label':_0xfc039a(0x1a6),'ok':_0x283f2b['ok'],'detail':_0x283f2b['ok']?_0xfc039a(0x12e):_0x283f2b[_0xfc039a(0x166)]??_0xfc039a(0x1a3)+_0x283f2b['status']};}function execUpgradeSdk(_0x2766c7){const _0x8345d6=a117_0x47b63e;if(!_0x2766c7['sdkUpgrade'])return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x8345d6(0x137)};const {pkgPath:_0x450ea9,currentVersion:_0x5cc2b6,field:_0x2eb8b8}=_0x2766c7['sdkUpgrade'];try{const _0x510405=readFileSync(_0x450ea9,_0x8345d6(0x16d)),_0xbb1e52=JSON[_0x8345d6(0x17c)](_0x510405);return _0xbb1e52[_0x2eb8b8]['@lovrabet/sdk']='latest',writeFileSync(_0x450ea9,JSON[_0x8345d6(0x14b)](_0xbb1e52,null,0x2)+'\x0a',_0x8345d6(0x16d)),{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x2eb8b8+'[\x22@lovrabet/sdk\x22]:\x20'+_0x5cc2b6+_0x8345d6(0x13e)};}catch(_0x1964bd){return{'step':0x7,'label':_0x8345d6(0x195),'ok':![],'detail':_0x1964bd['message']};}}function tryStat(_0x4dcf8d){try{return statSync(_0x4dcf8d);}catch{return undefined;}}function printSummary(_0x360fb1){const _0x46b2a7=a117_0x47b63e;console[_0x46b2a7(0x198)](''),console[_0x46b2a7(0x198)](a117_0x5b1876[_0x46b2a7(0x15d)](_0x46b2a7(0x173))),console[_0x46b2a7(0x198)]('');for(const _0x3b992b of _0x360fb1){const _0x944210=_0x3b992b['ok']?a117_0x5b1876[_0x46b2a7(0x185)]('OK'):a117_0x5b1876[_0x46b2a7(0x18e)](_0x46b2a7(0x136));console[_0x46b2a7(0x198)]('\x20\x20'+_0x944210+_0x46b2a7(0x15b)+_0x3b992b[_0x46b2a7(0x190)]+':\x20'+_0x3b992b[_0x46b2a7(0x162)]);if(_0x3b992b[_0x46b2a7(0x194)])console[_0x46b2a7(0x198)]('\x20\x20\x20\x20\x20\x20\x20'+a117_0x5b1876['gray'](_0x3b992b['detail']));}console['log']('');}export async function upgradeApp(_0x34e143,_0x3fb6f3){const _0x18efc4=a117_0x47b63e,_0x214665=process[_0x18efc4(0x147)](),_0x18a48d=analyse(_0x214665),_0x5e4648=!_0x18a48d[_0x18efc4(0x189)]&&_0x18a48d[_0x18efc4(0x131)][_0x18efc4(0x171)]===0x0&&!_0x18a48d[_0x18efc4(0x126)]&&!_0x18a48d[_0x18efc4(0x12a)]&&!_0x18a48d[_0x18efc4(0x140)];if(_0x5e4648){console[_0x18efc4(0x198)](a117_0x5b1876[_0x18efc4(0x185)](_0x18efc4(0x13c)));return;}printReport(_0x18a48d);const _0x6f0d41=!!(_0x3fb6f3[_0x18efc4(0x134)]||_0x3fb6f3['Y']||_0x34e143);if(!_0x6f0d41)try{const _0x191704=await askConfirm(_0x18efc4(0x18a));if(!_0x191704){console[_0x18efc4(0x198)](a117_0x5b1876[_0x18efc4(0x19f)](_0x18efc4(0x17e)));return;}}catch(_0x2d7546){if(_0x2d7546?.['message']===_0x18efc4(0x19e)){console[_0x18efc4(0x198)](a117_0x5b1876[_0x18efc4(0x19f)](_0x18efc4(0x17e)));return;}throw _0x2d7546;}const _0x3786ca=[],_0x1d82cf=a117_0x291a17({'text':'Step\x201/7:\x20Migrating\x20config...','color':_0x18efc4(0x143)})['start'](),_0x90bb57=execConfigMigration(_0x18a48d,_0x214665);_0x3786ca['push'](_0x90bb57),_0x1d82cf[_0x90bb57['ok']?'succeed':_0x18efc4(0x144)](_0x18efc4(0x160)+(_0x90bb57['detail']??(_0x90bb57['ok']?_0x18efc4(0x123):_0x18efc4(0x183))));const _0x452f74=resolve(_0x214665,_0x18efc4(0x16c)),_0x491c5e=a117_0x291a17({'text':_0x18efc4(0x149),'color':_0x18efc4(0x143)})[_0x18efc4(0x1a1)]();if(existsSync(_0x452f74))try{rmSync(_0x452f74,{'recursive':!![],'force':!![]}),_0x491c5e['succeed']('Step\x202/7:\x20.lovrabet/\x20directory\x20removed'),_0x3786ca[_0x18efc4(0x152)]({'step':0x2,'label':_0x18efc4(0x169),'ok':!![]});}catch(_0x46d1de){_0x491c5e['fail'](_0x18efc4(0x121)+_0x46d1de[_0x18efc4(0x14a)]),_0x3786ca[_0x18efc4(0x152)]({'step':0x2,'label':_0x18efc4(0x169),'ok':![],'detail':_0x46d1de['message']});}else _0x491c5e[_0x18efc4(0x13b)](_0x18efc4(0x148)),_0x3786ca['push']({'step':0x2,'label':_0x18efc4(0x169),'ok':!![],'detail':_0x18efc4(0x16a)});const _0xd29cfe=a117_0x291a17({'text':_0x18efc4(0x15a),'color':_0x18efc4(0x143)})['start'](),_0x2e7cfc=execRemoveOldArtifacts(_0x18a48d[_0x18efc4(0x131)]);_0x3786ca[_0x18efc4(0x152)](_0x2e7cfc),_0xd29cfe[_0x2e7cfc['ok']?'succeed':_0x18efc4(0x144)](_0x18efc4(0x177)+(_0x2e7cfc[_0x18efc4(0x194)]??(_0x2e7cfc['ok']?'done':_0x18efc4(0x183))));const _0x46fb53=a117_0x291a17({'text':_0x18efc4(0x129),'color':'cyan'})[_0x18efc4(0x1a1)](),_0x13be8a=execCleanMcp(_0x18a48d);_0x3786ca[_0x18efc4(0x152)](_0x13be8a),_0x46fb53[_0x13be8a['ok']?_0x18efc4(0x1a5):_0x18efc4(0x144)](_0x18efc4(0x197)+(_0x13be8a[_0x18efc4(0x194)]??(_0x13be8a['ok']?'done':_0x18efc4(0x183))));const _0x116e3b=a117_0x291a17({'text':'Step\x205/7:\x20Removing\x20old\x20skill...','color':_0x18efc4(0x143)})[_0x18efc4(0x1a1)](),_0x3b6dfe=execSkillsRemove(_0x214665,_0x6f0d41);_0x3786ca[_0x18efc4(0x152)](_0x3b6dfe),_0x116e3b[_0x3b6dfe['ok']?'succeed':_0x18efc4(0x144)](_0x18efc4(0x191)+(_0x3b6dfe['detail']??(_0x3b6dfe['ok']?'done':_0x18efc4(0x183))));const _0x3debe3=a117_0x291a17({'text':_0x18efc4(0x181),'color':_0x18efc4(0x143)})[_0x18efc4(0x1a1)](),_0x4da152=execSkillsAdd(_0x214665,_0x6f0d41);_0x3786ca[_0x18efc4(0x152)](_0x4da152),_0x3debe3[_0x4da152['ok']?_0x18efc4(0x1a5):_0x18efc4(0x144)](_0x18efc4(0x12d)+(_0x4da152['detail']??(_0x4da152['ok']?_0x18efc4(0x123):_0x18efc4(0x183))));const _0x26f824=a117_0x291a17({'text':_0x18efc4(0x178),'color':_0x18efc4(0x143)})[_0x18efc4(0x1a1)](),_0xc6c3a0=execUpgradeSdk(_0x18a48d);_0x3786ca['push'](_0xc6c3a0),_0x26f824[_0xc6c3a0['ok']?_0x18efc4(0x1a5):_0x18efc4(0x144)](_0x18efc4(0x193)+(_0xc6c3a0[_0x18efc4(0x194)]??(_0xc6c3a0['ok']?_0x18efc4(0x123):_0x18efc4(0x183)))),printSummary(_0x3786ca);const _0x4de786=_0x3786ca[_0x18efc4(0x124)](_0x290b7a=>!_0x290b7a['ok']);_0x4de786?console['log'](a117_0x5b1876[_0x18efc4(0x165)](_0x18efc4(0x133))):console[_0x18efc4(0x198)](a117_0x5b1876[_0x18efc4(0x185)]('Upgrade\x20completed\x20successfully!')),_0xc6c3a0['ok']&&_0x18a48d[_0x18efc4(0x140)]&&(console[_0x18efc4(0x198)](''),console[_0x18efc4(0x198)](a117_0x5b1876[_0x18efc4(0x15d)][_0x18efc4(0x143)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x18efc4(0x198)](a117_0x5b1876['cyan'](_0x18efc4(0x128))),console[_0x18efc4(0x198)](''),console[_0x18efc4(0x198)](a117_0x5b1876[_0x18efc4(0x17d)]('\x20\x20npm\x20install')),console[_0x18efc4(0x198)](a117_0x5b1876[_0x18efc4(0x17d)](_0x18efc4(0x17f))),console[_0x18efc4(0x198)](a117_0x5b1876[_0x18efc4(0x17d)](_0x18efc4(0x150))),console[_0x18efc4(0x198)](''));}
|
|
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_0xbcd300=a122_0x2094;(function(_0x139293,_0x22d1b9){const _0x579105=a122_0x2094,_0x17f85d=_0x139293();while(!![]){try{const _0x4dbbd7=parseInt(_0x579105(0x19f))/0x1+-parseInt(_0x579105(0x1b3))/0x2*(parseInt(_0x579105(0x1cf))/0x3)+-parseInt(_0x579105(0x19e))/0x4+-parseInt(_0x579105(0x192))/0x5+parseInt(_0x579105(0x1d7))/0x6*(-parseInt(_0x579105(0x1d0))/0x7)+-parseInt(_0x579105(0x1d1))/0x8+parseInt(_0x579105(0x1b7))/0x9;if(_0x4dbbd7===_0x22d1b9)break;else _0x17f85d['push'](_0x17f85d['shift']());}catch(_0x10392b){_0x17f85d['push'](_0x17f85d['shift']());}}}(a122_0x204c,0x770ee));function a122_0x2094(_0x3bf690,_0x5137c5){_0x3bf690=_0x3bf690-0x192;const _0x204c5c=a122_0x204c();let _0x20943c=_0x204c5c[_0x3bf690];return _0x20943c;}import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{buildSqlRelativePath}from'../../core/sql-sync/utils.js';import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x40b07b){const _0x56cb63=a122_0x2094;if(_0x40b07b===_0x56cb63(0x19a))return[_0x56cb63(0x1c4),_0x56cb63(0x1be),_0x56cb63(0x1d2),''][_0x56cb63(0x1c2)]('\x0a');return[_0x56cb63(0x199),'']['join']('\x0a');}export const sqlCreate={'service':a122_0xbcd300(0x1a2),'command':a122_0xbcd300(0x1ca),'description':a122_0xbcd300(0x197),'risk':'high-risk-write','flags':[{'name':'name','type':a122_0xbcd300(0x1a6),'description':a122_0xbcd300(0x1c5)},{'name':a122_0xbcd300(0x19c),'type':a122_0xbcd300(0x1d3),'description':a122_0xbcd300(0x1bb)},{'name':a122_0xbcd300(0x1cd),'type':a122_0xbcd300(0x1a6),'enum':[a122_0xbcd300(0x1a2),a122_0xbcd300(0x19a)],'description':a122_0xbcd300(0x1bd)}],async 'validate'(_0x32b590){const _0x2e86c9=a122_0xbcd300;if(!_0x32b590[_0x2e86c9(0x198)])return;if(!_0x32b590[_0x2e86c9(0x1bf)](_0x2e86c9(0x1b5))[_0x2e86c9(0x195)]())throw CliErrors[_0x2e86c9(0x1b4)](_0x2e86c9(0x1b5),'--name\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0xa90b11=resolveProvidedDbId(_0x32b590);if(typeof _0xa90b11!==_0x2e86c9(0x1d3)||!Number[_0x2e86c9(0x1cb)](_0xa90b11)||_0xa90b11<=0x0)throw CliErrors[_0x2e86c9(0x1b4)](_0x2e86c9(0x19c),_0x2e86c9(0x1ce));if(!_0x32b590[_0x2e86c9(0x1bf)]('mode')[_0x2e86c9(0x195)]())throw CliErrors[_0x2e86c9(0x1b4)](_0x2e86c9(0x1cd),_0x2e86c9(0x1d6));},async 'dryRun'(_0x4240f9){const _0x443682=a122_0xbcd300,_0x16d777=loadSqlProjectConfig(_0x4240f9[_0x443682(0x1ad)]),{sqlName:_0x41fe50,dbId:_0x5a14db,dbName:_0x128490,mode:_0x4a0f22}=await resolveSqlNewInputs(_0x4240f9),_0x4d6e68=buildSqlRelativePath(_0x443682(0x1c3),_0x41fe50,_0x128490,_0x4a0f22,_0x5a14db),_0x1740b1=_0x16d777['sqlRootDir']+'/'+_0x4d6e68;return{'method':_0x443682(0x1ae),'url':_0x443682(0x1b1),'body':{'appCode':_0x4240f9['appCode'],'sqlName':_0x41fe50,'dbId':_0x5a14db,'mode':_0x4a0f22,'localPath':_0x1740b1},'description':_0x443682(0x1a8)+_0x16d777[_0x443682(0x19d)]};},async 'execute'(_0x337f65){const _0x2139f9=a122_0xbcd300,_0x19ddc2=loadSqlProjectConfig(_0x337f65[_0x2139f9(0x1ad)]),{sqlName:_0x531e67,dbId:_0x119b20,dbName:_0x2e4ee6,mode:_0x4d5005}=await resolveSqlNewInputs(_0x337f65),_0x312e0e=generateSqlTemplate(_0x4d5005),_0x2d99d4=await createSqlQuery({'appCode':_0x337f65[_0x2139f9(0x1ad)],'sqlName':_0x531e67,'dbId':_0x119b20,'sqlContent':_0x312e0e}),_0x5c76b5=ensureRemoteSqlContent(_0x2d99d4),_0x986c8a=_0x2e4ee6||await getDbName(_0x337f65[_0x2139f9(0x1ad)],_0x119b20)['catch'](()=>undefined),_0x1060f1=buildSqlRelativePath(_0x2d99d4[_0x2139f9(0x193)],_0x2d99d4[_0x2139f9(0x1a0)],_0x986c8a,_0x4d5005,_0x119b20),_0xa0c1f5=_0x19ddc2[_0x2139f9(0x19d)]+'/'+_0x1060f1,_0x3fb44c=buildLocalSqlFileContent({'sqlCode':_0x2d99d4[_0x2139f9(0x193)],'sqlName':_0x2d99d4[_0x2139f9(0x1a0)],'dbId':_0x2d99d4[_0x2139f9(0x1d4)]},_0x5c76b5,{'dbName':_0x986c8a,'mode':_0x4d5005,'syncedAt':new Date()['toISOString'](),'description':_0x2d99d4[_0x2139f9(0x1b9)]});if(await fileExists(_0xa0c1f5))throw CliErrors[_0x2139f9(0x1c9)](_0x2139f9(0x19b)+_0xa0c1f5);await ensureParentDirectory(_0xa0c1f5),await writeFile(_0xa0c1f5,_0x3fb44c,_0x2139f9(0x1b0));const _0x22db37=await readSqlLockFile(_0x19ddc2[_0x2139f9(0x1ac)]),{lockData:_0x3202b8,appLock:_0x586f0e}=ensureSqlLockScope(_0x22db37??createEmptySqlLock(),_0x19ddc2['appCode'],_0x19ddc2[_0x2139f9(0x1a1)],_0x2139f9(0x1b8));return _0x586f0e[_0x2139f9(0x1d8)][_0x2d99d4[_0x2139f9(0x193)]]={...buildSqlLockEntry(_0x2d99d4,_0x5c76b5,computeSqlContentHash(_0x3fb44c),{'dbName':_0x986c8a}),'path':_0x1060f1,'mode':_0x4d5005},_0x586f0e[_0x2139f9(0x1aa)]=new Date()[_0x2139f9(0x1c1)](),await writeSqlLockFile(_0x19ddc2[_0x2139f9(0x1ac)],_0x3202b8),{'ok':!![],'data':{'id':_0x2d99d4['id'],'sqlCode':_0x2d99d4[_0x2139f9(0x193)],'sqlName':_0x2d99d4[_0x2139f9(0x1a0)],'dbId':_0x2d99d4[_0x2139f9(0x1d4)],'path':_0xa0c1f5,'mode':_0x4d5005},'message':_0x2139f9(0x1b6)+_0x2d99d4[_0x2139f9(0x193)]};}};async function resolveSqlNewInputs(_0x5dfbfa){const _0x25d0e1=await resolveSqlNameInput(_0x5dfbfa),{dbId:_0x26bb0e,dbName:_0x1a5a2d}=await resolveDbSelection(_0x5dfbfa),_0x1e7166=await resolveSqlModeInput(_0x5dfbfa);return{'sqlName':_0x25d0e1,'dbId':_0x26bb0e,'dbName':_0x1a5a2d,'mode':_0x1e7166};}async function resolveSqlNameInput(_0x2236a6){const _0x33becf=a122_0xbcd300,_0x5e7469=_0x2236a6[_0x33becf(0x1bf)](_0x33becf(0x1b5))[_0x33becf(0x195)]();if(_0x5e7469)return _0x5e7469;if(_0x2236a6[_0x33becf(0x198)])throw CliErrors[_0x33becf(0x1b4)](_0x33becf(0x1b5),_0x33becf(0x1cc));return(await input({'message':_0x33becf(0x1a5),'validate':_0x4723af=>_0x4723af[_0x33becf(0x195)]()?!![]:_0x33becf(0x1ba)}))['trim']();}async function resolveDbSelection(_0x27118d){const _0x544a0f=a122_0xbcd300,_0x429b20=resolveProvidedDbId(_0x27118d);if(typeof _0x429b20===_0x544a0f(0x1d3)&&Number['isFinite'](_0x429b20)&&_0x429b20>0x0)return{'dbId':_0x429b20,'dbName':await getDbName(_0x27118d['appCode'],_0x429b20)[_0x544a0f(0x1a4)](()=>undefined)};if(_0x27118d[_0x544a0f(0x198)])throw CliErrors[_0x544a0f(0x1b4)](_0x544a0f(0x19c),_0x544a0f(0x1ce));const _0x4c5484=await listDatabases(_0x27118d[_0x544a0f(0x1ad)])['catch'](()=>[]);if(_0x4c5484[_0x544a0f(0x1a9)]===0x1)return{'dbId':_0x4c5484[0x0][_0x544a0f(0x1d4)],'dbName':_0x4c5484[0x0][_0x544a0f(0x1a3)]};if(_0x4c5484['length']>0x1){const _0x3c9dce=await select({'message':_0x544a0f(0x1c7),'choices':[..._0x4c5484[_0x544a0f(0x1c8)](_0x387a4e=>({'name':_0x387a4e[_0x544a0f(0x1a3)]+'\x20('+_0x387a4e[_0x544a0f(0x1d4)]+')','value':serializeDbSelection(_0x387a4e)})),{'name':_0x544a0f(0x1ab),'value':_0x544a0f(0x1c6)}]});if(_0x3c9dce!=='__manual__')return deserializeDbSelection(_0x3c9dce);}const _0x2955b8=await input({'message':'请输入目标数据库\x20dbId:','validate':_0x4246d9=>{const _0x430700=_0x544a0f,_0x18c963=_0x4246d9[_0x430700(0x195)]();if(!_0x18c963)return _0x430700(0x1bc);const _0x521e16=Number(_0x18c963);if(!Number[_0x430700(0x1d5)](_0x521e16)||_0x521e16<=0x0)return _0x430700(0x1af);return!![];}});return{'dbId':Number(_0x2955b8[_0x544a0f(0x195)]())};}function a122_0x204c(){const _0xb6b623=['<server-generated-sqlCode>','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','SQL\x20query\x20display\x20name','__manual__','请选择目标数据库:','map','validation','create','isFinite','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','mode','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','351LqFGSi','112yRZWgq','268080IlwUEp','</select>','number','dbId','isInteger','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','33486UYLbwU','sqls','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','1080070MpiVjM','sqlCode','stringify','trim','flag','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','nonInteractive','SELECT\x201\x20AS\x20id;','mybatisXml','File\x20already\x20exists:\x20','db-id','sqlRootDir','3741696QKKGaL','178448THPpKj','sqlName','sqlRoot','sql','dbName','catch','请输入\x20SQL\x20名称:','string','parse','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','length','lastSync','✎\x20手动输入\x20dbId','lockFilePath','appCode','POST','dbId\x20必须为正整数','utf8','/smartapi/custom/saveUserCustomSql','请选择本地\x20SQL\x20模式:','9754uYjOfj','flagMissing','name','Created\x20SQL\x20query\x20','19386603bNhAPJ','new','description','SQL\x20名称不能为空','Target\x20database\x20ID','dbId\x20不能为空','Local\x20SQL\x20file\x20mode','\x20\x20SELECT\x201\x20AS\x20id','str','Invalid\x20database\x20selection\x20payload:\x20','toISOString','join'];a122_0x204c=function(){return _0xb6b623;};return a122_0x204c();}async function resolveSqlModeInput(_0x42b47b){const _0x1fbad2=a122_0xbcd300,_0x3109d9=_0x42b47b['str']('mode')[_0x1fbad2(0x195)]();if(_0x3109d9===_0x1fbad2(0x1a2)||_0x3109d9===_0x1fbad2(0x19a))return _0x3109d9;if(_0x42b47b['nonInteractive'])throw CliErrors['flagMissing'](_0x1fbad2(0x1cd),_0x1fbad2(0x1d6));return await select({'message':_0x1fbad2(0x1b2),'choices':[{'name':'普通\x20SQL(sql)','value':_0x1fbad2(0x1a2),'description':_0x1fbad2(0x1d9)},{'name':'MyBatis\x20XML(mybatisXml)','value':_0x1fbad2(0x19a),'description':'适合带动态标签的\x20MyBatis\x20XML\x20SQL'}]});}function serializeDbSelection(_0x2e7b3e){const _0x411dac=a122_0xbcd300;return JSON[_0x411dac(0x194)]({'dbId':_0x2e7b3e[_0x411dac(0x1d4)],'dbName':_0x2e7b3e['dbName']});}function deserializeDbSelection(_0x3fc063){const _0x53b28f=a122_0xbcd300;try{const _0x2b103a=JSON[_0x53b28f(0x1a7)](_0x3fc063);if(typeof _0x2b103a[_0x53b28f(0x1d4)]===_0x53b28f(0x1d3)&&Number[_0x53b28f(0x1cb)](_0x2b103a[_0x53b28f(0x1d4)]))return{'dbId':_0x2b103a[_0x53b28f(0x1d4)],'dbName':_0x2b103a[_0x53b28f(0x1a3)]};}catch{}throw CliErrors[_0x53b28f(0x1c9)](_0x53b28f(0x1c0)+_0x3fc063);}function resolveProvidedDbId(_0x47702f){const _0x16755b=a122_0xbcd300,_0x2e1c3d=_0x47702f[_0x16755b(0x196)]('db-id');if(typeof _0x2e1c3d===_0x16755b(0x1d3)&&Number['isFinite'](_0x2e1c3d))return _0x2e1c3d;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
|
-
const
|
|
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
|
-
function
|
|
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+').'};}};
|