@lovrabet/rabetbase-cli 2.1.3-beta.0 → 2.1.5
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/dataset/detail.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/links.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/update.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/standard-page-status.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/non-interactive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/init.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/skill/index.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/save.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/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/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/templates/skill/SKILL.md.tpl +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0xd44bda,_0x3e4cb0){const _0x281805=a97_0x3263,_0x386dbd=_0xd44bda();while(!![]){try{const _0x293290=parseInt(_0x281805(0x13b))/0x1*(-parseInt(_0x281805(0x13d))/0x2)+parseInt(_0x281805(0x122))/0x3*(-parseInt(_0x281805(0x11d))/0x4)+parseInt(_0x281805(0x121))/0x5*(parseInt(_0x281805(0x11f))/0x6)+parseInt(_0x281805(0x130))/0x7*(-parseInt(_0x281805(0x149))/0x8)+-parseInt(_0x281805(0x11b))/0x9+-parseInt(_0x281805(0x148))/0xa*(parseInt(_0x281805(0x129))/0xb)+parseInt(_0x281805(0x144))/0xc;if(_0x293290===_0x3e4cb0)break;else _0x386dbd['push'](_0x386dbd['shift']());}catch(_0x351707){_0x386dbd['push'](_0x386dbd['shift']());}}}(a97_0x4760,0xb8d0e));import{readFileSync,existsSync,renameSync}from'node:fs';function a97_0x3263(_0x495fbb,_0x209574){_0x495fbb=_0x495fbb-0x11b;const _0x476053=a97_0x4760();let _0x32639e=_0x476053[_0x495fbb];return _0x32639e;}import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a97_0x3e7b78 from'chalk';import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';import{readRawConfig,getProjectConfigPath,writeConfigFile,NEW_CONFIG_NAME,LEGACY_CONFIG_NAMES}from'../../context.js';function a97_0x4760(){const _0x277dea=['4405115LJtnOd','274329PuXUVR','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','Please\x20enter\x20App\x20Code:','1.0.0','.rabetbase.json','defaultApp','green','12504206FsUZxW','\x20\x20Default:\x20','apps','cyan','toLocaleString','env','info','14yjVFfN','初始化项目配置文件成功','join','parse','App\x20Code\x20cannot\x20be\x20empty','package.json','version','app','?\x20(Old\x20file\x20→\x20*.bak)','\x20api\x20pull\x27','appcode','3639HOHhlh','log','26APpdiw','string','../..','setLogPath','yellow','keys','\x20api\x20generate\x27\x20and\x20\x27','60506400ITxZPj','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','\x20\x20Apps:\x20','\x20→\x20.rabetbase.json','10FaNREm','5635672qHkOXg','bold','Invalid\x20App\x20Code','trim','Upgrade\x20it\x20to\x20','.bak','12460383eZxcxx','gray','52kGLYfa','utf8','6ZsEMrR','从旧配置文件升级成功'];a97_0x4760=function(){return _0x277dea;};return a97_0x4760();}import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x42fc7b){const _0x2d0d2a=a97_0x3263,{appcode:_0x570cc5,env:_0x1513ef,autoYes:_0x2d0dfd}=_0x42fc7b,_0x97e5e8=process['cwd']();if(getProjectConfigPath())throw new Error(_0x2d0d2a(0x123));let _0x4cdcdf;for(const _0x172813 of LEGACY_CONFIG_NAMES){const _0x391f23=resolve(_0x97e5e8,_0x172813);if(existsSync(_0x391f23)){_0x4cdcdf=_0x391f23;break;}}if(_0x4cdcdf){let _0x4da2ba={};try{_0x4da2ba=JSON[_0x2d0d2a(0x133)](readFileSync(_0x4cdcdf,_0x2d0d2a(0x11e)));}catch{}const _0x5f4bf1=basename(_0x4cdcdf),_0x530154=_0x4da2ba?.[_0x2d0d2a(0x13a)]||_0x4da2ba?.[_0x2d0d2a(0x137)];let _0x4b379c=_0x2d0dfd;!_0x2d0dfd&&(console[_0x2d0d2a(0x13c)](a97_0x3e7b78[_0x2d0d2a(0x141)](_0x2d0d2a(0x145)+a97_0x3e7b78[_0x2d0d2a(0x14a)](_0x5f4bf1))),_0x530154&&console['log'](a97_0x3e7b78['cyan']('\x20\x20appcode:\x20'+_0x530154)),_0x4b379c=await confirm({'message':_0x2d0d2a(0x14d)+a97_0x3e7b78[_0x2d0d2a(0x14a)](_0x2d0d2a(0x126))+_0x2d0d2a(0x138),'default':!![]}));if(!_0x4b379c){console[_0x2d0d2a(0x13c)]('Migration\x20cancelled.\x20Run\x20`'+CLI_BIN_NAME+'\x20project\x20init`\x20to\x20start\x20fresh.');return;}const _0x3df258=resolve(_0x97e5e8,NEW_CONFIG_NAME),_0x2af264=getCliVersionFromPkg(),_0x2834b7=readRawConfig(),_0x3adc14=_0x570cc5||(typeof _0x4da2ba?.['appcode']==='string'?_0x4da2ba['appcode']:undefined)||(typeof _0x4da2ba?.[_0x2d0d2a(0x137)]===_0x2d0d2a(0x13e)?_0x4da2ba[_0x2d0d2a(0x137)]:undefined)||await askAppcode(),_0x494a01=typeof _0x4da2ba?.[_0x2d0d2a(0x12e)]===_0x2d0d2a(0x13e)?_0x4da2ba[_0x2d0d2a(0x12e)]:typeof _0x2834b7[_0x2d0d2a(0x12e)]==='string'?_0x2834b7[_0x2d0d2a(0x12e)]:'production',_0x5e767a=buildCanonicalProjectConfig({..._0x2834b7,..._0x4da2ba},{'appCodes':[_0x3adc14],'env':_0x494a01,'metadata':{'version':_0x2af264,'migratedAt':new Date()[_0x2d0d2a(0x12d)](),'migratedFrom':_0x4cdcdf}});writeConfigFile(_0x3df258,_0x5e767a);const _0x3c12ef=_0x4cdcdf+'.bak';renameSync(_0x4cdcdf,_0x3c12ef),logger['setLogPath'](_0x97e5e8),logger[_0x2d0d2a(0x12f)]('init',_0x2d0d2a(0x120),{'from':_0x4cdcdf,'to':_0x3df258,'appcode':_0x3adc14,'env':_0x5e767a['env']}),console['log'](a97_0x3e7b78[_0x2d0d2a(0x128)]('✓\x20Upgraded\x20'+_0x5f4bf1+_0x2d0d2a(0x147))),console['log'](a97_0x3e7b78[_0x2d0d2a(0x12c)](_0x2d0d2a(0x146)+Object[_0x2d0d2a(0x142)](_0x5e767a[_0x2d0d2a(0x12b)]||{})[_0x2d0d2a(0x132)](',\x20'))),console['log'](a97_0x3e7b78[_0x2d0d2a(0x12c)](_0x2d0d2a(0x12a)+_0x5e767a[_0x2d0d2a(0x127)])),console[_0x2d0d2a(0x13c)](a97_0x3e7b78[_0x2d0d2a(0x11c)]('\x20\x20Old\x20file\x20backed\x20up\x20as\x20'+_0x5f4bf1+_0x2d0d2a(0x14e)));return;}const _0x217605=_0x570cc5||await askAppcode(),_0x4e5b85=resolve(_0x97e5e8,NEW_CONFIG_NAME),_0x349878=getCliVersionFromPkg(),_0x1e8d23=readRawConfig(),_0x30ad0f=typeof _0x1e8d23[_0x2d0d2a(0x12e)]===_0x2d0d2a(0x13e)?_0x1e8d23['env']:undefined,_0x4dd92c=buildCanonicalProjectConfig({},{'appCodes':[_0x217605],'env':_0x1513ef||_0x30ad0f||'production','metadata':{'version':_0x349878,'createdAt':new Date()[_0x2d0d2a(0x12d)]()}});writeConfigFile(_0x4e5b85,_0x4dd92c),logger[_0x2d0d2a(0x140)](_0x97e5e8),logger[_0x2d0d2a(0x12f)]('init',_0x2d0d2a(0x131),{'appcode':_0x217605,'env':_0x4dd92c[_0x2d0d2a(0x12e)],'version':_0x4dd92c[_0x2d0d2a(0x136)],'configPath':_0x4e5b85}),console['log'](a97_0x3e7b78[_0x2d0d2a(0x128)]('✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory')),console[_0x2d0d2a(0x13c)](a97_0x3e7b78['cyan'](_0x2d0d2a(0x146)+Object['keys'](_0x4dd92c['apps']||{})[_0x2d0d2a(0x132)](',\x20'))),console[_0x2d0d2a(0x13c)](a97_0x3e7b78[_0x2d0d2a(0x12c)]('\x20\x20Default:\x20'+_0x4dd92c[_0x2d0d2a(0x127)])),console[_0x2d0d2a(0x13c)]('\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27'+CLI_BIN_NAME+_0x2d0d2a(0x143)+CLI_BIN_NAME+_0x2d0d2a(0x139));}function askAppcode(){const _0x382b9e=a97_0x3263;return input({'message':_0x382b9e(0x124),'validate':_0x15d7ff=>{const _0x1c0354=_0x382b9e;if(!_0x15d7ff[_0x1c0354(0x14c)]())return _0x1c0354(0x134);const {valid:_0x4ed795,message:_0x5358a}=validateAppcode(_0x15d7ff[_0x1c0354(0x14c)]());return _0x4ed795||_0x5358a||_0x1c0354(0x14b);}});}function getCliVersionFromPkg(){const _0x411054=a97_0x3263;try{const _0xd588da=fileURLToPath(import.meta.url),_0x33021f=resolve(dirname(_0xd588da),_0x411054(0x13f)),_0x392445=JSON[_0x411054(0x133)](readFileSync(resolve(_0x33021f,_0x411054(0x135)),_0x411054(0x11e)));return _0x392445[_0x411054(0x136)]||_0x411054(0x125);}catch{return _0x411054(0x125);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a98_0x490ca7=a98_0x5eff;(function(_0x22d7be,_0x499974){const _0x2e867f=a98_0x5eff,_0x5d2596=_0x22d7be();while(!![]){try{const _0x579ae0=-parseInt(_0x2e867f(0xbb))/0x1+parseInt(_0x2e867f(0xeb))/0x2*(-parseInt(_0x2e867f(0x99))/0x3)+parseInt(_0x2e867f(0xab))/0x4+-parseInt(_0x2e867f(0x103))/0x5*(-parseInt(_0x2e867f(0x9d))/0x6)+-parseInt(_0x2e867f(0xce))/0x7*(-parseInt(_0x2e867f(0x9b))/0x8)+parseInt(_0x2e867f(0xda))/0x9*(-parseInt(_0x2e867f(0xf7))/0xa)+parseInt(_0x2e867f(0x98))/0xb;if(_0x579ae0===_0x499974)break;else _0x5d2596['push'](_0x5d2596['shift']());}catch(_0x483376){_0x5d2596['push'](_0x5d2596['shift']());}}}(a98_0xd5ff,0x98502));import a98_0x5d9caf from'chalk';import a98_0x14b741 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{runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=CONFIG_NAMES[a98_0x490ca7(0xe6)](_0xbd9f58=>_0xbd9f58!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x3eec16){const _0x2248db=a98_0x490ca7,_0x386c5e=[];for(const _0x283338 of Object[_0x2248db(0xca)](CORE_IDE_CONFIGS)){if(_0x283338[_0x2248db(0xf2)])for(const _0x434f97 of _0x283338[_0x2248db(0xf2)]){_0x386c5e['push'](resolve(_0x3eec16,_0x434f97[_0x2248db(0xa4)]));}}return _0x386c5e;}function a98_0x5eff(_0x5a5548,_0x27c317){_0x5a5548=_0x5a5548-0x8a;const _0xd5ff3a=a98_0xd5ff();let _0x5eff20=_0xd5ff3a[_0x5a5548];return _0x5eff20;}function analyse(_0x10ab77){const _0x3aee66=a98_0x490ca7;let _0x41abfd=null;const _0x32483e=resolve(_0x10ab77,NEW_CONFIG_NAME),_0x145ec7=existsSync(_0x32483e);for(const _0x318c76 of LEGACY_CONFIG_NAMES){const _0x29b437=resolve(_0x10ab77,_0x318c76);if(existsSync(_0x29b437)){const _0x3a0af6=readConfigFile(_0x29b437),_0x2974c9=Object[_0x3aee66(0x93)](_0x3a0af6)['filter'](_0x3d9e06=>typeof _0x3a0af6[_0x3d9e06]!=='undefined');_0x41abfd={'oldPath':_0x29b437,'hasNewConfig':_0x145ec7,'fields':_0x2974c9};break;}}const _0x497b2b=[],_0x11a63d=resolve(_0x10ab77,_0x3aee66(0xae));if(existsSync(_0x11a63d))_0x497b2b[_0x3aee66(0xe5)](_0x11a63d);const _0x1cd342=resolve(_0x10ab77,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x1cd342))_0x497b2b['push'](_0x1cd342);const _0x2ee320=resolve(_0x10ab77,_0x3aee66(0xdc));if(existsSync(_0x2ee320))_0x497b2b['push'](_0x2ee320);for(const _0x21d784 of collectIdeSkillFiles(_0x10ab77)){if(existsSync(_0x21d784))_0x497b2b[_0x3aee66(0xe5)](_0x21d784);}let _0x4233ea=null;const _0x3426b7=resolve(_0x10ab77,_0x3aee66(0xb7));if(existsSync(_0x3426b7))try{const _0x5d00ad=JSON[_0x3aee66(0xc5)](readFileSync(_0x3426b7,_0x3aee66(0xa7)));if(_0x5d00ad?.[_0x3aee66(0xbf)]&&typeof _0x5d00ad[_0x3aee66(0xbf)]===_0x3aee66(0xf6)){const _0x4a2bb2=[];for(const [_0x4bbff5,_0x2ff599]of Object['entries'](_0x5d00ad[_0x3aee66(0xbf)])){const _0x5417d5=_0x2ff599;_0x5417d5?.[_0x3aee66(0xa5)]&&Array[_0x3aee66(0xaf)](_0x5417d5[_0x3aee66(0xa5)])&&_0x5417d5[_0x3aee66(0xa5)][_0x3aee66(0xac)](_0x29ddc2=>typeof _0x29ddc2==='string'&&_0x29ddc2['includes'](_0x3aee66(0xa0)))&&_0x4a2bb2[_0x3aee66(0xe5)](_0x4bbff5);}_0x4a2bb2['length']>0x0&&(_0x4233ea={'path':_0x3426b7,'keys':_0x4a2bb2});}}catch{}const _0x5ea656=_0x497b2b[_0x3aee66(0xfb)]>0x0||_0x41abfd!==null;let _0x351a3d=null;const _0x24e04d=resolve(_0x10ab77,_0x3aee66(0xe8));if(existsSync(_0x24e04d))try{const _0x38a9e1=JSON['parse'](readFileSync(_0x24e04d,'utf8'));for(const _0x40ac08 of['dependencies',_0x3aee66(0xde)]){const _0x548700=_0x38a9e1?.[_0x40ac08]?.[_0x3aee66(0xb3)];if(typeof _0x548700===_0x3aee66(0xe4)){_0x548700!==_0x3aee66(0x97)&&(_0x351a3d={'pkgPath':_0x24e04d,'currentVersion':_0x548700,'field':_0x40ac08});break;}}}catch{}return{'configMigration':_0x41abfd,'oldArtifacts':_0x497b2b,'oldMcpConfig':_0x4233ea,'needsSkillSwap':_0x5ea656,'sdkUpgrade':_0x351a3d};}function printReport(_0x593aaa){const _0x51d92a=a98_0x490ca7,{configMigration:_0x2bc0b7,oldArtifacts:_0x476157,oldMcpConfig:_0x14a36a,needsSkillSwap:_0x2e9765}=_0x593aaa;console[_0x51d92a(0xcc)](''),console[_0x51d92a(0xcc)](a98_0x5d9caf[_0x51d92a(0xc7)](_0x51d92a(0xb8))),console[_0x51d92a(0xcc)]('');_0x2bc0b7?(console['log'](a98_0x5d9caf[_0x51d92a(0xb0)](_0x51d92a(0xed))+('\x20\x20'+a98_0x5d9caf[_0x51d92a(0xa3)](_0x2bc0b7['oldPath']))),console['log'](_0x51d92a(0x8d)+(_0x2bc0b7[_0x51d92a(0xcb)]?a98_0x5d9caf[_0x51d92a(0xd2)](_0x51d92a(0xcd)):a98_0x5d9caf[_0x51d92a(0xbe)](_0x51d92a(0xf4)))),console[_0x51d92a(0xcc)]('\x20\x20Fields\x20to\x20migrate:\x20'+_0x2bc0b7[_0x51d92a(0xc0)][_0x51d92a(0xc3)](',\x20')),console[_0x51d92a(0xcc)]('\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak')):console[_0x51d92a(0xcc)](a98_0x5d9caf[_0x51d92a(0xb0)](_0x51d92a(0xed))+'\x20\x20'+a98_0x5d9caf[_0x51d92a(0xbe)]('no\x20legacy\x20config\x20found'));console[_0x51d92a(0xcc)]('');if(_0x476157[_0x51d92a(0xfb)]>0x0){console[_0x51d92a(0xcc)](a98_0x5d9caf[_0x51d92a(0xb0)]('Legacy\x20artifacts:'));for(const _0x49239c of _0x476157){console[_0x51d92a(0xcc)]('\x20\x20'+a98_0x5d9caf[_0x51d92a(0xe2)](_0x51d92a(0xba))+'\x20\x20'+_0x49239c);}console[_0x51d92a(0xcc)](_0x51d92a(0xd0));}else console[_0x51d92a(0xcc)](a98_0x5d9caf[_0x51d92a(0xb0)](_0x51d92a(0xb6))+'\x20\x20'+a98_0x5d9caf[_0x51d92a(0xbe)](_0x51d92a(0xe9)));console[_0x51d92a(0xcc)]('');_0x14a36a?(console[_0x51d92a(0xcc)](a98_0x5d9caf['cyan']('MCP\x20config:')+('\x20\x20'+a98_0x5d9caf[_0x51d92a(0xa3)](_0x14a36a[_0x51d92a(0xa4)])+'\x20→\x20keys:\x20'+_0x14a36a[_0x51d92a(0x93)][_0x51d92a(0xc3)](',\x20'))),console['log']('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console['log'](a98_0x5d9caf['cyan'](_0x51d92a(0xfc))+'\x20\x20'+a98_0x5d9caf[_0x51d92a(0xbe)](_0x51d92a(0xc1)));console[_0x51d92a(0xcc)](''),console[_0x51d92a(0xcc)](a98_0x5d9caf['cyan'](_0x51d92a(0x92))+('\x20\x20'+(_0x2e9765?a98_0x5d9caf[_0x51d92a(0xa3)]('needed'):a98_0x5d9caf[_0x51d92a(0xd2)](_0x51d92a(0xfa)))));_0x2e9765&&console[_0x51d92a(0xcc)](_0x51d92a(0xc9));console[_0x51d92a(0xcc)]('');if(_0x593aaa[_0x51d92a(0xea)]){const {currentVersion:_0x82b1c8,field:_0x171c33,pkgPath:_0x33c092}=_0x593aaa[_0x51d92a(0xea)];console[_0x51d92a(0xcc)](a98_0x5d9caf[_0x51d92a(0xb0)](_0x51d92a(0x9c))+('\x20\x20'+a98_0x5d9caf['yellow'](_0x33c092))),console[_0x51d92a(0xcc)](_0x51d92a(0xd8)+_0x171c33+':\x20'+a98_0x5d9caf['yellow'](_0x82b1c8)+'\x20→\x20'+a98_0x5d9caf['green'](_0x51d92a(0x97))),console[_0x51d92a(0xcc)](_0x51d92a(0xd9));}else console[_0x51d92a(0xcc)](a98_0x5d9caf['cyan']('@lovrabet/sdk:')+'\x20\x20'+a98_0x5d9caf[_0x51d92a(0xbe)](_0x51d92a(0xf5)));console[_0x51d92a(0xcc)]('');}function execConfigMigration(_0x36c1e5,_0x39cba8){const _0x86b825=a98_0x490ca7,{configMigration:_0xc4fe93}=_0x36c1e5;if(!_0xc4fe93?.[_0x86b825(0xd4)])return{'step':0x1,'label':_0x86b825(0xbd),'ok':!![],'detail':_0x86b825(0xb9)};const _0x17f430=readConfigFile(_0xc4fe93[_0x86b825(0xd4)]),_0x334d83=resolve(_0x39cba8,NEW_CONFIG_NAME),_0x209145=_0xc4fe93[_0x86b825(0xcb)]?readConfigFile(_0x334d83):{};for(const [_0x439769,_0x32540d]of Object[_0x86b825(0x95)](_0x17f430)){!(_0x439769 in _0x209145)&&(_0x209145[_0x439769]=_0x32540d);}writeConfigFile(_0x334d83,_0x209145);const _0x5285ed=_0xc4fe93[_0x86b825(0xd4)]+_0x86b825(0x102);return renameSync(_0xc4fe93[_0x86b825(0xd4)],_0x5285ed),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0xc4fe93['oldPath']+_0x86b825(0x8c)+_0x334d83+'\x20(backup:\x20'+_0x5285ed+')'};}function execRemoveOldArtifacts(_0x3c2400){const _0x293100=a98_0x490ca7,_0x368b3e=[];for(const _0x438ea1 of _0x3c2400){try{if(!existsSync(_0x438ea1))continue;const _0xd10275=tryStat(_0x438ea1);_0xd10275?.[_0x293100(0xb2)]()?rmSync(_0x438ea1,{'recursive':!![],'force':!![]}):unlinkSync(_0x438ea1);}catch(_0x1e2be0){_0x368b3e[_0x293100(0xe5)](_0x438ea1+':\x20'+_0x1e2be0['message']);}}return{'step':0x3,'label':_0x293100(0xc4),'ok':_0x368b3e[_0x293100(0xfb)]===0x0,'detail':_0x368b3e[_0x293100(0xfb)]>0x0?_0x3c2400[_0x293100(0xfb)]-_0x368b3e[_0x293100(0xfb)]+'/'+_0x3c2400[_0x293100(0xfb)]+_0x293100(0xfd)+_0x368b3e['join'](';\x20')+')':_0x3c2400[_0x293100(0xfb)]+'\x20removed'};}function execCleanMcp(_0x74796c){const _0x205fe3=a98_0x490ca7;if(!_0x74796c[_0x205fe3(0xd6)])return{'step':0x4,'label':_0x205fe3(0xf1),'ok':!![],'detail':_0x205fe3(0x9f)};try{const _0x2df8f7=readFileSync(_0x74796c[_0x205fe3(0xd6)]['path'],_0x205fe3(0xa7)),_0x3fca52=JSON[_0x205fe3(0xc5)](_0x2df8f7);if(_0x3fca52?.[_0x205fe3(0xbf)]&&typeof _0x3fca52['mcpServers']===_0x205fe3(0xf6)){const _0x4e11b4=[];for(const [_0xe42dc6,_0x39c067]of Object['entries'](_0x3fca52[_0x205fe3(0xbf)])){_0x39c067?.[_0x205fe3(0xa5)]&&Array['isArray'](_0x39c067[_0x205fe3(0xa5)])&&_0x39c067[_0x205fe3(0xa5)]['some'](_0x364050=>typeof _0x364050===_0x205fe3(0xe4)&&_0x364050['includes']('@lovrabet/dataset-mcp-server'))&&_0x4e11b4[_0x205fe3(0xe5)](_0xe42dc6);}for(const _0x11b18e of _0x4e11b4){delete _0x3fca52[_0x205fe3(0xbf)][_0x11b18e];}return _0x4e11b4[_0x205fe3(0xfb)]>0x0&&writeFileSync(_0x74796c[_0x205fe3(0xd6)][_0x205fe3(0xa4)],JSON[_0x205fe3(0xcf)](_0x3fca52,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':_0x205fe3(0xf1),'ok':!![],'detail':_0x205fe3(0xc6)+_0x4e11b4['join'](',\x20')+_0x205fe3(0xe0)+_0x74796c['oldMcpConfig'][_0x205fe3(0xa4)]};}return{'step':0x4,'label':_0x205fe3(0xf1),'ok':!![],'detail':_0x205fe3(0xf8)};}catch(_0xa442a2){return{'step':0x4,'label':_0x205fe3(0xf1),'ok':![],'detail':_0xa442a2[_0x205fe3(0x8b)]};}}function execSkillsRemove(_0x2a98f2,_0x25da96){const _0x18df6f=a98_0x490ca7,_0x59b90e=runNpxSkillsRemove(_0x2a98f2,{'stdio':_0x18df6f(0x100),'yes':_0x25da96});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x59b90e['ok'],'detail':_0x59b90e['ok']?_0x18df6f(0xa1):_0x59b90e['error']??_0x18df6f(0xa8)+_0x59b90e['status']};}function a98_0xd5ff(){const _0x206add=['latest','13325367QSjXRX','183HkNOaO','error','21160OitnTI','@lovrabet/sdk:','798DAEixi','Step\x201/7:\x20Config\x20migration\x20—\x20','skipped','@lovrabet/dataset-mcp-server','lovrabet/lovrabet-skill\x20removed','oldArtifacts','yellow','path','args','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','utf8','exit\x20','FAIL','detail','4521900ijroDc','some','status','.lovrabet','isArray','cyan','Step\x201/7:\x20Migrating\x20config...','isDirectory','@lovrabet/sdk','cwd','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','Legacy\x20artifacts:','.cursor/mcp.json','===\x20Upgrade\x20Analysis\x20===','skipped\x20(no\x20legacy\x20config)','FOUND','607005zEwjJs','configMigration','Config\x20migration','gray','mcpServers','fields','no\x20legacy\x20entry','Proceed\x20with\x20upgrade?','join','Remove\x20legacy\x20artifacts','parse','removed\x20','bold','done','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20lovrabet/rabetbase\x20--global','values','hasNewConfig','log','already\x20exists\x20(will\x20merge)','1099RqmDZf','stringify','\x20\x20Action:\x20delete','Upgrade\x20completed\x20successfully!','green','Step\x204/7:\x20MCP\x20config\x20—\x20','oldPath','white','oldMcpConfig','\x20\x20\x20\x20\x20\x20\x20','\x20\x20Current\x20version\x20in\x20','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','1376379aevXSy','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','.claude/skills/lovrabet','start','devDependencies','succeed','\x20from\x20','Step\x205/7:\x20Removing\x20old\x20skill...','red','info','string','push','filter','Remove\x20.lovrabet/','package.json','none\x20found','sdkUpgrade','26746vdKnXS','Step\x206/7:\x20Installing\x20new\x20skill...','Config\x20file:','fail','Install\x20new\x20skill','Step\x204/7:\x20Cleaning\x20MCP\x20config...','Clean\x20MCP\x20config','files','CANCEL','not\x20found\x20(will\x20create)','not\x20found\x20or\x20already\x20at\x20latest','object','60FSpEeM','no\x20matching\x20entry\x20found','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','not\x20needed','length','MCP\x20config:','\x20removed\x20(','Upgrade\x20cancelled.','lovrabet/rabetbase','inherit','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','.bak','7785ZJIhbz','\x20\x20bun\x20install','message','\x20→\x20','\x20\x20New\x20config\x20(.rabetbase.json):\x20','\x20\x20Step\x20','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','Upgrade\x20@lovrabet/sdk','Skill\x20swap:','keys','\x20\x20#\x20or','entries','failed'];a98_0xd5ff=function(){return _0x206add;};return a98_0xd5ff();}function execSkillsAdd(_0x4767a7,_0x28584f){const _0x2a6956=a98_0x490ca7,_0x27f108=runNpxSkillsAddGlobal(_0x4767a7,_0x2a6956(0xff),{'stdio':_0x2a6956(0x100),'yes':_0x28584f});return{'step':0x6,'label':_0x2a6956(0xef),'ok':_0x27f108['ok'],'detail':_0x27f108['ok']?'lovrabet/rabetbase\x20installed\x20globally':_0x27f108[_0x2a6956(0x9a)]??_0x2a6956(0xa8)+_0x27f108[_0x2a6956(0xad)]};}function execUpgradeSdk(_0x3429ce){const _0x154e08=a98_0x490ca7;if(!_0x3429ce['sdkUpgrade'])return{'step':0x7,'label':_0x154e08(0x91),'ok':!![],'detail':'skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)'};const {pkgPath:_0xbac01d,currentVersion:_0x175931,field:_0x340e35}=_0x3429ce[_0x154e08(0xea)];try{const _0x106bf5=readFileSync(_0xbac01d,_0x154e08(0xa7)),_0x5b0dd7=JSON[_0x154e08(0xc5)](_0x106bf5);return _0x5b0dd7[_0x340e35][_0x154e08(0xb3)]='latest',writeFileSync(_0xbac01d,JSON['stringify'](_0x5b0dd7,null,0x2)+'\x0a',_0x154e08(0xa7)),{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x340e35+'[\x22@lovrabet/sdk\x22]:\x20'+_0x175931+'\x20→\x20latest'};}catch(_0x15262f){return{'step':0x7,'label':_0x154e08(0x91),'ok':![],'detail':_0x15262f[_0x154e08(0x8b)]};}}function tryStat(_0x46cdf6){try{return statSync(_0x46cdf6);}catch{return undefined;}}function printSummary(_0x39189c){const _0x13c4a1=a98_0x490ca7;console['log'](''),console['log'](a98_0x5d9caf[_0x13c4a1(0xc7)]('===\x20Upgrade\x20Summary\x20===')),console[_0x13c4a1(0xcc)]('');for(const _0xed2f38 of _0x39189c){const _0x366c5d=_0xed2f38['ok']?a98_0x5d9caf[_0x13c4a1(0xd2)]('OK'):a98_0x5d9caf[_0x13c4a1(0xe2)](_0x13c4a1(0xa9));console[_0x13c4a1(0xcc)]('\x20\x20'+_0x366c5d+_0x13c4a1(0x8e)+_0xed2f38['step']+':\x20'+_0xed2f38['label']);if(_0xed2f38['detail'])console[_0x13c4a1(0xcc)](_0x13c4a1(0xd7)+a98_0x5d9caf[_0x13c4a1(0xbe)](_0xed2f38[_0x13c4a1(0xaa)]));}console[_0x13c4a1(0xcc)]('');}export async function upgradeApp(_0x5b325c,_0x2b0838){const _0x2a7609=a98_0x490ca7,_0x6610e0=process[_0x2a7609(0xb4)](),_0x366855=analyse(_0x6610e0),_0x23562d=!_0x366855[_0x2a7609(0xbc)]&&_0x366855[_0x2a7609(0xa2)]['length']===0x0&&!_0x366855['oldMcpConfig']&&!_0x366855['needsSkillSwap']&&!_0x366855['sdkUpgrade'];if(_0x23562d){console['log'](a98_0x5d9caf[_0x2a7609(0xd2)](_0x2a7609(0xa6)));return;}printReport(_0x366855);const _0x9a37e7=!!(_0x2b0838['yes']||_0x2b0838['Y']||_0x5b325c);if(!_0x9a37e7)try{const _0x2cfd86=await askConfirm(_0x2a7609(0xc2));if(!_0x2cfd86){console[_0x2a7609(0xcc)](a98_0x5d9caf[_0x2a7609(0xbe)](_0x2a7609(0xfe)));return;}}catch(_0x1cc611){if(_0x1cc611?.[_0x2a7609(0x8b)]===_0x2a7609(0xf3)){console[_0x2a7609(0xcc)](a98_0x5d9caf[_0x2a7609(0xbe)](_0x2a7609(0xfe)));return;}throw _0x1cc611;}const _0x4d6064=[],_0x275a39=a98_0x14b741({'text':_0x2a7609(0xb1),'color':_0x2a7609(0xb0)})[_0x2a7609(0xdd)](),_0x53faa9=execConfigMigration(_0x366855,_0x6610e0);_0x4d6064['push'](_0x53faa9),_0x275a39[_0x53faa9['ok']?'succeed':_0x2a7609(0xee)](_0x2a7609(0x9e)+(_0x53faa9['detail']??(_0x53faa9['ok']?_0x2a7609(0xc8):'failed')));const _0x2d1e73=resolve(_0x6610e0,_0x2a7609(0xae)),_0x8be637=a98_0x14b741({'text':_0x2a7609(0x101),'color':'cyan'})[_0x2a7609(0xdd)]();if(existsSync(_0x2d1e73))try{rmSync(_0x2d1e73,{'recursive':!![],'force':!![]}),_0x8be637[_0x2a7609(0xdf)]('Step\x202/7:\x20.lovrabet/\x20directory\x20removed'),_0x4d6064['push']({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![]});}catch(_0x66636d){_0x8be637[_0x2a7609(0xee)](_0x2a7609(0x8f)+_0x66636d[_0x2a7609(0x8b)]),_0x4d6064[_0x2a7609(0xe5)]({'step':0x2,'label':_0x2a7609(0xe7),'ok':![],'detail':_0x66636d[_0x2a7609(0x8b)]});}else _0x8be637[_0x2a7609(0xe3)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x4d6064[_0x2a7609(0xe5)]({'step':0x2,'label':_0x2a7609(0xe7),'ok':!![],'detail':_0x2a7609(0x9f)});const _0x2df4e5=a98_0x14b741({'text':'Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','color':'cyan'})['start'](),_0x383ce1=execRemoveOldArtifacts(_0x366855['oldArtifacts']);_0x4d6064[_0x2a7609(0xe5)](_0x383ce1),_0x2df4e5[_0x383ce1['ok']?_0x2a7609(0xdf):_0x2a7609(0xee)]('Step\x203/7:\x20Legacy\x20artifacts\x20—\x20'+(_0x383ce1[_0x2a7609(0xaa)]??(_0x383ce1['ok']?_0x2a7609(0xc8):_0x2a7609(0x96))));const _0x2e0275=a98_0x14b741({'text':_0x2a7609(0xf0),'color':'cyan'})[_0x2a7609(0xdd)](),_0x70064f=execCleanMcp(_0x366855);_0x4d6064['push'](_0x70064f),_0x2e0275[_0x70064f['ok']?_0x2a7609(0xdf):_0x2a7609(0xee)](_0x2a7609(0xd3)+(_0x70064f[_0x2a7609(0xaa)]??(_0x70064f['ok']?_0x2a7609(0xc8):'failed')));const _0x23861e=a98_0x14b741({'text':_0x2a7609(0xe1),'color':_0x2a7609(0xb0)})[_0x2a7609(0xdd)](),_0x5163e9=execSkillsRemove(_0x6610e0,_0x9a37e7);_0x4d6064[_0x2a7609(0xe5)](_0x5163e9),_0x23861e[_0x5163e9['ok']?_0x2a7609(0xdf):_0x2a7609(0xee)](_0x2a7609(0xdb)+(_0x5163e9[_0x2a7609(0xaa)]??(_0x5163e9['ok']?_0x2a7609(0xc8):_0x2a7609(0x96))));const _0x4bc06c=a98_0x14b741({'text':_0x2a7609(0xec),'color':_0x2a7609(0xb0)})['start'](),_0x42766c=execSkillsAdd(_0x6610e0,_0x9a37e7);_0x4d6064['push'](_0x42766c),_0x4bc06c[_0x42766c['ok']?_0x2a7609(0xdf):_0x2a7609(0xee)]('Step\x206/7:\x20Install\x20new\x20skill\x20—\x20'+(_0x42766c[_0x2a7609(0xaa)]??(_0x42766c['ok']?_0x2a7609(0xc8):'failed')));const _0x5a9a64=a98_0x14b741({'text':_0x2a7609(0xf9),'color':_0x2a7609(0xb0)})[_0x2a7609(0xdd)](),_0x1b994f=execUpgradeSdk(_0x366855);_0x4d6064[_0x2a7609(0xe5)](_0x1b994f),_0x5a9a64[_0x1b994f['ok']?'succeed':_0x2a7609(0xee)]('Step\x207/7:\x20@lovrabet/sdk\x20—\x20'+(_0x1b994f[_0x2a7609(0xaa)]??(_0x1b994f['ok']?_0x2a7609(0xc8):_0x2a7609(0x96)))),printSummary(_0x4d6064);const _0x182e39=_0x4d6064[_0x2a7609(0xac)](_0x59c1fb=>!_0x59c1fb['ok']);_0x182e39?console['log'](a98_0x5d9caf[_0x2a7609(0xa3)](_0x2a7609(0xb5))):console[_0x2a7609(0xcc)](a98_0x5d9caf[_0x2a7609(0xd2)](_0x2a7609(0xd1))),_0x1b994f['ok']&&_0x366855[_0x2a7609(0xea)]&&(console[_0x2a7609(0xcc)](''),console['log'](a98_0x5d9caf[_0x2a7609(0xc7)]['cyan']('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x2a7609(0xcc)](a98_0x5d9caf[_0x2a7609(0xb0)](_0x2a7609(0x90))),console['log'](''),console[_0x2a7609(0xcc)](a98_0x5d9caf[_0x2a7609(0xd5)]('\x20\x20npm\x20install')),console[_0x2a7609(0xcc)](a98_0x5d9caf[_0x2a7609(0xd5)](_0x2a7609(0x94))),console[_0x2a7609(0xcc)](a98_0x5d9caf[_0x2a7609(0xd5)](_0x2a7609(0x8a))),console[_0x2a7609(0xcc)](''));}
|
|
1
|
+
function a98_0x3006(){const _0x4844ab=['needed','MCP\x20config:','CANCEL','lovrabet/rabetbase','skipped','@lovrabet/sdk:','object','\x20→\x20latest','green','oldPath','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','\x20\x20#\x20or','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','some','Config\x20file:','12TnKJOX','\x20\x20\x20\x20\x20\x20\x20','\x20\x20Current\x20version\x20in\x20','needsSkillSwap','fail','isDirectory','cyan','failed','Step\x206/7:\x20Installing\x20new\x20skill...','\x20(backup:\x20','[\x22@lovrabet/sdk\x22]:\x20','length','Remove\x20.lovrabet/','entries','white','already\x20exists\x20(will\x20merge)','\x20→\x20','utf8','skipped\x20(no\x20legacy\x20config)','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','mcpServers','info','oldArtifacts','args','\x20\x20Fields\x20to\x20migrate:\x20','fields','Step\x204/7:\x20Cleaning\x20MCP\x20config...','sdkUpgrade','not\x20found\x20or\x20already\x20at\x20latest','===\x20Upgrade\x20Analysis\x20===','values','lovrabet/rabetbase\x20installed\x20globally','none\x20found','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','1209332OjkxDQ','.bak','red','detail','110CvEHBw','1009413htssgp','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','filter','Config\x20migration','configMigration','Upgrade\x20cancelled.','.claude/skills/lovrabet','\x20removed','isArray','Step\x205/7:\x20Removing\x20old\x20skill...','latest','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','234601vCErfe','undefined','not\x20found\x20(will\x20create)','41970AKewOt','exit\x20','@lovrabet/dataset-mcp-server','yes','start','FAIL','5901176LUOOYY','succeed','Skill\x20swap:','gray','Clean\x20MCP\x20config','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','error','.cursor/mcp.json','no\x20legacy\x20entry','bold','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','no\x20legacy\x20config\x20found','@lovrabet/sdk','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','Upgrade\x20@lovrabet/sdk','no\x20matching\x20entry\x20found','cwd','4032805GWvXfU','44955enJYQK','oldMcpConfig','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','Install\x20new\x20skill','Step\x201/7:\x20Config\x20migration\x20—\x20','\x20removed\x20(','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','Step\x204/7:\x20MCP\x20config\x20—\x20','done','Remove\x20legacy\x20artifacts','215eMSKPI','parse','message','\x20\x20Action:\x20delete','Remove\x20old\x20skill','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','files','===\x20Upgrade\x20Summary\x20===','string','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','FOUND','Proceed\x20with\x20upgrade?','join','log','Legacy\x20artifacts:','\x20from\x20','path','\x20→\x20keys:\x20','.lovrabet','yellow','includes','step','Step\x201/7:\x20Migrating\x20config...','push','hasNewConfig','stringify','devDependencies','.cursor/rules/lovrabet_rules.mdc','Upgrade\x20completed\x20successfully!','inherit','lovrabet/lovrabet-skill\x20removed','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)'];a98_0x3006=function(){return _0x4844ab;};return a98_0x3006();}const a98_0xa3794d=a98_0x1a79;function a98_0x1a79(_0x147fe0,_0x3305cc){_0x147fe0=_0x147fe0-0x174;const _0x300663=a98_0x3006();let _0x1a79b2=_0x300663[_0x147fe0];return _0x1a79b2;}(function(_0x411dd8,_0x59c599){const _0x4091aa=a98_0x1a79,_0x1edcbd=_0x411dd8();while(!![]){try{const _0x4c2399=parseInt(_0x4091aa(0x1b3))/0x1+parseInt(_0x4091aa(0x180))/0x2*(parseInt(_0x4091aa(0x1cf))/0x3)+-parseInt(_0x4091aa(0x1a2))/0x4+parseInt(_0x4091aa(0x1d9))/0x5*(parseInt(_0x4091aa(0x1b6))/0x6)+parseInt(_0x4091aa(0x1ce))/0x7+parseInt(_0x4091aa(0x1bc))/0x8+-parseInt(_0x4091aa(0x1a7))/0x9*(parseInt(_0x4091aa(0x1a6))/0xa);if(_0x4c2399===_0x59c599)break;else _0x1edcbd['push'](_0x1edcbd['shift']());}catch(_0x25011d){_0x1edcbd['push'](_0x1edcbd['shift']());}}}(a98_0x3006,0x62636));import a98_0x32e79e from'chalk';import a98_0x46bce8 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[a98_0xa3794d(0x1a9)](_0x591633=>_0x591633!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x2dcfcb){const _0x5ef184=a98_0xa3794d,_0xcbd73b=[];for(const _0x1b192a of Object[_0x5ef184(0x19e)](CORE_IDE_CONFIGS)){if(_0x1b192a[_0x5ef184(0x1df)])for(const _0x8400ae of _0x1b192a[_0x5ef184(0x1df)]){_0xcbd73b[_0x5ef184(0x1f0)](resolve(_0x2dcfcb,_0x8400ae['path']));}}return _0xcbd73b;}function analyse(_0x4c0215){const _0x45c631=a98_0xa3794d;let _0x7baff=null;const _0x39e471=resolve(_0x4c0215,NEW_CONFIG_NAME),_0x19ab53=existsSync(_0x39e471);for(const _0x5e8204 of LEGACY_CONFIG_NAMES){const _0x51704d=resolve(_0x4c0215,_0x5e8204);if(existsSync(_0x51704d)){const _0x5ceaae=readConfigFile(_0x51704d),_0x58c773=Object['keys'](_0x5ceaae)[_0x45c631(0x1a9)](_0x2d1feb=>typeof _0x5ceaae[_0x2d1feb]!==_0x45c631(0x1b4));_0x7baff={'oldPath':_0x51704d,'hasNewConfig':_0x19ab53,'fields':_0x58c773};break;}}const _0x27f2a2=[],_0x3b4a62=resolve(_0x4c0215,_0x45c631(0x1eb));if(existsSync(_0x3b4a62))_0x27f2a2[_0x45c631(0x1f0)](_0x3b4a62);const _0x2c58b0=resolve(_0x4c0215,_0x45c631(0x1f4));if(existsSync(_0x2c58b0))_0x27f2a2['push'](_0x2c58b0);const _0x56478f=resolve(_0x4c0215,_0x45c631(0x1ad));if(existsSync(_0x56478f))_0x27f2a2[_0x45c631(0x1f0)](_0x56478f);for(const _0x1cab4b of collectIdeSkillFiles(_0x4c0215)){if(existsSync(_0x1cab4b))_0x27f2a2[_0x45c631(0x1f0)](_0x1cab4b);}let _0x2ba4ff=null;const _0x4533a0=resolve(_0x4c0215,_0x45c631(0x1c3));if(existsSync(_0x4533a0))try{const _0x3f05b4=JSON['parse'](readFileSync(_0x4533a0,'utf8'));if(_0x3f05b4?.[_0x45c631(0x194)]&&typeof _0x3f05b4['mcpServers']==='object'){const _0x3f9934=[];for(const [_0x271df3,_0x49b1c5]of Object[_0x45c631(0x18d)](_0x3f05b4[_0x45c631(0x194)])){const _0x2badce=_0x49b1c5;_0x2badce?.[_0x45c631(0x197)]&&Array[_0x45c631(0x1af)](_0x2badce[_0x45c631(0x197)])&&_0x2badce[_0x45c631(0x197)]['some'](_0x17b254=>typeof _0x17b254===_0x45c631(0x1e1)&&_0x17b254[_0x45c631(0x1ed)]('@lovrabet/dataset-mcp-server'))&&_0x3f9934[_0x45c631(0x1f0)](_0x271df3);}_0x3f9934['length']>0x0&&(_0x2ba4ff={'path':_0x4533a0,'keys':_0x3f9934});}}catch{}const _0x5b870e=_0x27f2a2[_0x45c631(0x18b)]>0x0||_0x7baff!==null;let _0x5cf6f0=null;const _0x144b82=resolve(_0x4c0215,'package.json');if(existsSync(_0x144b82))try{const _0x150ce9=JSON[_0x45c631(0x1da)](readFileSync(_0x144b82,_0x45c631(0x191)));for(const _0x141d8c of['dependencies',_0x45c631(0x1f3)]){const _0x3005ed=_0x150ce9?.[_0x141d8c]?.[_0x45c631(0x1c9)];if(typeof _0x3005ed===_0x45c631(0x1e1)){_0x3005ed!==_0x45c631(0x1b1)&&(_0x5cf6f0={'pkgPath':_0x144b82,'currentVersion':_0x3005ed,'field':_0x141d8c});break;}}}catch{}return{'configMigration':_0x7baff,'oldArtifacts':_0x27f2a2,'oldMcpConfig':_0x2ba4ff,'needsSkillSwap':_0x5b870e,'sdkUpgrade':_0x5cf6f0};}function printReport(_0x4344b2){const _0xfa8b64=a98_0xa3794d,{configMigration:_0x421663,oldArtifacts:_0x77861b,oldMcpConfig:_0x204f4c,needsSkillSwap:_0x516403}=_0x4344b2;console['log'](''),console[_0xfa8b64(0x1e6)](a98_0x32e79e[_0xfa8b64(0x1c5)](_0xfa8b64(0x19d))),console['log']('');_0x421663?(console[_0xfa8b64(0x1e6)](a98_0x32e79e[_0xfa8b64(0x186)](_0xfa8b64(0x17f))+('\x20\x20'+a98_0x32e79e[_0xfa8b64(0x1ec)](_0x421663['oldPath']))),console[_0xfa8b64(0x1e6)]('\x20\x20New\x20config\x20(.rabetbase.json):\x20'+(_0x421663[_0xfa8b64(0x1f1)]?a98_0x32e79e[_0xfa8b64(0x179)](_0xfa8b64(0x18f)):a98_0x32e79e['gray'](_0xfa8b64(0x1b5)))),console[_0xfa8b64(0x1e6)](_0xfa8b64(0x198)+_0x421663[_0xfa8b64(0x199)][_0xfa8b64(0x1e5)](',\x20')),console[_0xfa8b64(0x1e6)]('\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak')):console[_0xfa8b64(0x1e6)](a98_0x32e79e[_0xfa8b64(0x186)](_0xfa8b64(0x17f))+'\x20\x20'+a98_0x32e79e['gray'](_0xfa8b64(0x1c8)));console[_0xfa8b64(0x1e6)]('');if(_0x77861b['length']>0x0){console['log'](a98_0x32e79e[_0xfa8b64(0x186)]('Legacy\x20artifacts:'));for(const _0x3f6300 of _0x77861b){console[_0xfa8b64(0x1e6)]('\x20\x20'+a98_0x32e79e[_0xfa8b64(0x1a4)](_0xfa8b64(0x1e3))+'\x20\x20'+_0x3f6300);}console[_0xfa8b64(0x1e6)](_0xfa8b64(0x1dc));}else console[_0xfa8b64(0x1e6)](a98_0x32e79e[_0xfa8b64(0x186)](_0xfa8b64(0x1e7))+'\x20\x20'+a98_0x32e79e[_0xfa8b64(0x1bf)](_0xfa8b64(0x1a0)));console['log']('');_0x204f4c?(console['log'](a98_0x32e79e[_0xfa8b64(0x186)](_0xfa8b64(0x1fa))+('\x20\x20'+a98_0x32e79e[_0xfa8b64(0x1ec)](_0x204f4c[_0xfa8b64(0x1e9)])+_0xfa8b64(0x1ea)+_0x204f4c['keys'][_0xfa8b64(0x1e5)](',\x20'))),console[_0xfa8b64(0x1e6)](_0xfa8b64(0x1a8))):console[_0xfa8b64(0x1e6)](a98_0x32e79e['cyan']('MCP\x20config:')+'\x20\x20'+a98_0x32e79e[_0xfa8b64(0x1bf)](_0xfa8b64(0x1c4)));console[_0xfa8b64(0x1e6)](''),console['log'](a98_0x32e79e['cyan'](_0xfa8b64(0x1be))+('\x20\x20'+(_0x516403?a98_0x32e79e[_0xfa8b64(0x1ec)](_0xfa8b64(0x1f9)):a98_0x32e79e[_0xfa8b64(0x179)]('not\x20needed'))));_0x516403&&console[_0xfa8b64(0x1e6)]('\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`'+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0xfa8b64(0x1e6)]('');if(_0x4344b2[_0xfa8b64(0x19b)]){const {currentVersion:_0x4ecc3a,field:_0x2bed9e,pkgPath:_0xefb6cd}=_0x4344b2[_0xfa8b64(0x19b)];console[_0xfa8b64(0x1e6)](a98_0x32e79e['cyan'](_0xfa8b64(0x176))+('\x20\x20'+a98_0x32e79e['yellow'](_0xefb6cd))),console[_0xfa8b64(0x1e6)](_0xfa8b64(0x182)+_0x2bed9e+':\x20'+a98_0x32e79e[_0xfa8b64(0x1ec)](_0x4ecc3a)+_0xfa8b64(0x190)+a98_0x32e79e[_0xfa8b64(0x179)](_0xfa8b64(0x1b1))),console[_0xfa8b64(0x1e6)](_0xfa8b64(0x1d1));}else console[_0xfa8b64(0x1e6)](a98_0x32e79e['cyan']('@lovrabet/sdk:')+'\x20\x20'+a98_0x32e79e[_0xfa8b64(0x1bf)](_0xfa8b64(0x19c)));console[_0xfa8b64(0x1e6)]('');}function execConfigMigration(_0x279f33,_0xf45fcb){const _0x659ee3=a98_0xa3794d,{configMigration:_0x40477a}=_0x279f33;if(!_0x40477a?.['oldPath'])return{'step':0x1,'label':_0x659ee3(0x1aa),'ok':!![],'detail':_0x659ee3(0x192)};const _0x5b704f=readConfigFile(_0x40477a[_0x659ee3(0x17a)]),_0x341ff4=resolve(_0xf45fcb,NEW_CONFIG_NAME),_0x199325=_0x40477a[_0x659ee3(0x1f1)]?readConfigFile(_0x341ff4):{};for(const [_0x525f15,_0x22ee97]of Object[_0x659ee3(0x18d)](_0x5b704f)){!(_0x525f15 in _0x199325)&&(_0x199325[_0x525f15]=_0x22ee97);}writeConfigFile(_0x341ff4,_0x199325);const _0x250a0a=_0x40477a[_0x659ee3(0x17a)]+_0x659ee3(0x1a3);return renameSync(_0x40477a[_0x659ee3(0x17a)],_0x250a0a),{'step':0x1,'label':_0x659ee3(0x1aa),'ok':!![],'detail':_0x40477a[_0x659ee3(0x17a)]+_0x659ee3(0x190)+_0x341ff4+_0x659ee3(0x189)+_0x250a0a+')'};}function execRemoveOldArtifacts(_0x4dfe68){const _0xe6f327=a98_0xa3794d,_0xd7ba03=[];for(const _0x11c186 of _0x4dfe68){try{if(!existsSync(_0x11c186))continue;const _0x2e70d1=tryStat(_0x11c186);_0x2e70d1?.[_0xe6f327(0x185)]()?rmSync(_0x11c186,{'recursive':!![],'force':!![]}):unlinkSync(_0x11c186);}catch(_0x418c45){_0xd7ba03['push'](_0x11c186+':\x20'+_0x418c45['message']);}}return{'step':0x3,'label':_0xe6f327(0x1d8),'ok':_0xd7ba03[_0xe6f327(0x18b)]===0x0,'detail':_0xd7ba03[_0xe6f327(0x18b)]>0x0?_0x4dfe68['length']-_0xd7ba03[_0xe6f327(0x18b)]+'/'+_0x4dfe68['length']+_0xe6f327(0x1d4)+_0xd7ba03[_0xe6f327(0x1e5)](';\x20')+')':_0x4dfe68['length']+_0xe6f327(0x1ae)};}function execCleanMcp(_0x3de7b4){const _0x48cf47=a98_0xa3794d;if(!_0x3de7b4[_0x48cf47(0x1d0)])return{'step':0x4,'label':_0x48cf47(0x1c0),'ok':!![],'detail':'skipped'};try{const _0x3a1b2f=readFileSync(_0x3de7b4[_0x48cf47(0x1d0)]['path'],_0x48cf47(0x191)),_0x1aec34=JSON[_0x48cf47(0x1da)](_0x3a1b2f);if(_0x1aec34?.[_0x48cf47(0x194)]&&typeof _0x1aec34[_0x48cf47(0x194)]===_0x48cf47(0x177)){const _0x28b0e9=[];for(const [_0x5c3200,_0x32baf8]of Object[_0x48cf47(0x18d)](_0x1aec34[_0x48cf47(0x194)])){_0x32baf8?.['args']&&Array[_0x48cf47(0x1af)](_0x32baf8['args'])&&_0x32baf8[_0x48cf47(0x197)]['some'](_0x148192=>typeof _0x148192===_0x48cf47(0x1e1)&&_0x148192['includes'](_0x48cf47(0x1b8)))&&_0x28b0e9[_0x48cf47(0x1f0)](_0x5c3200);}for(const _0x4abe95 of _0x28b0e9){delete _0x1aec34[_0x48cf47(0x194)][_0x4abe95];}return _0x28b0e9[_0x48cf47(0x18b)]>0x0&&writeFileSync(_0x3de7b4['oldMcpConfig'][_0x48cf47(0x1e9)],JSON[_0x48cf47(0x1f2)](_0x1aec34,null,0x2)+'\x0a',_0x48cf47(0x191)),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':'removed\x20'+_0x28b0e9[_0x48cf47(0x1e5)](',\x20')+_0x48cf47(0x1e8)+_0x3de7b4[_0x48cf47(0x1d0)][_0x48cf47(0x1e9)]};}return{'step':0x4,'label':_0x48cf47(0x1c0),'ok':!![],'detail':_0x48cf47(0x1cc)};}catch(_0x2b2707){return{'step':0x4,'label':_0x48cf47(0x1c0),'ok':![],'detail':_0x2b2707[_0x48cf47(0x1db)]};}}function execSkillsRemove(_0x2c5bb2,_0x134021){const _0x10d3ae=a98_0xa3794d,_0x40e270=runNpxSkillsRemove(_0x2c5bb2,{'stdio':'inherit','yes':_0x134021});return{'step':0x5,'label':_0x10d3ae(0x1dd),'ok':_0x40e270['ok'],'detail':_0x40e270['ok']?_0x10d3ae(0x1f7):_0x40e270[_0x10d3ae(0x1c2)]??_0x10d3ae(0x1b7)+_0x40e270['status']};}function execSkillsAdd(_0x2605af,_0x514187){const _0x479e5d=a98_0xa3794d,_0x2bc10a=runNpxSkillsAddGlobal(_0x2605af,_0x479e5d(0x174),{'stdio':_0x479e5d(0x1f6),'yes':_0x514187});return{'step':0x6,'label':_0x479e5d(0x1d2),'ok':_0x2bc10a['ok'],'detail':_0x2bc10a['ok']?_0x479e5d(0x19f):_0x2bc10a[_0x479e5d(0x1c2)]??_0x479e5d(0x1b7)+_0x2bc10a['status']};}function execUpgradeSdk(_0x27dbf4){const _0x46ca48=a98_0xa3794d;if(!_0x27dbf4['sdkUpgrade'])return{'step':0x7,'label':_0x46ca48(0x1cb),'ok':!![],'detail':_0x46ca48(0x1f8)};const {pkgPath:_0x166c28,currentVersion:_0x397e09,field:_0x14b709}=_0x27dbf4['sdkUpgrade'];try{const _0x3a7bd7=readFileSync(_0x166c28,_0x46ca48(0x191)),_0x3434cc=JSON[_0x46ca48(0x1da)](_0x3a7bd7);return _0x3434cc[_0x14b709][_0x46ca48(0x1c9)]=_0x46ca48(0x1b1),writeFileSync(_0x166c28,JSON[_0x46ca48(0x1f2)](_0x3434cc,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':_0x46ca48(0x1cb),'ok':!![],'detail':_0x14b709+_0x46ca48(0x18a)+_0x397e09+_0x46ca48(0x178)};}catch(_0x12f6da){return{'step':0x7,'label':_0x46ca48(0x1cb),'ok':![],'detail':_0x12f6da['message']};}}function tryStat(_0xe8c400){try{return statSync(_0xe8c400);}catch{return undefined;}}function printSummary(_0x2b46f3){const _0x551220=a98_0xa3794d;console['log'](''),console[_0x551220(0x1e6)](a98_0x32e79e[_0x551220(0x1c5)](_0x551220(0x1e0))),console[_0x551220(0x1e6)]('');for(const _0x224ca6 of _0x2b46f3){const _0x1c269c=_0x224ca6['ok']?a98_0x32e79e[_0x551220(0x179)]('OK'):a98_0x32e79e[_0x551220(0x1a4)](_0x551220(0x1bb));console[_0x551220(0x1e6)]('\x20\x20'+_0x1c269c+'\x20\x20Step\x20'+_0x224ca6[_0x551220(0x1ee)]+':\x20'+_0x224ca6['label']);if(_0x224ca6[_0x551220(0x1a5)])console[_0x551220(0x1e6)](_0x551220(0x181)+a98_0x32e79e['gray'](_0x224ca6[_0x551220(0x1a5)]));}console[_0x551220(0x1e6)]('');}export async function upgradeApp(_0x2f3eb9,_0xcbc46f){const _0x1add4e=a98_0xa3794d,_0x17e315=process[_0x1add4e(0x1cd)](),_0x199932=analyse(_0x17e315),_0xcd1221=!_0x199932[_0x1add4e(0x1ab)]&&_0x199932[_0x1add4e(0x196)][_0x1add4e(0x18b)]===0x0&&!_0x199932[_0x1add4e(0x1d0)]&&!_0x199932[_0x1add4e(0x183)]&&!_0x199932[_0x1add4e(0x19b)];if(_0xcd1221){console[_0x1add4e(0x1e6)](a98_0x32e79e[_0x1add4e(0x179)](_0x1add4e(0x1b2)));return;}printReport(_0x199932);const _0x351dd9=!!(_0xcbc46f[_0x1add4e(0x1b9)]||_0xcbc46f['Y']||_0x2f3eb9);if(!_0x351dd9)try{const _0x45286e=await askConfirm(_0x1add4e(0x1e4));if(!_0x45286e){console[_0x1add4e(0x1e6)](a98_0x32e79e[_0x1add4e(0x1bf)](_0x1add4e(0x1ac)));return;}}catch(_0x1a4fb1){if(_0x1a4fb1?.[_0x1add4e(0x1db)]===_0x1add4e(0x1fb)){console[_0x1add4e(0x1e6)](a98_0x32e79e['gray']('Upgrade\x20cancelled.'));return;}throw _0x1a4fb1;}const _0x38ec5c=[],_0x30fdb8=a98_0x46bce8({'text':_0x1add4e(0x1ef),'color':_0x1add4e(0x186)})[_0x1add4e(0x1ba)](),_0x1e12f9=execConfigMigration(_0x199932,_0x17e315);_0x38ec5c[_0x1add4e(0x1f0)](_0x1e12f9),_0x30fdb8[_0x1e12f9['ok']?_0x1add4e(0x1bd):'fail'](_0x1add4e(0x1d3)+(_0x1e12f9[_0x1add4e(0x1a5)]??(_0x1e12f9['ok']?'done':_0x1add4e(0x187))));const _0x489082=resolve(_0x17e315,_0x1add4e(0x1eb)),_0x47b575=a98_0x46bce8({'text':_0x1add4e(0x1de),'color':'cyan'})[_0x1add4e(0x1ba)]();if(existsSync(_0x489082))try{rmSync(_0x489082,{'recursive':!![],'force':!![]}),_0x47b575[_0x1add4e(0x1bd)](_0x1add4e(0x1c1)),_0x38ec5c[_0x1add4e(0x1f0)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![]});}catch(_0x42fe1c){_0x47b575[_0x1add4e(0x184)](_0x1add4e(0x1ca)+_0x42fe1c[_0x1add4e(0x1db)]),_0x38ec5c[_0x1add4e(0x1f0)]({'step':0x2,'label':_0x1add4e(0x18c),'ok':![],'detail':_0x42fe1c[_0x1add4e(0x1db)]});}else _0x47b575[_0x1add4e(0x195)](_0x1add4e(0x193)),_0x38ec5c[_0x1add4e(0x1f0)]({'step':0x2,'label':_0x1add4e(0x18c),'ok':!![],'detail':_0x1add4e(0x175)});const _0x194217=a98_0x46bce8({'text':_0x1add4e(0x1c7),'color':_0x1add4e(0x186)})[_0x1add4e(0x1ba)](),_0x2def54=execRemoveOldArtifacts(_0x199932[_0x1add4e(0x196)]);_0x38ec5c[_0x1add4e(0x1f0)](_0x2def54),_0x194217[_0x2def54['ok']?_0x1add4e(0x1bd):_0x1add4e(0x184)](_0x1add4e(0x17b)+(_0x2def54[_0x1add4e(0x1a5)]??(_0x2def54['ok']?_0x1add4e(0x1d7):_0x1add4e(0x187))));const _0x21a8e6=a98_0x46bce8({'text':_0x1add4e(0x19a),'color':_0x1add4e(0x186)})[_0x1add4e(0x1ba)](),_0x2cb341=execCleanMcp(_0x199932);_0x38ec5c[_0x1add4e(0x1f0)](_0x2cb341),_0x21a8e6[_0x2cb341['ok']?_0x1add4e(0x1bd):_0x1add4e(0x184)](_0x1add4e(0x1d6)+(_0x2cb341[_0x1add4e(0x1a5)]??(_0x2cb341['ok']?_0x1add4e(0x1d7):_0x1add4e(0x187))));const _0x5305fa=a98_0x46bce8({'text':_0x1add4e(0x1b0),'color':_0x1add4e(0x186)})[_0x1add4e(0x1ba)](),_0x300356=execSkillsRemove(_0x17e315,_0x351dd9);_0x38ec5c[_0x1add4e(0x1f0)](_0x300356),_0x5305fa[_0x300356['ok']?'succeed':_0x1add4e(0x184)](_0x1add4e(0x17d)+(_0x300356[_0x1add4e(0x1a5)]??(_0x300356['ok']?_0x1add4e(0x1d7):'failed')));const _0x1df1e8=a98_0x46bce8({'text':_0x1add4e(0x188),'color':_0x1add4e(0x186)})[_0x1add4e(0x1ba)](),_0x1184ff=execSkillsAdd(_0x17e315,_0x351dd9);_0x38ec5c[_0x1add4e(0x1f0)](_0x1184ff),_0x1df1e8[_0x1184ff['ok']?_0x1add4e(0x1bd):_0x1add4e(0x184)](_0x1add4e(0x1d5)+(_0x1184ff[_0x1add4e(0x1a5)]??(_0x1184ff['ok']?_0x1add4e(0x1d7):_0x1add4e(0x187))));const _0x4ae693=a98_0x46bce8({'text':_0x1add4e(0x1c6),'color':_0x1add4e(0x186)})['start'](),_0x4a251b=execUpgradeSdk(_0x199932);_0x38ec5c[_0x1add4e(0x1f0)](_0x4a251b),_0x4ae693[_0x4a251b['ok']?_0x1add4e(0x1bd):_0x1add4e(0x184)](_0x1add4e(0x1a1)+(_0x4a251b[_0x1add4e(0x1a5)]??(_0x4a251b['ok']?_0x1add4e(0x1d7):_0x1add4e(0x187)))),printSummary(_0x38ec5c);const _0x327bb4=_0x38ec5c[_0x1add4e(0x17e)](_0x5d0f25=>!_0x5d0f25['ok']);_0x327bb4?console[_0x1add4e(0x1e6)](a98_0x32e79e['yellow']('Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.')):console[_0x1add4e(0x1e6)](a98_0x32e79e[_0x1add4e(0x179)](_0x1add4e(0x1f5))),_0x4a251b['ok']&&_0x199932[_0x1add4e(0x19b)]&&(console[_0x1add4e(0x1e6)](''),console[_0x1add4e(0x1e6)](a98_0x32e79e[_0x1add4e(0x1c5)][_0x1add4e(0x186)](_0x1add4e(0x1e2))),console['log'](a98_0x32e79e[_0x1add4e(0x186)]('Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:')),console[_0x1add4e(0x1e6)](''),console['log'](a98_0x32e79e['white']('\x20\x20npm\x20install')),console[_0x1add4e(0x1e6)](a98_0x32e79e[_0x1add4e(0x18e)](_0x1add4e(0x17c))),console[_0x1add4e(0x1e6)](a98_0x32e79e[_0x1add4e(0x18e)]('\x20\x20bun\x20install')),console[_0x1add4e(0x1e6)](''));}
|
package/lib/commands/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a99_0x3461dc=a99_0x5c86;(function(_0x2d0de4,_0xf2abb5){const _0x182fd6=a99_0x5c86,_0x513319=_0x2d0de4();while(!![]){try{const _0x4477ba=parseInt(_0x182fd6(0xc5))/0x1+-parseInt(_0x182fd6(0xcb))/0x2+-parseInt(_0x182fd6(0xd1))/0x3+parseInt(_0x182fd6(0xdc))/0x4+-parseInt(_0x182fd6(0xef))/0x5*(parseInt(_0x182fd6(0xc8))/0x6)+parseInt(_0x182fd6(0xdb))/0x7+parseInt(_0x182fd6(0xc4))/0x8;if(_0x4477ba===_0xf2abb5)break;else _0x513319['push'](_0x513319['shift']());}catch(_0x478335){_0x513319['push'](_0x513319['shift']());}}}(a99_0x1311,0xb6de9));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{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{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{skillDefinitions}from'../commands/skill/index.js';import{projectDefinitions}from'../commands/project/index.js';import{initDefinitions}from'../commands/init/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];function a99_0x1311(){const _0x434373=['<script>','map','logout','create','Logs','API','push','Skills','8933141dxpCme','5821368uoOPdj','Code\x20Generation','install','preview','login','run','Menu','Database\x20Connections','defaultCommand','Pages','project','values','from','wildcardDef','Schema','Self\x20Update','\x20\x20[high-risk-write]','SQL\x20Queries','Configuration','50345TfSPZT','has','show','set','service','4712432TDRuRq','515869gqcGRl','get','read','426goQkjr','Run\x20any\x20package.json\x20script','isSingleCommand','1974314UDBkso','BFF\x20Scripts','build','Authentication','start','command','4156017PBtaek','Diagnostics'];a99_0x1311=function(){return _0x434373;};return a99_0x1311();}function a99_0x5c86(_0x1f4cd7,_0x2eb83b){_0x1f4cd7=_0x1f4cd7-0xc0;const _0x1311ea=a99_0x1311();let _0x5c866e=_0x1311ea[_0x1f4cd7];return _0x5c866e;}const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x3be002){const _0x5e0dca=a99_0x5c86;for(const _0x4d9133 of _0x3be002){definitions[_0x5e0dca(0xc2)](_0x4d9133[_0x5e0dca(0xc3)]+':'+_0x4d9133[_0x5e0dca(0xd0)],_0x4d9133);let _0x5417bc=serviceGroups[_0x5e0dca(0xc6)](_0x4d9133[_0x5e0dca(0xc3)]);!_0x5417bc&&(_0x5417bc=[],serviceGroups[_0x5e0dca(0xc2)](_0x4d9133[_0x5e0dca(0xc3)],_0x5417bc)),_0x5417bc[_0x5e0dca(0xd9)](_0x4d9133);}}function registerDeclarativeService(_0x2a8668,_0x443607,_0xddefd8){const _0x1421c4=a99_0x5c86;registerDefinitions(_0x443607);_0xddefd8?.[_0x1421c4(0xe9)]&®isterDefinitions([_0xddefd8[_0x1421c4(0xe9)]]);const _0x5c6f8d=_0x563c49=>_0x563c49===_0x1421c4(0xc7)?'':_0x563c49==='write'?'\x20\x20[write]':_0x1421c4(0xec),_0x53b3c6={'service':_0x443607[0x0]['service'],'label':_0x2a8668,'commands':_0x443607[_0x1421c4(0xd4)](_0x57d7ad=>({'command':_0x57d7ad['command'],'description':_0x57d7ad['description'],'tag':_0x5c6f8d(_0x57d7ad['risk'])})),'declarative':!![],'defaultCommand':_0xddefd8?.[_0x1421c4(0xe4)]??(_0xddefd8?.['isSingleCommand']?_0x443607[0x0]['command']:undefined),'wildcardDef':_0xddefd8?.[_0x1421c4(0xe9)],'isSingleCommand':_0xddefd8?.[_0x1421c4(0xca)]};serviceRegistry[_0x1421c4(0xd9)](_0x53b3c6),serviceByName[_0x1421c4(0xc2)](_0x53b3c6[_0x1421c4(0xc3)],_0x53b3c6);}registerDeclarativeService('Quick\x20Start',initDefinitions,{'defaultCommand':a99_0x3461dc(0xe1),'isSingleCommand':!![]}),registerDeclarativeService('Project',projectDefinitions),registerDeclarativeService('App\x20Management',appDefinitions),registerDeclarativeService('Run\x20Scripts',[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry['length']-0x1];last['commands']=[{'command':a99_0x3461dc(0xd3),'description':a99_0x3461dc(0xc9),'tag':''}];}registerDeclarativeService(a99_0x3461dc(0xce),authDefinitions,{'defaultCommand':a99_0x3461dc(0xe0)}),registerDeclarativeService(a99_0x3461dc(0xeb),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a99_0x3461dc(0xd2),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a99_0x3461dc(0xea),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a99_0x3461dc(0xee),configDefinitions),registerDeclarativeService(a99_0x3461dc(0xd8),apiDefinitions),registerDeclarativeService(a99_0x3461dc(0xe2),menuDefinitions),registerDeclarativeService(a99_0x3461dc(0xe3),dbDefinitions),registerDeclarativeService('Dataset\x20&\x20Operations',datasetDefinitions),registerDeclarativeService(a99_0x3461dc(0xe5),pageDefinitions),registerDeclarativeService(a99_0x3461dc(0xcc),bffDefinitions),registerDeclarativeService(a99_0x3461dc(0xed),sqlDefinitions),registerDeclarativeService(a99_0x3461dc(0xdd),codegenDefinitions),registerDeclarativeService(a99_0x3461dc(0xda),skillDefinitions),registerDeclarativeService(a99_0x3461dc(0xd7),logsDefinitions,{'defaultCommand':a99_0x3461dc(0xc1)});export const deprecatedAliases={'create':{'service':a99_0x3461dc(0xe6),'command':'create'},'start':{'service':a99_0x3461dc(0xe1),'command':a99_0x3461dc(0xcf)},'build':{'service':a99_0x3461dc(0xe1),'command':a99_0x3461dc(0xcd)},'preview':{'service':'run','command':a99_0x3461dc(0xdf)},'logout':{'service':'auth','command':a99_0x3461dc(0xd5)},'skills':{'service':'skill','command':a99_0x3461dc(0xde)}};export const deprecatedSubcommands={'bff':{'new':a99_0x3461dc(0xd6)},'sql':{'new':a99_0x3461dc(0xd6)}};export function resolveDeprecatedSubcommand(_0x5c5394,_0x36068e){return deprecatedSubcommands[_0x5c5394]?.[_0x36068e];}export function findDefinition(_0x3c80e0,_0x5c3aec){const _0x39318b=a99_0x3461dc;return definitions[_0x39318b(0xc6)](_0x3c80e0+':'+_0x5c3aec);}export function isKnownService(_0x326ed8){const _0x178492=a99_0x3461dc;return serviceByName[_0x178492(0xc0)](_0x326ed8);}export function isDeclarativeService(_0x361a59){const _0x4e4ccc=a99_0x3461dc;return serviceGroups[_0x4e4ccc(0xc0)](_0x361a59)||serviceByName[_0x4e4ccc(0xc6)](_0x361a59)?.[_0x4e4ccc(0xe9)]!==undefined;}export function getServiceEntry(_0x476688){const _0x3ec3d9=a99_0x3461dc;return serviceByName[_0x3ec3d9(0xc6)](_0x476688);}export function getLegacyHandler(_0x496fdd,_0x11c9d5){return undefined;}export function getAllDefinitions(){const _0x2c0b34=a99_0x3461dc;return Array[_0x2c0b34(0xe8)](definitions[_0x2c0b34(0xe7)]());}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a100_0x95a29c=a100_0x4d4b;(function(_0x4e430d,_0x11a05a){const _0xfef4b5=a100_0x4d4b,_0x321585=_0x4e430d();while(!![]){try{const _0x30f5f3=parseInt(_0xfef4b5(0x1ca))/0x1+-parseInt(_0xfef4b5(0x1b4))/0x2*(parseInt(_0xfef4b5(0x1b9))/0x3)+parseInt(_0xfef4b5(0x1cb))/0x4*(-parseInt(_0xfef4b5(0x1c7))/0x5)+-parseInt(_0xfef4b5(0x1e2))/0x6*(parseInt(_0xfef4b5(0x1bb))/0x7)+parseInt(_0xfef4b5(0x1d5))/0x8*(-parseInt(_0xfef4b5(0x1cd))/0x9)+-parseInt(_0xfef4b5(0x1ce))/0xa+parseInt(_0xfef4b5(0x1b0))/0xb;if(_0x30f5f3===_0x11a05a)break;else _0x321585['push'](_0x321585['shift']());}catch(_0x598e05){_0x321585['push'](_0x321585['shift']());}}}(a100_0x2431,0xa8dbc));import{readFileSync,existsSync}from'node:fs';import{CLI_BIN_NAME}from'../../constant/cli.js';import{resolve,delimiter,join}from'node:path';import{spawn}from'node:child_process';import{CliErrors}from'../../errors.js';import{checkSdkVersion,printSdkUpgradeWarning}from'../../utils/check-sdk-version.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../utils/cli-version-check.js';const VERSION_CHECK_SCRIPTS=new Set(['start',a100_0x95a29c(0x1dc)]);function readPackageScripts(_0x2a8fbb){const _0x551ade=a100_0x95a29c,_0xb9e2a=resolve(_0x2a8fbb,_0x551ade(0x1da));if(!existsSync(_0xb9e2a))return null;try{const _0x5bebc1=JSON[_0x551ade(0x1d3)](readFileSync(_0xb9e2a,_0x551ade(0x1a1)));return _0x5bebc1['scripts']??{};}catch{return null;}}function a100_0x4d4b(_0x205c7c,_0x462c8d){_0x205c7c=_0x205c7c-0x1a1;const _0x2431af=a100_0x2431();let _0x4d4b50=_0x2431af[_0x205c7c];return _0x4d4b50;}function detectPackageManager(_0x281610){const _0x38f30b=a100_0x95a29c;if(existsSync(resolve(_0x281610,_0x38f30b(0x1c2)))||existsSync(resolve(_0x281610,_0x38f30b(0x1c1))))return _0x38f30b(0x1dd);if(existsSync(resolve(_0x281610,_0x38f30b(0x1b7))))return _0x38f30b(0x1a9);if(existsSync(resolve(_0x281610,'yarn.lock')))return'yarn';return _0x38f30b(0x1a6);}async function versionCheck(_0x5a839e){const _0x5a021a=a100_0x95a29c,_0x292e4f=await checkCliVersion();(_0x292e4f[_0x5a021a(0x1c9)]||_0x292e4f[_0x5a021a(0x1d2)])&&(printCliUpgradeWarning(_0x292e4f),assertCliVersionSupported(_0x292e4f));const _0x8137de=await checkSdkVersion(_0x5a839e);if(_0x8137de['needsUpgrade'])printSdkUpgradeWarning(_0x8137de);}function spawnScript(_0x3ba4cd,_0x869909,_0x1d4686,_0x1af386){return new Promise((_0x37beb5,_0x5c62fd)=>{const _0x177295=a100_0x4d4b,_0x3f077a=[_0x177295(0x1a5),_0x869909,..._0x1d4686],_0x559b72=spawn(_0x3ba4cd,_0x3f077a,{'cwd':_0x1af386,'stdio':_0x177295(0x1c5),'shell':!![],'env':{...process.env,'PATH':''+join(_0x1af386,_0x177295(0x1d9),_0x177295(0x1b8))+delimiter+process.env.PATH}});_0x559b72['on'](_0x177295(0x1df),_0x3782d1=>{const _0x98ccb9=_0x177295;if(_0x3782d1===0x0||_0x3782d1===null)_0x37beb5();else _0x5c62fd(new Error(_0x3ba4cd+_0x98ccb9(0x1ab)+_0x869909+'\x20exited\x20with\x20code\x20'+_0x3782d1));}),_0x559b72['on'](_0x177295(0x1c8),_0x5c62fd);});}function spawnViteBuildWatch(_0xb4c406){return new Promise((_0x25dac2,_0x9c022c)=>{const _0x3e0087=a100_0x4d4b,_0x30e05a=spawn('vite',[_0x3e0087(0x1c4),_0x3e0087(0x1b3)],{'cwd':_0xb4c406,'stdio':_0x3e0087(0x1c5),'shell':!![],'env':{...process.env,'PATH':''+join(_0xb4c406,_0x3e0087(0x1d9),'.bin')+delimiter+process.env.PATH}});_0x30e05a['on'](_0x3e0087(0x1df),_0x5282f9=>{if(_0x5282f9===0x0||_0x5282f9===null)_0x25dac2();else _0x9c022c(new Error('vite\x20build\x20--watch\x20exited\x20with\x20code\x20'+_0x5282f9));}),_0x30e05a['on'](_0x3e0087(0x1c8),_0x9c022c);});}function a100_0x2431(){const _0x152aae=['112550YUCQLF','preview','join','pnpm-lock.yaml','.bin','24IOoXdo','Script\x20\x22','24626vvmLVM','length','\x20run\x20build','map','validation','Available:\x20','bun.lock','bun.lockb','boolean','build','inherit','\x0a\x20\x20Usage:\x20','42495MBkiIH','error','needsUpgrade','866596qAMkNG','576SgqkHA','\x22\x20not\x20found\x20in\x20package.json.','9mAXNTr','13010230mFStRX','watch','push','slice','belowMinimum','parse','has','4300248LMSpRS','Enable\x20watch\x20mode\x20for\x20preview','entries','No\x20package.json\x20found\x20in\x20current\x20directory.','node_modules','package.json','vite','dev','bun','script','close','\x20\x20\x20\x20','\x0a\x20\x20Available\x20scripts:\x0a','1662jKMAVg','read','log','utf-8','Script\x20name\x20defined\x20in\x20package.json','\x20run\x20<script>\x0a','args','run','npm','cwd','bool','pnpm','vite\x20preview\x20exited\x20with\x20code\x20','\x20run\x20','keys','\x20\x20AVAILABLE\x20SCRIPTS\x20\x20(current\x20project)','max','\x20run\x20preview\x20--watch\x20\x20\x20#\x20parallel\x20build\x20--watch\x20+\x20preview','47433584BKatCA','padEnd','No\x20scripts\x20defined\x20in\x20package.json.','--watch'];a100_0x2431=function(){return _0x152aae;};return a100_0x2431();}function spawnVitePreview(_0x44629f){return new Promise((_0x481b28,_0x399936)=>{const _0x52d5b8=a100_0x4d4b,_0x274213=spawn(_0x52d5b8(0x1db),[_0x52d5b8(0x1b5)],{'cwd':_0x44629f,'stdio':_0x52d5b8(0x1c5),'shell':!![],'env':{...process.env,'PATH':''+join(_0x44629f,_0x52d5b8(0x1d9),_0x52d5b8(0x1b8))+delimiter+process.env.PATH}});_0x274213['on'](_0x52d5b8(0x1df),_0x32d575=>{const _0x2d8ae6=_0x52d5b8;if(_0x32d575===0x0||_0x32d575===null)_0x481b28();else _0x399936(new Error(_0x2d8ae6(0x1aa)+_0x32d575));}),_0x274213['on'](_0x52d5b8(0x1c8),_0x399936);});}const runFlags=[{'name':a100_0x95a29c(0x1cf),'type':a100_0x95a29c(0x1c3),'description':a100_0x95a29c(0x1d6),'default':![]}];export const runDefinition={'service':'run','command':'run','description':'Run\x20a\x20package.json\x20script','risk':a100_0x95a29c(0x1e3),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a100_0x95a29c(0x1de),'description':a100_0x95a29c(0x1a2),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x22af47=a100_0x95a29c,_0x442a75=readPackageScripts(process[_0x22af47(0x1a7)]()),_0x54203d=[];if(_0x442a75&&Object[_0x22af47(0x1ac)](_0x442a75)[_0x22af47(0x1bc)]>0x0){const _0x373e3b=Object[_0x22af47(0x1ac)](_0x442a75),_0x1f7243=Math[_0x22af47(0x1ae)](..._0x373e3b[_0x22af47(0x1be)](_0x324192=>_0x324192[_0x22af47(0x1bc)]));_0x54203d[_0x22af47(0x1d0)](_0x22af47(0x1ad));for(const [_0x17c7d5,_0x201c6b]of Object[_0x22af47(0x1d7)](_0x442a75)){_0x54203d[_0x22af47(0x1d0)](_0x22af47(0x1e0)+CLI_BIN_NAME+'\x20run\x20'+_0x17c7d5[_0x22af47(0x1b1)](_0x1f7243+0x2)+'#\x20'+_0x201c6b);}}else _0x54203d[_0x22af47(0x1d0)]('\x20\x20EXAMPLES'),_0x54203d[_0x22af47(0x1d0)](_0x22af47(0x1e0)+CLI_BIN_NAME+'\x20run\x20start'),_0x54203d[_0x22af47(0x1d0)](_0x22af47(0x1e0)+CLI_BIN_NAME+_0x22af47(0x1bd)),_0x54203d[_0x22af47(0x1d0)](_0x22af47(0x1e0)+CLI_BIN_NAME+'\x20run\x20preview'),_0x54203d[_0x22af47(0x1d0)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x22af47(0x1af));return _0x54203d[_0x22af47(0x1b6)]('\x0a');},async 'execute'(_0xf16312){const _0x5494c7=a100_0x95a29c,_0x22b9fc=process[_0x5494c7(0x1a7)](),_0x5023c2=_0xf16312['args'][0x0],_0x56097d=_0xf16312[_0x5494c7(0x1a4)][_0x5494c7(0x1d1)](0x1),_0x133fb1=readPackageScripts(_0x22b9fc);if(!_0x133fb1)throw CliErrors[_0x5494c7(0x1bf)](_0x5494c7(0x1d8));if(!_0x5023c2){const _0x4493d0=Object[_0x5494c7(0x1ac)](_0x133fb1);if(_0x4493d0['length']===0x0)console[_0x5494c7(0x1e4)](_0x5494c7(0x1b2));else{console[_0x5494c7(0x1e4)](_0x5494c7(0x1e1));const _0x7fa5b9=Math[_0x5494c7(0x1ae)](..._0x4493d0[_0x5494c7(0x1be)](_0x356c2b=>_0x356c2b[_0x5494c7(0x1bc)]));for(const [_0x2d9c26,_0x327efe]of Object['entries'](_0x133fb1)){console[_0x5494c7(0x1e4)](_0x5494c7(0x1e0)+_0x2d9c26[_0x5494c7(0x1b1)](_0x7fa5b9+0x2)+_0x327efe);}console[_0x5494c7(0x1e4)](_0x5494c7(0x1c6)+CLI_BIN_NAME+_0x5494c7(0x1a3));}return{'ok':!![]};}if(!_0x133fb1[_0x5023c2])throw CliErrors[_0x5494c7(0x1bf)](_0x5494c7(0x1ba)+_0x5023c2+_0x5494c7(0x1cc),_0x5494c7(0x1c0)+(Object[_0x5494c7(0x1ac)](_0x133fb1)[_0x5494c7(0x1b6)](',\x20')||'(none)'));const _0x2265cb=detectPackageManager(_0x22b9fc);VERSION_CHECK_SCRIPTS[_0x5494c7(0x1d4)](_0x5023c2)&&await versionCheck(_0x22b9fc);if(_0x5023c2===_0x5494c7(0x1b5)&&_0xf16312[_0x5494c7(0x1a8)](_0x5494c7(0x1cf)))return await Promise['all']([spawnViteBuildWatch(_0x22b9fc),spawnVitePreview(_0x22b9fc)]),{'ok':!![]};return await spawnScript(_0x2265cb,_0x5023c2,_0x56097d,_0x22b9fc),{'ok':!![]};}};
|
package/lib/commands/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a101_0x2bc46a=a101_0x1593;(function(_0x412f1e,_0x6b3d0d){const _0x249403=a101_0x1593,_0x7605f5=_0x412f1e();while(!![]){try{const _0x2d90cc=parseInt(_0x249403(0x17e))/0x1*(parseInt(_0x249403(0x179))/0x2)+parseInt(_0x249403(0x186))/0x3*(parseInt(_0x249403(0x183))/0x4)+parseInt(_0x249403(0x180))/0x5+-parseInt(_0x249403(0x17c))/0x6+-parseInt(_0x249403(0x185))/0x7+parseInt(_0x249403(0x182))/0x8+-parseInt(_0x249403(0x17d))/0x9;if(_0x2d90cc===_0x6b3d0d)break;else _0x7605f5['push'](_0x7605f5['shift']());}catch(_0xa24591){_0x7605f5['push'](_0x7605f5['shift']());}}}(a101_0x5a32,0x32150));import{buildSchemaPayload}from'../framework/schema-export.js';async function execute(_0x1fa681){const _0x49462d=await buildSchemaPayload();return{'ok':!![],'data':_0x49462d};}export const schemaDefinition={'service':a101_0x2bc46a(0x181),'command':a101_0x2bc46a(0x17f),'description':a101_0x2bc46a(0x17a),'risk':a101_0x2bc46a(0x184),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a101_0x2bc46a(0x17b),'flags':[],'execute':execute};function a101_0x1593(_0x3851db,_0xd7976e){_0x3851db=_0x3851db-0x179;const _0x5a3255=a101_0x5a32();let _0x159372=_0x5a3255[_0x3851db];return _0x159372;}function a101_0x5a32(){const _0x4f4af9=['export','1304725wCueXj','schema','1231016ocXfCL','4uCPQre','read','2736398ORBjuW','613986VYdiwn','2FiDuYg','Export\x20machine-readable\x20command\x20schema\x20(JSON)','json','1025544CVyPHy','1136547KkNniL','273773UKfRXr'];a101_0x5a32=function(){return _0x4f4af9;};return a101_0x5a32();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a102_0x5ca4d=a102_0x22cc;(function(_0x48f261,_0x170ed6){const _0x479a04=a102_0x22cc,_0x4d7ea1=_0x48f261();while(!![]){try{const _0x3b1ba1=parseInt(_0x479a04(0x127))/0x1+parseInt(_0x479a04(0x122))/0x2+-parseInt(_0x479a04(0x128))/0x3*(-parseInt(_0x479a04(0x124))/0x4)+parseInt(_0x479a04(0x12c))/0x5+-parseInt(_0x479a04(0x121))/0x6*(-parseInt(_0x479a04(0x12b))/0x7)+-parseInt(_0x479a04(0x11f))/0x8*(parseInt(_0x479a04(0x120))/0x9)+-parseInt(_0x479a04(0x123))/0xa*(parseInt(_0x479a04(0x12f))/0xb);if(_0x3b1ba1===_0x170ed6)break;else _0x4d7ea1['push'](_0x4d7ea1['shift']());}catch(_0x8ebdc5){_0x4d7ea1['push'](_0x4d7ea1['shift']());}}}(a102_0x397a,0xad759));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a102_0x22cc(_0x471712,_0x5648ca){_0x471712=_0x471712-0x118;const _0x397aa1=a102_0x397a();let _0x22cc8e=_0x397aa1[_0x471712];return _0x22cc8e;}import{logger}from'../../utils/logger.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE}from'../../skills/npx-skills-add.js';function a102_0x397a(){const _0x29f1c1=['11QDfjsO','info','cwd','write',')...','log','lovrabet/rabetbase','error','16GQlACc','2075949SZaoPP','1542qvvvWy','736486SaukyZ','21278800bZYnuR','2515740omLTdy','pipe','skipped','1219651yklcMQ','3LchNnx','执行安装技能包命令(委托给\x20npx\x20skills\x20add\x20-g\x20-y)','Install\x20developer\x20skill\x20package','7819MEVPbG','3978965UXMHex','unknown','Installing\x20official\x20skill\x20via\x20npx\x20('];a102_0x397a=function(){return _0x29f1c1;};return a102_0x397a();}export const skillDefinitions=[{'service':'skill','command':'install','description':a102_0x5ca4d(0x12a),'risk':a102_0x5ca4d(0x11a),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0xe9d2f1){const _0xfa1c61=a102_0x5ca4d;logger['setLogPath'](process['cwd']()),logger[_0xfa1c61(0x118)]('skill-install',_0xfa1c61(0x129));const {runNpxSkillsAddGlobal:_0x43ca85}=await import('../../skills/npx-skills-add.js'),_0x157738=_0xe9d2f1['nonInteractive']?_0xfa1c61(0x125):'inherit';console[_0xfa1c61(0x11c)](_0xfa1c61(0x12e)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+_0xfa1c61(0x11b));const _0xeb57f4=_0x43ca85(process[_0xfa1c61(0x119)](),_0xfa1c61(0x11d),{'stdio':_0x157738});if(_0xeb57f4[_0xfa1c61(0x126)])console[_0xfa1c61(0x11c)]('Skipped\x20npx\x20(RABETBASE_SKIP_NPX_SKILLS=1);\x20assuming\x20skill\x20is\x20already\x20present.');else{if(_0xeb57f4['ok'])console[_0xfa1c61(0x11c)](CLI_BIN_NAME+'\x20skill\x20installed');else throw CliErrors['apiError']('npx\x20skills\x20add\x20failed:\x20'+(_0xeb57f4[_0xfa1c61(0x11e)]||_0xfa1c61(0x12d)),'Check\x20network\x20connectivity\x20and\x20try\x20again.');}return{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a103_0x52500a=a103_0x2cbc;(function(_0x19a066,_0x346001){const _0x2bbb6d=a103_0x2cbc,_0x3c8506=_0x19a066();while(!![]){try{const _0x5e701f=-parseInt(_0x2bbb6d(0x17b))/0x1+parseInt(_0x2bbb6d(0x14d))/0x2+-parseInt(_0x2bbb6d(0x16d))/0x3+-parseInt(_0x2bbb6d(0x149))/0x4+-parseInt(_0x2bbb6d(0x165))/0x5*(parseInt(_0x2bbb6d(0x168))/0x6)+-parseInt(_0x2bbb6d(0x144))/0x7*(-parseInt(_0x2bbb6d(0x15f))/0x8)+parseInt(_0x2bbb6d(0x139))/0x9;if(_0x5e701f===_0x346001)break;else _0x3c8506['push'](_0x3c8506['shift']());}catch(_0x55a955){_0x3c8506['push'](_0x3c8506['shift']());}}}(a103_0x9ac2,0xd9a23));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';function a103_0x2cbc(_0x42d01c,_0x2868f7){_0x42d01c=_0x42d01c-0x139;const _0x9ac28d=a103_0x9ac2();let _0x2cbcd8=_0x9ac28d[_0x42d01c];return _0x2cbcd8;}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(_0x249c91){const _0x45f405=a103_0x2cbc;if(_0x249c91===_0x45f405(0x141))return['<select\x20id=\x22query\x22\x20resultType=\x22map\x22>',_0x45f405(0x158),'</select>',''][_0x45f405(0x169)]('\x0a');return[_0x45f405(0x17a),''][_0x45f405(0x169)]('\x0a');}export const sqlCreate={'service':a103_0x52500a(0x171),'command':a103_0x52500a(0x148),'description':a103_0x52500a(0x15b),'risk':a103_0x52500a(0x167),'flags':[{'name':a103_0x52500a(0x153),'type':a103_0x52500a(0x170),'description':a103_0x52500a(0x140)},{'name':a103_0x52500a(0x174),'type':a103_0x52500a(0x16c),'description':a103_0x52500a(0x15e)},{'name':'mode','type':a103_0x52500a(0x170),'enum':[a103_0x52500a(0x171),a103_0x52500a(0x141)],'description':'Local\x20SQL\x20file\x20mode'}],async 'validate'(_0x2ba1c2){const _0x1336ea=a103_0x52500a;if(!_0x2ba1c2[_0x1336ea(0x14f)])return;if(!_0x2ba1c2[_0x1336ea(0x151)](_0x1336ea(0x153))[_0x1336ea(0x176)]())throw CliErrors['flagMissing']('name','--name\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x27684b=resolveProvidedDbId(_0x2ba1c2);if(typeof _0x27684b!==_0x1336ea(0x16c)||!Number['isFinite'](_0x27684b)||_0x27684b<=0x0)throw CliErrors[_0x1336ea(0x13b)]('db-id',_0x1336ea(0x160));if(!_0x2ba1c2[_0x1336ea(0x151)]('mode')['trim']())throw CliErrors[_0x1336ea(0x13b)](_0x1336ea(0x159),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');},async 'dryRun'(_0x14d521){const _0x15137b=a103_0x52500a,_0x15ee0e=loadSqlProjectConfig(_0x14d521['appCode']),{sqlName:_0x360ad1,dbId:_0x29cb5c,dbName:_0x4b419d,mode:_0x39fe85}=await resolveSqlNewInputs(_0x14d521),_0x668172=buildSqlRelativePath(_0x15137b(0x13d),_0x360ad1,_0x4b419d,_0x39fe85,_0x29cb5c),_0x2cfe3f=_0x15ee0e[_0x15137b(0x142)]+'/'+_0x668172;return{'method':_0x15137b(0x156),'url':'/smartapi/custom/saveUserCustomSql','body':{'appCode':_0x14d521[_0x15137b(0x13e)],'sqlName':_0x360ad1,'dbId':_0x29cb5c,'mode':_0x39fe85,'localPath':_0x2cfe3f},'description':'Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20'+_0x15ee0e[_0x15137b(0x142)]};},async 'execute'(_0x19e7d5){const _0x4d7ae3=a103_0x52500a,_0x3bd8fe=loadSqlProjectConfig(_0x19e7d5[_0x4d7ae3(0x13e)]),{sqlName:_0x5a75ad,dbId:_0x4ad1ea,dbName:_0x3b3de6,mode:_0x1971ce}=await resolveSqlNewInputs(_0x19e7d5),_0x2470ae=generateSqlTemplate(_0x1971ce),_0x3a5bd8=await createSqlQuery({'appCode':_0x19e7d5[_0x4d7ae3(0x13e)],'sqlName':_0x5a75ad,'dbId':_0x4ad1ea,'sqlContent':_0x2470ae}),_0x2f76f2=ensureRemoteSqlContent(_0x3a5bd8),_0x4bad0c=_0x3b3de6||await getDbName(_0x19e7d5[_0x4d7ae3(0x13e)],_0x4ad1ea)[_0x4d7ae3(0x16a)](()=>undefined),_0x1b6218=buildSqlRelativePath(_0x3a5bd8[_0x4d7ae3(0x152)],_0x3a5bd8['sqlName'],_0x4bad0c,_0x1971ce,_0x4ad1ea),_0x285c95=_0x3bd8fe[_0x4d7ae3(0x142)]+'/'+_0x1b6218,_0x139c1b=buildLocalSqlFileContent({'sqlCode':_0x3a5bd8[_0x4d7ae3(0x152)],'sqlName':_0x3a5bd8[_0x4d7ae3(0x13c)],'dbId':_0x3a5bd8['dbId']},_0x2f76f2,{'dbName':_0x4bad0c,'mode':_0x1971ce,'syncedAt':new Date()['toISOString'](),'description':_0x3a5bd8[_0x4d7ae3(0x16b)]});if(await fileExists(_0x285c95))throw CliErrors[_0x4d7ae3(0x161)](_0x4d7ae3(0x166)+_0x285c95);await ensureParentDirectory(_0x285c95),await writeFile(_0x285c95,_0x139c1b,'utf8');const _0x2fd0db=await readSqlLockFile(_0x3bd8fe[_0x4d7ae3(0x150)]),{lockData:_0x59ac5c,appLock:_0x439d4a}=ensureSqlLockScope(_0x2fd0db??createEmptySqlLock(),_0x3bd8fe[_0x4d7ae3(0x13e)],_0x3bd8fe[_0x4d7ae3(0x173)],'new');return _0x439d4a[_0x4d7ae3(0x146)][_0x3a5bd8[_0x4d7ae3(0x152)]]={...buildSqlLockEntry(_0x3a5bd8,_0x2f76f2,computeSqlContentHash(_0x139c1b),{'dbName':_0x4bad0c}),'path':_0x1b6218,'mode':_0x1971ce},_0x439d4a[_0x4d7ae3(0x163)]=new Date()[_0x4d7ae3(0x157)](),await writeSqlLockFile(_0x3bd8fe[_0x4d7ae3(0x150)],_0x59ac5c),{'ok':!![],'data':{'id':_0x3a5bd8['id'],'sqlCode':_0x3a5bd8[_0x4d7ae3(0x152)],'sqlName':_0x3a5bd8[_0x4d7ae3(0x13c)],'dbId':_0x3a5bd8[_0x4d7ae3(0x177)],'path':_0x285c95,'mode':_0x1971ce},'message':_0x4d7ae3(0x14a)+_0x3a5bd8[_0x4d7ae3(0x152)]};}};async function resolveSqlNewInputs(_0x491559){const _0x46a0fa=await resolveSqlNameInput(_0x491559),{dbId:_0xd56388,dbName:_0x178d00}=await resolveDbSelection(_0x491559),_0x50f4b1=await resolveSqlModeInput(_0x491559);return{'sqlName':_0x46a0fa,'dbId':_0xd56388,'dbName':_0x178d00,'mode':_0x50f4b1};}async function resolveSqlNameInput(_0x4ddd6d){const _0x4b0b87=a103_0x52500a,_0x5b1788=_0x4ddd6d[_0x4b0b87(0x151)](_0x4b0b87(0x153))[_0x4b0b87(0x176)]();if(_0x5b1788)return _0x5b1788;if(_0x4ddd6d['nonInteractive'])throw CliErrors[_0x4b0b87(0x13b)](_0x4b0b87(0x153),_0x4b0b87(0x14c));return(await input({'message':_0x4b0b87(0x147),'validate':_0x505627=>_0x505627[_0x4b0b87(0x176)]()?!![]:_0x4b0b87(0x13a)}))[_0x4b0b87(0x176)]();}async function resolveDbSelection(_0x17314c){const _0x28f07e=a103_0x52500a,_0x2dd848=resolveProvidedDbId(_0x17314c);if(typeof _0x2dd848===_0x28f07e(0x16c)&&Number[_0x28f07e(0x154)](_0x2dd848)&&_0x2dd848>0x0)return{'dbId':_0x2dd848,'dbName':await getDbName(_0x17314c[_0x28f07e(0x13e)],_0x2dd848)['catch'](()=>undefined)};if(_0x17314c['nonInteractive'])throw CliErrors[_0x28f07e(0x13b)](_0x28f07e(0x174),_0x28f07e(0x160));const _0xebecef=await listDatabases(_0x17314c[_0x28f07e(0x13e)])['catch'](()=>[]);if(_0xebecef['length']===0x1)return{'dbId':_0xebecef[0x0][_0x28f07e(0x177)],'dbName':_0xebecef[0x0][_0x28f07e(0x175)]};if(_0xebecef[_0x28f07e(0x172)]>0x1){const _0x599ef6=await select({'message':_0x28f07e(0x155),'choices':[..._0xebecef[_0x28f07e(0x17c)](_0x5cb82c=>({'name':_0x5cb82c[_0x28f07e(0x175)]+'\x20('+_0x5cb82c[_0x28f07e(0x177)]+')','value':serializeDbSelection(_0x5cb82c)})),{'name':_0x28f07e(0x179),'value':_0x28f07e(0x164)}]});if(_0x599ef6!==_0x28f07e(0x164))return deserializeDbSelection(_0x599ef6);}const _0x50dee1=await input({'message':_0x28f07e(0x15d),'validate':_0x3743e9=>{const _0x2fa13b=_0x28f07e,_0x2f2233=_0x3743e9[_0x2fa13b(0x176)]();if(!_0x2f2233)return _0x2fa13b(0x14e);const _0x6e6c1c=Number(_0x2f2233);if(!Number[_0x2fa13b(0x16f)](_0x6e6c1c)||_0x6e6c1c<=0x0)return _0x2fa13b(0x14b);return!![];}});return{'dbId':Number(_0x50dee1[_0x28f07e(0x176)]())};}async function resolveSqlModeInput(_0x19002b){const _0x522711=a103_0x52500a,_0x26cf98=_0x19002b[_0x522711(0x151)](_0x522711(0x159))['trim']();if(_0x26cf98===_0x522711(0x171)||_0x26cf98===_0x522711(0x141))return _0x26cf98;if(_0x19002b[_0x522711(0x14f)])throw CliErrors[_0x522711(0x13b)](_0x522711(0x159),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');return await select({'message':_0x522711(0x178),'choices':[{'name':_0x522711(0x143),'value':'sql','description':_0x522711(0x162)},{'name':_0x522711(0x13f),'value':_0x522711(0x141),'description':_0x522711(0x16e)}]});}function serializeDbSelection(_0x409ae0){const _0x3a2961=a103_0x52500a;return JSON[_0x3a2961(0x15c)]({'dbId':_0x409ae0[_0x3a2961(0x177)],'dbName':_0x409ae0[_0x3a2961(0x175)]});}function deserializeDbSelection(_0x172816){const _0x26882f=a103_0x52500a;try{const _0x367896=JSON[_0x26882f(0x15a)](_0x172816);if(typeof _0x367896[_0x26882f(0x177)]===_0x26882f(0x16c)&&Number['isFinite'](_0x367896['dbId']))return{'dbId':_0x367896['dbId'],'dbName':_0x367896[_0x26882f(0x175)]};}catch{}throw CliErrors[_0x26882f(0x161)](_0x26882f(0x145)+_0x172816);}function a103_0x9ac2(){const _0x377f47=['high-risk-write','8328954sAIiFf','join','catch','description','number','4853775afbvtQ','适合带动态标签的\x20MyBatis\x20XML\x20SQL','isInteger','string','sql','length','sqlRoot','db-id','dbName','trim','dbId','请选择本地\x20SQL\x20模式:','✎\x20手动输入\x20dbId','SELECT\x201\x20AS\x20id;','559633aAOVpx','map','15083991dYYaGu','SQL\x20名称不能为空','flagMissing','sqlName','<server-generated-sqlCode>','appCode','MyBatis\x20XML(mybatisXml)','SQL\x20query\x20display\x20name','mybatisXml','sqlRootDir','普通\x20SQL(sql)','7DnpWya','Invalid\x20database\x20selection\x20payload:\x20','sqls','请输入\x20SQL\x20名称:','create','2315844vLdyiO','Created\x20SQL\x20query\x20','dbId\x20必须为正整数','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','3543186mPAQiv','dbId\x20不能为空','nonInteractive','lockFilePath','str','sqlCode','name','isFinite','请选择目标数据库:','POST','toISOString','\x20\x20SELECT\x201\x20AS\x20id','mode','parse','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','stringify','请输入目标数据库\x20dbId:','Target\x20database\x20ID','12708104LMgJVc','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','validation','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','lastSync','__manual__','5nWvVis','File\x20already\x20exists:\x20'];a103_0x9ac2=function(){return _0x377f47;};return a103_0x9ac2();}function resolveProvidedDbId(_0x4438a2){const _0x2c245f=a103_0x52500a,_0x503cdd=_0x4438a2['flag'](_0x2c245f(0x174));if(typeof _0x503cdd===_0x2c245f(0x16c)&&Number['isFinite'](_0x503cdd))return _0x503cdd;return undefined;}
|
|
1
|
+
const a103_0x1b4b9d=a103_0x4ec1;(function(_0x504216,_0x1da0a0){const _0x3ac522=a103_0x4ec1,_0x1c81fa=_0x504216();while(!![]){try{const _0xc987ff=parseInt(_0x3ac522(0xa5))/0x1*(parseInt(_0x3ac522(0xdc))/0x2)+-parseInt(_0x3ac522(0xb3))/0x3*(-parseInt(_0x3ac522(0xca))/0x4)+parseInt(_0x3ac522(0xd1))/0x5+-parseInt(_0x3ac522(0xe7))/0x6*(parseInt(_0x3ac522(0xa9))/0x7)+-parseInt(_0x3ac522(0xc3))/0x8*(-parseInt(_0x3ac522(0xb1))/0x9)+parseInt(_0x3ac522(0xda))/0xa+-parseInt(_0x3ac522(0xab))/0xb*(parseInt(_0x3ac522(0xd5))/0xc);if(_0xc987ff===_0x1da0a0)break;else _0x1c81fa['push'](_0x1c81fa['shift']());}catch(_0x5396ec){_0x1c81fa['push'](_0x1c81fa['shift']());}}}(a103_0x5d25,0x5cefa));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(_0x459993){const _0x30d975=a103_0x4ec1;if(_0x459993===_0x30d975(0xc0))return[_0x30d975(0xe1),_0x30d975(0xd0),_0x30d975(0xc9),''][_0x30d975(0xe2)]('\x0a');return[_0x30d975(0xbb),''][_0x30d975(0xe2)]('\x0a');}export const sqlCreate={'service':a103_0x1b4b9d(0xc1),'command':a103_0x1b4b9d(0xd3),'description':a103_0x1b4b9d(0xd8),'risk':'high-risk-write','flags':[{'name':a103_0x1b4b9d(0xe6),'type':'string','description':a103_0x1b4b9d(0xd4)},{'name':a103_0x1b4b9d(0xe5),'type':a103_0x1b4b9d(0xa4),'description':a103_0x1b4b9d(0xd7)},{'name':'mode','type':a103_0x1b4b9d(0xa7),'enum':[a103_0x1b4b9d(0xc1),a103_0x1b4b9d(0xc0)],'description':'Local\x20SQL\x20file\x20mode'}],async 'validate'(_0x51eb17){const _0xbac690=a103_0x1b4b9d;if(!_0x51eb17[_0xbac690(0xb4)])return;if(!_0x51eb17[_0xbac690(0xac)](_0xbac690(0xe6))[_0xbac690(0xad)]())throw CliErrors[_0xbac690(0xb9)](_0xbac690(0xe6),_0xbac690(0xdb));const _0x29e24e=resolveProvidedDbId(_0x51eb17);if(typeof _0x29e24e!==_0xbac690(0xa4)||!Number[_0xbac690(0xa8)](_0x29e24e)||_0x29e24e<=0x0)throw CliErrors[_0xbac690(0xb9)]('db-id','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');if(!_0x51eb17[_0xbac690(0xac)](_0xbac690(0xc7))['trim']())throw CliErrors[_0xbac690(0xb9)]('mode',_0xbac690(0xb0));},async 'dryRun'(_0x5b4074){const _0x36bfc8=a103_0x1b4b9d,_0x333917=loadSqlProjectConfig(_0x5b4074['appCode']),{sqlName:_0x4ce74c,dbId:_0x215fed,dbName:_0x177fbd,mode:_0x1910d1}=await resolveSqlNewInputs(_0x5b4074),_0x594700=buildSqlRelativePath(_0x36bfc8(0xc8),_0x4ce74c,_0x177fbd,_0x1910d1,_0x215fed),_0x41a434=_0x333917[_0x36bfc8(0xaf)]+'/'+_0x594700;return{'method':_0x36bfc8(0xdd),'url':_0x36bfc8(0xa6),'body':{'appCode':_0x5b4074[_0x36bfc8(0xcf)],'sqlName':_0x4ce74c,'dbId':_0x215fed,'mode':_0x1910d1,'localPath':_0x41a434},'description':'Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20'+_0x333917[_0x36bfc8(0xaf)]};},async 'execute'(_0x4bb414){const _0x4fdad1=a103_0x1b4b9d,_0x533264=loadSqlProjectConfig(_0x4bb414[_0x4fdad1(0xcf)]),{sqlName:_0x2c353a,dbId:_0x1a444d,dbName:_0x28d9cd,mode:_0x455114}=await resolveSqlNewInputs(_0x4bb414),_0x544ad4=generateSqlTemplate(_0x455114),_0x49cc60=await createSqlQuery({'appCode':_0x4bb414[_0x4fdad1(0xcf)],'sqlName':_0x2c353a,'dbId':_0x1a444d,'sqlContent':_0x544ad4}),_0x14942c=ensureRemoteSqlContent(_0x49cc60),_0x396dd2=_0x28d9cd||await getDbName(_0x4bb414[_0x4fdad1(0xcf)],_0x1a444d)[_0x4fdad1(0xc4)](()=>undefined),_0x2a5456=buildSqlRelativePath(_0x49cc60['sqlCode'],_0x49cc60[_0x4fdad1(0xba)],_0x396dd2,_0x455114,_0x1a444d),_0x291633=_0x533264[_0x4fdad1(0xaf)]+'/'+_0x2a5456,_0x1a44d8=buildLocalSqlFileContent({'sqlCode':_0x49cc60['sqlCode'],'sqlName':_0x49cc60['sqlName'],'dbId':_0x49cc60[_0x4fdad1(0xde)]},_0x14942c,{'dbName':_0x396dd2,'mode':_0x455114,'syncedAt':new Date()[_0x4fdad1(0xbf)](),'description':_0x49cc60[_0x4fdad1(0xd6)]});if(await fileExists(_0x291633))throw CliErrors['validation'](_0x4fdad1(0xce)+_0x291633);await ensureParentDirectory(_0x291633),await writeFile(_0x291633,_0x1a44d8,_0x4fdad1(0xc2));const _0x1b1304=await readSqlLockFile(_0x533264[_0x4fdad1(0xae)]),{lockData:_0x2c0c43,appLock:_0x216140}=ensureSqlLockScope(_0x1b1304??createEmptySqlLock(),_0x533264[_0x4fdad1(0xcf)],_0x533264['sqlRoot'],_0x4fdad1(0xe4));return _0x216140[_0x4fdad1(0xb2)][_0x49cc60['sqlCode']]={...buildSqlLockEntry(_0x49cc60,_0x14942c,computeSqlContentHash(_0x1a44d8),{'dbName':_0x396dd2}),'path':_0x2a5456,'mode':_0x455114},_0x216140[_0x4fdad1(0xb7)]=new Date()[_0x4fdad1(0xbf)](),await writeSqlLockFile(_0x533264[_0x4fdad1(0xae)],_0x2c0c43),{'ok':!![],'data':{'id':_0x49cc60['id'],'sqlCode':_0x49cc60['sqlCode'],'sqlName':_0x49cc60[_0x4fdad1(0xba)],'dbId':_0x49cc60[_0x4fdad1(0xde)],'path':_0x291633,'mode':_0x455114},'message':'Created\x20SQL\x20query\x20'+_0x49cc60[_0x4fdad1(0xaa)]};}};async function resolveSqlNewInputs(_0x5e4829){const _0xa0ec64=await resolveSqlNameInput(_0x5e4829),{dbId:_0x721176,dbName:_0xc07f6d}=await resolveDbSelection(_0x5e4829),_0x19e67f=await resolveSqlModeInput(_0x5e4829);return{'sqlName':_0xa0ec64,'dbId':_0x721176,'dbName':_0xc07f6d,'mode':_0x19e67f};}async function resolveSqlNameInput(_0x1387c1){const _0x38e247=a103_0x1b4b9d,_0x33dec7=_0x1387c1[_0x38e247(0xac)](_0x38e247(0xe6))[_0x38e247(0xad)]();if(_0x33dec7)return _0x33dec7;if(_0x1387c1[_0x38e247(0xb4)])throw CliErrors[_0x38e247(0xb9)](_0x38e247(0xe6),'--name\x20is\x20required\x20in\x20non-interactive\x20mode.');return(await input({'message':_0x38e247(0xbe),'validate':_0x456973=>_0x456973[_0x38e247(0xad)]()?!![]:'SQL\x20名称不能为空'}))[_0x38e247(0xad)]();}function a103_0x5d25(){const _0x49cd9d=['适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','number','414983zteRZQ','/smartapi/custom/saveUserCustomSql','string','isFinite','46298HHGNmC','sqlCode','103422TKezwl','str','trim','lockFilePath','sqlRootDir','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','846333tqyguz','sqls','605622kmgrwg','nonInteractive','parse','Invalid\x20database\x20selection\x20payload:\x20','lastSync','请选择本地\x20SQL\x20模式:','flagMissing','sqlName','SELECT\x201\x20AS\x20id;','请选择目标数据库:','flag','请输入\x20SQL\x20名称:','toISOString','mybatisXml','sql','utf8','40FKESZQ','catch','普通\x20SQL(sql)','validation','mode','<server-generated-sqlCode>','</select>','4jGOaEW','适合带动态标签的\x20MyBatis\x20XML\x20SQL','isInteger','✎\x20手动输入\x20dbId','File\x20already\x20exists:\x20','appCode','\x20\x20SELECT\x201\x20AS\x20id','980515kaBjxu','请输入目标数据库\x20dbId:','create','SQL\x20query\x20display\x20name','984TczwUl','description','Target\x20database\x20ID','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','stringify','5431130YjAgEK','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','2ISnUNf','POST','dbId','dbName','length','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','join','map','new','db-id','name','612ymXbbx','__manual__'];a103_0x5d25=function(){return _0x49cd9d;};return a103_0x5d25();}async function resolveDbSelection(_0xb05911){const _0x22ba18=a103_0x1b4b9d,_0x120f24=resolveProvidedDbId(_0xb05911);if(typeof _0x120f24===_0x22ba18(0xa4)&&Number[_0x22ba18(0xa8)](_0x120f24)&&_0x120f24>0x0)return{'dbId':_0x120f24,'dbName':await getDbName(_0xb05911[_0x22ba18(0xcf)],_0x120f24)[_0x22ba18(0xc4)](()=>undefined)};if(_0xb05911['nonInteractive'])throw CliErrors[_0x22ba18(0xb9)](_0x22ba18(0xe5),'--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x13fcde=await listDatabases(_0xb05911[_0x22ba18(0xcf)])[_0x22ba18(0xc4)](()=>[]);if(_0x13fcde[_0x22ba18(0xe0)]===0x1)return{'dbId':_0x13fcde[0x0][_0x22ba18(0xde)],'dbName':_0x13fcde[0x0]['dbName']};if(_0x13fcde['length']>0x1){const _0x32dda4=await select({'message':_0x22ba18(0xbc),'choices':[..._0x13fcde[_0x22ba18(0xe3)](_0x1175cf=>({'name':_0x1175cf[_0x22ba18(0xdf)]+'\x20('+_0x1175cf[_0x22ba18(0xde)]+')','value':serializeDbSelection(_0x1175cf)})),{'name':_0x22ba18(0xcd),'value':_0x22ba18(0xa2)}]});if(_0x32dda4!=='__manual__')return deserializeDbSelection(_0x32dda4);}const _0x53e7f0=await input({'message':_0x22ba18(0xd2),'validate':_0x293dde=>{const _0x4c8d97=_0x22ba18,_0x148286=_0x293dde[_0x4c8d97(0xad)]();if(!_0x148286)return'dbId\x20不能为空';const _0xb94c26=Number(_0x148286);if(!Number[_0x4c8d97(0xcc)](_0xb94c26)||_0xb94c26<=0x0)return'dbId\x20必须为正整数';return!![];}});return{'dbId':Number(_0x53e7f0['trim']())};}function a103_0x4ec1(_0x2a54bc,_0x2de46d){_0x2a54bc=_0x2a54bc-0xa2;const _0x5d25a8=a103_0x5d25();let _0x4ec195=_0x5d25a8[_0x2a54bc];return _0x4ec195;}async function resolveSqlModeInput(_0xbe18b8){const _0x240f36=a103_0x1b4b9d,_0x1626b9=_0xbe18b8[_0x240f36(0xac)]('mode')[_0x240f36(0xad)]();if(_0x1626b9==='sql'||_0x1626b9==='mybatisXml')return _0x1626b9;if(_0xbe18b8[_0x240f36(0xb4)])throw CliErrors[_0x240f36(0xb9)](_0x240f36(0xc7),_0x240f36(0xb0));return await select({'message':_0x240f36(0xb8),'choices':[{'name':_0x240f36(0xc5),'value':'sql','description':_0x240f36(0xa3)},{'name':'MyBatis\x20XML(mybatisXml)','value':_0x240f36(0xc0),'description':_0x240f36(0xcb)}]});}function serializeDbSelection(_0x310111){const _0x59e127=a103_0x1b4b9d;return JSON[_0x59e127(0xd9)]({'dbId':_0x310111[_0x59e127(0xde)],'dbName':_0x310111[_0x59e127(0xdf)]});}function deserializeDbSelection(_0x357bc4){const _0x339d95=a103_0x1b4b9d;try{const _0x4b08d=JSON[_0x339d95(0xb5)](_0x357bc4);if(typeof _0x4b08d[_0x339d95(0xde)]===_0x339d95(0xa4)&&Number[_0x339d95(0xa8)](_0x4b08d[_0x339d95(0xde)]))return{'dbId':_0x4b08d[_0x339d95(0xde)],'dbName':_0x4b08d[_0x339d95(0xdf)]};}catch{}throw CliErrors[_0x339d95(0xc6)](_0x339d95(0xb6)+_0x357bc4);}function resolveProvidedDbId(_0x2baf19){const _0x508471=a103_0x1b4b9d,_0x1afa5a=_0x2baf19[_0x508471(0xbd)](_0x508471(0xe5));if(typeof _0x1afa5a===_0x508471(0xa4)&&Number[_0x508471(0xa8)](_0x1afa5a))return _0x1afa5a;return undefined;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a104_0x203178=a104_0x25e4;(function(_0x1827cc,_0x3834de){const _0x35fcdd=a104_0x25e4,_0x37117d=_0x1827cc();while(!![]){try{const _0x55c966=-parseInt(_0x35fcdd(0x1c3))/0x1*(-parseInt(_0x35fcdd(0x1b6))/0x2)+parseInt(_0x35fcdd(0x1a3))/0x3+parseInt(_0x35fcdd(0x1c2))/0x4+parseInt(_0x35fcdd(0x1bf))/0x5*(-parseInt(_0x35fcdd(0x1b8))/0x6)+-parseInt(_0x35fcdd(0x1a9))/0x7*(parseInt(_0x35fcdd(0x1b2))/0x8)+parseInt(_0x35fcdd(0x1c1))/0x9*(-parseInt(_0x35fcdd(0x1a0))/0xa)+-parseInt(_0x35fcdd(0x1b4))/0xb*(parseInt(_0x35fcdd(0x1bc))/0xc);if(_0x55c966===_0x3834de)break;else _0x37117d['push'](_0x37117d['shift']());}catch(_0x39bebc){_0x37117d['push'](_0x37117d['shift']());}}}(a104_0x4356,0xbd04f));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';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';function a104_0x25e4(_0x2ae2f5,_0x6279a1){_0x2ae2f5=_0x2ae2f5-0x19e;const _0x435647=a104_0x4356();let _0x25e433=_0x435647[_0x2ae2f5];return _0x25e433;}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':a104_0x203178(0x1a7),'command':a104_0x203178(0x1b0),'description':a104_0x203178(0x1ba),'risk':a104_0x203178(0x19f),'flags':[SQLCODE_FLAG],async 'validate'(_0x575497){const _0x15b6bf=a104_0x203178,_0x3abf88=loadSqlProjectConfig(_0x575497[_0x15b6bf(0x1b9)]),_0x4099c8=await readSqlLockFile(_0x3abf88[_0x15b6bf(0x1c6)]);if(!_0x4099c8)throw CliErrors['validation'](_0x15b6bf(0x1b3));},async 'dryRun'(_0x116ca5){const _0x41e0ea=a104_0x203178,_0x376b2f=loadSqlProjectConfig(_0x116ca5[_0x41e0ea(0x1b9)]),_0x2d782d=await readSqlLockFile(_0x376b2f[_0x41e0ea(0x1c6)]);if(!_0x2d782d)throw CliErrors['validation'](_0x41e0ea(0x1b3));const {appLock:_0x5cd0e6}=ensureSqlLockScope(_0x2d782d,_0x116ca5[_0x41e0ea(0x1b9)],_0x376b2f['sqlRoot'],_0x41e0ea(0x1b0)),_0x3b42b4=_0x116ca5[_0x41e0ea(0x1b1)](_0x41e0ea(0x1a8)),_0x812292=_0x5cd0e6[_0x41e0ea(0x1a2)][_0x3b42b4];if(!_0x812292)throw CliErrors[_0x41e0ea(0x1ac)]('No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22'+_0x3b42b4+'\x22.');return{'method':_0x41e0ea(0x1af),'url':'/smartapi/custom/deleteUserCustomSql','body':{'sqlCode':_0x3b42b4,'id':_0x812292['remoteId'],'localPath':resolveLocalSqlFilePath(_0x376b2f,_0x3b42b4,_0x812292)},'description':_0x41e0ea(0x1c7)+_0x3b42b4+_0x41e0ea(0x1aa)+_0x376b2f[_0x41e0ea(0x19e)]};},async 'execute'(_0x13b61c){const _0x47e556=a104_0x203178,_0x260a14=loadSqlProjectConfig(_0x13b61c[_0x47e556(0x1b9)]),_0x1d078d=await readSqlLockFile(_0x260a14[_0x47e556(0x1c6)]);if(!_0x1d078d)throw CliErrors[_0x47e556(0x1ac)](_0x47e556(0x1bb));const {lockData:_0x2d94b5,appLock:_0x5e0456}=ensureSqlLockScope(_0x1d078d,_0x13b61c['appCode'],_0x260a14[_0x47e556(0x1c5)],_0x47e556(0x1b0)),_0x31e242=_0x13b61c[_0x47e556(0x1b1)]('sqlcode'),_0x4ecdec=_0x5e0456[_0x47e556(0x1a2)][_0x31e242];if(!_0x4ecdec)throw CliErrors[_0x47e556(0x1ac)](_0x47e556(0x1ab)+_0x31e242+'\x22.');await deleteSqlQuery({'id':_0x4ecdec[_0x47e556(0x1a5)],'sqlCode':_0x31e242}),_0x5e0456[_0x47e556(0x1a2)]=Object[_0x47e556(0x1a1)](Object[_0x47e556(0x1be)](_0x5e0456[_0x47e556(0x1a2)])[_0x47e556(0x1ae)](([_0x13e027])=>_0x13e027!==_0x31e242)),_0x5e0456[_0x47e556(0x1a6)]=new Date()[_0x47e556(0x1a4)](),await writeSqlLockFile(_0x260a14[_0x47e556(0x1c6)],_0x2d94b5);const _0x9dae75=resolveLocalSqlFilePath(_0x260a14,_0x31e242,_0x4ecdec);let _0x3765e7;await fileExists(_0x9dae75)&&(_0x3765e7=await moveToTrash(_0x260a14[_0x47e556(0x1c4)],_0x260a14['trashDir'],_0x9dae75),await cleanupEmptyDirectories(dirname(_0x9dae75),_0x260a14['sqlRootDir']));const _0x15eead={'deleted':_0x31e242,'remoteId':_0x4ecdec[_0x47e556(0x1a5)]};if(_0x3765e7)_0x15eead['trashedTo']=_0x3765e7;return{'ok':!![],'data':_0x15eead,'message':_0x47e556(0x1ad)+_0x31e242+(_0x3765e7?_0x47e556(0x1c0):'')};}};function a104_0x4356(){const _0x4622ef=['startsWith','entries','1599310JOSypM','\x20(local\x20file\x20moved\x20to\x20trash)','63LRvSOr','1818212wKrAoM','207799KZiZhu','projectRoot','sqlRoot','lockFilePath','Would\x20delete\x20SQL\x20','trashDir','high-risk-write','607470ZYHrDQ','fromEntries','sqls','3081645ANALgX','toISOString','remoteId','lastSync','sql','sqlcode','5551bcjMMz','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','validation','Deleted\x20','filter','POST','delete','str','3976mVtSUa','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','33wFSvgU','replace','12BEVnFn','length','6gqXbGI','appCode','Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','SQL\x20lock\x20file\x20not\x20found.','3260508WMLrCY'];a104_0x4356=function(){return _0x4622ef;};return a104_0x4356();}async function moveToTrash(_0x50765f,_0x151d7a,_0x3ba3a5){const _0x54303e=a104_0x203178,_0x483e13=new Date()[_0x54303e(0x1a4)]()[_0x54303e(0x1b5)](/[:.]/g,'-'),_0x15a088=relative(_0x50765f,_0x3ba3a5),_0x2655ca=join(_0x151d7a,_0x483e13,_0x15a088);return await mkdir(dirname(_0x2655ca),{'recursive':!![]}),await rename(_0x3ba3a5,_0x2655ca),_0x2655ca;}async function cleanupEmptyDirectories(_0x44cc23,_0x12a5bc){const _0x16454d=a104_0x203178;let _0x256c47=resolve(_0x44cc23);const _0x4ad8f8=resolve(_0x12a5bc);while(_0x256c47[_0x16454d(0x1bd)](''+_0x4ad8f8+sep)||_0x256c47===_0x4ad8f8){if(_0x256c47===_0x4ad8f8)return;try{const _0x431b58=await readdir(_0x256c47);if(_0x431b58[_0x16454d(0x1b7)]>0x0)return;await rmdir(_0x256c47);}catch{return;}_0x256c47=dirname(_0x256c47);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a105_0x16c9f1=a105_0x447e;(function(_0x52b72b,_0x4833f0){const _0x25a085=a105_0x447e,_0x17911d=_0x52b72b();while(!![]){try{const _0xf9141c=-parseInt(_0x25a085(0x109))/0x1*(-parseInt(_0x25a085(0xfa))/0x2)+parseInt(_0x25a085(0x102))/0x3+-parseInt(_0x25a085(0x101))/0x4+-parseInt(_0x25a085(0x106))/0x5*(-parseInt(_0x25a085(0x107))/0x6)+-parseInt(_0x25a085(0x10a))/0x7+parseInt(_0x25a085(0xfd))/0x8+-parseInt(_0x25a085(0x104))/0x9*(-parseInt(_0x25a085(0xf8))/0xa);if(_0xf9141c===_0x4833f0)break;else _0x17911d['push'](_0x17911d['shift']());}catch(_0x517f17){_0x17911d['push'](_0x17911d['shift']());}}}(a105_0x13d1,0xc86e7));import{getSqlQueryInfo}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';function a105_0x13d1(){const _0x33e0fb=['bool','36JyPxRl','sqlName','501325DyKnUo','54FMrKsB','appCode','8331fVhkiu','4081861lubLyV','str','Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','description','sql','1825190dEgIvw','dbId','94CXhDwO','sqlContent','read','2283408kXhJVH','detail','verbose','sqlcode','5471708oDWofA','1387719ykugsq'];a105_0x13d1=function(){return _0x33e0fb;};return a105_0x13d1();}function a105_0x447e(_0x22a82f,_0x410965){_0x22a82f=_0x22a82f-0xf7;const _0x13d1c7=a105_0x13d1();let _0x447e28=_0x13d1c7[_0x22a82f];return _0x447e28;}import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDetail={'service':a105_0x16c9f1(0xf7),'command':a105_0x16c9f1(0xfe),'description':a105_0x16c9f1(0x10c),'risk':a105_0x16c9f1(0xfc),'flags':[SQLCODE_FLAG,{'name':a105_0x16c9f1(0xff),'type':'boolean','description':'Return\x20full\x20raw\x20SQL\x20query\x20object'}],async 'execute'(_0x194d31){const _0x216fe1=a105_0x16c9f1,_0x180b2b=await getSqlQueryInfo(_0x194d31['appCode'],_0x194d31[_0x216fe1(0x10b)](_0x216fe1(0x100))),_0xd81056=_0x194d31[_0x216fe1(0x103)](_0x216fe1(0xff));if(_0xd81056)return{'ok':!![],'data':_0x180b2b};const _0x3de8df=_0x180b2b[_0x216fe1(0xf9)]?await getDbName(_0x194d31[_0x216fe1(0x108)],_0x180b2b[_0x216fe1(0xf9)]):undefined;return{'ok':!![],'data':{'sqlCode':_0x180b2b['sqlCode'],'sqlName':_0x180b2b[_0x216fe1(0x105)],'db':_0x3de8df?_0x3de8df+'\x20('+_0x180b2b[_0x216fe1(0xf9)]+')':_0x180b2b[_0x216fe1(0xf9)]??'','description':_0x180b2b[_0x216fe1(0x10d)]??'','sqlContent':_0x180b2b[_0x216fe1(0xfb)]??''}};}};
|
package/lib/commands/sql/exec.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a106_0x3df940=a106_0x4def;(function(_0x5c36c5,_0x470760){const _0x93dc28=a106_0x4def,_0x2c9d90=_0x5c36c5();while(!![]){try{const _0x11b948=parseInt(_0x93dc28(0x10f))/0x1+parseInt(_0x93dc28(0xf7))/0x2*(-parseInt(_0x93dc28(0xfb))/0x3)+-parseInt(_0x93dc28(0x108))/0x4*(-parseInt(_0x93dc28(0x10c))/0x5)+parseInt(_0x93dc28(0x10b))/0x6+-parseInt(_0x93dc28(0x106))/0x7*(-parseInt(_0x93dc28(0x100))/0x8)+parseInt(_0x93dc28(0x111))/0x9*(parseInt(_0x93dc28(0xff))/0xa)+parseInt(_0x93dc28(0xfd))/0xb*(-parseInt(_0x93dc28(0x105))/0xc);if(_0x11b948===_0x470760)break;else _0x2c9d90['push'](_0x2c9d90['shift']());}catch(_0x395e1b){_0x2c9d90['push'](_0x2c9d90['shift']());}}}(a106_0x7803,0x84ed2));import{executeSql}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a106_0x7803(){const _0x13e280=['9CdCyVb','Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode','exec','read','str','execError','6XtzTwL','sqlcode','execResult','execSuccess','506913SJXDEu','string','11ygKClc','params','753090APDmWm','296152mlHlli','SQL\x20parameters\x20as\x20JSON\x20string\x20(e.g.\x20\x27{\x22key\x22:\x22value\x22}\x27)','now','SQL\x20execution\x20failed','sql','8184828SDmZpZ','119azSJtL','appCode','8EhHfOD','Returned\x20','validation','1258104eoeLOQ','43530bCnIey','\x20row(s)\x20in\x20','isArray','801720JlAvRM','length'];a106_0x7803=function(){return _0x13e280;};return a106_0x7803();}import{SQLCODE_FLAG}from'../../commands/common/flags.js';function a106_0x4def(_0x2d0e55,_0x1bb334){_0x2d0e55=_0x2d0e55-0xf5;const _0x7803a8=a106_0x7803();let _0x4defad=_0x7803a8[_0x2d0e55];return _0x4defad;}export const sqlExec={'service':a106_0x3df940(0x104),'command':a106_0x3df940(0x113),'description':a106_0x3df940(0x112),'risk':a106_0x3df940(0x114),'flags':[SQLCODE_FLAG,{'name':a106_0x3df940(0xfe),'type':a106_0x3df940(0xfc),'description':a106_0x3df940(0x101)}],async 'execute'(_0xeea5ae){const _0x377416=a106_0x3df940;let _0x11681f;const _0xf845a9=_0xeea5ae['str'](_0x377416(0xfe));if(_0xf845a9)try{_0x11681f=JSON['parse'](_0xf845a9);}catch{throw CliErrors[_0x377416(0x10a)]('Invalid\x20JSON\x20for\x20--params:\x20'+_0xf845a9);}const _0x47eea1=Date[_0x377416(0x102)](),_0xe0207f=await executeSql(_0xeea5ae[_0x377416(0x107)],_0xeea5ae[_0x377416(0xf5)](_0x377416(0xf8)),_0x11681f),_0x1b3571=Date[_0x377416(0x102)]()-_0x47eea1,_0x1ca1d3=_0xe0207f?.[_0x377416(0xf9)]??_0xe0207f,_0x3eb3e1=_0xe0207f?.[_0x377416(0xfa)]??!![];if(!_0x3eb3e1)return{'ok':![],'data':{'error':_0xe0207f?.[_0x377416(0xf6)]||_0x377416(0x103),'elapsed':_0x1b3571},'message':_0x377416(0x103)};const _0x3315c5=Array[_0x377416(0x10e)](_0x1ca1d3)?_0x1ca1d3:[];return{'ok':!![],'data':{'rows':_0x3315c5,'rowCount':_0x3315c5[_0x377416(0x110)],'elapsed':_0x1b3571},'message':_0x377416(0x109)+_0x3315c5[_0x377416(0x110)]+_0x377416(0x10d)+_0x1b3571+'ms'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x16d467,_0x302d64){const _0x1f91d6=a107_0x7fe4,_0x466f1a=_0x16d467();while(!![]){try{const _0x215f15=-parseInt(_0x1f91d6(0x145))/0x1*(parseInt(_0x1f91d6(0x142))/0x2)+parseInt(_0x1f91d6(0x149))/0x3*(-parseInt(_0x1f91d6(0x141))/0x4)+parseInt(_0x1f91d6(0x143))/0x5*(parseInt(_0x1f91d6(0x147))/0x6)+-parseInt(_0x1f91d6(0x140))/0x7+-parseInt(_0x1f91d6(0x148))/0x8+-parseInt(_0x1f91d6(0x13f))/0x9*(-parseInt(_0x1f91d6(0x144))/0xa)+parseInt(_0x1f91d6(0x146))/0xb;if(_0x215f15===_0x302d64)break;else _0x466f1a['push'](_0x466f1a['shift']());}catch(_0x1e40cf){_0x466f1a['push'](_0x466f1a['shift']());}}}(a107_0x4500,0x2e37d));import{sqlList}from'../../commands/sql/list.js';function a107_0x4500(){const _0x54a56b=['20xFLyBn','44017DPLKKp','4264018pAHech','319194hOEpnk','1987344nWSMpU','921147OQeywR','1169226ZZiHrs','1617462vkrFSy','4jRYnrj','2EplSzH','35qanuAi'];a107_0x4500=function(){return _0x54a56b;};return a107_0x4500();}import{sqlDetail}from'../../commands/sql/detail.js';import{sqlValidate}from'../../commands/sql/validate.js';import{sqlSave}from'../../commands/sql/save.js';function a107_0x7fe4(_0x172953,_0x140453){_0x172953=_0x172953-0x13f;const _0x450040=a107_0x4500();let _0x7fe474=_0x450040[_0x172953];return _0x7fe474;}import{sqlExec}from'../../commands/sql/exec.js';import{sqlPull}from'../../commands/sql/pull.js';import{sqlCreate}from'../../commands/sql/create.js';import{sqlStatus}from'../../commands/sql/status.js';import{sqlPush}from'../../commands/sql/push.js';import{sqlDelete}from'../../commands/sql/delete.js';export const sqlDefinitions=[sqlList,sqlDetail,sqlStatus,sqlCreate,sqlPush,sqlValidate,sqlSave,sqlExec,sqlPull,sqlDelete];
|
package/lib/commands/sql/list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a108_0x48782c=a108_0x3c48;(function(_0x50ed4e,_0x143bcb){const _0x1cefd2=a108_0x3c48,_0x166e5a=_0x50ed4e();while(!![]){try{const _0x56b2b0=parseInt(_0x1cefd2(0x91))/0x1+-parseInt(_0x1cefd2(0x9b))/0x2*(parseInt(_0x1cefd2(0xa7))/0x3)+parseInt(_0x1cefd2(0x8e))/0x4+-parseInt(_0x1cefd2(0x9c))/0x5*(-parseInt(_0x1cefd2(0x85))/0x6)+parseInt(_0x1cefd2(0x9e))/0x7*(-parseInt(_0x1cefd2(0x95))/0x8)+-parseInt(_0x1cefd2(0x98))/0x9*(parseInt(_0x1cefd2(0x8b))/0xa)+-parseInt(_0x1cefd2(0xa6))/0xb*(parseInt(_0x1cefd2(0x8a))/0xc);if(_0x56b2b0===_0x143bcb)break;else _0x166e5a['push'](_0x166e5a['shift']());}catch(_0x48358c){_0x166e5a['push'](_0x166e5a['shift']());}}}(a108_0x169a,0xb8474));function a108_0x3c48(_0x37839c,_0x2e3e24){_0x37839c=_0x37839c-0x84;const _0x169ad0=a108_0x169a();let _0x3c48c7=_0x169ad0[_0x37839c];return _0x3c48c7;}function a108_0x169a(){const _0x39cd55=['description','\x20SQL\x20queries\x20(total:\x20','map','List\x20custom\x20SQL\x20queries','60gJUCJl','131590EsjNVw','dbId','Filter\x20by\x20SQL\x20name','4631880MUwzwp','Found\x20','pagesize','1028745HCFOTS','appCode','read','num','112nfVUag','name','str','459wBMBVH','string','page','4ZHCvTy','3887695pKcfOk','Return\x20full\x20SQL\x20query\x20objects\x20including\x20parameters\x20and\x20SQL\x20content','592599PtqiVN','list','No\x20custom\x20SQL\x20queries\x20found.','sqlCode','sqlcode','sqlName','paging','length','741235yOUNcJ','24327eiVBBz','number','6YapQJI'];a108_0x169a=function(){return _0x39cd55;};return a108_0x169a();}import{listSqlQueries}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';export const sqlList={'service':'sql','command':a108_0x48782c(0x9f),'description':a108_0x48782c(0x89),'risk':a108_0x48782c(0x93),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a108_0x48782c(0x96),'type':a108_0x48782c(0x99),'description':a108_0x48782c(0x8d)},{'name':a108_0x48782c(0x9a),'type':'number','description':'Page\x20number','default':0x1},{'name':a108_0x48782c(0x90),'type':a108_0x48782c(0x84),'description':'Page\x20size'},{'name':'verbose','type':'boolean','description':a108_0x48782c(0x9d)}],async 'execute'(_0x29a123){const _0x4ad5b1=a108_0x48782c,_0x4397b4=await listSqlQueries(_0x29a123[_0x4ad5b1(0x92)],{'sqlCode':_0x29a123[_0x4ad5b1(0x97)](_0x4ad5b1(0xa2))||undefined,'sqlName':_0x29a123['str']('name')||undefined,'currentPage':_0x29a123[_0x4ad5b1(0x94)](_0x4ad5b1(0x9a)),'pageSize':_0x29a123[_0x4ad5b1(0x94)](_0x4ad5b1(0x90),0x32)}),_0x3e008d=_0x29a123['bool']('verbose'),_0x3d4d86=_0x4397b4['tableData']??[],_0x2982ca=_0x4397b4[_0x4ad5b1(0xa4)]?.['totalCount']??_0x3d4d86['length'];let _0x3ebe73;return _0x3e008d?_0x3ebe73=_0x3d4d86:_0x3ebe73=await Promise['all'](_0x3d4d86[_0x4ad5b1(0x88)](async _0x26b27c=>{const _0x5e68d9=_0x4ad5b1;let _0x1693d2;try{_0x1693d2=_0x26b27c[_0x5e68d9(0x8c)]?await getDbName(_0x29a123[_0x5e68d9(0x92)],_0x26b27c['dbId']):undefined;}catch{}return{'sqlCode':_0x26b27c[_0x5e68d9(0xa1)],'sqlName':_0x26b27c[_0x5e68d9(0xa3)],'description':_0x26b27c[_0x5e68d9(0x86)]??'','db':_0x1693d2?_0x1693d2+'\x20('+_0x26b27c[_0x5e68d9(0x8c)]+')':_0x26b27c[_0x5e68d9(0x8c)]??''};})),{'ok':!![],'data':_0x3ebe73,'message':_0x3d4d86[_0x4ad5b1(0xa5)]===0x0?_0x4ad5b1(0xa0):_0x4ad5b1(0x8f)+_0x3d4d86['length']+_0x4ad5b1(0x87)+_0x2982ca+').'};}};
|