@lovrabet/rabetbase-cli 2.2.0-beta.2 → 2.2.1-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/add.js +1 -1
- package/lib/commands/app/discover.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/remove.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app/use.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/update.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/standard-page-status.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/non-interactive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/init.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/skill/index.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/save.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/copy-directory.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x5091e4,_0x4c6295){const _0x3c0b39=a115_0x2fbe,_0x54795a=_0x5091e4();while(!![]){try{const _0x5869b9=parseInt(_0x3c0b39(0x148))/0x1*(parseInt(_0x3c0b39(0x135))/0x2)+-parseInt(_0x3c0b39(0x146))/0x3*(-parseInt(_0x3c0b39(0x140))/0x4)+parseInt(_0x3c0b39(0x15d))/0x5*(-parseInt(_0x3c0b39(0x155))/0x6)+parseInt(_0x3c0b39(0x144))/0x7*(-parseInt(_0x3c0b39(0x145))/0x8)+parseInt(_0x3c0b39(0x147))/0x9*(-parseInt(_0x3c0b39(0x15f))/0xa)+parseInt(_0x3c0b39(0x15a))/0xb+parseInt(_0x3c0b39(0x13c))/0xc;if(_0x5869b9===_0x4c6295)break;else _0x54795a['push'](_0x54795a['shift']());}catch(_0x3138b6){_0x54795a['push'](_0x54795a['shift']());}}}(a115_0x29e3,0x40f14));function a115_0x29e3(){const _0x7e8f85=['9UXxQhk','64413NzMSnS','parse','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','?\x20(Old\x20file\x20→\x20*.bak)','Upgrade\x20it\x20to\x20','defaultApp','\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27','log','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','utf8','cyan','bold','apps','30wgyCoB','App\x20Code\x20cannot\x20be\x20empty','\x20\x20Default:\x20','keys','✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory','3696132iZGjAu','info','yellow','185155nileFf','\x20\x20appcode:\x20','3559980wvgQdL','Invalid\x20App\x20Code','version','string','appcode','Please\x20enter\x20App\x20Code:','1.0.0','\x20→\x20.rabetbase.json','\x20api\x20pull\x27','trim','join','../..','2TsCFuo','\x20\x20Apps:\x20','\x20project\x20init`\x20to\x20start\x20fresh.','setLogPath','.rabetbase.json','Migration\x20cancelled.\x20Run\x20`','package.json','4727496xEYBpM','env','✓\x20Upgraded\x20','production','8Ewetrn','toLocaleString','app','.bak','7jbYQju','2689328AWyPkj','523410QZOtDz'];a115_0x29e3=function(){return _0x7e8f85;};return a115_0x29e3();}import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a115_0x5d6ce3 from'chalk';import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';function a115_0x2fbe(_0x1b5536,_0x5f588f){_0x1b5536=_0x1b5536-0x12c;const _0x29e387=a115_0x29e3();let _0x2fbea2=_0x29e387[_0x1b5536];return _0x2fbea2;}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(_0x4d772f){const _0x99e430=a115_0x2fbe,{appcode:_0xfa7c13,env:_0x148220,autoYes:_0x2022c9}=_0x4d772f,_0x424c7d=process['cwd']();if(getProjectConfigPath())throw new Error(_0x99e430(0x150));let _0x2f7b3d;for(const _0x1e35ad of LEGACY_CONFIG_NAMES){const _0x4f876c=resolve(_0x424c7d,_0x1e35ad);if(existsSync(_0x4f876c)){_0x2f7b3d=_0x4f876c;break;}}if(_0x2f7b3d){let _0x96da33={};try{_0x96da33=JSON[_0x99e430(0x149)](readFileSync(_0x2f7b3d,_0x99e430(0x151)));}catch{}const _0x4acd43=basename(_0x2f7b3d),_0x12fb4e=_0x96da33?.[_0x99e430(0x12d)]||_0x96da33?.[_0x99e430(0x142)];let _0x3583f9=_0x2022c9;!_0x2022c9&&(console[_0x99e430(0x14f)](a115_0x5d6ce3[_0x99e430(0x15c)](_0x99e430(0x14a)+a115_0x5d6ce3[_0x99e430(0x153)](_0x4acd43))),_0x12fb4e&&console[_0x99e430(0x14f)](a115_0x5d6ce3['cyan'](_0x99e430(0x15e)+_0x12fb4e)),_0x3583f9=await confirm({'message':_0x99e430(0x14c)+a115_0x5d6ce3[_0x99e430(0x153)](_0x99e430(0x139))+_0x99e430(0x14b),'default':!![]}));if(!_0x3583f9){console[_0x99e430(0x14f)](_0x99e430(0x13a)+CLI_BIN_NAME+_0x99e430(0x137));return;}const _0x5b009a=resolve(_0x424c7d,NEW_CONFIG_NAME),_0xff9f8=getCliVersionFromPkg(),_0x2ff3cf=readRawConfig(),_0x521721=_0xfa7c13||(typeof _0x96da33?.[_0x99e430(0x12d)]===_0x99e430(0x12c)?_0x96da33['appcode']:undefined)||(typeof _0x96da33?.[_0x99e430(0x142)]===_0x99e430(0x12c)?_0x96da33['app']:undefined)||await askAppcode(),_0x9aae88=typeof _0x96da33?.[_0x99e430(0x13d)]===_0x99e430(0x12c)?_0x96da33[_0x99e430(0x13d)]:typeof _0x2ff3cf['env']==='string'?_0x2ff3cf['env']:_0x99e430(0x13f),_0x413c9b=buildCanonicalProjectConfig({..._0x2ff3cf,..._0x96da33},{'appCodes':[_0x521721],'env':_0x9aae88,'metadata':{'version':_0xff9f8,'migratedAt':new Date()[_0x99e430(0x141)](),'migratedFrom':_0x2f7b3d}});writeConfigFile(_0x5b009a,_0x413c9b);const _0x310675=_0x2f7b3d+_0x99e430(0x143);renameSync(_0x2f7b3d,_0x310675),logger[_0x99e430(0x138)](_0x424c7d),logger[_0x99e430(0x15b)]('init','从旧配置文件升级成功',{'from':_0x2f7b3d,'to':_0x5b009a,'appcode':_0x521721,'env':_0x413c9b[_0x99e430(0x13d)]}),console[_0x99e430(0x14f)](a115_0x5d6ce3['green'](_0x99e430(0x13e)+_0x4acd43+_0x99e430(0x130))),console['log'](a115_0x5d6ce3[_0x99e430(0x152)](_0x99e430(0x136)+Object[_0x99e430(0x158)](_0x413c9b[_0x99e430(0x154)]||{})[_0x99e430(0x133)](',\x20'))),console[_0x99e430(0x14f)](a115_0x5d6ce3['cyan'](_0x99e430(0x157)+_0x413c9b[_0x99e430(0x14d)])),console[_0x99e430(0x14f)](a115_0x5d6ce3['gray']('\x20\x20Old\x20file\x20backed\x20up\x20as\x20'+_0x4acd43+_0x99e430(0x143)));return;}const _0xa5cd1=_0xfa7c13||await askAppcode(),_0x167635=resolve(_0x424c7d,NEW_CONFIG_NAME),_0x41f0d4=getCliVersionFromPkg(),_0xf11c36=readRawConfig(),_0x4e1960=typeof _0xf11c36[_0x99e430(0x13d)]===_0x99e430(0x12c)?_0xf11c36[_0x99e430(0x13d)]:undefined,_0x115c0f=buildCanonicalProjectConfig({},{'appCodes':[_0xa5cd1],'env':_0x148220||_0x4e1960||_0x99e430(0x13f),'metadata':{'version':_0x41f0d4,'createdAt':new Date()[_0x99e430(0x141)]()}});writeConfigFile(_0x167635,_0x115c0f),logger[_0x99e430(0x138)](_0x424c7d),logger['info']('init','初始化项目配置文件成功',{'appcode':_0xa5cd1,'env':_0x115c0f[_0x99e430(0x13d)],'version':_0x115c0f[_0x99e430(0x161)],'configPath':_0x167635}),console[_0x99e430(0x14f)](a115_0x5d6ce3['green'](_0x99e430(0x159))),console['log'](a115_0x5d6ce3[_0x99e430(0x152)](_0x99e430(0x136)+Object[_0x99e430(0x158)](_0x115c0f[_0x99e430(0x154)]||{})[_0x99e430(0x133)](',\x20'))),console['log'](a115_0x5d6ce3['cyan'](_0x99e430(0x157)+_0x115c0f[_0x99e430(0x14d)])),console['log'](_0x99e430(0x14e)+CLI_BIN_NAME+'\x20api\x20generate\x27\x20and\x20\x27'+CLI_BIN_NAME+_0x99e430(0x131));}function askAppcode(){const _0x17e5cd=a115_0x2fbe;return input({'message':_0x17e5cd(0x12e),'validate':_0x1dfb48=>{const _0x1b8e3e=_0x17e5cd;if(!_0x1dfb48[_0x1b8e3e(0x132)]())return _0x1b8e3e(0x156);const {valid:_0x186ce6,message:_0x5172ad}=validateAppcode(_0x1dfb48['trim']());return _0x186ce6||_0x5172ad||_0x1b8e3e(0x160);}});}function getCliVersionFromPkg(){const _0xd31787=a115_0x2fbe;try{const _0x2d0940=fileURLToPath(import.meta.url),_0x39ef37=resolve(dirname(_0x2d0940),_0xd31787(0x134)),_0x107396=JSON['parse'](readFileSync(resolve(_0x39ef37,_0xd31787(0x13b)),'utf8'));return _0x107396[_0xd31787(0x161)]||_0xd31787(0x12f);}catch{return'1.0.0';}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a116_0xbae920=a116_0x419c;(function(_0x5a4125,_0x3beb9e){const _0x3b5628=a116_0x419c,_0x57f1ac=_0x5a4125();while(!![]){try{const _0x2d5209=-parseInt(_0x3b5628(0x174))/0x1+parseInt(_0x3b5628(0x1c2))/0x2*(-parseInt(_0x3b5628(0x1f6))/0x3)+-parseInt(_0x3b5628(0x1ba))/0x4*(-parseInt(_0x3b5628(0x1c9))/0x5)+parseInt(_0x3b5628(0x189))/0x6*(-parseInt(_0x3b5628(0x1c0))/0x7)+-parseInt(_0x3b5628(0x1cb))/0x8+-parseInt(_0x3b5628(0x19a))/0x9+parseInt(_0x3b5628(0x1e9))/0xa;if(_0x2d5209===_0x3beb9e)break;else _0x57f1ac['push'](_0x57f1ac['shift']());}catch(_0x124fac){_0x57f1ac['push'](_0x57f1ac['shift']());}}}(a116_0x3f4c,0x7696a));import a116_0x105924 from'chalk';import a116_0x4a8ca2 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[a116_0xbae920(0x1cf)](_0x75e2=>_0x75e2!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x1df4b9){const _0x39691f=a116_0xbae920,_0x478ce9=[];for(const _0x48559e of Object[_0x39691f(0x1c7)](CORE_IDE_CONFIGS)){if(_0x48559e[_0x39691f(0x18b)])for(const _0x5db8c3 of _0x48559e[_0x39691f(0x18b)]){_0x478ce9['push'](resolve(_0x1df4b9,_0x5db8c3[_0x39691f(0x1b9)]));}}return _0x478ce9;}function analyse(_0x3d4421){const _0x16208a=a116_0xbae920;let _0x3988d7=null;const _0x3fe84b=resolve(_0x3d4421,NEW_CONFIG_NAME),_0x51e80b=existsSync(_0x3fe84b);for(const _0x38f75c of LEGACY_CONFIG_NAMES){const _0x525302=resolve(_0x3d4421,_0x38f75c);if(existsSync(_0x525302)){const _0x35a7a3=readConfigFile(_0x525302),_0x27c0d7=Object[_0x16208a(0x1ee)](_0x35a7a3)[_0x16208a(0x1cf)](_0x39c039=>typeof _0x35a7a3[_0x39c039]!==_0x16208a(0x1bf));_0x3988d7={'oldPath':_0x525302,'hasNewConfig':_0x51e80b,'fields':_0x27c0d7};break;}}const _0x4ecb29=[],_0xced91d=resolve(_0x3d4421,_0x16208a(0x1b2));if(existsSync(_0xced91d))_0x4ecb29[_0x16208a(0x17e)](_0xced91d);const _0x5a3a1c=resolve(_0x3d4421,_0x16208a(0x195));if(existsSync(_0x5a3a1c))_0x4ecb29[_0x16208a(0x17e)](_0x5a3a1c);const _0x149982=resolve(_0x3d4421,_0x16208a(0x187));if(existsSync(_0x149982))_0x4ecb29[_0x16208a(0x17e)](_0x149982);for(const _0x1e3823 of collectIdeSkillFiles(_0x3d4421)){if(existsSync(_0x1e3823))_0x4ecb29['push'](_0x1e3823);}let _0x46b71b=null;const _0x5e7ea8=resolve(_0x3d4421,'.cursor/mcp.json');if(existsSync(_0x5e7ea8))try{const _0x28c0ac=JSON['parse'](readFileSync(_0x5e7ea8,_0x16208a(0x1e0)));if(_0x28c0ac?.['mcpServers']&&typeof _0x28c0ac[_0x16208a(0x185)]===_0x16208a(0x1eb)){const _0xeb3137=[];for(const [_0x37ed2f,_0x24bc12]of Object[_0x16208a(0x1ea)](_0x28c0ac['mcpServers'])){const _0x46e221=_0x24bc12;_0x46e221?.[_0x16208a(0x1ab)]&&Array[_0x16208a(0x1ef)](_0x46e221['args'])&&_0x46e221[_0x16208a(0x1ab)][_0x16208a(0x188)](_0x403c5a=>typeof _0x403c5a===_0x16208a(0x1d9)&&_0x403c5a['includes'](_0x16208a(0x19d)))&&_0xeb3137[_0x16208a(0x17e)](_0x37ed2f);}_0xeb3137['length']>0x0&&(_0x46b71b={'path':_0x5e7ea8,'keys':_0xeb3137});}}catch{}const _0x1db4ee=_0x4ecb29[_0x16208a(0x1b5)]>0x0||_0x3988d7!==null;let _0x4fa3fe=null;const _0x486dde=resolve(_0x3d4421,_0x16208a(0x1d1));if(existsSync(_0x486dde))try{const _0x1ff7c8=JSON[_0x16208a(0x186)](readFileSync(_0x486dde,_0x16208a(0x1e0)));for(const _0x23a0a3 of[_0x16208a(0x1bb),'devDependencies']){const _0x549ea0=_0x1ff7c8?.[_0x23a0a3]?.[_0x16208a(0x1e7)];if(typeof _0x549ea0===_0x16208a(0x1d9)){_0x549ea0!==_0x16208a(0x190)&&(_0x4fa3fe={'pkgPath':_0x486dde,'currentVersion':_0x549ea0,'field':_0x23a0a3});break;}}}catch{}return{'configMigration':_0x3988d7,'oldArtifacts':_0x4ecb29,'oldMcpConfig':_0x46b71b,'needsSkillSwap':_0x1db4ee,'sdkUpgrade':_0x4fa3fe};}function printReport(_0x8d3276){const _0x4213e1=a116_0xbae920,{configMigration:_0x350eda,oldArtifacts:_0x5946b1,oldMcpConfig:_0x1928b1,needsSkillSwap:_0x40a9ca}=_0x8d3276;console['log'](''),console[_0x4213e1(0x179)](a116_0x105924[_0x4213e1(0x199)](_0x4213e1(0x1b6))),console[_0x4213e1(0x179)]('');_0x350eda?(console[_0x4213e1(0x179)](a116_0x105924[_0x4213e1(0x1a4)](_0x4213e1(0x18f))+('\x20\x20'+a116_0x105924[_0x4213e1(0x180)](_0x350eda['oldPath']))),console['log'](_0x4213e1(0x198)+(_0x350eda[_0x4213e1(0x1be)]?a116_0x105924[_0x4213e1(0x1d6)](_0x4213e1(0x1e2)):a116_0x105924[_0x4213e1(0x1f8)]('not\x20found\x20(will\x20create)'))),console[_0x4213e1(0x179)](_0x4213e1(0x1e3)+_0x350eda[_0x4213e1(0x1a3)]['join'](',\x20')),console[_0x4213e1(0x179)](_0x4213e1(0x1d0))):console[_0x4213e1(0x179)](a116_0x105924[_0x4213e1(0x1a4)](_0x4213e1(0x18f))+'\x20\x20'+a116_0x105924['gray'](_0x4213e1(0x184)));console[_0x4213e1(0x179)]('');if(_0x5946b1['length']>0x0){console[_0x4213e1(0x179)](a116_0x105924['cyan'](_0x4213e1(0x1a1)));for(const _0x16ee29 of _0x5946b1){console['log']('\x20\x20'+a116_0x105924[_0x4213e1(0x1f9)](_0x4213e1(0x1e5))+'\x20\x20'+_0x16ee29);}console['log']('\x20\x20Action:\x20delete');}else console[_0x4213e1(0x179)](a116_0x105924[_0x4213e1(0x1a4)]('Legacy\x20artifacts:')+'\x20\x20'+a116_0x105924[_0x4213e1(0x1f8)]('none\x20found'));console['log']('');_0x1928b1?(console[_0x4213e1(0x179)](a116_0x105924['cyan'](_0x4213e1(0x1a2))+('\x20\x20'+a116_0x105924['yellow'](_0x1928b1['path'])+_0x4213e1(0x1a0)+_0x1928b1[_0x4213e1(0x1ee)][_0x4213e1(0x192)](',\x20'))),console[_0x4213e1(0x179)]('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console[_0x4213e1(0x179)](a116_0x105924[_0x4213e1(0x1a4)](_0x4213e1(0x1a2))+'\x20\x20'+a116_0x105924[_0x4213e1(0x1f8)](_0x4213e1(0x196)));console[_0x4213e1(0x179)](''),console[_0x4213e1(0x179)](a116_0x105924[_0x4213e1(0x1a4)](_0x4213e1(0x1df))+('\x20\x20'+(_0x40a9ca?a116_0x105924['yellow'](_0x4213e1(0x1f2)):a116_0x105924['green'](_0x4213e1(0x1f4)))));_0x40a9ca&&console['log'](_0x4213e1(0x17d)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x4213e1(0x179)]('');if(_0x8d3276['sdkUpgrade']){const {currentVersion:_0x436b5a,field:_0x5d79e6,pkgPath:_0x546d0b}=_0x8d3276[_0x4213e1(0x1cd)];console[_0x4213e1(0x179)](a116_0x105924[_0x4213e1(0x1a4)](_0x4213e1(0x1b1))+('\x20\x20'+a116_0x105924[_0x4213e1(0x180)](_0x546d0b))),console[_0x4213e1(0x179)](_0x4213e1(0x17f)+_0x5d79e6+':\x20'+a116_0x105924[_0x4213e1(0x180)](_0x436b5a)+'\x20→\x20'+a116_0x105924['green'](_0x4213e1(0x190))),console[_0x4213e1(0x179)](_0x4213e1(0x17c));}else console[_0x4213e1(0x179)](a116_0x105924[_0x4213e1(0x1a4)](_0x4213e1(0x1b1))+'\x20\x20'+a116_0x105924[_0x4213e1(0x1f8)](_0x4213e1(0x1d5)));console[_0x4213e1(0x179)]('');}function execConfigMigration(_0x902f15,_0x1100ad){const _0x3cca5a=a116_0xbae920,{configMigration:_0x3015b2}=_0x902f15;if(!_0x3015b2?.[_0x3cca5a(0x1fa)])return{'step':0x1,'label':_0x3cca5a(0x194),'ok':!![],'detail':_0x3cca5a(0x1b3)};const _0x15af06=readConfigFile(_0x3015b2[_0x3cca5a(0x1fa)]),_0xde5481=resolve(_0x1100ad,NEW_CONFIG_NAME),_0x3f8afe=_0x3015b2[_0x3cca5a(0x1be)]?readConfigFile(_0xde5481):{};for(const [_0x5bffa3,_0xd9aea1]of Object[_0x3cca5a(0x1ea)](_0x15af06)){!(_0x5bffa3 in _0x3f8afe)&&(_0x3f8afe[_0x5bffa3]=_0xd9aea1);}writeConfigFile(_0xde5481,_0x3f8afe);const _0x5f1ea1=_0x3015b2[_0x3cca5a(0x1fa)]+_0x3cca5a(0x1a5);return renameSync(_0x3015b2[_0x3cca5a(0x1fa)],_0x5f1ea1),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x3015b2[_0x3cca5a(0x1fa)]+_0x3cca5a(0x19f)+_0xde5481+_0x3cca5a(0x1b8)+_0x5f1ea1+')'};}function execRemoveOldArtifacts(_0x2651a5){const _0x451318=a116_0xbae920,_0x2050f6=[];for(const _0x10b2b3 of _0x2651a5){try{if(!existsSync(_0x10b2b3))continue;const _0x5bb9c5=tryStat(_0x10b2b3);_0x5bb9c5?.[_0x451318(0x1f5)]()?rmSync(_0x10b2b3,{'recursive':!![],'force':!![]}):unlinkSync(_0x10b2b3);}catch(_0x2af0c8){_0x2050f6['push'](_0x10b2b3+':\x20'+_0x2af0c8['message']);}}return{'step':0x3,'label':_0x451318(0x1ae),'ok':_0x2050f6['length']===0x0,'detail':_0x2050f6[_0x451318(0x1b5)]>0x0?_0x2651a5[_0x451318(0x1b5)]-_0x2050f6['length']+'/'+_0x2651a5[_0x451318(0x1b5)]+_0x451318(0x19c)+_0x2050f6[_0x451318(0x192)](';\x20')+')':_0x2651a5[_0x451318(0x1b5)]+_0x451318(0x1dd)};}function a116_0x419c(_0x20e49b,_0x381fd){_0x20e49b=_0x20e49b-0x174;const _0x3f4c85=a116_0x3f4c();let _0x419c3c=_0x3f4c85[_0x20e49b];return _0x419c3c;}function execCleanMcp(_0x11003a){const _0x1bbe76=a116_0xbae920;if(!_0x11003a[_0x1bbe76(0x18c)])return{'step':0x4,'label':_0x1bbe76(0x19b),'ok':!![],'detail':_0x1bbe76(0x181)};try{const _0x52b449=readFileSync(_0x11003a[_0x1bbe76(0x18c)]['path'],_0x1bbe76(0x1e0)),_0x7abb91=JSON[_0x1bbe76(0x186)](_0x52b449);if(_0x7abb91?.[_0x1bbe76(0x185)]&&typeof _0x7abb91[_0x1bbe76(0x185)]===_0x1bbe76(0x1eb)){const _0x3aeee6=[];for(const [_0xf5cffe,_0x10df99]of Object[_0x1bbe76(0x1ea)](_0x7abb91[_0x1bbe76(0x185)])){_0x10df99?.[_0x1bbe76(0x1ab)]&&Array[_0x1bbe76(0x1ef)](_0x10df99['args'])&&_0x10df99[_0x1bbe76(0x1ab)]['some'](_0x50fde2=>typeof _0x50fde2==='string'&&_0x50fde2[_0x1bbe76(0x1c4)](_0x1bbe76(0x19d)))&&_0x3aeee6[_0x1bbe76(0x17e)](_0xf5cffe);}for(const _0x414ae1 of _0x3aeee6){delete _0x7abb91[_0x1bbe76(0x185)][_0x414ae1];}return _0x3aeee6['length']>0x0&&writeFileSync(_0x11003a['oldMcpConfig']['path'],JSON[_0x1bbe76(0x1ad)](_0x7abb91,null,0x2)+'\x0a',_0x1bbe76(0x1e0)),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x1bbe76(0x1dc)+_0x3aeee6['join'](',\x20')+_0x1bbe76(0x1ac)+_0x11003a['oldMcpConfig'][_0x1bbe76(0x1b9)]};}return{'step':0x4,'label':_0x1bbe76(0x19b),'ok':!![],'detail':_0x1bbe76(0x1d2)};}catch(_0x3b4700){return{'step':0x4,'label':_0x1bbe76(0x19b),'ok':![],'detail':_0x3b4700[_0x1bbe76(0x1ca)]};}}function execSkillsRemove(_0xd3a7ae,_0x3f688a){const _0x28adfc=a116_0xbae920,_0x136f57=runNpxSkillsRemove(_0xd3a7ae,{'stdio':'inherit','yes':_0x3f688a});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x136f57['ok'],'detail':_0x136f57['ok']?_0x28adfc(0x18a):_0x136f57[_0x28adfc(0x1d7)]??_0x28adfc(0x1db)+_0x136f57[_0x28adfc(0x1f0)]};}function execSkillsAdd(_0x15ba68,_0x5b30e5){const _0x1e5aa7=a116_0xbae920,_0x5a22ed=runNpxSkillsAddGlobal(_0x15ba68,'lovrabet/rabetbase',{'stdio':_0x1e5aa7(0x197),'yes':_0x5b30e5});return{'step':0x6,'label':_0x1e5aa7(0x1e6),'ok':_0x5a22ed['ok'],'detail':_0x5a22ed['ok']?_0x1e5aa7(0x1d3):_0x5a22ed[_0x1e5aa7(0x1d7)]??_0x1e5aa7(0x1db)+_0x5a22ed[_0x1e5aa7(0x1f0)]};}function execUpgradeSdk(_0x2959d1){const _0xd4fa98=a116_0xbae920;if(!_0x2959d1['sdkUpgrade'])return{'step':0x7,'label':_0xd4fa98(0x193),'ok':!![],'detail':_0xd4fa98(0x18d)};const {pkgPath:_0x19d31c,currentVersion:_0x119b84,field:_0x5906c4}=_0x2959d1['sdkUpgrade'];try{const _0x156e2a=readFileSync(_0x19d31c,_0xd4fa98(0x1e0)),_0x46df24=JSON[_0xd4fa98(0x186)](_0x156e2a);return _0x46df24[_0x5906c4]['@lovrabet/sdk']=_0xd4fa98(0x190),writeFileSync(_0x19d31c,JSON[_0xd4fa98(0x1ad)](_0x46df24,null,0x2)+'\x0a',_0xd4fa98(0x1e0)),{'step':0x7,'label':_0xd4fa98(0x193),'ok':!![],'detail':_0x5906c4+_0xd4fa98(0x191)+_0x119b84+_0xd4fa98(0x1e4)};}catch(_0x2cbf63){return{'step':0x7,'label':_0xd4fa98(0x193),'ok':![],'detail':_0x2cbf63[_0xd4fa98(0x1ca)]};}}function tryStat(_0x330d1d){try{return statSync(_0x330d1d);}catch{return undefined;}}function printSummary(_0x2a5e29){const _0x2ae3c1=a116_0xbae920;console[_0x2ae3c1(0x179)](''),console[_0x2ae3c1(0x179)](a116_0x105924[_0x2ae3c1(0x199)]('===\x20Upgrade\x20Summary\x20===')),console[_0x2ae3c1(0x179)]('');for(const _0x3dfe87 of _0x2a5e29){const _0xb74a31=_0x3dfe87['ok']?a116_0x105924[_0x2ae3c1(0x1d6)]('OK'):a116_0x105924[_0x2ae3c1(0x1f9)]('FAIL');console[_0x2ae3c1(0x179)]('\x20\x20'+_0xb74a31+_0x2ae3c1(0x1cc)+_0x3dfe87[_0x2ae3c1(0x1af)]+':\x20'+_0x3dfe87[_0x2ae3c1(0x1f7)]);if(_0x3dfe87[_0x2ae3c1(0x1a8)])console['log'](_0x2ae3c1(0x1e1)+a116_0x105924[_0x2ae3c1(0x1f8)](_0x3dfe87[_0x2ae3c1(0x1a8)]));}console['log']('');}function a116_0x3f4c(){const _0xf482fe=['exit\x20','removed\x20','\x20removed','Proceed\x20with\x20upgrade?','Skill\x20swap:','utf8','\x20\x20\x20\x20\x20\x20\x20','already\x20exists\x20(will\x20merge)','\x20\x20Fields\x20to\x20migrate:\x20','\x20→\x20latest','FOUND','Install\x20new\x20skill','@lovrabet/sdk','cwd','20026250CNXweK','entries','object','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','Step\x205/7:\x20Removing\x20old\x20skill...','keys','isArray','status','info','needed','Remove\x20.lovrabet/','not\x20needed','isDirectory','3891qYMwSE','label','gray','red','oldPath','287416tJrOUZ','done','Step\x201/7:\x20Migrating\x20config...','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','CANCEL','log','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','push','\x20\x20Current\x20version\x20in\x20','yellow','skipped','configMigration','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','no\x20legacy\x20config\x20found','mcpServers','parse','.claude/skills/lovrabet','some','18PHhTns','lovrabet/lovrabet-skill\x20removed','files','oldMcpConfig','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','start','Config\x20file:','latest','[\x22@lovrabet/sdk\x22]:\x20','join','Upgrade\x20@lovrabet/sdk','Config\x20migration','.cursor/rules/lovrabet_rules.mdc','no\x20legacy\x20entry','inherit','\x20\x20New\x20config\x20(.rabetbase.json):\x20','bold','2986704idTftY','Clean\x20MCP\x20config','\x20removed\x20(','@lovrabet/dataset-mcp-server','oldArtifacts','\x20→\x20','\x20→\x20keys:\x20','Legacy\x20artifacts:','MCP\x20config:','fields','cyan','.bak','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','detail','Step\x204/7:\x20MCP\x20config\x20—\x20','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','args','\x20from\x20','stringify','Remove\x20legacy\x20artifacts','step','fail','@lovrabet/sdk:','.lovrabet','skipped\x20(no\x20legacy\x20config)','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','length','===\x20Upgrade\x20Analysis\x20===','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','\x20(backup:\x20','path','3715784ooutDj','dependencies','Upgrade\x20completed\x20successfully!','succeed','hasNewConfig','undefined','1087401MkvOEq','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','1386PFhpxh','Upgrade\x20cancelled.','includes','needsSkillSwap','Step\x204/7:\x20Cleaning\x20MCP\x20config...','values','\x20\x20bun\x20install','5kpRpWQ','message','3693688kFdFIX','\x20\x20Step\x20','sdkUpgrade','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','filter','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','package.json','no\x20matching\x20entry\x20found','lovrabet/rabetbase\x20installed\x20globally','white','not\x20found\x20or\x20already\x20at\x20latest','green','error','failed','string','Step\x206/7:\x20Installing\x20new\x20skill...'];a116_0x3f4c=function(){return _0xf482fe;};return a116_0x3f4c();}export async function upgradeApp(_0x3dd3d3,_0x4c89ac){const _0x48e88f=a116_0xbae920,_0x519cc0=process[_0x48e88f(0x1e8)](),_0x56ba3c=analyse(_0x519cc0),_0x522ebd=!_0x56ba3c[_0x48e88f(0x182)]&&_0x56ba3c[_0x48e88f(0x19e)][_0x48e88f(0x1b5)]===0x0&&!_0x56ba3c[_0x48e88f(0x18c)]&&!_0x56ba3c[_0x48e88f(0x1c5)]&&!_0x56ba3c[_0x48e88f(0x1cd)];if(_0x522ebd){console[_0x48e88f(0x179)](a116_0x105924['green'](_0x48e88f(0x1ce)));return;}printReport(_0x56ba3c);const _0x29d5c6=!!(_0x4c89ac['yes']||_0x4c89ac['Y']||_0x3dd3d3);if(!_0x29d5c6)try{const _0x50e71e=await askConfirm(_0x48e88f(0x1de));if(!_0x50e71e){console[_0x48e88f(0x179)](a116_0x105924[_0x48e88f(0x1f8)](_0x48e88f(0x1c3)));return;}}catch(_0x5a0800){if(_0x5a0800?.[_0x48e88f(0x1ca)]===_0x48e88f(0x178)){console['log'](a116_0x105924[_0x48e88f(0x1f8)](_0x48e88f(0x1c3)));return;}throw _0x5a0800;}const _0x445a6e=[],_0x869890=a116_0x4a8ca2({'text':_0x48e88f(0x176),'color':_0x48e88f(0x1a4)})[_0x48e88f(0x18e)](),_0x16f829=execConfigMigration(_0x56ba3c,_0x519cc0);_0x445a6e[_0x48e88f(0x17e)](_0x16f829),_0x869890[_0x16f829['ok']?'succeed':'fail']('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0x16f829[_0x48e88f(0x1a8)]??(_0x16f829['ok']?'done':'failed')));const _0x305b61=resolve(_0x519cc0,'.lovrabet'),_0x2cbaae=a116_0x4a8ca2({'text':_0x48e88f(0x1aa),'color':_0x48e88f(0x1a4)})[_0x48e88f(0x18e)]();if(existsSync(_0x305b61))try{rmSync(_0x305b61,{'recursive':!![],'force':!![]}),_0x2cbaae[_0x48e88f(0x1bd)](_0x48e88f(0x17a)),_0x445a6e[_0x48e88f(0x17e)]({'step':0x2,'label':_0x48e88f(0x1f3),'ok':!![]});}catch(_0x5314dd){_0x2cbaae['fail'](_0x48e88f(0x183)+_0x5314dd[_0x48e88f(0x1ca)]),_0x445a6e[_0x48e88f(0x17e)]({'step':0x2,'label':_0x48e88f(0x1f3),'ok':![],'detail':_0x5314dd['message']});}else _0x2cbaae[_0x48e88f(0x1f1)](_0x48e88f(0x1b4)),_0x445a6e[_0x48e88f(0x17e)]({'step':0x2,'label':_0x48e88f(0x1f3),'ok':!![],'detail':'skipped'});const _0x247ae1=a116_0x4a8ca2({'text':_0x48e88f(0x1a7),'color':_0x48e88f(0x1a4)})[_0x48e88f(0x18e)](),_0x42a450=execRemoveOldArtifacts(_0x56ba3c['oldArtifacts']);_0x445a6e[_0x48e88f(0x17e)](_0x42a450),_0x247ae1[_0x42a450['ok']?_0x48e88f(0x1bd):_0x48e88f(0x1b0)](_0x48e88f(0x1b7)+(_0x42a450[_0x48e88f(0x1a8)]??(_0x42a450['ok']?_0x48e88f(0x175):_0x48e88f(0x1d8))));const _0x1e4cd6=a116_0x4a8ca2({'text':_0x48e88f(0x1c6),'color':'cyan'})[_0x48e88f(0x18e)](),_0x587acf=execCleanMcp(_0x56ba3c);_0x445a6e['push'](_0x587acf),_0x1e4cd6[_0x587acf['ok']?'succeed':_0x48e88f(0x1b0)](_0x48e88f(0x1a9)+(_0x587acf['detail']??(_0x587acf['ok']?_0x48e88f(0x175):_0x48e88f(0x1d8))));const _0x1a674e=a116_0x4a8ca2({'text':_0x48e88f(0x1ed),'color':'cyan'})[_0x48e88f(0x18e)](),_0x226e25=execSkillsRemove(_0x519cc0,_0x29d5c6);_0x445a6e['push'](_0x226e25),_0x1a674e[_0x226e25['ok']?_0x48e88f(0x1bd):_0x48e88f(0x1b0)](_0x48e88f(0x1c1)+(_0x226e25['detail']??(_0x226e25['ok']?_0x48e88f(0x175):_0x48e88f(0x1d8))));const _0x4bb237=a116_0x4a8ca2({'text':_0x48e88f(0x1da),'color':_0x48e88f(0x1a4)})[_0x48e88f(0x18e)](),_0x10fae1=execSkillsAdd(_0x519cc0,_0x29d5c6);_0x445a6e[_0x48e88f(0x17e)](_0x10fae1),_0x4bb237[_0x10fae1['ok']?_0x48e88f(0x1bd):_0x48e88f(0x1b0)](_0x48e88f(0x17b)+(_0x10fae1['detail']??(_0x10fae1['ok']?_0x48e88f(0x175):'failed')));const _0x5c382a=a116_0x4a8ca2({'text':'Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','color':_0x48e88f(0x1a4)})[_0x48e88f(0x18e)](),_0x128957=execUpgradeSdk(_0x56ba3c);_0x445a6e[_0x48e88f(0x17e)](_0x128957),_0x5c382a[_0x128957['ok']?_0x48e88f(0x1bd):_0x48e88f(0x1b0)](_0x48e88f(0x177)+(_0x128957[_0x48e88f(0x1a8)]??(_0x128957['ok']?_0x48e88f(0x175):_0x48e88f(0x1d8)))),printSummary(_0x445a6e);const _0x2d7e50=_0x445a6e[_0x48e88f(0x188)](_0x211c0b=>!_0x211c0b['ok']);_0x2d7e50?console[_0x48e88f(0x179)](a116_0x105924[_0x48e88f(0x180)]('Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.')):console[_0x48e88f(0x179)](a116_0x105924[_0x48e88f(0x1d6)](_0x48e88f(0x1bc))),_0x128957['ok']&&_0x56ba3c[_0x48e88f(0x1cd)]&&(console[_0x48e88f(0x179)](''),console[_0x48e88f(0x179)](a116_0x105924[_0x48e88f(0x199)][_0x48e88f(0x1a4)](_0x48e88f(0x1ec))),console['log'](a116_0x105924[_0x48e88f(0x1a4)](_0x48e88f(0x1a6))),console[_0x48e88f(0x179)](''),console[_0x48e88f(0x179)](a116_0x105924['white']('\x20\x20npm\x20install')),console['log'](a116_0x105924['white']('\x20\x20#\x20or')),console[_0x48e88f(0x179)](a116_0x105924[_0x48e88f(0x1d4)](_0x48e88f(0x1c8))),console[_0x48e88f(0x179)](''));}
|
|
1
|
+
const a116_0x4fa0ac=a116_0x3958;(function(_0x15c762,_0x25c833){const _0x50a683=a116_0x3958,_0x112302=_0x15c762();while(!![]){try{const _0x58db0d=parseInt(_0x50a683(0xf5))/0x1*(parseInt(_0x50a683(0x127))/0x2)+-parseInt(_0x50a683(0xc4))/0x3+parseInt(_0x50a683(0xfb))/0x4*(parseInt(_0x50a683(0xf8))/0x5)+parseInt(_0x50a683(0xbd))/0x6*(-parseInt(_0x50a683(0x11e))/0x7)+-parseInt(_0x50a683(0x10b))/0x8*(-parseInt(_0x50a683(0xe6))/0x9)+parseInt(_0x50a683(0xfa))/0xa+-parseInt(_0x50a683(0x137))/0xb;if(_0x58db0d===_0x25c833)break;else _0x112302['push'](_0x112302['shift']());}catch(_0x10b456){_0x112302['push'](_0x112302['shift']());}}}(a116_0x43ca,0xf272b));import a116_0x2295cf from'chalk';import a116_0x20ad00 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';function a116_0x43ca(){const _0x5c4aac=['lovrabet/rabetbase','entries','no\x20legacy\x20config\x20found','oldArtifacts','undefined','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','1304COliYi','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','succeed','@lovrabet/sdk:','label','Step\x206/7:\x20Installing\x20new\x20skill...','Upgrade\x20cancelled.','keys','step','files','Upgrade\x20completed\x20successfully!','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','FAIL','\x20\x20Current\x20version\x20in\x20','\x20→\x20','@lovrabet/dataset-mcp-server','exit\x20','utf8','MCP\x20config:','21QWktcl','none\x20found','cyan','Step\x201/7:\x20Migrating\x20config...','hasNewConfig','object','stringify','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','===\x20Upgrade\x20Analysis\x20===','163626xtGoBs','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','no\x20legacy\x20entry','\x20→\x20keys:\x20','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','CANCEL','.lovrabet','fail','skipped','path','includes','message','Legacy\x20artifacts:','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','error','oldPath','9994611pxBWqK','Remove\x20.lovrabet/','needed','@lovrabet/sdk','\x20\x20#\x20or','yes','3470526VKBQTr','Step\x201/7:\x20Config\x20migration\x20—\x20','yellow','latest','length','[\x22@lovrabet/sdk\x22]:\x20','\x20\x20New\x20config\x20(.rabetbase.json):\x20','5928645qcbWnD','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','fields','Remove\x20legacy\x20artifacts','some','cwd','white','oldMcpConfig','mcpServers','inherit','isArray','Remove\x20old\x20skill','Skill\x20swap:','push','done','failed','not\x20needed','.cursor/rules/lovrabet_rules.mdc','bold','lovrabet/lovrabet-skill\x20removed','parse','\x20→\x20latest','Step\x204/7:\x20Cleaning\x20MCP\x20config...','configMigration','sdkUpgrade','Step\x205/7:\x20Removing\x20old\x20skill...','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','gray','\x20\x20npm\x20install','join','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','Clean\x20MCP\x20config','102978LVgifT','status','Config\x20file:','log','Proceed\x20with\x20upgrade?','start','Install\x20new\x20skill','detail','string','args','red','\x20\x20Fields\x20to\x20migrate:\x20','green','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','dependencies','16atTDQT','not\x20found\x20(will\x20create)','Upgrade\x20@lovrabet/sdk','50AnFMYz','already\x20exists\x20(will\x20merge)','18986120RcdAUO','216192fabOBT','filter','\x20\x20bun\x20install','not\x20found\x20or\x20already\x20at\x20latest','values','\x20removed','Config\x20migration','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','\x20\x20Action:\x20delete'];a116_0x43ca=function(){return _0x5c4aac;};return a116_0x43ca();}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[a116_0x4fa0ac(0xfc)](_0x1f4eb6=>_0x1f4eb6!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x218a39){const _0xf7a71f=a116_0x4fa0ac,_0x154dd4=[];for(const _0x415e66 of Object[_0xf7a71f(0xff)](CORE_IDE_CONFIGS)){if(_0x415e66[_0xf7a71f(0x114)])for(const _0xcd276d of _0x415e66[_0xf7a71f(0x114)]){_0x154dd4[_0xf7a71f(0xd2)](resolve(_0x218a39,_0xcd276d[_0xf7a71f(0x130)]));}}return _0x154dd4;}function analyse(_0x2c2d41){const _0x5ab920=a116_0x4fa0ac;let _0x1096b3=null;const _0x1ebfa8=resolve(_0x2c2d41,NEW_CONFIG_NAME),_0x4f1188=existsSync(_0x1ebfa8);for(const _0x5bdbda of LEGACY_CONFIG_NAMES){const _0x3f928e=resolve(_0x2c2d41,_0x5bdbda);if(existsSync(_0x3f928e)){const _0x246289=readConfigFile(_0x3f928e),_0x27e90a=Object['keys'](_0x246289)[_0x5ab920(0xfc)](_0x3bba85=>typeof _0x246289[_0x3bba85]!==_0x5ab920(0x108));_0x1096b3={'oldPath':_0x3f928e,'hasNewConfig':_0x4f1188,'fields':_0x27e90a};break;}}const _0x2e00e9=[],_0x16ab0d=resolve(_0x2c2d41,_0x5ab920(0x12d));if(existsSync(_0x16ab0d))_0x2e00e9[_0x5ab920(0xd2)](_0x16ab0d);const _0x2511c0=resolve(_0x2c2d41,_0x5ab920(0xd6));if(existsSync(_0x2511c0))_0x2e00e9[_0x5ab920(0xd2)](_0x2511c0);const _0x2debfc=resolve(_0x2c2d41,'.claude/skills/lovrabet');if(existsSync(_0x2debfc))_0x2e00e9[_0x5ab920(0xd2)](_0x2debfc);for(const _0x94c6e of collectIdeSkillFiles(_0x2c2d41)){if(existsSync(_0x94c6e))_0x2e00e9['push'](_0x94c6e);}let _0xe86028=null;const _0x25b973=resolve(_0x2c2d41,'.cursor/mcp.json');if(existsSync(_0x25b973))try{const _0x3cc0f3=JSON['parse'](readFileSync(_0x25b973,_0x5ab920(0x11c)));if(_0x3cc0f3?.[_0x5ab920(0xcd)]&&typeof _0x3cc0f3[_0x5ab920(0xcd)]===_0x5ab920(0x123)){const _0x3aecda=[];for(const [_0x4a07fe,_0x213dd4]of Object[_0x5ab920(0x105)](_0x3cc0f3[_0x5ab920(0xcd)])){const _0x390eb2=_0x213dd4;_0x390eb2?.[_0x5ab920(0xef)]&&Array[_0x5ab920(0xcf)](_0x390eb2[_0x5ab920(0xef)])&&_0x390eb2[_0x5ab920(0xef)][_0x5ab920(0xc9)](_0x401bf1=>typeof _0x401bf1===_0x5ab920(0xee)&&_0x401bf1[_0x5ab920(0x131)](_0x5ab920(0x11a)))&&_0x3aecda[_0x5ab920(0xd2)](_0x4a07fe);}_0x3aecda[_0x5ab920(0xc1)]>0x0&&(_0xe86028={'path':_0x25b973,'keys':_0x3aecda});}}catch{}const _0x593a51=_0x2e00e9[_0x5ab920(0xc1)]>0x0||_0x1096b3!==null;let _0xf9ced8=null;const _0x75dc67=resolve(_0x2c2d41,'package.json');if(existsSync(_0x75dc67))try{const _0x4ec584=JSON['parse'](readFileSync(_0x75dc67,_0x5ab920(0x11c)));for(const _0x46c9a9 of[_0x5ab920(0xf4),'devDependencies']){const _0xdbedd6=_0x4ec584?.[_0x46c9a9]?.[_0x5ab920(0x13a)];if(typeof _0xdbedd6===_0x5ab920(0xee)){_0xdbedd6!==_0x5ab920(0xc0)&&(_0xf9ced8={'pkgPath':_0x75dc67,'currentVersion':_0xdbedd6,'field':_0x46c9a9});break;}}}catch{}return{'configMigration':_0x1096b3,'oldArtifacts':_0x2e00e9,'oldMcpConfig':_0xe86028,'needsSkillSwap':_0x593a51,'sdkUpgrade':_0xf9ced8};}function printReport(_0x2f081e){const _0x2b1e07=a116_0x4fa0ac,{configMigration:_0xfe1b77,oldArtifacts:_0x245209,oldMcpConfig:_0x3e7363,needsSkillSwap:_0x41ca90}=_0x2f081e;console['log'](''),console['log'](a116_0x2295cf[_0x2b1e07(0xd7)](_0x2b1e07(0x126))),console[_0x2b1e07(0xe9)]('');_0xfe1b77?(console['log'](a116_0x2295cf[_0x2b1e07(0x120)]('Config\x20file:')+('\x20\x20'+a116_0x2295cf[_0x2b1e07(0xbf)](_0xfe1b77[_0x2b1e07(0x136)]))),console[_0x2b1e07(0xe9)](_0x2b1e07(0xc3)+(_0xfe1b77[_0x2b1e07(0x122)]?a116_0x2295cf[_0x2b1e07(0xf2)](_0x2b1e07(0xf9)):a116_0x2295cf[_0x2b1e07(0xe1)](_0x2b1e07(0xf6)))),console[_0x2b1e07(0xe9)](_0x2b1e07(0xf1)+_0xfe1b77[_0x2b1e07(0xc7)][_0x2b1e07(0xe3)](',\x20')),console[_0x2b1e07(0xe9)]('\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak')):console[_0x2b1e07(0xe9)](a116_0x2295cf[_0x2b1e07(0x120)](_0x2b1e07(0xe8))+'\x20\x20'+a116_0x2295cf[_0x2b1e07(0xe1)](_0x2b1e07(0x106)));console[_0x2b1e07(0xe9)]('');if(_0x245209[_0x2b1e07(0xc1)]>0x0){console[_0x2b1e07(0xe9)](a116_0x2295cf[_0x2b1e07(0x120)](_0x2b1e07(0x133)));for(const _0x52f12b of _0x245209){console[_0x2b1e07(0xe9)]('\x20\x20'+a116_0x2295cf[_0x2b1e07(0xf0)]('FOUND')+'\x20\x20'+_0x52f12b);}console['log'](_0x2b1e07(0x103));}else console[_0x2b1e07(0xe9)](a116_0x2295cf[_0x2b1e07(0x120)](_0x2b1e07(0x133))+'\x20\x20'+a116_0x2295cf[_0x2b1e07(0xe1)](_0x2b1e07(0x11f)));console[_0x2b1e07(0xe9)]('');_0x3e7363?(console['log'](a116_0x2295cf[_0x2b1e07(0x120)]('MCP\x20config:')+('\x20\x20'+a116_0x2295cf[_0x2b1e07(0xbf)](_0x3e7363[_0x2b1e07(0x130)])+_0x2b1e07(0x12a)+_0x3e7363[_0x2b1e07(0x112)][_0x2b1e07(0xe3)](',\x20'))),console['log'](_0x2b1e07(0xe0))):console[_0x2b1e07(0xe9)](a116_0x2295cf[_0x2b1e07(0x120)](_0x2b1e07(0x11d))+'\x20\x20'+a116_0x2295cf[_0x2b1e07(0xe1)](_0x2b1e07(0x129)));console['log'](''),console['log'](a116_0x2295cf[_0x2b1e07(0x120)](_0x2b1e07(0xd1))+('\x20\x20'+(_0x41ca90?a116_0x2295cf['yellow'](_0x2b1e07(0x139)):a116_0x2295cf[_0x2b1e07(0xf2)](_0x2b1e07(0xd5)))));_0x41ca90&&console[_0x2b1e07(0xe9)](_0x2b1e07(0xc6)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x2b1e07(0xe9)]('');if(_0x2f081e[_0x2b1e07(0xdd)]){const {currentVersion:_0x53083b,field:_0x1e2b85,pkgPath:_0x2b8cb2}=_0x2f081e[_0x2b1e07(0xdd)];console['log'](a116_0x2295cf[_0x2b1e07(0x120)]('@lovrabet/sdk:')+('\x20\x20'+a116_0x2295cf[_0x2b1e07(0xbf)](_0x2b8cb2))),console['log'](_0x2b1e07(0x118)+_0x1e2b85+':\x20'+a116_0x2295cf[_0x2b1e07(0xbf)](_0x53083b)+'\x20→\x20'+a116_0x2295cf[_0x2b1e07(0xf2)](_0x2b1e07(0xc0))),console[_0x2b1e07(0xe9)](_0x2b1e07(0x128));}else console[_0x2b1e07(0xe9)](a116_0x2295cf['cyan'](_0x2b1e07(0x10e))+'\x20\x20'+a116_0x2295cf[_0x2b1e07(0xe1)](_0x2b1e07(0xfe)));console['log']('');}function execConfigMigration(_0x2830fd,_0x3144af){const _0xfb3ed9=a116_0x4fa0ac,{configMigration:_0x3e3d8d}=_0x2830fd;if(!_0x3e3d8d?.['oldPath'])return{'step':0x1,'label':_0xfb3ed9(0x101),'ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x1b4d7d=readConfigFile(_0x3e3d8d['oldPath']),_0x67190b=resolve(_0x3144af,NEW_CONFIG_NAME),_0x2dfe85=_0x3e3d8d[_0xfb3ed9(0x122)]?readConfigFile(_0x67190b):{};for(const [_0x1a70ef,_0x2e28aa]of Object[_0xfb3ed9(0x105)](_0x1b4d7d)){!(_0x1a70ef in _0x2dfe85)&&(_0x2dfe85[_0x1a70ef]=_0x2e28aa);}writeConfigFile(_0x67190b,_0x2dfe85);const _0x815d1c=_0x3e3d8d[_0xfb3ed9(0x136)]+'.bak';return renameSync(_0x3e3d8d['oldPath'],_0x815d1c),{'step':0x1,'label':_0xfb3ed9(0x101),'ok':!![],'detail':_0x3e3d8d[_0xfb3ed9(0x136)]+_0xfb3ed9(0x119)+_0x67190b+'\x20(backup:\x20'+_0x815d1c+')'};}function execRemoveOldArtifacts(_0xfb1529){const _0x9949d6=a116_0x4fa0ac,_0x2c6a91=[];for(const _0x4498b1 of _0xfb1529){try{if(!existsSync(_0x4498b1))continue;const _0x2e8a56=tryStat(_0x4498b1);_0x2e8a56?.['isDirectory']()?rmSync(_0x4498b1,{'recursive':!![],'force':!![]}):unlinkSync(_0x4498b1);}catch(_0xe5b202){_0x2c6a91[_0x9949d6(0xd2)](_0x4498b1+':\x20'+_0xe5b202[_0x9949d6(0x132)]);}}return{'step':0x3,'label':_0x9949d6(0xc8),'ok':_0x2c6a91[_0x9949d6(0xc1)]===0x0,'detail':_0x2c6a91[_0x9949d6(0xc1)]>0x0?_0xfb1529[_0x9949d6(0xc1)]-_0x2c6a91['length']+'/'+_0xfb1529[_0x9949d6(0xc1)]+'\x20removed\x20('+_0x2c6a91['join'](';\x20')+')':_0xfb1529[_0x9949d6(0xc1)]+_0x9949d6(0x100)};}function a116_0x3958(_0x438278,_0x542093){_0x438278=_0x438278-0xbc;const _0x43ca3e=a116_0x43ca();let _0x3958ad=_0x43ca3e[_0x438278];return _0x3958ad;}function execCleanMcp(_0x23e79b){const _0x481f5e=a116_0x4fa0ac;if(!_0x23e79b[_0x481f5e(0xcc)])return{'step':0x4,'label':_0x481f5e(0xe5),'ok':!![],'detail':'skipped'};try{const _0xe3e8c5=readFileSync(_0x23e79b[_0x481f5e(0xcc)]['path'],_0x481f5e(0x11c)),_0x333aa8=JSON[_0x481f5e(0xd9)](_0xe3e8c5);if(_0x333aa8?.[_0x481f5e(0xcd)]&&typeof _0x333aa8[_0x481f5e(0xcd)]===_0x481f5e(0x123)){const _0x2c53f7=[];for(const [_0x30c75a,_0x3d2680]of Object['entries'](_0x333aa8[_0x481f5e(0xcd)])){_0x3d2680?.[_0x481f5e(0xef)]&&Array[_0x481f5e(0xcf)](_0x3d2680['args'])&&_0x3d2680[_0x481f5e(0xef)][_0x481f5e(0xc9)](_0x644881=>typeof _0x644881===_0x481f5e(0xee)&&_0x644881[_0x481f5e(0x131)](_0x481f5e(0x11a)))&&_0x2c53f7['push'](_0x30c75a);}for(const _0x5d9db2 of _0x2c53f7){delete _0x333aa8['mcpServers'][_0x5d9db2];}return _0x2c53f7[_0x481f5e(0xc1)]>0x0&&writeFileSync(_0x23e79b[_0x481f5e(0xcc)]['path'],JSON[_0x481f5e(0x124)](_0x333aa8,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':_0x481f5e(0xe5),'ok':!![],'detail':'removed\x20'+_0x2c53f7['join'](',\x20')+'\x20from\x20'+_0x23e79b[_0x481f5e(0xcc)][_0x481f5e(0x130)]};}return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':'no\x20matching\x20entry\x20found'};}catch(_0x350bfb){return{'step':0x4,'label':_0x481f5e(0xe5),'ok':![],'detail':_0x350bfb[_0x481f5e(0x132)]};}}function execSkillsRemove(_0x2e3fbc,_0x567838){const _0x311790=a116_0x4fa0ac,_0x3541c3=runNpxSkillsRemove(_0x2e3fbc,{'stdio':_0x311790(0xce),'yes':_0x567838});return{'step':0x5,'label':_0x311790(0xd0),'ok':_0x3541c3['ok'],'detail':_0x3541c3['ok']?_0x311790(0xd8):_0x3541c3[_0x311790(0x135)]??'exit\x20'+_0x3541c3['status']};}function execSkillsAdd(_0x4f9909,_0x94b02a){const _0x220ab4=a116_0x4fa0ac,_0x297e6f=runNpxSkillsAddGlobal(_0x4f9909,_0x220ab4(0x104),{'stdio':_0x220ab4(0xce),'yes':_0x94b02a});return{'step':0x6,'label':_0x220ab4(0xec),'ok':_0x297e6f['ok'],'detail':_0x297e6f['ok']?'lovrabet/rabetbase\x20installed\x20globally':_0x297e6f[_0x220ab4(0x135)]??_0x220ab4(0x11b)+_0x297e6f[_0x220ab4(0xe7)]};}function execUpgradeSdk(_0x429e52){const _0x5ce7ab=a116_0x4fa0ac;if(!_0x429e52[_0x5ce7ab(0xdd)])return{'step':0x7,'label':_0x5ce7ab(0xf7),'ok':!![],'detail':'skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)'};const {pkgPath:_0x426b42,currentVersion:_0x5c2893,field:_0x2b2373}=_0x429e52['sdkUpgrade'];try{const _0x244db2=readFileSync(_0x426b42,_0x5ce7ab(0x11c)),_0x2f5b69=JSON[_0x5ce7ab(0xd9)](_0x244db2);return _0x2f5b69[_0x2b2373][_0x5ce7ab(0x13a)]='latest',writeFileSync(_0x426b42,JSON[_0x5ce7ab(0x124)](_0x2f5b69,null,0x2)+'\x0a',_0x5ce7ab(0x11c)),{'step':0x7,'label':_0x5ce7ab(0xf7),'ok':!![],'detail':_0x2b2373+_0x5ce7ab(0xc2)+_0x5c2893+_0x5ce7ab(0xda)};}catch(_0x37f8a8){return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':![],'detail':_0x37f8a8[_0x5ce7ab(0x132)]};}}function tryStat(_0x50b287){try{return statSync(_0x50b287);}catch{return undefined;}}function printSummary(_0x1b92f9){const _0xab0e0a=a116_0x4fa0ac;console[_0xab0e0a(0xe9)](''),console[_0xab0e0a(0xe9)](a116_0x2295cf[_0xab0e0a(0xd7)]('===\x20Upgrade\x20Summary\x20===')),console[_0xab0e0a(0xe9)]('');for(const _0x557363 of _0x1b92f9){const _0x1aff94=_0x557363['ok']?a116_0x2295cf[_0xab0e0a(0xf2)]('OK'):a116_0x2295cf[_0xab0e0a(0xf0)](_0xab0e0a(0x117));console['log']('\x20\x20'+_0x1aff94+'\x20\x20Step\x20'+_0x557363[_0xab0e0a(0x113)]+':\x20'+_0x557363[_0xab0e0a(0x10f)]);if(_0x557363['detail'])console[_0xab0e0a(0xe9)]('\x20\x20\x20\x20\x20\x20\x20'+a116_0x2295cf['gray'](_0x557363[_0xab0e0a(0xed)]));}console['log']('');}export async function upgradeApp(_0x12717f,_0x2da2fd){const _0x1fd814=a116_0x4fa0ac,_0x46cf19=process[_0x1fd814(0xca)](),_0x40f997=analyse(_0x46cf19),_0x153198=!_0x40f997[_0x1fd814(0xdc)]&&_0x40f997['oldArtifacts'][_0x1fd814(0xc1)]===0x0&&!_0x40f997[_0x1fd814(0xcc)]&&!_0x40f997['needsSkillSwap']&&!_0x40f997['sdkUpgrade'];if(_0x153198){console['log'](a116_0x2295cf[_0x1fd814(0xf2)](_0x1fd814(0x109)));return;}printReport(_0x40f997);const _0x3bba57=!!(_0x2da2fd[_0x1fd814(0xbc)]||_0x2da2fd['Y']||_0x12717f);if(!_0x3bba57)try{const _0xd9335d=await askConfirm(_0x1fd814(0xea));if(!_0xd9335d){console[_0x1fd814(0xe9)](a116_0x2295cf[_0x1fd814(0xe1)](_0x1fd814(0x111)));return;}}catch(_0x5722b2){if(_0x5722b2?.[_0x1fd814(0x132)]===_0x1fd814(0x12c)){console[_0x1fd814(0xe9)](a116_0x2295cf[_0x1fd814(0xe1)](_0x1fd814(0x111)));return;}throw _0x5722b2;}const _0x3f4032=[],_0x1a467f=a116_0x20ad00({'text':_0x1fd814(0x121),'color':_0x1fd814(0x120)})['start'](),_0x520151=execConfigMigration(_0x40f997,_0x46cf19);_0x3f4032[_0x1fd814(0xd2)](_0x520151),_0x1a467f[_0x520151['ok']?_0x1fd814(0x10d):_0x1fd814(0x12e)](_0x1fd814(0xbe)+(_0x520151[_0x1fd814(0xed)]??(_0x520151['ok']?'done':_0x1fd814(0xd4))));const _0x34d03a=resolve(_0x46cf19,'.lovrabet'),_0x2e9a48=a116_0x20ad00({'text':_0x1fd814(0x125),'color':_0x1fd814(0x120)})[_0x1fd814(0xeb)]();if(existsSync(_0x34d03a))try{rmSync(_0x34d03a,{'recursive':!![],'force':!![]}),_0x2e9a48[_0x1fd814(0x10d)](_0x1fd814(0xf3)),_0x3f4032[_0x1fd814(0xd2)]({'step':0x2,'label':_0x1fd814(0x138),'ok':!![]});}catch(_0x5a88ae){_0x2e9a48['fail'](_0x1fd814(0xc5)+_0x5a88ae[_0x1fd814(0x132)]),_0x3f4032[_0x1fd814(0xd2)]({'step':0x2,'label':_0x1fd814(0x138),'ok':![],'detail':_0x5a88ae['message']});}else _0x2e9a48['info'](_0x1fd814(0x10c)),_0x3f4032[_0x1fd814(0xd2)]({'step':0x2,'label':_0x1fd814(0x138),'ok':!![],'detail':_0x1fd814(0x12f)});const _0x6c5b14=a116_0x20ad00({'text':_0x1fd814(0xe4),'color':_0x1fd814(0x120)})['start'](),_0x545a52=execRemoveOldArtifacts(_0x40f997[_0x1fd814(0x107)]);_0x3f4032[_0x1fd814(0xd2)](_0x545a52),_0x6c5b14[_0x545a52['ok']?_0x1fd814(0x10d):_0x1fd814(0x12e)](_0x1fd814(0x116)+(_0x545a52[_0x1fd814(0xed)]??(_0x545a52['ok']?_0x1fd814(0xd3):_0x1fd814(0xd4))));const _0x115941=a116_0x20ad00({'text':_0x1fd814(0xdb),'color':_0x1fd814(0x120)})['start'](),_0x8789b5=execCleanMcp(_0x40f997);_0x3f4032[_0x1fd814(0xd2)](_0x8789b5),_0x115941[_0x8789b5['ok']?_0x1fd814(0x10d):_0x1fd814(0x12e)]('Step\x204/7:\x20MCP\x20config\x20—\x20'+(_0x8789b5[_0x1fd814(0xed)]??(_0x8789b5['ok']?_0x1fd814(0xd3):'failed')));const _0x46ee44=a116_0x20ad00({'text':_0x1fd814(0xde),'color':_0x1fd814(0x120)})[_0x1fd814(0xeb)](),_0x52e278=execSkillsRemove(_0x46cf19,_0x3bba57);_0x3f4032[_0x1fd814(0xd2)](_0x52e278),_0x46ee44[_0x52e278['ok']?'succeed':_0x1fd814(0x12e)](_0x1fd814(0x134)+(_0x52e278['detail']??(_0x52e278['ok']?_0x1fd814(0xd3):_0x1fd814(0xd4))));const _0x23932a=a116_0x20ad00({'text':_0x1fd814(0x110),'color':_0x1fd814(0x120)})[_0x1fd814(0xeb)](),_0xed43d3=execSkillsAdd(_0x46cf19,_0x3bba57);_0x3f4032[_0x1fd814(0xd2)](_0xed43d3),_0x23932a[_0xed43d3['ok']?'succeed':'fail'](_0x1fd814(0xdf)+(_0xed43d3[_0x1fd814(0xed)]??(_0xed43d3['ok']?_0x1fd814(0xd3):_0x1fd814(0xd4))));const _0x4344e6=a116_0x20ad00({'text':_0x1fd814(0x10a),'color':_0x1fd814(0x120)})[_0x1fd814(0xeb)](),_0x3ab56a=execUpgradeSdk(_0x40f997);_0x3f4032['push'](_0x3ab56a),_0x4344e6[_0x3ab56a['ok']?'succeed':_0x1fd814(0x12e)]('Step\x207/7:\x20@lovrabet/sdk\x20—\x20'+(_0x3ab56a[_0x1fd814(0xed)]??(_0x3ab56a['ok']?'done':_0x1fd814(0xd4)))),printSummary(_0x3f4032);const _0x4c08a9=_0x3f4032['some'](_0x29f7ac=>!_0x29f7ac['ok']);_0x4c08a9?console[_0x1fd814(0xe9)](a116_0x2295cf['yellow']('Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.')):console[_0x1fd814(0xe9)](a116_0x2295cf[_0x1fd814(0xf2)](_0x1fd814(0x115))),_0x3ab56a['ok']&&_0x40f997[_0x1fd814(0xdd)]&&(console[_0x1fd814(0xe9)](''),console['log'](a116_0x2295cf[_0x1fd814(0xd7)][_0x1fd814(0x120)](_0x1fd814(0x102))),console['log'](a116_0x2295cf[_0x1fd814(0x120)](_0x1fd814(0x12b))),console[_0x1fd814(0xe9)](''),console[_0x1fd814(0xe9)](a116_0x2295cf['white'](_0x1fd814(0xe2))),console[_0x1fd814(0xe9)](a116_0x2295cf[_0x1fd814(0xcb)](_0x1fd814(0x13b))),console[_0x1fd814(0xe9)](a116_0x2295cf[_0x1fd814(0xcb)](_0x1fd814(0xfd))),console[_0x1fd814(0xe9)](''));}
|
package/lib/commands/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a117_0x35e827=a117_0x50c2;(function(_0x43f695,_0x9f9a34){const _0x3af6ed=a117_0x50c2,_0xd54a2a=_0x43f695();while(!![]){try{const _0x382b1b=-parseInt(_0x3af6ed(0x145))/0x1*(parseInt(_0x3af6ed(0x16a))/0x2)+-parseInt(_0x3af6ed(0x157))/0x3+-parseInt(_0x3af6ed(0x161))/0x4+-parseInt(_0x3af6ed(0x170))/0x5+parseInt(_0x3af6ed(0x172))/0x6*(-parseInt(_0x3af6ed(0x16d))/0x7)+parseInt(_0x3af6ed(0x148))/0x8*(-parseInt(_0x3af6ed(0x176))/0x9)+parseInt(_0x3af6ed(0x14f))/0xa;if(_0x382b1b===_0x9f9a34)break;else _0xd54a2a['push'](_0xd54a2a['shift']());}catch(_0x28d5e6){_0xd54a2a['push'](_0xd54a2a['shift']());}}}(a117_0x22bc,0xe2cac));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{appDefinitions}from'../commands/app/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';function a117_0x50c2(_0x3e0a8a,_0x238756){_0x3e0a8a=_0x3e0a8a-0x143;const _0x22bc14=a117_0x22bc();let _0x50c26b=_0x22bc14[_0x3e0a8a];return _0x50c26b;}function a117_0x22bc(){const _0x417b90=['Database\x20Connections','preview','5654gCvcMQ','service','Skills','755713CbVwlW','Platform\x20Issue','start','7439955RThIZo','login','24XngNPO','Run\x20Scripts','project','App\x20Management','36JMHhpG','wildcardDef','\x20\x20[write]','set','106XtXPDJ','push','run','1979688yjiwil','install','from','Authentication','Smart\x20List\x20Pages','Quick\x20Start','Configuration','69838250nbeXpQ','command','defaultCommand','write','Logs','Run\x20any\x20package.json\x20script','has','risk','4600488HdaONk','BFF\x20Scripts','logout','Instant\x20API','API','build','Menu','Dataset\x20&\x20Operations','Schema','isSingleCommand','5248224byEPjN','length','get','create','Project','description','read'];a117_0x22bc=function(){return _0x417b90;};return a117_0x22bc();}import{issueDefinitions}from'../commands/issue/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{skillDefinitions}from'../commands/skill/index.js';import{projectDefinitions}from'../commands/project/index.js';import{initDefinitions}from'../commands/init/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x251106){const _0x4b1247=a117_0x50c2;for(const _0x49d05c of _0x251106){definitions[_0x4b1247(0x144)](_0x49d05c['service']+':'+_0x49d05c[_0x4b1247(0x150)],_0x49d05c);let _0x2d6322=serviceGroups[_0x4b1247(0x163)](_0x49d05c['service']);!_0x2d6322&&(_0x2d6322=[],serviceGroups[_0x4b1247(0x144)](_0x49d05c[_0x4b1247(0x16b)],_0x2d6322)),_0x2d6322[_0x4b1247(0x146)](_0x49d05c);}}function registerDeclarativeService(_0xe052e,_0x5889bf,_0x3681bd){const _0x5ee65d=a117_0x50c2;registerDefinitions(_0x5889bf);_0x3681bd?.['wildcardDef']&®isterDefinitions([_0x3681bd[_0x5ee65d(0x177)]]);const _0xb3bfd4=_0x506c69=>_0x506c69===_0x5ee65d(0x167)?'':_0x506c69===_0x5ee65d(0x152)?_0x5ee65d(0x143):'\x20\x20[high-risk-write]',_0x450c8e={'service':_0x5889bf[0x0][_0x5ee65d(0x16b)],'label':_0xe052e,'commands':_0x5889bf['map'](_0x443a62=>({'command':_0x443a62['command'],'description':_0x443a62[_0x5ee65d(0x166)],'tag':_0xb3bfd4(_0x443a62[_0x5ee65d(0x156)])})),'declarative':!![],'defaultCommand':_0x3681bd?.[_0x5ee65d(0x151)]??(_0x3681bd?.['isSingleCommand']?_0x5889bf[0x0][_0x5ee65d(0x150)]:undefined),'wildcardDef':_0x3681bd?.[_0x5ee65d(0x177)],'isSingleCommand':_0x3681bd?.[_0x5ee65d(0x160)]};serviceRegistry[_0x5ee65d(0x146)](_0x450c8e),serviceByName['set'](_0x450c8e[_0x5ee65d(0x16b)],_0x450c8e);}registerDeclarativeService(a117_0x35e827(0x14d),initDefinitions,{'defaultCommand':'run','isSingleCommand':!![]}),registerDeclarativeService(a117_0x35e827(0x165),projectDefinitions),registerDeclarativeService(a117_0x35e827(0x175),appDefinitions),registerDeclarativeService(a117_0x35e827(0x173),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a117_0x35e827(0x162)]-0x1];last['commands']=[{'command':'<script>','description':a117_0x35e827(0x154),'tag':''}];}registerDeclarativeService(a117_0x35e827(0x14b),authDefinitions,{'defaultCommand':a117_0x35e827(0x171)}),registerDeclarativeService('Self\x20Update',[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a117_0x35e827(0x15f),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a117_0x35e827(0x14e),configDefinitions),registerDeclarativeService(a117_0x35e827(0x16e),issueDefinitions),registerDeclarativeService(a117_0x35e827(0x15b),apiDefinitions),registerDeclarativeService(a117_0x35e827(0x15d),menuDefinitions),registerDeclarativeService(a117_0x35e827(0x168),dbDefinitions),registerDeclarativeService(a117_0x35e827(0x15e),datasetDefinitions),registerDeclarativeService(a117_0x35e827(0x14c),pageDefinitions),registerDeclarativeService(a117_0x35e827(0x15a),dataDefinitions),registerDeclarativeService(a117_0x35e827(0x158),bffDefinitions),registerDeclarativeService('SQL\x20Queries',sqlDefinitions),registerDeclarativeService('Code\x20Generation',codegenDefinitions),registerDeclarativeService(a117_0x35e827(0x16c),skillDefinitions),registerDeclarativeService(a117_0x35e827(0x153),logsDefinitions,{'defaultCommand':'show'});export const deprecatedAliases={'create':{'service':a117_0x35e827(0x174),'command':'create'},'start':{'service':a117_0x35e827(0x147),'command':a117_0x35e827(0x16f)},'build':{'service':'run','command':a117_0x35e827(0x15c)},'preview':{'service':'run','command':a117_0x35e827(0x169)},'logout':{'service':'auth','command':a117_0x35e827(0x159)},'skills':{'service':'skill','command':a117_0x35e827(0x149)}};export const deprecatedSubcommands={'bff':{'new':a117_0x35e827(0x164)},'sql':{'new':a117_0x35e827(0x164)}};export function resolveDeprecatedSubcommand(_0xc2a2d9,_0x44a1c9){return deprecatedSubcommands[_0xc2a2d9]?.[_0x44a1c9];}export function findDefinition(_0x29dc2c,_0x3a9086){const _0x20fac7=a117_0x35e827;return definitions[_0x20fac7(0x163)](_0x29dc2c+':'+_0x3a9086);}export function isKnownService(_0x1d36f8){const _0x29564d=a117_0x35e827;return serviceByName[_0x29564d(0x155)](_0x1d36f8);}export function isDeclarativeService(_0x354bfb){const _0x2d6a4e=a117_0x35e827;return serviceGroups[_0x2d6a4e(0x155)](_0x354bfb)||serviceByName[_0x2d6a4e(0x163)](_0x354bfb)?.[_0x2d6a4e(0x177)]!==undefined;}export function getServiceEntry(_0x5c0928){const _0x76eb8a=a117_0x35e827;return serviceByName[_0x76eb8a(0x163)](_0x5c0928);}export function getLegacyHandler(_0x36f69c,_0x4bf0dd){return undefined;}export function getAllDefinitions(){const _0x20edc0=a117_0x35e827;return Array[_0x20edc0(0x14a)](definitions['values']());}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a118_0x43199c=a118_0x5794;function a118_0x5794(_0x21a1f3,_0x475df5){_0x21a1f3=_0x21a1f3-0x118;const _0x18bbfd=a118_0x18bb();let _0x579492=_0x18bbfd[_0x21a1f3];return _0x579492;}(function(_0x2af409,_0x153959){const _0x508a68=a118_0x5794,_0x1f28b1=_0x2af409();while(!![]){try{const _0x35f9fc=-parseInt(_0x508a68(0x158))/0x1+-parseInt(_0x508a68(0x136))/0x2+-parseInt(_0x508a68(0x147))/0x3+-parseInt(_0x508a68(0x13e))/0x4*(-parseInt(_0x508a68(0x12b))/0x5)+parseInt(_0x508a68(0x14e))/0x6+-parseInt(_0x508a68(0x135))/0x7*(parseInt(_0x508a68(0x123))/0x8)+parseInt(_0x508a68(0x11d))/0x9;if(_0x35f9fc===_0x153959)break;else _0x1f28b1['push'](_0x1f28b1['shift']());}catch(_0xb39936){_0x1f28b1['push'](_0x1f28b1['shift']());}}}(a118_0x18bb,0xe5e21));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';function a118_0x18bb(){const _0x340b81=['vite\x20build\x20--watch\x20exited\x20with\x20code\x20','build','2600649gKnVLd','all','\x0a\x20\x20Usage:\x20','node_modules','\x0a\x20\x20Available\x20scripts:\x0a','has','boolean','180318VVYYwa','vite','validation','scripts','map','watch','error','Script\x20\x22','run','\x20run\x20start','1199824kSksaB','slice','read','max','bun','Enable\x20watch\x20mode\x20for\x20preview','.bin','\x20run\x20preview\x20--watch\x20\x20\x20#\x20parallel\x20build\x20--watch\x20+\x20preview','Script\x20name\x20defined\x20in\x20package.json','(none)','close','needsUpgrade','34434819KppFOt','cwd','log','start','length','yarn','98976DfQaLH','\x20\x20\x20\x20','preview','\x20run\x20<script>\x0a','yarn.lock','utf-8','keys','--watch','81240VVDwvj','\x20run\x20','\x20run\x20build','parse','push','vite\x20preview\x20exited\x20with\x20code\x20','inherit','args','Run\x20a\x20package.json\x20script','entries','539mqTQtW','830256DOaMgD','bool','pnpm','join','Available:\x20','pnpm-lock.yaml','No\x20scripts\x20defined\x20in\x20package.json.','package.json','128tDnFcf','\x20exited\x20with\x20code\x20','No\x20package.json\x20found\x20in\x20current\x20directory.','bun.lockb','script','padEnd','\x20run\x20preview'];a118_0x18bb=function(){return _0x340b81;};return a118_0x18bb();}const VERSION_CHECK_SCRIPTS=new Set([a118_0x43199c(0x120),'dev']);function readPackageScripts(_0x58fa01){const _0x24fa24=a118_0x43199c,_0x9e4a13=resolve(_0x58fa01,_0x24fa24(0x13d));if(!existsSync(_0x9e4a13))return null;try{const _0x745b0=JSON[_0x24fa24(0x12e)](readFileSync(_0x9e4a13,_0x24fa24(0x128)));return _0x745b0[_0x24fa24(0x151)]??{};}catch{return null;}}function detectPackageManager(_0x35eaec){const _0x25c678=a118_0x43199c;if(existsSync(resolve(_0x35eaec,_0x25c678(0x141)))||existsSync(resolve(_0x35eaec,'bun.lock')))return _0x25c678(0x15c);if(existsSync(resolve(_0x35eaec,_0x25c678(0x13b))))return _0x25c678(0x138);if(existsSync(resolve(_0x35eaec,_0x25c678(0x127))))return _0x25c678(0x122);return'npm';}async function versionCheck(_0x11ee73){const _0x70d2c0=a118_0x43199c,_0x36dd83=await checkCliVersion();(_0x36dd83[_0x70d2c0(0x11c)]||_0x36dd83['belowMinimum'])&&(printCliUpgradeWarning(_0x36dd83),assertCliVersionSupported(_0x36dd83));const _0x3fb95c=await checkSdkVersion(_0x11ee73);if(_0x3fb95c['needsUpgrade'])printSdkUpgradeWarning(_0x3fb95c);}function spawnScript(_0x5a6db6,_0xe7037f,_0xed8d10,_0x31c7c5){return new Promise((_0x5b69f8,_0x231572)=>{const _0xc53ac1=a118_0x5794,_0x2a191c=['run',_0xe7037f,..._0xed8d10],_0x4451f3=spawn(_0x5a6db6,_0x2a191c,{'cwd':_0x31c7c5,'stdio':_0xc53ac1(0x131),'shell':!![],'env':{...process.env,'PATH':''+join(_0x31c7c5,_0xc53ac1(0x14a),_0xc53ac1(0x15e))+delimiter+process.env.PATH}});_0x4451f3['on']('close',_0x339509=>{const _0x9a8872=_0xc53ac1;if(_0x339509===0x0||_0x339509===null)_0x5b69f8();else _0x231572(new Error(_0x5a6db6+_0x9a8872(0x12c)+_0xe7037f+_0x9a8872(0x13f)+_0x339509));}),_0x4451f3['on'](_0xc53ac1(0x154),_0x231572);});}function spawnViteBuildWatch(_0x34b6a5){return new Promise((_0x474bba,_0x2f327e)=>{const _0x15ed55=a118_0x5794,_0xea0ba0=spawn(_0x15ed55(0x14f),[_0x15ed55(0x146),_0x15ed55(0x12a)],{'cwd':_0x34b6a5,'stdio':_0x15ed55(0x131),'shell':!![],'env':{...process.env,'PATH':''+join(_0x34b6a5,_0x15ed55(0x14a),_0x15ed55(0x15e))+delimiter+process.env.PATH}});_0xea0ba0['on'](_0x15ed55(0x11b),_0x4254b1=>{const _0x28a100=_0x15ed55;if(_0x4254b1===0x0||_0x4254b1===null)_0x474bba();else _0x2f327e(new Error(_0x28a100(0x145)+_0x4254b1));}),_0xea0ba0['on']('error',_0x2f327e);});}function spawnVitePreview(_0x561005){return new Promise((_0x3eedea,_0x5ccd30)=>{const _0x59df3a=a118_0x5794,_0x18a8ff=spawn(_0x59df3a(0x14f),[_0x59df3a(0x125)],{'cwd':_0x561005,'stdio':_0x59df3a(0x131),'shell':!![],'env':{...process.env,'PATH':''+join(_0x561005,'node_modules',_0x59df3a(0x15e))+delimiter+process.env.PATH}});_0x18a8ff['on'](_0x59df3a(0x11b),_0x4705b5=>{const _0xfe21fd=_0x59df3a;if(_0x4705b5===0x0||_0x4705b5===null)_0x3eedea();else _0x5ccd30(new Error(_0xfe21fd(0x130)+_0x4705b5));}),_0x18a8ff['on'](_0x59df3a(0x154),_0x5ccd30);});}const runFlags=[{'name':'watch','type':a118_0x43199c(0x14d),'description':a118_0x43199c(0x15d),'default':![]}];export const runDefinition={'service':a118_0x43199c(0x156),'command':a118_0x43199c(0x156),'description':a118_0x43199c(0x133),'risk':a118_0x43199c(0x15a),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a118_0x43199c(0x142),'description':a118_0x43199c(0x119),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x50c436=a118_0x43199c,_0x3d7db5=readPackageScripts(process[_0x50c436(0x11e)]()),_0x4dd1f2=[];if(_0x3d7db5&&Object[_0x50c436(0x129)](_0x3d7db5)[_0x50c436(0x121)]>0x0){const _0x5ccee1=Object[_0x50c436(0x129)](_0x3d7db5),_0x3d1ec0=Math[_0x50c436(0x15b)](..._0x5ccee1[_0x50c436(0x152)](_0xd4f774=>_0xd4f774['length']));_0x4dd1f2[_0x50c436(0x12f)]('\x20\x20AVAILABLE\x20SCRIPTS\x20\x20(current\x20project)');for(const [_0x25b974,_0x2adb6f]of Object[_0x50c436(0x134)](_0x3d7db5)){_0x4dd1f2['push'](_0x50c436(0x124)+CLI_BIN_NAME+'\x20run\x20'+_0x25b974['padEnd'](_0x3d1ec0+0x2)+'#\x20'+_0x2adb6f);}}else _0x4dd1f2[_0x50c436(0x12f)]('\x20\x20EXAMPLES'),_0x4dd1f2[_0x50c436(0x12f)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x50c436(0x157)),_0x4dd1f2['push'](_0x50c436(0x124)+CLI_BIN_NAME+_0x50c436(0x12d)),_0x4dd1f2['push'](_0x50c436(0x124)+CLI_BIN_NAME+_0x50c436(0x144)),_0x4dd1f2[_0x50c436(0x12f)](_0x50c436(0x124)+CLI_BIN_NAME+_0x50c436(0x118));return _0x4dd1f2['join']('\x0a');},async 'execute'(_0xcbf9a3){const _0x69f8a1=a118_0x43199c,_0x1cb6be=process[_0x69f8a1(0x11e)](),_0x582434=_0xcbf9a3[_0x69f8a1(0x132)][0x0],_0x905dd5=_0xcbf9a3[_0x69f8a1(0x132)][_0x69f8a1(0x159)](0x1),_0x487144=readPackageScripts(_0x1cb6be);if(!_0x487144)throw CliErrors[_0x69f8a1(0x150)](_0x69f8a1(0x140));if(!_0x582434){const _0x1b67e1=Object[_0x69f8a1(0x129)](_0x487144);if(_0x1b67e1['length']===0x0)console[_0x69f8a1(0x11f)](_0x69f8a1(0x13c));else{console['log'](_0x69f8a1(0x14b));const _0x43ffa4=Math[_0x69f8a1(0x15b)](..._0x1b67e1['map'](_0x34e7e3=>_0x34e7e3['length']));for(const [_0x368b85,_0x2f6419]of Object[_0x69f8a1(0x134)](_0x487144)){console[_0x69f8a1(0x11f)](_0x69f8a1(0x124)+_0x368b85[_0x69f8a1(0x143)](_0x43ffa4+0x2)+_0x2f6419);}console[_0x69f8a1(0x11f)](_0x69f8a1(0x149)+CLI_BIN_NAME+_0x69f8a1(0x126));}return{'ok':!![]};}if(!_0x487144[_0x582434])throw CliErrors[_0x69f8a1(0x150)](_0x69f8a1(0x155)+_0x582434+'\x22\x20not\x20found\x20in\x20package.json.',_0x69f8a1(0x13a)+(Object[_0x69f8a1(0x129)](_0x487144)[_0x69f8a1(0x139)](',\x20')||_0x69f8a1(0x11a)));const _0x535eff=detectPackageManager(_0x1cb6be);VERSION_CHECK_SCRIPTS[_0x69f8a1(0x14c)](_0x582434)&&await versionCheck(_0x1cb6be);if(_0x582434===_0x69f8a1(0x125)&&_0xcbf9a3[_0x69f8a1(0x137)](_0x69f8a1(0x153)))return await Promise[_0x69f8a1(0x148)]([spawnViteBuildWatch(_0x1cb6be),spawnVitePreview(_0x1cb6be)]),{'ok':!![]};return await spawnScript(_0x535eff,_0x582434,_0x905dd5,_0x1cb6be),{'ok':!![]};}};
|
package/lib/commands/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a119_0x3a46(_0x5494c1,_0x79b9e1){_0x5494c1=_0x5494c1-0x12b;const _0x300087=a119_0x3000();let _0x3a4638=_0x300087[_0x5494c1];return _0x3a4638;}(function(_0x387ab8,_0x23920c){const _0x4f95c1=a119_0x3a46,_0xb4b426=_0x387ab8();while(!![]){try{const _0x48e56e=parseInt(_0x4f95c1(0x12b))/0x1*(parseInt(_0x4f95c1(0x137))/0x2)+-parseInt(_0x4f95c1(0x12f))/0x3*(-parseInt(_0x4f95c1(0x12d))/0x4)+-parseInt(_0x4f95c1(0x136))/0x5*(-parseInt(_0x4f95c1(0x131))/0x6)+-parseInt(_0x4f95c1(0x12c))/0x7+-parseInt(_0x4f95c1(0x133))/0x8*(parseInt(_0x4f95c1(0x134))/0x9)+-parseInt(_0x4f95c1(0x130))/0xa*(-parseInt(_0x4f95c1(0x132))/0xb)+parseInt(_0x4f95c1(0x12e))/0xc*(-parseInt(_0x4f95c1(0x135))/0xd);if(_0x48e56e===_0x23920c)break;else _0xb4b426['push'](_0xb4b426['shift']());}catch(_0x26a186){_0xb4b426['push'](_0xb4b426['shift']());}}}(a119_0x3000,0x8bcb9));import{buildSchemaPayload}from'../framework/schema-export.js';function a119_0x3000(){const _0x53b14c=['5600PobcjP','3362636hFMnTQ','13980EioLlK','3GPkqkc','21940YPhJNa','261228DiKDZu','5071tKNuEE','22024XnBShQ','1917WSaCtV','17407swpCjE','80jPineF','8144GPQRtF','42fKEuDc'];a119_0x3000=function(){return _0x53b14c;};return a119_0x3000();}async function execute(_0x502957){const _0x4c584a=await buildSchemaPayload();return{'ok':!![],'data':_0x4c584a};}export const schemaDefinition={'service':'schema','command':'export','description':'Export\x20machine-readable\x20command\x20schema\x20(JSON)','risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':'json','flags':[],'execute':execute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a120_0x1774(){const _0x458b65=['inherit','1648566garpVG','skill-install','log',')...','unknown','8459208HVRFZK','15713628HAYwzx','166hSiLhF','11rXzJUo','install','npx\x20skills\x20add\x20failed:\x20','3269690ONnquz','Installing\x20official\x20skill\x20via\x20npx\x20(','setLogPath','835ZtUAys','Install\x20developer\x20skill\x20package','apiError','cwd','pipe','153fBNqpg','1384LyJTNa','../../skills/npx-skills-add.js','2509OsENhS','627512oZjCPN','7mYlrkM','skipped','\x20skill\x20installed','Check\x20network\x20connectivity\x20and\x20try\x20again.','error','write','nonInteractive','Skipped\x20npx\x20(RABETBASE_SKIP_NPX_SKILLS=1);\x20assuming\x20skill\x20is\x20already\x20present.'];a120_0x1774=function(){return _0x458b65;};return a120_0x1774();}function a120_0x5879(_0x2fb6c5,_0x17c30b){_0x2fb6c5=_0x2fb6c5-0x160;const _0x1774aa=a120_0x1774();let _0x58790f=_0x1774aa[_0x2fb6c5];return _0x58790f;}const a120_0x583547=a120_0x5879;(function(_0x1c69bd,_0x37cad5){const _0x56821c=a120_0x5879,_0x16a84c=_0x1c69bd();while(!![]){try{const _0x27ea89=-parseInt(_0x56821c(0x173))/0x1*(-parseInt(_0x56821c(0x164))/0x2)+-parseInt(_0x56821c(0x17e))/0x3+parseInt(_0x56821c(0x171))/0x4*(-parseInt(_0x56821c(0x16b))/0x5)+-parseInt(_0x56821c(0x162))/0x6*(-parseInt(_0x56821c(0x175))/0x7)+parseInt(_0x56821c(0x174))/0x8*(parseInt(_0x56821c(0x170))/0x9)+-parseInt(_0x56821c(0x168))/0xa+-parseInt(_0x56821c(0x165))/0xb*(parseInt(_0x56821c(0x163))/0xc);if(_0x27ea89===_0x37cad5)break;else _0x16a84c['push'](_0x16a84c['shift']());}catch(_0xaf00c0){_0x16a84c['push'](_0x16a84c['shift']());}}}(a120_0x1774,0xaccfc));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE}from'../../skills/npx-skills-add.js';export const skillDefinitions=[{'service':'skill','command':a120_0x583547(0x166),'description':a120_0x583547(0x16c),'risk':a120_0x583547(0x17a),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x201b60){const _0x5d8f7b=a120_0x583547;logger[_0x5d8f7b(0x16a)](process[_0x5d8f7b(0x16e)]()),logger['info'](_0x5d8f7b(0x17f),'执行安装技能包命令(委托给\x20npx\x20skills\x20add\x20-g\x20-y)');const {runNpxSkillsAddGlobal:_0x3af157}=await import(_0x5d8f7b(0x172)),_0x1d660a=_0x201b60[_0x5d8f7b(0x17b)]?_0x5d8f7b(0x16f):_0x5d8f7b(0x17d);console[_0x5d8f7b(0x180)](_0x5d8f7b(0x169)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+_0x5d8f7b(0x160));const _0xb3a8d1=_0x3af157(process[_0x5d8f7b(0x16e)](),'lovrabet/rabetbase',{'stdio':_0x1d660a});if(_0xb3a8d1[_0x5d8f7b(0x176)])console[_0x5d8f7b(0x180)](_0x5d8f7b(0x17c));else{if(_0xb3a8d1['ok'])console[_0x5d8f7b(0x180)](CLI_BIN_NAME+_0x5d8f7b(0x177));else throw CliErrors[_0x5d8f7b(0x16d)](_0x5d8f7b(0x167)+(_0xb3a8d1[_0x5d8f7b(0x179)]||_0x5d8f7b(0x161)),_0x5d8f7b(0x178));}return{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a121_0x237675=a121_0x4c1c;(function(_0x1b9139,_0x1a4511){const _0x1c3edb=a121_0x4c1c,_0x2e39f4=_0x1b9139();while(!![]){try{const _0x2a83f3=parseInt(_0x1c3edb(0xd5))/0x1*(-parseInt(_0x1c3edb(0xda))/0x2)+parseInt(_0x1c3edb(0xa5))/0x3*(-parseInt(_0x1c3edb(0xbb))/0x4)+-parseInt(_0x1c3edb(0xba))/0x5*(parseInt(_0x1c3edb(0xd9))/0x6)+-parseInt(_0x1c3edb(0xa6))/0x7+-parseInt(_0x1c3edb(0xb2))/0x8+parseInt(_0x1c3edb(0xa3))/0x9+parseInt(_0x1c3edb(0xd4))/0xa;if(_0x2a83f3===_0x1a4511)break;else _0x2e39f4['push'](_0x2e39f4['shift']());}catch(_0x1c2223){_0x2e39f4['push'](_0x2e39f4['shift']());}}}(a121_0x61a5,0x5df7b));function a121_0x4c1c(_0x159c96,_0x31965){_0x159c96=_0x159c96-0x96;const _0x61a592=a121_0x61a5();let _0x4c1c26=_0x61a592[_0x159c96];return _0x4c1c26;}import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';function a121_0x61a5(){const _0x3cabf1=['length','trim','Created\x20SQL\x20query\x20','1898890eAplwT','128VWLibD','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','parse','flag','/smartapi/custom/saveUserCustomSql','high-risk-write','适合带动态标签的\x20MyBatis\x20XML\x20SQL','请输入目标数据库\x20dbId:','File\x20already\x20exists:\x20','description','<server-generated-sqlCode>','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','sqlName','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','MyBatis\x20XML(mybatisXml)','flagMissing','mode','stringify','请选择目标数据库:','dbId\x20必须为正整数','join','✎\x20手动输入\x20dbId','sql','dbId','23032110OjHzrT','8461qohegM','isFinite','普通\x20SQL(sql)','\x20\x20SELECT\x201\x20AS\x20id','12fEaVod','152Xhecps','lockFilePath','string','dbId\x20不能为空','__manual__','mybatisXml','validation','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','lastSync','str','new','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','SQL\x20名称不能为空','sqlRoot','5372334yekGAS','nonInteractive','6978gjGmel','2178512zTdpTH','dbName','appCode','toISOString','sqlRootDir','sqlCode','number','请输入\x20SQL\x20名称:','db-id','catch','POST','Local\x20SQL\x20file\x20mode','5816048XMAdgE','Invalid\x20database\x20selection\x20payload:\x20','name','sqls','isInteger'];a121_0x61a5=function(){return _0x3cabf1;};return a121_0x61a5();}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(_0x2e8e7c){const _0x58bbfb=a121_0x4c1c;if(_0x2e8e7c===_0x58bbfb(0x9a))return[_0x58bbfb(0xa0),_0x58bbfb(0xd8),'</select>',''][_0x58bbfb(0xd0)]('\x0a');return['SELECT\x201\x20AS\x20id;',''][_0x58bbfb(0xd0)]('\x0a');}export const sqlCreate={'service':a121_0x237675(0xd2),'command':'create','description':a121_0x237675(0xc9),'risk':a121_0x237675(0xc0),'flags':[{'name':a121_0x237675(0xb4),'type':a121_0x237675(0x97),'description':'SQL\x20query\x20display\x20name'},{'name':a121_0x237675(0xae),'type':a121_0x237675(0xac),'description':'Target\x20database\x20ID'},{'name':a121_0x237675(0xcc),'type':a121_0x237675(0x97),'enum':['sql','mybatisXml'],'description':a121_0x237675(0xb1)}],async 'validate'(_0x2dc2c2){const _0x3f27d1=a121_0x237675;if(!_0x2dc2c2[_0x3f27d1(0xa4)])return;if(!_0x2dc2c2['str']('name')['trim']())throw CliErrors[_0x3f27d1(0xcb)](_0x3f27d1(0xb4),_0x3f27d1(0xbc));const _0x4269e2=resolveProvidedDbId(_0x2dc2c2);if(typeof _0x4269e2!=='number'||!Number[_0x3f27d1(0xd6)](_0x4269e2)||_0x4269e2<=0x0)throw CliErrors[_0x3f27d1(0xcb)](_0x3f27d1(0xae),_0x3f27d1(0xc6));if(!_0x2dc2c2[_0x3f27d1(0x9e)](_0x3f27d1(0xcc))[_0x3f27d1(0xb8)]())throw CliErrors[_0x3f27d1(0xcb)]('mode',_0x3f27d1(0xc8));},async 'dryRun'(_0x409de8){const _0x544304=a121_0x237675,_0xcb309e=loadSqlProjectConfig(_0x409de8['appCode']),{sqlName:_0x173c1f,dbId:_0x401893,dbName:_0xc760d6,mode:_0x2d7316}=await resolveSqlNewInputs(_0x409de8),_0x2f87d8=buildSqlRelativePath(_0x544304(0xc5),_0x173c1f,_0xc760d6,_0x2d7316,_0x401893),_0x41c894=_0xcb309e[_0x544304(0xaa)]+'/'+_0x2f87d8;return{'method':_0x544304(0xb0),'url':_0x544304(0xbf),'body':{'appCode':_0x409de8[_0x544304(0xa8)],'sqlName':_0x173c1f,'dbId':_0x401893,'mode':_0x2d7316,'localPath':_0x41c894},'description':_0x544304(0x9c)+_0xcb309e[_0x544304(0xaa)]};},async 'execute'(_0x40bacc){const _0x5f4015=a121_0x237675,_0x23b48d=loadSqlProjectConfig(_0x40bacc[_0x5f4015(0xa8)]),{sqlName:_0x30f29c,dbId:_0x10317f,dbName:_0x5cb6ab,mode:_0x36d195}=await resolveSqlNewInputs(_0x40bacc),_0x4e1c45=generateSqlTemplate(_0x36d195),_0x3cc397=await createSqlQuery({'appCode':_0x40bacc[_0x5f4015(0xa8)],'sqlName':_0x30f29c,'dbId':_0x10317f,'sqlContent':_0x4e1c45}),_0x8b7911=ensureRemoteSqlContent(_0x3cc397),_0x778a61=_0x5cb6ab||await getDbName(_0x40bacc['appCode'],_0x10317f)[_0x5f4015(0xaf)](()=>undefined),_0x170996=buildSqlRelativePath(_0x3cc397[_0x5f4015(0xab)],_0x3cc397[_0x5f4015(0xc7)],_0x778a61,_0x36d195,_0x10317f),_0x2ad67b=_0x23b48d[_0x5f4015(0xaa)]+'/'+_0x170996,_0x8bc260=buildLocalSqlFileContent({'sqlCode':_0x3cc397[_0x5f4015(0xab)],'sqlName':_0x3cc397['sqlName'],'dbId':_0x3cc397['dbId']},_0x8b7911,{'dbName':_0x778a61,'mode':_0x36d195,'syncedAt':new Date()[_0x5f4015(0xa9)](),'description':_0x3cc397[_0x5f4015(0xc4)]});if(await fileExists(_0x2ad67b))throw CliErrors[_0x5f4015(0x9b)](_0x5f4015(0xc3)+_0x2ad67b);await ensureParentDirectory(_0x2ad67b),await writeFile(_0x2ad67b,_0x8bc260,'utf8');const _0x57155a=await readSqlLockFile(_0x23b48d['lockFilePath']),{lockData:_0x4c1d54,appLock:_0x5abd34}=ensureSqlLockScope(_0x57155a??createEmptySqlLock(),_0x23b48d['appCode'],_0x23b48d[_0x5f4015(0xa2)],_0x5f4015(0x9f));return _0x5abd34[_0x5f4015(0xb5)][_0x3cc397[_0x5f4015(0xab)]]={...buildSqlLockEntry(_0x3cc397,_0x8b7911,computeSqlContentHash(_0x8bc260),{'dbName':_0x778a61}),'path':_0x170996,'mode':_0x36d195},_0x5abd34[_0x5f4015(0x9d)]=new Date()[_0x5f4015(0xa9)](),await writeSqlLockFile(_0x23b48d[_0x5f4015(0x96)],_0x4c1d54),{'ok':!![],'data':{'id':_0x3cc397['id'],'sqlCode':_0x3cc397[_0x5f4015(0xab)],'sqlName':_0x3cc397[_0x5f4015(0xc7)],'dbId':_0x3cc397['dbId'],'path':_0x2ad67b,'mode':_0x36d195},'message':_0x5f4015(0xb9)+_0x3cc397[_0x5f4015(0xab)]};}};async function resolveSqlNewInputs(_0x451674){const _0x2685fa=await resolveSqlNameInput(_0x451674),{dbId:_0x41d97d,dbName:_0x31010e}=await resolveDbSelection(_0x451674),_0x5c9535=await resolveSqlModeInput(_0x451674);return{'sqlName':_0x2685fa,'dbId':_0x41d97d,'dbName':_0x31010e,'mode':_0x5c9535};}async function resolveSqlNameInput(_0x25b73c){const _0x2cbe72=a121_0x237675,_0xa807d1=_0x25b73c[_0x2cbe72(0x9e)](_0x2cbe72(0xb4))[_0x2cbe72(0xb8)]();if(_0xa807d1)return _0xa807d1;if(_0x25b73c[_0x2cbe72(0xa4)])throw CliErrors[_0x2cbe72(0xcb)](_0x2cbe72(0xb4),_0x2cbe72(0xbc));return(await input({'message':_0x2cbe72(0xad),'validate':_0x122301=>_0x122301[_0x2cbe72(0xb8)]()?!![]:_0x2cbe72(0xa1)}))['trim']();}async function resolveDbSelection(_0x27fdda){const _0x393796=a121_0x237675,_0x200abe=resolveProvidedDbId(_0x27fdda);if(typeof _0x200abe==='number'&&Number[_0x393796(0xd6)](_0x200abe)&&_0x200abe>0x0)return{'dbId':_0x200abe,'dbName':await getDbName(_0x27fdda['appCode'],_0x200abe)[_0x393796(0xaf)](()=>undefined)};if(_0x27fdda[_0x393796(0xa4)])throw CliErrors[_0x393796(0xcb)](_0x393796(0xae),_0x393796(0xc6));const _0x39c4d4=await listDatabases(_0x27fdda[_0x393796(0xa8)])[_0x393796(0xaf)](()=>[]);if(_0x39c4d4[_0x393796(0xb7)]===0x1)return{'dbId':_0x39c4d4[0x0][_0x393796(0xd3)],'dbName':_0x39c4d4[0x0][_0x393796(0xa7)]};if(_0x39c4d4[_0x393796(0xb7)]>0x1){const _0x532838=await select({'message':_0x393796(0xce),'choices':[..._0x39c4d4['map'](_0x4cbd5f=>({'name':_0x4cbd5f['dbName']+'\x20('+_0x4cbd5f[_0x393796(0xd3)]+')','value':serializeDbSelection(_0x4cbd5f)})),{'name':_0x393796(0xd1),'value':_0x393796(0x99)}]});if(_0x532838!==_0x393796(0x99))return deserializeDbSelection(_0x532838);}const _0x4eea95=await input({'message':_0x393796(0xc2),'validate':_0x23aa56=>{const _0x30f350=_0x393796,_0x31e6be=_0x23aa56[_0x30f350(0xb8)]();if(!_0x31e6be)return _0x30f350(0x98);const _0x1fa803=Number(_0x31e6be);if(!Number[_0x30f350(0xb6)](_0x1fa803)||_0x1fa803<=0x0)return _0x30f350(0xcf);return!![];}});return{'dbId':Number(_0x4eea95[_0x393796(0xb8)]())};}async function resolveSqlModeInput(_0x15bbf2){const _0x4e2b50=a121_0x237675,_0x201b95=_0x15bbf2[_0x4e2b50(0x9e)](_0x4e2b50(0xcc))[_0x4e2b50(0xb8)]();if(_0x201b95===_0x4e2b50(0xd2)||_0x201b95===_0x4e2b50(0x9a))return _0x201b95;if(_0x15bbf2[_0x4e2b50(0xa4)])throw CliErrors[_0x4e2b50(0xcb)](_0x4e2b50(0xcc),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');return await select({'message':'请选择本地\x20SQL\x20模式:','choices':[{'name':_0x4e2b50(0xd7),'value':_0x4e2b50(0xd2),'description':'适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句'},{'name':_0x4e2b50(0xca),'value':_0x4e2b50(0x9a),'description':_0x4e2b50(0xc1)}]});}function serializeDbSelection(_0xa4adc7){const _0x4bde80=a121_0x237675;return JSON[_0x4bde80(0xcd)]({'dbId':_0xa4adc7[_0x4bde80(0xd3)],'dbName':_0xa4adc7[_0x4bde80(0xa7)]});}function deserializeDbSelection(_0x1a5191){const _0x3b9051=a121_0x237675;try{const _0x5e88df=JSON[_0x3b9051(0xbd)](_0x1a5191);if(typeof _0x5e88df[_0x3b9051(0xd3)]===_0x3b9051(0xac)&&Number[_0x3b9051(0xd6)](_0x5e88df[_0x3b9051(0xd3)]))return{'dbId':_0x5e88df['dbId'],'dbName':_0x5e88df[_0x3b9051(0xa7)]};}catch{}throw CliErrors[_0x3b9051(0x9b)](_0x3b9051(0xb3)+_0x1a5191);}function resolveProvidedDbId(_0x10add5){const _0x2e8b7c=a121_0x237675,_0x49a3c8=_0x10add5[_0x2e8b7c(0xbe)]('db-id');if(typeof _0x49a3c8===_0x2e8b7c(0xac)&&Number[_0x2e8b7c(0xd6)](_0x49a3c8))return _0x49a3c8;return undefined;}
|
|
1
|
+
const a121_0x5050f1=a121_0x498a;(function(_0x5b189c,_0x441243){const _0x1d03da=a121_0x498a,_0x548c74=_0x5b189c();while(!![]){try{const _0x4ea26a=-parseInt(_0x1d03da(0x1b0))/0x1+parseInt(_0x1d03da(0x198))/0x2*(parseInt(_0x1d03da(0x192))/0x3)+parseInt(_0x1d03da(0x1ad))/0x4+-parseInt(_0x1d03da(0x185))/0x5*(-parseInt(_0x1d03da(0x1a9))/0x6)+parseInt(_0x1d03da(0x184))/0x7+-parseInt(_0x1d03da(0x1b5))/0x8+-parseInt(_0x1d03da(0x19e))/0x9*(parseInt(_0x1d03da(0x17f))/0xa);if(_0x4ea26a===_0x441243)break;else _0x548c74['push'](_0x548c74['shift']());}catch(_0x186bd5){_0x548c74['push'](_0x548c74['shift']());}}}(a121_0x5b31,0x7ae63));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';function a121_0x498a(_0x150837,_0x3ab165){_0x150837=_0x150837-0x17d;const _0x5b3108=a121_0x5b31();let _0x498ab2=_0x5b3108[_0x150837];return _0x498ab2;}import{buildSqlRelativePath}from'../../core/sql-sync/utils.js';import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x3e15aa){const _0x2c5b85=a121_0x498a;if(_0x3e15aa===_0x2c5b85(0x1ac))return[_0x2c5b85(0x1a6),_0x2c5b85(0x19f),_0x2c5b85(0x196),'']['join']('\x0a');return['SELECT\x201\x20AS\x20id;','']['join']('\x0a');}export const sqlCreate={'service':'sql','command':a121_0x5050f1(0x186),'description':a121_0x5050f1(0x1bf),'risk':a121_0x5050f1(0x1a7),'flags':[{'name':a121_0x5050f1(0x1aa),'type':a121_0x5050f1(0x183),'description':a121_0x5050f1(0x1af)},{'name':a121_0x5050f1(0x1b1),'type':a121_0x5050f1(0x18d),'description':'Target\x20database\x20ID'},{'name':a121_0x5050f1(0x18b),'type':a121_0x5050f1(0x183),'enum':[a121_0x5050f1(0x1be),a121_0x5050f1(0x1ac)],'description':a121_0x5050f1(0x195)}],async 'validate'(_0x22de19){const _0x12f65b=a121_0x5050f1;if(!_0x22de19['nonInteractive'])return;if(!_0x22de19['str'](_0x12f65b(0x1aa))['trim']())throw CliErrors[_0x12f65b(0x1a3)](_0x12f65b(0x1aa),'--name\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x231bba=resolveProvidedDbId(_0x22de19);if(typeof _0x231bba!=='number'||!Number[_0x12f65b(0x1a5)](_0x231bba)||_0x231bba<=0x0)throw CliErrors['flagMissing'](_0x12f65b(0x1b1),_0x12f65b(0x17d));if(!_0x22de19['str'](_0x12f65b(0x18b))[_0x12f65b(0x19c)]())throw CliErrors[_0x12f65b(0x1a3)](_0x12f65b(0x18b),_0x12f65b(0x1ba));},async 'dryRun'(_0x22a1e0){const _0x4eafac=a121_0x5050f1,_0x5e2202=loadSqlProjectConfig(_0x22a1e0[_0x4eafac(0x194)]),{sqlName:_0x16851f,dbId:_0x3aafed,dbName:_0x38babd,mode:_0x5a200f}=await resolveSqlNewInputs(_0x22a1e0),_0x60fc95=buildSqlRelativePath('<server-generated-sqlCode>',_0x16851f,_0x38babd,_0x5a200f,_0x3aafed),_0x4e8404=_0x5e2202[_0x4eafac(0x1a2)]+'/'+_0x60fc95;return{'method':'POST','url':'/smartapi/custom/saveUserCustomSql','body':{'appCode':_0x22a1e0[_0x4eafac(0x194)],'sqlName':_0x16851f,'dbId':_0x3aafed,'mode':_0x5a200f,'localPath':_0x4e8404},'description':_0x4eafac(0x193)+_0x5e2202['sqlRootDir']};},async 'execute'(_0x2ac654){const _0x203b2b=a121_0x5050f1,_0x5d75d0=loadSqlProjectConfig(_0x2ac654[_0x203b2b(0x194)]),{sqlName:_0x1de719,dbId:_0x127b2a,dbName:_0x2eebc4,mode:_0x3f61eb}=await resolveSqlNewInputs(_0x2ac654),_0x4618bb=generateSqlTemplate(_0x3f61eb),_0x1d8cd4=await createSqlQuery({'appCode':_0x2ac654[_0x203b2b(0x194)],'sqlName':_0x1de719,'dbId':_0x127b2a,'sqlContent':_0x4618bb}),_0x236690=ensureRemoteSqlContent(_0x1d8cd4),_0x2e3057=_0x2eebc4||await getDbName(_0x2ac654[_0x203b2b(0x194)],_0x127b2a)[_0x203b2b(0x199)](()=>undefined),_0x3ed58e=buildSqlRelativePath(_0x1d8cd4['sqlCode'],_0x1d8cd4[_0x203b2b(0x18f)],_0x2e3057,_0x3f61eb,_0x127b2a),_0x4e8468=_0x5d75d0[_0x203b2b(0x1a2)]+'/'+_0x3ed58e,_0x1f1304=buildLocalSqlFileContent({'sqlCode':_0x1d8cd4['sqlCode'],'sqlName':_0x1d8cd4['sqlName'],'dbId':_0x1d8cd4[_0x203b2b(0x1b8)]},_0x236690,{'dbName':_0x2e3057,'mode':_0x3f61eb,'syncedAt':new Date()[_0x203b2b(0x19a)](),'description':_0x1d8cd4[_0x203b2b(0x1ae)]});if(await fileExists(_0x4e8468))throw CliErrors[_0x203b2b(0x189)](_0x203b2b(0x191)+_0x4e8468);await ensureParentDirectory(_0x4e8468),await writeFile(_0x4e8468,_0x1f1304,_0x203b2b(0x182));const _0x2774e9=await readSqlLockFile(_0x5d75d0[_0x203b2b(0x18a)]),{lockData:_0x101ca5,appLock:_0x2f111a}=ensureSqlLockScope(_0x2774e9??createEmptySqlLock(),_0x5d75d0[_0x203b2b(0x194)],_0x5d75d0[_0x203b2b(0x180)],_0x203b2b(0x190));return _0x2f111a[_0x203b2b(0x1b7)][_0x1d8cd4[_0x203b2b(0x1ab)]]={...buildSqlLockEntry(_0x1d8cd4,_0x236690,computeSqlContentHash(_0x1f1304),{'dbName':_0x2e3057}),'path':_0x3ed58e,'mode':_0x3f61eb},_0x2f111a['lastSync']=new Date()[_0x203b2b(0x19a)](),await writeSqlLockFile(_0x5d75d0[_0x203b2b(0x18a)],_0x101ca5),{'ok':!![],'data':{'id':_0x1d8cd4['id'],'sqlCode':_0x1d8cd4[_0x203b2b(0x1ab)],'sqlName':_0x1d8cd4[_0x203b2b(0x18f)],'dbId':_0x1d8cd4['dbId'],'path':_0x4e8468,'mode':_0x3f61eb},'message':_0x203b2b(0x1bb)+_0x1d8cd4['sqlCode']};}};async function resolveSqlNewInputs(_0x202c2a){const _0x58ba58=await resolveSqlNameInput(_0x202c2a),{dbId:_0x4fb31d,dbName:_0x1c21bb}=await resolveDbSelection(_0x202c2a),_0x56a3db=await resolveSqlModeInput(_0x202c2a);return{'sqlName':_0x58ba58,'dbId':_0x4fb31d,'dbName':_0x1c21bb,'mode':_0x56a3db};}async function resolveSqlNameInput(_0x41d1fc){const _0xde546=a121_0x5050f1,_0x2632da=_0x41d1fc['str'](_0xde546(0x1aa))[_0xde546(0x19c)]();if(_0x2632da)return _0x2632da;if(_0x41d1fc[_0xde546(0x1b3)])throw CliErrors['flagMissing'](_0xde546(0x1aa),_0xde546(0x188));return(await input({'message':_0xde546(0x17e),'validate':_0xa98247=>_0xa98247[_0xde546(0x19c)]()?!![]:_0xde546(0x197)}))[_0xde546(0x19c)]();}async function resolveDbSelection(_0x1313ab){const _0x56bdb4=a121_0x5050f1,_0x5b087b=resolveProvidedDbId(_0x1313ab);if(typeof _0x5b087b==='number'&&Number[_0x56bdb4(0x1a5)](_0x5b087b)&&_0x5b087b>0x0)return{'dbId':_0x5b087b,'dbName':await getDbName(_0x1313ab[_0x56bdb4(0x194)],_0x5b087b)[_0x56bdb4(0x199)](()=>undefined)};if(_0x1313ab['nonInteractive'])throw CliErrors[_0x56bdb4(0x1a3)](_0x56bdb4(0x1b1),_0x56bdb4(0x17d));const _0x14a23f=await listDatabases(_0x1313ab['appCode'])[_0x56bdb4(0x199)](()=>[]);if(_0x14a23f[_0x56bdb4(0x1c2)]===0x1)return{'dbId':_0x14a23f[0x0][_0x56bdb4(0x1b8)],'dbName':_0x14a23f[0x0]['dbName']};if(_0x14a23f[_0x56bdb4(0x1c2)]>0x1){const _0x56fc9a=await select({'message':_0x56bdb4(0x1a1),'choices':[..._0x14a23f[_0x56bdb4(0x181)](_0x45b4ea=>({'name':_0x45b4ea['dbName']+'\x20('+_0x45b4ea[_0x56bdb4(0x1b8)]+')','value':serializeDbSelection(_0x45b4ea)})),{'name':_0x56bdb4(0x19d),'value':_0x56bdb4(0x18c)}]});if(_0x56fc9a!==_0x56bdb4(0x18c))return deserializeDbSelection(_0x56fc9a);}const _0x1a9d23=await input({'message':'请输入目标数据库\x20dbId:','validate':_0xe75ee2=>{const _0x58937f=_0x56bdb4,_0x37a432=_0xe75ee2[_0x58937f(0x19c)]();if(!_0x37a432)return _0x58937f(0x1a8);const _0x38c525=Number(_0x37a432);if(!Number[_0x58937f(0x1bd)](_0x38c525)||_0x38c525<=0x0)return _0x58937f(0x1b9);return!![];}});return{'dbId':Number(_0x1a9d23[_0x56bdb4(0x19c)]())};}async function resolveSqlModeInput(_0x34ac25){const _0x36ff70=a121_0x5050f1,_0x5c2bc2=_0x34ac25[_0x36ff70(0x187)](_0x36ff70(0x18b))[_0x36ff70(0x19c)]();if(_0x5c2bc2===_0x36ff70(0x1be)||_0x5c2bc2===_0x36ff70(0x1ac))return _0x5c2bc2;if(_0x34ac25['nonInteractive'])throw CliErrors[_0x36ff70(0x1a3)](_0x36ff70(0x18b),_0x36ff70(0x1ba));return await select({'message':_0x36ff70(0x1c0),'choices':[{'name':_0x36ff70(0x1bc),'value':_0x36ff70(0x1be),'description':_0x36ff70(0x1b2)},{'name':_0x36ff70(0x18e),'value':_0x36ff70(0x1ac),'description':_0x36ff70(0x1c1)}]});}function a121_0x5b31(){const _0x4b7545=['SQL\x20query\x20display\x20name','561745nKbtgJ','db-id','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','nonInteractive','dbName','3249168nrNwaK','Invalid\x20database\x20selection\x20payload:\x20','sqls','dbId','dbId\x20必须为正整数','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','Created\x20SQL\x20query\x20','普通\x20SQL(sql)','isInteger','sql','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','请选择本地\x20SQL\x20模式:','适合带动态标签的\x20MyBatis\x20XML\x20SQL','length','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','请输入\x20SQL\x20名称:','1835710Gqrnpl','sqlRoot','map','utf8','string','4048891kAayjj','435lfJYti','create','str','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','validation','lockFilePath','mode','__manual__','number','MyBatis\x20XML(mybatisXml)','sqlName','new','File\x20already\x20exists:\x20','1639827Lyfbeq','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','appCode','Local\x20SQL\x20file\x20mode','</select>','SQL\x20名称不能为空','2TcKYgk','catch','toISOString','parse','trim','✎\x20手动输入\x20dbId','36dyjWlH','\x20\x20SELECT\x201\x20AS\x20id','stringify','请选择目标数据库:','sqlRootDir','flagMissing','flag','isFinite','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','high-risk-write','dbId\x20不能为空','58098pkfzYz','name','sqlCode','mybatisXml','952508UWtHcD','description'];a121_0x5b31=function(){return _0x4b7545;};return a121_0x5b31();}function serializeDbSelection(_0x3023cb){const _0xed5532=a121_0x5050f1;return JSON[_0xed5532(0x1a0)]({'dbId':_0x3023cb[_0xed5532(0x1b8)],'dbName':_0x3023cb[_0xed5532(0x1b4)]});}function deserializeDbSelection(_0x30d569){const _0x4096a0=a121_0x5050f1;try{const _0x1f0f30=JSON[_0x4096a0(0x19b)](_0x30d569);if(typeof _0x1f0f30[_0x4096a0(0x1b8)]===_0x4096a0(0x18d)&&Number[_0x4096a0(0x1a5)](_0x1f0f30[_0x4096a0(0x1b8)]))return{'dbId':_0x1f0f30[_0x4096a0(0x1b8)],'dbName':_0x1f0f30['dbName']};}catch{}throw CliErrors[_0x4096a0(0x189)](_0x4096a0(0x1b6)+_0x30d569);}function resolveProvidedDbId(_0x23c783){const _0xc64130=a121_0x5050f1,_0x41ac10=_0x23c783[_0xc64130(0x1a4)](_0xc64130(0x1b1));if(typeof _0x41ac10===_0xc64130(0x18d)&&Number['isFinite'](_0x41ac10))return _0x41ac10;return undefined;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a122_0x5507(){const _0x355351=['trashDir','SQL\x20lock\x20file\x20not\x20found.','str','Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','262417KoWAoQ','POST','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','length','1572hVqvWJ','replace','toISOString','appCode','validation','Deleted\x20','high-risk-write','sqls','231EMXiul','45xnQNyl','135355qsbFhD','remoteId','1146162CGqOvf','filter','lastSync','Would\x20delete\x20SQL\x20','142168GqTUCJ','\x20(local\x20file\x20moved\x20to\x20trash)','startsWith','sqlcode','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20','/smartapi/custom/deleteUserCustomSql','2ibhtji','5318721IKrZNN','10eHucXJ','fromEntries','326394FJcIZQ','delete','1502816anKxEP','lockFilePath'];a122_0x5507=function(){return _0x355351;};return a122_0x5507();}const a122_0x31dcbc=a122_0x4577;(function(_0x48e570,_0x10de6e){const _0x26f07a=a122_0x4577,_0x5de03d=_0x48e570();while(!![]){try{const _0x1fd74d=parseInt(_0x26f07a(0x205))/0x1*(parseInt(_0x26f07a(0x1f8))/0x2)+-parseInt(_0x26f07a(0x1ee))/0x3+-parseInt(_0x26f07a(0x1fe))/0x4+parseInt(_0x26f07a(0x1eb))/0x5*(-parseInt(_0x26f07a(0x1fc))/0x6)+parseInt(_0x26f07a(0x1ea))/0x7*(-parseInt(_0x26f07a(0x1f2))/0x8)+-parseInt(_0x26f07a(0x1f9))/0x9*(-parseInt(_0x26f07a(0x1fa))/0xa)+-parseInt(_0x26f07a(0x1ec))/0xb*(-parseInt(_0x26f07a(0x209))/0xc);if(_0x1fd74d===_0x10de6e)break;else _0x5de03d['push'](_0x5de03d['shift']());}catch(_0x1b76dd){_0x5de03d['push'](_0x5de03d['shift']());}}}(a122_0x5507,0x9a2fd));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';function a122_0x4577(_0x109e7d,_0x3b670e){_0x109e7d=_0x109e7d-0x1e9;const _0x5507f5=a122_0x5507();let _0x457785=_0x5507f5[_0x109e7d];return _0x457785;}import{deleteSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{fileExists}from'../../core/bff/file-system.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDelete={'service':'sql','command':'delete','description':a122_0x31dcbc(0x203),'risk':a122_0x31dcbc(0x20f),'flags':[SQLCODE_FLAG],async 'validate'(_0x1ffac6){const _0x1288bd=a122_0x31dcbc,_0x937ca=loadSqlProjectConfig(_0x1ffac6[_0x1288bd(0x20c)]),_0x404015=await readSqlLockFile(_0x937ca[_0x1288bd(0x1ff)]);if(!_0x404015)throw CliErrors[_0x1288bd(0x20d)](_0x1288bd(0x204));},async 'dryRun'(_0x2582fc){const _0x4beb8f=a122_0x31dcbc,_0x5f2122=loadSqlProjectConfig(_0x2582fc[_0x4beb8f(0x20c)]),_0x495768=await readSqlLockFile(_0x5f2122['lockFilePath']);if(!_0x495768)throw CliErrors[_0x4beb8f(0x20d)]('SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.');const {appLock:_0x1b13bb}=ensureSqlLockScope(_0x495768,_0x2582fc[_0x4beb8f(0x20c)],_0x5f2122['sqlRoot'],'delete'),_0x46ad1d=_0x2582fc[_0x4beb8f(0x202)](_0x4beb8f(0x1f5)),_0x22ce75=_0x1b13bb[_0x4beb8f(0x1e9)][_0x46ad1d];if(!_0x22ce75)throw CliErrors[_0x4beb8f(0x20d)](_0x4beb8f(0x207)+_0x46ad1d+'\x22.');return{'method':_0x4beb8f(0x206),'url':_0x4beb8f(0x1f7),'body':{'sqlCode':_0x46ad1d,'id':_0x22ce75[_0x4beb8f(0x1ed)],'localPath':resolveLocalSqlFilePath(_0x5f2122,_0x46ad1d,_0x22ce75)},'description':_0x4beb8f(0x1f1)+_0x46ad1d+_0x4beb8f(0x1f6)+_0x5f2122[_0x4beb8f(0x200)]};},async 'execute'(_0x586673){const _0x390c01=a122_0x31dcbc,_0x1d2fbd=loadSqlProjectConfig(_0x586673['appCode']),_0x4dd4f6=await readSqlLockFile(_0x1d2fbd['lockFilePath']);if(!_0x4dd4f6)throw CliErrors[_0x390c01(0x20d)](_0x390c01(0x201));const {lockData:_0x41b116,appLock:_0x596d2c}=ensureSqlLockScope(_0x4dd4f6,_0x586673[_0x390c01(0x20c)],_0x1d2fbd['sqlRoot'],_0x390c01(0x1fd)),_0x518a55=_0x586673[_0x390c01(0x202)]('sqlcode'),_0x957561=_0x596d2c[_0x390c01(0x1e9)][_0x518a55];if(!_0x957561)throw CliErrors[_0x390c01(0x20d)](_0x390c01(0x207)+_0x518a55+'\x22.');await deleteSqlQuery({'id':_0x957561[_0x390c01(0x1ed)],'sqlCode':_0x518a55}),_0x596d2c[_0x390c01(0x1e9)]=Object[_0x390c01(0x1fb)](Object['entries'](_0x596d2c['sqls'])[_0x390c01(0x1ef)](([_0x52b9a6])=>_0x52b9a6!==_0x518a55)),_0x596d2c[_0x390c01(0x1f0)]=new Date()['toISOString'](),await writeSqlLockFile(_0x1d2fbd['lockFilePath'],_0x41b116);const _0x247d92=resolveLocalSqlFilePath(_0x1d2fbd,_0x518a55,_0x957561);let _0xc1a112;await fileExists(_0x247d92)&&(_0xc1a112=await moveToTrash(_0x1d2fbd['projectRoot'],_0x1d2fbd['trashDir'],_0x247d92),await cleanupEmptyDirectories(dirname(_0x247d92),_0x1d2fbd['sqlRootDir']));const _0x7c8c5b={'deleted':_0x518a55,'remoteId':_0x957561[_0x390c01(0x1ed)]};if(_0xc1a112)_0x7c8c5b['trashedTo']=_0xc1a112;return{'ok':!![],'data':_0x7c8c5b,'message':_0x390c01(0x20e)+_0x518a55+(_0xc1a112?_0x390c01(0x1f3):'')};}};async function moveToTrash(_0x56a834,_0xb0b3ab,_0x3b849d){const _0x5e1f58=a122_0x31dcbc,_0x10c85b=new Date()[_0x5e1f58(0x20b)]()[_0x5e1f58(0x20a)](/[:.]/g,'-'),_0x1a2cdd=relative(_0x56a834,_0x3b849d),_0x40502a=join(_0xb0b3ab,_0x10c85b,_0x1a2cdd);return await mkdir(dirname(_0x40502a),{'recursive':!![]}),await rename(_0x3b849d,_0x40502a),_0x40502a;}async function cleanupEmptyDirectories(_0x17a2af,_0x5bcc48){const _0x281411=a122_0x31dcbc;let _0x2b0bf5=resolve(_0x17a2af);const _0x213407=resolve(_0x5bcc48);while(_0x2b0bf5[_0x281411(0x1f4)](''+_0x213407+sep)||_0x2b0bf5===_0x213407){if(_0x2b0bf5===_0x213407)return;try{const _0x389cc3=await readdir(_0x2b0bf5);if(_0x389cc3[_0x281411(0x208)]>0x0)return;await rmdir(_0x2b0bf5);}catch{return;}_0x2b0bf5=dirname(_0x2b0bf5);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a123_0x4adf(){const _0x55fcd6=['read','sql','appCode','94784EOYftr','Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','Return\x20full\x20raw\x20SQL\x20query\x20object','str','255073LIpZZU','11307cehVkP','422832bObVVY','verbose','191555ZxYiMB','32ePYuyD','sqlName','bool','description','342484UxZVdp','sqlcode','30lokmEM','5lDCzat','sqlCode','detail','254619mVcLQb','dbId'];a123_0x4adf=function(){return _0x55fcd6;};return a123_0x4adf();}function a123_0x4d4f(_0x964d90,_0x59c945){_0x964d90=_0x964d90-0x168;const _0x4adf35=a123_0x4adf();let _0x4d4f72=_0x4adf35[_0x964d90];return _0x4d4f72;}const a123_0x22e416=a123_0x4d4f;(function(_0x59963e,_0x140fd3){const _0x4d231b=a123_0x4d4f,_0x2b145d=_0x59963e();while(!![]){try{const _0x4ae40b=-parseInt(_0x4d231b(0x168))/0x1+parseInt(_0x4d231b(0x178))/0x2+parseInt(_0x4d231b(0x17d))/0x3+parseInt(_0x4d231b(0x16d))/0x4*(parseInt(_0x4d231b(0x170))/0x5)+-parseInt(_0x4d231b(0x17e))/0x6+-parseInt(_0x4d231b(0x17c))/0x7*(-parseInt(_0x4d231b(0x169))/0x8)+parseInt(_0x4d231b(0x173))/0x9*(parseInt(_0x4d231b(0x16f))/0xa);if(_0x4ae40b===_0x140fd3)break;else _0x2b145d['push'](_0x2b145d['shift']());}catch(_0xbfa665){_0x2b145d['push'](_0x2b145d['shift']());}}}(a123_0x4adf,0x19ba8));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':a123_0x22e416(0x176),'command':a123_0x22e416(0x172),'description':a123_0x22e416(0x179),'risk':a123_0x22e416(0x175),'flags':[SQLCODE_FLAG,{'name':a123_0x22e416(0x17f),'type':'boolean','description':a123_0x22e416(0x17a)}],async 'execute'(_0x1480bc){const _0x5aa5e2=a123_0x22e416,_0x1fc242=await getSqlQueryInfo(_0x1480bc[_0x5aa5e2(0x177)],_0x1480bc[_0x5aa5e2(0x17b)](_0x5aa5e2(0x16e))),_0x433f34=_0x1480bc[_0x5aa5e2(0x16b)](_0x5aa5e2(0x17f));if(_0x433f34)return{'ok':!![],'data':_0x1fc242};const _0x20dfe3=_0x1fc242['dbId']?await getDbName(_0x1480bc['appCode'],_0x1fc242[_0x5aa5e2(0x174)]):undefined;return{'ok':!![],'data':{'sqlCode':_0x1fc242[_0x5aa5e2(0x171)],'sqlName':_0x1fc242[_0x5aa5e2(0x16a)],'db':_0x20dfe3?_0x20dfe3+'\x20('+_0x1fc242[_0x5aa5e2(0x174)]+')':_0x1fc242['dbId']??'','description':_0x1fc242[_0x5aa5e2(0x16c)]??'','sqlContent':_0x1fc242['sqlContent']??''}};}};
|
package/lib/commands/sql/exec.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a124_0x494c5f=a124_0x5128;(function(_0x10995e,_0x6f1e93){const _0x471b76=a124_0x5128,_0x4c3c4f=_0x10995e();while(!![]){try{const _0x4c63b7=parseInt(_0x471b76(0x117))/0x1*(parseInt(_0x471b76(0x120))/0x2)+-parseInt(_0x471b76(0x11a))/0x3*(parseInt(_0x471b76(0x114))/0x4)+parseInt(_0x471b76(0x11d))/0x5*(-parseInt(_0x471b76(0x110))/0x6)+-parseInt(_0x471b76(0x112))/0x7+-parseInt(_0x471b76(0x11f))/0x8+parseInt(_0x471b76(0x11c))/0x9*(parseInt(_0x471b76(0x118))/0xa)+parseInt(_0x471b76(0x111))/0xb;if(_0x4c63b7===_0x6f1e93)break;else _0x4c3c4f['push'](_0x4c3c4f['shift']());}catch(_0x3e31b5){_0x4c3c4f['push'](_0x4c3c4f['shift']());}}}(a124_0x43ca,0xc3c8d));import{executeSql}from'../../core/api-client.js';function a124_0x5128(_0xc8771f,_0x5767f3){_0xc8771f=_0xc8771f-0x10b;const _0x43ca16=a124_0x43ca();let _0x512864=_0x43ca16[_0xc8771f];return _0x512864;}import{SQLCODE_FLAG}from'../../commands/common/flags.js';import{parseJsonParams}from'../../utils/params.js';export const sqlExec={'service':a124_0x494c5f(0x115),'command':a124_0x494c5f(0x11b),'description':a124_0x494c5f(0x116),'risk':'read','flags':[SQLCODE_FLAG,{'name':a124_0x494c5f(0x10d),'type':'string','description':a124_0x494c5f(0x10f)}],async 'execute'(_0x1915d5){const _0x3c3e48=a124_0x494c5f,_0x2c59ea=parseJsonParams(_0x1915d5[_0x3c3e48(0x113)](_0x3c3e48(0x10d))),_0x9deca7=Date[_0x3c3e48(0x11e)](),_0x26ae15=await executeSql(_0x1915d5['appCode'],_0x1915d5['str']('sqlcode'),_0x2c59ea),_0x3c36e4=Date[_0x3c3e48(0x11e)]()-_0x9deca7,_0x1f45e7=_0x26ae15?.['execResult']??_0x26ae15,_0x5d5b1a=_0x26ae15?.['execSuccess']??!![];if(!_0x5d5b1a)return{'ok':![],'data':{'error':_0x26ae15?.['execError']||_0x3c3e48(0x10c),'elapsed':_0x3c36e4},'message':_0x3c3e48(0x10c)};const _0x12ecdb=Array[_0x3c3e48(0x121)](_0x1f45e7)?_0x1f45e7:[];return{'ok':!![],'data':{'rows':_0x12ecdb,'rowCount':_0x12ecdb['length'],'elapsed':_0x3c36e4},'message':_0x3c3e48(0x10b)+_0x12ecdb[_0x3c3e48(0x119)]+_0x3c3e48(0x10e)+_0x3c36e4+'ms'};}};function a124_0x43ca(){const _0xa58f3f=['\x20row(s)\x20in\x20','SQL\x20parameters\x20as\x20JSON\x20string\x20(e.g.\x20\x27{\x22key\x22:\x22value\x22}\x27)','1862178DQOVka','33895224XTlJkw','7649754WgglAe','str','824hMmszE','sql','Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode','142cZMkZx','2403790tBPpWT','length','4893oEqAfL','exec','9ZYGmKs','15HncSvD','now','1959928ruvCoR','1198CmdNuP','isArray','Returned\x20','SQL\x20execution\x20failed','params'];a124_0x43ca=function(){return _0xa58f3f;};return a124_0x43ca();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x11e19d,_0x58832d){const _0x2efde4=a125_0x342c,_0x2c26cb=_0x11e19d();while(!![]){try{const _0x334e04=-parseInt(_0x2efde4(0x1ea))/0x1*(-parseInt(_0x2efde4(0x1eb))/0x2)+-parseInt(_0x2efde4(0x1ed))/0x3*(parseInt(_0x2efde4(0x1ee))/0x4)+parseInt(_0x2efde4(0x1ec))/0x5+-parseInt(_0x2efde4(0x1f0))/0x6+parseInt(_0x2efde4(0x1e9))/0x7+-parseInt(_0x2efde4(0x1ef))/0x8+parseInt(_0x2efde4(0x1e8))/0x9;if(_0x334e04===_0x58832d)break;else _0x2c26cb['push'](_0x2c26cb['shift']());}catch(_0xb3b3cb){_0x2c26cb['push'](_0x2c26cb['shift']());}}}(a125_0x10ff,0x3db73));import{sqlList}from'../../commands/sql/list.js';import{sqlDetail}from'../../commands/sql/detail.js';import{sqlValidate}from'../../commands/sql/validate.js';import{sqlSave}from'../../commands/sql/save.js';function a125_0x10ff(){const _0x546df3=['1798326TgYipM','2882012OEsRTv','164677dYqwcN','6bdyidH','1125445oDfBhb','9YeKNoT','255748cgcBJg','3381576FZItIp','2780130SELIiF'];a125_0x10ff=function(){return _0x546df3;};return a125_0x10ff();}function a125_0x342c(_0x5c41d4,_0xf56892){_0x5c41d4=_0x5c41d4-0x1e8;const _0x10ff38=a125_0x10ff();let _0x342ceb=_0x10ff38[_0x5c41d4];return _0x342ceb;}import{sqlExec}from'../../commands/sql/exec.js';import{sqlPull}from'../../commands/sql/pull.js';import{sqlCreate}from'../../commands/sql/create.js';import{sqlStatus}from'../../commands/sql/status.js';import{sqlPush}from'../../commands/sql/push.js';import{sqlDelete}from'../../commands/sql/delete.js';export const sqlDefinitions=[sqlList,sqlDetail,sqlStatus,sqlCreate,sqlPush,sqlValidate,sqlSave,sqlExec,sqlPull,sqlDelete];
|
package/lib/commands/sql/list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a126_0x90335=a126_0x283e;(function(_0x555229,_0x3ca68a){const _0x3790e5=a126_0x283e,_0x491aef=_0x555229();while(!![]){try{const _0x14695b=-parseInt(_0x3790e5(0x187))/0x1*(parseInt(_0x3790e5(0x177))/0x2)+parseInt(_0x3790e5(0x180))/0x3+parseInt(_0x3790e5(0x193))/0x4*(parseInt(_0x3790e5(0x185))/0x5)+parseInt(_0x3790e5(0x188))/0x6+parseInt(_0x3790e5(0x17e))/0x7+parseInt(_0x3790e5(0x17b))/0x8+-parseInt(_0x3790e5(0x191))/0x9;if(_0x14695b===_0x3ca68a)break;else _0x491aef['push'](_0x491aef['shift']());}catch(_0x396fb4){_0x491aef['push'](_0x491aef['shift']());}}}(a126_0x2fb3,0xcc037));function a126_0x2fb3(){const _0x37db3f=['pagesize','1099253SACYBk','7113504PtczTK','sqlCode','Page\x20number','dbId','number','name','tableData','appCode','page','16790445nFQoma','totalCount','8NvxtXz','str','sqlcode','verbose','read','Page\x20size','sql','2rpeRyv','bool','List\x20custom\x20SQL\x20queries','No\x20custom\x20SQL\x20queries\x20found.','3365248rmSHzC','Filter\x20by\x20SQL\x20name','sqlName','4010377fxqtNA','map','2873232NtDYEi','length','\x20SQL\x20queries\x20(total:\x20','boolean','num','1659005FNSjVI'];a126_0x2fb3=function(){return _0x37db3f;};return a126_0x2fb3();}import{listSqlQueries}from'../../core/api-client.js';function a126_0x283e(_0x3c68a5,_0x196ffb){_0x3c68a5=_0x3c68a5-0x174;const _0x2fb396=a126_0x2fb3();let _0x283ee3=_0x2fb396[_0x3c68a5];return _0x283ee3;}import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';export const sqlList={'service':a126_0x90335(0x176),'command':'list','description':a126_0x90335(0x179),'risk':a126_0x90335(0x174),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a126_0x90335(0x18d),'type':'string','description':a126_0x90335(0x17c)},{'name':a126_0x90335(0x190),'type':'number','description':a126_0x90335(0x18a),'default':0x1},{'name':a126_0x90335(0x186),'type':a126_0x90335(0x18c),'description':a126_0x90335(0x175)},{'name':a126_0x90335(0x196),'type':a126_0x90335(0x183),'description':'Return\x20full\x20SQL\x20query\x20objects\x20including\x20parameters\x20and\x20SQL\x20content'}],async 'execute'(_0x36b678){const _0x3aa7ef=a126_0x90335,_0x52e8f4=await listSqlQueries(_0x36b678[_0x3aa7ef(0x18f)],{'sqlCode':_0x36b678[_0x3aa7ef(0x194)](_0x3aa7ef(0x195))||undefined,'sqlName':_0x36b678['str'](_0x3aa7ef(0x18d))||undefined,'currentPage':_0x36b678[_0x3aa7ef(0x184)](_0x3aa7ef(0x190)),'pageSize':_0x36b678[_0x3aa7ef(0x184)]('pagesize',0x32)}),_0x4cfe71=_0x36b678[_0x3aa7ef(0x178)](_0x3aa7ef(0x196)),_0x2ab665=_0x52e8f4[_0x3aa7ef(0x18e)]??[],_0x4a4459=_0x52e8f4['paging']?.[_0x3aa7ef(0x192)]??_0x2ab665[_0x3aa7ef(0x181)];let _0x445a44;return _0x4cfe71?_0x445a44=_0x2ab665:_0x445a44=await Promise['all'](_0x2ab665[_0x3aa7ef(0x17f)](async _0x45c20e=>{const _0x401ed0=_0x3aa7ef;let _0x36469c;try{_0x36469c=_0x45c20e[_0x401ed0(0x18b)]?await getDbName(_0x36b678['appCode'],_0x45c20e[_0x401ed0(0x18b)]):undefined;}catch{}return{'sqlCode':_0x45c20e[_0x401ed0(0x189)],'sqlName':_0x45c20e[_0x401ed0(0x17d)],'description':_0x45c20e['description']??'','db':_0x36469c?_0x36469c+'\x20('+_0x45c20e[_0x401ed0(0x18b)]+')':_0x45c20e['dbId']??''};})),{'ok':!![],'data':_0x445a44,'message':_0x2ab665[_0x3aa7ef(0x181)]===0x0?_0x3aa7ef(0x17a):'Found\x20'+_0x2ab665['length']+_0x3aa7ef(0x182)+_0x4a4459+').'};}};
|