@lovrabet/rabetbase-cli 2.1.12-beta.2 → 2.1.12-beta.4
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/field-update.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/link-create.js +1 -1
- package/lib/commands/dataset/link-delete.js +1 -1
- package/lib/commands/dataset/link-shared.js +1 -1
- package/lib/commands/dataset/link-update.js +1 -1
- package/lib/commands/dataset/links.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/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/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/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(_0x43eecc,_0x4faf28){const _0x46133a=a106_0x1aab,_0x5338ad=_0x43eecc();while(!![]){try{const _0x3e1a9f=parseInt(_0x46133a(0x1e7))/0x1*(parseInt(_0x46133a(0x1ba))/0x2)+parseInt(_0x46133a(0x1ea))/0x3*(parseInt(_0x46133a(0x1df))/0x4)+parseInt(_0x46133a(0x1c9))/0x5*(parseInt(_0x46133a(0x1be))/0x6)+-parseInt(_0x46133a(0x1e4))/0x7+-parseInt(_0x46133a(0x1b3))/0x8+-parseInt(_0x46133a(0x1d3))/0x9*(parseInt(_0x46133a(0x1ee))/0xa)+parseInt(_0x46133a(0x1d5))/0xb;if(_0x3e1a9f===_0x4faf28)break;else _0x5338ad['push'](_0x5338ad['shift']());}catch(_0x231185){_0x5338ad['push'](_0x5338ad['shift']());}}}(a106_0x34a1,0x57a5e));import a106_0x2a931d from'path';import a106_0x17ecba from'fs/promises';import{existsSync}from'fs';import{CLI_BIN_NAME}from'../../../constant/cli.js';function a106_0x34a1(){const _0x49b28b=['validation','3519pVttdv','Project\x20name\x20cannot\x20be\x20empty.','1273096KGgedP','chdir','\x20\x20√\x20Project\x20template\x20created','bun','W_OK','utf-8','\x22\x20already\x20exists.','\x20dataset(s),\x20generated\x20','belowMinimum','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','4sjqYIn','toLocaleString','\x20\x20rabetbase\x20run\x20start\x0a','log','\x20\x20√\x20Pulled\x20','1000510zBzVuN','env','A\x20project\x20created\x20with\x20Lovrabet\x20CLI','5942sfXMqe','needsUpgrade','cwd','2047671WSfjRV','\x20api\x20pull`\x20manually\x20later.','package.json','string','14770Qxzwkm','ignore','length','bun\x20--version','4239120zuQfTG','\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)','*\x20Creating\x20project\x20','\x20created\x20successfully!','Project\x20name\x20contains\x20invalid\x20characters.','Use\x20a\x20different\x20project\x20name.','access','54wfPmMv','stringify','bun\x20run\x20format','production','177438MiaYdK','Check\x20directory\x20permissions.','\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`','trim','resolve','\x0a\x20\x20cd\x20','Project\x20directory\x20\x22','\x20\x20√\x20package.json\x20updated','Cannot\x20create\x20project\x20in\x20current\x20directory.','\x20\x20Installing\x20dependencies...','test','110GfDTVy','npm','readFile','join','constants','\x20\x20√\x20Configuration\x20file\x20created','\x20\x20Pulling\x20API\x20configuration...','...','writeFile'];a106_0x34a1=function(){return _0x49b28b;};return a106_0x34a1();}import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{exec,execSync}from'child_process';import{copyDirectory}from'../../../utils/copy-directory.js';import{promisify}from'util';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{readConfig}from'../../../utils/config.js';import{getCliVersion}from'../../../utils/version.js';import{CliErrors}from'../../../errors.js';import{fetchModelList}from'../../../api/fetch-model-list.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';const execAsync=promisify(exec);export async function createProjectNonInteractive(_0x3a910e,_0x1888d4,_0x3e88ec,_0x1ad948){const _0x6bf30e=a106_0x1aab,_0x567666=await checkCliVersion();(_0x567666[_0x6bf30e(0x1e8)]||_0x567666[_0x6bf30e(0x1dd)])&&(printCliUpgradeWarning(_0x567666),assertCliVersionSupported(_0x567666));if(!_0x3a910e||_0x3a910e[_0x6bf30e(0x1c1)]()==='')throw CliErrors[_0x6bf30e(0x1d2)](_0x6bf30e(0x1d4));const _0x47c103=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x47c103[_0x6bf30e(0x1c8)](_0x3a910e))throw CliErrors[_0x6bf30e(0x1d2)](_0x6bf30e(0x1b7),'Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters');if(_0x3a910e[_0x6bf30e(0x1b1)]>0x64)throw CliErrors['validation'](_0x6bf30e(0x1de));const _0x61a675=a106_0x2a931d[_0x6bf30e(0x1c2)](process[_0x6bf30e(0x1e9)](),_0x3a910e);if(existsSync(_0x61a675))throw CliErrors[_0x6bf30e(0x1d2)](_0x6bf30e(0x1c4)+_0x3a910e+_0x6bf30e(0x1db),_0x6bf30e(0x1b8));try{const _0x33a21b=a106_0x2a931d['dirname'](_0x61a675);await a106_0x17ecba[_0x6bf30e(0x1b9)](_0x33a21b,a106_0x17ecba[_0x6bf30e(0x1cd)][_0x6bf30e(0x1d9)]);}catch{throw CliErrors['validation'](_0x6bf30e(0x1c6),_0x6bf30e(0x1bf));}try{console['log'](_0x6bf30e(0x1b5)+_0x3a910e+_0x6bf30e(0x1d0));const _0x371c5d=getSubAppReactDemoTemplateDir();await copyDirectory(_0x371c5d,_0x61a675),console[_0x6bf30e(0x1e2)](_0x6bf30e(0x1d7)),await updatePackageJsonName(_0x3a910e),console['log'](_0x6bf30e(0x1c5)),console[_0x6bf30e(0x1e2)](_0x6bf30e(0x1c7)),console[_0x6bf30e(0x1e2)](_0x6bf30e(0x1b4)),await formatCode(_0x61a675),console[_0x6bf30e(0x1e2)]('\x20\x20√\x20Code\x20formatted'),await configureProject(_0x3a910e,_0x3e88ec,_0x1888d4),console[_0x6bf30e(0x1e2)](_0x6bf30e(0x1ce)),_0x3e88ec&&await pullApiConfig(_0x61a675,_0x3e88ec,_0x1888d4,_0x1ad948),console[_0x6bf30e(0x1e2)]('\x0a√\x20Project\x20'+_0x3a910e+_0x6bf30e(0x1b6)),console[_0x6bf30e(0x1e2)](_0x6bf30e(0x1c3)+_0x3a910e),console[_0x6bf30e(0x1e2)](_0x6bf30e(0x1e1));}catch(_0x3bbd6a){try{existsSync(_0x61a675)&&await a106_0x17ecba['rm'](_0x61a675,{'recursive':!![],'force':!![]});}catch{}throw _0x3bbd6a;}}async function updatePackageJsonName(_0xa1d106){const _0x4e6c27=a106_0x1aab,_0x159baa=a106_0x2a931d[_0x4e6c27(0x1c2)](process['cwd'](),_0xa1d106),_0x209c03=a106_0x2a931d[_0x4e6c27(0x1cc)](_0x159baa,_0x4e6c27(0x1ec)),_0xea2c3e=await a106_0x17ecba[_0x4e6c27(0x1cb)](_0x209c03,_0x4e6c27(0x1da)),_0x429de9=JSON['parse'](_0xea2c3e);_0x429de9['name']=_0xa1d106,_0x429de9['description']=_0x4e6c27(0x1e6),await a106_0x17ecba[_0x4e6c27(0x1d1)](_0x209c03,JSON[_0x4e6c27(0x1bb)](_0x429de9,null,0x2)+'\x0a');}function detectPackageManager(){const _0x18b4e3=a106_0x1aab;try{return execSync(_0x18b4e3(0x1b2),{'stdio':_0x18b4e3(0x1ef)}),_0x18b4e3(0x1d8);}catch{return _0x18b4e3(0x1ca);}}async function formatCode(_0x3c73cf){const _0x553c70=a106_0x1aab;try{await execAsync(_0x553c70(0x1bc),{'cwd':_0x3c73cf});}catch{}}function a106_0x1aab(_0x73ae34,_0x195147){_0x73ae34=_0x73ae34-0x1b1;const _0x34a140=a106_0x34a1();let _0x1aab81=_0x34a140[_0x73ae34];return _0x1aab81;}async function configureProject(_0x4b24ed,_0x4bfc25,_0xaabb94){const _0x1f0540=a106_0x1aab,_0xf5b32d=a106_0x2a931d[_0x1f0540(0x1c2)](process['cwd'](),_0x4b24ed),_0x2f26b6=a106_0x2a931d[_0x1f0540(0x1cc)](_0xf5b32d,NEW_CONFIG_NAME),_0x363093=readConfig(),_0x36e0bb=typeof _0x363093[_0x1f0540(0x1e5)]===_0x1f0540(0x1ed)?_0x363093[_0x1f0540(0x1e5)]:undefined,_0x12360c={};for(const _0x522a73 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x363093[_0x522a73]!=null)_0x12360c[_0x522a73]=_0x363093[_0x522a73];}const _0x5afe28=buildCanonicalProjectConfig(_0x12360c,{'appCodes':_0x4bfc25?[_0x4bfc25]:[],'env':_0xaabb94||_0x36e0bb||'production','metadata':{'createdAt':new Date()[_0x1f0540(0x1e0)](),'version':getCliVersion()}});writeConfigFile(_0x2f26b6,_0x5afe28);}async function pullApiConfig(_0x17e7a9,_0x238bf2,_0x37b929,_0x486d9e){const _0x5499ce=a106_0x1aab,_0x1b43d9=process['cwd']();try{process['chdir'](_0x17e7a9);const _0x11826a=_0x37b929||_0x5499ce(0x1bd);initEnv(_0x11826a),console[_0x5499ce(0x1e2)](_0x5499ce(0x1cf));const {configArray:_0x4ecf73}=await fetchModelList(_0x238bf2,_0x486d9e||''),_0x2fc6d0=await generateApiFile(_0x4ecf73,'',_0x238bf2,!![],_0x11826a,DEFAULT_API_DIR);console[_0x5499ce(0x1e2)](_0x5499ce(0x1e3)+_0x4ecf73[_0x5499ce(0x1b1)]+_0x5499ce(0x1dc)+_0x2fc6d0['modelCount']+'\x20model(s)');}catch(_0x5ea78a){console[_0x5499ce(0x1e2)](_0x5499ce(0x1c0)+CLI_BIN_NAME+_0x5499ce(0x1eb));}finally{process[_0x5499ce(0x1d6)](_0x1b43d9);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a107_0x135b(){const _0x32c936=['1915767wGxHLj','1003768QnBTyh','2347295NYaeVS','join','projects','1638662BcBYFX','sub-app-react-demo','resolve','7YVdrWu','templates','64297JQvNJz','3787068fFhHQR','dirname','3307740RMFpPT'];a107_0x135b=function(){return _0x32c936;};return a107_0x135b();}function a107_0x3947(_0x28152f,_0x41b7bb){_0x28152f=_0x28152f-0xd6;const _0x135b04=a107_0x135b();let _0x394785=_0x135b04[_0x28152f];return _0x394785;}const a107_0x55cb83=a107_0x3947;(function(_0x567e4e,_0xeac661){const _0x3c7e06=a107_0x3947,_0x5e57ee=_0x567e4e();while(!![]){try{const _0x4abb26=-parseInt(_0x3c7e06(0xd9))/0x1+-parseInt(_0x3c7e06(0xe2))/0x2+-parseInt(_0x3c7e06(0xdd))/0x3+parseInt(_0x3c7e06(0xdc))/0x4+parseInt(_0x3c7e06(0xdf))/0x5+-parseInt(_0x3c7e06(0xda))/0x6*(-parseInt(_0x3c7e06(0xd7))/0x7)+parseInt(_0x3c7e06(0xde))/0x8;if(_0x4abb26===_0xeac661)break;else _0x5e57ee['push'](_0x5e57ee['shift']());}catch(_0x545abc){_0x5e57ee['push'](_0x5e57ee['shift']());}}}(a107_0x135b,0x8198a));import a107_0x5dc7b7 from'node:path';import{fileURLToPath}from'node:url';const __dirname=a107_0x5dc7b7[a107_0x55cb83(0xdb)](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x1d9627=a107_0x55cb83;return a107_0x5dc7b7[_0x1d9627(0xd6)](__dirname,'../../../../');}export function getSubAppReactDemoTemplateDir(){const _0x6d4e5d=a107_0x55cb83;return a107_0x5dc7b7[_0x6d4e5d(0xe0)](getRabetbaseCliPackageRoot(),_0x6d4e5d(0xd8),_0x6d4e5d(0xe1),_0x6d4e5d(0xe3));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a108_0x5626(_0x34099b,_0x5cf011){_0x34099b=_0x34099b-0x137;const _0x31b7bd=a108_0x31b7();let _0x5626a6=_0x31b7bd[_0x34099b];return _0x5626a6;}(function(_0x19a103,_0x4b9152){const _0x25dd5f=a108_0x5626,_0x685143=_0x19a103();while(!![]){try{const _0x4c4757=-parseInt(_0x25dd5f(0x140))/0x1*(-parseInt(_0x25dd5f(0x146))/0x2)+parseInt(_0x25dd5f(0x143))/0x3+-parseInt(_0x25dd5f(0x13a))/0x4+parseInt(_0x25dd5f(0x142))/0x5+parseInt(_0x25dd5f(0x13d))/0x6+-parseInt(_0x25dd5f(0x138))/0x7*(parseInt(_0x25dd5f(0x13f))/0x8)+-parseInt(_0x25dd5f(0x139))/0x9;if(_0x4c4757===_0x4b9152)break;else _0x685143['push'](_0x685143['shift']());}catch(_0x45bcd2){_0x685143['push'](_0x685143['shift']());}}}(a108_0x31b7,0xbdde9));import a108_0x5c70a0 from'node:path';import{copyDirectory}from'../../../utils/copy-directory.js';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';function a108_0x31b7(){const _0x37b205=['141862IcVqat','686412jHbxDY','1196416QOwfoD','error','开始复制项目模板','608382hDhtjH','now','88lglUsJ','2206yqQHoP','message','2399085eTEhQR','2179209YAXyvA','项目模板复制完成','copy','62dJHVtg','success','resolve'];a108_0x31b7=function(){return _0x37b205;};return a108_0x31b7();}const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x56aa9a){const _0x5d7d9c=a108_0x5626,_0x495030=Date[_0x5d7d9c(0x13e)](),_0x4a3852=a108_0x5c70a0[_0x5d7d9c(0x137)](process['cwd'](),_0x56aa9a);try{logger['info'](_0x5d7d9c(0x145),_0x5d7d9c(0x13c),{'projectCode':_0x56aa9a,'templateDir':templateDir}),await copyDirectory(templateDir,_0x4a3852);const _0x4423c7=Date[_0x5d7d9c(0x13e)]()-_0x495030;logger[_0x5d7d9c(0x147)](_0x5d7d9c(0x145),_0x5d7d9c(0x144),_0x4423c7,{'projectCode':_0x56aa9a});}catch(_0x5b4cd1){const _0x92a7fa=Date[_0x5d7d9c(0x13e)]()-_0x495030;logger[_0x5d7d9c(0x13b)](_0x5d7d9c(0x145),'项目模板复制失败',{'projectCode':_0x56aa9a,'error':_0x5b4cd1 instanceof Error?_0x5b4cd1[_0x5d7d9c(0x141)]:String(_0x5b4cd1),'duration':_0x92a7fa});throw _0x5b4cd1;}return formatElapsed(_0x495030);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x164fdb,_0x483d11){const _0x52055e=a109_0xb7d8,_0x4d7671=_0x164fdb();while(!![]){try{const _0x324f94=-parseInt(_0x52055e(0x8c))/0x1*(parseInt(_0x52055e(0x9b))/0x2)+-parseInt(_0x52055e(0x8a))/0x3+parseInt(_0x52055e(0xa0))/0x4*(parseInt(_0x52055e(0x9c))/0x5)+-parseInt(_0x52055e(0x93))/0x6*(-parseInt(_0x52055e(0x9f))/0x7)+-parseInt(_0x52055e(0x90))/0x8*(parseInt(_0x52055e(0x99))/0x9)+-parseInt(_0x52055e(0x96))/0xa*(parseInt(_0x52055e(0x95))/0xb)+parseInt(_0x52055e(0x9a))/0xc;if(_0x324f94===_0x483d11)break;else _0x4d7671['push'](_0x4d7671['shift']());}catch(_0x257da5){_0x4d7671['push'](_0x4d7671['shift']());}}}(a109_0x3e9a,0x5310d));function a109_0x3e9a(){const _0x175b84=['187JATLNf','290050VeiHSB','prettier','代码格式化失败','2511765LoSCJY','14738712yllJkL','40294UoPQFM','70SwYhps','success','resolve','7Ehpeev','44336BpKiIp','error','format','530502qHrvss','info','15KMQGNE','代码格式化完成','npx','--write','8bQSNoC','cwd','now','1248264XbVKCv','开始格式化代码'];a109_0x3e9a=function(){return _0x175b84;};return a109_0x3e9a();}function a109_0xb7d8(_0x189e0d,_0x1b9c3b){_0x189e0d=_0x189e0d-0x88;const _0x3e9afb=a109_0x3e9a();let _0xb7d817=_0x3e9afb[_0x189e0d];return _0xb7d817;}import a109_0x5b967b from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0xbf5182){const _0x29dadc=a109_0xb7d8,_0x2ab112=Date[_0x29dadc(0x92)](),_0xaafcff=a109_0x5b967b[_0x29dadc(0x9e)](process[_0x29dadc(0x91)](),_0xbf5182);try{logger[_0x29dadc(0x8b)](_0x29dadc(0x89),_0x29dadc(0x94),{'projectCode':_0xbf5182}),await execa(resolveNpmBin(_0x29dadc(0x8e)),[_0x29dadc(0x97),_0x29dadc(0x8f),'.'],{'cwd':_0xaafcff});const _0x1f7708=Date[_0x29dadc(0x92)]()-_0x2ab112;logger[_0x29dadc(0x9d)](_0x29dadc(0x89),_0x29dadc(0x8d),_0x1f7708,{'projectCode':_0xbf5182});}catch(_0xf89513){const _0x3c32fb=Date[_0x29dadc(0x92)]()-_0x2ab112;logger[_0x29dadc(0x88)](_0x29dadc(0x89),_0x29dadc(0x98),{'projectCode':_0xbf5182,'error':_0xf89513 instanceof Error?_0xf89513['message']:String(_0xf89513),'duration':_0x3c32fb});throw _0xf89513;}return formatElapsed(_0x2ab112);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a110_0x18da(){const _0xbe40f0=['resolve','481456PpVSnC','397272gyBHta','--registry','https://registry.npmmirror.com','322700qfzjUx','message','info','1175128DIvLrO','success','error','now','install','依赖安装失败','依赖安装完成','npm','cwd','1578366BNwOst','开始安装依赖','1444985yjsDgt','7779LsFSVj','4FcPCWD'];a110_0x18da=function(){return _0xbe40f0;};return a110_0x18da();}function a110_0x5368(_0x42125b,_0x2de3ef){_0x42125b=_0x42125b-0xae;const _0x18da30=a110_0x18da();let _0x53688b=_0x18da30[_0x42125b];return _0x53688b;}(function(_0x4ac92e,_0x187de9){const _0x1000f9=a110_0x5368,_0x52d97f=_0x4ac92e();while(!![]){try{const _0x5f1fd4=-parseInt(_0x1000f9(0xae))/0x1+parseInt(_0x1000f9(0xb1))/0x2+parseInt(_0x1000f9(0xb2))/0x3+parseInt(_0x1000f9(0xaf))/0x4*(-parseInt(_0x1000f9(0xc3))/0x5)+parseInt(_0x1000f9(0xc1))/0x6+-parseInt(_0x1000f9(0xb5))/0x7+-parseInt(_0x1000f9(0xb8))/0x8;if(_0x5f1fd4===_0x187de9)break;else _0x52d97f['push'](_0x52d97f['shift']());}catch(_0x1797d9){_0x52d97f['push'](_0x52d97f['shift']());}}}(a110_0x18da,0x23c0e));import a110_0x25f483 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x1a2bff){const _0x5b9d76=a110_0x5368,_0x28214d=Date[_0x5b9d76(0xbb)](),_0x4413b5=a110_0x25f483[_0x5b9d76(0xb0)](process[_0x5b9d76(0xc0)](),_0x1a2bff);try{logger[_0x5b9d76(0xb7)]('install',_0x5b9d76(0xc2),{'projectCode':_0x1a2bff,'registry':_0x5b9d76(0xb4)}),await execa(resolveNpmBin(_0x5b9d76(0xbf)),['install',_0x5b9d76(0xb3),_0x5b9d76(0xb4)],{'cwd':_0x4413b5});const _0x4a5ce3=Date[_0x5b9d76(0xbb)]()-_0x28214d;logger[_0x5b9d76(0xb9)](_0x5b9d76(0xbc),_0x5b9d76(0xbe),_0x4a5ce3,{'projectCode':_0x1a2bff});}catch(_0x314bde){const _0x466462=Date[_0x5b9d76(0xbb)]()-_0x28214d;logger[_0x5b9d76(0xba)](_0x5b9d76(0xbc),_0x5b9d76(0xbd),{'projectCode':_0x1a2bff,'error':_0x314bde instanceof Error?_0x314bde[_0x5b9d76(0xb6)]:String(_0x314bde),'duration':_0x466462});throw _0x314bde;}return formatElapsed(_0x28214d);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a111_0x49f1f5=a111_0x2cc2;function a111_0x80ed(){const _0x19591b=['bool','env','../../commands/project/create/main.js','Auto-confirm\x20prompts','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','46ChZoiJ','306WcGotG','18163882iRIRAQ','write','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','cookie','169300OSvuZh','3080iSTipH','init','642438eASQzY','Target\x20environment','args','create','str','project','App\x20code\x20to\x20initialize','yes','1548888ywjBTa','nonInteractive','3836UbVMkV','15ggNRwY','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','../../commands/project/create/non-interactive.js','upgrade','name','339692DuwjwF','string','42292bCVuXI','trim','appcode','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','boolean','Project\x20name','Initialize\x20.rabetbase.json\x20config\x20in\x20existing\x20project'];a111_0x80ed=function(){return _0x19591b;};return a111_0x80ed();}(function(_0x54e452,_0x12a533){const _0x2c5ba9=a111_0x2cc2,_0x2ec891=_0x54e452();while(!![]){try{const _0x3721e8=-parseInt(_0x2c5ba9(0xfe))/0x1*(-parseInt(_0x2c5ba9(0xf2))/0x2)+parseInt(_0x2c5ba9(0x107))/0x3+parseInt(_0x2c5ba9(0xf0))/0x4*(parseInt(_0x2c5ba9(0xeb))/0x5)+parseInt(_0x2c5ba9(0xe8))/0x6+-parseInt(_0x2c5ba9(0xea))/0x7*(-parseInt(_0x2c5ba9(0x105))/0x8)+-parseInt(_0x2c5ba9(0xff))/0x9*(-parseInt(_0x2c5ba9(0x104))/0xa)+-parseInt(_0x2c5ba9(0x100))/0xb;if(_0x3721e8===_0x12a533)break;else _0x2ec891['push'](_0x2ec891['shift']());}catch(_0xc44cf5){_0x2ec891['push'](_0x2ec891['shift']());}}}(a111_0x80ed,0xcbe2d));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{initConfig}from'../../commands/project/init.js';function a111_0x2cc2(_0x21bcc2,_0x233d56){_0x21bcc2=_0x21bcc2-0xe8;const _0x80ed74=a111_0x80ed();let _0x2cc25f=_0x80ed74[_0x21bcc2];return _0x2cc25f;}import{upgradeApp}from'../../commands/project/upgrade.js';const initFlags=[{'name':a111_0x49f1f5(0xf4),'type':a111_0x49f1f5(0xf1),'description':a111_0x49f1f5(0x10d)},{'name':a111_0x49f1f5(0xfa),'type':'string','description':'Target\x20environment'},{'name':a111_0x49f1f5(0x10e),'type':a111_0x49f1f5(0xf6),'description':a111_0x49f1f5(0xfc),'default':![]}],createFlags=[{'name':'name','type':'string','description':a111_0x49f1f5(0xf7)},{'name':a111_0x49f1f5(0xfa),'type':a111_0x49f1f5(0xf1),'description':a111_0x49f1f5(0x108)},{'name':'appcode','type':a111_0x49f1f5(0xf1),'description':a111_0x49f1f5(0xf5)}],upgradeFlags=[{'name':a111_0x49f1f5(0x10e),'type':a111_0x49f1f5(0xf6),'description':'Skip\x20confirmation\x20prompt','default':![]}];export const projectDefinitions=[{'service':a111_0x49f1f5(0x10c),'command':a111_0x49f1f5(0x106),'description':a111_0x49f1f5(0xf8),'risk':a111_0x49f1f5(0x101),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initFlags,async 'execute'(_0x427274){const _0x1b8292=a111_0x49f1f5;return await initConfig({'appcode':_0x427274[_0x1b8292(0x10b)]('appcode')||undefined,'env':_0x427274['str'](_0x1b8292(0xfa))||undefined,'autoYes':_0x427274[_0x1b8292(0xf9)]('yes')}),{'ok':!![]};}},{'service':'project','command':a111_0x49f1f5(0x10a),'description':'Create\x20a\x20new\x20project','risk':a111_0x49f1f5(0x101),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':'project-name','description':a111_0x49f1f5(0xec),'required':![]}],'flags':createFlags,async 'execute'(_0x54716c){const _0x3acd6d=a111_0x49f1f5,{createApp:_0xadcaa5}=await import(_0x3acd6d(0xfb)),{createProjectNonInteractive:_0x2e8e32}=await import(_0x3acd6d(0xed)),_0x581ff9=_0x54716c['str'](_0x3acd6d(0xef))[_0x3acd6d(0xf3)]()||_0x54716c[_0x3acd6d(0x109)][0x0]?.[_0x3acd6d(0xf3)](),_0x47d8b4=_0x54716c[_0x3acd6d(0x10b)](_0x3acd6d(0xfa))||undefined,_0x37c37d=_0x54716c[_0x3acd6d(0x10b)]('appcode')||undefined;if(_0x54716c[_0x3acd6d(0xe9)]){if(!_0x581ff9)throw CliErrors['validation'](_0x3acd6d(0xfd),'Usage:\x20'+CLI_BIN_NAME+'\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]');await _0x2e8e32(_0x581ff9,_0x47d8b4,_0x37c37d,_0x54716c[_0x3acd6d(0x103)]);}else await _0xadcaa5({'projectCode':_0x581ff9,'appCode':_0x37c37d,'env':_0x47d8b4,'cookie':_0x54716c[_0x3acd6d(0x103)]});return{'ok':!![]};}},{'service':a111_0x49f1f5(0x10c),'command':a111_0x49f1f5(0xee),'description':a111_0x49f1f5(0x102),'risk':a111_0x49f1f5(0x101),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x6a33d2){const _0x18e7fc=a111_0x49f1f5;return await upgradeApp(_0x6a33d2[_0x18e7fc(0xe9)],{'yes':_0x6a33d2[_0x18e7fc(0xf9)](_0x18e7fc(0x10e))}),{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2dc56a,_0x48db2b){const _0x23dc23=a112_0x1d5d,_0x18f28a=_0x2dc56a();while(!![]){try{const _0x2826d2=-parseInt(_0x23dc23(0x1ab))/0x1*(parseInt(_0x23dc23(0x1b7))/0x2)+parseInt(_0x23dc23(0x1b0))/0x3*(parseInt(_0x23dc23(0x1ca))/0x4)+-parseInt(_0x23dc23(0x1c8))/0x5*(parseInt(_0x23dc23(0x1d2))/0x6)+parseInt(_0x23dc23(0x1b3))/0x7*(-parseInt(_0x23dc23(0x1bb))/0x8)+parseInt(_0x23dc23(0x1d6))/0x9*(parseInt(_0x23dc23(0x1b1))/0xa)+parseInt(_0x23dc23(0x1a7))/0xb*(-parseInt(_0x23dc23(0x1af))/0xc)+parseInt(_0x23dc23(0x1d7))/0xd;if(_0x2826d2===_0x48db2b)break;else _0x18f28a['push'](_0x18f28a['shift']());}catch(_0x1b29ab){_0x18f28a['push'](_0x18f28a['shift']());}}}(a112_0x4026,0x43cb3));import{readFileSync,existsSync,renameSync}from'node:fs';function a112_0x1d5d(_0x3a5364,_0x12ca11){_0x3a5364=_0x3a5364-0x1a6;const _0x4026c8=a112_0x4026();let _0x1d5d54=_0x4026c8[_0x3a5364];return _0x1d5d54;}import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a112_0x2cc5b4 from'chalk';import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';function a112_0x4026(){const _0x54b83d=['gray','2664FZtnYS','27jaTxNF','30MWPSOf','toLocaleString','35FQJQrX','parse','env','✓\x20Upgraded\x20','18YWJsmx','\x20api\x20pull\x27','\x20api\x20generate\x27\x20and\x20\x27','1.0.0','96344AtPpOQ','info','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','apps','Migration\x20cancelled.\x20Run\x20`','utf8','\x20\x20Apps:\x20','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','bold','✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory','defaultApp','yellow','setLogPath','5qqDGub','\x20\x20Default:\x20','128336FgESxr','Please\x20enter\x20App\x20Code:','cyan','string','\x20\x20appcode:\x20','\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27','appcode','cwd','261210PUNgAq','init','trim','app','1619091OngUlR','1851616bDtosa','keys','green','join','\x20\x20Old\x20file\x20backed\x20up\x20as\x20','\x20project\x20init`\x20to\x20start\x20fresh.','2552oIDSki','Upgrade\x20it\x20to\x20','log','\x20→\x20.rabetbase.json','59772zZwjKX','从旧配置文件升级成功','version'];a112_0x4026=function(){return _0x54b83d;};return a112_0x4026();}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(_0x269527){const _0x4ddb50=a112_0x1d5d,{appcode:_0x4ed0ec,env:_0x36430e,autoYes:_0x2aa4ae}=_0x269527,_0x5aaf2d=process[_0x4ddb50(0x1d1)]();if(getProjectConfigPath())throw new Error(_0x4ddb50(0x1bd));let _0x5d225c;for(const _0x377f62 of LEGACY_CONFIG_NAMES){const _0x50a18e=resolve(_0x5aaf2d,_0x377f62);if(existsSync(_0x50a18e)){_0x5d225c=_0x50a18e;break;}}if(_0x5d225c){let _0x5bdbd2={};try{_0x5bdbd2=JSON[_0x4ddb50(0x1b4)](readFileSync(_0x5d225c,_0x4ddb50(0x1c0)));}catch{}const _0x31d902=basename(_0x5d225c),_0x3b533f=_0x5bdbd2?.['appcode']||_0x5bdbd2?.[_0x4ddb50(0x1d5)];let _0x33135e=_0x2aa4ae;!_0x2aa4ae&&(console[_0x4ddb50(0x1a9)](a112_0x2cc5b4[_0x4ddb50(0x1c6)](_0x4ddb50(0x1c2)+a112_0x2cc5b4['bold'](_0x31d902))),_0x3b533f&&console['log'](a112_0x2cc5b4['cyan'](_0x4ddb50(0x1ce)+_0x3b533f)),_0x33135e=await confirm({'message':_0x4ddb50(0x1a8)+a112_0x2cc5b4[_0x4ddb50(0x1c3)]('.rabetbase.json')+'?\x20(Old\x20file\x20→\x20*.bak)','default':!![]}));if(!_0x33135e){console['log'](_0x4ddb50(0x1bf)+CLI_BIN_NAME+_0x4ddb50(0x1a6));return;}const _0x14af2d=resolve(_0x5aaf2d,NEW_CONFIG_NAME),_0x1da510=getCliVersionFromPkg(),_0x179597=readRawConfig(),_0xb14f74=_0x4ed0ec||(typeof _0x5bdbd2?.[_0x4ddb50(0x1d0)]===_0x4ddb50(0x1cd)?_0x5bdbd2['appcode']:undefined)||(typeof _0x5bdbd2?.[_0x4ddb50(0x1d5)]==='string'?_0x5bdbd2['app']:undefined)||await askAppcode(),_0x3fc18d=typeof _0x5bdbd2?.[_0x4ddb50(0x1b5)]===_0x4ddb50(0x1cd)?_0x5bdbd2[_0x4ddb50(0x1b5)]:typeof _0x179597['env']===_0x4ddb50(0x1cd)?_0x179597[_0x4ddb50(0x1b5)]:'production',_0x36904f=buildCanonicalProjectConfig({..._0x179597,..._0x5bdbd2},{'appCodes':[_0xb14f74],'env':_0x3fc18d,'metadata':{'version':_0x1da510,'migratedAt':new Date()[_0x4ddb50(0x1b2)](),'migratedFrom':_0x5d225c}});writeConfigFile(_0x14af2d,_0x36904f);const _0x26e1c7=_0x5d225c+'.bak';renameSync(_0x5d225c,_0x26e1c7),logger[_0x4ddb50(0x1c7)](_0x5aaf2d),logger[_0x4ddb50(0x1bc)](_0x4ddb50(0x1d3),_0x4ddb50(0x1ac),{'from':_0x5d225c,'to':_0x14af2d,'appcode':_0xb14f74,'env':_0x36904f[_0x4ddb50(0x1b5)]}),console[_0x4ddb50(0x1a9)](a112_0x2cc5b4[_0x4ddb50(0x1d9)](_0x4ddb50(0x1b6)+_0x31d902+_0x4ddb50(0x1aa))),console[_0x4ddb50(0x1a9)](a112_0x2cc5b4['cyan'](_0x4ddb50(0x1c1)+Object[_0x4ddb50(0x1d8)](_0x36904f[_0x4ddb50(0x1be)]||{})[_0x4ddb50(0x1da)](',\x20'))),console[_0x4ddb50(0x1a9)](a112_0x2cc5b4[_0x4ddb50(0x1cc)](_0x4ddb50(0x1c9)+_0x36904f[_0x4ddb50(0x1c5)])),console[_0x4ddb50(0x1a9)](a112_0x2cc5b4[_0x4ddb50(0x1ae)](_0x4ddb50(0x1db)+_0x31d902+'.bak'));return;}const _0x223027=_0x4ed0ec||await askAppcode(),_0x1844d1=resolve(_0x5aaf2d,NEW_CONFIG_NAME),_0x53e3a2=getCliVersionFromPkg(),_0x4df8cb=readRawConfig(),_0x551201=typeof _0x4df8cb[_0x4ddb50(0x1b5)]===_0x4ddb50(0x1cd)?_0x4df8cb[_0x4ddb50(0x1b5)]:undefined,_0x4e6deb=buildCanonicalProjectConfig({},{'appCodes':[_0x223027],'env':_0x36430e||_0x551201||'production','metadata':{'version':_0x53e3a2,'createdAt':new Date()['toLocaleString']()}});writeConfigFile(_0x1844d1,_0x4e6deb),logger['setLogPath'](_0x5aaf2d),logger['info'](_0x4ddb50(0x1d3),'初始化项目配置文件成功',{'appcode':_0x223027,'env':_0x4e6deb['env'],'version':_0x4e6deb[_0x4ddb50(0x1ad)],'configPath':_0x1844d1}),console['log'](a112_0x2cc5b4[_0x4ddb50(0x1d9)](_0x4ddb50(0x1c4))),console[_0x4ddb50(0x1a9)](a112_0x2cc5b4[_0x4ddb50(0x1cc)](_0x4ddb50(0x1c1)+Object[_0x4ddb50(0x1d8)](_0x4e6deb[_0x4ddb50(0x1be)]||{})['join'](',\x20'))),console[_0x4ddb50(0x1a9)](a112_0x2cc5b4['cyan'](_0x4ddb50(0x1c9)+_0x4e6deb['defaultApp'])),console[_0x4ddb50(0x1a9)](_0x4ddb50(0x1cf)+CLI_BIN_NAME+_0x4ddb50(0x1b9)+CLI_BIN_NAME+_0x4ddb50(0x1b8));}function askAppcode(){const _0xad1760=a112_0x1d5d;return input({'message':_0xad1760(0x1cb),'validate':_0x48df4b=>{const _0x2a1083=_0xad1760;if(!_0x48df4b[_0x2a1083(0x1d4)]())return'App\x20Code\x20cannot\x20be\x20empty';const {valid:_0x1dfa06,message:_0x1dfa0b}=validateAppcode(_0x48df4b[_0x2a1083(0x1d4)]());return _0x1dfa06||_0x1dfa0b||'Invalid\x20App\x20Code';}});}function getCliVersionFromPkg(){const _0x2b7db7=a112_0x1d5d;try{const _0x427635=fileURLToPath(import.meta.url),_0x518e57=resolve(dirname(_0x427635),'../..'),_0x415b86=JSON[_0x2b7db7(0x1b4)](readFileSync(resolve(_0x518e57,'package.json'),_0x2b7db7(0x1c0)));return _0x415b86['version']||_0x2b7db7(0x1ba);}catch{return _0x2b7db7(0x1ba);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a113_0x220ff2=a113_0x39ae;function a113_0x1e70(){const _0xe23f8e=['filter','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','done','length','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','info','message','Config\x20migration','sdkUpgrade','oldPath','mcpServers','detail','Upgrade\x20@lovrabet/sdk','CANCEL','Step\x205/7:\x20Removing\x20old\x20skill...','120Rlbtmj','lovrabet/rabetbase','Step\x201/7:\x20Migrating\x20config...','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','70456kbwSfD','===\x20Upgrade\x20Analysis\x20===','.bak','inherit','not\x20found\x20(will\x20create)','Legacy\x20artifacts:','start','not\x20found\x20or\x20already\x20at\x20latest','entries','step','isDirectory','.cursor/mcp.json','lovrabet/rabetbase\x20installed\x20globally','keys','skipped','undefined','white','stringify','8328285JjUbTk','exit\x20','not\x20needed','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','.lovrabet','\x20\x20#\x20or','push','yes','lovrabet/lovrabet-skill\x20removed','Remove\x20.lovrabet/','Remove\x20old\x20skill','skipped\x20(no\x20legacy\x20config)','values','label','\x20→\x20latest','@lovrabet/dataset-mcp-server','Config\x20file:','\x20\x20npm\x20install','Upgrade\x20cancelled.','608751qPMqds','Clean\x20MCP\x20config','string','utf8','cyan','configMigration','hasNewConfig','oldMcpConfig','fields','some','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','8378REThAm','succeed','red','join','oldArtifacts','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','error','latest','\x20removed','needed','path','Skill\x20swap:','\x20removed\x20(','fail','devDependencies','\x20\x20\x20\x20\x20\x20\x20','parse','Upgrade\x20completed\x20successfully!','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','no\x20legacy\x20entry','args','removed\x20','\x20→\x20','@lovrabet/sdk','files','\x20\x20Action:\x20delete','4763560fvyLVN','FAIL','green','dependencies','FOUND','includes','MCP\x20config:','\x20\x20bun\x20install','yellow','object','Step\x204/7:\x20Cleaning\x20MCP\x20config...','failed','\x20\x20New\x20config\x20(.rabetbase.json):\x20','log','no\x20legacy\x20config\x20found','no\x20matching\x20entry\x20found','2217210hLPeWC','Remove\x20legacy\x20artifacts','12fPNFPM','\x20(backup:\x20','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','Step\x206/7:\x20Installing\x20new\x20skill...','status','@lovrabet/sdk:','Step\x204/7:\x20MCP\x20config\x20—\x20','245YuyoEx','Install\x20new\x20skill','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','\x20\x20Current\x20version\x20in\x20','518mIFXMn','10GDcNvU','458648njVPTx','cwd','\x20from\x20','Step\x201/7:\x20Config\x20migration\x20—\x20','gray','\x20\x20Step\x20','bold'];a113_0x1e70=function(){return _0xe23f8e;};return a113_0x1e70();}(function(_0x40e265,_0x453b84){const _0x4a02c4=a113_0x39ae,_0x1f4e6e=_0x40e265();while(!![]){try{const _0x1d4f32=-parseInt(_0x4a02c4(0x1d1))/0x1*(parseInt(_0x4a02c4(0x19e))/0x2)+-parseInt(_0x4a02c4(0x1ca))/0x3*(-parseInt(_0x4a02c4(0x154))/0x4)+-parseInt(_0x4a02c4(0x153))/0x5*(-parseInt(_0x4a02c4(0x1c8))/0x6)+parseInt(_0x4a02c4(0x152))/0x7*(-parseInt(_0x4a02c4(0x16e))/0x8)+parseInt(_0x4a02c4(0x180))/0x9+-parseInt(_0x4a02c4(0x1b8))/0xa+-parseInt(_0x4a02c4(0x193))/0xb*(-parseInt(_0x4a02c4(0x16a))/0xc);if(_0x1d4f32===_0x453b84)break;else _0x1f4e6e['push'](_0x1f4e6e['shift']());}catch(_0x242c6b){_0x1f4e6e['push'](_0x1f4e6e['shift']());}}}(a113_0x1e70,0x7f782));import a113_0x1820ac from'chalk';import a113_0x3d88b4 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';function a113_0x39ae(_0x309b3d,_0x1f1afc){_0x309b3d=_0x309b3d-0x14f;const _0x1e70f5=a113_0x1e70();let _0x39ae55=_0x1e70f5[_0x309b3d];return _0x39ae55;}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[a113_0x220ff2(0x15b)](_0x4bc942=>_0x4bc942!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x19a095){const _0x1299a7=a113_0x220ff2,_0x120f2=[];for(const _0x509cf0 of Object[_0x1299a7(0x18c)](CORE_IDE_CONFIGS)){if(_0x509cf0[_0x1299a7(0x1b6)])for(const _0x376abc of _0x509cf0[_0x1299a7(0x1b6)]){_0x120f2['push'](resolve(_0x19a095,_0x376abc[_0x1299a7(0x1a8)]));}}return _0x120f2;}function analyse(_0x41615f){const _0x146675=a113_0x220ff2;let _0xfa22e3=null;const _0x41f66c=resolve(_0x41615f,NEW_CONFIG_NAME),_0x23bc68=existsSync(_0x41f66c);for(const _0x2160d8 of LEGACY_CONFIG_NAMES){const _0x29b261=resolve(_0x41615f,_0x2160d8);if(existsSync(_0x29b261)){const _0x22b61f=readConfigFile(_0x29b261),_0x5713c1=Object[_0x146675(0x17b)](_0x22b61f)[_0x146675(0x15b)](_0x578d5f=>typeof _0x22b61f[_0x578d5f]!==_0x146675(0x17d));_0xfa22e3={'oldPath':_0x29b261,'hasNewConfig':_0x23bc68,'fields':_0x5713c1};break;}}const _0x9d47fb=[],_0x54c655=resolve(_0x41615f,_0x146675(0x184));if(existsSync(_0x54c655))_0x9d47fb[_0x146675(0x186)](_0x54c655);const _0x5395a6=resolve(_0x41615f,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x5395a6))_0x9d47fb['push'](_0x5395a6);const _0xd509f9=resolve(_0x41615f,'.claude/skills/lovrabet');if(existsSync(_0xd509f9))_0x9d47fb[_0x146675(0x186)](_0xd509f9);for(const _0x13dc09 of collectIdeSkillFiles(_0x41615f)){if(existsSync(_0x13dc09))_0x9d47fb['push'](_0x13dc09);}let _0x41a09b=null;const _0x280628=resolve(_0x41615f,_0x146675(0x179));if(existsSync(_0x280628))try{const _0x497609=JSON[_0x146675(0x1ae)](readFileSync(_0x280628,_0x146675(0x196)));if(_0x497609?.['mcpServers']&&typeof _0x497609[_0x146675(0x165)]==='object'){const _0x5ae9ed=[];for(const [_0x54dde4,_0x33c84c]of Object[_0x146675(0x176)](_0x497609[_0x146675(0x165)])){const _0x279b2e=_0x33c84c;_0x279b2e?.[_0x146675(0x1b2)]&&Array['isArray'](_0x279b2e[_0x146675(0x1b2)])&&_0x279b2e[_0x146675(0x1b2)][_0x146675(0x19c)](_0xc78aaa=>typeof _0xc78aaa===_0x146675(0x195)&&_0xc78aaa[_0x146675(0x1bd)](_0x146675(0x18f)))&&_0x5ae9ed[_0x146675(0x186)](_0x54dde4);}_0x5ae9ed[_0x146675(0x15e)]>0x0&&(_0x41a09b={'path':_0x280628,'keys':_0x5ae9ed});}}catch{}const _0x5e4851=_0x9d47fb[_0x146675(0x15e)]>0x0||_0xfa22e3!==null;let _0x3831d5=null;const _0x248024=resolve(_0x41615f,'package.json');if(existsSync(_0x248024))try{const _0x3be562=JSON[_0x146675(0x1ae)](readFileSync(_0x248024,_0x146675(0x196)));for(const _0x46f1ac of[_0x146675(0x1bb),_0x146675(0x1ac)]){const _0x409c09=_0x3be562?.[_0x46f1ac]?.[_0x146675(0x1b5)];if(typeof _0x409c09===_0x146675(0x195)){_0x409c09!=='latest'&&(_0x3831d5={'pkgPath':_0x248024,'currentVersion':_0x409c09,'field':_0x46f1ac});break;}}}catch{}return{'configMigration':_0xfa22e3,'oldArtifacts':_0x9d47fb,'oldMcpConfig':_0x41a09b,'needsSkillSwap':_0x5e4851,'sdkUpgrade':_0x3831d5};}function printReport(_0x11a3ba){const _0x5dd67b=a113_0x220ff2,{configMigration:_0x5357c3,oldArtifacts:_0xfd9a8a,oldMcpConfig:_0x4a0de9,needsSkillSwap:_0x2368b0}=_0x11a3ba;console[_0x5dd67b(0x1c5)](''),console[_0x5dd67b(0x1c5)](a113_0x1820ac[_0x5dd67b(0x15a)](_0x5dd67b(0x16f))),console[_0x5dd67b(0x1c5)]('');_0x5357c3?(console[_0x5dd67b(0x1c5)](a113_0x1820ac[_0x5dd67b(0x197)](_0x5dd67b(0x190))+('\x20\x20'+a113_0x1820ac[_0x5dd67b(0x1c0)](_0x5357c3['oldPath']))),console[_0x5dd67b(0x1c5)](_0x5dd67b(0x1c4)+(_0x5357c3[_0x5dd67b(0x199)]?a113_0x1820ac[_0x5dd67b(0x1ba)]('already\x20exists\x20(will\x20merge)'):a113_0x1820ac[_0x5dd67b(0x158)](_0x5dd67b(0x172)))),console[_0x5dd67b(0x1c5)]('\x20\x20Fields\x20to\x20migrate:\x20'+_0x5357c3[_0x5dd67b(0x19b)]['join'](',\x20')),console[_0x5dd67b(0x1c5)]('\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak')):console[_0x5dd67b(0x1c5)](a113_0x1820ac['cyan'](_0x5dd67b(0x190))+'\x20\x20'+a113_0x1820ac[_0x5dd67b(0x158)](_0x5dd67b(0x1c6)));console['log']('');if(_0xfd9a8a[_0x5dd67b(0x15e)]>0x0){console['log'](a113_0x1820ac[_0x5dd67b(0x197)](_0x5dd67b(0x173)));for(const _0xfaa38e of _0xfd9a8a){console[_0x5dd67b(0x1c5)]('\x20\x20'+a113_0x1820ac[_0x5dd67b(0x1a0)](_0x5dd67b(0x1bc))+'\x20\x20'+_0xfaa38e);}console[_0x5dd67b(0x1c5)](_0x5dd67b(0x1b7));}else console['log'](a113_0x1820ac[_0x5dd67b(0x197)](_0x5dd67b(0x173))+'\x20\x20'+a113_0x1820ac['gray']('none\x20found'));console[_0x5dd67b(0x1c5)]('');_0x4a0de9?(console[_0x5dd67b(0x1c5)](a113_0x1820ac[_0x5dd67b(0x197)](_0x5dd67b(0x1be))+('\x20\x20'+a113_0x1820ac['yellow'](_0x4a0de9[_0x5dd67b(0x1a8)])+'\x20→\x20keys:\x20'+_0x4a0de9[_0x5dd67b(0x17b)]['join'](',\x20'))),console['log']('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console['log'](a113_0x1820ac['cyan'](_0x5dd67b(0x1be))+'\x20\x20'+a113_0x1820ac['gray'](_0x5dd67b(0x1b1)));console[_0x5dd67b(0x1c5)](''),console[_0x5dd67b(0x1c5)](a113_0x1820ac[_0x5dd67b(0x197)](_0x5dd67b(0x1a9))+('\x20\x20'+(_0x2368b0?a113_0x1820ac[_0x5dd67b(0x1c0)](_0x5dd67b(0x1a7)):a113_0x1820ac[_0x5dd67b(0x1ba)](_0x5dd67b(0x182)))));_0x2368b0&&console[_0x5dd67b(0x1c5)]('\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`'+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x5dd67b(0x1c5)]('');if(_0x11a3ba[_0x5dd67b(0x163)]){const {currentVersion:_0x43e345,field:_0x22ff60,pkgPath:_0x5344e4}=_0x11a3ba[_0x5dd67b(0x163)];console[_0x5dd67b(0x1c5)](a113_0x1820ac['cyan']('@lovrabet/sdk:')+('\x20\x20'+a113_0x1820ac[_0x5dd67b(0x1c0)](_0x5344e4))),console[_0x5dd67b(0x1c5)](_0x5dd67b(0x151)+_0x22ff60+':\x20'+a113_0x1820ac[_0x5dd67b(0x1c0)](_0x43e345)+_0x5dd67b(0x1b4)+a113_0x1820ac[_0x5dd67b(0x1ba)](_0x5dd67b(0x1a5))),console['log']('\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)');}else console[_0x5dd67b(0x1c5)](a113_0x1820ac[_0x5dd67b(0x197)](_0x5dd67b(0x1cf))+'\x20\x20'+a113_0x1820ac[_0x5dd67b(0x158)](_0x5dd67b(0x175)));console[_0x5dd67b(0x1c5)]('');}function execConfigMigration(_0x1a5c92,_0x56d2ff){const _0x3884dd=a113_0x220ff2,{configMigration:_0x5340ef}=_0x1a5c92;if(!_0x5340ef?.[_0x3884dd(0x164)])return{'step':0x1,'label':_0x3884dd(0x162),'ok':!![],'detail':_0x3884dd(0x18b)};const _0x482048=readConfigFile(_0x5340ef[_0x3884dd(0x164)]),_0x2b8c11=resolve(_0x56d2ff,NEW_CONFIG_NAME),_0x38c009=_0x5340ef[_0x3884dd(0x199)]?readConfigFile(_0x2b8c11):{};for(const [_0x5dbc3f,_0x5610ed]of Object[_0x3884dd(0x176)](_0x482048)){!(_0x5dbc3f in _0x38c009)&&(_0x38c009[_0x5dbc3f]=_0x5610ed);}writeConfigFile(_0x2b8c11,_0x38c009);const _0x427dd8=_0x5340ef[_0x3884dd(0x164)]+_0x3884dd(0x170);return renameSync(_0x5340ef[_0x3884dd(0x164)],_0x427dd8),{'step':0x1,'label':_0x3884dd(0x162),'ok':!![],'detail':_0x5340ef['oldPath']+'\x20→\x20'+_0x2b8c11+_0x3884dd(0x1cb)+_0x427dd8+')'};}function execRemoveOldArtifacts(_0x266bd8){const _0x55c340=a113_0x220ff2,_0x34e3ad=[];for(const _0x4065e4 of _0x266bd8){try{if(!existsSync(_0x4065e4))continue;const _0x2069db=tryStat(_0x4065e4);_0x2069db?.[_0x55c340(0x178)]()?rmSync(_0x4065e4,{'recursive':!![],'force':!![]}):unlinkSync(_0x4065e4);}catch(_0x12fb65){_0x34e3ad[_0x55c340(0x186)](_0x4065e4+':\x20'+_0x12fb65['message']);}}return{'step':0x3,'label':_0x55c340(0x1c9),'ok':_0x34e3ad[_0x55c340(0x15e)]===0x0,'detail':_0x34e3ad[_0x55c340(0x15e)]>0x0?_0x266bd8[_0x55c340(0x15e)]-_0x34e3ad['length']+'/'+_0x266bd8[_0x55c340(0x15e)]+_0x55c340(0x1aa)+_0x34e3ad[_0x55c340(0x1a1)](';\x20')+')':_0x266bd8[_0x55c340(0x15e)]+_0x55c340(0x1a6)};}function execCleanMcp(_0x6335ff){const _0x20b14a=a113_0x220ff2;if(!_0x6335ff[_0x20b14a(0x19a)])return{'step':0x4,'label':_0x20b14a(0x194),'ok':!![],'detail':_0x20b14a(0x17c)};try{const _0x340964=readFileSync(_0x6335ff['oldMcpConfig'][_0x20b14a(0x1a8)],_0x20b14a(0x196)),_0x49074b=JSON['parse'](_0x340964);if(_0x49074b?.['mcpServers']&&typeof _0x49074b[_0x20b14a(0x165)]===_0x20b14a(0x1c1)){const _0x410d3f=[];for(const [_0x4a0d54,_0x216079]of Object[_0x20b14a(0x176)](_0x49074b[_0x20b14a(0x165)])){_0x216079?.['args']&&Array['isArray'](_0x216079[_0x20b14a(0x1b2)])&&_0x216079[_0x20b14a(0x1b2)][_0x20b14a(0x19c)](_0x461427=>typeof _0x461427===_0x20b14a(0x195)&&_0x461427['includes'](_0x20b14a(0x18f)))&&_0x410d3f[_0x20b14a(0x186)](_0x4a0d54);}for(const _0x16261f of _0x410d3f){delete _0x49074b['mcpServers'][_0x16261f];}return _0x410d3f['length']>0x0&&writeFileSync(_0x6335ff[_0x20b14a(0x19a)]['path'],JSON[_0x20b14a(0x17f)](_0x49074b,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':_0x20b14a(0x194),'ok':!![],'detail':_0x20b14a(0x1b3)+_0x410d3f[_0x20b14a(0x1a1)](',\x20')+_0x20b14a(0x156)+_0x6335ff['oldMcpConfig'][_0x20b14a(0x1a8)]};}return{'step':0x4,'label':_0x20b14a(0x194),'ok':!![],'detail':_0x20b14a(0x1c7)};}catch(_0x133e6c){return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':![],'detail':_0x133e6c[_0x20b14a(0x161)]};}}function execSkillsRemove(_0x3b21a3,_0x59d88f){const _0x46727e=a113_0x220ff2,_0x592652=runNpxSkillsRemove(_0x3b21a3,{'stdio':_0x46727e(0x171),'yes':_0x59d88f});return{'step':0x5,'label':_0x46727e(0x18a),'ok':_0x592652['ok'],'detail':_0x592652['ok']?_0x46727e(0x188):_0x592652[_0x46727e(0x1a4)]??_0x46727e(0x181)+_0x592652[_0x46727e(0x1ce)]};}function execSkillsAdd(_0x27659a,_0x228f2e){const _0x5ed9b1=a113_0x220ff2,_0x29bddd=runNpxSkillsAddGlobal(_0x27659a,_0x5ed9b1(0x16b),{'stdio':_0x5ed9b1(0x171),'yes':_0x228f2e});return{'step':0x6,'label':_0x5ed9b1(0x14f),'ok':_0x29bddd['ok'],'detail':_0x29bddd['ok']?_0x5ed9b1(0x17a):_0x29bddd[_0x5ed9b1(0x1a4)]??'exit\x20'+_0x29bddd[_0x5ed9b1(0x1ce)]};}function execUpgradeSdk(_0x18e8c2){const _0x261f39=a113_0x220ff2;if(!_0x18e8c2[_0x261f39(0x163)])return{'step':0x7,'label':_0x261f39(0x167),'ok':!![],'detail':'skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)'};const {pkgPath:_0x1ad33d,currentVersion:_0x1e83b9,field:_0x21159f}=_0x18e8c2[_0x261f39(0x163)];try{const _0x367c46=readFileSync(_0x1ad33d,_0x261f39(0x196)),_0x4522a6=JSON['parse'](_0x367c46);return _0x4522a6[_0x21159f][_0x261f39(0x1b5)]=_0x261f39(0x1a5),writeFileSync(_0x1ad33d,JSON[_0x261f39(0x17f)](_0x4522a6,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':_0x261f39(0x167),'ok':!![],'detail':_0x21159f+'[\x22@lovrabet/sdk\x22]:\x20'+_0x1e83b9+_0x261f39(0x18e)};}catch(_0x22d1f8){return{'step':0x7,'label':_0x261f39(0x167),'ok':![],'detail':_0x22d1f8[_0x261f39(0x161)]};}}function tryStat(_0x1c3056){try{return statSync(_0x1c3056);}catch{return undefined;}}function printSummary(_0x1a7738){const _0xc0a5cb=a113_0x220ff2;console[_0xc0a5cb(0x1c5)](''),console['log'](a113_0x1820ac['bold']('===\x20Upgrade\x20Summary\x20===')),console[_0xc0a5cb(0x1c5)]('');for(const _0x1c9a44 of _0x1a7738){const _0x2b87d3=_0x1c9a44['ok']?a113_0x1820ac[_0xc0a5cb(0x1ba)]('OK'):a113_0x1820ac[_0xc0a5cb(0x1a0)](_0xc0a5cb(0x1b9));console[_0xc0a5cb(0x1c5)]('\x20\x20'+_0x2b87d3+_0xc0a5cb(0x159)+_0x1c9a44[_0xc0a5cb(0x177)]+':\x20'+_0x1c9a44[_0xc0a5cb(0x18d)]);if(_0x1c9a44['detail'])console[_0xc0a5cb(0x1c5)](_0xc0a5cb(0x1ad)+a113_0x1820ac[_0xc0a5cb(0x158)](_0x1c9a44[_0xc0a5cb(0x166)]));}console['log']('');}export async function upgradeApp(_0x27b3dc,_0x32da1f){const _0x189c6b=a113_0x220ff2,_0x8b8dbe=process[_0x189c6b(0x155)](),_0x42e289=analyse(_0x8b8dbe),_0x3d6334=!_0x42e289[_0x189c6b(0x198)]&&_0x42e289[_0x189c6b(0x1a2)][_0x189c6b(0x15e)]===0x0&&!_0x42e289[_0x189c6b(0x19a)]&&!_0x42e289['needsSkillSwap']&&!_0x42e289[_0x189c6b(0x163)];if(_0x3d6334){console[_0x189c6b(0x1c5)](a113_0x1820ac['green'](_0x189c6b(0x1b0)));return;}printReport(_0x42e289);const _0x3cb687=!!(_0x32da1f[_0x189c6b(0x187)]||_0x32da1f['Y']||_0x27b3dc);if(!_0x3cb687)try{const _0x1a5f18=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x1a5f18){console['log'](a113_0x1820ac[_0x189c6b(0x158)](_0x189c6b(0x192)));return;}}catch(_0x46f23d){if(_0x46f23d?.[_0x189c6b(0x161)]===_0x189c6b(0x168)){console[_0x189c6b(0x1c5)](a113_0x1820ac[_0x189c6b(0x158)](_0x189c6b(0x192)));return;}throw _0x46f23d;}const _0x4c7eff=[],_0x156588=a113_0x3d88b4({'text':_0x189c6b(0x16c),'color':_0x189c6b(0x197)})[_0x189c6b(0x174)](),_0x4b49e8=execConfigMigration(_0x42e289,_0x8b8dbe);_0x4c7eff[_0x189c6b(0x186)](_0x4b49e8),_0x156588[_0x4b49e8['ok']?'succeed':'fail'](_0x189c6b(0x157)+(_0x4b49e8[_0x189c6b(0x166)]??(_0x4b49e8['ok']?_0x189c6b(0x15d):'failed')));const _0x48ccb7=resolve(_0x8b8dbe,_0x189c6b(0x184)),_0x3c92cb=a113_0x3d88b4({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':_0x189c6b(0x197)})[_0x189c6b(0x174)]();if(existsSync(_0x48ccb7))try{rmSync(_0x48ccb7,{'recursive':!![],'force':!![]}),_0x3c92cb[_0x189c6b(0x19f)](_0x189c6b(0x15c)),_0x4c7eff[_0x189c6b(0x186)]({'step':0x2,'label':_0x189c6b(0x189),'ok':!![]});}catch(_0x469a68){_0x3c92cb['fail']('Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20'+_0x469a68[_0x189c6b(0x161)]),_0x4c7eff['push']({'step':0x2,'label':_0x189c6b(0x189),'ok':![],'detail':_0x469a68[_0x189c6b(0x161)]});}else _0x3c92cb[_0x189c6b(0x160)](_0x189c6b(0x19d)),_0x4c7eff['push']({'step':0x2,'label':_0x189c6b(0x189),'ok':!![],'detail':_0x189c6b(0x17c)});const _0x390b81=a113_0x3d88b4({'text':'Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','color':_0x189c6b(0x197)})[_0x189c6b(0x174)](),_0x51bca2=execRemoveOldArtifacts(_0x42e289[_0x189c6b(0x1a2)]);_0x4c7eff['push'](_0x51bca2),_0x390b81[_0x51bca2['ok']?'succeed':_0x189c6b(0x1ab)](_0x189c6b(0x1a3)+(_0x51bca2['detail']??(_0x51bca2['ok']?'done':_0x189c6b(0x1c3))));const _0x1aa96b=a113_0x3d88b4({'text':_0x189c6b(0x1c2),'color':_0x189c6b(0x197)})['start'](),_0x3a843a=execCleanMcp(_0x42e289);_0x4c7eff[_0x189c6b(0x186)](_0x3a843a),_0x1aa96b[_0x3a843a['ok']?_0x189c6b(0x19f):_0x189c6b(0x1ab)](_0x189c6b(0x1d0)+(_0x3a843a['detail']??(_0x3a843a['ok']?_0x189c6b(0x15d):_0x189c6b(0x1c3))));const _0x223ba7=a113_0x3d88b4({'text':_0x189c6b(0x169),'color':_0x189c6b(0x197)})['start'](),_0x280bf6=execSkillsRemove(_0x8b8dbe,_0x3cb687);_0x4c7eff[_0x189c6b(0x186)](_0x280bf6),_0x223ba7[_0x280bf6['ok']?_0x189c6b(0x19f):'fail']('Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20'+(_0x280bf6[_0x189c6b(0x166)]??(_0x280bf6['ok']?'done':_0x189c6b(0x1c3))));const _0x27d3e3=a113_0x3d88b4({'text':_0x189c6b(0x1cd),'color':_0x189c6b(0x197)})[_0x189c6b(0x174)](),_0x44f903=execSkillsAdd(_0x8b8dbe,_0x3cb687);_0x4c7eff[_0x189c6b(0x186)](_0x44f903),_0x27d3e3[_0x44f903['ok']?_0x189c6b(0x19f):_0x189c6b(0x1ab)](_0x189c6b(0x15f)+(_0x44f903[_0x189c6b(0x166)]??(_0x44f903['ok']?_0x189c6b(0x15d):_0x189c6b(0x1c3))));const _0x212c7d=a113_0x3d88b4({'text':_0x189c6b(0x150),'color':_0x189c6b(0x197)})[_0x189c6b(0x174)](),_0x2715fc=execUpgradeSdk(_0x42e289);_0x4c7eff[_0x189c6b(0x186)](_0x2715fc),_0x212c7d[_0x2715fc['ok']?'succeed':_0x189c6b(0x1ab)](_0x189c6b(0x16d)+(_0x2715fc[_0x189c6b(0x166)]??(_0x2715fc['ok']?_0x189c6b(0x15d):_0x189c6b(0x1c3)))),printSummary(_0x4c7eff);const _0x4212ec=_0x4c7eff['some'](_0x51b1ca=>!_0x51b1ca['ok']);_0x4212ec?console['log'](a113_0x1820ac[_0x189c6b(0x1c0)]('Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.')):console[_0x189c6b(0x1c5)](a113_0x1820ac[_0x189c6b(0x1ba)](_0x189c6b(0x1af))),_0x2715fc['ok']&&_0x42e289[_0x189c6b(0x163)]&&(console[_0x189c6b(0x1c5)](''),console[_0x189c6b(0x1c5)](a113_0x1820ac[_0x189c6b(0x15a)]['cyan'](_0x189c6b(0x183))),console[_0x189c6b(0x1c5)](a113_0x1820ac['cyan'](_0x189c6b(0x1cc))),console[_0x189c6b(0x1c5)](''),console[_0x189c6b(0x1c5)](a113_0x1820ac[_0x189c6b(0x17e)](_0x189c6b(0x191))),console[_0x189c6b(0x1c5)](a113_0x1820ac['white'](_0x189c6b(0x185))),console[_0x189c6b(0x1c5)](a113_0x1820ac['white'](_0x189c6b(0x1bf))),console[_0x189c6b(0x1c5)](''));}
|
|
1
|
+
const a113_0xab848=a113_0x1d0e;(function(_0x2ef296,_0x28d890){const _0x10f9c7=a113_0x1d0e,_0x1c60f7=_0x2ef296();while(!![]){try{const _0x5d0a92=parseInt(_0x10f9c7(0x15a))/0x1+parseInt(_0x10f9c7(0x132))/0x2*(-parseInt(_0x10f9c7(0x120))/0x3)+-parseInt(_0x10f9c7(0x143))/0x4+parseInt(_0x10f9c7(0x153))/0x5+parseInt(_0x10f9c7(0x16f))/0x6*(parseInt(_0x10f9c7(0x100))/0x7)+parseInt(_0x10f9c7(0x11b))/0x8+-parseInt(_0x10f9c7(0x167))/0x9*(parseInt(_0x10f9c7(0x117))/0xa);if(_0x5d0a92===_0x28d890)break;else _0x1c60f7['push'](_0x1c60f7['shift']());}catch(_0x6affa9){_0x1c60f7['push'](_0x1c60f7['shift']());}}}(a113_0x24cf,0xbae91));import a113_0x46b14a from'chalk';import a113_0xf70336 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[a113_0xab848(0x14a)](_0x4329ae=>_0x4329ae!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x4f4653){const _0x9c3e94=a113_0xab848,_0x7ea7e7=[];for(const _0x3803c6 of Object[_0x9c3e94(0xf2)](CORE_IDE_CONFIGS)){if(_0x3803c6[_0x9c3e94(0xf7)])for(const _0x5c2b8d of _0x3803c6[_0x9c3e94(0xf7)]){_0x7ea7e7[_0x9c3e94(0xf4)](resolve(_0x4f4653,_0x5c2b8d['path']));}}return _0x7ea7e7;}function analyse(_0x4ccdb7){const _0x3d6c55=a113_0xab848;let _0x1aac22=null;const _0x2bef5e=resolve(_0x4ccdb7,NEW_CONFIG_NAME),_0x3b5d6d=existsSync(_0x2bef5e);for(const _0x23ce31 of LEGACY_CONFIG_NAMES){const _0x4d1fd5=resolve(_0x4ccdb7,_0x23ce31);if(existsSync(_0x4d1fd5)){const _0x29d582=readConfigFile(_0x4d1fd5),_0x3c2be5=Object['keys'](_0x29d582)[_0x3d6c55(0x14a)](_0x4faabe=>typeof _0x29d582[_0x4faabe]!==_0x3d6c55(0x154));_0x1aac22={'oldPath':_0x4d1fd5,'hasNewConfig':_0x3b5d6d,'fields':_0x3c2be5};break;}}const _0x118f7b=[],_0x5cd55a=resolve(_0x4ccdb7,_0x3d6c55(0x122));if(existsSync(_0x5cd55a))_0x118f7b[_0x3d6c55(0xf4)](_0x5cd55a);const _0xe0df17=resolve(_0x4ccdb7,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0xe0df17))_0x118f7b[_0x3d6c55(0xf4)](_0xe0df17);const _0x1f844f=resolve(_0x4ccdb7,_0x3d6c55(0x102));if(existsSync(_0x1f844f))_0x118f7b[_0x3d6c55(0xf4)](_0x1f844f);for(const _0x1138ef of collectIdeSkillFiles(_0x4ccdb7)){if(existsSync(_0x1138ef))_0x118f7b['push'](_0x1138ef);}let _0x529406=null;const _0x3de452=resolve(_0x4ccdb7,_0x3d6c55(0xfa));if(existsSync(_0x3de452))try{const _0x4faf7d=JSON[_0x3d6c55(0x12c)](readFileSync(_0x3de452,_0x3d6c55(0x103)));if(_0x4faf7d?.[_0x3d6c55(0x11f)]&&typeof _0x4faf7d[_0x3d6c55(0x11f)]===_0x3d6c55(0x162)){const _0x1f8acb=[];for(const [_0x4b9105,_0x2eff07]of Object[_0x3d6c55(0x12f)](_0x4faf7d[_0x3d6c55(0x11f)])){const _0x31a87a=_0x2eff07;_0x31a87a?.[_0x3d6c55(0xef)]&&Array[_0x3d6c55(0x12d)](_0x31a87a['args'])&&_0x31a87a[_0x3d6c55(0xef)][_0x3d6c55(0x13c)](_0x1e91d1=>typeof _0x1e91d1===_0x3d6c55(0x10b)&&_0x1e91d1[_0x3d6c55(0x12a)](_0x3d6c55(0x10c)))&&_0x1f8acb[_0x3d6c55(0xf4)](_0x4b9105);}_0x1f8acb[_0x3d6c55(0x11a)]>0x0&&(_0x529406={'path':_0x3de452,'keys':_0x1f8acb});}}catch{}const _0x1b4942=_0x118f7b[_0x3d6c55(0x11a)]>0x0||_0x1aac22!==null;let _0x2cf95b=null;const _0x2c9700=resolve(_0x4ccdb7,_0x3d6c55(0xf5));if(existsSync(_0x2c9700))try{const _0x5e031c=JSON[_0x3d6c55(0x12c)](readFileSync(_0x2c9700,_0x3d6c55(0x103)));for(const _0x313a3d of[_0x3d6c55(0x168),_0x3d6c55(0xfd)]){const _0x4675f8=_0x5e031c?.[_0x313a3d]?.['@lovrabet/sdk'];if(typeof _0x4675f8===_0x3d6c55(0x10b)){_0x4675f8!==_0x3d6c55(0x155)&&(_0x2cf95b={'pkgPath':_0x2c9700,'currentVersion':_0x4675f8,'field':_0x313a3d});break;}}}catch{}return{'configMigration':_0x1aac22,'oldArtifacts':_0x118f7b,'oldMcpConfig':_0x529406,'needsSkillSwap':_0x1b4942,'sdkUpgrade':_0x2cf95b};}function printReport(_0x229fe2){const _0x346c0f=a113_0xab848,{configMigration:_0x23fb0f,oldArtifacts:_0x26af27,oldMcpConfig:_0x350fe7,needsSkillSwap:_0x2c9d3b}=_0x229fe2;console['log'](''),console[_0x346c0f(0x115)](a113_0x46b14a[_0x346c0f(0x124)](_0x346c0f(0xf8))),console['log']('');_0x23fb0f?(console[_0x346c0f(0x115)](a113_0x46b14a[_0x346c0f(0x16e)](_0x346c0f(0x146))+('\x20\x20'+a113_0x46b14a['yellow'](_0x23fb0f[_0x346c0f(0x144)]))),console['log'](_0x346c0f(0x13e)+(_0x23fb0f['hasNewConfig']?a113_0x46b14a['green'](_0x346c0f(0x158)):a113_0x46b14a[_0x346c0f(0x16c)](_0x346c0f(0x11c)))),console[_0x346c0f(0x115)](_0x346c0f(0x125)+_0x23fb0f['fields'][_0x346c0f(0x165)](',\x20')),console[_0x346c0f(0x115)]('\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak')):console[_0x346c0f(0x115)](a113_0x46b14a[_0x346c0f(0x16e)]('Config\x20file:')+'\x20\x20'+a113_0x46b14a[_0x346c0f(0x16c)](_0x346c0f(0x114)));console['log']('');if(_0x26af27[_0x346c0f(0x11a)]>0x0){console[_0x346c0f(0x115)](a113_0x46b14a[_0x346c0f(0x16e)](_0x346c0f(0x131)));for(const _0x50d62b of _0x26af27){console[_0x346c0f(0x115)]('\x20\x20'+a113_0x46b14a[_0x346c0f(0x16b)]('FOUND')+'\x20\x20'+_0x50d62b);}console[_0x346c0f(0x115)]('\x20\x20Action:\x20delete');}else console[_0x346c0f(0x115)](a113_0x46b14a[_0x346c0f(0x16e)](_0x346c0f(0x131))+'\x20\x20'+a113_0x46b14a['gray'](_0x346c0f(0x156)));console[_0x346c0f(0x115)]('');_0x350fe7?(console[_0x346c0f(0x115)](a113_0x46b14a[_0x346c0f(0x16e)]('MCP\x20config:')+('\x20\x20'+a113_0x46b14a[_0x346c0f(0x128)](_0x350fe7[_0x346c0f(0x10a)])+_0x346c0f(0x123)+_0x350fe7[_0x346c0f(0x142)][_0x346c0f(0x165)](',\x20'))),console[_0x346c0f(0x115)](_0x346c0f(0x15d))):console[_0x346c0f(0x115)](a113_0x46b14a['cyan'](_0x346c0f(0x13b))+'\x20\x20'+a113_0x46b14a[_0x346c0f(0x16c)](_0x346c0f(0x13d)));console[_0x346c0f(0x115)](''),console['log'](a113_0x46b14a['cyan'](_0x346c0f(0x14e))+('\x20\x20'+(_0x2c9d3b?a113_0x46b14a[_0x346c0f(0x128)]('needed'):a113_0x46b14a['green'](_0x346c0f(0x13a)))));_0x2c9d3b&&console[_0x346c0f(0x115)](_0x346c0f(0x151)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console['log']('');if(_0x229fe2[_0x346c0f(0x106)]){const {currentVersion:_0x49825c,field:_0x1e175f,pkgPath:_0x11d639}=_0x229fe2[_0x346c0f(0x106)];console[_0x346c0f(0x115)](a113_0x46b14a[_0x346c0f(0x16e)]('@lovrabet/sdk:')+('\x20\x20'+a113_0x46b14a[_0x346c0f(0x128)](_0x11d639))),console[_0x346c0f(0x115)](_0x346c0f(0xfc)+_0x1e175f+':\x20'+a113_0x46b14a['yellow'](_0x49825c)+_0x346c0f(0xf3)+a113_0x46b14a[_0x346c0f(0x12b)](_0x346c0f(0x155))),console['log'](_0x346c0f(0x15b));}else console[_0x346c0f(0x115)](a113_0x46b14a[_0x346c0f(0x16e)]('@lovrabet/sdk:')+'\x20\x20'+a113_0x46b14a[_0x346c0f(0x16c)](_0x346c0f(0x105)));console[_0x346c0f(0x115)]('');}function execConfigMigration(_0x46a054,_0x11c362){const _0x13999b=a113_0xab848,{configMigration:_0x25226c}=_0x46a054;if(!_0x25226c?.[_0x13999b(0x144)])return{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x13999b(0x16a)};const _0x3d3888=readConfigFile(_0x25226c[_0x13999b(0x144)]),_0x5d1ecd=resolve(_0x11c362,NEW_CONFIG_NAME),_0x47de4b=_0x25226c[_0x13999b(0x107)]?readConfigFile(_0x5d1ecd):{};for(const [_0x29810c,_0x1dfc6c]of Object[_0x13999b(0x12f)](_0x3d3888)){!(_0x29810c in _0x47de4b)&&(_0x47de4b[_0x29810c]=_0x1dfc6c);}writeConfigFile(_0x5d1ecd,_0x47de4b);const _0xb3a828=_0x25226c[_0x13999b(0x144)]+_0x13999b(0x157);return renameSync(_0x25226c[_0x13999b(0x144)],_0xb3a828),{'step':0x1,'label':_0x13999b(0x160),'ok':!![],'detail':_0x25226c['oldPath']+'\x20→\x20'+_0x5d1ecd+_0x13999b(0x126)+_0xb3a828+')'};}function execRemoveOldArtifacts(_0x4307f6){const _0x211c9d=a113_0xab848,_0x5321ab=[];for(const _0x5bdce3 of _0x4307f6){try{if(!existsSync(_0x5bdce3))continue;const _0x4c33fe=tryStat(_0x5bdce3);_0x4c33fe?.[_0x211c9d(0xf6)]()?rmSync(_0x5bdce3,{'recursive':!![],'force':!![]}):unlinkSync(_0x5bdce3);}catch(_0x190e1b){_0x5321ab[_0x211c9d(0xf4)](_0x5bdce3+':\x20'+_0x190e1b[_0x211c9d(0x152)]);}}return{'step':0x3,'label':_0x211c9d(0x169),'ok':_0x5321ab[_0x211c9d(0x11a)]===0x0,'detail':_0x5321ab[_0x211c9d(0x11a)]>0x0?_0x4307f6[_0x211c9d(0x11a)]-_0x5321ab[_0x211c9d(0x11a)]+'/'+_0x4307f6['length']+_0x211c9d(0xff)+_0x5321ab[_0x211c9d(0x165)](';\x20')+')':_0x4307f6[_0x211c9d(0x11a)]+'\x20removed'};}function execCleanMcp(_0x5edbc7){const _0x296942=a113_0xab848;if(!_0x5edbc7['oldMcpConfig'])return{'step':0x4,'label':_0x296942(0x111),'ok':!![],'detail':_0x296942(0x14c)};try{const _0x308948=readFileSync(_0x5edbc7[_0x296942(0xf1)][_0x296942(0x10a)],'utf8'),_0x28febb=JSON[_0x296942(0x12c)](_0x308948);if(_0x28febb?.[_0x296942(0x11f)]&&typeof _0x28febb[_0x296942(0x11f)]===_0x296942(0x162)){const _0x137462=[];for(const [_0x338086,_0xdb4b5a]of Object[_0x296942(0x12f)](_0x28febb[_0x296942(0x11f)])){_0xdb4b5a?.[_0x296942(0xef)]&&Array[_0x296942(0x12d)](_0xdb4b5a[_0x296942(0xef)])&&_0xdb4b5a[_0x296942(0xef)][_0x296942(0x13c)](_0x31198a=>typeof _0x31198a===_0x296942(0x10b)&&_0x31198a['includes'](_0x296942(0x10c)))&&_0x137462[_0x296942(0xf4)](_0x338086);}for(const _0x29ce17 of _0x137462){delete _0x28febb['mcpServers'][_0x29ce17];}return _0x137462[_0x296942(0x11a)]>0x0&&writeFileSync(_0x5edbc7[_0x296942(0xf1)][_0x296942(0x10a)],JSON[_0x296942(0x14d)](_0x28febb,null,0x2)+'\x0a',_0x296942(0x103)),{'step':0x4,'label':_0x296942(0x111),'ok':!![],'detail':_0x296942(0x113)+_0x137462['join'](',\x20')+_0x296942(0x11e)+_0x5edbc7['oldMcpConfig'][_0x296942(0x10a)]};}return{'step':0x4,'label':_0x296942(0x111),'ok':!![],'detail':_0x296942(0x109)};}catch(_0x79ebf2){return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':![],'detail':_0x79ebf2[_0x296942(0x152)]};}}function execSkillsRemove(_0x1a46d6,_0x30a9cb){const _0x2dcee0=a113_0xab848,_0x32f134=runNpxSkillsRemove(_0x1a46d6,{'stdio':_0x2dcee0(0x129),'yes':_0x30a9cb});return{'step':0x5,'label':_0x2dcee0(0x138),'ok':_0x32f134['ok'],'detail':_0x32f134['ok']?_0x2dcee0(0x145):_0x32f134[_0x2dcee0(0x10e)]??_0x2dcee0(0x12e)+_0x32f134['status']};}function execSkillsAdd(_0x4484bd,_0x27a7b7){const _0x17410a=a113_0xab848,_0x5d684d=runNpxSkillsAddGlobal(_0x4484bd,_0x17410a(0x141),{'stdio':_0x17410a(0x129),'yes':_0x27a7b7});return{'step':0x6,'label':_0x17410a(0x16d),'ok':_0x5d684d['ok'],'detail':_0x5d684d['ok']?'lovrabet/rabetbase\x20installed\x20globally':_0x5d684d[_0x17410a(0x10e)]??_0x17410a(0x12e)+_0x5d684d['status']};}function execUpgradeSdk(_0x2a1e65){const _0x569ce6=a113_0xab848;if(!_0x2a1e65[_0x569ce6(0x106)])return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':'skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)'};const {pkgPath:_0x3c6698,currentVersion:_0x4c0aa0,field:_0x4da533}=_0x2a1e65[_0x569ce6(0x106)];try{const _0x27c0da=readFileSync(_0x3c6698,'utf8'),_0x1d6aa2=JSON[_0x569ce6(0x12c)](_0x27c0da);return _0x1d6aa2[_0x4da533][_0x569ce6(0xf9)]=_0x569ce6(0x155),writeFileSync(_0x3c6698,JSON[_0x569ce6(0x14d)](_0x1d6aa2,null,0x2)+'\x0a',_0x569ce6(0x103)),{'step':0x7,'label':_0x569ce6(0x10f),'ok':!![],'detail':_0x4da533+_0x569ce6(0x119)+_0x4c0aa0+'\x20→\x20latest'};}catch(_0x1bbe62){return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':![],'detail':_0x1bbe62[_0x569ce6(0x152)]};}}function a113_0x24cf(){const _0x35d445=['Step\x207/7:\x20@lovrabet/sdk\x20—\x20','oldMcpConfig','values','\x20→\x20','push','package.json','isDirectory','files','===\x20Upgrade\x20Analysis\x20===','@lovrabet/sdk','.cursor/mcp.json','\x20\x20npm\x20install','\x20\x20Current\x20version\x20in\x20','devDependencies','configMigration','\x20removed\x20(','7anBMMs','===\x20Upgrade\x20Summary\x20===','.claude/skills/lovrabet','utf8','Step\x201/7:\x20Migrating\x20config...','not\x20found\x20or\x20already\x20at\x20latest','sdkUpgrade','hasNewConfig','Step\x206/7:\x20Installing\x20new\x20skill...','no\x20matching\x20entry\x20found','path','string','@lovrabet/dataset-mcp-server','Proceed\x20with\x20upgrade?','error','Upgrade\x20@lovrabet/sdk','oldArtifacts','Clean\x20MCP\x20config','\x20\x20bun\x20install','removed\x20','no\x20legacy\x20config\x20found','log','label','10cOBHwd','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','[\x22@lovrabet/sdk\x22]:\x20','length','339664DQXvyy','not\x20found\x20(will\x20create)','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','\x20from\x20','mcpServers','2043BAWtNu','FAIL','.lovrabet','\x20→\x20keys:\x20','bold','\x20\x20Fields\x20to\x20migrate:\x20','\x20(backup:\x20','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','yellow','inherit','includes','green','parse','isArray','exit\x20','entries','succeed','Legacy\x20artifacts:','1626jrRcQe','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','cwd','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','white','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','Remove\x20old\x20skill','\x20\x20\x20\x20\x20\x20\x20','not\x20needed','MCP\x20config:','some','no\x20legacy\x20entry','\x20\x20New\x20config\x20(.rabetbase.json):\x20','Step\x204/7:\x20Cleaning\x20MCP\x20config...','\x20\x20Step\x20','lovrabet/rabetbase','keys','2326140wxKxkY','oldPath','lovrabet/lovrabet-skill\x20removed','Config\x20file:','step','detail','Remove\x20.lovrabet/','filter','Step\x204/7:\x20MCP\x20config\x20—\x20','skipped','stringify','Skill\x20swap:','fail','Upgrade\x20completed\x20successfully!','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','message','3551120LOQifd','undefined','latest','none\x20found','.bak','already\x20exists\x20(will\x20merge)','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','1238969byJXIy','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','info','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','Config\x20migration','Upgrade\x20cancelled.','object','Step\x201/7:\x20Config\x20migration\x20—\x20','done','join','start','4830093vAWPMN','dependencies','Remove\x20legacy\x20artifacts','skipped\x20(no\x20legacy\x20config)','red','gray','Install\x20new\x20skill','cyan','2674794oYkDqa','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','failed','args'];a113_0x24cf=function(){return _0x35d445;};return a113_0x24cf();}function a113_0x1d0e(_0x790f13,_0x570c0b){_0x790f13=_0x790f13-0xee;const _0x24cfb7=a113_0x24cf();let _0x1d0e58=_0x24cfb7[_0x790f13];return _0x1d0e58;}function tryStat(_0xa94713){try{return statSync(_0xa94713);}catch{return undefined;}}function printSummary(_0x55c1ef){const _0x4e5cb2=a113_0xab848;console['log'](''),console[_0x4e5cb2(0x115)](a113_0x46b14a[_0x4e5cb2(0x124)](_0x4e5cb2(0x101))),console[_0x4e5cb2(0x115)]('');for(const _0x268fad of _0x55c1ef){const _0x56e873=_0x268fad['ok']?a113_0x46b14a[_0x4e5cb2(0x12b)]('OK'):a113_0x46b14a[_0x4e5cb2(0x16b)](_0x4e5cb2(0x121));console['log']('\x20\x20'+_0x56e873+_0x4e5cb2(0x140)+_0x268fad[_0x4e5cb2(0x147)]+':\x20'+_0x268fad[_0x4e5cb2(0x116)]);if(_0x268fad[_0x4e5cb2(0x148)])console[_0x4e5cb2(0x115)](_0x4e5cb2(0x139)+a113_0x46b14a[_0x4e5cb2(0x16c)](_0x268fad['detail']));}console[_0x4e5cb2(0x115)]('');}export async function upgradeApp(_0x21a106,_0x4c24dc){const _0x4b17a2=a113_0xab848,_0x1a304d=process[_0x4b17a2(0x134)](),_0x65e702=analyse(_0x1a304d),_0x4a0587=!_0x65e702[_0x4b17a2(0xfe)]&&_0x65e702[_0x4b17a2(0x110)][_0x4b17a2(0x11a)]===0x0&&!_0x65e702['oldMcpConfig']&&!_0x65e702['needsSkillSwap']&&!_0x65e702[_0x4b17a2(0x106)];if(_0x4a0587){console[_0x4b17a2(0x115)](a113_0x46b14a[_0x4b17a2(0x12b)](_0x4b17a2(0x11d)));return;}printReport(_0x65e702);const _0x2e242c=!!(_0x4c24dc['yes']||_0x4c24dc['Y']||_0x21a106);if(!_0x2e242c)try{const _0x292edc=await askConfirm(_0x4b17a2(0x10d));if(!_0x292edc){console[_0x4b17a2(0x115)](a113_0x46b14a[_0x4b17a2(0x16c)](_0x4b17a2(0x161)));return;}}catch(_0x1d92c1){if(_0x1d92c1?.[_0x4b17a2(0x152)]==='CANCEL'){console[_0x4b17a2(0x115)](a113_0x46b14a[_0x4b17a2(0x16c)](_0x4b17a2(0x161)));return;}throw _0x1d92c1;}const _0x31cd30=[],_0x15824f=a113_0xf70336({'text':_0x4b17a2(0x104),'color':_0x4b17a2(0x16e)})[_0x4b17a2(0x166)](),_0x54cff6=execConfigMigration(_0x65e702,_0x1a304d);_0x31cd30[_0x4b17a2(0xf4)](_0x54cff6),_0x15824f[_0x54cff6['ok']?_0x4b17a2(0x130):_0x4b17a2(0x14f)](_0x4b17a2(0x163)+(_0x54cff6[_0x4b17a2(0x148)]??(_0x54cff6['ok']?'done':'failed')));const _0x94d27d=resolve(_0x1a304d,_0x4b17a2(0x122)),_0x3d82ce=a113_0xf70336({'text':_0x4b17a2(0x133),'color':_0x4b17a2(0x16e)})[_0x4b17a2(0x166)]();if(existsSync(_0x94d27d))try{rmSync(_0x94d27d,{'recursive':!![],'force':!![]}),_0x3d82ce[_0x4b17a2(0x130)]('Step\x202/7:\x20.lovrabet/\x20directory\x20removed'),_0x31cd30[_0x4b17a2(0xf4)]({'step':0x2,'label':_0x4b17a2(0x149),'ok':!![]});}catch(_0x107493){_0x3d82ce[_0x4b17a2(0x14f)](_0x4b17a2(0x159)+_0x107493[_0x4b17a2(0x152)]),_0x31cd30['push']({'step':0x2,'label':_0x4b17a2(0x149),'ok':![],'detail':_0x107493[_0x4b17a2(0x152)]});}else _0x3d82ce[_0x4b17a2(0x15c)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x31cd30[_0x4b17a2(0xf4)]({'step':0x2,'label':_0x4b17a2(0x149),'ok':!![],'detail':_0x4b17a2(0x14c)});const _0x22fc88=a113_0xf70336({'text':_0x4b17a2(0x137),'color':_0x4b17a2(0x16e)})[_0x4b17a2(0x166)](),_0x43e529=execRemoveOldArtifacts(_0x65e702[_0x4b17a2(0x110)]);_0x31cd30[_0x4b17a2(0xf4)](_0x43e529),_0x22fc88[_0x43e529['ok']?_0x4b17a2(0x130):_0x4b17a2(0x14f)](_0x4b17a2(0x15f)+(_0x43e529[_0x4b17a2(0x148)]??(_0x43e529['ok']?_0x4b17a2(0x164):_0x4b17a2(0xee))));const _0x2025b0=a113_0xf70336({'text':_0x4b17a2(0x13f),'color':'cyan'})[_0x4b17a2(0x166)](),_0x2ec069=execCleanMcp(_0x65e702);_0x31cd30[_0x4b17a2(0xf4)](_0x2ec069),_0x2025b0[_0x2ec069['ok']?_0x4b17a2(0x130):_0x4b17a2(0x14f)](_0x4b17a2(0x14b)+(_0x2ec069[_0x4b17a2(0x148)]??(_0x2ec069['ok']?'done':_0x4b17a2(0xee))));const _0x343003=a113_0xf70336({'text':'Step\x205/7:\x20Removing\x20old\x20skill...','color':_0x4b17a2(0x16e)})['start'](),_0x4d2e3d=execSkillsRemove(_0x1a304d,_0x2e242c);_0x31cd30[_0x4b17a2(0xf4)](_0x4d2e3d),_0x343003[_0x4d2e3d['ok']?'succeed':_0x4b17a2(0x14f)](_0x4b17a2(0x127)+(_0x4d2e3d[_0x4b17a2(0x148)]??(_0x4d2e3d['ok']?_0x4b17a2(0x164):_0x4b17a2(0xee))));const _0x42b1dd=a113_0xf70336({'text':_0x4b17a2(0x108),'color':_0x4b17a2(0x16e)})[_0x4b17a2(0x166)](),_0x2b88e0=execSkillsAdd(_0x1a304d,_0x2e242c);_0x31cd30['push'](_0x2b88e0),_0x42b1dd[_0x2b88e0['ok']?_0x4b17a2(0x130):_0x4b17a2(0x14f)](_0x4b17a2(0x15e)+(_0x2b88e0[_0x4b17a2(0x148)]??(_0x2b88e0['ok']?_0x4b17a2(0x164):_0x4b17a2(0xee))));const _0x5077ea=a113_0xf70336({'text':_0x4b17a2(0x135),'color':_0x4b17a2(0x16e)})[_0x4b17a2(0x166)](),_0x1a017b=execUpgradeSdk(_0x65e702);_0x31cd30[_0x4b17a2(0xf4)](_0x1a017b),_0x5077ea[_0x1a017b['ok']?_0x4b17a2(0x130):'fail'](_0x4b17a2(0xf0)+(_0x1a017b['detail']??(_0x1a017b['ok']?'done':_0x4b17a2(0xee)))),printSummary(_0x31cd30);const _0x400e46=_0x31cd30[_0x4b17a2(0x13c)](_0x109311=>!_0x109311['ok']);_0x400e46?console[_0x4b17a2(0x115)](a113_0x46b14a['yellow'](_0x4b17a2(0x118))):console['log'](a113_0x46b14a[_0x4b17a2(0x12b)](_0x4b17a2(0x150))),_0x1a017b['ok']&&_0x65e702['sdkUpgrade']&&(console[_0x4b17a2(0x115)](''),console[_0x4b17a2(0x115)](a113_0x46b14a[_0x4b17a2(0x124)][_0x4b17a2(0x16e)](_0x4b17a2(0x170))),console[_0x4b17a2(0x115)](a113_0x46b14a['cyan']('Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:')),console['log'](''),console[_0x4b17a2(0x115)](a113_0x46b14a[_0x4b17a2(0x136)](_0x4b17a2(0xfb))),console[_0x4b17a2(0x115)](a113_0x46b14a[_0x4b17a2(0x136)]('\x20\x20#\x20or')),console[_0x4b17a2(0x115)](a113_0x46b14a[_0x4b17a2(0x136)](_0x4b17a2(0x112))),console[_0x4b17a2(0x115)](''));}
|
package/lib/commands/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a114_0x27332b=a114_0x1bc8;(function(_0x1d5f76,_0x4ab9af){const _0x10a14a=a114_0x1bc8,_0x5d4c55=_0x1d5f76();while(!![]){try{const _0x5bd19a=-parseInt(_0x10a14a(0xbf))/0x1+parseInt(_0x10a14a(0xbe))/0x2+parseInt(_0x10a14a(0xc9))/0x3+-parseInt(_0x10a14a(0xc6))/0x4*(parseInt(_0x10a14a(0x9d))/0x5)+-parseInt(_0x10a14a(0xa8))/0x6+-parseInt(_0x10a14a(0xbc))/0x7*(-parseInt(_0x10a14a(0xcc))/0x8)+-parseInt(_0x10a14a(0xc5))/0x9;if(_0x5bd19a===_0x4ab9af)break;else _0x5d4c55['push'](_0x5d4c55['shift']());}catch(_0x59e329){_0x5d4c55['push'](_0x5d4c55['shift']());}}}(a114_0x13c7,0xc0f1d));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{appDefinitions}from'../commands/app/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{skillDefinitions}from'../commands/skill/index.js';import{projectDefinitions}from'../commands/project/index.js';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(_0x4caaea){const _0x557675=a114_0x1bc8;for(const _0x4ea35d of _0x4caaea){definitions[_0x557675(0xce)](_0x4ea35d[_0x557675(0xaf)]+':'+_0x4ea35d[_0x557675(0xc7)],_0x4ea35d);let _0x2f44b3=serviceGroups[_0x557675(0xc0)](_0x4ea35d[_0x557675(0xaf)]);!_0x2f44b3&&(_0x2f44b3=[],serviceGroups['set'](_0x4ea35d[_0x557675(0xaf)],_0x2f44b3)),_0x2f44b3[_0x557675(0xb3)](_0x4ea35d);}}function registerDeclarativeService(_0x43bda3,_0x2174dc,_0x3125c8){const _0x2cc9f2=a114_0x1bc8;registerDefinitions(_0x2174dc);_0x3125c8?.['wildcardDef']&®isterDefinitions([_0x3125c8[_0x2cc9f2(0xb2)]]);const _0x2222fa=_0x1e418c=>_0x1e418c===_0x2cc9f2(0xab)?'':_0x1e418c===_0x2cc9f2(0xad)?_0x2cc9f2(0xbb):_0x2cc9f2(0xbd),_0x4c6fc4={'service':_0x2174dc[0x0]['service'],'label':_0x43bda3,'commands':_0x2174dc[_0x2cc9f2(0xd0)](_0x19076f=>({'command':_0x19076f[_0x2cc9f2(0xc7)],'description':_0x19076f['description'],'tag':_0x2222fa(_0x19076f[_0x2cc9f2(0x9e)])})),'declarative':!![],'defaultCommand':_0x3125c8?.[_0x2cc9f2(0xb1)]??(_0x3125c8?.['isSingleCommand']?_0x2174dc[0x0][_0x2cc9f2(0xc7)]:undefined),'wildcardDef':_0x3125c8?.[_0x2cc9f2(0xb2)],'isSingleCommand':_0x3125c8?.[_0x2cc9f2(0xba)]};serviceRegistry[_0x2cc9f2(0xb3)](_0x4c6fc4),serviceByName['set'](_0x4c6fc4[_0x2cc9f2(0xaf)],_0x4c6fc4);}registerDeclarativeService('Quick\x20Start',initDefinitions,{'defaultCommand':a114_0x27332b(0xb9),'isSingleCommand':!![]}),registerDeclarativeService(a114_0x27332b(0xc1),projectDefinitions),registerDeclarativeService(a114_0x27332b(0xcd),appDefinitions),registerDeclarativeService('Run\x20Scripts',[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a114_0x27332b(0xac)]-0x1];last[a114_0x27332b(0xc8)]=[{'command':'<script>','description':a114_0x27332b(0xb5),'tag':''}];}function a114_0x13c7(){const _0x3292c8=['preview','has','Code\x20Generation','show','Skills','Authentication','Configuration','install','5746572GGhGcB','skill','Database\x20Connections','read','length','write','Logs','service','create','defaultCommand','wildcardDef','push','logout','Run\x20any\x20package.json\x20script','Diagnostics','values','API','run','isSingleCommand','\x20\x20[write]','227017TjZONw','\x20\x20[high-risk-write]','1950786VANrHu','74913soSjSg','get','Project','Dataset\x20&\x20Operations','Schema','from','7180515mUiSvG','836cJzAGf','command','commands','2771184diMLwe','Instant\x20API','auth','328xnGtmF','App\x20Management','set','Self\x20Update','map','14545ZJXaZq','risk','project'];a114_0x13c7=function(){return _0x3292c8;};return a114_0x13c7();}registerDeclarativeService(a114_0x27332b(0xa5),authDefinitions,{'defaultCommand':'login'}),registerDeclarativeService(a114_0x27332b(0xcf),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a114_0x27332b(0xb6),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a114_0x27332b(0xc3),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a114_0x27332b(0xa6),configDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService(a114_0x27332b(0xb8),apiDefinitions),registerDeclarativeService('Menu',menuDefinitions),registerDeclarativeService(a114_0x27332b(0xaa),dbDefinitions),registerDeclarativeService(a114_0x27332b(0xc2),datasetDefinitions),registerDeclarativeService('Smart\x20List\x20Pages',pageDefinitions),registerDeclarativeService(a114_0x27332b(0xca),dataDefinitions),registerDeclarativeService('BFF\x20Scripts',bffDefinitions),registerDeclarativeService('SQL\x20Queries',sqlDefinitions),registerDeclarativeService(a114_0x27332b(0xa2),codegenDefinitions),registerDeclarativeService(a114_0x27332b(0xa4),skillDefinitions),registerDeclarativeService(a114_0x27332b(0xae),logsDefinitions,{'defaultCommand':a114_0x27332b(0xa3)});export const deprecatedAliases={'create':{'service':a114_0x27332b(0x9f),'command':'create'},'start':{'service':a114_0x27332b(0xb9),'command':'start'},'build':{'service':a114_0x27332b(0xb9),'command':'build'},'preview':{'service':'run','command':a114_0x27332b(0xa0)},'logout':{'service':a114_0x27332b(0xcb),'command':a114_0x27332b(0xb4)},'skills':{'service':a114_0x27332b(0xa9),'command':a114_0x27332b(0xa7)}};export const deprecatedSubcommands={'bff':{'new':a114_0x27332b(0xb0)},'sql':{'new':'create'}};export function resolveDeprecatedSubcommand(_0x4acc51,_0x51575c){return deprecatedSubcommands[_0x4acc51]?.[_0x51575c];}export function findDefinition(_0xe568ec,_0x2bf5c9){return definitions['get'](_0xe568ec+':'+_0x2bf5c9);}export function isKnownService(_0x2e660e){const _0xa15227=a114_0x27332b;return serviceByName[_0xa15227(0xa1)](_0x2e660e);}export function isDeclarativeService(_0x3ecbcf){const _0x24dc6b=a114_0x27332b;return serviceGroups[_0x24dc6b(0xa1)](_0x3ecbcf)||serviceByName[_0x24dc6b(0xc0)](_0x3ecbcf)?.[_0x24dc6b(0xb2)]!==undefined;}export function getServiceEntry(_0x2acb38){const _0x1c016a=a114_0x27332b;return serviceByName[_0x1c016a(0xc0)](_0x2acb38);}export function getLegacyHandler(_0x5e2f67,_0x254dff){return undefined;}function a114_0x1bc8(_0x2baa51,_0x4c68d0){_0x2baa51=_0x2baa51-0x9d;const _0x13c718=a114_0x13c7();let _0x1bc809=_0x13c718[_0x2baa51];return _0x1bc809;}export function getAllDefinitions(){const _0x1a63d8=a114_0x27332b;return Array[_0x1a63d8(0xc4)](definitions[_0x1a63d8(0xb7)]());}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a115_0x46bde0=a115_0x35c7;(function(_0x54aaa4,_0x3c2de9){const _0x28f835=a115_0x35c7,_0x5a4e63=_0x54aaa4();while(!![]){try{const _0x2651a5=parseInt(_0x28f835(0x168))/0x1+-parseInt(_0x28f835(0x181))/0x2*(-parseInt(_0x28f835(0x1a5))/0x3)+-parseInt(_0x28f835(0x191))/0x4*(parseInt(_0x28f835(0x1a8))/0x5)+-parseInt(_0x28f835(0x184))/0x6*(parseInt(_0x28f835(0x166))/0x7)+-parseInt(_0x28f835(0x194))/0x8+parseInt(_0x28f835(0x1a7))/0x9*(parseInt(_0x28f835(0x18c))/0xa)+parseInt(_0x28f835(0x16d))/0xb;if(_0x2651a5===_0x3c2de9)break;else _0x5a4e63['push'](_0x5a4e63['shift']());}catch(_0x555ed3){_0x5a4e63['push'](_0x5a4e63['shift']());}}}(a115_0x28c3,0xa3cdb));import{readFileSync,existsSync}from'node:fs';import{CLI_BIN_NAME}from'../../constant/cli.js';import{resolve,delimiter,join}from'node:path';import{spawn}from'node:child_process';import{CliErrors}from'../../errors.js';import{checkSdkVersion,printSdkUpgradeWarning}from'../../utils/check-sdk-version.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../utils/cli-version-check.js';const VERSION_CHECK_SCRIPTS=new Set(['start',a115_0x46bde0(0x188)]);function a115_0x35c7(_0x3c0e67,_0x23e60d){_0x3c0e67=_0x3c0e67-0x165;const _0x28c328=a115_0x28c3();let _0x35c7d1=_0x28c328[_0x3c0e67];return _0x35c7d1;}function readPackageScripts(_0x407329){const _0x27062f=a115_0x46bde0,_0x1b7dbc=resolve(_0x407329,'package.json');if(!existsSync(_0x1b7dbc))return null;try{const _0x29d864=JSON['parse'](readFileSync(_0x1b7dbc,_0x27062f(0x165)));return _0x29d864[_0x27062f(0x1a6)]??{};}catch{return null;}}function detectPackageManager(_0x102296){const _0x2e2f8f=a115_0x46bde0;if(existsSync(resolve(_0x102296,'bun.lockb'))||existsSync(resolve(_0x102296,_0x2e2f8f(0x177))))return'bun';if(existsSync(resolve(_0x102296,_0x2e2f8f(0x17b))))return _0x2e2f8f(0x17d);if(existsSync(resolve(_0x102296,_0x2e2f8f(0x18e))))return _0x2e2f8f(0x196);return'npm';}async function versionCheck(_0x3fa98c){const _0x54b3e0=a115_0x46bde0,_0x3b7dc0=await checkCliVersion();(_0x3b7dc0[_0x54b3e0(0x176)]||_0x3b7dc0[_0x54b3e0(0x197)])&&(printCliUpgradeWarning(_0x3b7dc0),assertCliVersionSupported(_0x3b7dc0));const _0x115a31=await checkSdkVersion(_0x3fa98c);if(_0x115a31['needsUpgrade'])printSdkUpgradeWarning(_0x115a31);}function spawnScript(_0x23afdd,_0xa406e7,_0x2af9e9,_0x59a220){return new Promise((_0x34d622,_0x15e318)=>{const _0x3e973d=a115_0x35c7,_0x251df2=[_0x3e973d(0x17a),_0xa406e7,..._0x2af9e9],_0x438a83=spawn(_0x23afdd,_0x251df2,{'cwd':_0x59a220,'stdio':_0x3e973d(0x19b),'shell':!![],'env':{...process.env,'PATH':''+join(_0x59a220,_0x3e973d(0x19a),'.bin')+delimiter+process.env.PATH}});_0x438a83['on'](_0x3e973d(0x186),_0x2190b8=>{const _0x20af90=_0x3e973d;if(_0x2190b8===0x0||_0x2190b8===null)_0x34d622();else _0x15e318(new Error(_0x23afdd+_0x20af90(0x1a0)+_0xa406e7+_0x20af90(0x172)+_0x2190b8));}),_0x438a83['on'](_0x3e973d(0x1a1),_0x15e318);});}function a115_0x28c3(){const _0x5680b3=['yarn.lock','Enable\x20watch\x20mode\x20for\x20preview','\x20run\x20preview\x20--watch\x20\x20\x20#\x20parallel\x20build\x20--watch\x20+\x20preview','2789788BnMhYu','keys','push','3794168kiFWdF','max','yarn','belowMinimum','all','script','node_modules','inherit','No\x20scripts\x20defined\x20in\x20package.json.','Run\x20a\x20package.json\x20script','entries','length','\x20run\x20','error','No\x20package.json\x20found\x20in\x20current\x20directory.','args','\x0a\x20\x20Usage:\x20','150KOyzla','scripts','9AJxwav','5bgSflI','utf-8','1400qMduHS','padEnd','628945xTiBSF','log','\x20run\x20start','\x20run\x20<script>\x0a','has','7983151UPAQBH','vite\x20preview\x20exited\x20with\x20code\x20','vite\x20build\x20--watch\x20exited\x20with\x20code\x20','\x20run\x20preview','slice','\x20exited\x20with\x20code\x20','.bin','(none)','vite','needsUpgrade','bun.lock','bool','watch','run','pnpm-lock.yaml','\x0a\x20\x20Available\x20scripts:\x0a','pnpm','Available:\x20','\x22\x20not\x20found\x20in\x20package.json.','preview','12490sCyatw','map','cwd','4374czIRbP','boolean','close','\x20\x20\x20\x20','dev','build','\x20run\x20build','validation','3215210MtYMIy','\x20\x20AVAILABLE\x20SCRIPTS\x20\x20(current\x20project)'];a115_0x28c3=function(){return _0x5680b3;};return a115_0x28c3();}function spawnViteBuildWatch(_0x361183){return new Promise((_0x4e658f,_0x52d1b6)=>{const _0x39a8fd=a115_0x35c7,_0x1961c5=spawn(_0x39a8fd(0x175),[_0x39a8fd(0x189),'--watch'],{'cwd':_0x361183,'stdio':'inherit','shell':!![],'env':{...process.env,'PATH':''+join(_0x361183,_0x39a8fd(0x19a),_0x39a8fd(0x173))+delimiter+process.env.PATH}});_0x1961c5['on'](_0x39a8fd(0x186),_0x30f0ee=>{const _0x442be3=_0x39a8fd;if(_0x30f0ee===0x0||_0x30f0ee===null)_0x4e658f();else _0x52d1b6(new Error(_0x442be3(0x16f)+_0x30f0ee));}),_0x1961c5['on'](_0x39a8fd(0x1a1),_0x52d1b6);});}function spawnVitePreview(_0x34b578){return new Promise((_0x2056d6,_0x4e6c37)=>{const _0x1892fe=a115_0x35c7,_0x2c4e6d=spawn(_0x1892fe(0x175),[_0x1892fe(0x180)],{'cwd':_0x34b578,'stdio':_0x1892fe(0x19b),'shell':!![],'env':{...process.env,'PATH':''+join(_0x34b578,_0x1892fe(0x19a),_0x1892fe(0x173))+delimiter+process.env.PATH}});_0x2c4e6d['on'](_0x1892fe(0x186),_0x524b15=>{const _0x3264bd=_0x1892fe;if(_0x524b15===0x0||_0x524b15===null)_0x2056d6();else _0x4e6c37(new Error(_0x3264bd(0x16e)+_0x524b15));}),_0x2c4e6d['on'](_0x1892fe(0x1a1),_0x4e6c37);});}const runFlags=[{'name':a115_0x46bde0(0x179),'type':a115_0x46bde0(0x185),'description':a115_0x46bde0(0x18f),'default':![]}];export const runDefinition={'service':a115_0x46bde0(0x17a),'command':a115_0x46bde0(0x17a),'description':a115_0x46bde0(0x19d),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a115_0x46bde0(0x199),'description':'Script\x20name\x20defined\x20in\x20package.json','required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x1c5f21=a115_0x46bde0,_0x2df873=readPackageScripts(process[_0x1c5f21(0x183)]()),_0x4b0e2b=[];if(_0x2df873&&Object[_0x1c5f21(0x192)](_0x2df873)[_0x1c5f21(0x19f)]>0x0){const _0x256f12=Object[_0x1c5f21(0x192)](_0x2df873),_0x51b275=Math[_0x1c5f21(0x195)](..._0x256f12['map'](_0x3891b4=>_0x3891b4[_0x1c5f21(0x19f)]));_0x4b0e2b['push'](_0x1c5f21(0x18d));for(const [_0x3da6b7,_0xb4ba93]of Object[_0x1c5f21(0x19e)](_0x2df873)){_0x4b0e2b['push']('\x20\x20\x20\x20'+CLI_BIN_NAME+'\x20run\x20'+_0x3da6b7[_0x1c5f21(0x167)](_0x51b275+0x2)+'#\x20'+_0xb4ba93);}}else _0x4b0e2b[_0x1c5f21(0x193)]('\x20\x20EXAMPLES'),_0x4b0e2b[_0x1c5f21(0x193)](_0x1c5f21(0x187)+CLI_BIN_NAME+_0x1c5f21(0x16a)),_0x4b0e2b['push'](_0x1c5f21(0x187)+CLI_BIN_NAME+_0x1c5f21(0x18a)),_0x4b0e2b[_0x1c5f21(0x193)](_0x1c5f21(0x187)+CLI_BIN_NAME+_0x1c5f21(0x170)),_0x4b0e2b[_0x1c5f21(0x193)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x1c5f21(0x190));return _0x4b0e2b['join']('\x0a');},async 'execute'(_0xa36fc7){const _0x342860=a115_0x46bde0,_0x46d538=process[_0x342860(0x183)](),_0x358720=_0xa36fc7[_0x342860(0x1a3)][0x0],_0x1706ea=_0xa36fc7['args'][_0x342860(0x171)](0x1),_0x3ff8cd=readPackageScripts(_0x46d538);if(!_0x3ff8cd)throw CliErrors[_0x342860(0x18b)](_0x342860(0x1a2));if(!_0x358720){const _0x4b737e=Object[_0x342860(0x192)](_0x3ff8cd);if(_0x4b737e[_0x342860(0x19f)]===0x0)console[_0x342860(0x169)](_0x342860(0x19c));else{console[_0x342860(0x169)](_0x342860(0x17c));const _0x4e0254=Math['max'](..._0x4b737e[_0x342860(0x182)](_0x4ba3fe=>_0x4ba3fe[_0x342860(0x19f)]));for(const [_0x2fae52,_0x5035ee]of Object[_0x342860(0x19e)](_0x3ff8cd)){console[_0x342860(0x169)](_0x342860(0x187)+_0x2fae52['padEnd'](_0x4e0254+0x2)+_0x5035ee);}console[_0x342860(0x169)](_0x342860(0x1a4)+CLI_BIN_NAME+_0x342860(0x16b));}return{'ok':!![]};}if(!_0x3ff8cd[_0x358720])throw CliErrors[_0x342860(0x18b)]('Script\x20\x22'+_0x358720+_0x342860(0x17f),_0x342860(0x17e)+(Object[_0x342860(0x192)](_0x3ff8cd)['join'](',\x20')||_0x342860(0x174)));const _0x5058b2=detectPackageManager(_0x46d538);VERSION_CHECK_SCRIPTS[_0x342860(0x16c)](_0x358720)&&await versionCheck(_0x46d538);if(_0x358720===_0x342860(0x180)&&_0xa36fc7[_0x342860(0x178)]('watch'))return await Promise[_0x342860(0x198)]([spawnViteBuildWatch(_0x46d538),spawnVitePreview(_0x46d538)]),{'ok':!![]};return await spawnScript(_0x5058b2,_0x358720,_0x1706ea,_0x46d538),{'ok':!![]};}};
|
package/lib/commands/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a116_0x50f40a=a116_0x1c8b;function a116_0x1c8b(_0x3eca0d,_0x514ab3){_0x3eca0d=_0x3eca0d-0x153;const _0x9f979=a116_0x9f97();let _0x1c8b8a=_0x9f979[_0x3eca0d];return _0x1c8b8a;}(function(_0x3ed29b,_0x233b20){const _0x516506=a116_0x1c8b,_0x11ffe5=_0x3ed29b();while(!![]){try{const _0x24efc5=-parseInt(_0x516506(0x155))/0x1+parseInt(_0x516506(0x15b))/0x2+-parseInt(_0x516506(0x15e))/0x3*(parseInt(_0x516506(0x154))/0x4)+parseInt(_0x516506(0x157))/0x5+-parseInt(_0x516506(0x159))/0x6*(parseInt(_0x516506(0x153))/0x7)+-parseInt(_0x516506(0x15d))/0x8+-parseInt(_0x516506(0x160))/0x9*(-parseInt(_0x516506(0x158))/0xa);if(_0x24efc5===_0x233b20)break;else _0x11ffe5['push'](_0x11ffe5['shift']());}catch(_0x6aaaa){_0x11ffe5['push'](_0x11ffe5['shift']());}}}(a116_0x9f97,0x4da85));import{buildSchemaPayload}from'../framework/schema-export.js';function a116_0x9f97(){const _0x465047=['11244357eyXDEX','1131438CfflMp','2019140sQRZIF','336866AbLCOg','schema','1452695eTbJAs','10tJvyjO','6IpwWck','read','827524PQJcLf','Export\x20machine-readable\x20command\x20schema\x20(JSON)','5058432ZRtDqg','3oknEUW','export'];a116_0x9f97=function(){return _0x465047;};return a116_0x9f97();}async function execute(_0x41c3bb){const _0xb7570d=await buildSchemaPayload();return{'ok':!![],'data':_0xb7570d};}export const schemaDefinition={'service':a116_0x50f40a(0x156),'command':a116_0x50f40a(0x15f),'description':a116_0x50f40a(0x15c),'risk':a116_0x50f40a(0x15a),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':'json','flags':[],'execute':execute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a117_0x1c001e=a117_0x5539;(function(_0x545051,_0x27b6c4){const _0x20fe14=a117_0x5539,_0x5aba5d=_0x545051();while(!![]){try{const _0xbbcf60=parseInt(_0x20fe14(0x181))/0x1+parseInt(_0x20fe14(0x182))/0x2+-parseInt(_0x20fe14(0x170))/0x3*(parseInt(_0x20fe14(0x177))/0x4)+parseInt(_0x20fe14(0x183))/0x5+-parseInt(_0x20fe14(0x16f))/0x6*(-parseInt(_0x20fe14(0x188))/0x7)+parseInt(_0x20fe14(0x184))/0x8+-parseInt(_0x20fe14(0x17e))/0x9*(parseInt(_0x20fe14(0x172))/0xa);if(_0xbbcf60===_0x27b6c4)break;else _0x5aba5d['push'](_0x5aba5d['shift']());}catch(_0x442ef6){_0x5aba5d['push'](_0x5aba5d['shift']());}}}(a117_0x4c40,0x311aa));function a117_0x4c40(){const _0x39f5eb=['\x20skill\x20installed','执行安装技能包命令(委托给\x20npx\x20skills\x20add\x20-g\x20-y)','info','nonInteractive','5130171evVDxh','write','unknown','173855yXQbtS','93330pdpEhA','551300arURyv','2899928VNzDKo','skill-install','error','skill','28dXloKX','Skipped\x20npx\x20(RABETBASE_SKIP_NPX_SKILLS=1);\x20assuming\x20skill\x20is\x20already\x20present.','Installing\x20official\x20skill\x20via\x20npx\x20(','install','451416uPPhYL','3laAZyE','Check\x20network\x20connectivity\x20and\x20try\x20again.','10lthnjk','inherit',')...','../../skills/npx-skills-add.js','Install\x20developer\x20skill\x20package','892264xTHtmr','skipped','lovrabet/rabetbase'];a117_0x4c40=function(){return _0x39f5eb;};return a117_0x4c40();}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';function a117_0x5539(_0x4aa161,_0x39a405){_0x4aa161=_0x4aa161-0x16c;const _0x4c40c5=a117_0x4c40();let _0x55392e=_0x4c40c5[_0x4aa161];return _0x55392e;}import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE}from'../../skills/npx-skills-add.js';export const skillDefinitions=[{'service':a117_0x1c001e(0x187),'command':a117_0x1c001e(0x16e),'description':a117_0x1c001e(0x176),'risk':a117_0x1c001e(0x17f),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x1b16dd){const _0x594624=a117_0x1c001e;logger['setLogPath'](process['cwd']()),logger[_0x594624(0x17c)](_0x594624(0x185),_0x594624(0x17b));const {runNpxSkillsAddGlobal:_0x2d636c}=await import(_0x594624(0x175)),_0xc665=_0x1b16dd[_0x594624(0x17d)]?'pipe':_0x594624(0x173);console['log'](_0x594624(0x16d)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+_0x594624(0x174));const _0x59cf2f=_0x2d636c(process['cwd'](),_0x594624(0x179),{'stdio':_0xc665});if(_0x59cf2f[_0x594624(0x178)])console['log'](_0x594624(0x16c));else{if(_0x59cf2f['ok'])console['log'](CLI_BIN_NAME+_0x594624(0x17a));else throw CliErrors['apiError']('npx\x20skills\x20add\x20failed:\x20'+(_0x59cf2f[_0x594624(0x186)]||_0x594624(0x180)),_0x594624(0x171));}return{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a118_0x6f2179=a118_0x1108;(function(_0x51154f,_0x552d82){const _0x568c74=a118_0x1108,_0x1fc5a9=_0x51154f();while(!![]){try{const _0x33d096=-parseInt(_0x568c74(0x89))/0x1+-parseInt(_0x568c74(0x86))/0x2*(-parseInt(_0x568c74(0xa6))/0x3)+-parseInt(_0x568c74(0x93))/0x4+-parseInt(_0x568c74(0x9c))/0x5*(parseInt(_0x568c74(0x82))/0x6)+-parseInt(_0x568c74(0x8b))/0x7+-parseInt(_0x568c74(0xa2))/0x8+-parseInt(_0x568c74(0xaa))/0x9*(-parseInt(_0x568c74(0x8d))/0xa);if(_0x33d096===_0x552d82)break;else _0x1fc5a9['push'](_0x1fc5a9['shift']());}catch(_0x41b703){_0x1fc5a9['push'](_0x1fc5a9['shift']());}}}(a118_0x2064,0x54f8a));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';function a118_0x2064(){const _0x3ba475=['请输入目标数据库\x20dbId:','lockFilePath','map','trim','sql','✎\x20手动输入\x20dbId','catch','new','appCode','name','sqls','请输入\x20SQL\x20名称:','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','join','POST','dbName','string','create','lastSync','dbId','description','Created\x20SQL\x20query\x20','flagMissing','mode','6Rbnzfi','SQL\x20query\x20display\x20name','</select>','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','164374XCBPgq','请选择目标数据库:','nonInteractive','496673QvzkBn','flag','4335814cmbyYj','Invalid\x20database\x20selection\x20payload:\x20','250wdkqrH','dbId\x20必须为正整数','utf8','sqlRootDir','number','mybatisXml','649152itMuoG','dbId\x20不能为空','普通\x20SQL(sql)','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','适合带动态标签的\x20MyBatis\x20XML\x20SQL','length','validation','/smartapi/custom/saveUserCustomSql','high-risk-write','3012915eZAqjm','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','File\x20already\x20exists:\x20','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','isInteger','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','3190192TKLzaS','stringify','str','<server-generated-sqlCode>','3zZbLsB','\x20\x20SELECT\x201\x20AS\x20id','请选择本地\x20SQL\x20模式:','__manual__','916407kVcfUl','sqlCode','toISOString','isFinite','SELECT\x201\x20AS\x20id;','parse','db-id'];a118_0x2064=function(){return _0x3ba475;};return a118_0x2064();}import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';function a118_0x1108(_0x565331,_0x5d6152){_0x565331=_0x565331-0x6b;const _0x206443=a118_0x2064();let _0x110805=_0x206443[_0x565331];return _0x110805;}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(_0x2702f9){const _0x20b8ab=a118_0x1108;if(_0x2702f9===_0x20b8ab(0x92))return[_0x20b8ab(0x9d),_0x20b8ab(0xa7),_0x20b8ab(0x84),''][_0x20b8ab(0x77)]('\x0a');return[_0x20b8ab(0xae),''][_0x20b8ab(0x77)]('\x0a');}export const sqlCreate={'service':a118_0x6f2179(0x6e),'command':a118_0x6f2179(0x7b),'description':a118_0x6f2179(0x9f),'risk':a118_0x6f2179(0x9b),'flags':[{'name':a118_0x6f2179(0x73),'type':a118_0x6f2179(0x7a),'description':a118_0x6f2179(0x83)},{'name':a118_0x6f2179(0xb0),'type':'number','description':'Target\x20database\x20ID'},{'name':a118_0x6f2179(0x81),'type':a118_0x6f2179(0x7a),'enum':[a118_0x6f2179(0x6e),a118_0x6f2179(0x92)],'description':'Local\x20SQL\x20file\x20mode'}],async 'validate'(_0x23225f){const _0x33ab87=a118_0x6f2179;if(!_0x23225f[_0x33ab87(0x88)])return;if(!_0x23225f[_0x33ab87(0xa4)](_0x33ab87(0x73))[_0x33ab87(0x6d)]())throw CliErrors['flagMissing']('name',_0x33ab87(0x76));const _0x3ae443=resolveProvidedDbId(_0x23225f);if(typeof _0x3ae443!==_0x33ab87(0x91)||!Number[_0x33ab87(0xad)](_0x3ae443)||_0x3ae443<=0x0)throw CliErrors['flagMissing'](_0x33ab87(0xb0),_0x33ab87(0x96));if(!_0x23225f[_0x33ab87(0xa4)]('mode')[_0x33ab87(0x6d)]())throw CliErrors[_0x33ab87(0x80)](_0x33ab87(0x81),_0x33ab87(0x85));},async 'dryRun'(_0x162546){const _0x464226=a118_0x6f2179,_0x47da4c=loadSqlProjectConfig(_0x162546['appCode']),{sqlName:_0x5ba8bf,dbId:_0x165ead,dbName:_0x2164f0,mode:_0x1e4dca}=await resolveSqlNewInputs(_0x162546),_0x12fc5a=buildSqlRelativePath(_0x464226(0xa5),_0x5ba8bf,_0x2164f0,_0x1e4dca,_0x165ead),_0x3d4b09=_0x47da4c[_0x464226(0x90)]+'/'+_0x12fc5a;return{'method':_0x464226(0x78),'url':_0x464226(0x9a),'body':{'appCode':_0x162546[_0x464226(0x72)],'sqlName':_0x5ba8bf,'dbId':_0x165ead,'mode':_0x1e4dca,'localPath':_0x3d4b09},'description':_0x464226(0xa1)+_0x47da4c[_0x464226(0x90)]};},async 'execute'(_0x340b94){const _0xb5189d=a118_0x6f2179,_0x425aae=loadSqlProjectConfig(_0x340b94['appCode']),{sqlName:_0x193488,dbId:_0x2596ee,dbName:_0x2fc4aa,mode:_0x3a42f6}=await resolveSqlNewInputs(_0x340b94),_0x426bd3=generateSqlTemplate(_0x3a42f6),_0x39168a=await createSqlQuery({'appCode':_0x340b94[_0xb5189d(0x72)],'sqlName':_0x193488,'dbId':_0x2596ee,'sqlContent':_0x426bd3}),_0x456d1e=ensureRemoteSqlContent(_0x39168a),_0x276249=_0x2fc4aa||await getDbName(_0x340b94[_0xb5189d(0x72)],_0x2596ee)[_0xb5189d(0x70)](()=>undefined),_0x69fbf4=buildSqlRelativePath(_0x39168a[_0xb5189d(0xab)],_0x39168a['sqlName'],_0x276249,_0x3a42f6,_0x2596ee),_0x268d6b=_0x425aae[_0xb5189d(0x90)]+'/'+_0x69fbf4,_0x3c96b4=buildLocalSqlFileContent({'sqlCode':_0x39168a[_0xb5189d(0xab)],'sqlName':_0x39168a['sqlName'],'dbId':_0x39168a[_0xb5189d(0x7d)]},_0x456d1e,{'dbName':_0x276249,'mode':_0x3a42f6,'syncedAt':new Date()['toISOString'](),'description':_0x39168a[_0xb5189d(0x7e)]});if(await fileExists(_0x268d6b))throw CliErrors[_0xb5189d(0x99)](_0xb5189d(0x9e)+_0x268d6b);await ensureParentDirectory(_0x268d6b),await writeFile(_0x268d6b,_0x3c96b4,_0xb5189d(0x8f));const _0x285ecb=await readSqlLockFile(_0x425aae[_0xb5189d(0x6b)]),{lockData:_0x669be4,appLock:_0x34dbf3}=ensureSqlLockScope(_0x285ecb??createEmptySqlLock(),_0x425aae['appCode'],_0x425aae['sqlRoot'],_0xb5189d(0x71));return _0x34dbf3[_0xb5189d(0x74)][_0x39168a['sqlCode']]={...buildSqlLockEntry(_0x39168a,_0x456d1e,computeSqlContentHash(_0x3c96b4),{'dbName':_0x276249}),'path':_0x69fbf4,'mode':_0x3a42f6},_0x34dbf3[_0xb5189d(0x7c)]=new Date()[_0xb5189d(0xac)](),await writeSqlLockFile(_0x425aae['lockFilePath'],_0x669be4),{'ok':!![],'data':{'id':_0x39168a['id'],'sqlCode':_0x39168a[_0xb5189d(0xab)],'sqlName':_0x39168a['sqlName'],'dbId':_0x39168a[_0xb5189d(0x7d)],'path':_0x268d6b,'mode':_0x3a42f6},'message':_0xb5189d(0x7f)+_0x39168a[_0xb5189d(0xab)]};}};async function resolveSqlNewInputs(_0xbf65f8){const _0x5dea15=await resolveSqlNameInput(_0xbf65f8),{dbId:_0x50775c,dbName:_0xeb1788}=await resolveDbSelection(_0xbf65f8),_0x289221=await resolveSqlModeInput(_0xbf65f8);return{'sqlName':_0x5dea15,'dbId':_0x50775c,'dbName':_0xeb1788,'mode':_0x289221};}async function resolveSqlNameInput(_0x420de6){const _0xf915ff=a118_0x6f2179,_0x2e18b3=_0x420de6[_0xf915ff(0xa4)](_0xf915ff(0x73))[_0xf915ff(0x6d)]();if(_0x2e18b3)return _0x2e18b3;if(_0x420de6['nonInteractive'])throw CliErrors[_0xf915ff(0x80)](_0xf915ff(0x73),_0xf915ff(0x76));return(await input({'message':_0xf915ff(0x75),'validate':_0x4df7e7=>_0x4df7e7[_0xf915ff(0x6d)]()?!![]:'SQL\x20名称不能为空'}))['trim']();}async function resolveDbSelection(_0x2a158c){const _0x2c0fe9=a118_0x6f2179,_0x5763d0=resolveProvidedDbId(_0x2a158c);if(typeof _0x5763d0==='number'&&Number[_0x2c0fe9(0xad)](_0x5763d0)&&_0x5763d0>0x0)return{'dbId':_0x5763d0,'dbName':await getDbName(_0x2a158c[_0x2c0fe9(0x72)],_0x5763d0)[_0x2c0fe9(0x70)](()=>undefined)};if(_0x2a158c[_0x2c0fe9(0x88)])throw CliErrors[_0x2c0fe9(0x80)](_0x2c0fe9(0xb0),_0x2c0fe9(0x96));const _0x4e160e=await listDatabases(_0x2a158c['appCode'])[_0x2c0fe9(0x70)](()=>[]);if(_0x4e160e[_0x2c0fe9(0x98)]===0x1)return{'dbId':_0x4e160e[0x0]['dbId'],'dbName':_0x4e160e[0x0]['dbName']};if(_0x4e160e[_0x2c0fe9(0x98)]>0x1){const _0x280d17=await select({'message':_0x2c0fe9(0x87),'choices':[..._0x4e160e[_0x2c0fe9(0x6c)](_0x5c97a0=>({'name':_0x5c97a0[_0x2c0fe9(0x79)]+'\x20('+_0x5c97a0[_0x2c0fe9(0x7d)]+')','value':serializeDbSelection(_0x5c97a0)})),{'name':_0x2c0fe9(0x6f),'value':_0x2c0fe9(0xa9)}]});if(_0x280d17!==_0x2c0fe9(0xa9))return deserializeDbSelection(_0x280d17);}const _0x2d3211=await input({'message':_0x2c0fe9(0xb1),'validate':_0xb6c18b=>{const _0x41c9a7=_0x2c0fe9,_0xe95271=_0xb6c18b[_0x41c9a7(0x6d)]();if(!_0xe95271)return _0x41c9a7(0x94);const _0x78401a=Number(_0xe95271);if(!Number[_0x41c9a7(0xa0)](_0x78401a)||_0x78401a<=0x0)return _0x41c9a7(0x8e);return!![];}});return{'dbId':Number(_0x2d3211[_0x2c0fe9(0x6d)]())};}async function resolveSqlModeInput(_0x1281c8){const _0x17afed=a118_0x6f2179,_0x167c5c=_0x1281c8[_0x17afed(0xa4)]('mode')[_0x17afed(0x6d)]();if(_0x167c5c===_0x17afed(0x6e)||_0x167c5c==='mybatisXml')return _0x167c5c;if(_0x1281c8[_0x17afed(0x88)])throw CliErrors[_0x17afed(0x80)](_0x17afed(0x81),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');return await select({'message':_0x17afed(0xa8),'choices':[{'name':_0x17afed(0x95),'value':_0x17afed(0x6e),'description':'适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句'},{'name':'MyBatis\x20XML(mybatisXml)','value':_0x17afed(0x92),'description':_0x17afed(0x97)}]});}function serializeDbSelection(_0x2d5e95){const _0x53938e=a118_0x6f2179;return JSON[_0x53938e(0xa3)]({'dbId':_0x2d5e95[_0x53938e(0x7d)],'dbName':_0x2d5e95['dbName']});}function deserializeDbSelection(_0x4f7d44){const _0x208e24=a118_0x6f2179;try{const _0x2ecea2=JSON[_0x208e24(0xaf)](_0x4f7d44);if(typeof _0x2ecea2[_0x208e24(0x7d)]===_0x208e24(0x91)&&Number[_0x208e24(0xad)](_0x2ecea2[_0x208e24(0x7d)]))return{'dbId':_0x2ecea2[_0x208e24(0x7d)],'dbName':_0x2ecea2['dbName']};}catch{}throw CliErrors[_0x208e24(0x99)](_0x208e24(0x8c)+_0x4f7d44);}function resolveProvidedDbId(_0x2b4d59){const _0x5b10ea=a118_0x6f2179,_0x1c91f4=_0x2b4d59[_0x5b10ea(0x8a)]('db-id');if(typeof _0x1c91f4==='number'&&Number[_0x5b10ea(0xad)](_0x1c91f4))return _0x1c91f4;return undefined;}
|
|
1
|
+
function a118_0xe3ff(_0x2fcee4,_0x2a5d22){_0x2fcee4=_0x2fcee4-0xcd;const _0x73a99c=a118_0x73a9();let _0xe3fff3=_0x73a99c[_0x2fcee4];return _0xe3fff3;}const a118_0x19658f=a118_0xe3ff;(function(_0x108170,_0x554388){const _0x3f7697=a118_0xe3ff,_0x1196f9=_0x108170();while(!![]){try{const _0x24b3c5=parseInt(_0x3f7697(0xef))/0x1*(-parseInt(_0x3f7697(0xee))/0x2)+-parseInt(_0x3f7697(0xe6))/0x3*(parseInt(_0x3f7697(0xe3))/0x4)+-parseInt(_0x3f7697(0xd3))/0x5+parseInt(_0x3f7697(0xff))/0x6*(parseInt(_0x3f7697(0x101))/0x7)+parseInt(_0x3f7697(0x105))/0x8*(parseInt(_0x3f7697(0x10c))/0x9)+parseInt(_0x3f7697(0xea))/0xa+-parseInt(_0x3f7697(0xde))/0xb;if(_0x24b3c5===_0x554388)break;else _0x1196f9['push'](_0x1196f9['shift']());}catch(_0x46281f){_0x1196f9['push'](_0x1196f9['shift']());}}}(a118_0x73a9,0x9045d));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';function a118_0x73a9(){const _0x54e0a8=['mode','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','Invalid\x20database\x20selection\x20payload:\x20','flagMissing','dbId','普通\x20SQL(sql)','catch','2587530FUVgKX','✎\x20手动输入\x20dbId','appCode','create','sqlName','716hjAtlz','sqlCode','number','2679CnSzkf','toISOString','sqls','new','4776490XPQkTL','dbId\x20不能为空','stringify','length','8vfygkQ','63943lnfPVn','parse','isFinite','high-risk-write','flag','请输入目标数据库\x20dbId:','Local\x20SQL\x20file\x20mode','请选择本地\x20SQL\x20模式:','description','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','<server-generated-sqlCode>','请选择目标数据库:','isInteger','trim','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','utf8','866334eOcihy','MyBatis\x20XML(mybatisXml)','35BGaOpe','name','string','/smartapi/custom/saveUserCustomSql','12304cvPgpV','str','validation','</select>','lockFilePath','dbName','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','4221oQTsRc','SQL\x20query\x20display\x20name','map','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','nonInteractive','sqlRootDir','db-id','sqlRoot','__manual__','3395630VmnyXg','join','mybatisXml','sql'];a118_0x73a9=function(){return _0x54e0a8;};return a118_0x73a9();}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(_0x5cf924){const _0x441674=a118_0xe3ff;if(_0x5cf924===_0x441674(0xd5))return[_0x441674(0xcd),'\x20\x20SELECT\x201\x20AS\x20id',_0x441674(0x108),''][_0x441674(0xd4)]('\x0a');return['SELECT\x201\x20AS\x20id;','']['join']('\x0a');}export const sqlCreate={'service':a118_0x19658f(0xd6),'command':a118_0x19658f(0xe1),'description':a118_0x19658f(0x10b),'risk':a118_0x19658f(0xf2),'flags':[{'name':'name','type':a118_0x19658f(0x103),'description':a118_0x19658f(0x10d)},{'name':a118_0x19658f(0xd0),'type':a118_0x19658f(0xe5),'description':'Target\x20database\x20ID'},{'name':a118_0x19658f(0xd7),'type':a118_0x19658f(0x103),'enum':[a118_0x19658f(0xd6),a118_0x19658f(0xd5)],'description':a118_0x19658f(0xf5)}],async 'validate'(_0x2a5a58){const _0x1ea3a8=a118_0x19658f;if(!_0x2a5a58[_0x1ea3a8(0xce)])return;if(!_0x2a5a58[_0x1ea3a8(0x106)]('name')[_0x1ea3a8(0xfc)]())throw CliErrors[_0x1ea3a8(0xda)]('name','--name\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x4471fd=resolveProvidedDbId(_0x2a5a58);if(typeof _0x4471fd!=='number'||!Number[_0x1ea3a8(0xf1)](_0x4471fd)||_0x4471fd<=0x0)throw CliErrors[_0x1ea3a8(0xda)](_0x1ea3a8(0xd0),_0x1ea3a8(0xd8));if(!_0x2a5a58[_0x1ea3a8(0x106)]('mode')[_0x1ea3a8(0xfc)]())throw CliErrors[_0x1ea3a8(0xda)](_0x1ea3a8(0xd7),_0x1ea3a8(0xfd));},async 'dryRun'(_0x38e6d5){const _0x446e7f=a118_0x19658f,_0x438db9=loadSqlProjectConfig(_0x38e6d5[_0x446e7f(0xe0)]),{sqlName:_0x150a19,dbId:_0x1e64d6,dbName:_0x3d2c6e,mode:_0x42b57e}=await resolveSqlNewInputs(_0x38e6d5),_0x4112c7=buildSqlRelativePath(_0x446e7f(0xf9),_0x150a19,_0x3d2c6e,_0x42b57e,_0x1e64d6),_0x1b6554=_0x438db9['sqlRootDir']+'/'+_0x4112c7;return{'method':'POST','url':_0x446e7f(0x104),'body':{'appCode':_0x38e6d5['appCode'],'sqlName':_0x150a19,'dbId':_0x1e64d6,'mode':_0x42b57e,'localPath':_0x1b6554},'description':'Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20'+_0x438db9['sqlRootDir']};},async 'execute'(_0xd67887){const _0x90dace=a118_0x19658f,_0x6ff010=loadSqlProjectConfig(_0xd67887['appCode']),{sqlName:_0x5c2f35,dbId:_0x17c2e8,dbName:_0x14777f,mode:_0x294c43}=await resolveSqlNewInputs(_0xd67887),_0x2badee=generateSqlTemplate(_0x294c43),_0xf562=await createSqlQuery({'appCode':_0xd67887[_0x90dace(0xe0)],'sqlName':_0x5c2f35,'dbId':_0x17c2e8,'sqlContent':_0x2badee}),_0x36e67e=ensureRemoteSqlContent(_0xf562),_0x11b599=_0x14777f||await getDbName(_0xd67887[_0x90dace(0xe0)],_0x17c2e8)[_0x90dace(0xdd)](()=>undefined),_0x2a3802=buildSqlRelativePath(_0xf562['sqlCode'],_0xf562['sqlName'],_0x11b599,_0x294c43,_0x17c2e8),_0x313a39=_0x6ff010[_0x90dace(0xcf)]+'/'+_0x2a3802,_0x1c539f=buildLocalSqlFileContent({'sqlCode':_0xf562[_0x90dace(0xe4)],'sqlName':_0xf562[_0x90dace(0xe2)],'dbId':_0xf562['dbId']},_0x36e67e,{'dbName':_0x11b599,'mode':_0x294c43,'syncedAt':new Date()[_0x90dace(0xe7)](),'description':_0xf562[_0x90dace(0xf7)]});if(await fileExists(_0x313a39))throw CliErrors[_0x90dace(0x107)]('File\x20already\x20exists:\x20'+_0x313a39);await ensureParentDirectory(_0x313a39),await writeFile(_0x313a39,_0x1c539f,_0x90dace(0xfe));const _0x5c265b=await readSqlLockFile(_0x6ff010[_0x90dace(0x109)]),{lockData:_0x2a719a,appLock:_0x5239ec}=ensureSqlLockScope(_0x5c265b??createEmptySqlLock(),_0x6ff010[_0x90dace(0xe0)],_0x6ff010[_0x90dace(0xd1)],_0x90dace(0xe9));return _0x5239ec[_0x90dace(0xe8)][_0xf562[_0x90dace(0xe4)]]={...buildSqlLockEntry(_0xf562,_0x36e67e,computeSqlContentHash(_0x1c539f),{'dbName':_0x11b599}),'path':_0x2a3802,'mode':_0x294c43},_0x5239ec['lastSync']=new Date()[_0x90dace(0xe7)](),await writeSqlLockFile(_0x6ff010['lockFilePath'],_0x2a719a),{'ok':!![],'data':{'id':_0xf562['id'],'sqlCode':_0xf562[_0x90dace(0xe4)],'sqlName':_0xf562[_0x90dace(0xe2)],'dbId':_0xf562[_0x90dace(0xdb)],'path':_0x313a39,'mode':_0x294c43},'message':'Created\x20SQL\x20query\x20'+_0xf562[_0x90dace(0xe4)]};}};async function resolveSqlNewInputs(_0x31f7b4){const _0x3b64f8=await resolveSqlNameInput(_0x31f7b4),{dbId:_0x3b1c62,dbName:_0x468c19}=await resolveDbSelection(_0x31f7b4),_0x1cc4af=await resolveSqlModeInput(_0x31f7b4);return{'sqlName':_0x3b64f8,'dbId':_0x3b1c62,'dbName':_0x468c19,'mode':_0x1cc4af};}async function resolveSqlNameInput(_0x29c612){const _0xd6db56=a118_0x19658f,_0x3e9896=_0x29c612[_0xd6db56(0x106)](_0xd6db56(0x102))[_0xd6db56(0xfc)]();if(_0x3e9896)return _0x3e9896;if(_0x29c612['nonInteractive'])throw CliErrors['flagMissing'](_0xd6db56(0x102),'--name\x20is\x20required\x20in\x20non-interactive\x20mode.');return(await input({'message':'请输入\x20SQL\x20名称:','validate':_0x7345a8=>_0x7345a8[_0xd6db56(0xfc)]()?!![]:'SQL\x20名称不能为空'}))['trim']();}async function resolveDbSelection(_0x392539){const _0x22b675=a118_0x19658f,_0x5468cd=resolveProvidedDbId(_0x392539);if(typeof _0x5468cd===_0x22b675(0xe5)&&Number[_0x22b675(0xf1)](_0x5468cd)&&_0x5468cd>0x0)return{'dbId':_0x5468cd,'dbName':await getDbName(_0x392539[_0x22b675(0xe0)],_0x5468cd)['catch'](()=>undefined)};if(_0x392539[_0x22b675(0xce)])throw CliErrors[_0x22b675(0xda)](_0x22b675(0xd0),'--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0xc0a6a4=await listDatabases(_0x392539[_0x22b675(0xe0)])[_0x22b675(0xdd)](()=>[]);if(_0xc0a6a4[_0x22b675(0xed)]===0x1)return{'dbId':_0xc0a6a4[0x0]['dbId'],'dbName':_0xc0a6a4[0x0][_0x22b675(0x10a)]};if(_0xc0a6a4[_0x22b675(0xed)]>0x1){const _0x8ca225=await select({'message':_0x22b675(0xfa),'choices':[..._0xc0a6a4[_0x22b675(0x10e)](_0x1cad51=>({'name':_0x1cad51[_0x22b675(0x10a)]+'\x20('+_0x1cad51[_0x22b675(0xdb)]+')','value':serializeDbSelection(_0x1cad51)})),{'name':_0x22b675(0xdf),'value':'__manual__'}]});if(_0x8ca225!==_0x22b675(0xd2))return deserializeDbSelection(_0x8ca225);}const _0x46c578=await input({'message':_0x22b675(0xf4),'validate':_0x3daa3c=>{const _0x89d55=_0x22b675,_0xa9a69b=_0x3daa3c[_0x89d55(0xfc)]();if(!_0xa9a69b)return _0x89d55(0xeb);const _0x2f8c8e=Number(_0xa9a69b);if(!Number[_0x89d55(0xfb)](_0x2f8c8e)||_0x2f8c8e<=0x0)return'dbId\x20必须为正整数';return!![];}});return{'dbId':Number(_0x46c578[_0x22b675(0xfc)]())};}async function resolveSqlModeInput(_0x4110bd){const _0x18a751=a118_0x19658f,_0x3c5689=_0x4110bd[_0x18a751(0x106)](_0x18a751(0xd7))[_0x18a751(0xfc)]();if(_0x3c5689==='sql'||_0x3c5689==='mybatisXml')return _0x3c5689;if(_0x4110bd[_0x18a751(0xce)])throw CliErrors[_0x18a751(0xda)](_0x18a751(0xd7),_0x18a751(0xfd));return await select({'message':_0x18a751(0xf6),'choices':[{'name':_0x18a751(0xdc),'value':'sql','description':_0x18a751(0xf8)},{'name':_0x18a751(0x100),'value':'mybatisXml','description':'适合带动态标签的\x20MyBatis\x20XML\x20SQL'}]});}function serializeDbSelection(_0x49808b){const _0x15264b=a118_0x19658f;return JSON[_0x15264b(0xec)]({'dbId':_0x49808b[_0x15264b(0xdb)],'dbName':_0x49808b['dbName']});}function deserializeDbSelection(_0x5db98d){const _0x53fa9b=a118_0x19658f;try{const _0x4638e6=JSON[_0x53fa9b(0xf0)](_0x5db98d);if(typeof _0x4638e6[_0x53fa9b(0xdb)]==='number'&&Number[_0x53fa9b(0xf1)](_0x4638e6[_0x53fa9b(0xdb)]))return{'dbId':_0x4638e6[_0x53fa9b(0xdb)],'dbName':_0x4638e6['dbName']};}catch{}throw CliErrors[_0x53fa9b(0x107)](_0x53fa9b(0xd9)+_0x5db98d);}function resolveProvidedDbId(_0x137bc5){const _0x3eb3bc=a118_0x19658f,_0x220abf=_0x137bc5[_0x3eb3bc(0xf3)](_0x3eb3bc(0xd0));if(typeof _0x220abf===_0x3eb3bc(0xe5)&&Number[_0x3eb3bc(0xf1)](_0x220abf))return _0x220abf;return undefined;}
|