@lovrabet/rabetbase-cli 2.1.13 → 2.1.14-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/add.js +1 -1
- package/lib/commands/app/discover.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/remove.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app/use.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -0
- 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/dataset/rename.js +1 -0
- 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(_0x526d85,_0xd2df80){const _0xb9126d=a106_0x36ef,_0x461c24=_0x526d85();while(!![]){try{const _0x55768d=parseInt(_0xb9126d(0x1c5))/0x1*(parseInt(_0xb9126d(0x1c8))/0x2)+-parseInt(_0xb9126d(0x1ce))/0x3+-parseInt(_0xb9126d(0x1cd))/0x4*(-parseInt(_0xb9126d(0x1ca))/0x5)+-parseInt(_0xb9126d(0x1cf))/0x6+parseInt(_0xb9126d(0x1c4))/0x7*(parseInt(_0xb9126d(0x1c7))/0x8)+parseInt(_0xb9126d(0x1c3))/0x9*(-parseInt(_0xb9126d(0x1cc))/0xa)+-parseInt(_0xb9126d(0x1cb))/0xb*(-parseInt(_0xb9126d(0x1c6))/0xc);if(_0x55768d===_0xd2df80)break;else _0x461c24['push'](_0x461c24['shift']());}catch(_0x378336){_0x461c24['push'](_0x461c24['shift']());}}}(a106_0x3efd,0x5cc0b));function a106_0x36ef(_0x18be78,_0x16d8be){_0x18be78=_0x18be78-0x1c3;const _0x3efd87=a106_0x3efd();let _0x36ef9a=_0x3efd87[_0x18be78];return _0x36ef9a;}export function formatElapsed(_0x540a7){const _0x262b6b=a106_0x36ef,_0x1e0c0d=Date[_0x262b6b(0x1c9)]()-_0x540a7;if(_0x1e0c0d<0x3e8)return _0x1e0c0d+'ms';const _0x426e45=(_0x1e0c0d/0x3e8)['toFixed'](0x2),_0x26a3b5=_0x426e45['replace'](/\.?0+$/u,'');return _0x26a3b5+'s';}function a106_0x3efd(){const _0x1b56c9=['546952CNhpPV','2KNGKYm','now','136115yByiQG','4821916AUWvTO','40570HYvKuj','16oRWrGX','963729QlLcTr','950760QrkIMo','1143WUHZCN','14qMlIzv','690871ihWWmx','12vkiapW'];a106_0x3efd=function(){return _0x1b56c9;};return a106_0x3efd();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x258bc8,_0x19d1aa){const _0x8de260=a105_0x13b4,_0x50f3b4=_0x258bc8();while(!![]){try{const _0x2173ea=parseInt(_0x8de260(0xd2))/0x1*(parseInt(_0x8de260(0x10d))/0x2)+parseInt(_0x8de260(0xd8))/0x3*(parseInt(_0x8de260(0xf2))/0x4)+-parseInt(_0x8de260(0x12c))/0x5+-parseInt(_0x8de260(0x12a))/0x6+-parseInt(_0x8de260(0xc8))/0x7*(parseInt(_0x8de260(0x112))/0x8)+parseInt(_0x8de260(0x123))/0x9*(-parseInt(_0x8de260(0xdb))/0xa)+-parseInt(_0x8de260(0xff))/0xb*(-parseInt(_0x8de260(0x106))/0xc);if(_0x2173ea===_0x19d1aa)break;else _0x50f3b4['push'](_0x50f3b4['shift']());}catch(_0x1a1f48){_0x50f3b4['push'](_0x50f3b4['shift']());}}}(a105_0x42ea,0xbf7d6));import a105_0x4401cf from'path';import a105_0x1cc6c5 from'fs';import a105_0x3975c2 from'chalk';import a105_0x4f499c from'ora';import{guidedCreateProject}from'../../../commands/project/create/enhanced-guided-create.js';function a105_0x42ea(){const _0x378848=['info','318891PeiQUR','stableVersion','toLocaleString','258710RxOsjq','fail','\x20config\x20set\x20appcode\x20<app-code>\x27','keys','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','√\x20Pulled\x20','chdir','Project\x20name\x20cannot\x20be\x20empty','defaultApp','log','\x20|\x20AppCode:\x20','更新\x20package.json\x20失败','writeFileSync','join','parse','*\x20Configuring\x20AppCode\x20for\x20project\x20','Install\x20dependencies','...','\x20\x201.\x20Start\x20project:\x20','appCode','W_OK','belowMinimum','minimumVersion','8mbiyhK','name','√\x20Configuration\x20file\x20created,\x20Apps:\x20','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','trim','start','env','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','readFileSync','项目创建完成:\x20','cookie','1.0.0','rmSync','16295642PyQbEh','modelCount','utf8','needsUpgrade','项目创建失败:\x20','\x20dataset(s),\x20generated\x20','Format\x20code','12ngxVrj','cwd','\x20api\x20pull','\x20&&\x20','repeat','resolve','√\x20package.json\x20updated:\x20name=','142950OVcLmp','\x20√\x20','gray','production','配置应用AppCode:\x20','3600xnMwKN','\x20|\x20Default:\x20','bold','warn','cyan','stop','error','version','create','projectName','\x20run\x20start','package.json','更新\x20package.json\x20name','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','清理项目目录失败:\x20','success','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','9pQOmII','\x20\x202.\x20Pull\x20API\x20configuration:\x20','constants','\x20already\x20exists','message','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','apps','4955310UNyAbc','length','2211465JPYXIP','stringify','6251nWhWCR','existsSync','accessSync','description','配置应用AppCode失败','Copy\x20project\x20files','green','currentVersion','Project\x20name:\x20','projectCode','11ayVQbg','*\x20Pulling\x20API\x20configuration...','API\x20配置拉取异常','dirname','cd\x20'];a105_0x42ea=function(){return _0x378848;};return a105_0x42ea();}import{fetchModelList}from'../../../api/fetch-model-list.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{readConfig}from'../../../utils/config.js';import{CLI_BIN_NAME}from'../../../constant/cli.js';function a105_0x13b4(_0x3e37c8,_0x247bd4){_0x3e37c8=_0x3e37c8-0xc8;const _0x42eaeb=a105_0x42ea();let _0x13b404=_0x42eaeb[_0x3e37c8];return _0x13b404;}import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{copyProjectTemplate}from'../../../commands/project/create/use-copy-project-template.js';import{installDependencies}from'../../../commands/project/create/use-install-dependencies.js';import{formatProjectCode}from'../../../commands/project/create/use-format-code.js';import{logger}from'../../../utils/logger.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';import{getRabetbaseCliPackageRoot}from'../../../commands/project/create/project-template-path.js';export async function createApp(_0x334051){const _0x58a355=a105_0x13b4,_0x25280c=await checkCliVersion();(_0x25280c['needsUpgrade']||_0x25280c[_0x58a355(0xf0)])&&(printCliUpgradeWarning(_0x25280c),assertCliVersionSupported(_0x25280c),logger[_0x58a355(0xd7)](_0x58a355(0x11a),'CLI\x20版本检查',{'currentVersion':_0x25280c[_0x58a355(0xcf)],'stableVersion':_0x25280c[_0x58a355(0xd9)],'minimumVersion':_0x25280c[_0x58a355(0xf1)],'needsUpgrade':_0x25280c[_0x58a355(0x102)],'belowMinimum':_0x25280c['belowMinimum']}));if(_0x334051[_0x58a355(0xd1)]&&_0x334051[_0x58a355(0xee)])await runCreate({'projectName':_0x334051['projectCode'],'appCode':_0x334051['appCode'],'env':_0x334051[_0x58a355(0xf8)]},_0x334051);else{if(_0x334051[_0x58a355(0xd1)]){const _0x73a451=await selectSingleAppcode(_0x334051['cookie']);await runCreate({'projectName':_0x334051[_0x58a355(0xd1)],'appCode':_0x73a451||undefined,'env':_0x334051[_0x58a355(0xf8)]},_0x334051);}else await guidedCreateProject(_0xa72b28=>runCreate(_0xa72b28,_0x334051),_0x334051[_0x58a355(0xf8)],_0x334051['cookie']);}}async function runCreate(_0xffb8c4,_0x2f36cb){const _0x36c425=a105_0x13b4;if(!_0xffb8c4[_0x36c425(0x11b)]||_0xffb8c4[_0x36c425(0x11b)][_0x36c425(0xf6)]()==='')throw new Error(_0x36c425(0xe2));const _0x1e8e6f=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x1e8e6f['test'](_0xffb8c4[_0x36c425(0x11b)]))throw new Error(_0x36c425(0xf5));if(_0xffb8c4[_0x36c425(0x11b)][_0x36c425(0x12b)]>0x64)throw new Error(_0x36c425(0xf9));const _0x220f5a=a105_0x4401cf['resolve'](process[_0x36c425(0x107)](),_0xffb8c4[_0x36c425(0x11b)]);if(a105_0x1cc6c5[_0x36c425(0xc9)](_0x220f5a))throw new Error('Project\x20directory\x20'+_0xffb8c4[_0x36c425(0x11b)]+_0x36c425(0x126));try{a105_0x1cc6c5[_0x36c425(0xca)](a105_0x4401cf[_0x36c425(0xd5)](_0x220f5a),a105_0x1cc6c5[_0x36c425(0x125)][_0x36c425(0xef)]);}catch{throw new Error('Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions');}logger['setLogPath'](_0x220f5a),logger['info'](_0x36c425(0x11a),'开始创建项目:\x20'+_0xffb8c4[_0x36c425(0x11b)],{'projectDir':_0x220f5a,'appCode':_0xffb8c4['appCode']}),console[_0x36c425(0xe4)](),console[_0x36c425(0xe4)](a105_0x3975c2[_0x36c425(0xce)](_0x36c425(0x10e))+_0x36c425(0xd0)+a105_0x3975c2['green'](_0xffb8c4['projectName'])+(_0xffb8c4[_0x36c425(0xee)]?_0x36c425(0xe5)+a105_0x3975c2[_0x36c425(0x116)](_0xffb8c4[_0x36c425(0xee)]):''));try{await runTask(_0x36c425(0xcd),()=>copyProjectTemplate(_0xffb8c4[_0x36c425(0x11b)])),await updatePackageJsonName(_0xffb8c4[_0x36c425(0x11b)]),await runTask(_0x36c425(0xeb),()=>installDependencies(_0xffb8c4[_0x36c425(0x11b)])),await runTask(_0x36c425(0x105),()=>formatProjectCode(_0xffb8c4['projectName'])),await configureAppCode(_0xffb8c4[_0x36c425(0x11b)],_0xffb8c4[_0x36c425(0xee)]||'',_0xffb8c4[_0x36c425(0xf8)]);let _0x75af38=![];if(_0xffb8c4[_0x36c425(0xee)]){console[_0x36c425(0xe4)](_0x36c425(0xd3));const _0x381103=process[_0x36c425(0x107)]();try{process[_0x36c425(0xe1)](_0x220f5a);const _0x34d75a=_0xffb8c4['env']||_0x36c425(0x110);initEnv(_0x34d75a);const {configArray:_0x34ad06}=await fetchModelList(_0xffb8c4['appCode'],_0x2f36cb[_0x36c425(0xfc)]||''),_0x11f1bb=DEFAULT_API_DIR,_0x37a502=await generateApiFile(_0x34ad06,'',_0xffb8c4['appCode'],!![],_0x34d75a,_0x11f1bb);console[_0x36c425(0xe4)](_0x36c425(0xe0)+_0x34ad06[_0x36c425(0x12b)]+_0x36c425(0x104)+_0x37a502[_0x36c425(0x100)]+'\x20model(s)'),logger['info'](_0x36c425(0x11a),'API\x20configuration\x20pulled:\x20'+_0xffb8c4[_0x36c425(0xee)]);}catch(_0x3a82f0){_0x75af38=!![],console[_0x36c425(0xe4)](_0x36c425(0x11f)),logger[_0x36c425(0x115)](_0x36c425(0x11a),_0x36c425(0xd4),{'error':_0x3a82f0 instanceof Error?_0x3a82f0[_0x36c425(0x127)]:String(_0x3a82f0)});}finally{process[_0x36c425(0xe1)](_0x381103);}}logger[_0x36c425(0x121)]('create',_0x36c425(0xfb)+_0xffb8c4[_0x36c425(0x11b)]),console[_0x36c425(0xe4)](),console['log'](a105_0x3975c2[_0x36c425(0xce)]('─'[_0x36c425(0x10a)](0x3c))),console[_0x36c425(0xe4)](a105_0x3975c2[_0x36c425(0x116)][_0x36c425(0x114)]('🚀\x20Next\x20Steps:')),console[_0x36c425(0xe4)](),console[_0x36c425(0xe4)](_0x36c425(0xed)+a105_0x3975c2[_0x36c425(0x116)]['bold'](_0x36c425(0xd6)+_0xffb8c4[_0x36c425(0x11b)]+_0x36c425(0x109)+CLI_BIN_NAME+_0x36c425(0x11c))),_0x75af38&&console[_0x36c425(0xe4)](_0x36c425(0x124)+a105_0x3975c2['cyan'][_0x36c425(0x114)](CLI_BIN_NAME+_0x36c425(0x108))),console[_0x36c425(0xe4)](a105_0x3975c2[_0x36c425(0xce)]('─'['repeat'](0x3c)));}catch(_0x32ae39){logger[_0x36c425(0x118)](_0x36c425(0x11a),_0x36c425(0x103)+_0xffb8c4['projectName'],{'error':_0x32ae39 instanceof Error?_0x32ae39[_0x36c425(0x127)]:String(_0x32ae39)});try{a105_0x1cc6c5[_0x36c425(0xc9)](_0x220f5a)&&(console[_0x36c425(0xe4)](_0x36c425(0x122)+_0x220f5a),a105_0x1cc6c5[_0x36c425(0xfe)](_0x220f5a,{'recursive':!![],'force':!![]}));}catch{logger[_0x36c425(0x115)](_0x36c425(0x11a),_0x36c425(0x120)+_0x220f5a);}throw _0x32ae39;}}async function runTask(_0x502419,_0x2e2c9b){const _0x38a4ef=a105_0x13b4,_0x5a85c3=a105_0x4f499c(_0x502419+_0x38a4ef(0xec))[_0x38a4ef(0xf7)]();try{const _0x2b2259=await _0x2e2c9b();_0x5a85c3[_0x38a4ef(0x117)](),console[_0x38a4ef(0xe4)](''+a105_0x3975c2[_0x38a4ef(0xce)](_0x38a4ef(0x10e))+_0x502419+'\x20'+a105_0x3975c2[_0x38a4ef(0x10f)]('['+_0x2b2259+']'));}catch(_0x1714f6){_0x5a85c3[_0x38a4ef(0xdc)](_0x502419);throw _0x1714f6;}}async function updatePackageJsonName(_0xab2321){const _0x30891c=a105_0x13b4,_0x1de533=a105_0x4401cf[_0x30891c(0x10b)](process[_0x30891c(0x107)](),_0xab2321),_0x233609=a105_0x4401cf['join'](_0x1de533,_0x30891c(0x11d));try{console[_0x30891c(0xe4)](_0x30891c(0xdf));const _0x58467e=getRabetbaseCliPackageRoot(),_0x3c0576=a105_0x4401cf[_0x30891c(0xe8)](_0x58467e,_0x30891c(0x11d));let _0x14154a=_0x30891c(0xfd);try{const _0x5eaafa=JSON[_0x30891c(0xe9)](a105_0x1cc6c5['readFileSync'](_0x3c0576,_0x30891c(0x101)));_0x14154a=_0x5eaafa[_0x30891c(0x119)]||_0x30891c(0xfd);}catch{}const _0x45bd9b=a105_0x1cc6c5[_0x30891c(0xfa)](_0x233609,'utf8'),_0x4d97bc=JSON[_0x30891c(0xe9)](_0x45bd9b);_0x4d97bc[_0x30891c(0xf3)]=_0xab2321,_0x4d97bc[_0x30891c(0xcb)]=_0xab2321+'\x20Generated\x20by\x20rabetbase\x20cli\x20'+_0x14154a,a105_0x1cc6c5[_0x30891c(0xe7)](_0x233609,JSON[_0x30891c(0x12d)](_0x4d97bc,null,0x2)+'\x0a',_0x30891c(0x101)),console[_0x30891c(0xe4)](_0x30891c(0x10c)+_0xab2321),logger[_0x30891c(0xd7)]('create',_0x30891c(0x11e));}catch(_0x2076d4){logger['error'](_0x30891c(0x11a),_0x30891c(0xe6));throw _0x2076d4;}}async function configureAppCode(_0xdcdd29,_0x4817f1,_0x570f3b){const _0x3d5b25=a105_0x13b4,_0x111442=a105_0x4401cf['resolve'](process[_0x3d5b25(0x107)](),_0xdcdd29),_0x2b7101=a105_0x4401cf[_0x3d5b25(0xe8)](_0x111442,NEW_CONFIG_NAME);try{_0x4817f1?console[_0x3d5b25(0xe4)](_0x3d5b25(0xea)+_0xdcdd29+':\x20'+_0x4817f1):console[_0x3d5b25(0xe4)](_0x3d5b25(0x128)+_0xdcdd29);const _0x14d0c2=getRabetbaseCliPackageRoot(),_0x47d121=a105_0x4401cf[_0x3d5b25(0xe8)](_0x14d0c2,_0x3d5b25(0x11d));let _0x53a7b9=_0x3d5b25(0xfd);try{const _0x1f698b=JSON['parse'](a105_0x1cc6c5[_0x3d5b25(0xfa)](_0x47d121,_0x3d5b25(0x101)));_0x53a7b9=_0x1f698b['version']||_0x3d5b25(0xfd);}catch{}const _0x53b57b=readConfig(),_0x1a8f56=typeof _0x53b57b[_0x3d5b25(0xf8)]==='string'?_0x53b57b[_0x3d5b25(0xf8)]:undefined,_0x532292={};for(const _0x283358 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x53b57b[_0x283358]!=null)_0x532292[_0x283358]=_0x53b57b[_0x283358];}const _0x3935e5=buildCanonicalProjectConfig(_0x532292,{'appCodes':_0x4817f1?[_0x4817f1]:[],'env':_0x570f3b||_0x1a8f56||_0x3d5b25(0x110),'metadata':{'createdAt':new Date()[_0x3d5b25(0xda)](),'version':_0x53a7b9}});writeConfigFile(_0x2b7101,_0x3935e5),_0x4817f1?console['log'](_0x3d5b25(0xf4)+Object[_0x3d5b25(0xde)](_0x3935e5[_0x3d5b25(0x129)]||{})[_0x3d5b25(0xe8)](',\x20')+_0x3d5b25(0x113)+_0x3935e5[_0x3d5b25(0xe3)]):console[_0x3d5b25(0xe4)]('√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27'+CLI_BIN_NAME+_0x3d5b25(0xdd)),logger[_0x3d5b25(0xd7)]('create',_0x3d5b25(0x111)+_0x4817f1);}catch(_0x12bce5){logger[_0x3d5b25(0x118)]('create',_0x3d5b25(0xcc));}}
|
|
1
|
+
(function(_0x1e039a,_0x2b18ee){const _0x256c17=a107_0x4d70,_0x529cd5=_0x1e039a();while(!![]){try{const _0x2be60c=-parseInt(_0x256c17(0x1d1))/0x1*(parseInt(_0x256c17(0x1ca))/0x2)+-parseInt(_0x256c17(0x201))/0x3*(-parseInt(_0x256c17(0x1ac))/0x4)+-parseInt(_0x256c17(0x1c2))/0x5*(-parseInt(_0x256c17(0x1b7))/0x6)+parseInt(_0x256c17(0x205))/0x7+-parseInt(_0x256c17(0x1f5))/0x8+parseInt(_0x256c17(0x1d5))/0x9+parseInt(_0x256c17(0x204))/0xa*(-parseInt(_0x256c17(0x1b3))/0xb);if(_0x2be60c===_0x2b18ee)break;else _0x529cd5['push'](_0x529cd5['shift']());}catch(_0x51abc0){_0x529cd5['push'](_0x529cd5['shift']());}}}(a107_0x3ee5,0x25fd0));import a107_0x39e381 from'path';import a107_0x2e2cc0 from'fs';function a107_0x4d70(_0x40d59a,_0x1078ce){_0x40d59a=_0x40d59a-0x1ab;const _0x3ee539=a107_0x3ee5();let _0x4d7036=_0x3ee539[_0x40d59a];return _0x4d7036;}import a107_0x4803e0 from'chalk';import a107_0x323bf7 from'ora';import{guidedCreateProject}from'../../../commands/project/create/enhanced-guided-create.js';import{fetchModelList}from'../../../api/fetch-model-list.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{readConfig}from'../../../utils/config.js';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{copyProjectTemplate}from'../../../commands/project/create/use-copy-project-template.js';import{installDependencies}from'../../../commands/project/create/use-install-dependencies.js';import{formatProjectCode}from'../../../commands/project/create/use-format-code.js';import{logger}from'../../../utils/logger.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';import{getRabetbaseCliPackageRoot}from'../../../commands/project/create/project-template-path.js';export async function createApp(_0x22d2ae){const _0x5783a1=a107_0x4d70,_0x40fdfc=await checkCliVersion();(_0x40fdfc[_0x5783a1(0x1d6)]||_0x40fdfc[_0x5783a1(0x1d8)])&&(printCliUpgradeWarning(_0x40fdfc),assertCliVersionSupported(_0x40fdfc),logger[_0x5783a1(0x1ad)](_0x5783a1(0x1fc),_0x5783a1(0x1da),{'currentVersion':_0x40fdfc[_0x5783a1(0x1cb)],'stableVersion':_0x40fdfc[_0x5783a1(0x1c7)],'minimumVersion':_0x40fdfc['minimumVersion'],'needsUpgrade':_0x40fdfc[_0x5783a1(0x1d6)],'belowMinimum':_0x40fdfc[_0x5783a1(0x1d8)]}));if(_0x22d2ae[_0x5783a1(0x1fa)]&&_0x22d2ae['appCode'])await runCreate({'projectName':_0x22d2ae[_0x5783a1(0x1fa)],'appCode':_0x22d2ae[_0x5783a1(0x1b0)],'env':_0x22d2ae[_0x5783a1(0x1dc)]},_0x22d2ae);else{if(_0x22d2ae[_0x5783a1(0x1fa)]){const _0x169d78=await selectSingleAppcode(_0x22d2ae[_0x5783a1(0x1cc)]);await runCreate({'projectName':_0x22d2ae[_0x5783a1(0x1fa)],'appCode':_0x169d78||undefined,'env':_0x22d2ae['env']},_0x22d2ae);}else await guidedCreateProject(_0xb20ee8=>runCreate(_0xb20ee8,_0x22d2ae),_0x22d2ae[_0x5783a1(0x1dc)],_0x22d2ae[_0x5783a1(0x1cc)]);}}async function runCreate(_0x109967,_0x5875f8){const _0x243d4b=a107_0x4d70;if(!_0x109967[_0x243d4b(0x1cf)]||_0x109967[_0x243d4b(0x1cf)][_0x243d4b(0x1ab)]()==='')throw new Error('Project\x20name\x20cannot\x20be\x20empty');const _0x349319=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x349319[_0x243d4b(0x1dd)](_0x109967['projectName']))throw new Error('Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters');if(_0x109967['projectName'][_0x243d4b(0x1f1)]>0x64)throw new Error(_0x243d4b(0x1e8));const _0x5444e1=a107_0x39e381[_0x243d4b(0x1e0)](process[_0x243d4b(0x1b9)](),_0x109967[_0x243d4b(0x1cf)]);if(a107_0x2e2cc0['existsSync'](_0x5444e1))throw new Error('Project\x20directory\x20'+_0x109967[_0x243d4b(0x1cf)]+_0x243d4b(0x1cd));try{a107_0x2e2cc0[_0x243d4b(0x1ec)](a107_0x39e381[_0x243d4b(0x1de)](_0x5444e1),a107_0x2e2cc0[_0x243d4b(0x1eb)][_0x243d4b(0x1d0)]);}catch{throw new Error(_0x243d4b(0x1b5));}logger[_0x243d4b(0x1c9)](_0x5444e1),logger[_0x243d4b(0x1ad)](_0x243d4b(0x1fc),_0x243d4b(0x1f7)+_0x109967[_0x243d4b(0x1cf)],{'projectDir':_0x5444e1,'appCode':_0x109967[_0x243d4b(0x1b0)]}),console[_0x243d4b(0x1b8)](),console[_0x243d4b(0x1b8)](a107_0x4803e0[_0x243d4b(0x1d7)](_0x243d4b(0x1bf))+_0x243d4b(0x1bc)+a107_0x4803e0[_0x243d4b(0x1d7)](_0x109967[_0x243d4b(0x1cf)])+(_0x109967[_0x243d4b(0x1b0)]?_0x243d4b(0x1c8)+a107_0x4803e0[_0x243d4b(0x1d3)](_0x109967[_0x243d4b(0x1b0)]):''));try{await runTask(_0x243d4b(0x1ef),()=>copyProjectTemplate(_0x109967[_0x243d4b(0x1cf)])),await updatePackageJsonName(_0x109967[_0x243d4b(0x1cf)]),await runTask(_0x243d4b(0x1bb),()=>installDependencies(_0x109967['projectName'])),await runTask(_0x243d4b(0x1fd),()=>formatProjectCode(_0x109967[_0x243d4b(0x1cf)])),await configureAppCode(_0x109967[_0x243d4b(0x1cf)],_0x109967['appCode']||'',_0x109967[_0x243d4b(0x1dc)]);let _0x30252d=![];if(_0x109967[_0x243d4b(0x1b0)]){console[_0x243d4b(0x1b8)]('*\x20Pulling\x20API\x20configuration...');const _0x526efc=process[_0x243d4b(0x1b9)]();try{process[_0x243d4b(0x202)](_0x5444e1);const _0x592ab7=_0x109967[_0x243d4b(0x1dc)]||'production';initEnv(_0x592ab7);const {configArray:_0xaf736a}=await fetchModelList(_0x109967['appCode'],_0x5875f8['cookie']||''),_0x427d2a=DEFAULT_API_DIR,_0x3ad768=await generateApiFile(_0xaf736a,'',_0x109967[_0x243d4b(0x1b0)],!![],_0x592ab7,_0x427d2a);console['log'](_0x243d4b(0x1e3)+_0xaf736a[_0x243d4b(0x1f1)]+_0x243d4b(0x1fb)+_0x3ad768[_0x243d4b(0x1ee)]+_0x243d4b(0x1b6)),logger[_0x243d4b(0x1ad)]('create','API\x20configuration\x20pulled:\x20'+_0x109967['appCode']);}catch(_0x278e41){_0x30252d=!![],console[_0x243d4b(0x1b8)](_0x243d4b(0x1ae)),logger[_0x243d4b(0x200)]('create',_0x243d4b(0x1f4),{'error':_0x278e41 instanceof Error?_0x278e41[_0x243d4b(0x1df)]:String(_0x278e41)});}finally{process[_0x243d4b(0x202)](_0x526efc);}}logger['success']('create',_0x243d4b(0x1e7)+_0x109967[_0x243d4b(0x1cf)]),console[_0x243d4b(0x1b8)](),console[_0x243d4b(0x1b8)](a107_0x4803e0[_0x243d4b(0x1d7)]('─'[_0x243d4b(0x1be)](0x3c))),console[_0x243d4b(0x1b8)](a107_0x4803e0[_0x243d4b(0x1d3)][_0x243d4b(0x207)](_0x243d4b(0x1f0))),console[_0x243d4b(0x1b8)](),console[_0x243d4b(0x1b8)](_0x243d4b(0x1e4)+a107_0x4803e0[_0x243d4b(0x1d3)]['bold'](_0x243d4b(0x1db)+_0x109967[_0x243d4b(0x1cf)]+_0x243d4b(0x1f2)+CLI_BIN_NAME+'\x20run\x20start')),_0x30252d&&console[_0x243d4b(0x1b8)]('\x20\x202.\x20Pull\x20API\x20configuration:\x20'+a107_0x4803e0['cyan'][_0x243d4b(0x207)](CLI_BIN_NAME+'\x20api\x20pull')),console['log'](a107_0x4803e0[_0x243d4b(0x1d7)]('─'['repeat'](0x3c)));}catch(_0x3ac4f4){logger[_0x243d4b(0x1ff)]('create',_0x243d4b(0x203)+_0x109967[_0x243d4b(0x1cf)],{'error':_0x3ac4f4 instanceof Error?_0x3ac4f4[_0x243d4b(0x1df)]:String(_0x3ac4f4)});try{a107_0x2e2cc0['existsSync'](_0x5444e1)&&(console[_0x243d4b(0x1b8)](_0x243d4b(0x1b4)+_0x5444e1),a107_0x2e2cc0[_0x243d4b(0x1c3)](_0x5444e1,{'recursive':!![],'force':!![]}));}catch{logger['warn'](_0x243d4b(0x1fc),_0x243d4b(0x1c1)+_0x5444e1);}throw _0x3ac4f4;}}async function runTask(_0x48a1ca,_0x346980){const _0x228aa6=a107_0x4d70,_0x1d672a=a107_0x323bf7(_0x48a1ca+'...')[_0x228aa6(0x1ea)]();try{const _0x2761c7=await _0x346980();_0x1d672a[_0x228aa6(0x1f8)](),console[_0x228aa6(0x1b8)](''+a107_0x4803e0['green'](_0x228aa6(0x1bf))+_0x48a1ca+'\x20'+a107_0x4803e0[_0x228aa6(0x1ed)]('['+_0x2761c7+']'));}catch(_0x399efc){_0x1d672a[_0x228aa6(0x1fe)](_0x48a1ca);throw _0x399efc;}}async function updatePackageJsonName(_0x13db2d){const _0x4c7c2d=a107_0x4d70,_0x34d99d=a107_0x39e381[_0x4c7c2d(0x1e0)](process[_0x4c7c2d(0x1b9)](),_0x13db2d),_0x5acb01=a107_0x39e381[_0x4c7c2d(0x1e2)](_0x34d99d,_0x4c7c2d(0x1c6));try{console['log'](_0x4c7c2d(0x1ce));const _0x1f14a8=getRabetbaseCliPackageRoot(),_0x4407e3=a107_0x39e381['join'](_0x1f14a8,_0x4c7c2d(0x1c6));let _0x4290b7='1.0.0';try{const _0x4337fe=JSON[_0x4c7c2d(0x1e9)](a107_0x2e2cc0['readFileSync'](_0x4407e3,'utf8'));_0x4290b7=_0x4337fe[_0x4c7c2d(0x1d4)]||_0x4c7c2d(0x1f9);}catch{}const _0x25a095=a107_0x2e2cc0[_0x4c7c2d(0x1b2)](_0x5acb01,'utf8'),_0x5b198c=JSON['parse'](_0x25a095);_0x5b198c['name']=_0x13db2d,_0x5b198c[_0x4c7c2d(0x1c4)]=_0x13db2d+_0x4c7c2d(0x1af)+_0x4290b7,a107_0x2e2cc0[_0x4c7c2d(0x1c0)](_0x5acb01,JSON[_0x4c7c2d(0x1e5)](_0x5b198c,null,0x2)+'\x0a',_0x4c7c2d(0x1e1)),console[_0x4c7c2d(0x1b8)](_0x4c7c2d(0x1f3)+_0x13db2d),logger['info']('create',_0x4c7c2d(0x1d9));}catch(_0x23a825){logger['error'](_0x4c7c2d(0x1fc),_0x4c7c2d(0x1ba));throw _0x23a825;}}async function configureAppCode(_0x2dc8c6,_0x454262,_0x408a46){const _0x52f0ee=a107_0x4d70,_0xbd6200=a107_0x39e381['resolve'](process[_0x52f0ee(0x1b9)](),_0x2dc8c6),_0x39e44a=a107_0x39e381[_0x52f0ee(0x1e2)](_0xbd6200,NEW_CONFIG_NAME);try{_0x454262?console[_0x52f0ee(0x1b8)](_0x52f0ee(0x208)+_0x2dc8c6+':\x20'+_0x454262):console[_0x52f0ee(0x1b8)]('*\x20Creating\x20configuration\x20file\x20for\x20project\x20'+_0x2dc8c6);const _0x4f0522=getRabetbaseCliPackageRoot(),_0x299b33=a107_0x39e381[_0x52f0ee(0x1e2)](_0x4f0522,'package.json');let _0xc0a566=_0x52f0ee(0x1f9);try{const _0x5ac4d8=JSON['parse'](a107_0x2e2cc0[_0x52f0ee(0x1b2)](_0x299b33,_0x52f0ee(0x1e1)));_0xc0a566=_0x5ac4d8['version']||_0x52f0ee(0x1f9);}catch{}const _0x33cbb0=readConfig(),_0x481195=typeof _0x33cbb0[_0x52f0ee(0x1dc)]==='string'?_0x33cbb0[_0x52f0ee(0x1dc)]:undefined,_0x3f9e61={};for(const _0x961174 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x33cbb0[_0x961174]!=null)_0x3f9e61[_0x961174]=_0x33cbb0[_0x961174];}const _0x2e3898=buildCanonicalProjectConfig(_0x3f9e61,{'appCodes':_0x454262?[_0x454262]:[],'env':_0x408a46||_0x481195||_0x52f0ee(0x1d2),'metadata':{'createdAt':new Date()[_0x52f0ee(0x1e6)](),'version':_0xc0a566}});writeConfigFile(_0x39e44a,_0x2e3898),_0x454262?console[_0x52f0ee(0x1b8)]('√\x20Configuration\x20file\x20created,\x20Apps:\x20'+Object[_0x52f0ee(0x1bd)](_0x2e3898[_0x52f0ee(0x1f6)]||{})[_0x52f0ee(0x1e2)](',\x20')+'\x20|\x20Default:\x20'+_0x2e3898[_0x52f0ee(0x1c5)]):console[_0x52f0ee(0x1b8)]('√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27'+CLI_BIN_NAME+_0x52f0ee(0x206)),logger[_0x52f0ee(0x1ad)](_0x52f0ee(0x1fc),_0x52f0ee(0x1b1)+_0x454262);}catch(_0x59f09d){logger[_0x52f0ee(0x1ff)](_0x52f0ee(0x1fc),'配置应用AppCode失败');}}function a107_0x3ee5(){const _0x10771a=['🚀\x20Next\x20Steps:','length','\x20&&\x20','√\x20package.json\x20updated:\x20name=','API\x20配置拉取异常','1993912VckIAc','apps','开始创建项目:\x20','stop','1.0.0','projectCode','\x20dataset(s),\x20generated\x20','create','Format\x20code','fail','error','warn','826854CQnpOR','chdir','项目创建失败:\x20','10hnqUDO','2104697BoyBXF','\x20config\x20set\x20appcode\x20<app-code>\x27','bold','*\x20Configuring\x20AppCode\x20for\x20project\x20','trim','4KNpGFU','info','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','\x20Generated\x20by\x20rabetbase\x20cli\x20','appCode','配置应用AppCode:\x20','readFileSync','5160903WgicqH','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','\x20model(s)','22290RnthSN','log','cwd','更新\x20package.json\x20失败','Install\x20dependencies','Project\x20name:\x20','keys','repeat','\x20√\x20','writeFileSync','清理项目目录失败:\x20','385ivkNNs','rmSync','description','defaultApp','package.json','stableVersion','\x20|\x20AppCode:\x20','setLogPath','5630RIaLuo','currentVersion','cookie','\x20already\x20exists','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','projectName','W_OK','17wIeBrC','production','cyan','version','535707cavQzB','needsUpgrade','green','belowMinimum','更新\x20package.json\x20name','CLI\x20版本检查','cd\x20','env','test','dirname','message','resolve','utf8','join','√\x20Pulled\x20','\x20\x201.\x20Start\x20project:\x20','stringify','toLocaleString','项目创建完成:\x20','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','parse','start','constants','accessSync','gray','modelCount','Copy\x20project\x20files'];a107_0x3ee5=function(){return _0x10771a;};return a107_0x3ee5();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2a7773,_0x41175e){const _0x961384=a108_0x206e,_0x2ed405=_0x2a7773();while(!![]){try{const _0xd9ffa2=-parseInt(_0x961384(0x1b5))/0x1+parseInt(_0x961384(0x1d1))/0x2*(parseInt(_0x961384(0x1c9))/0x3)+-parseInt(_0x961384(0x1b3))/0x4*(-parseInt(_0x961384(0x1bf))/0x5)+-parseInt(_0x961384(0x1a6))/0x6+parseInt(_0x961384(0x19f))/0x7*(-parseInt(_0x961384(0x1b2))/0x8)+parseInt(_0x961384(0x1c5))/0x9+parseInt(_0x961384(0x19d))/0xa*(parseInt(_0x961384(0x1a1))/0xb);if(_0xd9ffa2===_0x41175e)break;else _0x2ed405['push'](_0x2ed405['shift']());}catch(_0x1025db){_0x2ed405['push'](_0x2ed405['shift']());}}}(a108_0x26af,0x350a0));import a108_0x48c9ab from'path';import a108_0x4124cc from'fs/promises';import{existsSync}from'fs';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{exec,execSync}from'child_process';import{copyDirectory}from'../../../utils/copy-directory.js';function a108_0x26af(){const _0x377b51=['npm','writeFile','39xUZbae','\x20\x20Pulling\x20API\x20configuration...','join','production','*\x20Creating\x20project\x20','readFile','Project\x20name\x20cannot\x20be\x20empty.','env','38078MmrQIi','\x0a√\x20Project\x20','log','dirname','14590qThBIq','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','124271GehdtE','length','407suoygS','\x20\x20Installing\x20dependencies...','test','ignore','cwd','1588662WnlPXs','\x20model(s)','\x20\x20√\x20Project\x20template\x20created','resolve','\x20created\x20successfully!','package.json','utf-8','bun','validation','\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`','string','Use\x20a\x20different\x20project\x20name.','72vXhOuE','416koxncI','Cannot\x20create\x20project\x20in\x20current\x20directory.','117554CwOAao','description','...','\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)','\x20\x20√\x20Code\x20formatted','\x22\x20already\x20exists.','Project\x20directory\x20\x22','\x20\x20√\x20Configuration\x20file\x20created','name','chdir','17215rZGFrb','constants','modelCount','Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','toLocaleString','Check\x20directory\x20permissions.','898146LterBW','\x20dataset(s),\x20generated\x20'];a108_0x26af=function(){return _0x377b51;};return a108_0x26af();}import{promisify}from'util';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';function a108_0x206e(_0x2971f5,_0xc883fc){_0x2971f5=_0x2971f5-0x19b;const _0x26afa9=a108_0x26af();let _0x206ec9=_0x26afa9[_0x2971f5];return _0x206ec9;}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(_0x17dfd7,_0xc42b38,_0x5422fa,_0x352576){const _0x57533c=a108_0x206e,_0x142ecf=await checkCliVersion();(_0x142ecf['needsUpgrade']||_0x142ecf['belowMinimum'])&&(printCliUpgradeWarning(_0x142ecf),assertCliVersionSupported(_0x142ecf));if(!_0x17dfd7||_0x17dfd7['trim']()==='')throw CliErrors[_0x57533c(0x1ae)](_0x57533c(0x1cf));const _0x197a9a=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x197a9a[_0x57533c(0x1a3)](_0x17dfd7))throw CliErrors[_0x57533c(0x1ae)]('Project\x20name\x20contains\x20invalid\x20characters.',_0x57533c(0x1c2));if(_0x17dfd7[_0x57533c(0x1a0)]>0x64)throw CliErrors[_0x57533c(0x1ae)](_0x57533c(0x19e));const _0x301656=a108_0x48c9ab[_0x57533c(0x1a9)](process[_0x57533c(0x1a5)](),_0x17dfd7);if(existsSync(_0x301656))throw CliErrors[_0x57533c(0x1ae)](_0x57533c(0x1bb)+_0x17dfd7+_0x57533c(0x1ba),_0x57533c(0x1b1));try{const _0x4aad36=a108_0x48c9ab[_0x57533c(0x19c)](_0x301656);await a108_0x4124cc['access'](_0x4aad36,a108_0x4124cc[_0x57533c(0x1c0)]['W_OK']);}catch{throw CliErrors[_0x57533c(0x1ae)](_0x57533c(0x1b4),_0x57533c(0x1c4));}try{console[_0x57533c(0x19b)](_0x57533c(0x1cd)+_0x17dfd7+_0x57533c(0x1b7));const _0x11242e=getSubAppReactDemoTemplateDir();await copyDirectory(_0x11242e,_0x301656),console[_0x57533c(0x19b)](_0x57533c(0x1a8)),await updatePackageJsonName(_0x17dfd7),console[_0x57533c(0x19b)]('\x20\x20√\x20package.json\x20updated'),console[_0x57533c(0x19b)](_0x57533c(0x1a2)),console[_0x57533c(0x19b)](_0x57533c(0x1b8)),await formatCode(_0x301656),console[_0x57533c(0x19b)](_0x57533c(0x1b9)),await configureProject(_0x17dfd7,_0x5422fa,_0xc42b38),console[_0x57533c(0x19b)](_0x57533c(0x1bc)),_0x5422fa&&await pullApiConfig(_0x301656,_0x5422fa,_0xc42b38,_0x352576),console['log'](_0x57533c(0x1d2)+_0x17dfd7+_0x57533c(0x1aa)),console[_0x57533c(0x19b)]('\x0a\x20\x20cd\x20'+_0x17dfd7),console[_0x57533c(0x19b)]('\x20\x20rabetbase\x20run\x20start\x0a');}catch(_0x504405){try{existsSync(_0x301656)&&await a108_0x4124cc['rm'](_0x301656,{'recursive':!![],'force':!![]});}catch{}throw _0x504405;}}async function updatePackageJsonName(_0x2bd50a){const _0x3e0600=a108_0x206e,_0x19e148=a108_0x48c9ab[_0x3e0600(0x1a9)](process[_0x3e0600(0x1a5)](),_0x2bd50a),_0x23455d=a108_0x48c9ab[_0x3e0600(0x1cb)](_0x19e148,_0x3e0600(0x1ab)),_0x16c302=await a108_0x4124cc[_0x3e0600(0x1ce)](_0x23455d,_0x3e0600(0x1ac)),_0x320a98=JSON['parse'](_0x16c302);_0x320a98[_0x3e0600(0x1bd)]=_0x2bd50a,_0x320a98[_0x3e0600(0x1b6)]='A\x20project\x20created\x20with\x20Lovrabet\x20CLI',await a108_0x4124cc[_0x3e0600(0x1c8)](_0x23455d,JSON['stringify'](_0x320a98,null,0x2)+'\x0a');}function detectPackageManager(){const _0x1faee7=a108_0x206e;try{return execSync('bun\x20--version',{'stdio':_0x1faee7(0x1a4)}),_0x1faee7(0x1ad);}catch{return _0x1faee7(0x1c7);}}async function formatCode(_0x218375){try{await execAsync('bun\x20run\x20format',{'cwd':_0x218375});}catch{}}async function configureProject(_0x397b07,_0x57c811,_0x5f2b12){const _0x4ce220=a108_0x206e,_0xae6de7=a108_0x48c9ab[_0x4ce220(0x1a9)](process[_0x4ce220(0x1a5)](),_0x397b07),_0x231a46=a108_0x48c9ab['join'](_0xae6de7,NEW_CONFIG_NAME),_0x147f52=readConfig(),_0x2d8806=typeof _0x147f52[_0x4ce220(0x1d0)]===_0x4ce220(0x1b0)?_0x147f52['env']:undefined,_0x4451d8={};for(const _0x2b83b8 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x147f52[_0x2b83b8]!=null)_0x4451d8[_0x2b83b8]=_0x147f52[_0x2b83b8];}const _0x6f25ae=buildCanonicalProjectConfig(_0x4451d8,{'appCodes':_0x57c811?[_0x57c811]:[],'env':_0x5f2b12||_0x2d8806||'production','metadata':{'createdAt':new Date()[_0x4ce220(0x1c3)](),'version':getCliVersion()}});writeConfigFile(_0x231a46,_0x6f25ae);}async function pullApiConfig(_0x582745,_0x1819ba,_0x4616f1,_0x22531a){const _0x28a15e=a108_0x206e,_0x4c9ac4=process[_0x28a15e(0x1a5)]();try{process[_0x28a15e(0x1be)](_0x582745);const _0x5d6a50=_0x4616f1||_0x28a15e(0x1cc);initEnv(_0x5d6a50),console['log'](_0x28a15e(0x1ca));const {configArray:_0x2477d6}=await fetchModelList(_0x1819ba,_0x22531a||''),_0x1eb249=await generateApiFile(_0x2477d6,'',_0x1819ba,!![],_0x5d6a50,DEFAULT_API_DIR);console[_0x28a15e(0x19b)]('\x20\x20√\x20Pulled\x20'+_0x2477d6['length']+_0x28a15e(0x1c6)+_0x1eb249[_0x28a15e(0x1c1)]+_0x28a15e(0x1a7));}catch(_0x73a4a5){console['log'](_0x28a15e(0x1af)+CLI_BIN_NAME+'\x20api\x20pull`\x20manually\x20later.');}finally{process[_0x28a15e(0x1be)](_0x4c9ac4);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a109_0x32ac(){const _0x2d3504=['9519rOtIms','2403306zXevfG','12133152maavFA','templates','projects','join','286jQHXGD','784AlHMDc','7225sffxLs','resolve','2145GBHUSv','87460SxBRBu','984uOYibA','1348BkiiuK','../../../../','3386QuueEZ','34783MzVeII','dirname','sub-app-react-demo'];a109_0x32ac=function(){return _0x2d3504;};return a109_0x32ac();}const a109_0x2ee491=a109_0x4da8;(function(_0x4e187d,_0xfb0c63){const _0x47f7fe=a109_0x4da8,_0x48d38f=_0x4e187d();while(!![]){try{const _0x4d7f84=-parseInt(_0x47f7fe(0x15c))/0x1*(-parseInt(_0x47f7fe(0x165))/0x2)+-parseInt(_0x47f7fe(0x169))/0x3*(-parseInt(_0x47f7fe(0x163))/0x4)+parseInt(_0x47f7fe(0x15e))/0x5*(parseInt(_0x47f7fe(0x162))/0x6)+-parseInt(_0x47f7fe(0x166))/0x7*(parseInt(_0x47f7fe(0x15d))/0x8)+parseInt(_0x47f7fe(0x16a))/0x9+parseInt(_0x47f7fe(0x161))/0xa*(-parseInt(_0x47f7fe(0x160))/0xb)+parseInt(_0x47f7fe(0x16b))/0xc;if(_0x4d7f84===_0xfb0c63)break;else _0x48d38f['push'](_0x48d38f['shift']());}catch(_0x132f42){_0x48d38f['push'](_0x48d38f['shift']());}}}(a109_0x32ac,0xd5e91));import a109_0xcf633e from'node:path';import{fileURLToPath}from'node:url';const __dirname=a109_0xcf633e[a109_0x2ee491(0x167)](fileURLToPath(import.meta.url));function a109_0x4da8(_0x23b66f,_0x59ca0){_0x23b66f=_0x23b66f-0x15c;const _0x32ac5e=a109_0x32ac();let _0x4da8c5=_0x32ac5e[_0x23b66f];return _0x4da8c5;}export function getRabetbaseCliPackageRoot(){const _0x517358=a109_0x2ee491;return a109_0xcf633e[_0x517358(0x15f)](__dirname,_0x517358(0x164));}export function getSubAppReactDemoTemplateDir(){const _0x46e85d=a109_0x2ee491;return a109_0xcf633e[_0x46e85d(0x16e)](getRabetbaseCliPackageRoot(),_0x46e85d(0x16c),_0x46e85d(0x16d),_0x46e85d(0x168));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0xa66ec0,_0x1d7f2c){const _0x5f5656=a110_0x1d7b,_0x1f6b56=_0xa66ec0();while(!![]){try{const _0xa9726c=-parseInt(_0x5f5656(0x1de))/0x1+-parseInt(_0x5f5656(0x1e3))/0x2+-parseInt(_0x5f5656(0x1e2))/0x3+-parseInt(_0x5f5656(0x1d6))/0x4+-parseInt(_0x5f5656(0x1d8))/0x5+-parseInt(_0x5f5656(0x1e1))/0x6+parseInt(_0x5f5656(0x1e0))/0x7*(parseInt(_0x5f5656(0x1e7))/0x8);if(_0xa9726c===_0x1d7f2c)break;else _0x1f6b56['push'](_0x1f6b56['shift']());}catch(_0x400bbb){_0x1f6b56['push'](_0x1f6b56['shift']());}}}(a110_0x30e1,0x1a096));function a110_0x1d7b(_0x17bc04,_0x1725c0){_0x17bc04=_0x17bc04-0x1d6;const _0x30e1a3=a110_0x30e1();let _0x1d7b4f=_0x30e1a3[_0x17bc04];return _0x1d7b4f;}import a110_0x4c9d03 from'node:path';function a110_0x30e1(){const _0x1d41a1=['118666XzImNb','resolve','success','now','152ZqMEzi','54780nFbywF','error','616700NAeNOe','开始复制项目模板','copy','cwd','项目模板复制完成','info','127539UpHRdI','message','175217hyeDFT','177036rmgyNi','46590jAIMPP'];a110_0x30e1=function(){return _0x1d41a1;};return a110_0x30e1();}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';const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x54ad67){const _0x3a6eda=a110_0x1d7b,_0x105b8b=Date[_0x3a6eda(0x1e6)](),_0x3e1070=a110_0x4c9d03[_0x3a6eda(0x1e4)](process[_0x3a6eda(0x1db)](),_0x54ad67);try{logger[_0x3a6eda(0x1dd)](_0x3a6eda(0x1da),_0x3a6eda(0x1d9),{'projectCode':_0x54ad67,'templateDir':templateDir}),await copyDirectory(templateDir,_0x3e1070);const _0x584756=Date[_0x3a6eda(0x1e6)]()-_0x105b8b;logger[_0x3a6eda(0x1e5)](_0x3a6eda(0x1da),_0x3a6eda(0x1dc),_0x584756,{'projectCode':_0x54ad67});}catch(_0x487fff){const _0x284cde=Date[_0x3a6eda(0x1e6)]()-_0x105b8b;logger[_0x3a6eda(0x1d7)](_0x3a6eda(0x1da),'项目模板复制失败',{'projectCode':_0x54ad67,'error':_0x487fff instanceof Error?_0x487fff[_0x3a6eda(0x1df)]:String(_0x487fff),'duration':_0x284cde});throw _0x487fff;}return formatElapsed(_0x105b8b);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1c402a,_0x31336c){const _0x35db01=a111_0x1f2b,_0x1e5f35=_0x1c402a();while(!![]){try{const _0x36dce0=parseInt(_0x35db01(0x143))/0x1*(parseInt(_0x35db01(0x147))/0x2)+-parseInt(_0x35db01(0x146))/0x3+parseInt(_0x35db01(0x14d))/0x4*(parseInt(_0x35db01(0x149))/0x5)+parseInt(_0x35db01(0x148))/0x6*(-parseInt(_0x35db01(0x14b))/0x7)+parseInt(_0x35db01(0x13e))/0x8*(-parseInt(_0x35db01(0x14c))/0x9)+-parseInt(_0x35db01(0x14f))/0xa+parseInt(_0x35db01(0x14a))/0xb;if(_0x36dce0===_0x31336c)break;else _0x1e5f35['push'](_0x1e5f35['shift']());}catch(_0x58f148){_0x1e5f35['push'](_0x1e5f35['shift']());}}}(a111_0x1e19,0x5525e));import a111_0x29b914 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a111_0x1f2b(_0x201cf4,_0x518e68){_0x201cf4=_0x201cf4-0x13d;const _0x1e1921=a111_0x1e19();let _0x1f2b0c=_0x1e1921[_0x201cf4];return _0x1f2b0c;}import{resolveNpmBin}from'../../../utils/platform.js';function a111_0x1e19(){const _0xac0a7f=['format','message','27647bTJFGh','info','error','179136Xbyanx','24kPtzID','2953770GeAERZ','581615KFJrux','11559086eibVex','7KYUYsq','657xuneSA','8TtWFZN','success','2410580vWsDRx','--write','开始格式化代码','cwd','51880cfDVYf','resolve','now'];a111_0x1e19=function(){return _0xac0a7f;};return a111_0x1e19();}export async function formatProjectCode(_0x528122){const _0x2ef1f2=a111_0x1f2b,_0x3ea86e=Date[_0x2ef1f2(0x140)](),_0x58a1c1=a111_0x29b914[_0x2ef1f2(0x13f)](process[_0x2ef1f2(0x13d)](),_0x528122);try{logger[_0x2ef1f2(0x144)](_0x2ef1f2(0x141),_0x2ef1f2(0x151),{'projectCode':_0x528122}),await execa(resolveNpmBin('npx'),['prettier',_0x2ef1f2(0x150),'.'],{'cwd':_0x58a1c1});const _0x58927e=Date[_0x2ef1f2(0x140)]()-_0x3ea86e;logger[_0x2ef1f2(0x14e)](_0x2ef1f2(0x141),'代码格式化完成',_0x58927e,{'projectCode':_0x528122});}catch(_0x2accb6){const _0x12cb3f=Date[_0x2ef1f2(0x140)]()-_0x3ea86e;logger[_0x2ef1f2(0x145)](_0x2ef1f2(0x141),'代码格式化失败',{'projectCode':_0x528122,'error':_0x2accb6 instanceof Error?_0x2accb6[_0x2ef1f2(0x142)]:String(_0x2accb6),'duration':_0x12cb3f});throw _0x2accb6;}return formatElapsed(_0x3ea86e);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a112_0x4b0c(){const _0x3ef9be=['1877442TUCpmY','now','resolve','2521780MNisSj','4CHVRWK','info','message','23538AoCBHg','error','--registry','20BundMt','1849383tzNotV','1972752NZuIxZ','777Eueqio','https://registry.npmmirror.com','install','npm','448362VNqAnN','cwd','660064clSEpm'];a112_0x4b0c=function(){return _0x3ef9be;};return a112_0x4b0c();}(function(_0x594b32,_0x52c6ed){const _0x52f8d5=a112_0x13e9,_0x549708=_0x594b32();while(!![]){try{const _0x4d2e90=-parseInt(_0x52f8d5(0x1bb))/0x1+-parseInt(_0x52f8d5(0x1b9))/0x2+parseInt(_0x52f8d5(0x1bc))/0x3*(parseInt(_0x52f8d5(0x1c0))/0x4)+-parseInt(_0x52f8d5(0x1bf))/0x5+-parseInt(_0x52f8d5(0x1c3))/0x6*(-parseInt(_0x52f8d5(0x1c9))/0x7)+parseInt(_0x52f8d5(0x1c8))/0x8+-parseInt(_0x52f8d5(0x1c7))/0x9*(-parseInt(_0x52f8d5(0x1c6))/0xa);if(_0x4d2e90===_0x52c6ed)break;else _0x549708['push'](_0x549708['shift']());}catch(_0x3b58fe){_0x549708['push'](_0x549708['shift']());}}}(a112_0x4b0c,0x509fa));import a112_0xcd78f6 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a112_0x13e9(_0x332608,_0x339512){_0x332608=_0x332608-0x1b9;const _0x4b0c6e=a112_0x4b0c();let _0x13e959=_0x4b0c6e[_0x332608];return _0x13e959;}import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x3e3ed9){const _0x2105db=a112_0x13e9,_0x14d8a0=Date[_0x2105db(0x1bd)](),_0x2bdc59=a112_0xcd78f6[_0x2105db(0x1be)](process[_0x2105db(0x1ba)](),_0x3e3ed9);try{logger[_0x2105db(0x1c1)]('install','开始安装依赖',{'projectCode':_0x3e3ed9,'registry':'https://registry.npmmirror.com'}),await execa(resolveNpmBin(_0x2105db(0x1cc)),[_0x2105db(0x1cb),_0x2105db(0x1c5),_0x2105db(0x1ca)],{'cwd':_0x2bdc59});const _0x2fba31=Date['now']()-_0x14d8a0;logger['success'](_0x2105db(0x1cb),'依赖安装完成',_0x2fba31,{'projectCode':_0x3e3ed9});}catch(_0x43fa0b){const _0x2e89e7=Date[_0x2105db(0x1bd)]()-_0x14d8a0;logger[_0x2105db(0x1c4)]('install','依赖安装失败',{'projectCode':_0x3e3ed9,'error':_0x43fa0b instanceof Error?_0x43fa0b[_0x2105db(0x1c2)]:String(_0x43fa0b),'duration':_0x2e89e7});throw _0x43fa0b;}return formatElapsed(_0x14d8a0);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a113_0x352873=a113_0x1387;function a113_0x476d(){const _0x4f2036=['Skip\x20confirmation\x20prompt','cookie','appcode','966977LCEWpP','nonInteractive','Project\x20name','bool','10QGEyEa','project','350119VoiYca','Auto-confirm\x20prompts','39AoiIqo','../../commands/project/create/main.js','name','string','create','350CcSghx','project-name','args','validation','yes','1787094FbqBwF','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','trim','4276hjmSCL','init','1348770yJRWuC','boolean','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','187lnqPZP','Target\x20environment','../../commands/project/create/non-interactive.js','Create\x20a\x20new\x20project','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','5Ltejar','App\x20code\x20to\x20initialize','1824664aNOHth','env','str','Initialize\x20.rabetbase.json\x20config\x20in\x20existing\x20project','upgrade','write'];a113_0x476d=function(){return _0x4f2036;};return a113_0x476d();}(function(_0x574162,_0x16f239){const _0x5abc00=a113_0x1387,_0x59d109=_0x574162();while(!![]){try{const _0x2375d0=-parseInt(_0x5abc00(0x1fc))/0x1*(parseInt(_0x5abc00(0x1ef))/0x2)+-parseInt(_0x5abc00(0x1ea))/0x3*(parseInt(_0x5abc00(0x1f7))/0x4)+parseInt(_0x5abc00(0x201))/0x5*(-parseInt(_0x5abc00(0x1f9))/0x6)+parseInt(_0x5abc00(0x1e8))/0x7+parseInt(_0x5abc00(0x203))/0x8+parseInt(_0x5abc00(0x1f4))/0x9+-parseInt(_0x5abc00(0x1e6))/0xa*(parseInt(_0x5abc00(0x1e2))/0xb);if(_0x2375d0===_0x16f239)break;else _0x59d109['push'](_0x59d109['shift']());}catch(_0x77ad80){_0x59d109['push'](_0x59d109['shift']());}}}(a113_0x476d,0x1ca5e));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{initConfig}from'../../commands/project/init.js';import{upgradeApp}from'../../commands/project/upgrade.js';const initFlags=[{'name':'appcode','type':a113_0x352873(0x1ed),'description':a113_0x352873(0x202)},{'name':a113_0x352873(0x204),'type':a113_0x352873(0x1ed),'description':a113_0x352873(0x1fd)},{'name':a113_0x352873(0x1f3),'type':a113_0x352873(0x1fa),'description':a113_0x352873(0x1e9),'default':![]}],createFlags=[{'name':a113_0x352873(0x1ec),'type':'string','description':a113_0x352873(0x1e4)},{'name':a113_0x352873(0x204),'type':'string','description':'Target\x20environment'},{'name':a113_0x352873(0x1e1),'type':a113_0x352873(0x1ed),'description':a113_0x352873(0x200)}],upgradeFlags=[{'name':'yes','type':a113_0x352873(0x1fa),'description':a113_0x352873(0x209),'default':![]}];function a113_0x1387(_0x42db3b,_0x374a3e){_0x42db3b=_0x42db3b-0x1e1;const _0x476d42=a113_0x476d();let _0x1387bf=_0x476d42[_0x42db3b];return _0x1387bf;}export const projectDefinitions=[{'service':a113_0x352873(0x1e7),'command':a113_0x352873(0x1f8),'description':a113_0x352873(0x206),'risk':a113_0x352873(0x208),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initFlags,async 'execute'(_0x326d2){const _0x2c5e9f=a113_0x352873;return await initConfig({'appcode':_0x326d2['str'](_0x2c5e9f(0x1e1))||undefined,'env':_0x326d2[_0x2c5e9f(0x205)]('env')||undefined,'autoYes':_0x326d2[_0x2c5e9f(0x1e5)]('yes')}),{'ok':!![]};}},{'service':'project','command':a113_0x352873(0x1ee),'description':a113_0x352873(0x1ff),'risk':a113_0x352873(0x208),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a113_0x352873(0x1f0),'description':a113_0x352873(0x1fb),'required':![]}],'flags':createFlags,async 'execute'(_0x50b8d5){const _0x4bbb00=a113_0x352873,{createApp:_0x3c0689}=await import(_0x4bbb00(0x1eb)),{createProjectNonInteractive:_0x3601a1}=await import(_0x4bbb00(0x1fe)),_0x97f508=_0x50b8d5[_0x4bbb00(0x205)](_0x4bbb00(0x1ec))[_0x4bbb00(0x1f6)]()||_0x50b8d5[_0x4bbb00(0x1f1)][0x0]?.[_0x4bbb00(0x1f6)](),_0x48e342=_0x50b8d5[_0x4bbb00(0x205)](_0x4bbb00(0x204))||undefined,_0x46fe6d=_0x50b8d5['str'](_0x4bbb00(0x1e1))||undefined;if(_0x50b8d5[_0x4bbb00(0x1e3)]){if(!_0x97f508)throw CliErrors[_0x4bbb00(0x1f2)](_0x4bbb00(0x1f5),'Usage:\x20'+CLI_BIN_NAME+'\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]');await _0x3601a1(_0x97f508,_0x48e342,_0x46fe6d,_0x50b8d5[_0x4bbb00(0x20a)]);}else await _0x3c0689({'projectCode':_0x97f508,'appCode':_0x46fe6d,'env':_0x48e342,'cookie':_0x50b8d5[_0x4bbb00(0x20a)]});return{'ok':!![]};}},{'service':a113_0x352873(0x1e7),'command':a113_0x352873(0x207),'description':'Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x3e124b){const _0x2d9bfd=a113_0x352873;return await upgradeApp(_0x3e124b[_0x2d9bfd(0x1e3)],{'yes':_0x3e124b[_0x2d9bfd(0x1e5)]('yes')}),{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x480f3e,_0x4947e6){const _0xe32cd3=a114_0x401e,_0x3310b3=_0x480f3e();while(!![]){try{const _0x24e40e=-parseInt(_0xe32cd3(0x7a))/0x1*(-parseInt(_0xe32cd3(0x83))/0x2)+parseInt(_0xe32cd3(0x95))/0x3+parseInt(_0xe32cd3(0x73))/0x4+-parseInt(_0xe32cd3(0x6f))/0x5+-parseInt(_0xe32cd3(0x6c))/0x6+parseInt(_0xe32cd3(0x8e))/0x7+-parseInt(_0xe32cd3(0x74))/0x8;if(_0x24e40e===_0x4947e6)break;else _0x3310b3['push'](_0x3310b3['shift']());}catch(_0x284ed1){_0x3310b3['push'](_0x3310b3['shift']());}}}(a114_0x2517,0x1cd90));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';function a114_0x401e(_0x54e99f,_0x5cf3ca){_0x54e99f=_0x54e99f-0x68;const _0x251765=a114_0x2517();let _0x401e82=_0x251765[_0x54e99f];return _0x401e82;}import a114_0x2eefa3 from'chalk';function a114_0x2517(){const _0x4e7962=['gray','?\x20(Old\x20file\x20→\x20*.bak)','.bak','version','290689MamhdZ','env','bold','\x20\x20Old\x20file\x20backed\x20up\x20as\x20','init','Please\x20enter\x20App\x20Code:','yellow','681132rsoMen','\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27','app','\x20api\x20pull\x27','Upgrade\x20it\x20to\x20','join','defaultApp','197304MxrRWr','log','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','713995OFnlzb','cyan','toLocaleString','Invalid\x20App\x20Code','837648TZTnxE','1656608wvOdln','Migration\x20cancelled.\x20Run\x20`','✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory','green','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','apps','22936ztmtNe','appcode','\x20\x20Apps:\x20','\x20→\x20.rabetbase.json','初始化项目配置文件成功','string','keys','trim','production','2XDzluZ','1.0.0','\x20project\x20init`\x20to\x20start\x20fresh.','从旧配置文件升级成功','info','\x20\x20Default:\x20','App\x20Code\x20cannot\x20be\x20empty'];a114_0x2517=function(){return _0x4e7962;};return a114_0x2517();}import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';import{readRawConfig,getProjectConfigPath,writeConfigFile,NEW_CONFIG_NAME,LEGACY_CONFIG_NAMES}from'../../context.js';import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x6b20c8){const _0x28b052=a114_0x401e,{appcode:_0x22a972,env:_0x32c866,autoYes:_0x2e9d1e}=_0x6b20c8,_0x15912a=process['cwd']();if(getProjectConfigPath())throw new Error(_0x28b052(0x6e));let _0x557250;for(const _0x434b07 of LEGACY_CONFIG_NAMES){const _0xdfd0=resolve(_0x15912a,_0x434b07);if(existsSync(_0xdfd0)){_0x557250=_0xdfd0;break;}}if(_0x557250){let _0x46b372={};try{_0x46b372=JSON['parse'](readFileSync(_0x557250,'utf8'));}catch{}const _0x4d0857=basename(_0x557250),_0x2442e5=_0x46b372?.['appcode']||_0x46b372?.[_0x28b052(0x97)];let _0x1ec3cb=_0x2e9d1e;!_0x2e9d1e&&(console[_0x28b052(0x6d)](a114_0x2eefa3[_0x28b052(0x94)](_0x28b052(0x78)+a114_0x2eefa3[_0x28b052(0x90)](_0x4d0857))),_0x2442e5&&console[_0x28b052(0x6d)](a114_0x2eefa3[_0x28b052(0x70)]('\x20\x20appcode:\x20'+_0x2442e5)),_0x1ec3cb=await confirm({'message':_0x28b052(0x69)+a114_0x2eefa3[_0x28b052(0x90)]('.rabetbase.json')+_0x28b052(0x8b),'default':!![]}));if(!_0x1ec3cb){console['log'](_0x28b052(0x75)+CLI_BIN_NAME+_0x28b052(0x85));return;}const _0x7b7d8e=resolve(_0x15912a,NEW_CONFIG_NAME),_0x522cd9=getCliVersionFromPkg(),_0x169f3b=readRawConfig(),_0x3ae170=_0x22a972||(typeof _0x46b372?.['appcode']===_0x28b052(0x7f)?_0x46b372[_0x28b052(0x7b)]:undefined)||(typeof _0x46b372?.['app']===_0x28b052(0x7f)?_0x46b372[_0x28b052(0x97)]:undefined)||await askAppcode(),_0x9815af=typeof _0x46b372?.[_0x28b052(0x8f)]===_0x28b052(0x7f)?_0x46b372['env']:typeof _0x169f3b[_0x28b052(0x8f)]===_0x28b052(0x7f)?_0x169f3b[_0x28b052(0x8f)]:_0x28b052(0x82),_0x388bc2=buildCanonicalProjectConfig({..._0x169f3b,..._0x46b372},{'appCodes':[_0x3ae170],'env':_0x9815af,'metadata':{'version':_0x522cd9,'migratedAt':new Date()[_0x28b052(0x71)](),'migratedFrom':_0x557250}});writeConfigFile(_0x7b7d8e,_0x388bc2);const _0xfba0e3=_0x557250+_0x28b052(0x8c);renameSync(_0x557250,_0xfba0e3),logger['setLogPath'](_0x15912a),logger[_0x28b052(0x87)](_0x28b052(0x92),_0x28b052(0x86),{'from':_0x557250,'to':_0x7b7d8e,'appcode':_0x3ae170,'env':_0x388bc2[_0x28b052(0x8f)]}),console[_0x28b052(0x6d)](a114_0x2eefa3[_0x28b052(0x77)]('✓\x20Upgraded\x20'+_0x4d0857+_0x28b052(0x7d))),console[_0x28b052(0x6d)](a114_0x2eefa3[_0x28b052(0x70)](_0x28b052(0x7c)+Object['keys'](_0x388bc2[_0x28b052(0x79)]||{})[_0x28b052(0x6a)](',\x20'))),console[_0x28b052(0x6d)](a114_0x2eefa3[_0x28b052(0x70)](_0x28b052(0x88)+_0x388bc2[_0x28b052(0x6b)])),console[_0x28b052(0x6d)](a114_0x2eefa3[_0x28b052(0x8a)](_0x28b052(0x91)+_0x4d0857+_0x28b052(0x8c)));return;}const _0x4b2381=_0x22a972||await askAppcode(),_0x118789=resolve(_0x15912a,NEW_CONFIG_NAME),_0x2fb358=getCliVersionFromPkg(),_0x237e3c=readRawConfig(),_0x5976c0=typeof _0x237e3c[_0x28b052(0x8f)]===_0x28b052(0x7f)?_0x237e3c['env']:undefined,_0xf8b025=buildCanonicalProjectConfig({},{'appCodes':[_0x4b2381],'env':_0x32c866||_0x5976c0||_0x28b052(0x82),'metadata':{'version':_0x2fb358,'createdAt':new Date()[_0x28b052(0x71)]()}});writeConfigFile(_0x118789,_0xf8b025),logger['setLogPath'](_0x15912a),logger['info'](_0x28b052(0x92),_0x28b052(0x7e),{'appcode':_0x4b2381,'env':_0xf8b025[_0x28b052(0x8f)],'version':_0xf8b025[_0x28b052(0x8d)],'configPath':_0x118789}),console[_0x28b052(0x6d)](a114_0x2eefa3['green'](_0x28b052(0x76))),console['log'](a114_0x2eefa3[_0x28b052(0x70)]('\x20\x20Apps:\x20'+Object[_0x28b052(0x80)](_0xf8b025[_0x28b052(0x79)]||{})['join'](',\x20'))),console[_0x28b052(0x6d)](a114_0x2eefa3[_0x28b052(0x70)](_0x28b052(0x88)+_0xf8b025['defaultApp'])),console[_0x28b052(0x6d)](_0x28b052(0x96)+CLI_BIN_NAME+'\x20api\x20generate\x27\x20and\x20\x27'+CLI_BIN_NAME+_0x28b052(0x68));}function askAppcode(){const _0x4097c7=a114_0x401e;return input({'message':_0x4097c7(0x93),'validate':_0x44c4c7=>{const _0x109c62=_0x4097c7;if(!_0x44c4c7[_0x109c62(0x81)]())return _0x109c62(0x89);const {valid:_0x1adc77,message:_0x474213}=validateAppcode(_0x44c4c7[_0x109c62(0x81)]());return _0x1adc77||_0x474213||_0x109c62(0x72);}});}function getCliVersionFromPkg(){const _0x2519ab=a114_0x401e;try{const _0x2e590c=fileURLToPath(import.meta.url),_0xf9b77e=resolve(dirname(_0x2e590c),'../..'),_0x51ab48=JSON['parse'](readFileSync(resolve(_0xf9b77e,'package.json'),'utf8'));return _0x51ab48[_0x2519ab(0x8d)]||_0x2519ab(0x84);}catch{return _0x2519ab(0x84);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a113_0x236c17=a113_0x4876;(function(_0x4e1104,_0x4ce508){const _0x1618ac=a113_0x4876,_0xd43b92=_0x4e1104();while(!![]){try{const _0x362549=-parseInt(_0x1618ac(0xf9))/0x1+parseInt(_0x1618ac(0xba))/0x2+-parseInt(_0x1618ac(0x11f))/0x3+-parseInt(_0x1618ac(0x10d))/0x4*(parseInt(_0x1618ac(0xd7))/0x5)+-parseInt(_0x1618ac(0xd0))/0x6*(-parseInt(_0x1618ac(0x105))/0x7)+-parseInt(_0x1618ac(0x11c))/0x8*(parseInt(_0x1618ac(0x12f))/0x9)+-parseInt(_0x1618ac(0x117))/0xa*(-parseInt(_0x1618ac(0xc5))/0xb);if(_0x362549===_0x4ce508)break;else _0xd43b92['push'](_0xd43b92['shift']());}catch(_0x414ea9){_0xd43b92['push'](_0xd43b92['shift']());}}}(a113_0x2309,0x3c972));import a113_0x50726f from'chalk';import a113_0x1c7a2f 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_0x236c17(0xd9)](_0x1d82a7=>_0x1d82a7!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x316868){const _0x2f1537=a113_0x236c17,_0x10c5f0=[];for(const _0x341799 of Object[_0x2f1537(0x110)](CORE_IDE_CONFIGS)){if(_0x341799['files'])for(const _0x59243 of _0x341799[_0x2f1537(0xbe)]){_0x10c5f0['push'](resolve(_0x316868,_0x59243['path']));}}return _0x10c5f0;}function analyse(_0x9d4b63){const _0xedd9bf=a113_0x236c17;let _0x4c8515=null;const _0x23bc8f=resolve(_0x9d4b63,NEW_CONFIG_NAME),_0x2981cf=existsSync(_0x23bc8f);for(const _0x16f459 of LEGACY_CONFIG_NAMES){const _0x3089dd=resolve(_0x9d4b63,_0x16f459);if(existsSync(_0x3089dd)){const _0x58099a=readConfigFile(_0x3089dd),_0x391b8f=Object['keys'](_0x58099a)[_0xedd9bf(0xd9)](_0x5b665a=>typeof _0x58099a[_0x5b665a]!==_0xedd9bf(0xcc));_0x4c8515={'oldPath':_0x3089dd,'hasNewConfig':_0x2981cf,'fields':_0x391b8f};break;}}const _0x3479a6=[],_0x336c2c=resolve(_0x9d4b63,_0xedd9bf(0x10c));if(existsSync(_0x336c2c))_0x3479a6[_0xedd9bf(0x100)](_0x336c2c);const _0x1e4470=resolve(_0x9d4b63,_0xedd9bf(0xfb));if(existsSync(_0x1e4470))_0x3479a6[_0xedd9bf(0x100)](_0x1e4470);const _0x29ae28=resolve(_0x9d4b63,_0xedd9bf(0xd5));if(existsSync(_0x29ae28))_0x3479a6[_0xedd9bf(0x100)](_0x29ae28);for(const _0x1d4143 of collectIdeSkillFiles(_0x9d4b63)){if(existsSync(_0x1d4143))_0x3479a6[_0xedd9bf(0x100)](_0x1d4143);}let _0x50db78=null;const _0x1e29a4=resolve(_0x9d4b63,'.cursor/mcp.json');if(existsSync(_0x1e29a4))try{const _0x366210=JSON[_0xedd9bf(0x107)](readFileSync(_0x1e29a4,_0xedd9bf(0x12b)));if(_0x366210?.[_0xedd9bf(0xeb)]&&typeof _0x366210[_0xedd9bf(0xeb)]===_0xedd9bf(0x101)){const _0x221c81=[];for(const [_0xbd0468,_0x4359ba]of Object['entries'](_0x366210['mcpServers'])){const _0x2d62a8=_0x4359ba;_0x2d62a8?.[_0xedd9bf(0x11d)]&&Array[_0xedd9bf(0xe9)](_0x2d62a8[_0xedd9bf(0x11d)])&&_0x2d62a8['args'][_0xedd9bf(0x127)](_0x3377ea=>typeof _0x3377ea===_0xedd9bf(0xda)&&_0x3377ea[_0xedd9bf(0xb9)]('@lovrabet/dataset-mcp-server'))&&_0x221c81[_0xedd9bf(0x100)](_0xbd0468);}_0x221c81[_0xedd9bf(0xc9)]>0x0&&(_0x50db78={'path':_0x1e29a4,'keys':_0x221c81});}}catch{}const _0x3c1008=_0x3479a6[_0xedd9bf(0xc9)]>0x0||_0x4c8515!==null;let _0x2f95b7=null;const _0x494a9c=resolve(_0x9d4b63,_0xedd9bf(0x130));if(existsSync(_0x494a9c))try{const _0x3370ed=JSON['parse'](readFileSync(_0x494a9c,'utf8'));for(const _0x452d60 of[_0xedd9bf(0xe6),'devDependencies']){const _0x866d81=_0x3370ed?.[_0x452d60]?.[_0xedd9bf(0x120)];if(typeof _0x866d81===_0xedd9bf(0xda)){_0x866d81!=='latest'&&(_0x2f95b7={'pkgPath':_0x494a9c,'currentVersion':_0x866d81,'field':_0x452d60});break;}}}catch{}return{'configMigration':_0x4c8515,'oldArtifacts':_0x3479a6,'oldMcpConfig':_0x50db78,'needsSkillSwap':_0x3c1008,'sdkUpgrade':_0x2f95b7};}function printReport(_0x3894a8){const _0x3eed1c=a113_0x236c17,{configMigration:_0x4eb6ed,oldArtifacts:_0x6e6119,oldMcpConfig:_0x110047,needsSkillSwap:_0x1a73e7}=_0x3894a8;console['log'](''),console[_0x3eed1c(0x132)](a113_0x50726f[_0x3eed1c(0xf2)](_0x3eed1c(0x12d))),console[_0x3eed1c(0x132)]('');_0x4eb6ed?(console[_0x3eed1c(0x132)](a113_0x50726f[_0x3eed1c(0x104)](_0x3eed1c(0xd8))+('\x20\x20'+a113_0x50726f['yellow'](_0x4eb6ed[_0x3eed1c(0xd3)]))),console['log'](_0x3eed1c(0xf1)+(_0x4eb6ed[_0x3eed1c(0x12a)]?a113_0x50726f[_0x3eed1c(0xe8)](_0x3eed1c(0x131)):a113_0x50726f[_0x3eed1c(0xbd)]('not\x20found\x20(will\x20create)'))),console['log'](_0x3eed1c(0xd1)+_0x4eb6ed[_0x3eed1c(0x119)]['join'](',\x20')),console[_0x3eed1c(0x132)]('\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak')):console[_0x3eed1c(0x132)](a113_0x50726f[_0x3eed1c(0x104)]('Config\x20file:')+'\x20\x20'+a113_0x50726f[_0x3eed1c(0xbd)](_0x3eed1c(0xe2)));console[_0x3eed1c(0x132)]('');if(_0x6e6119['length']>0x0){console[_0x3eed1c(0x132)](a113_0x50726f[_0x3eed1c(0x104)]('Legacy\x20artifacts:'));for(const _0x164b4a of _0x6e6119){console[_0x3eed1c(0x132)]('\x20\x20'+a113_0x50726f['red']('FOUND')+'\x20\x20'+_0x164b4a);}console[_0x3eed1c(0x132)](_0x3eed1c(0xef));}else console[_0x3eed1c(0x132)](a113_0x50726f[_0x3eed1c(0x104)](_0x3eed1c(0xcb))+'\x20\x20'+a113_0x50726f[_0x3eed1c(0xbd)](_0x3eed1c(0x109)));console[_0x3eed1c(0x132)]('');_0x110047?(console[_0x3eed1c(0x132)](a113_0x50726f[_0x3eed1c(0x104)](_0x3eed1c(0x103))+('\x20\x20'+a113_0x50726f[_0x3eed1c(0x10a)](_0x110047[_0x3eed1c(0x10b)])+'\x20→\x20keys:\x20'+_0x110047['keys'][_0x3eed1c(0x10f)](',\x20'))),console[_0x3eed1c(0x132)](_0x3eed1c(0x11b))):console[_0x3eed1c(0x132)](a113_0x50726f[_0x3eed1c(0x104)](_0x3eed1c(0x103))+'\x20\x20'+a113_0x50726f['gray'](_0x3eed1c(0xe4)));console[_0x3eed1c(0x132)](''),console[_0x3eed1c(0x132)](a113_0x50726f[_0x3eed1c(0x104)](_0x3eed1c(0x118))+('\x20\x20'+(_0x1a73e7?a113_0x50726f['yellow'](_0x3eed1c(0x136)):a113_0x50726f[_0x3eed1c(0xe8)](_0x3eed1c(0xfa)))));_0x1a73e7&&console[_0x3eed1c(0x132)]('\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`'+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x3eed1c(0x132)]('');if(_0x3894a8[_0x3eed1c(0x124)]){const {currentVersion:_0x3b90e8,field:_0x2cb8dd,pkgPath:_0x5d6620}=_0x3894a8[_0x3eed1c(0x124)];console['log'](a113_0x50726f[_0x3eed1c(0x104)](_0x3eed1c(0xf7))+('\x20\x20'+a113_0x50726f[_0x3eed1c(0x10a)](_0x5d6620))),console[_0x3eed1c(0x132)](_0x3eed1c(0xea)+_0x2cb8dd+':\x20'+a113_0x50726f[_0x3eed1c(0x10a)](_0x3b90e8)+_0x3eed1c(0xb8)+a113_0x50726f[_0x3eed1c(0xe8)]('latest')),console[_0x3eed1c(0x132)]('\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)');}else console['log'](a113_0x50726f[_0x3eed1c(0x104)](_0x3eed1c(0xf7))+'\x20\x20'+a113_0x50726f[_0x3eed1c(0xbd)]('not\x20found\x20or\x20already\x20at\x20latest'));console[_0x3eed1c(0x132)]('');}function execConfigMigration(_0x2cc2a5,_0x49bb42){const _0x2b82bc=a113_0x236c17,{configMigration:_0x1de183}=_0x2cc2a5;if(!_0x1de183?.[_0x2b82bc(0xd3)])return{'step':0x1,'label':_0x2b82bc(0xf3),'ok':!![],'detail':_0x2b82bc(0xde)};const _0x1663ed=readConfigFile(_0x1de183[_0x2b82bc(0xd3)]),_0x133c54=resolve(_0x49bb42,NEW_CONFIG_NAME),_0x1e63ee=_0x1de183[_0x2b82bc(0x12a)]?readConfigFile(_0x133c54):{};for(const [_0x138af1,_0x339046]of Object[_0x2b82bc(0xd6)](_0x1663ed)){!(_0x138af1 in _0x1e63ee)&&(_0x1e63ee[_0x138af1]=_0x339046);}writeConfigFile(_0x133c54,_0x1e63ee);const _0x10fd0e=_0x1de183[_0x2b82bc(0xd3)]+_0x2b82bc(0xd2);return renameSync(_0x1de183[_0x2b82bc(0xd3)],_0x10fd0e),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x1de183[_0x2b82bc(0xd3)]+_0x2b82bc(0xb8)+_0x133c54+_0x2b82bc(0x116)+_0x10fd0e+')'};}function execRemoveOldArtifacts(_0x510fa7){const _0x1b6d90=a113_0x236c17,_0x1a0135=[];for(const _0x49130e of _0x510fa7){try{if(!existsSync(_0x49130e))continue;const _0x617d7a=tryStat(_0x49130e);_0x617d7a?.['isDirectory']()?rmSync(_0x49130e,{'recursive':!![],'force':!![]}):unlinkSync(_0x49130e);}catch(_0x245ad4){_0x1a0135[_0x1b6d90(0x100)](_0x49130e+':\x20'+_0x245ad4['message']);}}return{'step':0x3,'label':'Remove\x20legacy\x20artifacts','ok':_0x1a0135['length']===0x0,'detail':_0x1a0135[_0x1b6d90(0xc9)]>0x0?_0x510fa7[_0x1b6d90(0xc9)]-_0x1a0135[_0x1b6d90(0xc9)]+'/'+_0x510fa7[_0x1b6d90(0xc9)]+_0x1b6d90(0xc8)+_0x1a0135[_0x1b6d90(0x10f)](';\x20')+')':_0x510fa7[_0x1b6d90(0xc9)]+'\x20removed'};}function a113_0x4876(_0x18069a,_0x129eb2){_0x18069a=_0x18069a-0xb7;const _0x2309e1=a113_0x2309();let _0x487610=_0x2309e1[_0x18069a];return _0x487610;}function execCleanMcp(_0x287061){const _0x5793dd=a113_0x236c17;if(!_0x287061[_0x5793dd(0x108)])return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x5793dd(0x128)};try{const _0xfde506=readFileSync(_0x287061[_0x5793dd(0x108)][_0x5793dd(0x10b)],_0x5793dd(0x12b)),_0x136700=JSON[_0x5793dd(0x107)](_0xfde506);if(_0x136700?.[_0x5793dd(0xeb)]&&typeof _0x136700[_0x5793dd(0xeb)]===_0x5793dd(0x101)){const _0xedb496=[];for(const [_0x136a45,_0x333f11]of Object['entries'](_0x136700['mcpServers'])){_0x333f11?.[_0x5793dd(0x11d)]&&Array['isArray'](_0x333f11[_0x5793dd(0x11d)])&&_0x333f11[_0x5793dd(0x11d)][_0x5793dd(0x127)](_0x4fca91=>typeof _0x4fca91===_0x5793dd(0xda)&&_0x4fca91['includes'](_0x5793dd(0xdd)))&&_0xedb496['push'](_0x136a45);}for(const _0x29de6a of _0xedb496){delete _0x136700[_0x5793dd(0xeb)][_0x29de6a];}return _0xedb496['length']>0x0&&writeFileSync(_0x287061[_0x5793dd(0x108)][_0x5793dd(0x10b)],JSON[_0x5793dd(0x123)](_0x136700,null,0x2)+'\x0a',_0x5793dd(0x12b)),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x5793dd(0x134)+_0xedb496['join'](',\x20')+_0x5793dd(0xfd)+_0x287061[_0x5793dd(0x108)][_0x5793dd(0x10b)]};}return{'step':0x4,'label':_0x5793dd(0x135),'ok':!![],'detail':_0x5793dd(0x10e)};}catch(_0x48438f){return{'step':0x4,'label':_0x5793dd(0x135),'ok':![],'detail':_0x48438f[_0x5793dd(0xe5)]};}}function execSkillsRemove(_0x571d07,_0x344d7b){const _0x52c607=a113_0x236c17,_0x1e8931=runNpxSkillsRemove(_0x571d07,{'stdio':'inherit','yes':_0x344d7b});return{'step':0x5,'label':_0x52c607(0xcd),'ok':_0x1e8931['ok'],'detail':_0x1e8931['ok']?'lovrabet/lovrabet-skill\x20removed':_0x1e8931[_0x52c607(0xe3)]??_0x52c607(0x121)+_0x1e8931['status']};}function a113_0x2309(){const _0x5c1735=['\x20from\x20','Install\x20new\x20skill','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','push','object','fail','MCP\x20config:','cyan','7KSNysj','lovrabet/rabetbase\x20installed\x20globally','parse','oldMcpConfig','none\x20found','yellow','path','.lovrabet','40ydWwQx','no\x20matching\x20entry\x20found','join','values','white','start','Step\x201/7:\x20Migrating\x20config...','Upgrade\x20@lovrabet/sdk','done','\x20(backup:\x20','250WyeJhl','Skill\x20swap:','fields','\x20→\x20latest','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','8OmpQoO','args','yes','755382dgdNfU','@lovrabet/sdk','exit\x20','Step\x204/7:\x20Cleaning\x20MCP\x20config...','stringify','sdkUpgrade','\x20\x20bun\x20install','red','some','skipped','\x20\x20npm\x20install','hasNewConfig','utf8','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','===\x20Upgrade\x20Analysis\x20===','oldArtifacts','1197702VzLQzQ','package.json','already\x20exists\x20(will\x20merge)','log','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','removed\x20','Clean\x20MCP\x20config','needed','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','\x20→\x20','includes','321636uLuszJ','detail','CANCEL','gray','files','failed','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','Step\x206/7:\x20Installing\x20new\x20skill...','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','latest','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','364859FPuLLe','Remove\x20.lovrabet/','===\x20Upgrade\x20Summary\x20===','\x20removed\x20(','length','inherit','Legacy\x20artifacts:','undefined','Remove\x20old\x20skill','Upgrade\x20completed\x20successfully!','configMigration','1678440nKiDSO','\x20\x20Fields\x20to\x20migrate:\x20','.bak','oldPath','\x20\x20\x20\x20\x20\x20\x20','.claude/skills/lovrabet','entries','74695bExOmL','Config\x20file:','filter','string','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','Step\x201/7:\x20Config\x20migration\x20—\x20','@lovrabet/dataset-mcp-server','skipped\x20(no\x20legacy\x20config)','\x20\x20Step\x20','needsSkillSwap','\x20\x20#\x20or','no\x20legacy\x20config\x20found','error','no\x20legacy\x20entry','message','dependencies','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','green','isArray','\x20\x20Current\x20version\x20in\x20','mcpServers','succeed','[\x22@lovrabet/sdk\x22]:\x20','FAIL','\x20\x20Action:\x20delete','cwd','\x20\x20New\x20config\x20(.rabetbase.json):\x20','bold','Config\x20migration','Upgrade\x20cancelled.','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','@lovrabet/sdk:','lovrabet/rabetbase','487343RcwRIA','not\x20needed','.cursor/rules/lovrabet_rules.mdc','label'];a113_0x2309=function(){return _0x5c1735;};return a113_0x2309();}function execSkillsAdd(_0x52c78a,_0x4ffc02){const _0x33eca4=a113_0x236c17,_0x1bb8f1=runNpxSkillsAddGlobal(_0x52c78a,_0x33eca4(0xf8),{'stdio':_0x33eca4(0xca),'yes':_0x4ffc02});return{'step':0x6,'label':_0x33eca4(0xfe),'ok':_0x1bb8f1['ok'],'detail':_0x1bb8f1['ok']?_0x33eca4(0x106):_0x1bb8f1[_0x33eca4(0xe3)]??_0x33eca4(0x121)+_0x1bb8f1['status']};}function execUpgradeSdk(_0x355709){const _0x145a9f=a113_0x236c17;if(!_0x355709[_0x145a9f(0x124)])return{'step':0x7,'label':_0x145a9f(0x114),'ok':!![],'detail':_0x145a9f(0xf5)};const {pkgPath:_0x4b1645,currentVersion:_0x106ada,field:_0x2c7461}=_0x355709[_0x145a9f(0x124)];try{const _0x3fdd0e=readFileSync(_0x4b1645,_0x145a9f(0x12b)),_0x51a982=JSON['parse'](_0x3fdd0e);return _0x51a982[_0x2c7461]['@lovrabet/sdk']=_0x145a9f(0xc3),writeFileSync(_0x4b1645,JSON['stringify'](_0x51a982,null,0x2)+'\x0a',_0x145a9f(0x12b)),{'step':0x7,'label':_0x145a9f(0x114),'ok':!![],'detail':_0x2c7461+_0x145a9f(0xed)+_0x106ada+_0x145a9f(0x11a)};}catch(_0x189e20){return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':![],'detail':_0x189e20[_0x145a9f(0xe5)]};}}function tryStat(_0x48dcc9){try{return statSync(_0x48dcc9);}catch{return undefined;}}function printSummary(_0x2ced3e){const _0x2d8d61=a113_0x236c17;console['log'](''),console[_0x2d8d61(0x132)](a113_0x50726f['bold'](_0x2d8d61(0xc7))),console['log']('');for(const _0x2f2e54 of _0x2ced3e){const _0x2dfa93=_0x2f2e54['ok']?a113_0x50726f[_0x2d8d61(0xe8)]('OK'):a113_0x50726f[_0x2d8d61(0x126)](_0x2d8d61(0xee));console[_0x2d8d61(0x132)]('\x20\x20'+_0x2dfa93+_0x2d8d61(0xdf)+_0x2f2e54['step']+':\x20'+_0x2f2e54[_0x2d8d61(0xfc)]);if(_0x2f2e54['detail'])console[_0x2d8d61(0x132)](_0x2d8d61(0xd4)+a113_0x50726f[_0x2d8d61(0xbd)](_0x2f2e54[_0x2d8d61(0xbb)]));}console[_0x2d8d61(0x132)]('');}export async function upgradeApp(_0x10b483,_0x5c471c){const _0x2800a7=a113_0x236c17,_0x26cfa8=process[_0x2800a7(0xf0)](),_0xab9d36=analyse(_0x26cfa8),_0x181ff9=!_0xab9d36[_0x2800a7(0xcf)]&&_0xab9d36['oldArtifacts'][_0x2800a7(0xc9)]===0x0&&!_0xab9d36['oldMcpConfig']&&!_0xab9d36[_0x2800a7(0xe0)]&&!_0xab9d36['sdkUpgrade'];if(_0x181ff9){console[_0x2800a7(0x132)](a113_0x50726f[_0x2800a7(0xe8)]('No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.'));return;}printReport(_0xab9d36);const _0x1b73e5=!!(_0x5c471c[_0x2800a7(0x11e)]||_0x5c471c['Y']||_0x10b483);if(!_0x1b73e5)try{const _0x1db007=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x1db007){console[_0x2800a7(0x132)](a113_0x50726f[_0x2800a7(0xbd)]('Upgrade\x20cancelled.'));return;}}catch(_0x4efe4c){if(_0x4efe4c?.[_0x2800a7(0xe5)]===_0x2800a7(0xbc)){console[_0x2800a7(0x132)](a113_0x50726f[_0x2800a7(0xbd)](_0x2800a7(0xf4)));return;}throw _0x4efe4c;}const _0x421b8e=[],_0xd103c1=a113_0x1c7a2f({'text':_0x2800a7(0x113),'color':_0x2800a7(0x104)})[_0x2800a7(0x112)](),_0x501af5=execConfigMigration(_0xab9d36,_0x26cfa8);_0x421b8e['push'](_0x501af5),_0xd103c1[_0x501af5['ok']?'succeed':_0x2800a7(0x102)](_0x2800a7(0xdc)+(_0x501af5[_0x2800a7(0xbb)]??(_0x501af5['ok']?_0x2800a7(0x115):_0x2800a7(0xbf))));const _0x4c2ab6=resolve(_0x26cfa8,'.lovrabet'),_0x2eac42=a113_0x1c7a2f({'text':_0x2800a7(0x133),'color':_0x2800a7(0x104)})[_0x2800a7(0x112)]();if(existsSync(_0x4c2ab6))try{rmSync(_0x4c2ab6,{'recursive':!![],'force':!![]}),_0x2eac42[_0x2800a7(0xec)](_0x2800a7(0xb7)),_0x421b8e[_0x2800a7(0x100)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![]});}catch(_0x202da3){_0x2eac42['fail']('Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20'+_0x202da3[_0x2800a7(0xe5)]),_0x421b8e[_0x2800a7(0x100)]({'step':0x2,'label':_0x2800a7(0xc6),'ok':![],'detail':_0x202da3[_0x2800a7(0xe5)]});}else _0x2eac42['info']('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x421b8e[_0x2800a7(0x100)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![],'detail':_0x2800a7(0x128)});const _0x1b0cd2=a113_0x1c7a2f({'text':_0x2800a7(0xc0),'color':_0x2800a7(0x104)})[_0x2800a7(0x112)](),_0xa63b79=execRemoveOldArtifacts(_0xab9d36[_0x2800a7(0x12e)]);_0x421b8e[_0x2800a7(0x100)](_0xa63b79),_0x1b0cd2[_0xa63b79['ok']?_0x2800a7(0xec):_0x2800a7(0x102)](_0x2800a7(0xc4)+(_0xa63b79[_0x2800a7(0xbb)]??(_0xa63b79['ok']?_0x2800a7(0x115):'failed')));const _0x2c2752=a113_0x1c7a2f({'text':_0x2800a7(0x122),'color':_0x2800a7(0x104)})[_0x2800a7(0x112)](),_0x2e8bcb=execCleanMcp(_0xab9d36);_0x421b8e[_0x2800a7(0x100)](_0x2e8bcb),_0x2c2752[_0x2e8bcb['ok']?'succeed':_0x2800a7(0x102)]('Step\x204/7:\x20MCP\x20config\x20—\x20'+(_0x2e8bcb[_0x2800a7(0xbb)]??(_0x2e8bcb['ok']?'done':_0x2800a7(0xbf))));const _0x191186=a113_0x1c7a2f({'text':'Step\x205/7:\x20Removing\x20old\x20skill...','color':_0x2800a7(0x104)})[_0x2800a7(0x112)](),_0x4cea30=execSkillsRemove(_0x26cfa8,_0x1b73e5);_0x421b8e[_0x2800a7(0x100)](_0x4cea30),_0x191186[_0x4cea30['ok']?_0x2800a7(0xec):_0x2800a7(0x102)](_0x2800a7(0xf6)+(_0x4cea30['detail']??(_0x4cea30['ok']?'done':'failed')));const _0x4668af=a113_0x1c7a2f({'text':_0x2800a7(0xc1),'color':_0x2800a7(0x104)})[_0x2800a7(0x112)](),_0x32d7a2=execSkillsAdd(_0x26cfa8,_0x1b73e5);_0x421b8e[_0x2800a7(0x100)](_0x32d7a2),_0x4668af[_0x32d7a2['ok']?_0x2800a7(0xec):'fail'](_0x2800a7(0xe7)+(_0x32d7a2[_0x2800a7(0xbb)]??(_0x32d7a2['ok']?_0x2800a7(0x115):'failed')));const _0x4beab1=a113_0x1c7a2f({'text':_0x2800a7(0xff),'color':'cyan'})[_0x2800a7(0x112)](),_0x4e3943=execUpgradeSdk(_0xab9d36);_0x421b8e['push'](_0x4e3943),_0x4beab1[_0x4e3943['ok']?'succeed':_0x2800a7(0x102)](_0x2800a7(0x12c)+(_0x4e3943[_0x2800a7(0xbb)]??(_0x4e3943['ok']?'done':'failed'))),printSummary(_0x421b8e);const _0x5ea6fb=_0x421b8e['some'](_0x1b479a=>!_0x1b479a['ok']);_0x5ea6fb?console[_0x2800a7(0x132)](a113_0x50726f['yellow'](_0x2800a7(0xc2))):console[_0x2800a7(0x132)](a113_0x50726f[_0x2800a7(0xe8)](_0x2800a7(0xce))),_0x4e3943['ok']&&_0xab9d36[_0x2800a7(0x124)]&&(console[_0x2800a7(0x132)](''),console['log'](a113_0x50726f['bold'][_0x2800a7(0x104)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x2800a7(0x132)](a113_0x50726f[_0x2800a7(0x104)](_0x2800a7(0xdb))),console[_0x2800a7(0x132)](''),console[_0x2800a7(0x132)](a113_0x50726f[_0x2800a7(0x111)](_0x2800a7(0x129))),console[_0x2800a7(0x132)](a113_0x50726f['white'](_0x2800a7(0xe1))),console[_0x2800a7(0x132)](a113_0x50726f[_0x2800a7(0x111)](_0x2800a7(0x125))),console[_0x2800a7(0x132)](''));}
|
|
1
|
+
(function(_0x3664b1,_0x13e800){const _0x55c5ab=a115_0x180b,_0x5aea33=_0x3664b1();while(!![]){try{const _0x5b53e8=-parseInt(_0x55c5ab(0x155))/0x1+-parseInt(_0x55c5ab(0x13f))/0x2+-parseInt(_0x55c5ab(0x183))/0x3+-parseInt(_0x55c5ab(0x149))/0x4+-parseInt(_0x55c5ab(0x150))/0x5*(-parseInt(_0x55c5ab(0x171))/0x6)+-parseInt(_0x55c5ab(0x142))/0x7*(parseInt(_0x55c5ab(0x160))/0x8)+parseInt(_0x55c5ab(0x152))/0x9;if(_0x5b53e8===_0x13e800)break;else _0x5aea33['push'](_0x5aea33['shift']());}catch(_0x4cf446){_0x5aea33['push'](_0x5aea33['shift']());}}}(a115_0x4d90,0x211e8));import a115_0x107f49 from'chalk';import a115_0x3f3f7a from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';import{CONFIG_NAMES,NEW_CONFIG_NAME,readConfigFile,writeConfigFile}from'../../context.js';import{CORE_IDE_CONFIGS}from'../../utils/ai_config.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE,runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=CONFIG_NAMES['filter'](_0x2fbb73=>_0x2fbb73!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x11d8cd){const _0x7c9746=a115_0x180b,_0x183454=[];for(const _0x537dad of Object[_0x7c9746(0x167)](CORE_IDE_CONFIGS)){if(_0x537dad[_0x7c9746(0x144)])for(const _0x1b595f of _0x537dad[_0x7c9746(0x144)]){_0x183454[_0x7c9746(0x11f)](resolve(_0x11d8cd,_0x1b595f[_0x7c9746(0x143)]));}}return _0x183454;}function analyse(_0x3dc1be){const _0x38c142=a115_0x180b;let _0x170a18=null;const _0x4318b7=resolve(_0x3dc1be,NEW_CONFIG_NAME),_0x432868=existsSync(_0x4318b7);for(const _0x136fb7 of LEGACY_CONFIG_NAMES){const _0x4f0035=resolve(_0x3dc1be,_0x136fb7);if(existsSync(_0x4f0035)){const _0x53d257=readConfigFile(_0x4f0035),_0x3f9e59=Object[_0x38c142(0x173)](_0x53d257)[_0x38c142(0x10a)](_0x45ec9f=>typeof _0x53d257[_0x45ec9f]!==_0x38c142(0x15b));_0x170a18={'oldPath':_0x4f0035,'hasNewConfig':_0x432868,'fields':_0x3f9e59};break;}}const _0x3aa068=[],_0x156e80=resolve(_0x3dc1be,'.lovrabet');if(existsSync(_0x156e80))_0x3aa068[_0x38c142(0x11f)](_0x156e80);const _0x4179cd=resolve(_0x3dc1be,_0x38c142(0x15d));if(existsSync(_0x4179cd))_0x3aa068[_0x38c142(0x11f)](_0x4179cd);const _0x2d6fca=resolve(_0x3dc1be,_0x38c142(0x15c));if(existsSync(_0x2d6fca))_0x3aa068[_0x38c142(0x11f)](_0x2d6fca);for(const _0x16dd88 of collectIdeSkillFiles(_0x3dc1be)){if(existsSync(_0x16dd88))_0x3aa068[_0x38c142(0x11f)](_0x16dd88);}let _0xcf8845=null;const _0x3d93f9=resolve(_0x3dc1be,_0x38c142(0x176));if(existsSync(_0x3d93f9))try{const _0x24363b=JSON['parse'](readFileSync(_0x3d93f9,_0x38c142(0x106)));if(_0x24363b?.[_0x38c142(0x13c)]&&typeof _0x24363b['mcpServers']==='object'){const _0x518050=[];for(const [_0x434bad,_0x45a404]of Object['entries'](_0x24363b[_0x38c142(0x13c)])){const _0x246dc4=_0x45a404;_0x246dc4?.[_0x38c142(0x10e)]&&Array[_0x38c142(0x139)](_0x246dc4[_0x38c142(0x10e)])&&_0x246dc4['args']['some'](_0x36ccac=>typeof _0x36ccac===_0x38c142(0x125)&&_0x36ccac[_0x38c142(0x124)](_0x38c142(0x140)))&&_0x518050[_0x38c142(0x11f)](_0x434bad);}_0x518050[_0x38c142(0x12f)]>0x0&&(_0xcf8845={'path':_0x3d93f9,'keys':_0x518050});}}catch{}const _0x4a12fe=_0x3aa068[_0x38c142(0x12f)]>0x0||_0x170a18!==null;let _0x1ed386=null;const _0x57cb0a=resolve(_0x3dc1be,_0x38c142(0x11b));if(existsSync(_0x57cb0a))try{const _0x2a1429=JSON['parse'](readFileSync(_0x57cb0a,_0x38c142(0x106)));for(const _0xb51606 of[_0x38c142(0x14e),_0x38c142(0x129)]){const _0x1a43f9=_0x2a1429?.[_0xb51606]?.['@lovrabet/sdk'];if(typeof _0x1a43f9==='string'){_0x1a43f9!==_0x38c142(0x180)&&(_0x1ed386={'pkgPath':_0x57cb0a,'currentVersion':_0x1a43f9,'field':_0xb51606});break;}}}catch{}return{'configMigration':_0x170a18,'oldArtifacts':_0x3aa068,'oldMcpConfig':_0xcf8845,'needsSkillSwap':_0x4a12fe,'sdkUpgrade':_0x1ed386};}function printReport(_0x16a2b3){const _0x480da0=a115_0x180b,{configMigration:_0x1cc93b,oldArtifacts:_0x181723,oldMcpConfig:_0x28f99a,needsSkillSwap:_0x379a6d}=_0x16a2b3;console[_0x480da0(0x14a)](''),console[_0x480da0(0x14a)](a115_0x107f49[_0x480da0(0x137)](_0x480da0(0x10f))),console['log']('');_0x1cc93b?(console[_0x480da0(0x14a)](a115_0x107f49[_0x480da0(0x16a)]('Config\x20file:')+('\x20\x20'+a115_0x107f49['yellow'](_0x1cc93b['oldPath']))),console[_0x480da0(0x14a)](_0x480da0(0x107)+(_0x1cc93b[_0x480da0(0x182)]?a115_0x107f49[_0x480da0(0x172)](_0x480da0(0x12d)):a115_0x107f49['gray'](_0x480da0(0x17e)))),console['log'](_0x480da0(0x141)+_0x1cc93b['fields']['join'](',\x20')),console[_0x480da0(0x14a)](_0x480da0(0x15e))):console[_0x480da0(0x14a)](a115_0x107f49['cyan'](_0x480da0(0x156))+'\x20\x20'+a115_0x107f49[_0x480da0(0x165)]('no\x20legacy\x20config\x20found'));console[_0x480da0(0x14a)]('');if(_0x181723['length']>0x0){console[_0x480da0(0x14a)](a115_0x107f49[_0x480da0(0x16a)](_0x480da0(0x104)));for(const _0x2e6f9f of _0x181723){console['log']('\x20\x20'+a115_0x107f49[_0x480da0(0x130)](_0x480da0(0x177))+'\x20\x20'+_0x2e6f9f);}console['log'](_0x480da0(0x153));}else console[_0x480da0(0x14a)](a115_0x107f49[_0x480da0(0x16a)]('Legacy\x20artifacts:')+'\x20\x20'+a115_0x107f49['gray'](_0x480da0(0x145)));console[_0x480da0(0x14a)]('');_0x28f99a?(console[_0x480da0(0x14a)](a115_0x107f49[_0x480da0(0x16a)]('MCP\x20config:')+('\x20\x20'+a115_0x107f49[_0x480da0(0x168)](_0x28f99a[_0x480da0(0x143)])+_0x480da0(0x170)+_0x28f99a['keys'][_0x480da0(0x12b)](',\x20'))),console[_0x480da0(0x14a)](_0x480da0(0x16b))):console['log'](a115_0x107f49[_0x480da0(0x16a)](_0x480da0(0x122))+'\x20\x20'+a115_0x107f49[_0x480da0(0x165)](_0x480da0(0x123)));console[_0x480da0(0x14a)](''),console['log'](a115_0x107f49['cyan'](_0x480da0(0x111))+('\x20\x20'+(_0x379a6d?a115_0x107f49['yellow'](_0x480da0(0x133)):a115_0x107f49['green']('not\x20needed'))));_0x379a6d&&console[_0x480da0(0x14a)]('\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`'+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x480da0(0x14a)]('');if(_0x16a2b3['sdkUpgrade']){const {currentVersion:_0x14e142,field:_0x40b87f,pkgPath:_0x3687b8}=_0x16a2b3['sdkUpgrade'];console['log'](a115_0x107f49[_0x480da0(0x16a)](_0x480da0(0x17b))+('\x20\x20'+a115_0x107f49['yellow'](_0x3687b8))),console[_0x480da0(0x14a)]('\x20\x20Current\x20version\x20in\x20'+_0x40b87f+':\x20'+a115_0x107f49[_0x480da0(0x168)](_0x14e142)+_0x480da0(0x10d)+a115_0x107f49[_0x480da0(0x172)]('latest')),console[_0x480da0(0x14a)](_0x480da0(0x169));}else console[_0x480da0(0x14a)](a115_0x107f49[_0x480da0(0x16a)](_0x480da0(0x17b))+'\x20\x20'+a115_0x107f49[_0x480da0(0x165)](_0x480da0(0x109)));console[_0x480da0(0x14a)]('');}function execConfigMigration(_0x526c81,_0x4c8d5f){const _0x12bb49=a115_0x180b,{configMigration:_0x375600}=_0x526c81;if(!_0x375600?.['oldPath'])return{'step':0x1,'label':_0x12bb49(0x113),'ok':!![],'detail':_0x12bb49(0x16c)};const _0x3a3aa4=readConfigFile(_0x375600['oldPath']),_0x444071=resolve(_0x4c8d5f,NEW_CONFIG_NAME),_0x4299ff=_0x375600[_0x12bb49(0x182)]?readConfigFile(_0x444071):{};for(const [_0x4c4c28,_0x3a3b35]of Object[_0x12bb49(0x147)](_0x3a3aa4)){!(_0x4c4c28 in _0x4299ff)&&(_0x4299ff[_0x4c4c28]=_0x3a3b35);}writeConfigFile(_0x444071,_0x4299ff);const _0x43847d=_0x375600[_0x12bb49(0x13b)]+_0x12bb49(0x126);return renameSync(_0x375600['oldPath'],_0x43847d),{'step':0x1,'label':_0x12bb49(0x113),'ok':!![],'detail':_0x375600['oldPath']+_0x12bb49(0x10d)+_0x444071+'\x20(backup:\x20'+_0x43847d+')'};}function execRemoveOldArtifacts(_0x3ac346){const _0x158f48=a115_0x180b,_0xba444b=[];for(const _0x566013 of _0x3ac346){try{if(!existsSync(_0x566013))continue;const _0x3a8c87=tryStat(_0x566013);_0x3a8c87?.[_0x158f48(0x164)]()?rmSync(_0x566013,{'recursive':!![],'force':!![]}):unlinkSync(_0x566013);}catch(_0x1aba3c){_0xba444b[_0x158f48(0x11f)](_0x566013+':\x20'+_0x1aba3c[_0x158f48(0x157)]);}}return{'step':0x3,'label':'Remove\x20legacy\x20artifacts','ok':_0xba444b[_0x158f48(0x12f)]===0x0,'detail':_0xba444b[_0x158f48(0x12f)]>0x0?_0x3ac346[_0x158f48(0x12f)]-_0xba444b[_0x158f48(0x12f)]+'/'+_0x3ac346[_0x158f48(0x12f)]+_0x158f48(0x151)+_0xba444b[_0x158f48(0x12b)](';\x20')+')':_0x3ac346[_0x158f48(0x12f)]+_0x158f48(0x17f)};}function execCleanMcp(_0x24e995){const _0x4e58e3=a115_0x180b;if(!_0x24e995[_0x4e58e3(0x148)])return{'step':0x4,'label':_0x4e58e3(0x114),'ok':!![],'detail':_0x4e58e3(0x179)};try{const _0x5d94b7=readFileSync(_0x24e995[_0x4e58e3(0x148)][_0x4e58e3(0x143)],_0x4e58e3(0x106)),_0x355d41=JSON[_0x4e58e3(0x12a)](_0x5d94b7);if(_0x355d41?.[_0x4e58e3(0x13c)]&&typeof _0x355d41[_0x4e58e3(0x13c)]===_0x4e58e3(0x17c)){const _0x20cab2=[];for(const [_0x3afb59,_0x50aea9]of Object[_0x4e58e3(0x147)](_0x355d41[_0x4e58e3(0x13c)])){_0x50aea9?.[_0x4e58e3(0x10e)]&&Array[_0x4e58e3(0x139)](_0x50aea9[_0x4e58e3(0x10e)])&&_0x50aea9[_0x4e58e3(0x10e)][_0x4e58e3(0x184)](_0x10eed2=>typeof _0x10eed2===_0x4e58e3(0x125)&&_0x10eed2[_0x4e58e3(0x124)]('@lovrabet/dataset-mcp-server'))&&_0x20cab2['push'](_0x3afb59);}for(const _0x593180 of _0x20cab2){delete _0x355d41[_0x4e58e3(0x13c)][_0x593180];}return _0x20cab2['length']>0x0&&writeFileSync(_0x24e995['oldMcpConfig']['path'],JSON[_0x4e58e3(0x134)](_0x355d41,null,0x2)+'\x0a',_0x4e58e3(0x106)),{'step':0x4,'label':_0x4e58e3(0x114),'ok':!![],'detail':_0x4e58e3(0x121)+_0x20cab2[_0x4e58e3(0x12b)](',\x20')+_0x4e58e3(0x13d)+_0x24e995[_0x4e58e3(0x148)]['path']};}return{'step':0x4,'label':_0x4e58e3(0x114),'ok':!![],'detail':_0x4e58e3(0x16e)};}catch(_0x35851f){return{'step':0x4,'label':_0x4e58e3(0x114),'ok':![],'detail':_0x35851f[_0x4e58e3(0x157)]};}}function execSkillsRemove(_0x421cfa,_0x3323b3){const _0x193581=a115_0x180b,_0x49a8ac=runNpxSkillsRemove(_0x421cfa,{'stdio':_0x193581(0x127),'yes':_0x3323b3});return{'step':0x5,'label':_0x193581(0x174),'ok':_0x49a8ac['ok'],'detail':_0x49a8ac['ok']?_0x193581(0x128):_0x49a8ac[_0x193581(0x13e)]??_0x193581(0x117)+_0x49a8ac[_0x193581(0x15f)]};}function execSkillsAdd(_0x50badd,_0x3c4f6e){const _0xd0e14=a115_0x180b,_0x1196a8=runNpxSkillsAddGlobal(_0x50badd,_0xd0e14(0x11c),{'stdio':'inherit','yes':_0x3c4f6e});return{'step':0x6,'label':_0xd0e14(0x135),'ok':_0x1196a8['ok'],'detail':_0x1196a8['ok']?_0xd0e14(0x112):_0x1196a8['error']??_0xd0e14(0x117)+_0x1196a8[_0xd0e14(0x15f)]};}function a115_0x180b(_0x594794,_0x2674f2){_0x594794=_0x594794-0x104;const _0x4d904b=a115_0x4d90();let _0x180b9c=_0x4d904b[_0x594794];return _0x180b9c;}function execUpgradeSdk(_0x5a6d4b){const _0x226813=a115_0x180b;if(!_0x5a6d4b['sdkUpgrade'])return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':'skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)'};const {pkgPath:_0x1fa1ea,currentVersion:_0x5d23df,field:_0xd622b9}=_0x5a6d4b[_0x226813(0x12e)];try{const _0x46fe3e=readFileSync(_0x1fa1ea,_0x226813(0x106)),_0x3446ec=JSON[_0x226813(0x12a)](_0x46fe3e);return _0x3446ec[_0xd622b9][_0x226813(0x158)]='latest',writeFileSync(_0x1fa1ea,JSON[_0x226813(0x134)](_0x3446ec,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':_0x226813(0x115),'ok':!![],'detail':_0xd622b9+_0x226813(0x163)+_0x5d23df+'\x20→\x20latest'};}catch(_0x54004a){return{'step':0x7,'label':_0x226813(0x115),'ok':![],'detail':_0x54004a[_0x226813(0x157)]};}}function tryStat(_0x23545e){try{return statSync(_0x23545e);}catch{return undefined;}}function printSummary(_0x6d9aa){const _0x3846e8=a115_0x180b;console[_0x3846e8(0x14a)](''),console[_0x3846e8(0x14a)](a115_0x107f49['bold'](_0x3846e8(0x11a))),console[_0x3846e8(0x14a)]('');for(const _0x1acd86 of _0x6d9aa){const _0x1d4ab5=_0x1acd86['ok']?a115_0x107f49[_0x3846e8(0x172)]('OK'):a115_0x107f49[_0x3846e8(0x130)]('FAIL');console[_0x3846e8(0x14a)]('\x20\x20'+_0x1d4ab5+_0x3846e8(0x11d)+_0x1acd86['step']+':\x20'+_0x1acd86[_0x3846e8(0x181)]);if(_0x1acd86['detail'])console[_0x3846e8(0x14a)]('\x20\x20\x20\x20\x20\x20\x20'+a115_0x107f49['gray'](_0x1acd86[_0x3846e8(0x119)]));}console[_0x3846e8(0x14a)]('');}function a115_0x4d90(){const _0x2afd0a=['package.json','lovrabet/rabetbase','\x20\x20Step\x20','Remove\x20.lovrabet/','push','start','removed\x20','MCP\x20config:','no\x20legacy\x20entry','includes','string','.bak','inherit','lovrabet/lovrabet-skill\x20removed','devDependencies','parse','join','configMigration','already\x20exists\x20(will\x20merge)','sdkUpgrade','length','red','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','needed','stringify','Install\x20new\x20skill','yes','bold','\x20\x20bun\x20install','isArray','done','oldPath','mcpServers','\x20from\x20','error','489506VddpZi','@lovrabet/dataset-mcp-server','\x20\x20Fields\x20to\x20migrate:\x20','931049IIKkhI','path','files','none\x20found','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','entries','oldMcpConfig','280288CSppya','log','Step\x206/7:\x20Installing\x20new\x20skill...','succeed','info','dependencies','CANCEL','105juJhUe','\x20removed\x20(','4954365CoVRKt','\x20\x20Action:\x20delete','white','64345YnLQVW','Config\x20file:','message','@lovrabet/sdk','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','undefined','.claude/skills/lovrabet','.cursor/rules/lovrabet_rules.mdc','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','status','8LsDOVy','Proceed\x20with\x20upgrade?','\x20\x20npm\x20install','[\x22@lovrabet/sdk\x22]:\x20','isDirectory','gray','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','values','yellow','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','cyan','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','skipped\x20(no\x20legacy\x20config)','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','no\x20matching\x20entry\x20found','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','\x20→\x20keys:\x20','34158TYIaqN','green','keys','Remove\x20old\x20skill','fail','.cursor/mcp.json','FOUND','failed','skipped','Step\x201/7:\x20Config\x20migration\x20—\x20','@lovrabet/sdk:','object','Upgrade\x20cancelled.','not\x20found\x20(will\x20create)','\x20removed','latest','label','hasNewConfig','66615HEqWzc','some','Legacy\x20artifacts:','Step\x201/7:\x20Migrating\x20config...','utf8','\x20\x20New\x20config\x20(.rabetbase.json):\x20','cwd','not\x20found\x20or\x20already\x20at\x20latest','filter','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','needsSkillSwap','\x20→\x20','args','===\x20Upgrade\x20Analysis\x20===','\x20\x20#\x20or','Skill\x20swap:','lovrabet/rabetbase\x20installed\x20globally','Config\x20migration','Clean\x20MCP\x20config','Upgrade\x20@lovrabet/sdk','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','exit\x20','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','detail','===\x20Upgrade\x20Summary\x20==='];a115_0x4d90=function(){return _0x2afd0a;};return a115_0x4d90();}export async function upgradeApp(_0x51a6e4,_0x3cd40c){const _0x720e4f=a115_0x180b,_0x24af9d=process[_0x720e4f(0x108)](),_0x46f3b4=analyse(_0x24af9d),_0x2f3b3e=!_0x46f3b4[_0x720e4f(0x12c)]&&_0x46f3b4['oldArtifacts'][_0x720e4f(0x12f)]===0x0&&!_0x46f3b4[_0x720e4f(0x148)]&&!_0x46f3b4[_0x720e4f(0x10c)]&&!_0x46f3b4[_0x720e4f(0x12e)];if(_0x2f3b3e){console['log'](a115_0x107f49[_0x720e4f(0x172)](_0x720e4f(0x16d)));return;}printReport(_0x46f3b4);const _0x37ceba=!!(_0x3cd40c[_0x720e4f(0x136)]||_0x3cd40c['Y']||_0x51a6e4);if(!_0x37ceba)try{const _0x31e359=await askConfirm(_0x720e4f(0x161));if(!_0x31e359){console[_0x720e4f(0x14a)](a115_0x107f49[_0x720e4f(0x165)](_0x720e4f(0x17d)));return;}}catch(_0x287d98){if(_0x287d98?.[_0x720e4f(0x157)]===_0x720e4f(0x14f)){console[_0x720e4f(0x14a)](a115_0x107f49[_0x720e4f(0x165)](_0x720e4f(0x17d)));return;}throw _0x287d98;}const _0xff5395=[],_0x24623e=a115_0x3f3f7a({'text':_0x720e4f(0x105),'color':_0x720e4f(0x16a)})[_0x720e4f(0x120)](),_0x488b30=execConfigMigration(_0x46f3b4,_0x24af9d);_0xff5395[_0x720e4f(0x11f)](_0x488b30),_0x24623e[_0x488b30['ok']?_0x720e4f(0x14c):'fail'](_0x720e4f(0x17a)+(_0x488b30[_0x720e4f(0x119)]??(_0x488b30['ok']?_0x720e4f(0x13a):_0x720e4f(0x178))));const _0x5f5c7d=resolve(_0x24af9d,'.lovrabet'),_0x53c5b6=a115_0x3f3f7a({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':_0x720e4f(0x16a)})['start']();if(existsSync(_0x5f5c7d))try{rmSync(_0x5f5c7d,{'recursive':!![],'force':!![]}),_0x53c5b6[_0x720e4f(0x14c)]('Step\x202/7:\x20.lovrabet/\x20directory\x20removed'),_0xff5395[_0x720e4f(0x11f)]({'step':0x2,'label':_0x720e4f(0x11e),'ok':!![]});}catch(_0x10f9d0){_0x53c5b6[_0x720e4f(0x175)](_0x720e4f(0x146)+_0x10f9d0[_0x720e4f(0x157)]),_0xff5395[_0x720e4f(0x11f)]({'step':0x2,'label':_0x720e4f(0x11e),'ok':![],'detail':_0x10f9d0[_0x720e4f(0x157)]});}else _0x53c5b6[_0x720e4f(0x14d)](_0x720e4f(0x15a)),_0xff5395[_0x720e4f(0x11f)]({'step':0x2,'label':_0x720e4f(0x11e),'ok':!![],'detail':_0x720e4f(0x179)});const _0x12be2b=a115_0x3f3f7a({'text':_0x720e4f(0x166),'color':_0x720e4f(0x16a)})[_0x720e4f(0x120)](),_0x2f21dd=execRemoveOldArtifacts(_0x46f3b4['oldArtifacts']);_0xff5395[_0x720e4f(0x11f)](_0x2f21dd),_0x12be2b[_0x2f21dd['ok']?_0x720e4f(0x14c):_0x720e4f(0x175)](_0x720e4f(0x131)+(_0x2f21dd['detail']??(_0x2f21dd['ok']?'done':_0x720e4f(0x178))));const _0x3ebf18=a115_0x3f3f7a({'text':'Step\x204/7:\x20Cleaning\x20MCP\x20config...','color':_0x720e4f(0x16a)})[_0x720e4f(0x120)](),_0xaf93e3=execCleanMcp(_0x46f3b4);_0xff5395[_0x720e4f(0x11f)](_0xaf93e3),_0x3ebf18[_0xaf93e3['ok']?_0x720e4f(0x14c):'fail']('Step\x204/7:\x20MCP\x20config\x20—\x20'+(_0xaf93e3[_0x720e4f(0x119)]??(_0xaf93e3['ok']?_0x720e4f(0x13a):_0x720e4f(0x178))));const _0x4863a2=a115_0x3f3f7a({'text':'Step\x205/7:\x20Removing\x20old\x20skill...','color':_0x720e4f(0x16a)})[_0x720e4f(0x120)](),_0xf28413=execSkillsRemove(_0x24af9d,_0x37ceba);_0xff5395['push'](_0xf28413),_0x4863a2[_0xf28413['ok']?_0x720e4f(0x14c):_0x720e4f(0x175)]('Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20'+(_0xf28413['detail']??(_0xf28413['ok']?_0x720e4f(0x13a):_0x720e4f(0x178))));const _0x3a80a2=a115_0x3f3f7a({'text':_0x720e4f(0x14b),'color':_0x720e4f(0x16a)})[_0x720e4f(0x120)](),_0x5209cb=execSkillsAdd(_0x24af9d,_0x37ceba);_0xff5395[_0x720e4f(0x11f)](_0x5209cb),_0x3a80a2[_0x5209cb['ok']?_0x720e4f(0x14c):_0x720e4f(0x175)](_0x720e4f(0x132)+(_0x5209cb[_0x720e4f(0x119)]??(_0x5209cb['ok']?'done':_0x720e4f(0x178))));const _0x376376=a115_0x3f3f7a({'text':_0x720e4f(0x159),'color':_0x720e4f(0x16a)})[_0x720e4f(0x120)](),_0x545321=execUpgradeSdk(_0x46f3b4);_0xff5395['push'](_0x545321),_0x376376[_0x545321['ok']?_0x720e4f(0x14c):_0x720e4f(0x175)](_0x720e4f(0x16f)+(_0x545321[_0x720e4f(0x119)]??(_0x545321['ok']?'done':_0x720e4f(0x178)))),printSummary(_0xff5395);const _0xbe5f23=_0xff5395[_0x720e4f(0x184)](_0x195d10=>!_0x195d10['ok']);_0xbe5f23?console['log'](a115_0x107f49['yellow'](_0x720e4f(0x116))):console[_0x720e4f(0x14a)](a115_0x107f49['green']('Upgrade\x20completed\x20successfully!')),_0x545321['ok']&&_0x46f3b4[_0x720e4f(0x12e)]&&(console[_0x720e4f(0x14a)](''),console[_0x720e4f(0x14a)](a115_0x107f49[_0x720e4f(0x137)][_0x720e4f(0x16a)](_0x720e4f(0x118))),console[_0x720e4f(0x14a)](a115_0x107f49[_0x720e4f(0x16a)](_0x720e4f(0x10b))),console[_0x720e4f(0x14a)](''),console[_0x720e4f(0x14a)](a115_0x107f49['white'](_0x720e4f(0x162))),console[_0x720e4f(0x14a)](a115_0x107f49[_0x720e4f(0x154)](_0x720e4f(0x110))),console['log'](a115_0x107f49[_0x720e4f(0x154)](_0x720e4f(0x138))),console[_0x720e4f(0x14a)](''));}
|
package/lib/commands/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a116_0xbfe5ef=a116_0x4261;(function(_0x320f7c,_0x38a258){const _0xe5f655=a116_0x4261,_0x51ee76=_0x320f7c();while(!![]){try{const _0x15d031=-parseInt(_0xe5f655(0x15b))/0x1+parseInt(_0xe5f655(0x158))/0x2+-parseInt(_0xe5f655(0x167))/0x3+parseInt(_0xe5f655(0x14c))/0x4+-parseInt(_0xe5f655(0x14e))/0x5+parseInt(_0xe5f655(0x13c))/0x6*(parseInt(_0xe5f655(0x13f))/0x7)+parseInt(_0xe5f655(0x14a))/0x8;if(_0x15d031===_0x38a258)break;else _0x51ee76['push'](_0x51ee76['shift']());}catch(_0x4c2048){_0x51ee76['push'](_0x51ee76['shift']());}}}(a116_0x2c62,0x55f07));function a116_0x4261(_0x1c62e0,_0x8c8a8b){_0x1c62e0=_0x1c62e0-0x139;const _0x2c620c=a116_0x2c62();let _0x42619b=_0x2c620c[_0x1c62e0];return _0x42619b;}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';function a116_0x2c62(){const _0x51a648=['2467912JoaFMR','preview','1788765RDwOpZ','from','Self\x20Update','run','has','SQL\x20Queries','commands','build','Skills','login','7622qmSqzv','Logs','command','7498uwkwZd','BFF\x20Scripts','show','values','Dataset\x20&\x20Operations','Instant\x20API','service','project','Menu','\x20\x20[high-risk-write]','API','Code\x20Generation','1332915XGbQrv','\x20\x20[write]','wildcardDef','isSingleCommand','<script>','create','description','App\x20Management','96EeSiJg','get','length','7259BjaBdD','Project','install','Schema','Authentication','Smart\x20List\x20Pages','start','read','write','map','Configuration','4193456LBtKxY','set'];a116_0x2c62=function(){return _0x51a648;};return a116_0x2c62();}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(_0x4a4916){const _0x14c989=a116_0x4261;for(const _0x2527a0 of _0x4a4916){definitions[_0x14c989(0x14b)](_0x2527a0[_0x14c989(0x161)]+':'+_0x2527a0[_0x14c989(0x15a)],_0x2527a0);let _0x10a39f=serviceGroups['get'](_0x2527a0[_0x14c989(0x161)]);!_0x10a39f&&(_0x10a39f=[],serviceGroups[_0x14c989(0x14b)](_0x2527a0[_0x14c989(0x161)],_0x10a39f)),_0x10a39f['push'](_0x2527a0);}}function registerDeclarativeService(_0x161d47,_0x2c4bf5,_0xb7bcd9){const _0x5ca3ba=a116_0x4261;registerDefinitions(_0x2c4bf5);_0xb7bcd9?.[_0x5ca3ba(0x169)]&®isterDefinitions([_0xb7bcd9[_0x5ca3ba(0x169)]]);const _0x1e1fff=_0x1bb254=>_0x1bb254===_0x5ca3ba(0x146)?'':_0x1bb254===_0x5ca3ba(0x147)?_0x5ca3ba(0x168):_0x5ca3ba(0x164),_0x2705e4={'service':_0x2c4bf5[0x0][_0x5ca3ba(0x161)],'label':_0x161d47,'commands':_0x2c4bf5[_0x5ca3ba(0x148)](_0x561dbc=>({'command':_0x561dbc[_0x5ca3ba(0x15a)],'description':_0x561dbc[_0x5ca3ba(0x13a)],'tag':_0x1e1fff(_0x561dbc['risk'])})),'declarative':!![],'defaultCommand':_0xb7bcd9?.['defaultCommand']??(_0xb7bcd9?.[_0x5ca3ba(0x16a)]?_0x2c4bf5[0x0][_0x5ca3ba(0x15a)]:undefined),'wildcardDef':_0xb7bcd9?.[_0x5ca3ba(0x169)],'isSingleCommand':_0xb7bcd9?.[_0x5ca3ba(0x16a)]};serviceRegistry['push'](_0x2705e4),serviceByName['set'](_0x2705e4[_0x5ca3ba(0x161)],_0x2705e4);}registerDeclarativeService('Quick\x20Start',initDefinitions,{'defaultCommand':a116_0xbfe5ef(0x151),'isSingleCommand':!![]}),registerDeclarativeService(a116_0xbfe5ef(0x140),projectDefinitions),registerDeclarativeService(a116_0xbfe5ef(0x13b),appDefinitions),registerDeclarativeService('Run\x20Scripts',[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a116_0xbfe5ef(0x13e)]-0x1];last[a116_0xbfe5ef(0x154)]=[{'command':a116_0xbfe5ef(0x16b),'description':'Run\x20any\x20package.json\x20script','tag':''}];}registerDeclarativeService(a116_0xbfe5ef(0x143),authDefinitions,{'defaultCommand':a116_0xbfe5ef(0x157)}),registerDeclarativeService(a116_0xbfe5ef(0x150),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a116_0xbfe5ef(0x142),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a116_0xbfe5ef(0x149),configDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService(a116_0xbfe5ef(0x165),apiDefinitions),registerDeclarativeService(a116_0xbfe5ef(0x163),menuDefinitions),registerDeclarativeService('Database\x20Connections',dbDefinitions),registerDeclarativeService(a116_0xbfe5ef(0x15f),datasetDefinitions),registerDeclarativeService(a116_0xbfe5ef(0x144),pageDefinitions),registerDeclarativeService(a116_0xbfe5ef(0x160),dataDefinitions),registerDeclarativeService(a116_0xbfe5ef(0x15c),bffDefinitions),registerDeclarativeService(a116_0xbfe5ef(0x153),sqlDefinitions),registerDeclarativeService(a116_0xbfe5ef(0x166),codegenDefinitions),registerDeclarativeService(a116_0xbfe5ef(0x156),skillDefinitions),registerDeclarativeService(a116_0xbfe5ef(0x159),logsDefinitions,{'defaultCommand':a116_0xbfe5ef(0x15d)});export const deprecatedAliases={'create':{'service':a116_0xbfe5ef(0x162),'command':a116_0xbfe5ef(0x139)},'start':{'service':a116_0xbfe5ef(0x151),'command':a116_0xbfe5ef(0x145)},'build':{'service':a116_0xbfe5ef(0x151),'command':a116_0xbfe5ef(0x155)},'preview':{'service':a116_0xbfe5ef(0x151),'command':a116_0xbfe5ef(0x14d)},'logout':{'service':'auth','command':'logout'},'skills':{'service':'skill','command':a116_0xbfe5ef(0x141)}};export const deprecatedSubcommands={'bff':{'new':a116_0xbfe5ef(0x139)},'sql':{'new':a116_0xbfe5ef(0x139)}};export function resolveDeprecatedSubcommand(_0x53e58f,_0x3e9884){return deprecatedSubcommands[_0x53e58f]?.[_0x3e9884];}export function findDefinition(_0x4c80e1,_0x5dee37){const _0x4a5ad6=a116_0xbfe5ef;return definitions[_0x4a5ad6(0x13d)](_0x4c80e1+':'+_0x5dee37);}export function isKnownService(_0x2be2f9){const _0x10183b=a116_0xbfe5ef;return serviceByName[_0x10183b(0x152)](_0x2be2f9);}export function isDeclarativeService(_0x53eba6){const _0x54625c=a116_0xbfe5ef;return serviceGroups['has'](_0x53eba6)||serviceByName[_0x54625c(0x13d)](_0x53eba6)?.[_0x54625c(0x169)]!==undefined;}export function getServiceEntry(_0x1c009c){const _0x565379=a116_0xbfe5ef;return serviceByName[_0x565379(0x13d)](_0x1c009c);}export function getLegacyHandler(_0x5ab534,_0x4349c3){return undefined;}export function getAllDefinitions(){const _0x40aecf=a116_0xbfe5ef;return Array[_0x40aecf(0x14f)](definitions[_0x40aecf(0x15e)]());}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a117_0x49bd40=a117_0x292c;(function(_0x17dc6a,_0x10d397){const _0x3ab29f=a117_0x292c,_0x532db6=_0x17dc6a();while(!![]){try{const _0x1b74c4=parseInt(_0x3ab29f(0x8e))/0x1*(-parseInt(_0x3ab29f(0xa8))/0x2)+-parseInt(_0x3ab29f(0x86))/0x3*(parseInt(_0x3ab29f(0x96))/0x4)+parseInt(_0x3ab29f(0x78))/0x5*(parseInt(_0x3ab29f(0x80))/0x6)+parseInt(_0x3ab29f(0x74))/0x7*(parseInt(_0x3ab29f(0x85))/0x8)+-parseInt(_0x3ab29f(0x9f))/0x9*(parseInt(_0x3ab29f(0x67))/0xa)+-parseInt(_0x3ab29f(0x7f))/0xb+-parseInt(_0x3ab29f(0x66))/0xc*(-parseInt(_0x3ab29f(0x94))/0xd);if(_0x1b74c4===_0x10d397)break;else _0x532db6['push'](_0x532db6['shift']());}catch(_0x4951df){_0x532db6['push'](_0x532db6['shift']());}}}(a117_0x27d7,0xc901b));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';function a117_0x27d7(){const _0xe77a60=['3840396sCrWmO','Script\x20name\x20defined\x20in\x20package.json','args','join','\x22\x20not\x20found\x20in\x20package.json.','\x20run\x20preview','\x0a\x20\x20Available\x20scripts:\x0a','run','5djutax','max','\x20\x20EXAMPLES','bun','all','push','65uronno','\x0a\x20\x20Usage:\x20','4VZNdFq','dev','keys','script','bun.lockb','\x20run\x20','\x20run\x20preview\x20--watch\x20\x20\x20#\x20parallel\x20build\x20--watch\x20+\x20preview','yarn.lock','validation','18yEkhyr','vite\x20build\x20--watch\x20exited\x20with\x20code\x20','length','cwd','Run\x20a\x20package.json\x20script','\x20run\x20<script>\x0a','boolean','vite\x20preview\x20exited\x20with\x20code\x20','.bin','320074slDXrW','\x20\x20AVAILABLE\x20SCRIPTS\x20\x20(current\x20project)','Available:\x20','belowMinimum','needsUpgrade','3707064UxpDoO','4889440XZMmQT','read','entries','vite','package.json','build','scripts','inherit','\x20run\x20build','watch','\x20\x20\x20\x20','map','close','1232jUQwws','padEnd','has','bun.lock','5lRmDhh','No\x20scripts\x20defined\x20in\x20package.json.','No\x20package.json\x20found\x20in\x20current\x20directory.','\x20exited\x20with\x20code\x20','--watch','error','node_modules','3761032KeaIWu','9189972tOdsVL','log','slice','yarn','parse','52144NikgbD'];a117_0x27d7=function(){return _0xe77a60;};return a117_0x27d7();}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',a117_0x49bd40(0x97)]);function readPackageScripts(_0x441a9d){const _0x10726c=a117_0x49bd40,_0x3f83e5=resolve(_0x441a9d,_0x10726c(0x6b));if(!existsSync(_0x3f83e5))return null;try{const _0x4e721c=JSON[_0x10726c(0x84)](readFileSync(_0x3f83e5,'utf-8'));return _0x4e721c[_0x10726c(0x6d)]??{};}catch{return null;}}function detectPackageManager(_0x22b2a5){const _0x2a06fb=a117_0x49bd40;if(existsSync(resolve(_0x22b2a5,_0x2a06fb(0x9a)))||existsSync(resolve(_0x22b2a5,_0x2a06fb(0x77))))return _0x2a06fb(0x91);if(existsSync(resolve(_0x22b2a5,'pnpm-lock.yaml')))return'pnpm';if(existsSync(resolve(_0x22b2a5,_0x2a06fb(0x9d))))return _0x2a06fb(0x83);return'npm';}async function versionCheck(_0x132361){const _0x2312de=a117_0x49bd40,_0x5d7cb8=await checkCliVersion();(_0x5d7cb8[_0x2312de(0x65)]||_0x5d7cb8[_0x2312de(0xab)])&&(printCliUpgradeWarning(_0x5d7cb8),assertCliVersionSupported(_0x5d7cb8));const _0x4fe94c=await checkSdkVersion(_0x132361);if(_0x4fe94c[_0x2312de(0x65)])printSdkUpgradeWarning(_0x4fe94c);}function spawnScript(_0x33346a,_0x384f01,_0x568f8b,_0x56a885){return new Promise((_0x4aebef,_0xace55e)=>{const _0xd2280c=a117_0x292c,_0x538896=['run',_0x384f01,..._0x568f8b],_0x4a9f44=spawn(_0x33346a,_0x538896,{'cwd':_0x56a885,'stdio':'inherit','shell':!![],'env':{...process.env,'PATH':''+join(_0x56a885,_0xd2280c(0x7e),_0xd2280c(0xa7))+delimiter+process.env.PATH}});_0x4a9f44['on'](_0xd2280c(0x73),_0x4b5e5b=>{const _0x99bfb6=_0xd2280c;if(_0x4b5e5b===0x0||_0x4b5e5b===null)_0x4aebef();else _0xace55e(new Error(_0x33346a+_0x99bfb6(0x9b)+_0x384f01+_0x99bfb6(0x7b)+_0x4b5e5b));}),_0x4a9f44['on'](_0xd2280c(0x7d),_0xace55e);});}function spawnViteBuildWatch(_0xf21111){return new Promise((_0x975ff3,_0x403fee)=>{const _0x21e3ed=a117_0x292c,_0x665974=spawn(_0x21e3ed(0x6a),[_0x21e3ed(0x6c),_0x21e3ed(0x7c)],{'cwd':_0xf21111,'stdio':'inherit','shell':!![],'env':{...process.env,'PATH':''+join(_0xf21111,'node_modules',_0x21e3ed(0xa7))+delimiter+process.env.PATH}});_0x665974['on'](_0x21e3ed(0x73),_0x18f0f8=>{const _0x9c0dab=_0x21e3ed;if(_0x18f0f8===0x0||_0x18f0f8===null)_0x975ff3();else _0x403fee(new Error(_0x9c0dab(0xa0)+_0x18f0f8));}),_0x665974['on'](_0x21e3ed(0x7d),_0x403fee);});}function spawnVitePreview(_0x2a6109){return new Promise((_0x12a721,_0x28f5aa)=>{const _0xb8f0e7=a117_0x292c,_0x20a913=spawn('vite',['preview'],{'cwd':_0x2a6109,'stdio':_0xb8f0e7(0x6e),'shell':!![],'env':{...process.env,'PATH':''+join(_0x2a6109,_0xb8f0e7(0x7e),_0xb8f0e7(0xa7))+delimiter+process.env.PATH}});_0x20a913['on'](_0xb8f0e7(0x73),_0x129b1b=>{const _0x159cfe=_0xb8f0e7;if(_0x129b1b===0x0||_0x129b1b===null)_0x12a721();else _0x28f5aa(new Error(_0x159cfe(0xa6)+_0x129b1b));}),_0x20a913['on'](_0xb8f0e7(0x7d),_0x28f5aa);});}const runFlags=[{'name':a117_0x49bd40(0x70),'type':a117_0x49bd40(0xa5),'description':'Enable\x20watch\x20mode\x20for\x20preview','default':![]}];function a117_0x292c(_0x54ea30,_0x56667b){_0x54ea30=_0x54ea30-0x65;const _0x27d7fe=a117_0x27d7();let _0x292c09=_0x27d7fe[_0x54ea30];return _0x292c09;}export const runDefinition={'service':a117_0x49bd40(0x8d),'command':'run','description':a117_0x49bd40(0xa3),'risk':a117_0x49bd40(0x68),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a117_0x49bd40(0x99),'description':a117_0x49bd40(0x87),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x529b31=a117_0x49bd40,_0x5bef6e=readPackageScripts(process[_0x529b31(0xa2)]()),_0x5d710e=[];if(_0x5bef6e&&Object[_0x529b31(0x98)](_0x5bef6e)[_0x529b31(0xa1)]>0x0){const _0x52f2a9=Object[_0x529b31(0x98)](_0x5bef6e),_0x46d064=Math[_0x529b31(0x8f)](..._0x52f2a9[_0x529b31(0x72)](_0x19b854=>_0x19b854['length']));_0x5d710e[_0x529b31(0x93)](_0x529b31(0xa9));for(const [_0x216161,_0x325b4d]of Object[_0x529b31(0x69)](_0x5bef6e)){_0x5d710e[_0x529b31(0x93)](_0x529b31(0x71)+CLI_BIN_NAME+_0x529b31(0x9b)+_0x216161[_0x529b31(0x75)](_0x46d064+0x2)+'#\x20'+_0x325b4d);}}else _0x5d710e[_0x529b31(0x93)](_0x529b31(0x90)),_0x5d710e[_0x529b31(0x93)](_0x529b31(0x71)+CLI_BIN_NAME+'\x20run\x20start'),_0x5d710e['push'](_0x529b31(0x71)+CLI_BIN_NAME+_0x529b31(0x6f)),_0x5d710e[_0x529b31(0x93)](_0x529b31(0x71)+CLI_BIN_NAME+_0x529b31(0x8b)),_0x5d710e['push'](_0x529b31(0x71)+CLI_BIN_NAME+_0x529b31(0x9c));return _0x5d710e[_0x529b31(0x89)]('\x0a');},async 'execute'(_0x1358d4){const _0x3ba222=a117_0x49bd40,_0x369680=process[_0x3ba222(0xa2)](),_0x2f462b=_0x1358d4['args'][0x0],_0x792f4b=_0x1358d4[_0x3ba222(0x88)][_0x3ba222(0x82)](0x1),_0x4e69f4=readPackageScripts(_0x369680);if(!_0x4e69f4)throw CliErrors['validation'](_0x3ba222(0x7a));if(!_0x2f462b){const _0x28252f=Object[_0x3ba222(0x98)](_0x4e69f4);if(_0x28252f[_0x3ba222(0xa1)]===0x0)console['log'](_0x3ba222(0x79));else{console[_0x3ba222(0x81)](_0x3ba222(0x8c));const _0x43ef33=Math[_0x3ba222(0x8f)](..._0x28252f[_0x3ba222(0x72)](_0x480f92=>_0x480f92[_0x3ba222(0xa1)]));for(const [_0x31e846,_0x23d337]of Object[_0x3ba222(0x69)](_0x4e69f4)){console[_0x3ba222(0x81)](_0x3ba222(0x71)+_0x31e846['padEnd'](_0x43ef33+0x2)+_0x23d337);}console[_0x3ba222(0x81)](_0x3ba222(0x95)+CLI_BIN_NAME+_0x3ba222(0xa4));}return{'ok':!![]};}if(!_0x4e69f4[_0x2f462b])throw CliErrors[_0x3ba222(0x9e)]('Script\x20\x22'+_0x2f462b+_0x3ba222(0x8a),_0x3ba222(0xaa)+(Object['keys'](_0x4e69f4)['join'](',\x20')||'(none)'));const _0x526803=detectPackageManager(_0x369680);VERSION_CHECK_SCRIPTS[_0x3ba222(0x76)](_0x2f462b)&&await versionCheck(_0x369680);if(_0x2f462b==='preview'&&_0x1358d4['bool'](_0x3ba222(0x70)))return await Promise[_0x3ba222(0x92)]([spawnViteBuildWatch(_0x369680),spawnVitePreview(_0x369680)]),{'ok':!![]};return await spawnScript(_0x526803,_0x2f462b,_0x792f4b,_0x369680),{'ok':!![]};}};
|