@lovrabet/rabetbase-cli 2.3.2-beta.1 → 2.3.3-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/add.js +1 -1
- package/lib/commands/app/discover.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/remove.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app/use.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.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-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -0
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/update.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/standard-page-status.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/non-interactive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/init.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/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/commands/workspace/index.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/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/copy-directory.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x288e9c,_0x12523e){const _0x2b048e=a127_0xc1c7,_0x58479c=_0x288e9c();while(!![]){try{const _0x2c218c=parseInt(_0x2b048e(0x128))/0x1+-parseInt(_0x2b048e(0x130))/0x2*(parseInt(_0x2b048e(0x125))/0x3)+parseInt(_0x2b048e(0x122))/0x4+-parseInt(_0x2b048e(0x107))/0x5*(parseInt(_0x2b048e(0x103))/0x6)+parseInt(_0x2b048e(0x11d))/0x7+-parseInt(_0x2b048e(0x136))/0x8*(parseInt(_0x2b048e(0x131))/0x9)+-parseInt(_0x2b048e(0x10d))/0xa;if(_0x2c218c===_0x12523e)break;else _0x58479c['push'](_0x58479c['shift']());}catch(_0x118189){_0x58479c['push'](_0x58479c['shift']());}}}(a127_0x303e,0x4d92f));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a127_0x16b5a9 from'chalk';function a127_0xc1c7(_0x338fef,_0x5a0bbd){_0x338fef=_0x338fef-0x102;const _0x303e8a=a127_0x303e();let _0xc1c776=_0x303e8a[_0x338fef];return _0xc1c776;}import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';function a127_0x303e(){const _0x374ced=['package.json','app','setLogPath','init','appcode','string','join','parse','env','production','version','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','cwd','toLocaleString','3513944aLcMXe','\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27','apps','info','1.0.0','392620TdCysi','\x20project\x20init`\x20to\x20start\x20fresh.','\x20api\x20pull\x27','37014QJSVgQ','../..','✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory','537534JDrvWs','\x20\x20Apps:\x20','Upgrade\x20it\x20to\x20','green','trim','cyan','yellow','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','4klkKAL','171HHyOmN','utf8','defaultApp','\x20\x20Old\x20file\x20backed\x20up\x20as\x20','\x20api\x20generate\x27\x20and\x20\x27','163976TLZPVj','Invalid\x20App\x20Code','1985226ySIJzY','?\x20(Old\x20file\x20→\x20*.bak)','Please\x20enter\x20App\x20Code:','初始化项目配置文件成功','5BrPHAc','log','keys','bold','\x20\x20Default:\x20','\x20\x20appcode:\x20','749480EaiQST','.bak'];a127_0x303e=function(){return _0x374ced;};return a127_0x303e();}import{logger}from'../../utils/logger.js';import{readRawConfig,getProjectConfigPath,writeConfigFile,NEW_CONFIG_NAME,LEGACY_CONFIG_NAMES}from'../../context.js';import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x17c898){const _0x2966eb=a127_0xc1c7,{appcode:_0x5e12b5,env:_0x1037ec,autoYes:_0x195884}=_0x17c898,_0x34d97c=process[_0x2966eb(0x11b)]();if(getProjectConfigPath())throw new Error(_0x2966eb(0x11a));let _0x32e5dc;for(const _0xb9c6c5 of LEGACY_CONFIG_NAMES){const _0x3cc706=resolve(_0x34d97c,_0xb9c6c5);if(existsSync(_0x3cc706)){_0x32e5dc=_0x3cc706;break;}}if(_0x32e5dc){let _0x50e884={};try{_0x50e884=JSON[_0x2966eb(0x116)](readFileSync(_0x32e5dc,_0x2966eb(0x132)));}catch{}const _0x3339ef=basename(_0x32e5dc),_0x1b42c2=_0x50e884?.[_0x2966eb(0x113)]||_0x50e884?.['app'];let _0x1ca222=_0x195884;!_0x195884&&(console[_0x2966eb(0x108)](a127_0x16b5a9[_0x2966eb(0x12e)](_0x2966eb(0x12f)+a127_0x16b5a9[_0x2966eb(0x10a)](_0x3339ef))),_0x1b42c2&&console['log'](a127_0x16b5a9[_0x2966eb(0x12d)](_0x2966eb(0x10c)+_0x1b42c2)),_0x1ca222=await confirm({'message':_0x2966eb(0x12a)+a127_0x16b5a9['bold']('.rabetbase.json')+_0x2966eb(0x104),'default':!![]}));if(!_0x1ca222){console[_0x2966eb(0x108)]('Migration\x20cancelled.\x20Run\x20`'+CLI_BIN_NAME+_0x2966eb(0x123));return;}const _0x566146=resolve(_0x34d97c,NEW_CONFIG_NAME),_0x191479=getCliVersionFromPkg(),_0x31c1f4=readRawConfig(),_0xaf6ced=_0x5e12b5||(typeof _0x50e884?.[_0x2966eb(0x113)]===_0x2966eb(0x114)?_0x50e884[_0x2966eb(0x113)]:undefined)||(typeof _0x50e884?.[_0x2966eb(0x110)]===_0x2966eb(0x114)?_0x50e884[_0x2966eb(0x110)]:undefined)||await askAppcode(),_0x2a280e=typeof _0x50e884?.[_0x2966eb(0x117)]===_0x2966eb(0x114)?_0x50e884[_0x2966eb(0x117)]:typeof _0x31c1f4[_0x2966eb(0x117)]===_0x2966eb(0x114)?_0x31c1f4[_0x2966eb(0x117)]:'production',_0x2550ab=buildCanonicalProjectConfig({..._0x31c1f4,..._0x50e884},{'appCodes':[_0xaf6ced],'env':_0x2a280e,'metadata':{'version':_0x191479,'migratedAt':new Date()[_0x2966eb(0x11c)](),'migratedFrom':_0x32e5dc}});writeConfigFile(_0x566146,_0x2550ab);const _0x356995=_0x32e5dc+_0x2966eb(0x10e);renameSync(_0x32e5dc,_0x356995),logger[_0x2966eb(0x111)](_0x34d97c),logger[_0x2966eb(0x120)](_0x2966eb(0x112),'从旧配置文件升级成功',{'from':_0x32e5dc,'to':_0x566146,'appcode':_0xaf6ced,'env':_0x2550ab[_0x2966eb(0x117)]}),console[_0x2966eb(0x108)](a127_0x16b5a9['green']('✓\x20Upgraded\x20'+_0x3339ef+'\x20→\x20.rabetbase.json')),console[_0x2966eb(0x108)](a127_0x16b5a9[_0x2966eb(0x12d)](_0x2966eb(0x129)+Object[_0x2966eb(0x109)](_0x2550ab[_0x2966eb(0x11f)]||{})[_0x2966eb(0x115)](',\x20'))),console[_0x2966eb(0x108)](a127_0x16b5a9[_0x2966eb(0x12d)](_0x2966eb(0x10b)+_0x2550ab[_0x2966eb(0x133)])),console[_0x2966eb(0x108)](a127_0x16b5a9['gray'](_0x2966eb(0x134)+_0x3339ef+_0x2966eb(0x10e)));return;}const _0x2da487=_0x5e12b5||await askAppcode(),_0x554762=resolve(_0x34d97c,NEW_CONFIG_NAME),_0x12f21d=getCliVersionFromPkg(),_0x3af137=readRawConfig(),_0x2d2932=typeof _0x3af137[_0x2966eb(0x117)]===_0x2966eb(0x114)?_0x3af137[_0x2966eb(0x117)]:undefined,_0x5a544c=buildCanonicalProjectConfig({},{'appCodes':[_0x2da487],'env':_0x1037ec||_0x2d2932||_0x2966eb(0x118),'metadata':{'version':_0x12f21d,'createdAt':new Date()['toLocaleString']()}});writeConfigFile(_0x554762,_0x5a544c),logger[_0x2966eb(0x111)](_0x34d97c),logger[_0x2966eb(0x120)](_0x2966eb(0x112),_0x2966eb(0x106),{'appcode':_0x2da487,'env':_0x5a544c[_0x2966eb(0x117)],'version':_0x5a544c[_0x2966eb(0x119)],'configPath':_0x554762}),console[_0x2966eb(0x108)](a127_0x16b5a9[_0x2966eb(0x12b)](_0x2966eb(0x127))),console[_0x2966eb(0x108)](a127_0x16b5a9['cyan'](_0x2966eb(0x129)+Object['keys'](_0x5a544c['apps']||{})['join'](',\x20'))),console[_0x2966eb(0x108)](a127_0x16b5a9[_0x2966eb(0x12d)](_0x2966eb(0x10b)+_0x5a544c['defaultApp'])),console[_0x2966eb(0x108)](_0x2966eb(0x11e)+CLI_BIN_NAME+_0x2966eb(0x135)+CLI_BIN_NAME+_0x2966eb(0x124));}function askAppcode(){const _0x59c0dd=a127_0xc1c7;return input({'message':_0x59c0dd(0x105),'validate':_0x224e75=>{const _0x49bf00=_0x59c0dd;if(!_0x224e75[_0x49bf00(0x12c)]())return'App\x20Code\x20cannot\x20be\x20empty';const {valid:_0x4628f9,message:_0x5a1c26}=validateAppcode(_0x224e75['trim']());return _0x4628f9||_0x5a1c26||_0x49bf00(0x102);}});}function getCliVersionFromPkg(){const _0x420d52=a127_0xc1c7;try{const _0x5cd316=fileURLToPath(import.meta.url),_0x10522a=resolve(dirname(_0x5cd316),_0x420d52(0x126)),_0x5c8aef=JSON['parse'](readFileSync(resolve(_0x10522a,_0x420d52(0x10f)),_0x420d52(0x132)));return _0x5c8aef[_0x420d52(0x119)]||_0x420d52(0x121);}catch{return _0x420d52(0x121);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a127_0x204f76=a127_0x1a3d;(function(_0x291472,_0x4f5f7a){const _0x383f21=a127_0x1a3d,_0x4587ca=_0x291472();while(!![]){try{const _0x4e414c=parseInt(_0x383f21(0x109))/0x1*(-parseInt(_0x383f21(0xe1))/0x2)+-parseInt(_0x383f21(0xc9))/0x3+-parseInt(_0x383f21(0xe5))/0x4*(-parseInt(_0x383f21(0x9e))/0x5)+-parseInt(_0x383f21(0xb5))/0x6*(parseInt(_0x383f21(0x107))/0x7)+parseInt(_0x383f21(0xb1))/0x8+parseInt(_0x383f21(0xf4))/0x9*(parseInt(_0x383f21(0x9f))/0xa)+parseInt(_0x383f21(0x9a))/0xb*(-parseInt(_0x383f21(0xf7))/0xc);if(_0x4e414c===_0x4f5f7a)break;else _0x4587ca['push'](_0x4587ca['shift']());}catch(_0x596de1){_0x4587ca['push'](_0x4587ca['shift']());}}}(a127_0x1b54,0x24eec));import a127_0x235d05 from'chalk';import a127_0x553d6a 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[a127_0x204f76(0x10f)](_0xc0df31=>_0xc0df31!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x559c02){const _0x56e286=a127_0x204f76,_0xa769b3=[];for(const _0x1d7a1a of Object[_0x56e286(0xd4)](CORE_IDE_CONFIGS)){if(_0x1d7a1a[_0x56e286(0xf0)])for(const _0x39b47c of _0x1d7a1a[_0x56e286(0xf0)]){_0xa769b3[_0x56e286(0x10d)](resolve(_0x559c02,_0x39b47c[_0x56e286(0xc3)]));}}return _0xa769b3;}function analyse(_0x6092a9){const _0x4741ce=a127_0x204f76;let _0x34ba18=null;const _0x30583a=resolve(_0x6092a9,NEW_CONFIG_NAME),_0x35eb8c=existsSync(_0x30583a);for(const _0x5bd00c of LEGACY_CONFIG_NAMES){const _0x4ffd39=resolve(_0x6092a9,_0x5bd00c);if(existsSync(_0x4ffd39)){const _0x390eda=readConfigFile(_0x4ffd39),_0xc821fe=Object[_0x4741ce(0xc7)](_0x390eda)['filter'](_0x1ec3a2=>typeof _0x390eda[_0x1ec3a2]!==_0x4741ce(0xa1));_0x34ba18={'oldPath':_0x4ffd39,'hasNewConfig':_0x35eb8c,'fields':_0xc821fe};break;}}const _0x3b8ce4=[],_0x5ec328=resolve(_0x6092a9,_0x4741ce(0xdc));if(existsSync(_0x5ec328))_0x3b8ce4['push'](_0x5ec328);const _0x45eeca=resolve(_0x6092a9,_0x4741ce(0xd7));if(existsSync(_0x45eeca))_0x3b8ce4[_0x4741ce(0x10d)](_0x45eeca);const _0x112302=resolve(_0x6092a9,'.claude/skills/lovrabet');if(existsSync(_0x112302))_0x3b8ce4[_0x4741ce(0x10d)](_0x112302);for(const _0x3f3fc4 of collectIdeSkillFiles(_0x6092a9)){if(existsSync(_0x3f3fc4))_0x3b8ce4['push'](_0x3f3fc4);}let _0xf97471=null;const _0x332093=resolve(_0x6092a9,_0x4741ce(0xd5));if(existsSync(_0x332093))try{const _0x224a6d=JSON[_0x4741ce(0x106)](readFileSync(_0x332093,_0x4741ce(0xd1)));if(_0x224a6d?.[_0x4741ce(0x95)]&&typeof _0x224a6d[_0x4741ce(0x95)]===_0x4741ce(0x10e)){const _0x2af64e=[];for(const [_0x1b16ab,_0x5d6062]of Object['entries'](_0x224a6d[_0x4741ce(0x95)])){const _0x5cbe65=_0x5d6062;_0x5cbe65?.[_0x4741ce(0x94)]&&Array[_0x4741ce(0xf5)](_0x5cbe65[_0x4741ce(0x94)])&&_0x5cbe65[_0x4741ce(0x94)][_0x4741ce(0xb0)](_0x2798b9=>typeof _0x2798b9===_0x4741ce(0xb9)&&_0x2798b9[_0x4741ce(0x100)](_0x4741ce(0xde)))&&_0x2af64e[_0x4741ce(0x10d)](_0x1b16ab);}_0x2af64e['length']>0x0&&(_0xf97471={'path':_0x332093,'keys':_0x2af64e});}}catch{}const _0x46cfb0=_0x3b8ce4['length']>0x0||_0x34ba18!==null;let _0x58a4eb=null;const _0x268c90=resolve(_0x6092a9,_0x4741ce(0x104));if(existsSync(_0x268c90))try{const _0x385c1d=JSON[_0x4741ce(0x106)](readFileSync(_0x268c90,_0x4741ce(0xd1)));for(const _0x4a1c6f of[_0x4741ce(0x114),'devDependencies']){const _0x3cc362=_0x385c1d?.[_0x4a1c6f]?.['@lovrabet/sdk'];if(typeof _0x3cc362==='string'){_0x3cc362!==_0x4741ce(0x113)&&(_0x58a4eb={'pkgPath':_0x268c90,'currentVersion':_0x3cc362,'field':_0x4a1c6f});break;}}}catch{}return{'configMigration':_0x34ba18,'oldArtifacts':_0x3b8ce4,'oldMcpConfig':_0xf97471,'needsSkillSwap':_0x46cfb0,'sdkUpgrade':_0x58a4eb};}function printReport(_0xeb1510){const _0x15bbb7=a127_0x204f76,{configMigration:_0x477d44,oldArtifacts:_0x4b16cf,oldMcpConfig:_0x26a507,needsSkillSwap:_0x2b7931}=_0xeb1510;console[_0x15bbb7(0xeb)](''),console[_0x15bbb7(0xeb)](a127_0x235d05[_0x15bbb7(0x97)](_0x15bbb7(0xf8))),console[_0x15bbb7(0xeb)]('');_0x477d44?(console[_0x15bbb7(0xeb)](a127_0x235d05['cyan'](_0x15bbb7(0xf6))+('\x20\x20'+a127_0x235d05[_0x15bbb7(0x117)](_0x477d44[_0x15bbb7(0xfd)]))),console['log'](_0x15bbb7(0xbe)+(_0x477d44[_0x15bbb7(0xe3)]?a127_0x235d05[_0x15bbb7(0xd9)]('already\x20exists\x20(will\x20merge)'):a127_0x235d05[_0x15bbb7(0xef)](_0x15bbb7(0xa9)))),console[_0x15bbb7(0xeb)](_0x15bbb7(0xce)+_0x477d44[_0x15bbb7(0xb6)][_0x15bbb7(0xcd)](',\x20')),console[_0x15bbb7(0xeb)](_0x15bbb7(0x108))):console[_0x15bbb7(0xeb)](a127_0x235d05['cyan'](_0x15bbb7(0xf6))+'\x20\x20'+a127_0x235d05['gray'](_0x15bbb7(0x10a)));console[_0x15bbb7(0xeb)]('');if(_0x4b16cf[_0x15bbb7(0xd0)]>0x0){console['log'](a127_0x235d05[_0x15bbb7(0x9d)](_0x15bbb7(0x98)));for(const _0x3988a4 of _0x4b16cf){console[_0x15bbb7(0xeb)]('\x20\x20'+a127_0x235d05[_0x15bbb7(0x112)]('FOUND')+'\x20\x20'+_0x3988a4);}console[_0x15bbb7(0xeb)](_0x15bbb7(0x10b));}else console[_0x15bbb7(0xeb)](a127_0x235d05['cyan'](_0x15bbb7(0x98))+'\x20\x20'+a127_0x235d05[_0x15bbb7(0xef)](_0x15bbb7(0xe7)));console[_0x15bbb7(0xeb)]('');_0x26a507?(console['log'](a127_0x235d05[_0x15bbb7(0x9d)]('MCP\x20config:')+('\x20\x20'+a127_0x235d05[_0x15bbb7(0x117)](_0x26a507['path'])+_0x15bbb7(0xa0)+_0x26a507[_0x15bbb7(0xc7)][_0x15bbb7(0xcd)](',\x20'))),console[_0x15bbb7(0xeb)](_0x15bbb7(0x115))):console[_0x15bbb7(0xeb)](a127_0x235d05[_0x15bbb7(0x9d)](_0x15bbb7(0xa6))+'\x20\x20'+a127_0x235d05[_0x15bbb7(0xef)](_0x15bbb7(0xc6)));console[_0x15bbb7(0xeb)](''),console['log'](a127_0x235d05[_0x15bbb7(0x9d)]('Skill\x20swap:')+('\x20\x20'+(_0x2b7931?a127_0x235d05['yellow'](_0x15bbb7(0x99)):a127_0x235d05[_0x15bbb7(0xd9)](_0x15bbb7(0xba)))));_0x2b7931&&console['log'](_0x15bbb7(0xd6)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x15bbb7(0xeb)]('');if(_0xeb1510['sdkUpgrade']){const {currentVersion:_0x127cde,field:_0x11046e,pkgPath:_0x235535}=_0xeb1510[_0x15bbb7(0xfb)];console['log'](a127_0x235d05[_0x15bbb7(0x9d)](_0x15bbb7(0xb4))+('\x20\x20'+a127_0x235d05[_0x15bbb7(0x117)](_0x235535))),console['log'](_0x15bbb7(0xf1)+_0x11046e+':\x20'+a127_0x235d05[_0x15bbb7(0x117)](_0x127cde)+_0x15bbb7(0x96)+a127_0x235d05[_0x15bbb7(0xd9)](_0x15bbb7(0x113))),console[_0x15bbb7(0xeb)](_0x15bbb7(0xb7));}else console['log'](a127_0x235d05['cyan'](_0x15bbb7(0xb4))+'\x20\x20'+a127_0x235d05[_0x15bbb7(0xef)]('not\x20found\x20or\x20already\x20at\x20latest'));console[_0x15bbb7(0xeb)]('');}function execConfigMigration(_0x24f400,_0x55f24d){const _0xb487dd=a127_0x204f76,{configMigration:_0x1c3912}=_0x24f400;if(!_0x1c3912?.['oldPath'])return{'step':0x1,'label':_0xb487dd(0xe2),'ok':!![],'detail':_0xb487dd(0xd8)};const _0x5b66fd=readConfigFile(_0x1c3912[_0xb487dd(0xfd)]),_0x2555fb=resolve(_0x55f24d,NEW_CONFIG_NAME),_0x1c9912=_0x1c3912[_0xb487dd(0xe3)]?readConfigFile(_0x2555fb):{};for(const [_0x425677,_0x19f08a]of Object[_0xb487dd(0xc0)](_0x5b66fd)){!(_0x425677 in _0x1c9912)&&(_0x1c9912[_0x425677]=_0x19f08a);}writeConfigFile(_0x2555fb,_0x1c9912);const _0x4d4677=_0x1c3912[_0xb487dd(0xfd)]+_0xb487dd(0xb3);return renameSync(_0x1c3912['oldPath'],_0x4d4677),{'step':0x1,'label':_0xb487dd(0xe2),'ok':!![],'detail':_0x1c3912[_0xb487dd(0xfd)]+_0xb487dd(0x96)+_0x2555fb+'\x20(backup:\x20'+_0x4d4677+')'};}function execRemoveOldArtifacts(_0x30cdc4){const _0x26f9be=a127_0x204f76,_0x351d68=[];for(const _0x5d691f of _0x30cdc4){try{if(!existsSync(_0x5d691f))continue;const _0x2594ef=tryStat(_0x5d691f);_0x2594ef?.[_0x26f9be(0x102)]()?rmSync(_0x5d691f,{'recursive':!![],'force':!![]}):unlinkSync(_0x5d691f);}catch(_0x58faea){_0x351d68['push'](_0x5d691f+':\x20'+_0x58faea[_0x26f9be(0x103)]);}}return{'step':0x3,'label':'Remove\x20legacy\x20artifacts','ok':_0x351d68[_0x26f9be(0xd0)]===0x0,'detail':_0x351d68[_0x26f9be(0xd0)]>0x0?_0x30cdc4['length']-_0x351d68[_0x26f9be(0xd0)]+'/'+_0x30cdc4[_0x26f9be(0xd0)]+_0x26f9be(0x105)+_0x351d68['join'](';\x20')+')':_0x30cdc4['length']+_0x26f9be(0xe9)};}function execCleanMcp(_0x7bac78){const _0x55e6a2=a127_0x204f76;if(!_0x7bac78[_0x55e6a2(0xda)])return{'step':0x4,'label':_0x55e6a2(0xbd),'ok':!![],'detail':_0x55e6a2(0xbc)};try{const _0x2e46b9=readFileSync(_0x7bac78['oldMcpConfig'][_0x55e6a2(0xc3)],'utf8'),_0x5e7de8=JSON[_0x55e6a2(0x106)](_0x2e46b9);if(_0x5e7de8?.['mcpServers']&&typeof _0x5e7de8['mcpServers']===_0x55e6a2(0x10e)){const _0x2d813f=[];for(const [_0x3935a6,_0x5c0e31]of Object[_0x55e6a2(0xc0)](_0x5e7de8[_0x55e6a2(0x95)])){_0x5c0e31?.['args']&&Array['isArray'](_0x5c0e31[_0x55e6a2(0x94)])&&_0x5c0e31[_0x55e6a2(0x94)][_0x55e6a2(0xb0)](_0x3d5a18=>typeof _0x3d5a18==='string'&&_0x3d5a18[_0x55e6a2(0x100)](_0x55e6a2(0xde)))&&_0x2d813f['push'](_0x3935a6);}for(const _0x406c18 of _0x2d813f){delete _0x5e7de8[_0x55e6a2(0x95)][_0x406c18];}return _0x2d813f[_0x55e6a2(0xd0)]>0x0&&writeFileSync(_0x7bac78['oldMcpConfig'][_0x55e6a2(0xc3)],JSON[_0x55e6a2(0xf9)](_0x5e7de8,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':_0x55e6a2(0xbd),'ok':!![],'detail':'removed\x20'+_0x2d813f['join'](',\x20')+'\x20from\x20'+_0x7bac78[_0x55e6a2(0xda)][_0x55e6a2(0xc3)]};}return{'step':0x4,'label':_0x55e6a2(0xbd),'ok':!![],'detail':_0x55e6a2(0xf3)};}catch(_0x255a75){return{'step':0x4,'label':_0x55e6a2(0xbd),'ok':![],'detail':_0x255a75['message']};}}function execSkillsRemove(_0x5bae5d,_0x3e8078){const _0xb3da=a127_0x204f76,_0x5c7e54=runNpxSkillsRemove(_0x5bae5d,{'stdio':_0xb3da(0xa8),'yes':_0x3e8078});return{'step':0x5,'label':_0xb3da(0xca),'ok':_0x5c7e54['ok'],'detail':_0x5c7e54['ok']?_0xb3da(0x101):_0x5c7e54['error']??_0xb3da(0x9b)+_0x5c7e54['status']};}function execSkillsAdd(_0x47e0cb,_0x25f213){const _0x1faefb=a127_0x204f76,_0x28e80f=runNpxSkillsAddGlobal(_0x47e0cb,_0x1faefb(0xa7),{'stdio':'inherit','yes':_0x25f213});return{'step':0x6,'label':'Install\x20new\x20skill','ok':_0x28e80f['ok'],'detail':_0x28e80f['ok']?_0x1faefb(0xdb):_0x28e80f[_0x1faefb(0xc2)]??_0x1faefb(0x9b)+_0x28e80f[_0x1faefb(0xa2)]};}function execUpgradeSdk(_0x251986){const _0xd2bdbf=a127_0x204f76;if(!_0x251986[_0xd2bdbf(0xfb)])return{'step':0x7,'label':_0xd2bdbf(0xcf),'ok':!![],'detail':_0xd2bdbf(0xa4)};const {pkgPath:_0x1df2b1,currentVersion:_0x56ad46,field:_0x33c9f2}=_0x251986['sdkUpgrade'];try{const _0x2b0c57=readFileSync(_0x1df2b1,_0xd2bdbf(0xd1)),_0x9745c3=JSON[_0xd2bdbf(0x106)](_0x2b0c57);return _0x9745c3[_0x33c9f2][_0xd2bdbf(0xaf)]=_0xd2bdbf(0x113),writeFileSync(_0x1df2b1,JSON[_0xd2bdbf(0xf9)](_0x9745c3,null,0x2)+'\x0a',_0xd2bdbf(0xd1)),{'step':0x7,'label':_0xd2bdbf(0xcf),'ok':!![],'detail':_0x33c9f2+'[\x22@lovrabet/sdk\x22]:\x20'+_0x56ad46+'\x20→\x20latest'};}catch(_0x44a9ff){return{'step':0x7,'label':_0xd2bdbf(0xcf),'ok':![],'detail':_0x44a9ff[_0xd2bdbf(0x103)]};}}function a127_0x1b54(){const _0x2051d5=['needed','1056PEmAxP','exit\x20','Step\x205/7:\x20Removing\x20old\x20skill...','cyan','5MOQhrS','90790QzkeUc','\x20→\x20keys:\x20','undefined','status','\x20\x20Step\x20','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','needsSkillSwap','MCP\x20config:','lovrabet/rabetbase','inherit','not\x20found\x20(will\x20create)','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','Step\x201/7:\x20Migrating\x20config...','FAIL','Proceed\x20with\x20upgrade?','\x20\x20bun\x20install','@lovrabet/sdk','some','841384WgXcED','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','.bak','@lovrabet/sdk:','10158lajkoZ','fields','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','info','string','not\x20needed','Step\x206/7:\x20Installing\x20new\x20skill...','skipped','Clean\x20MCP\x20config','\x20\x20New\x20config\x20(.rabetbase.json):\x20','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','entries','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','error','path','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','Step\x204/7:\x20MCP\x20config\x20—\x20','no\x20legacy\x20entry','keys','step','130401YuZnCm','Remove\x20old\x20skill','\x20\x20#\x20or','Upgrade\x20cancelled.','join','\x20\x20Fields\x20to\x20migrate:\x20','Upgrade\x20@lovrabet/sdk','length','utf8','cwd','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','values','.cursor/mcp.json','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','.cursor/rules/lovrabet_rules.mdc','skipped\x20(no\x20legacy\x20config)','green','oldMcpConfig','lovrabet/rabetbase\x20installed\x20globally','.lovrabet','===\x20Upgrade\x20Summary\x20===','@lovrabet/dataset-mcp-server','\x20\x20\x20\x20\x20\x20\x20','failed','6FwUblU','Config\x20migration','hasNewConfig','yes','702196wFvjVd','succeed','none\x20found','fail','\x20removed','Step\x201/7:\x20Config\x20migration\x20—\x20','log','oldArtifacts','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','white','gray','files','\x20\x20Current\x20version\x20in\x20','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','no\x20matching\x20entry\x20found','144lPUDVX','isArray','Config\x20file:','8676ckFHbD','===\x20Upgrade\x20Analysis\x20===','stringify','Remove\x20.lovrabet/','sdkUpgrade','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','oldPath','detail','Step\x204/7:\x20Cleaning\x20MCP\x20config...','includes','lovrabet/lovrabet-skill\x20removed','isDirectory','message','package.json','\x20removed\x20(','parse','399mDHoGM','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','21778aGKruy','no\x20legacy\x20config\x20found','\x20\x20Action:\x20delete','CANCEL','push','object','filter','done','start','red','latest','dependencies','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','label','yellow','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','args','mcpServers','\x20→\x20','bold','Legacy\x20artifacts:'];a127_0x1b54=function(){return _0x2051d5;};return a127_0x1b54();}function tryStat(_0x58ce88){try{return statSync(_0x58ce88);}catch{return undefined;}}function printSummary(_0x2ef0b1){const _0x5d037c=a127_0x204f76;console[_0x5d037c(0xeb)](''),console[_0x5d037c(0xeb)](a127_0x235d05['bold'](_0x5d037c(0xdd))),console[_0x5d037c(0xeb)]('');for(const _0x521f23 of _0x2ef0b1){const _0x28d6d2=_0x521f23['ok']?a127_0x235d05[_0x5d037c(0xd9)]('OK'):a127_0x235d05[_0x5d037c(0x112)](_0x5d037c(0xac));console[_0x5d037c(0xeb)]('\x20\x20'+_0x28d6d2+_0x5d037c(0xa3)+_0x521f23[_0x5d037c(0xc8)]+':\x20'+_0x521f23[_0x5d037c(0x116)]);if(_0x521f23['detail'])console[_0x5d037c(0xeb)](_0x5d037c(0xdf)+a127_0x235d05['gray'](_0x521f23[_0x5d037c(0xfe)]));}console[_0x5d037c(0xeb)]('');}function a127_0x1a3d(_0x10f90c,_0x1c17d8){_0x10f90c=_0x10f90c-0x93;const _0x1b54ef=a127_0x1b54();let _0x1a3dbb=_0x1b54ef[_0x10f90c];return _0x1a3dbb;}export async function upgradeApp(_0x4d0c18,_0x148427){const _0x5912bb=a127_0x204f76,_0x3f73f5=process[_0x5912bb(0xd2)](),_0x3a087f=analyse(_0x3f73f5),_0x109e27=!_0x3a087f['configMigration']&&_0x3a087f[_0x5912bb(0xec)][_0x5912bb(0xd0)]===0x0&&!_0x3a087f[_0x5912bb(0xda)]&&!_0x3a087f[_0x5912bb(0xa5)]&&!_0x3a087f[_0x5912bb(0xfb)];if(_0x109e27){console['log'](a127_0x235d05[_0x5912bb(0xd9)]('No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.'));return;}printReport(_0x3a087f);const _0x15c657=!!(_0x148427[_0x5912bb(0xe4)]||_0x148427['Y']||_0x4d0c18);if(!_0x15c657)try{const _0x257431=await askConfirm(_0x5912bb(0xad));if(!_0x257431){console[_0x5912bb(0xeb)](a127_0x235d05['gray'](_0x5912bb(0xcc)));return;}}catch(_0x1afc90){if(_0x1afc90?.[_0x5912bb(0x103)]===_0x5912bb(0x10c)){console[_0x5912bb(0xeb)](a127_0x235d05['gray']('Upgrade\x20cancelled.'));return;}throw _0x1afc90;}const _0x108ba8=[],_0x462dc6=a127_0x553d6a({'text':_0x5912bb(0xab),'color':_0x5912bb(0x9d)})[_0x5912bb(0x111)](),_0x1448b3=execConfigMigration(_0x3a087f,_0x3f73f5);_0x108ba8[_0x5912bb(0x10d)](_0x1448b3),_0x462dc6[_0x1448b3['ok']?'succeed':_0x5912bb(0xe8)](_0x5912bb(0xea)+(_0x1448b3['detail']??(_0x1448b3['ok']?_0x5912bb(0x110):'failed')));const _0x2d51ab=resolve(_0x3f73f5,_0x5912bb(0xdc)),_0x1df016=a127_0x553d6a({'text':_0x5912bb(0xc1),'color':_0x5912bb(0x9d)})[_0x5912bb(0x111)]();if(existsSync(_0x2d51ab))try{rmSync(_0x2d51ab,{'recursive':!![],'force':!![]}),_0x1df016[_0x5912bb(0xe6)]('Step\x202/7:\x20.lovrabet/\x20directory\x20removed'),_0x108ba8[_0x5912bb(0x10d)]({'step':0x2,'label':_0x5912bb(0xfa),'ok':!![]});}catch(_0x903af2){_0x1df016[_0x5912bb(0xe8)](_0x5912bb(0xc4)+_0x903af2[_0x5912bb(0x103)]),_0x108ba8[_0x5912bb(0x10d)]({'step':0x2,'label':_0x5912bb(0xfa),'ok':![],'detail':_0x903af2[_0x5912bb(0x103)]});}else _0x1df016[_0x5912bb(0xb8)](_0x5912bb(0xd3)),_0x108ba8[_0x5912bb(0x10d)]({'step':0x2,'label':_0x5912bb(0xfa),'ok':!![],'detail':_0x5912bb(0xbc)});const _0x2cb401=a127_0x553d6a({'text':_0x5912bb(0x93),'color':_0x5912bb(0x9d)})[_0x5912bb(0x111)](),_0x359322=execRemoveOldArtifacts(_0x3a087f[_0x5912bb(0xec)]);_0x108ba8[_0x5912bb(0x10d)](_0x359322),_0x2cb401[_0x359322['ok']?_0x5912bb(0xe6):_0x5912bb(0xe8)](_0x5912bb(0xbf)+(_0x359322['detail']??(_0x359322['ok']?_0x5912bb(0x110):_0x5912bb(0xe0))));const _0x278dab=a127_0x553d6a({'text':_0x5912bb(0xff),'color':_0x5912bb(0x9d)})['start'](),_0x14ee5e=execCleanMcp(_0x3a087f);_0x108ba8[_0x5912bb(0x10d)](_0x14ee5e),_0x278dab[_0x14ee5e['ok']?_0x5912bb(0xe6):_0x5912bb(0xe8)](_0x5912bb(0xc5)+(_0x14ee5e[_0x5912bb(0xfe)]??(_0x14ee5e['ok']?_0x5912bb(0x110):_0x5912bb(0xe0))));const _0x44d9ce=a127_0x553d6a({'text':_0x5912bb(0x9c),'color':'cyan'})[_0x5912bb(0x111)](),_0x30652f=execSkillsRemove(_0x3f73f5,_0x15c657);_0x108ba8[_0x5912bb(0x10d)](_0x30652f),_0x44d9ce[_0x30652f['ok']?_0x5912bb(0xe6):_0x5912bb(0xe8)](_0x5912bb(0xf2)+(_0x30652f[_0x5912bb(0xfe)]??(_0x30652f['ok']?_0x5912bb(0x110):_0x5912bb(0xe0))));const _0x1b52ee=a127_0x553d6a({'text':_0x5912bb(0xbb),'color':_0x5912bb(0x9d)})[_0x5912bb(0x111)](),_0x33edd1=execSkillsAdd(_0x3f73f5,_0x15c657);_0x108ba8[_0x5912bb(0x10d)](_0x33edd1),_0x1b52ee[_0x33edd1['ok']?'succeed':_0x5912bb(0xe8)](_0x5912bb(0xaa)+(_0x33edd1[_0x5912bb(0xfe)]??(_0x33edd1['ok']?_0x5912bb(0x110):_0x5912bb(0xe0))));const _0xd4fbc3=a127_0x553d6a({'text':'Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','color':_0x5912bb(0x9d)})[_0x5912bb(0x111)](),_0x21ed69=execUpgradeSdk(_0x3a087f);_0x108ba8[_0x5912bb(0x10d)](_0x21ed69),_0xd4fbc3[_0x21ed69['ok']?_0x5912bb(0xe6):_0x5912bb(0xe8)]('Step\x207/7:\x20@lovrabet/sdk\x20—\x20'+(_0x21ed69[_0x5912bb(0xfe)]??(_0x21ed69['ok']?'done':_0x5912bb(0xe0)))),printSummary(_0x108ba8);const _0x394956=_0x108ba8[_0x5912bb(0xb0)](_0xe10b9e=>!_0xe10b9e['ok']);_0x394956?console['log'](a127_0x235d05[_0x5912bb(0x117)](_0x5912bb(0xfc))):console[_0x5912bb(0xeb)](a127_0x235d05[_0x5912bb(0xd9)]('Upgrade\x20completed\x20successfully!')),_0x21ed69['ok']&&_0x3a087f[_0x5912bb(0xfb)]&&(console[_0x5912bb(0xeb)](''),console[_0x5912bb(0xeb)](a127_0x235d05[_0x5912bb(0x97)][_0x5912bb(0x9d)](_0x5912bb(0xb2))),console['log'](a127_0x235d05['cyan'](_0x5912bb(0xed))),console[_0x5912bb(0xeb)](''),console[_0x5912bb(0xeb)](a127_0x235d05['white']('\x20\x20npm\x20install')),console[_0x5912bb(0xeb)](a127_0x235d05[_0x5912bb(0xee)](_0x5912bb(0xcb))),console[_0x5912bb(0xeb)](a127_0x235d05['white'](_0x5912bb(0xae))),console[_0x5912bb(0xeb)](''));}
|
|
1
|
+
(function(_0xdeffbd,_0x582de6){const _0x1f11c9=a128_0x6e84,_0x531e9d=_0xdeffbd();while(!![]){try{const _0x63ea96=-parseInt(_0x1f11c9(0x7e))/0x1*(-parseInt(_0x1f11c9(0x7f))/0x2)+-parseInt(_0x1f11c9(0xd4))/0x3+-parseInt(_0x1f11c9(0x95))/0x4*(-parseInt(_0x1f11c9(0xcb))/0x5)+parseInt(_0x1f11c9(0x91))/0x6+-parseInt(_0x1f11c9(0xdb))/0x7*(parseInt(_0x1f11c9(0x74))/0x8)+parseInt(_0x1f11c9(0xaf))/0x9+-parseInt(_0x1f11c9(0xb5))/0xa;if(_0x63ea96===_0x582de6)break;else _0x531e9d['push'](_0x531e9d['shift']());}catch(_0x2c7b54){_0x531e9d['push'](_0x531e9d['shift']());}}}(a128_0xb82f,0xea41f));import a128_0x4a6bd1 from'chalk';import a128_0x4d3759 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['filter'](_0x29285c=>_0x29285c!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x479272){const _0x535e13=a128_0x6e84,_0x3fbe4b=[];for(const _0x41d4c5 of Object[_0x535e13(0xc8)](CORE_IDE_CONFIGS)){if(_0x41d4c5[_0x535e13(0x9c)])for(const _0x485544 of _0x41d4c5[_0x535e13(0x9c)]){_0x3fbe4b[_0x535e13(0xde)](resolve(_0x479272,_0x485544[_0x535e13(0xcc)]));}}return _0x3fbe4b;}function analyse(_0x49319b){const _0x2f150e=a128_0x6e84;let _0xd0537a=null;const _0x3af7ba=resolve(_0x49319b,NEW_CONFIG_NAME),_0x3fa989=existsSync(_0x3af7ba);for(const _0x48189d of LEGACY_CONFIG_NAMES){const _0x276837=resolve(_0x49319b,_0x48189d);if(existsSync(_0x276837)){const _0x4c3a74=readConfigFile(_0x276837),_0x1d82d6=Object['keys'](_0x4c3a74)[_0x2f150e(0x9b)](_0x3b9bdd=>typeof _0x4c3a74[_0x3b9bdd]!==_0x2f150e(0x82));_0xd0537a={'oldPath':_0x276837,'hasNewConfig':_0x3fa989,'fields':_0x1d82d6};break;}}const _0x38dccc=[],_0x1d9db3=resolve(_0x49319b,_0x2f150e(0x97));if(existsSync(_0x1d9db3))_0x38dccc[_0x2f150e(0xde)](_0x1d9db3);const _0x13d05f=resolve(_0x49319b,_0x2f150e(0x78));if(existsSync(_0x13d05f))_0x38dccc[_0x2f150e(0xde)](_0x13d05f);const _0x3cea0f=resolve(_0x49319b,_0x2f150e(0x70));if(existsSync(_0x3cea0f))_0x38dccc[_0x2f150e(0xde)](_0x3cea0f);for(const _0xf9ae16 of collectIdeSkillFiles(_0x49319b)){if(existsSync(_0xf9ae16))_0x38dccc[_0x2f150e(0xde)](_0xf9ae16);}let _0xfc02f0=null;const _0x155746=resolve(_0x49319b,_0x2f150e(0x9e));if(existsSync(_0x155746))try{const _0x1ec5bb=JSON[_0x2f150e(0x8d)](readFileSync(_0x155746,_0x2f150e(0x86)));if(_0x1ec5bb?.[_0x2f150e(0xa0)]&&typeof _0x1ec5bb[_0x2f150e(0xa0)]==='object'){const _0x2fc1aa=[];for(const [_0xd01ad4,_0xbd053c]of Object[_0x2f150e(0x94)](_0x1ec5bb[_0x2f150e(0xa0)])){const _0x2a18ab=_0xbd053c;_0x2a18ab?.['args']&&Array[_0x2f150e(0x88)](_0x2a18ab['args'])&&_0x2a18ab['args']['some'](_0x3100a4=>typeof _0x3100a4===_0x2f150e(0x8a)&&_0x3100a4[_0x2f150e(0x75)](_0x2f150e(0x93)))&&_0x2fc1aa[_0x2f150e(0xde)](_0xd01ad4);}_0x2fc1aa['length']>0x0&&(_0xfc02f0={'path':_0x155746,'keys':_0x2fc1aa});}}catch{}const _0x474248=_0x38dccc[_0x2f150e(0xb3)]>0x0||_0xd0537a!==null;let _0x17c02d=null;const _0xf41fff=resolve(_0x49319b,_0x2f150e(0x7d));if(existsSync(_0xf41fff))try{const _0x567ec2=JSON['parse'](readFileSync(_0xf41fff,_0x2f150e(0x86)));for(const _0x2393fa of[_0x2f150e(0xae),_0x2f150e(0x72)]){const _0x2c931e=_0x567ec2?.[_0x2393fa]?.[_0x2f150e(0xc6)];if(typeof _0x2c931e===_0x2f150e(0x8a)){_0x2c931e!=='latest'&&(_0x17c02d={'pkgPath':_0xf41fff,'currentVersion':_0x2c931e,'field':_0x2393fa});break;}}}catch{}return{'configMigration':_0xd0537a,'oldArtifacts':_0x38dccc,'oldMcpConfig':_0xfc02f0,'needsSkillSwap':_0x474248,'sdkUpgrade':_0x17c02d};}function printReport(_0x321ae7){const _0x518d58=a128_0x6e84,{configMigration:_0x4baa3b,oldArtifacts:_0x525ff9,oldMcpConfig:_0x185895,needsSkillSwap:_0x43471e}=_0x321ae7;console[_0x518d58(0xc9)](''),console[_0x518d58(0xc9)](a128_0x4a6bd1[_0x518d58(0xa6)](_0x518d58(0xba))),console['log']('');_0x4baa3b?(console[_0x518d58(0xc9)](a128_0x4a6bd1[_0x518d58(0xbe)]('Config\x20file:')+('\x20\x20'+a128_0x4a6bd1['yellow'](_0x4baa3b[_0x518d58(0x98)]))),console['log'](_0x518d58(0xe9)+(_0x4baa3b[_0x518d58(0xda)]?a128_0x4a6bd1[_0x518d58(0x92)]('already\x20exists\x20(will\x20merge)'):a128_0x4a6bd1[_0x518d58(0x96)](_0x518d58(0xb6)))),console['log'](_0x518d58(0x8f)+_0x4baa3b['fields']['join'](',\x20')),console['log'](_0x518d58(0x9d))):console[_0x518d58(0xc9)](a128_0x4a6bd1[_0x518d58(0xbe)](_0x518d58(0x81))+'\x20\x20'+a128_0x4a6bd1[_0x518d58(0x96)](_0x518d58(0xa4)));console[_0x518d58(0xc9)]('');if(_0x525ff9[_0x518d58(0xb3)]>0x0){console[_0x518d58(0xc9)](a128_0x4a6bd1['cyan'](_0x518d58(0x87)));for(const _0x468967 of _0x525ff9){console[_0x518d58(0xc9)]('\x20\x20'+a128_0x4a6bd1[_0x518d58(0xd9)]('FOUND')+'\x20\x20'+_0x468967);}console[_0x518d58(0xc9)]('\x20\x20Action:\x20delete');}else console[_0x518d58(0xc9)](a128_0x4a6bd1[_0x518d58(0xbe)](_0x518d58(0x87))+'\x20\x20'+a128_0x4a6bd1[_0x518d58(0x96)]('none\x20found'));console[_0x518d58(0xc9)]('');_0x185895?(console['log'](a128_0x4a6bd1[_0x518d58(0xbe)](_0x518d58(0x6e))+('\x20\x20'+a128_0x4a6bd1[_0x518d58(0x9a)](_0x185895['path'])+_0x518d58(0xe7)+_0x185895[_0x518d58(0x7c)][_0x518d58(0xd5)](',\x20'))),console[_0x518d58(0xc9)](_0x518d58(0x7b))):console[_0x518d58(0xc9)](a128_0x4a6bd1[_0x518d58(0xbe)](_0x518d58(0x6e))+'\x20\x20'+a128_0x4a6bd1['gray']('no\x20legacy\x20entry'));console[_0x518d58(0xc9)](''),console['log'](a128_0x4a6bd1[_0x518d58(0xbe)]('Skill\x20swap:')+('\x20\x20'+(_0x43471e?a128_0x4a6bd1[_0x518d58(0x9a)](_0x518d58(0xe6)):a128_0x4a6bd1[_0x518d58(0x92)]('not\x20needed'))));_0x43471e&&console['log'](_0x518d58(0xdf)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x518d58(0xc9)]('');if(_0x321ae7[_0x518d58(0xc5)]){const {currentVersion:_0x942da1,field:_0x3cc65e,pkgPath:_0x28f507}=_0x321ae7['sdkUpgrade'];console[_0x518d58(0xc9)](a128_0x4a6bd1['cyan']('@lovrabet/sdk:')+('\x20\x20'+a128_0x4a6bd1['yellow'](_0x28f507))),console['log'](_0x518d58(0xc0)+_0x3cc65e+':\x20'+a128_0x4a6bd1['yellow'](_0x942da1)+'\x20→\x20'+a128_0x4a6bd1[_0x518d58(0x92)]('latest')),console[_0x518d58(0xc9)](_0x518d58(0x6c));}else console[_0x518d58(0xc9)](a128_0x4a6bd1[_0x518d58(0xbe)](_0x518d58(0xa2))+'\x20\x20'+a128_0x4a6bd1['gray'](_0x518d58(0xe5)));console[_0x518d58(0xc9)]('');}function execConfigMigration(_0x449c1b,_0x168f15){const _0x31513c=a128_0x6e84,{configMigration:_0x58d1ed}=_0x449c1b;if(!_0x58d1ed?.[_0x31513c(0x98)])return{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x31513c(0xd8)};const _0x37e5e2=readConfigFile(_0x58d1ed['oldPath']),_0x4fd209=resolve(_0x168f15,NEW_CONFIG_NAME),_0x4dcf3e=_0x58d1ed[_0x31513c(0xda)]?readConfigFile(_0x4fd209):{};for(const [_0x4314e4,_0x359441]of Object[_0x31513c(0x94)](_0x37e5e2)){!(_0x4314e4 in _0x4dcf3e)&&(_0x4dcf3e[_0x4314e4]=_0x359441);}writeConfigFile(_0x4fd209,_0x4dcf3e);const _0x7091a4=_0x58d1ed[_0x31513c(0x98)]+_0x31513c(0xce);return renameSync(_0x58d1ed[_0x31513c(0x98)],_0x7091a4),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x58d1ed[_0x31513c(0x98)]+_0x31513c(0xa8)+_0x4fd209+'\x20(backup:\x20'+_0x7091a4+')'};}function execRemoveOldArtifacts(_0x324d4c){const _0x5a6a34=a128_0x6e84,_0x4b7ac7=[];for(const _0x2ed421 of _0x324d4c){try{if(!existsSync(_0x2ed421))continue;const _0x81e98c=tryStat(_0x2ed421);_0x81e98c?.['isDirectory']()?rmSync(_0x2ed421,{'recursive':!![],'force':!![]}):unlinkSync(_0x2ed421);}catch(_0x559c42){_0x4b7ac7[_0x5a6a34(0xde)](_0x2ed421+':\x20'+_0x559c42[_0x5a6a34(0x6f)]);}}return{'step':0x3,'label':_0x5a6a34(0x84),'ok':_0x4b7ac7[_0x5a6a34(0xb3)]===0x0,'detail':_0x4b7ac7[_0x5a6a34(0xb3)]>0x0?_0x324d4c['length']-_0x4b7ac7[_0x5a6a34(0xb3)]+'/'+_0x324d4c[_0x5a6a34(0xb3)]+_0x5a6a34(0x76)+_0x4b7ac7['join'](';\x20')+')':_0x324d4c[_0x5a6a34(0xb3)]+_0x5a6a34(0xe4)};}function execCleanMcp(_0x112a5f){const _0x5d1b2b=a128_0x6e84;if(!_0x112a5f[_0x5d1b2b(0xc1)])return{'step':0x4,'label':_0x5d1b2b(0xd1),'ok':!![],'detail':_0x5d1b2b(0x89)};try{const _0x333630=readFileSync(_0x112a5f['oldMcpConfig'][_0x5d1b2b(0xcc)],_0x5d1b2b(0x86)),_0x203b00=JSON['parse'](_0x333630);if(_0x203b00?.['mcpServers']&&typeof _0x203b00[_0x5d1b2b(0xa0)]==='object'){const _0x374457=[];for(const [_0x2cabf2,_0x315aaf]of Object[_0x5d1b2b(0x94)](_0x203b00[_0x5d1b2b(0xa0)])){_0x315aaf?.['args']&&Array[_0x5d1b2b(0x88)](_0x315aaf['args'])&&_0x315aaf[_0x5d1b2b(0x8e)][_0x5d1b2b(0x6d)](_0x468920=>typeof _0x468920===_0x5d1b2b(0x8a)&&_0x468920[_0x5d1b2b(0x75)](_0x5d1b2b(0x93)))&&_0x374457['push'](_0x2cabf2);}for(const _0x3b3c02 of _0x374457){delete _0x203b00[_0x5d1b2b(0xa0)][_0x3b3c02];}return _0x374457[_0x5d1b2b(0xb3)]>0x0&&writeFileSync(_0x112a5f[_0x5d1b2b(0xc1)][_0x5d1b2b(0xcc)],JSON[_0x5d1b2b(0xc7)](_0x203b00,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':_0x5d1b2b(0xd1),'ok':!![],'detail':'removed\x20'+_0x374457[_0x5d1b2b(0xd5)](',\x20')+_0x5d1b2b(0xdd)+_0x112a5f[_0x5d1b2b(0xc1)]['path']};}return{'step':0x4,'label':_0x5d1b2b(0xd1),'ok':!![],'detail':_0x5d1b2b(0x71)};}catch(_0x627a43){return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':![],'detail':_0x627a43[_0x5d1b2b(0x6f)]};}}function execSkillsRemove(_0x47a0fa,_0x565f80){const _0x1efc59=a128_0x6e84,_0x2267b7=runNpxSkillsRemove(_0x47a0fa,{'stdio':'inherit','yes':_0x565f80});return{'step':0x5,'label':_0x1efc59(0xaa),'ok':_0x2267b7['ok'],'detail':_0x2267b7['ok']?_0x1efc59(0x99):_0x2267b7[_0x1efc59(0x7a)]??'exit\x20'+_0x2267b7[_0x1efc59(0xab)]};}function execSkillsAdd(_0x35fcfa,_0x4cfb6e){const _0x46f387=a128_0x6e84,_0x3ad7e7=runNpxSkillsAddGlobal(_0x35fcfa,_0x46f387(0xd6),{'stdio':_0x46f387(0xd3),'yes':_0x4cfb6e});return{'step':0x6,'label':_0x46f387(0xa1),'ok':_0x3ad7e7['ok'],'detail':_0x3ad7e7['ok']?_0x46f387(0x8c):_0x3ad7e7[_0x46f387(0x7a)]??_0x46f387(0x80)+_0x3ad7e7[_0x46f387(0xab)]};}function execUpgradeSdk(_0x4b0384){const _0x18073a=a128_0x6e84;if(!_0x4b0384[_0x18073a(0xc5)])return{'step':0x7,'label':_0x18073a(0x79),'ok':!![],'detail':_0x18073a(0xcf)};const {pkgPath:_0x480132,currentVersion:_0x23d2df,field:_0x2f04e0}=_0x4b0384['sdkUpgrade'];try{const _0x29fddf=readFileSync(_0x480132,_0x18073a(0x86)),_0x569fff=JSON[_0x18073a(0x8d)](_0x29fddf);return _0x569fff[_0x2f04e0][_0x18073a(0xc6)]=_0x18073a(0xc3),writeFileSync(_0x480132,JSON['stringify'](_0x569fff,null,0x2)+'\x0a',_0x18073a(0x86)),{'step':0x7,'label':_0x18073a(0x79),'ok':!![],'detail':_0x2f04e0+_0x18073a(0xb7)+_0x23d2df+_0x18073a(0xb8)};}catch(_0x3532d6){return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':![],'detail':_0x3532d6[_0x18073a(0x6f)]};}}function a128_0xb82f(){const _0x447e30=['oldArtifacts','sdkUpgrade','@lovrabet/sdk','stringify','values','log','\x20\x20bun\x20install','490fssVkB','path','cwd','.bak','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','done','Clean\x20MCP\x20config','Upgrade\x20cancelled.','inherit','1981329rQGDMP','join','lovrabet/rabetbase','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','skipped\x20(no\x20legacy\x20config)','red','hasNewConfig','21vFqUTe','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','\x20from\x20','push','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','configMigration','\x20\x20#\x20or','\x20\x20Step\x20','white','\x20removed','not\x20found\x20or\x20already\x20at\x20latest','needed','\x20→\x20keys:\x20','Proceed\x20with\x20upgrade?','\x20\x20New\x20config\x20(.rabetbase.json):\x20','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','some','MCP\x20config:','message','.claude/skills/lovrabet','no\x20matching\x20entry\x20found','devDependencies','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','1778888hyoMXK','includes','\x20removed\x20(','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','.cursor/rules/lovrabet_rules.mdc','Upgrade\x20@lovrabet/sdk','error','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','keys','package.json','679192cOTZlh','2lnDRNs','exit\x20','Config\x20file:','undefined','FAIL','Remove\x20legacy\x20artifacts','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','utf8','Legacy\x20artifacts:','isArray','skipped','string','info','lovrabet/rabetbase\x20installed\x20globally','parse','args','\x20\x20Fields\x20to\x20migrate:\x20','Step\x205/7:\x20Removing\x20old\x20skill...','6958434jePMpq','green','@lovrabet/dataset-mcp-server','entries','45560AYDhpy','gray','.lovrabet','oldPath','lovrabet/lovrabet-skill\x20removed','yellow','filter','files','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','.cursor/mcp.json','start','mcpServers','Install\x20new\x20skill','@lovrabet/sdk:','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','no\x20legacy\x20config\x20found','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','bold','CANCEL','\x20→\x20','yes','Remove\x20old\x20skill','status','needsSkillSwap','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','dependencies','1202850XOsWcC','label','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','succeed','length','fail','8017560OABRvA','not\x20found\x20(will\x20create)','[\x22@lovrabet/sdk\x22]:\x20','\x20→\x20latest','failed','===\x20Upgrade\x20Analysis\x20===','Step\x204/7:\x20Cleaning\x20MCP\x20config...','step','detail','cyan','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','\x20\x20Current\x20version\x20in\x20','oldMcpConfig','Remove\x20.lovrabet/','latest'];a128_0xb82f=function(){return _0x447e30;};return a128_0xb82f();}function tryStat(_0x4d74b4){try{return statSync(_0x4d74b4);}catch{return undefined;}}function a128_0x6e84(_0x1c6de8,_0xd0c18f){_0x1c6de8=_0x1c6de8-0x6c;const _0xb82f41=a128_0xb82f();let _0x6e844b=_0xb82f41[_0x1c6de8];return _0x6e844b;}function printSummary(_0x2bcdda){const _0x215184=a128_0x6e84;console[_0x215184(0xc9)](''),console['log'](a128_0x4a6bd1[_0x215184(0xa6)]('===\x20Upgrade\x20Summary\x20===')),console['log']('');for(const _0x4a700b of _0x2bcdda){const _0x3d99d1=_0x4a700b['ok']?a128_0x4a6bd1['green']('OK'):a128_0x4a6bd1['red'](_0x215184(0x83));console['log']('\x20\x20'+_0x3d99d1+_0x215184(0xe2)+_0x4a700b[_0x215184(0xbc)]+':\x20'+_0x4a700b[_0x215184(0xb0)]);if(_0x4a700b['detail'])console[_0x215184(0xc9)]('\x20\x20\x20\x20\x20\x20\x20'+a128_0x4a6bd1['gray'](_0x4a700b[_0x215184(0xbd)]));}console[_0x215184(0xc9)]('');}export async function upgradeApp(_0x452789,_0x2afff5){const _0x4347c8=a128_0x6e84,_0xf86ee7=process[_0x4347c8(0xcd)](),_0x1b8448=analyse(_0xf86ee7),_0x331c47=!_0x1b8448[_0x4347c8(0xe0)]&&_0x1b8448['oldArtifacts']['length']===0x0&&!_0x1b8448[_0x4347c8(0xc1)]&&!_0x1b8448[_0x4347c8(0xac)]&&!_0x1b8448[_0x4347c8(0xc5)];if(_0x331c47){console[_0x4347c8(0xc9)](a128_0x4a6bd1[_0x4347c8(0x92)](_0x4347c8(0x73)));return;}printReport(_0x1b8448);const _0xa2b7d1=!!(_0x2afff5[_0x4347c8(0xa9)]||_0x2afff5['Y']||_0x452789);if(!_0xa2b7d1)try{const _0x4a691c=await askConfirm(_0x4347c8(0xe8));if(!_0x4a691c){console[_0x4347c8(0xc9)](a128_0x4a6bd1[_0x4347c8(0x96)](_0x4347c8(0xd2)));return;}}catch(_0x1812d2){if(_0x1812d2?.[_0x4347c8(0x6f)]===_0x4347c8(0xa7)){console[_0x4347c8(0xc9)](a128_0x4a6bd1[_0x4347c8(0x96)]('Upgrade\x20cancelled.'));return;}throw _0x1812d2;}const _0x4b923d=[],_0x1a21b4=a128_0x4d3759({'text':'Step\x201/7:\x20Migrating\x20config...','color':'cyan'})[_0x4347c8(0x9f)](),_0x5acb7f=execConfigMigration(_0x1b8448,_0xf86ee7);_0x4b923d[_0x4347c8(0xde)](_0x5acb7f),_0x1a21b4[_0x5acb7f['ok']?_0x4347c8(0xb2):'fail']('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0x5acb7f[_0x4347c8(0xbd)]??(_0x5acb7f['ok']?_0x4347c8(0xd0):_0x4347c8(0xb9))));const _0x1b57ef=resolve(_0xf86ee7,'.lovrabet'),_0x6c7542=a128_0x4d3759({'text':_0x4347c8(0x85),'color':_0x4347c8(0xbe)})[_0x4347c8(0x9f)]();if(existsSync(_0x1b57ef))try{rmSync(_0x1b57ef,{'recursive':!![],'force':!![]}),_0x6c7542[_0x4347c8(0xb2)](_0x4347c8(0xdc)),_0x4b923d[_0x4347c8(0xde)]({'step':0x2,'label':_0x4347c8(0xc2),'ok':!![]});}catch(_0x40aff4){_0x6c7542['fail']('Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20'+_0x40aff4[_0x4347c8(0x6f)]),_0x4b923d['push']({'step':0x2,'label':_0x4347c8(0xc2),'ok':![],'detail':_0x40aff4[_0x4347c8(0x6f)]});}else _0x6c7542[_0x4347c8(0x8b)](_0x4347c8(0xad)),_0x4b923d[_0x4347c8(0xde)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![],'detail':_0x4347c8(0x89)});const _0x5998eb=a128_0x4d3759({'text':_0x4347c8(0xd7),'color':'cyan'})[_0x4347c8(0x9f)](),_0x4fb36a=execRemoveOldArtifacts(_0x1b8448[_0x4347c8(0xc4)]);_0x4b923d[_0x4347c8(0xde)](_0x4fb36a),_0x5998eb[_0x4fb36a['ok']?_0x4347c8(0xb2):'fail'](_0x4347c8(0xbf)+(_0x4fb36a[_0x4347c8(0xbd)]??(_0x4fb36a['ok']?'done':_0x4347c8(0xb9))));const _0x278a52=a128_0x4d3759({'text':_0x4347c8(0xbb),'color':'cyan'})[_0x4347c8(0x9f)](),_0x407468=execCleanMcp(_0x1b8448);_0x4b923d[_0x4347c8(0xde)](_0x407468),_0x278a52[_0x407468['ok']?_0x4347c8(0xb2):_0x4347c8(0xb4)]('Step\x204/7:\x20MCP\x20config\x20—\x20'+(_0x407468['detail']??(_0x407468['ok']?'done':_0x4347c8(0xb9))));const _0x5d446f=a128_0x4d3759({'text':_0x4347c8(0x90),'color':'cyan'})[_0x4347c8(0x9f)](),_0x1ba871=execSkillsRemove(_0xf86ee7,_0xa2b7d1);_0x4b923d['push'](_0x1ba871),_0x5d446f[_0x1ba871['ok']?_0x4347c8(0xb2):_0x4347c8(0xb4)](_0x4347c8(0xa3)+(_0x1ba871[_0x4347c8(0xbd)]??(_0x1ba871['ok']?_0x4347c8(0xd0):'failed')));const _0x52df4a=a128_0x4d3759({'text':'Step\x206/7:\x20Installing\x20new\x20skill...','color':_0x4347c8(0xbe)})[_0x4347c8(0x9f)](),_0xd96693=execSkillsAdd(_0xf86ee7,_0xa2b7d1);_0x4b923d[_0x4347c8(0xde)](_0xd96693),_0x52df4a[_0xd96693['ok']?_0x4347c8(0xb2):_0x4347c8(0xb4)](_0x4347c8(0xb1)+(_0xd96693['detail']??(_0xd96693['ok']?_0x4347c8(0xd0):_0x4347c8(0xb9))));const _0x5e88d3=a128_0x4d3759({'text':_0x4347c8(0xa5),'color':_0x4347c8(0xbe)})[_0x4347c8(0x9f)](),_0x5da895=execUpgradeSdk(_0x1b8448);_0x4b923d['push'](_0x5da895),_0x5e88d3[_0x5da895['ok']?_0x4347c8(0xb2):_0x4347c8(0xb4)]('Step\x207/7:\x20@lovrabet/sdk\x20—\x20'+(_0x5da895[_0x4347c8(0xbd)]??(_0x5da895['ok']?_0x4347c8(0xd0):_0x4347c8(0xb9)))),printSummary(_0x4b923d);const _0x3f397a=_0x4b923d[_0x4347c8(0x6d)](_0x374682=>!_0x374682['ok']);_0x3f397a?console[_0x4347c8(0xc9)](a128_0x4a6bd1[_0x4347c8(0x9a)]('Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.')):console[_0x4347c8(0xc9)](a128_0x4a6bd1[_0x4347c8(0x92)]('Upgrade\x20completed\x20successfully!')),_0x5da895['ok']&&_0x1b8448['sdkUpgrade']&&(console['log'](''),console[_0x4347c8(0xc9)](a128_0x4a6bd1[_0x4347c8(0xa6)][_0x4347c8(0xbe)](_0x4347c8(0x77))),console['log'](a128_0x4a6bd1[_0x4347c8(0xbe)]('Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:')),console[_0x4347c8(0xc9)](''),console[_0x4347c8(0xc9)](a128_0x4a6bd1['white']('\x20\x20npm\x20install')),console[_0x4347c8(0xc9)](a128_0x4a6bd1['white'](_0x4347c8(0xe1))),console[_0x4347c8(0xc9)](a128_0x4a6bd1[_0x4347c8(0xe3)](_0x4347c8(0xca))),console[_0x4347c8(0xc9)](''));}
|
package/lib/commands/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a129_0x3217f5=a129_0x25eb;(function(_0x1ace3c,_0x315d60){const _0x315af1=a129_0x25eb,_0x1d8b90=_0x1ace3c();while(!![]){try{const _0x4a1647=-parseInt(_0x315af1(0xae))/0x1*(-parseInt(_0x315af1(0xa4))/0x2)+-parseInt(_0x315af1(0xa6))/0x3+-parseInt(_0x315af1(0x92))/0x4*(-parseInt(_0x315af1(0xb2))/0x5)+-parseInt(_0x315af1(0xa0))/0x6+-parseInt(_0x315af1(0xac))/0x7+-parseInt(_0x315af1(0x9f))/0x8+parseInt(_0x315af1(0xaa))/0x9;if(_0x4a1647===_0x315d60)break;else _0x1d8b90['push'](_0x1d8b90['shift']());}catch(_0x4f59d3){_0x1d8b90['push'](_0x1d8b90['shift']());}}}(a129_0x1d87,0xe2bfe));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{appDefinitions}from'../commands/app/index.js';import{appConfigDefinitions}from'../commands/app-config/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';function a129_0x1d87(){const _0x26c2de=['set','Run\x20Scripts','commands','228gkOFvF','project','skill','Self\x20Update','show','command','Diagnostics','skills','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','skill\x20','install','Database\x20Connections','has','1407088haEHUH','8030892vUHIui','`rabetbase\x20skills`\x20has\x20been\x20removed.','logout','Remote\x20App\x20Config','1746634VzvrXm','run','4519263MLCNMf','SQL\x20Queries','preview','`rabetbase\x20','26885340xrePxj','`\x20has\x20been\x20removed.','780437RdBway','App\x20Management','1jgGYru','Instant\x20API','map','write','17585vBnSfE','get','values','Logs','create','Authentication','length','service','Code\x20Generation','login','defaultCommand','Menu','\x20\x20[high-risk-write]','Workspace','wildcardDef','Quick\x20Start','CLI\x20Built-in\x20Skill','push','isSingleCommand','Run\x20any\x20package.json\x20script','<script>'];a129_0x1d87=function(){return _0x26c2de;};return a129_0x1d87();}import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{projectDefinitions}from'../commands/project/index.js';import{initDefinitions}from'../commands/init/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x468e95){const _0x5ea418=a129_0x25eb;for(const _0x38657f of _0x468e95){definitions[_0x5ea418(0x8f)](_0x38657f['service']+':'+_0x38657f[_0x5ea418(0x97)],_0x38657f);let _0x33c800=serviceGroups[_0x5ea418(0xb3)](_0x38657f[_0x5ea418(0xb9)]);!_0x33c800&&(_0x33c800=[],serviceGroups[_0x5ea418(0x8f)](_0x38657f[_0x5ea418(0xb9)],_0x33c800)),_0x33c800[_0x5ea418(0x8b)](_0x38657f);}}function registerDeclarativeService(_0x318faa,_0x2ca787,_0x15fe3d){const _0x499da1=a129_0x25eb;registerDefinitions(_0x2ca787);_0x15fe3d?.[_0x499da1(0x88)]&®isterDefinitions([_0x15fe3d['wildcardDef']]);const _0x13c5e1=_0x2dbe58=>_0x2dbe58==='read'?'':_0x2dbe58===_0x499da1(0xb1)?'\x20\x20[write]':_0x499da1(0x86),_0xc520a5={'service':_0x2ca787[0x0][_0x499da1(0xb9)],'label':_0x318faa,'commands':_0x2ca787[_0x499da1(0xb0)](_0x24da0f=>({'command':_0x24da0f[_0x499da1(0x97)],'description':_0x24da0f['description'],'tag':_0x13c5e1(_0x24da0f['risk'])})),'declarative':!![],'defaultCommand':_0x15fe3d?.[_0x499da1(0x84)]??(_0x15fe3d?.[_0x499da1(0x8c)]?_0x2ca787[0x0]['command']:undefined),'wildcardDef':_0x15fe3d?.[_0x499da1(0x88)],'isSingleCommand':_0x15fe3d?.[_0x499da1(0x8c)]};serviceRegistry[_0x499da1(0x8b)](_0xc520a5),serviceByName[_0x499da1(0x8f)](_0xc520a5[_0x499da1(0xb9)],_0xc520a5);}registerDeclarativeService(a129_0x3217f5(0x89),initDefinitions,{'defaultCommand':a129_0x3217f5(0xa5),'isSingleCommand':!![]}),registerDeclarativeService('Project',projectDefinitions),registerDeclarativeService(a129_0x3217f5(0x87),workspaceDefinitions),registerDeclarativeService(a129_0x3217f5(0xad),appDefinitions),registerDeclarativeService(a129_0x3217f5(0x90),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a129_0x3217f5(0xb8)]-0x1];last[a129_0x3217f5(0x91)]=[{'command':a129_0x3217f5(0x8e),'description':a129_0x3217f5(0x8d),'tag':''}];}function a129_0x25eb(_0x512a61,_0x46affb){_0x512a61=_0x512a61-0x84;const _0x1d87df=a129_0x1d87();let _0x25eb31=_0x1d87df[_0x512a61];return _0x25eb31;}registerDeclarativeService(a129_0x3217f5(0xb7),authDefinitions,{'defaultCommand':a129_0x3217f5(0xbb)}),registerDeclarativeService(a129_0x3217f5(0x95),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a129_0x3217f5(0x98),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Schema',[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Configuration',configDefinitions),registerDeclarativeService(a129_0x3217f5(0xa3),appConfigDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService('API',apiDefinitions),registerDeclarativeService(a129_0x3217f5(0x85),menuDefinitions),registerDeclarativeService(a129_0x3217f5(0x9d),dbDefinitions),registerDeclarativeService('Dataset\x20&\x20Operations',datasetDefinitions),registerDeclarativeService('Smart\x20List\x20Pages',pageDefinitions),registerDeclarativeService(a129_0x3217f5(0xaf),dataDefinitions),registerDeclarativeService('BFF\x20Scripts',bffDefinitions),registerDeclarativeService(a129_0x3217f5(0xa7),sqlDefinitions),registerDeclarativeService(a129_0x3217f5(0xba),codegenDefinitions),registerDeclarativeService(a129_0x3217f5(0x8a),cliSkillDefinitions,{'defaultCommand':a129_0x3217f5(0x9c)}),registerDeclarativeService(a129_0x3217f5(0xb5),logsDefinitions,{'defaultCommand':a129_0x3217f5(0x96)});export const deprecatedAliases={'create':{'service':a129_0x3217f5(0x93),'command':'create'},'start':{'service':a129_0x3217f5(0xa5),'command':'start'},'build':{'service':a129_0x3217f5(0xa5),'command':'build'},'preview':{'service':'run','command':a129_0x3217f5(0xa8)},'logout':{'service':'auth','command':a129_0x3217f5(0xa2)}};const CLI_SKILL_INSTALL_REMOVED_HINT=a129_0x3217f5(0x9a);export function resolveRemovedCommand(_0x913b06,_0x1fbccc){const _0x2861fc=a129_0x3217f5;if(_0x913b06==='skill'){const _0x3d585c=_0x1fbccc?_0x2861fc(0x9b)+_0x1fbccc:_0x2861fc(0x94);return{'command':_0x3d585c,'message':_0x2861fc(0xa9)+_0x3d585c+_0x2861fc(0xab),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x913b06===_0x2861fc(0x99))return{'command':_0x2861fc(0x99),'message':_0x2861fc(0xa1),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':a129_0x3217f5(0xb6)},'sql':{'new':a129_0x3217f5(0xb6)}};export function resolveDeprecatedSubcommand(_0x17c33a,_0x1463cd){return deprecatedSubcommands[_0x17c33a]?.[_0x1463cd];}export function findDefinition(_0x4ee9a6,_0x5ec3d7){const _0x5600ab=a129_0x3217f5;return definitions[_0x5600ab(0xb3)](_0x4ee9a6+':'+_0x5ec3d7);}export function isKnownService(_0x4115dc){return serviceByName['has'](_0x4115dc);}export function isDeclarativeService(_0x1fcf1a){const _0xeea899=a129_0x3217f5;return serviceGroups[_0xeea899(0x9e)](_0x1fcf1a)||serviceByName[_0xeea899(0xb3)](_0x1fcf1a)?.[_0xeea899(0x88)]!==undefined;}export function getServiceEntry(_0x3f221d){const _0x1e4c28=a129_0x3217f5;return serviceByName[_0x1e4c28(0xb3)](_0x3f221d);}export function getLegacyHandler(_0x15092b,_0x4c5ca8){return undefined;}export function getAllDefinitions(){const _0x1b9b04=a129_0x3217f5;return Array['from'](definitions[_0x1b9b04(0xb4)]());}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a130_0x2835(){const _0x3596ae=['8VkRlkA','220330FypoGj','154siHpns','args','\x0a\x20\x20Usage:\x20','package.json','entries','bun.lockb','292388HzLuJw','error','.bin','Script\x20name\x20defined\x20in\x20package.json','\x22\x20not\x20found\x20in\x20package.json.','run','bun','preview','padEnd','Run\x20a\x20package.json\x20script','\x20exited\x20with\x20code\x20','400404YxaMvK','close','Available:\x20','needsUpgrade','(none)','boolean','\x20run\x20<script>\x0a','1497396dBgyak','script','\x20\x20\x20\x20','validation','3977380RJOiMt','--watch','\x20run\x20build','pnpm-lock.yaml','join','5916789XMCdjg','inherit','Enable\x20watch\x20mode\x20for\x20preview','1693895tZBzGz','No\x20scripts\x20defined\x20in\x20package.json.','\x20run\x20start','\x20\x20EXAMPLES','max','slice','read','yarn.lock','keys','vite','length','push','6AypbQU','cwd','vite\x20preview\x20exited\x20with\x20code\x20','npm','utf-8','build','map','log','\x20run\x20','18jaWHZK','parse','\x20\x20AVAILABLE\x20SCRIPTS\x20\x20(current\x20project)','start','node_modules','yarn','\x0a\x20\x20Available\x20scripts:\x0a','has','vite\x20build\x20--watch\x20exited\x20with\x20code\x20'];a130_0x2835=function(){return _0x3596ae;};return a130_0x2835();}const a130_0xf0e570=a130_0xa792;(function(_0x5ce961,_0x435a31){const _0xbd257c=a130_0xa792,_0x3d618e=_0x5ce961();while(!![]){try{const _0x53e117=parseInt(_0xbd257c(0xec))/0x1+-parseInt(_0xbd257c(0xd2))/0x2*(parseInt(_0xbd257c(0xf7))/0x3)+-parseInt(_0xbd257c(0xfe))/0x4+parseInt(_0xbd257c(0x102))/0x5+parseInt(_0xbd257c(0xdb))/0x6*(-parseInt(_0xbd257c(0x10a))/0x7)+-parseInt(_0xbd257c(0xe4))/0x8*(-parseInt(_0xbd257c(0x107))/0x9)+-parseInt(_0xbd257c(0xe5))/0xa*(-parseInt(_0xbd257c(0xe6))/0xb);if(_0x53e117===_0x435a31)break;else _0x3d618e['push'](_0x3d618e['shift']());}catch(_0x529306){_0x3d618e['push'](_0x3d618e['shift']());}}}(a130_0x2835,0x8704f));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([a130_0xf0e570(0xde),'dev']);function readPackageScripts(_0x107e89){const _0x4d04f4=a130_0xf0e570,_0xdec965=resolve(_0x107e89,_0x4d04f4(0xe9));if(!existsSync(_0xdec965))return null;try{const _0x399808=JSON[_0x4d04f4(0xdc)](readFileSync(_0xdec965,_0x4d04f4(0xd6)));return _0x399808['scripts']??{};}catch{return null;}}function detectPackageManager(_0x1e0bc4){const _0x4a9b4c=a130_0xf0e570;if(existsSync(resolve(_0x1e0bc4,_0x4a9b4c(0xeb)))||existsSync(resolve(_0x1e0bc4,'bun.lock')))return _0x4a9b4c(0xf2);if(existsSync(resolve(_0x1e0bc4,_0x4a9b4c(0x105))))return'pnpm';if(existsSync(resolve(_0x1e0bc4,_0x4a9b4c(0x111))))return _0x4a9b4c(0xe0);return _0x4a9b4c(0xd5);}async function versionCheck(_0x4fea00){const _0x46c3b4=a130_0xf0e570,_0x50636d=await checkCliVersion();(_0x50636d['needsUpgrade']||_0x50636d['belowMinimum'])&&(printCliUpgradeWarning(_0x50636d),assertCliVersionSupported(_0x50636d));const _0x11c2f2=await checkSdkVersion(_0x4fea00);if(_0x11c2f2[_0x46c3b4(0xfa)])printSdkUpgradeWarning(_0x11c2f2);}function spawnScript(_0x5dd42d,_0x3ab4f8,_0x1116da,_0x583a07){return new Promise((_0x1b671f,_0x37acd3)=>{const _0x20db21=a130_0xa792,_0x40868b=[_0x20db21(0xf1),_0x3ab4f8,..._0x1116da],_0x85d4ed=spawn(_0x5dd42d,_0x40868b,{'cwd':_0x583a07,'stdio':_0x20db21(0x108),'shell':!![],'env':{...process.env,'PATH':''+join(_0x583a07,_0x20db21(0xdf),_0x20db21(0xee))+delimiter+process.env.PATH}});_0x85d4ed['on'](_0x20db21(0xf8),_0x277834=>{const _0x53db41=_0x20db21;if(_0x277834===0x0||_0x277834===null)_0x1b671f();else _0x37acd3(new Error(_0x5dd42d+_0x53db41(0xda)+_0x3ab4f8+_0x53db41(0xf6)+_0x277834));}),_0x85d4ed['on'](_0x20db21(0xed),_0x37acd3);});}function spawnViteBuildWatch(_0x5bc2ff){return new Promise((_0x339d7f,_0x193adc)=>{const _0x1a41bb=a130_0xa792,_0x90c0fa=spawn(_0x1a41bb(0x113),[_0x1a41bb(0xd7),_0x1a41bb(0x103)],{'cwd':_0x5bc2ff,'stdio':_0x1a41bb(0x108),'shell':!![],'env':{...process.env,'PATH':''+join(_0x5bc2ff,'node_modules','.bin')+delimiter+process.env.PATH}});_0x90c0fa['on'](_0x1a41bb(0xf8),_0x4873fd=>{const _0x98fe16=_0x1a41bb;if(_0x4873fd===0x0||_0x4873fd===null)_0x339d7f();else _0x193adc(new Error(_0x98fe16(0xe3)+_0x4873fd));}),_0x90c0fa['on'](_0x1a41bb(0xed),_0x193adc);});}function spawnVitePreview(_0x280b5d){return new Promise((_0x2ebaf4,_0x239871)=>{const _0x5c46a2=a130_0xa792,_0x947c5f=spawn('vite',[_0x5c46a2(0xf3)],{'cwd':_0x280b5d,'stdio':'inherit','shell':!![],'env':{...process.env,'PATH':''+join(_0x280b5d,'node_modules',_0x5c46a2(0xee))+delimiter+process.env.PATH}});_0x947c5f['on']('close',_0x332f8e=>{const _0x1d17f1=_0x5c46a2;if(_0x332f8e===0x0||_0x332f8e===null)_0x2ebaf4();else _0x239871(new Error(_0x1d17f1(0xd4)+_0x332f8e));}),_0x947c5f['on'](_0x5c46a2(0xed),_0x239871);});}const runFlags=[{'name':'watch','type':a130_0xf0e570(0xfc),'description':a130_0xf0e570(0x109),'default':![]}];function a130_0xa792(_0x4c761f,_0xb84fdf){_0x4c761f=_0x4c761f-0xd2;const _0x283575=a130_0x2835();let _0xa7922c=_0x283575[_0x4c761f];return _0xa7922c;}export const runDefinition={'service':a130_0xf0e570(0xf1),'command':a130_0xf0e570(0xf1),'description':a130_0xf0e570(0xf5),'risk':a130_0xf0e570(0x110),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a130_0xf0e570(0xff),'description':a130_0xf0e570(0xef),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x24b9c1=a130_0xf0e570,_0x4c3322=readPackageScripts(process[_0x24b9c1(0xd3)]()),_0x2da4ec=[];if(_0x4c3322&&Object['keys'](_0x4c3322)[_0x24b9c1(0x114)]>0x0){const _0x4fd2f6=Object['keys'](_0x4c3322),_0x556083=Math[_0x24b9c1(0x10e)](..._0x4fd2f6[_0x24b9c1(0xd8)](_0x12702e=>_0x12702e[_0x24b9c1(0x114)]));_0x2da4ec[_0x24b9c1(0x115)](_0x24b9c1(0xdd));for(const [_0x114cc3,_0x2a5af8]of Object[_0x24b9c1(0xea)](_0x4c3322)){_0x2da4ec[_0x24b9c1(0x115)](_0x24b9c1(0x100)+CLI_BIN_NAME+_0x24b9c1(0xda)+_0x114cc3['padEnd'](_0x556083+0x2)+'#\x20'+_0x2a5af8);}}else _0x2da4ec[_0x24b9c1(0x115)](_0x24b9c1(0x10d)),_0x2da4ec[_0x24b9c1(0x115)](_0x24b9c1(0x100)+CLI_BIN_NAME+_0x24b9c1(0x10c)),_0x2da4ec[_0x24b9c1(0x115)](_0x24b9c1(0x100)+CLI_BIN_NAME+_0x24b9c1(0x104)),_0x2da4ec['push'](_0x24b9c1(0x100)+CLI_BIN_NAME+'\x20run\x20preview'),_0x2da4ec[_0x24b9c1(0x115)](_0x24b9c1(0x100)+CLI_BIN_NAME+'\x20run\x20preview\x20--watch\x20\x20\x20#\x20parallel\x20build\x20--watch\x20+\x20preview');return _0x2da4ec['join']('\x0a');},async 'execute'(_0xcd8d6a){const _0x3a858c=a130_0xf0e570,_0x29bb38=process[_0x3a858c(0xd3)](),_0xe0100e=_0xcd8d6a['args'][0x0],_0x400f9c=_0xcd8d6a[_0x3a858c(0xe7)][_0x3a858c(0x10f)](0x1),_0x275b2d=readPackageScripts(_0x29bb38);if(!_0x275b2d)throw CliErrors[_0x3a858c(0x101)]('No\x20package.json\x20found\x20in\x20current\x20directory.');if(!_0xe0100e){const _0x5f932a=Object[_0x3a858c(0x112)](_0x275b2d);if(_0x5f932a[_0x3a858c(0x114)]===0x0)console['log'](_0x3a858c(0x10b));else{console[_0x3a858c(0xd9)](_0x3a858c(0xe1));const _0x24b327=Math[_0x3a858c(0x10e)](..._0x5f932a['map'](_0x61af3b=>_0x61af3b['length']));for(const [_0x22155c,_0x20f2c9]of Object[_0x3a858c(0xea)](_0x275b2d)){console[_0x3a858c(0xd9)]('\x20\x20\x20\x20'+_0x22155c[_0x3a858c(0xf4)](_0x24b327+0x2)+_0x20f2c9);}console[_0x3a858c(0xd9)](_0x3a858c(0xe8)+CLI_BIN_NAME+_0x3a858c(0xfd));}return{'ok':!![]};}if(!_0x275b2d[_0xe0100e])throw CliErrors[_0x3a858c(0x101)]('Script\x20\x22'+_0xe0100e+_0x3a858c(0xf0),_0x3a858c(0xf9)+(Object['keys'](_0x275b2d)[_0x3a858c(0x106)](',\x20')||_0x3a858c(0xfb)));const _0x30415b=detectPackageManager(_0x29bb38);VERSION_CHECK_SCRIPTS[_0x3a858c(0xe2)](_0xe0100e)&&await versionCheck(_0x29bb38);if(_0xe0100e===_0x3a858c(0xf3)&&_0xcd8d6a['bool']('watch'))return await Promise['all']([spawnViteBuildWatch(_0x29bb38),spawnVitePreview(_0x29bb38)]),{'ok':!![]};return await spawnScript(_0x30415b,_0xe0100e,_0x400f9c,_0x29bb38),{'ok':!![]};}};
|
package/lib/commands/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a131_0x3ad0(_0x4532da,_0x5d20ef){_0x4532da=_0x4532da-0x1de;const _0x875745=a131_0x8757();let _0x3ad0e5=_0x875745[_0x4532da];return _0x3ad0e5;}function a131_0x8757(){const _0x3530be=['20WcxpeL','export','read','9518562xaBtXm','296032sMPoax','12661240GfuWXW','2048711tyABZh','2355ltfFHO','schema','850KQqWZB','9910332ZoJcYT','3732TwWxmw','5GiIYKH','3687bgdXwp'];a131_0x8757=function(){return _0x3530be;};return a131_0x8757();}const a131_0x3cf577=a131_0x3ad0;(function(_0x386057,_0x523ea8){const _0x3fa732=a131_0x3ad0,_0x51d185=_0x386057();while(!![]){try{const _0x4d31f1=parseInt(_0x3fa732(0x1e9))/0x1*(parseInt(_0x3fa732(0x1e5))/0x2)+-parseInt(_0x3fa732(0x1e3))/0x3*(-parseInt(_0x3fa732(0x1e7))/0x4)+parseInt(_0x3fa732(0x1e8))/0x5*(-parseInt(_0x3fa732(0x1df))/0x6)+-parseInt(_0x3fa732(0x1e2))/0x7+parseInt(_0x3fa732(0x1e1))/0x8+-parseInt(_0x3fa732(0x1e6))/0x9+-parseInt(_0x3fa732(0x1ea))/0xa*(-parseInt(_0x3fa732(0x1e0))/0xb);if(_0x4d31f1===_0x523ea8)break;else _0x51d185['push'](_0x51d185['shift']());}catch(_0x114348){_0x51d185['push'](_0x51d185['shift']());}}}(a131_0x8757,0xe94db));import{buildSchemaPayload}from'../framework/schema-export.js';async function execute(_0x5771d6){const _0xf3b36f=await buildSchemaPayload();return{'ok':!![],'data':_0xf3b36f};}export const schemaDefinition={'service':a131_0x3cf577(0x1e4),'command':a131_0x3cf577(0x1eb),'description':'Export\x20machine-readable\x20command\x20schema\x20(JSON)','risk':a131_0x3cf577(0x1de),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':'json','flags':[],'execute':execute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a131_0x4fc094=a131_0x5bd6;(function(_0x4ac013,_0x4e626b){const _0x3af314=a131_0x5bd6,_0x464fed=_0x4ac013();while(!![]){try{const _0x5f470f=parseInt(_0x3af314(0x164))/0x1*(-parseInt(_0x3af314(0x18c))/0x2)+-parseInt(_0x3af314(0x181))/0x3+parseInt(_0x3af314(0x192))/0x4+-parseInt(_0x3af314(0x163))/0x5+-parseInt(_0x3af314(0x18e))/0x6+-parseInt(_0x3af314(0x16f))/0x7*(parseInt(_0x3af314(0x18a))/0x8)+parseInt(_0x3af314(0x18d))/0x9;if(_0x5f470f===_0x4e626b)break;else _0x464fed['push'](_0x464fed['shift']());}catch(_0x5006f9){_0x464fed['push'](_0x464fed['shift']());}}}(a131_0x458d,0x575ba));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';function a131_0x458d(){const _0x277c0e=['请输入目标数据库\x20dbId:','<server-generated-sqlCode>','dbId\x20不能为空','1484785ObcoOA','38653ycGBbm','str','mybatisXml','POST','parse','trim','high-risk-write','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','mode','appCode','utf8','3756571zwPXYW','Created\x20SQL\x20query\x20','dbName','Local\x20SQL\x20file\x20mode','请输入\x20SQL\x20名称:','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','lockFilePath','请选择本地\x20SQL\x20模式:','普通\x20SQL(sql)','number','dbId','</select>','lastSync','flagMissing','isInteger','__manual__','join','db-id','521424NxNMNG','Invalid\x20database\x20selection\x20payload:\x20','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','/smartapi/custom/saveUserCustomSql','flag','length','SQL\x20query\x20display\x20name','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','sqlRootDir','8ueKLOn','toISOString','16fnEwhx','16703100HoBULt','3293898Kawqqg','nonInteractive','sql','sqlCode','1470172MdWScn','catch','stringify','name','isFinite','string','validation','适合带动态标签的\x20MyBatis\x20XML\x20SQL','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','Target\x20database\x20ID','new','File\x20already\x20exists:\x20','sqlName','SELECT\x201\x20AS\x20id;'];a131_0x458d=function(){return _0x277c0e;};return a131_0x458d();}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(_0x57d7d8){const _0x1fd21a=a131_0x5bd6;if(_0x57d7d8===_0x1fd21a(0x166))return[_0x1fd21a(0x16b),'\x20\x20SELECT\x201\x20AS\x20id',_0x1fd21a(0x17a),''][_0x1fd21a(0x17f)]('\x0a');return[_0x1fd21a(0x15f),''][_0x1fd21a(0x17f)]('\x0a');}export const sqlCreate={'service':a131_0x4fc094(0x190),'command':'create','description':a131_0x4fc094(0x15a),'risk':a131_0x4fc094(0x16a),'flags':[{'name':a131_0x4fc094(0x195),'type':a131_0x4fc094(0x197),'description':a131_0x4fc094(0x187)},{'name':a131_0x4fc094(0x180),'type':'number','description':a131_0x4fc094(0x15b)},{'name':a131_0x4fc094(0x16c),'type':a131_0x4fc094(0x197),'enum':[a131_0x4fc094(0x190),a131_0x4fc094(0x166)],'description':a131_0x4fc094(0x172)}],async 'validate'(_0x516172){const _0xe53b1d=a131_0x4fc094;if(!_0x516172[_0xe53b1d(0x18f)])return;if(!_0x516172['str'](_0xe53b1d(0x195))[_0xe53b1d(0x169)]())throw CliErrors[_0xe53b1d(0x17c)](_0xe53b1d(0x195),_0xe53b1d(0x188));const _0x5881de=resolveProvidedDbId(_0x516172);if(typeof _0x5881de!==_0xe53b1d(0x178)||!Number[_0xe53b1d(0x196)](_0x5881de)||_0x5881de<=0x0)throw CliErrors['flagMissing'](_0xe53b1d(0x180),_0xe53b1d(0x183));if(!_0x516172[_0xe53b1d(0x165)](_0xe53b1d(0x16c))[_0xe53b1d(0x169)]())throw CliErrors[_0xe53b1d(0x17c)](_0xe53b1d(0x16c),_0xe53b1d(0x174));},async 'dryRun'(_0x50c20c){const _0x449ae3=a131_0x4fc094,_0x3e617c=loadSqlProjectConfig(_0x50c20c[_0x449ae3(0x16d)]),{sqlName:_0xb8f81a,dbId:_0x3f3beb,dbName:_0x5d784e,mode:_0x3cb711}=await resolveSqlNewInputs(_0x50c20c),_0x2cd8d3=buildSqlRelativePath(_0x449ae3(0x161),_0xb8f81a,_0x5d784e,_0x3cb711,_0x3f3beb),_0x4801de=_0x3e617c[_0x449ae3(0x189)]+'/'+_0x2cd8d3;return{'method':_0x449ae3(0x167),'url':_0x449ae3(0x184),'body':{'appCode':_0x50c20c['appCode'],'sqlName':_0xb8f81a,'dbId':_0x3f3beb,'mode':_0x3cb711,'localPath':_0x4801de},'description':'Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20'+_0x3e617c[_0x449ae3(0x189)]};},async 'execute'(_0x1a7ec0){const _0x4d3b82=a131_0x4fc094,_0x58519d=loadSqlProjectConfig(_0x1a7ec0[_0x4d3b82(0x16d)]),{sqlName:_0x4b32c8,dbId:_0x5970f5,dbName:_0x3f53cf,mode:_0x3adbcd}=await resolveSqlNewInputs(_0x1a7ec0),_0xdd420e=generateSqlTemplate(_0x3adbcd),_0x153c6a=await createSqlQuery({'appCode':_0x1a7ec0[_0x4d3b82(0x16d)],'sqlName':_0x4b32c8,'dbId':_0x5970f5,'sqlContent':_0xdd420e}),_0x1dd37e=ensureRemoteSqlContent(_0x153c6a),_0x547159=_0x3f53cf||await getDbName(_0x1a7ec0[_0x4d3b82(0x16d)],_0x5970f5)[_0x4d3b82(0x193)](()=>undefined),_0x3c649c=buildSqlRelativePath(_0x153c6a[_0x4d3b82(0x191)],_0x153c6a['sqlName'],_0x547159,_0x3adbcd,_0x5970f5),_0x3b0816=_0x58519d['sqlRootDir']+'/'+_0x3c649c,_0x473b3e=buildLocalSqlFileContent({'sqlCode':_0x153c6a['sqlCode'],'sqlName':_0x153c6a[_0x4d3b82(0x15e)],'dbId':_0x153c6a[_0x4d3b82(0x179)]},_0x1dd37e,{'dbName':_0x547159,'mode':_0x3adbcd,'syncedAt':new Date()[_0x4d3b82(0x18b)](),'description':_0x153c6a['description']});if(await fileExists(_0x3b0816))throw CliErrors[_0x4d3b82(0x198)](_0x4d3b82(0x15d)+_0x3b0816);await ensureParentDirectory(_0x3b0816),await writeFile(_0x3b0816,_0x473b3e,_0x4d3b82(0x16e));const _0x44af44=await readSqlLockFile(_0x58519d[_0x4d3b82(0x175)]),{lockData:_0x3c2d96,appLock:_0x3821a9}=ensureSqlLockScope(_0x44af44??createEmptySqlLock(),_0x58519d[_0x4d3b82(0x16d)],_0x58519d['sqlRoot'],_0x4d3b82(0x15c));return _0x3821a9['sqls'][_0x153c6a[_0x4d3b82(0x191)]]={...buildSqlLockEntry(_0x153c6a,_0x1dd37e,computeSqlContentHash(_0x473b3e),{'dbName':_0x547159}),'path':_0x3c649c,'mode':_0x3adbcd},_0x3821a9[_0x4d3b82(0x17b)]=new Date()['toISOString'](),await writeSqlLockFile(_0x58519d[_0x4d3b82(0x175)],_0x3c2d96),{'ok':!![],'data':{'id':_0x153c6a['id'],'sqlCode':_0x153c6a['sqlCode'],'sqlName':_0x153c6a[_0x4d3b82(0x15e)],'dbId':_0x153c6a['dbId'],'path':_0x3b0816,'mode':_0x3adbcd},'message':_0x4d3b82(0x170)+_0x153c6a[_0x4d3b82(0x191)]};}};async function resolveSqlNewInputs(_0x2fd76d){const _0x401cd3=await resolveSqlNameInput(_0x2fd76d),{dbId:_0x412987,dbName:_0x308bf5}=await resolveDbSelection(_0x2fd76d),_0x3eb433=await resolveSqlModeInput(_0x2fd76d);return{'sqlName':_0x401cd3,'dbId':_0x412987,'dbName':_0x308bf5,'mode':_0x3eb433};}async function resolveSqlNameInput(_0x522a24){const _0x4e6247=a131_0x4fc094,_0x29acf0=_0x522a24[_0x4e6247(0x165)](_0x4e6247(0x195))['trim']();if(_0x29acf0)return _0x29acf0;if(_0x522a24[_0x4e6247(0x18f)])throw CliErrors[_0x4e6247(0x17c)](_0x4e6247(0x195),_0x4e6247(0x188));return(await input({'message':_0x4e6247(0x173),'validate':_0x4b21df=>_0x4b21df['trim']()?!![]:'SQL\x20名称不能为空'}))[_0x4e6247(0x169)]();}async function resolveDbSelection(_0x383f93){const _0x2edab2=a131_0x4fc094,_0x5be936=resolveProvidedDbId(_0x383f93);if(typeof _0x5be936===_0x2edab2(0x178)&&Number[_0x2edab2(0x196)](_0x5be936)&&_0x5be936>0x0)return{'dbId':_0x5be936,'dbName':await getDbName(_0x383f93[_0x2edab2(0x16d)],_0x5be936)[_0x2edab2(0x193)](()=>undefined)};if(_0x383f93[_0x2edab2(0x18f)])throw CliErrors[_0x2edab2(0x17c)](_0x2edab2(0x180),_0x2edab2(0x183));const _0x15dbf8=await listDatabases(_0x383f93['appCode'])[_0x2edab2(0x193)](()=>[]);if(_0x15dbf8[_0x2edab2(0x186)]===0x1)return{'dbId':_0x15dbf8[0x0][_0x2edab2(0x179)],'dbName':_0x15dbf8[0x0]['dbName']};if(_0x15dbf8[_0x2edab2(0x186)]>0x1){const _0x3e6e93=await select({'message':'请选择目标数据库:','choices':[..._0x15dbf8['map'](_0x539696=>({'name':_0x539696[_0x2edab2(0x171)]+'\x20('+_0x539696[_0x2edab2(0x179)]+')','value':serializeDbSelection(_0x539696)})),{'name':'✎\x20手动输入\x20dbId','value':_0x2edab2(0x17e)}]});if(_0x3e6e93!==_0x2edab2(0x17e))return deserializeDbSelection(_0x3e6e93);}const _0x1cf025=await input({'message':_0x2edab2(0x160),'validate':_0x5f2105=>{const _0x18f883=_0x2edab2,_0x38583c=_0x5f2105[_0x18f883(0x169)]();if(!_0x38583c)return _0x18f883(0x162);const _0x4a942b=Number(_0x38583c);if(!Number[_0x18f883(0x17d)](_0x4a942b)||_0x4a942b<=0x0)return'dbId\x20必须为正整数';return!![];}});return{'dbId':Number(_0x1cf025[_0x2edab2(0x169)]())};}function a131_0x5bd6(_0xf89780,_0x2be4ec){_0xf89780=_0xf89780-0x159;const _0x458d25=a131_0x458d();let _0x5bd615=_0x458d25[_0xf89780];return _0x5bd615;}async function resolveSqlModeInput(_0x3134cd){const _0x16320d=a131_0x4fc094,_0x5119c3=_0x3134cd[_0x16320d(0x165)](_0x16320d(0x16c))[_0x16320d(0x169)]();if(_0x5119c3===_0x16320d(0x190)||_0x5119c3===_0x16320d(0x166))return _0x5119c3;if(_0x3134cd[_0x16320d(0x18f)])throw CliErrors[_0x16320d(0x17c)](_0x16320d(0x16c),_0x16320d(0x174));return await select({'message':_0x16320d(0x176),'choices':[{'name':_0x16320d(0x177),'value':_0x16320d(0x190),'description':'适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句'},{'name':'MyBatis\x20XML(mybatisXml)','value':_0x16320d(0x166),'description':_0x16320d(0x159)}]});}function serializeDbSelection(_0x57f316){const _0x5cb4b6=a131_0x4fc094;return JSON[_0x5cb4b6(0x194)]({'dbId':_0x57f316[_0x5cb4b6(0x179)],'dbName':_0x57f316[_0x5cb4b6(0x171)]});}function deserializeDbSelection(_0x324a9f){const _0x3edd6e=a131_0x4fc094;try{const _0x26afdf=JSON[_0x3edd6e(0x168)](_0x324a9f);if(typeof _0x26afdf[_0x3edd6e(0x179)]===_0x3edd6e(0x178)&&Number[_0x3edd6e(0x196)](_0x26afdf['dbId']))return{'dbId':_0x26afdf[_0x3edd6e(0x179)],'dbName':_0x26afdf['dbName']};}catch{}throw CliErrors['validation'](_0x3edd6e(0x182)+_0x324a9f);}function resolveProvidedDbId(_0x2789c2){const _0x3067d6=a131_0x4fc094,_0x578f09=_0x2789c2[_0x3067d6(0x185)](_0x3067d6(0x180));if(typeof _0x578f09===_0x3067d6(0x178)&&Number['isFinite'](_0x578f09))return _0x578f09;return undefined;}
|
|
1
|
+
const a132_0x3a0033=a132_0x31a0;(function(_0x17ac42,_0x38acb5){const _0x58e8db=a132_0x31a0,_0x4d7455=_0x17ac42();while(!![]){try{const _0x2cb2dc=parseInt(_0x58e8db(0x142))/0x1*(-parseInt(_0x58e8db(0x150))/0x2)+parseInt(_0x58e8db(0x166))/0x3+parseInt(_0x58e8db(0x15a))/0x4*(-parseInt(_0x58e8db(0x175))/0x5)+-parseInt(_0x58e8db(0x140))/0x6*(-parseInt(_0x58e8db(0x160))/0x7)+-parseInt(_0x58e8db(0x16a))/0x8*(parseInt(_0x58e8db(0x153))/0x9)+parseInt(_0x58e8db(0x172))/0xa+parseInt(_0x58e8db(0x147))/0xb*(parseInt(_0x58e8db(0x151))/0xc);if(_0x2cb2dc===_0x38acb5)break;else _0x4d7455['push'](_0x4d7455['shift']());}catch(_0x46f8c6){_0x4d7455['push'](_0x4d7455['shift']());}}}(a132_0x3e51,0x4231c));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';function a132_0x3e51(){const _0x2f3d36=['--name\x20is\x20required\x20in\x20non-interactive\x20mode.','请选择目标数据库:','sql','__manual__','833296JjdNrB','dbId','MyBatis\x20XML(mybatisXml)','stringify','请输入目标数据库\x20dbId:','map','310051CAJhgv','db-id','high-risk-write','string','toISOString','dbId\x20不能为空','695025MhMzYF','sqls','appCode','length','16712tGOElI','mybatisXml','flag','name','dbId\x20必须为正整数','Created\x20SQL\x20query\x20','SQL\x20名称不能为空','sqlName','2829660gvsHck','Target\x20database\x20ID','trim','5dNinTb','mode','lastSync','join','sqlCode','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','number','str','sqlRootDir','dbName','</select>','\x20\x20SELECT\x201\x20AS\x20id','SQL\x20query\x20display\x20name','isInteger','validation','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','18LYLhsC','SELECT\x201\x20AS\x20id;','311PdURIS','flagMissing','catch','utf8','parse','108768awLPFG','create','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','请输入\x20SQL\x20名称:','适合带动态标签的\x20MyBatis\x20XML\x20SQL','description','普通\x20SQL(sql)','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','nonInteractive','204NgaEwd','12hqsewz','File\x20already\x20exists:\x20','630EQVfaY','isFinite','sqlRoot'];a132_0x3e51=function(){return _0x2f3d36;};return a132_0x3e51();}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(_0x7fd673){const _0x3eab7a=a132_0x31a0;if(_0x7fd673===_0x3eab7a(0x16b))return[_0x3eab7a(0x13f),_0x3eab7a(0x180),_0x3eab7a(0x17f),''][_0x3eab7a(0x178)]('\x0a');return[_0x3eab7a(0x141),''][_0x3eab7a(0x178)]('\x0a');}export const sqlCreate={'service':'sql','command':a132_0x3a0033(0x148),'description':'Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','risk':a132_0x3a0033(0x162),'flags':[{'name':a132_0x3a0033(0x16d),'type':a132_0x3a0033(0x163),'description':a132_0x3a0033(0x13c)},{'name':a132_0x3a0033(0x161),'type':a132_0x3a0033(0x17b),'description':a132_0x3a0033(0x173)},{'name':'mode','type':'string','enum':[a132_0x3a0033(0x158),a132_0x3a0033(0x16b)],'description':'Local\x20SQL\x20file\x20mode'}],async 'validate'(_0x4df3cf){const _0x37b7e8=a132_0x3a0033;if(!_0x4df3cf[_0x37b7e8(0x14f)])return;if(!_0x4df3cf['str'](_0x37b7e8(0x16d))[_0x37b7e8(0x174)]())throw CliErrors[_0x37b7e8(0x143)](_0x37b7e8(0x16d),_0x37b7e8(0x156));const _0x149d79=resolveProvidedDbId(_0x4df3cf);if(typeof _0x149d79!==_0x37b7e8(0x17b)||!Number['isFinite'](_0x149d79)||_0x149d79<=0x0)throw CliErrors[_0x37b7e8(0x143)]('db-id',_0x37b7e8(0x17a));if(!_0x4df3cf['str']('mode')[_0x37b7e8(0x174)]())throw CliErrors['flagMissing']('mode',_0x37b7e8(0x14e));},async 'dryRun'(_0x1fbdb0){const _0x531069=a132_0x3a0033,_0x4bbabb=loadSqlProjectConfig(_0x1fbdb0[_0x531069(0x168)]),{sqlName:_0x2784be,dbId:_0x4032f7,dbName:_0x3e6f40,mode:_0x115290}=await resolveSqlNewInputs(_0x1fbdb0),_0x5c264d=buildSqlRelativePath('<server-generated-sqlCode>',_0x2784be,_0x3e6f40,_0x115290,_0x4032f7),_0x2ca9f0=_0x4bbabb[_0x531069(0x17d)]+'/'+_0x5c264d;return{'method':'POST','url':'/smartapi/custom/saveUserCustomSql','body':{'appCode':_0x1fbdb0['appCode'],'sqlName':_0x2784be,'dbId':_0x4032f7,'mode':_0x115290,'localPath':_0x2ca9f0},'description':_0x531069(0x149)+_0x4bbabb[_0x531069(0x17d)]};},async 'execute'(_0x161935){const _0x14372f=a132_0x3a0033,_0x1674fb=loadSqlProjectConfig(_0x161935[_0x14372f(0x168)]),{sqlName:_0x4cdb49,dbId:_0x2cc9de,dbName:_0x454934,mode:_0x1d1066}=await resolveSqlNewInputs(_0x161935),_0x5e8587=generateSqlTemplate(_0x1d1066),_0x4371c4=await createSqlQuery({'appCode':_0x161935[_0x14372f(0x168)],'sqlName':_0x4cdb49,'dbId':_0x2cc9de,'sqlContent':_0x5e8587}),_0x56b825=ensureRemoteSqlContent(_0x4371c4),_0x47945b=_0x454934||await getDbName(_0x161935['appCode'],_0x2cc9de)[_0x14372f(0x144)](()=>undefined),_0x45a72a=buildSqlRelativePath(_0x4371c4['sqlCode'],_0x4371c4[_0x14372f(0x171)],_0x47945b,_0x1d1066,_0x2cc9de),_0x441177=_0x1674fb[_0x14372f(0x17d)]+'/'+_0x45a72a,_0x5bf496=buildLocalSqlFileContent({'sqlCode':_0x4371c4[_0x14372f(0x179)],'sqlName':_0x4371c4['sqlName'],'dbId':_0x4371c4[_0x14372f(0x15b)]},_0x56b825,{'dbName':_0x47945b,'mode':_0x1d1066,'syncedAt':new Date()[_0x14372f(0x164)](),'description':_0x4371c4[_0x14372f(0x14c)]});if(await fileExists(_0x441177))throw CliErrors[_0x14372f(0x13e)](_0x14372f(0x152)+_0x441177);await ensureParentDirectory(_0x441177),await writeFile(_0x441177,_0x5bf496,_0x14372f(0x145));const _0x9367da=await readSqlLockFile(_0x1674fb['lockFilePath']),{lockData:_0x52b3cc,appLock:_0x46a7ce}=ensureSqlLockScope(_0x9367da??createEmptySqlLock(),_0x1674fb[_0x14372f(0x168)],_0x1674fb[_0x14372f(0x155)],'new');return _0x46a7ce[_0x14372f(0x167)][_0x4371c4[_0x14372f(0x179)]]={...buildSqlLockEntry(_0x4371c4,_0x56b825,computeSqlContentHash(_0x5bf496),{'dbName':_0x47945b}),'path':_0x45a72a,'mode':_0x1d1066},_0x46a7ce[_0x14372f(0x177)]=new Date()['toISOString'](),await writeSqlLockFile(_0x1674fb['lockFilePath'],_0x52b3cc),{'ok':!![],'data':{'id':_0x4371c4['id'],'sqlCode':_0x4371c4[_0x14372f(0x179)],'sqlName':_0x4371c4['sqlName'],'dbId':_0x4371c4[_0x14372f(0x15b)],'path':_0x441177,'mode':_0x1d1066},'message':_0x14372f(0x16f)+_0x4371c4[_0x14372f(0x179)]};}};async function resolveSqlNewInputs(_0x3b2a39){const _0x4cb9fa=await resolveSqlNameInput(_0x3b2a39),{dbId:_0x4a058d,dbName:_0x1360c3}=await resolveDbSelection(_0x3b2a39),_0x2998b7=await resolveSqlModeInput(_0x3b2a39);return{'sqlName':_0x4cb9fa,'dbId':_0x4a058d,'dbName':_0x1360c3,'mode':_0x2998b7};}async function resolveSqlNameInput(_0x21d4a6){const _0x51c822=a132_0x3a0033,_0x3f2bdb=_0x21d4a6[_0x51c822(0x17c)](_0x51c822(0x16d))[_0x51c822(0x174)]();if(_0x3f2bdb)return _0x3f2bdb;if(_0x21d4a6[_0x51c822(0x14f)])throw CliErrors[_0x51c822(0x143)](_0x51c822(0x16d),_0x51c822(0x156));return(await input({'message':_0x51c822(0x14a),'validate':_0x10347b=>_0x10347b[_0x51c822(0x174)]()?!![]:_0x51c822(0x170)}))[_0x51c822(0x174)]();}async function resolveDbSelection(_0x1fc99c){const _0x13b43b=a132_0x3a0033,_0x1d3976=resolveProvidedDbId(_0x1fc99c);if(typeof _0x1d3976===_0x13b43b(0x17b)&&Number[_0x13b43b(0x154)](_0x1d3976)&&_0x1d3976>0x0)return{'dbId':_0x1d3976,'dbName':await getDbName(_0x1fc99c[_0x13b43b(0x168)],_0x1d3976)[_0x13b43b(0x144)](()=>undefined)};if(_0x1fc99c[_0x13b43b(0x14f)])throw CliErrors[_0x13b43b(0x143)](_0x13b43b(0x161),_0x13b43b(0x17a));const _0x2ca411=await listDatabases(_0x1fc99c['appCode'])[_0x13b43b(0x144)](()=>[]);if(_0x2ca411[_0x13b43b(0x169)]===0x1)return{'dbId':_0x2ca411[0x0]['dbId'],'dbName':_0x2ca411[0x0][_0x13b43b(0x17e)]};if(_0x2ca411[_0x13b43b(0x169)]>0x1){const _0x349db2=await select({'message':_0x13b43b(0x157),'choices':[..._0x2ca411[_0x13b43b(0x15f)](_0x21c4b6=>({'name':_0x21c4b6[_0x13b43b(0x17e)]+'\x20('+_0x21c4b6['dbId']+')','value':serializeDbSelection(_0x21c4b6)})),{'name':'✎\x20手动输入\x20dbId','value':_0x13b43b(0x159)}]});if(_0x349db2!==_0x13b43b(0x159))return deserializeDbSelection(_0x349db2);}const _0x4d5ffe=await input({'message':_0x13b43b(0x15e),'validate':_0x4bcfe3=>{const _0x146ff6=_0x13b43b,_0x349072=_0x4bcfe3[_0x146ff6(0x174)]();if(!_0x349072)return _0x146ff6(0x165);const _0x12bb18=Number(_0x349072);if(!Number[_0x146ff6(0x13d)](_0x12bb18)||_0x12bb18<=0x0)return _0x146ff6(0x16e);return!![];}});return{'dbId':Number(_0x4d5ffe[_0x13b43b(0x174)]())};}async function resolveSqlModeInput(_0x927e5d){const _0x462657=a132_0x3a0033,_0x24f751=_0x927e5d[_0x462657(0x17c)]('mode')[_0x462657(0x174)]();if(_0x24f751===_0x462657(0x158)||_0x24f751==='mybatisXml')return _0x24f751;if(_0x927e5d[_0x462657(0x14f)])throw CliErrors['flagMissing'](_0x462657(0x176),_0x462657(0x14e));return await select({'message':'请选择本地\x20SQL\x20模式:','choices':[{'name':_0x462657(0x14d),'value':_0x462657(0x158),'description':'适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句'},{'name':_0x462657(0x15c),'value':'mybatisXml','description':_0x462657(0x14b)}]});}function serializeDbSelection(_0x4ddd3d){const _0x4f7ecf=a132_0x3a0033;return JSON[_0x4f7ecf(0x15d)]({'dbId':_0x4ddd3d[_0x4f7ecf(0x15b)],'dbName':_0x4ddd3d[_0x4f7ecf(0x17e)]});}function a132_0x31a0(_0x28914c,_0x45e959){_0x28914c=_0x28914c-0x13c;const _0x3e5161=a132_0x3e51();let _0x31a062=_0x3e5161[_0x28914c];return _0x31a062;}function deserializeDbSelection(_0x145683){const _0x4ab50e=a132_0x3a0033;try{const _0x1575a5=JSON[_0x4ab50e(0x146)](_0x145683);if(typeof _0x1575a5[_0x4ab50e(0x15b)]===_0x4ab50e(0x17b)&&Number[_0x4ab50e(0x154)](_0x1575a5[_0x4ab50e(0x15b)]))return{'dbId':_0x1575a5[_0x4ab50e(0x15b)],'dbName':_0x1575a5[_0x4ab50e(0x17e)]};}catch{}throw CliErrors[_0x4ab50e(0x13e)]('Invalid\x20database\x20selection\x20payload:\x20'+_0x145683);}function resolveProvidedDbId(_0x42893b){const _0x100bf6=a132_0x3a0033,_0x39504f=_0x42893b[_0x100bf6(0x16c)]('db-id');if(typeof _0x39504f===_0x100bf6(0x17b)&&Number[_0x100bf6(0x154)](_0x39504f))return _0x39504f;return undefined;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a133_0x56882e=a133_0xa72a;(function(_0x53cd79,_0x7970b6){const _0x1450aa=a133_0xa72a,_0x33d404=_0x53cd79();while(!![]){try{const _0x112ef0=parseInt(_0x1450aa(0x148))/0x1+parseInt(_0x1450aa(0x139))/0x2*(-parseInt(_0x1450aa(0x141))/0x3)+-parseInt(_0x1450aa(0x129))/0x4+-parseInt(_0x1450aa(0x13d))/0x5+-parseInt(_0x1450aa(0x133))/0x6*(-parseInt(_0x1450aa(0x130))/0x7)+parseInt(_0x1450aa(0x143))/0x8*(parseInt(_0x1450aa(0x137))/0x9)+-parseInt(_0x1450aa(0x12f))/0xa;if(_0x112ef0===_0x7970b6)break;else _0x33d404['push'](_0x33d404['shift']());}catch(_0x262e6d){_0x33d404['push'](_0x33d404['shift']());}}}(a133_0x3f47,0x3e963));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 a133_0xa72a(_0xda1785,_0xa75cca){_0xda1785=_0xda1785-0x129;const _0x3f47f9=a133_0x3f47();let _0xa72af9=_0x3f47f9[_0xda1785];return _0xa72af9;}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':a133_0x56882e(0x14a),'command':'delete','description':'Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','risk':'high-risk-write','flags':[SQLCODE_FLAG],async 'validate'(_0x9cdae1){const _0x6c956f=a133_0x56882e,_0x1e4dca=loadSqlProjectConfig(_0x9cdae1[_0x6c956f(0x131)]),_0x24f549=await readSqlLockFile(_0x1e4dca[_0x6c956f(0x12a)]);if(!_0x24f549)throw CliErrors[_0x6c956f(0x147)](_0x6c956f(0x149));},async 'dryRun'(_0x47c62b){const _0x15311c=a133_0x56882e,_0xd0dadd=loadSqlProjectConfig(_0x47c62b[_0x15311c(0x131)]),_0x382042=await readSqlLockFile(_0xd0dadd[_0x15311c(0x12a)]);if(!_0x382042)throw CliErrors[_0x15311c(0x147)](_0x15311c(0x149));const {appLock:_0x1ffdf9}=ensureSqlLockScope(_0x382042,_0x47c62b[_0x15311c(0x131)],_0xd0dadd[_0x15311c(0x144)],_0x15311c(0x13f)),_0x37a933=_0x47c62b[_0x15311c(0x135)](_0x15311c(0x12b)),_0xcfcb1b=_0x1ffdf9['sqls'][_0x37a933];if(!_0xcfcb1b)throw CliErrors['validation'](_0x15311c(0x14b)+_0x37a933+'\x22.');return{'method':'POST','url':_0x15311c(0x13e),'body':{'sqlCode':_0x37a933,'id':_0xcfcb1b[_0x15311c(0x134)],'localPath':resolveLocalSqlFilePath(_0xd0dadd,_0x37a933,_0xcfcb1b)},'description':_0x15311c(0x13a)+_0x37a933+_0x15311c(0x132)+_0xd0dadd[_0x15311c(0x142)]};},async 'execute'(_0x45e855){const _0x1bafdc=a133_0x56882e,_0x320407=loadSqlProjectConfig(_0x45e855['appCode']),_0x186f8d=await readSqlLockFile(_0x320407[_0x1bafdc(0x12a)]);if(!_0x186f8d)throw CliErrors[_0x1bafdc(0x147)]('SQL\x20lock\x20file\x20not\x20found.');const {lockData:_0x39324a,appLock:_0x190d66}=ensureSqlLockScope(_0x186f8d,_0x45e855[_0x1bafdc(0x131)],_0x320407[_0x1bafdc(0x144)],_0x1bafdc(0x13f)),_0x5ea9f8=_0x45e855[_0x1bafdc(0x135)]('sqlcode'),_0x352190=_0x190d66[_0x1bafdc(0x12d)][_0x5ea9f8];if(!_0x352190)throw CliErrors[_0x1bafdc(0x147)]('No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22'+_0x5ea9f8+'\x22.');await deleteSqlQuery({'id':_0x352190['remoteId'],'sqlCode':_0x5ea9f8}),_0x190d66[_0x1bafdc(0x12d)]=Object[_0x1bafdc(0x13b)](Object[_0x1bafdc(0x14c)](_0x190d66[_0x1bafdc(0x12d)])['filter'](([_0x46468c])=>_0x46468c!==_0x5ea9f8)),_0x190d66[_0x1bafdc(0x12c)]=new Date()[_0x1bafdc(0x145)](),await writeSqlLockFile(_0x320407[_0x1bafdc(0x12a)],_0x39324a);const _0x3da6b0=resolveLocalSqlFilePath(_0x320407,_0x5ea9f8,_0x352190);let _0xac9eea;await fileExists(_0x3da6b0)&&(_0xac9eea=await moveToTrash(_0x320407[_0x1bafdc(0x13c)],_0x320407[_0x1bafdc(0x142)],_0x3da6b0),await cleanupEmptyDirectories(dirname(_0x3da6b0),_0x320407[_0x1bafdc(0x146)]));const _0x2ba89d={'deleted':_0x5ea9f8,'remoteId':_0x352190[_0x1bafdc(0x134)]};if(_0xac9eea)_0x2ba89d[_0x1bafdc(0x12e)]=_0xac9eea;return{'ok':!![],'data':_0x2ba89d,'message':_0x1bafdc(0x136)+_0x5ea9f8+(_0xac9eea?_0x1bafdc(0x14d):'')};}};function a133_0x3f47(){const _0x9009bd=['sqlRoot','toISOString','sqlRootDir','validation','394720ilqroQ','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','sql','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','entries','\x20(local\x20file\x20moved\x20to\x20trash)','530392MGjTJA','lockFilePath','sqlcode','lastSync','sqls','trashedTo','1673980ewUSeo','973MwoFmX','appCode','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20','9588TreHPQ','remoteId','str','Deleted\x20','9RmPJTx','startsWith','134908TwWtzT','Would\x20delete\x20SQL\x20','fromEntries','projectRoot','950780qjPSfD','/smartapi/custom/deleteUserCustomSql','delete','replace','3BwlTrd','trashDir','1576952qYtwQK'];a133_0x3f47=function(){return _0x9009bd;};return a133_0x3f47();}async function moveToTrash(_0x4bf1f0,_0x3f1ba3,_0x535b97){const _0x3265af=a133_0x56882e,_0x29e413=new Date()[_0x3265af(0x145)]()[_0x3265af(0x140)](/[:.]/g,'-'),_0x1ca5ee=relative(_0x4bf1f0,_0x535b97),_0x142219=join(_0x3f1ba3,_0x29e413,_0x1ca5ee);return await mkdir(dirname(_0x142219),{'recursive':!![]}),await rename(_0x535b97,_0x142219),_0x142219;}async function cleanupEmptyDirectories(_0x271fbf,_0xc56607){const _0x1b4992=a133_0x56882e;let _0xc4eda2=resolve(_0x271fbf);const _0x1e227b=resolve(_0xc56607);while(_0xc4eda2[_0x1b4992(0x138)](''+_0x1e227b+sep)||_0xc4eda2===_0x1e227b){if(_0xc4eda2===_0x1e227b)return;try{const _0xbaa3af=await readdir(_0xc4eda2);if(_0xbaa3af['length']>0x0)return;await rmdir(_0xc4eda2);}catch{return;}_0xc4eda2=dirname(_0xc4eda2);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a134_0x1a8a02=a134_0x59b2;function a134_0x59b2(_0x51963f,_0x420207){_0x51963f=_0x51963f-0x15a;const _0x2f0137=a134_0x2f01();let _0x59b251=_0x2f0137[_0x51963f];return _0x59b251;}(function(_0x44ac12,_0x5e65b7){const _0x4cd0b8=a134_0x59b2,_0x1a9a28=_0x44ac12();while(!![]){try{const _0x3fb6e3=parseInt(_0x4cd0b8(0x16e))/0x1*(parseInt(_0x4cd0b8(0x15b))/0x2)+parseInt(_0x4cd0b8(0x166))/0x3*(parseInt(_0x4cd0b8(0x15e))/0x4)+parseInt(_0x4cd0b8(0x16c))/0x5*(parseInt(_0x4cd0b8(0x169))/0x6)+parseInt(_0x4cd0b8(0x171))/0x7*(parseInt(_0x4cd0b8(0x168))/0x8)+-parseInt(_0x4cd0b8(0x160))/0x9*(parseInt(_0x4cd0b8(0x170))/0xa)+-parseInt(_0x4cd0b8(0x15f))/0xb*(parseInt(_0x4cd0b8(0x165))/0xc)+-parseInt(_0x4cd0b8(0x16f))/0xd;if(_0x3fb6e3===_0x5e65b7)break;else _0x1a9a28['push'](_0x1a9a28['shift']());}catch(_0x1846ba){_0x1a9a28['push'](_0x1a9a28['shift']());}}}(a134_0x2f01,0xa9505));function a134_0x2f01(){const _0x3ff605=['Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','7300168OxldGV','156126tVSqQO','dbId','sql','15MgjMMW','str','2949lkEljh','10999287zuqxYG','28240jQhAWW','7GbNTQX','appCode','446HJqkON','detail','verbose','253404LXqGWn','10021EsEarx','2142CPcEgv','boolean','sqlContent','description','Return\x20full\x20raw\x20SQL\x20query\x20object','4260tHPBFi','42bhTVwH'];a134_0x2f01=function(){return _0x3ff605;};return a134_0x2f01();}import{getSqlQueryInfo}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDetail={'service':a134_0x1a8a02(0x16b),'command':a134_0x1a8a02(0x15c),'description':a134_0x1a8a02(0x167),'risk':'read','flags':[SQLCODE_FLAG,{'name':a134_0x1a8a02(0x15d),'type':a134_0x1a8a02(0x161),'description':a134_0x1a8a02(0x164)}],async 'execute'(_0x4370f7){const _0x5a1dfc=a134_0x1a8a02,_0x54f45b=await getSqlQueryInfo(_0x4370f7[_0x5a1dfc(0x15a)],_0x4370f7[_0x5a1dfc(0x16d)]('sqlcode')),_0x1b6971=_0x4370f7['bool'](_0x5a1dfc(0x15d));if(_0x1b6971)return{'ok':!![],'data':_0x54f45b};const _0x1bca26=_0x54f45b['dbId']?await getDbName(_0x4370f7[_0x5a1dfc(0x15a)],_0x54f45b['dbId']):undefined;return{'ok':!![],'data':{'sqlCode':_0x54f45b['sqlCode'],'sqlName':_0x54f45b['sqlName'],'db':_0x1bca26?_0x1bca26+'\x20('+_0x54f45b[_0x5a1dfc(0x16a)]+')':_0x54f45b['dbId']??'','description':_0x54f45b[_0x5a1dfc(0x163)]??'','sqlContent':_0x54f45b[_0x5a1dfc(0x162)]??''}};}};
|
package/lib/commands/sql/exec.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a135_0x41b073=a135_0x2595;(function(_0x151849,_0x3eff81){const _0x3705a4=a135_0x2595,_0x513a80=_0x151849();while(!![]){try{const _0x266110=-parseInt(_0x3705a4(0xb2))/0x1*(parseInt(_0x3705a4(0xad))/0x2)+parseInt(_0x3705a4(0xb5))/0x3+parseInt(_0x3705a4(0xa5))/0x4*(-parseInt(_0x3705a4(0xae))/0x5)+-parseInt(_0x3705a4(0xa3))/0x6+parseInt(_0x3705a4(0xa9))/0x7*(parseInt(_0x3705a4(0xa4))/0x8)+-parseInt(_0x3705a4(0xa8))/0x9*(-parseInt(_0x3705a4(0xac))/0xa)+-parseInt(_0x3705a4(0xb9))/0xb*(-parseInt(_0x3705a4(0xa7))/0xc);if(_0x266110===_0x3eff81)break;else _0x513a80['push'](_0x513a80['shift']());}catch(_0x36a43d){_0x513a80['push'](_0x513a80['shift']());}}}(a135_0x4b43,0x5c5a3));function a135_0x4b43(){const _0x26369=['36JzMhms','9tctuwm','7tEryNS','exec','sql','6968690AdaNUO','230RzYXCT','20cJqDtx','SQL\x20parameters\x20as\x20JSON\x20string\x20(e.g.\x20\x27{\x22key\x22:\x22value\x22}\x27)','length','Returned\x20','6332gQTMeq','execError','isArray','654417iHgdFd','execSuccess','execResult','string','2196326Ylvksq','params','sqlcode','str','now','SQL\x20execution\x20failed','read','748104LgUXKr','3560008vznOds','727868TVhsRf','Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode'];a135_0x4b43=function(){return _0x26369;};return a135_0x4b43();}import{executeSql}from'../../core/api-client.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';function a135_0x2595(_0x45aec9,_0x417cc2){_0x45aec9=_0x45aec9-0xa1;const _0x4b432e=a135_0x4b43();let _0x2595dc=_0x4b432e[_0x45aec9];return _0x2595dc;}import{parseJsonParams}from'../../utils/params.js';export const sqlExec={'service':a135_0x41b073(0xab),'command':a135_0x41b073(0xaa),'description':a135_0x41b073(0xa6),'risk':a135_0x41b073(0xa2),'flags':[SQLCODE_FLAG,{'name':a135_0x41b073(0xba),'type':a135_0x41b073(0xb8),'description':a135_0x41b073(0xaf)}],async 'execute'(_0x420e34){const _0x4c0e79=a135_0x41b073,_0x152b23=parseJsonParams(_0x420e34[_0x4c0e79(0xbc)](_0x4c0e79(0xba))),_0x210987=Date[_0x4c0e79(0xbd)](),_0x440eca=await executeSql(_0x420e34['appCode'],_0x420e34['str'](_0x4c0e79(0xbb)),_0x152b23),_0x358333=Date['now']()-_0x210987,_0x28e335=_0x440eca?.[_0x4c0e79(0xb7)]??_0x440eca,_0x153daf=_0x440eca?.[_0x4c0e79(0xb6)]??!![];if(!_0x153daf)return{'ok':![],'data':{'error':_0x440eca?.[_0x4c0e79(0xb3)]||_0x4c0e79(0xa1),'elapsed':_0x358333},'message':_0x4c0e79(0xa1)};const _0x1c8761=Array[_0x4c0e79(0xb4)](_0x28e335)?_0x28e335:[];return{'ok':!![],'data':{'rows':_0x1c8761,'rowCount':_0x1c8761['length'],'elapsed':_0x358333},'message':_0x4c0e79(0xb1)+_0x1c8761[_0x4c0e79(0xb0)]+'\x20row(s)\x20in\x20'+_0x358333+'ms'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x57077c,_0xeda266){const _0x46732b=a136_0x107e,_0xd1ef9=_0x57077c();while(!![]){try{const _0x41db2f=parseInt(_0x46732b(0x19b))/0x1*(parseInt(_0x46732b(0x199))/0x2)+parseInt(_0x46732b(0x194))/0x3+-parseInt(_0x46732b(0x19c))/0x4+parseInt(_0x46732b(0x195))/0x5*(parseInt(_0x46732b(0x19a))/0x6)+-parseInt(_0x46732b(0x198))/0x7*(parseInt(_0x46732b(0x19d))/0x8)+-parseInt(_0x46732b(0x197))/0x9+parseInt(_0x46732b(0x196))/0xa;if(_0x41db2f===_0xeda266)break;else _0xd1ef9['push'](_0xd1ef9['shift']());}catch(_0x9a1060){_0xd1ef9['push'](_0xd1ef9['shift']());}}}(a136_0x9fe4,0x1dcba));import{sqlList}from'../../commands/sql/list.js';import{sqlDetail}from'../../commands/sql/detail.js';function a136_0x107e(_0x2aaca6,_0x3547fd){_0x2aaca6=_0x2aaca6-0x194;const _0x9fe444=a136_0x9fe4();let _0x107ed7=_0x9fe444[_0x2aaca6];return _0x107ed7;}import{sqlValidate}from'../../commands/sql/validate.js';import{sqlSave}from'../../commands/sql/save.js';import{sqlExec}from'../../commands/sql/exec.js';import{sqlPull}from'../../commands/sql/pull.js';import{sqlCreate}from'../../commands/sql/create.js';import{sqlStatus}from'../../commands/sql/status.js';import{sqlPush}from'../../commands/sql/push.js';function a136_0x9fe4(){const _0x1231da=['144PTpinJ','104101ELqxkC','275680iPEHvI','1264HBWCmS','417975nFzGbD','35375xVDydG','389910uLGsOO','1150938mJcWFh','10521aKnaHC','4jBXuUb'];a136_0x9fe4=function(){return _0x1231da;};return a136_0x9fe4();}import{sqlDelete}from'../../commands/sql/delete.js';export const sqlDefinitions=[sqlList,sqlDetail,sqlStatus,sqlCreate,sqlPush,sqlValidate,sqlSave,sqlExec,sqlPull,sqlDelete];
|
package/lib/commands/sql/list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a137_0x28a530=a137_0x288a;(function(_0x25652c,_0x23a7e2){const _0x549a6a=a137_0x288a,_0x521ef6=_0x25652c();while(!![]){try{const _0x282710=-parseInt(_0x549a6a(0x15c))/0x1*(-parseInt(_0x549a6a(0x158))/0x2)+parseInt(_0x549a6a(0x168))/0x3+-parseInt(_0x549a6a(0x150))/0x4+-parseInt(_0x549a6a(0x15d))/0x5+-parseInt(_0x549a6a(0x163))/0x6*(parseInt(_0x549a6a(0x16b))/0x7)+-parseInt(_0x549a6a(0x15f))/0x8+parseInt(_0x549a6a(0x16d))/0x9;if(_0x282710===_0x23a7e2)break;else _0x521ef6['push'](_0x521ef6['shift']());}catch(_0x3692ee){_0x521ef6['push'](_0x521ef6['shift']());}}}(a137_0x53e1,0xb440f));import{listSqlQueries}from'../../core/api-client.js';function a137_0x53e1(){const _0x2f2eba=['str','No\x20custom\x20SQL\x20queries\x20found.','all','17490ugDVkR','sqlCode','name','Found\x20','read','2731881rVDAfL','Page\x20number','number','2849FzWhWJ','string','26200224ZQlrOA','totalCount','page','sql','num','length','sqlcode','1410728DwZfeZ','bool','paging','pagesize','appCode','Page\x20size','map','sqlName','2KJzmXv','List\x20custom\x20SQL\x20queries','dbId','description','196565NujDPn','3741980DIyzwi','verbose','7940208UXtvOW'];a137_0x53e1=function(){return _0x2f2eba;};return a137_0x53e1();}import{getDbName}from'../../core/db-resolver.js';function a137_0x288a(_0x5e70ab,_0x178c3e){_0x5e70ab=_0x5e70ab-0x14a;const _0x53e122=a137_0x53e1();let _0x288a23=_0x53e122[_0x5e70ab];return _0x288a23;}import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';export const sqlList={'service':a137_0x28a530(0x14c),'command':'list','description':a137_0x28a530(0x159),'risk':a137_0x28a530(0x167),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':'name','type':a137_0x28a530(0x16c),'description':'Filter\x20by\x20SQL\x20name'},{'name':a137_0x28a530(0x14b),'type':a137_0x28a530(0x16a),'description':a137_0x28a530(0x169),'default':0x1},{'name':a137_0x28a530(0x153),'type':a137_0x28a530(0x16a),'description':a137_0x28a530(0x155)},{'name':a137_0x28a530(0x15e),'type':'boolean','description':'Return\x20full\x20SQL\x20query\x20objects\x20including\x20parameters\x20and\x20SQL\x20content'}],async 'execute'(_0x428e99){const _0x5977fb=a137_0x28a530,_0x3c0c49=await listSqlQueries(_0x428e99[_0x5977fb(0x154)],{'sqlCode':_0x428e99[_0x5977fb(0x160)](_0x5977fb(0x14f))||undefined,'sqlName':_0x428e99[_0x5977fb(0x160)](_0x5977fb(0x165))||undefined,'currentPage':_0x428e99[_0x5977fb(0x14d)](_0x5977fb(0x14b)),'pageSize':_0x428e99[_0x5977fb(0x14d)](_0x5977fb(0x153),0x32)}),_0x32050c=_0x428e99[_0x5977fb(0x151)](_0x5977fb(0x15e)),_0x416474=_0x3c0c49['tableData']??[],_0x555409=_0x3c0c49[_0x5977fb(0x152)]?.[_0x5977fb(0x14a)]??_0x416474['length'];let _0x32daaf;return _0x32050c?_0x32daaf=_0x416474:_0x32daaf=await Promise[_0x5977fb(0x162)](_0x416474[_0x5977fb(0x156)](async _0x27ef55=>{const _0x37b765=_0x5977fb;let _0x34adc1;try{_0x34adc1=_0x27ef55[_0x37b765(0x15a)]?await getDbName(_0x428e99['appCode'],_0x27ef55[_0x37b765(0x15a)]):undefined;}catch{}return{'sqlCode':_0x27ef55[_0x37b765(0x164)],'sqlName':_0x27ef55[_0x37b765(0x157)],'description':_0x27ef55[_0x37b765(0x15b)]??'','db':_0x34adc1?_0x34adc1+'\x20('+_0x27ef55[_0x37b765(0x15a)]+')':_0x27ef55[_0x37b765(0x15a)]??''};})),{'ok':!![],'data':_0x32daaf,'message':_0x416474[_0x5977fb(0x14e)]===0x0?_0x5977fb(0x161):_0x5977fb(0x166)+_0x416474[_0x5977fb(0x14e)]+'\x20SQL\x20queries\x20(total:\x20'+_0x555409+').'};}};
|