@lovrabet/rabetbase-cli 2.2.5-beta.1 → 2.3.1-beta.2
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/README.md +1 -1
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/add.js +1 -1
- package/lib/commands/app/discover.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/remove.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app/use.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -0
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.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/list.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/update.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/standard-page-status.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/non-interactive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/init.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/save.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/copy-directory.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/templates/README.md +15 -25
- package/templates/generate-api/api.ts.tpl +2 -2
- package/templates/generate-api/client.ts.tpl +2 -2
- package/templates/projects/sub-app-react-demo/CHANGELOG.md +15 -1
- package/templates/projects/sub-app-react-demo/README.md +159 -231
- package/templates/projects/sub-app-react-demo/docs/quick-start.md +145 -426
- package/templates/projects/sub-app-react-demo/src/api/api.ts +8 -65
- package/templates/projects/sub-app-react-demo/src/api/client.ts +10 -42
- package/templates/projects/sub-app-react-demo/src/components/demo-page-container/DemoPageContainer.module.css +28 -0
- package/templates/projects/sub-app-react-demo/src/components/demo-page-container/DemoPageContainer.tsx +55 -0
- package/templates/projects/sub-app-react-demo/src/layouts/MainLayout.tsx +6 -9
- package/templates/projects/sub-app-react-demo/src/main.tsx +10 -6
- package/templates/projects/sub-app-react-demo/src/pages/dashboard/index.tsx +3 -5
- package/templates/projects/sub-app-react-demo/src/pages/data-screen/index.tsx +153 -148
- package/templates/projects/sub-app-react-demo/src/pages/index.module.css +500 -0
- package/templates/projects/sub-app-react-demo/src/pages/index.tsx +517 -343
- package/templates/projects/sub-app-react-demo/src/pages/sdk-demo/index.tsx +325 -242
- package/templates/projects/sub-app-react-demo/src/pages/workbench/index.module.css +8 -6
- package/templates/projects/sub-app-react-demo/src/pages/workbench/index.tsx +174 -87
- package/templates/projects/sub-app-react-demo/src/style.css +19 -3
- package/templates/projects/sub-app-react-demo/src/vite-env.d.ts +1 -1
- package/lib/commands/skill/index.js +0 -1
- package/templates/projects/sub-app-react-demo/docs/API_RULE_CHANGE.md +0 -212
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x40b4cb,_0x10664e){const _0x4469d0=a116_0x3a38,_0x278fa5=_0x40b4cb();while(!![]){try{const _0x632d9e=parseInt(_0x4469d0(0x1f7))/0x1+parseInt(_0x4469d0(0x1fe))/0x2+parseInt(_0x4469d0(0x1ff))/0x3+parseInt(_0x4469d0(0x1f0))/0x4*(parseInt(_0x4469d0(0x1fa))/0x5)+-parseInt(_0x4469d0(0x1f9))/0x6+parseInt(_0x4469d0(0x1fb))/0x7*(-parseInt(_0x4469d0(0x1f5))/0x8)+-parseInt(_0x4469d0(0x202))/0x9*(parseInt(_0x4469d0(0x1f4))/0xa);if(_0x632d9e===_0x10664e)break;else _0x278fa5['push'](_0x278fa5['shift']());}catch(_0x218b0e){_0x278fa5['push'](_0x278fa5['shift']());}}}(a116_0x433b,0xae5b6));import{existsSync}from'node:fs';function a116_0x3a38(_0x5d53be,_0x59e523){_0x5d53be=_0x5d53be-0x1ea;const _0x433bca=a116_0x433b();let _0x3a38bd=_0x433bca[_0x5d53be];return _0x3a38bd;}import a116_0x1a5ce8 from'node:path';import a116_0x1bd139 from'chalk';import{input,confirm}from'@inquirer/prompts';import{getIsSessionValid}from'../../../auth/is-session-valid.js';import{authServer}from'../../../auth/auth-server.js';import{readConfig}from'../../../utils/config.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';function a116_0x433b(){const _0x2875da=['5955672PSQCen','34690IXMDXF','1877855fEdByb','Login\x20failed','trim','2364438UXpsJy','1912275XHJoUz','No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','production','9tZcsZZ','env','length','my-app','√\x20App\x20Code:\x20','√\x20Project\x20Name:\x20','test','cwd','string','Logged\x20in','resolve','Project\x20name\x20cannot\x20exceed\x2050\x20characters','708tULbGD','log','Project\x20name:','Skipped','13836770gamhDk','8wNuCnm','cyan','311050bqlozo','green'];a116_0x433b=function(){return _0x2875da;};return a116_0x433b();}export async function guidedCreateProject(_0x4004ad,_0x155f0d,_0x5e50ed){const _0x1999d7=a116_0x3a38,_0x5675bd=_0x1999d7(0x205),_0x7e8ad4=readConfig(),_0x8fd590=typeof _0x7e8ad4['env']===_0x1999d7(0x1ec)?_0x7e8ad4[_0x1999d7(0x203)]:undefined,_0xd7c16c=await input({'message':_0x1999d7(0x1f2),'default':_0x5675bd,'validate':_0x3a76f8=>{const _0xbb73c0=_0x1999d7,_0x58e716=_0x3a76f8[_0xbb73c0(0x1fd)]()||_0x5675bd;if(_0x58e716[_0xbb73c0(0x204)]>0x32)return _0xbb73c0(0x1ef);const _0x19c917=/^[A-Za-z0-9][A-Za-z0-9_-]*$/;if(_0x58e716&&!_0x19c917[_0xbb73c0(0x1ea)](_0x58e716))return'Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_';const _0x1777e4=a116_0x1a5ce8[_0xbb73c0(0x1ee)](process[_0xbb73c0(0x1eb)](),_0x58e716);if(existsSync(_0x1777e4))return'Directory\x20\x22'+_0x58e716+'\x22\x20already\x20exists';return!![];}});console[_0x1999d7(0x1f1)](a116_0x1bd139['green'](_0x1999d7(0x207)+a116_0x1bd139['cyan'](_0xd7c16c)));const _0xc20faf=await selectSingleAppcode(_0x5e50ed);console['log'](a116_0x1bd139[_0x1999d7(0x1f8)](_0x1999d7(0x206)+a116_0x1bd139[_0x1999d7(0x1f6)](_0xc20faf||'Not\x20set')));if(_0xc20faf){const _0x2da8ff=await getIsSessionValid();if(!_0x2da8ff){const _0x53991f=await confirm({'message':_0x1999d7(0x200),'default':!![]});if(_0x53991f){const _0x5db47e=await authServer({'silent':!![]});console[_0x1999d7(0x1f1)](a116_0x1bd139[_0x1999d7(0x1f8)]('√\x20Login\x20status:\x20'+a116_0x1bd139[_0x1999d7(0x1f6)](_0x5db47e?_0x1999d7(0x1ed):_0x1999d7(0x1fc))));}else console[_0x1999d7(0x1f1)](a116_0x1bd139[_0x1999d7(0x1f8)]('√\x20Login\x20status:\x20'+a116_0x1bd139[_0x1999d7(0x1f6)](_0x1999d7(0x1f3))));}await _0x4004ad({'projectName':_0xd7c16c,'appCode':_0xc20faf,'env':_0x155f0d||_0x8fd590||_0x1999d7(0x201)});}else await _0x4004ad({'projectName':_0xd7c16c,'env':_0x155f0d||_0x8fd590||_0x1999d7(0x201)});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a117_0x13cb(){const _0x16f8d8=['426502fKxzbZ','12VoMvuQ','3903486RqYqPT','23615sMDyDF','2156581CnglyP','5272496IUYrVw','302931wSvWtl','toFixed','160Afqnvl','replace','13066407ILXjNl'];a117_0x13cb=function(){return _0x16f8d8;};return a117_0x13cb();}function a117_0x3333(_0x20d951,_0x113f38){_0x20d951=_0x20d951-0x17b;const _0x13cb35=a117_0x13cb();let _0x333372=_0x13cb35[_0x20d951];return _0x333372;}(function(_0x50e6e5,_0x77a7fa){const _0x59b1ef=a117_0x3333,_0x5510ad=_0x50e6e5();while(!![]){try{const _0x1d4ad3=parseInt(_0x59b1ef(0x17e))/0x1+-parseInt(_0x59b1ef(0x17f))/0x2*(-parseInt(_0x59b1ef(0x184))/0x3)+-parseInt(_0x59b1ef(0x17b))/0x4*(parseInt(_0x59b1ef(0x181))/0x5)+parseInt(_0x59b1ef(0x180))/0x6+-parseInt(_0x59b1ef(0x182))/0x7+parseInt(_0x59b1ef(0x183))/0x8+-parseInt(_0x59b1ef(0x17d))/0x9;if(_0x1d4ad3===_0x77a7fa)break;else _0x5510ad['push'](_0x5510ad['shift']());}catch(_0x442e8f){_0x5510ad['push'](_0x5510ad['shift']());}}}(a117_0x13cb,0x5ffdd));export function formatElapsed(_0x517bb2){const _0x5b0b4a=a117_0x3333,_0x1168fe=Date['now']()-_0x517bb2;if(_0x1168fe<0x3e8)return _0x1168fe+'ms';const _0x23a2ba=(_0x1168fe/0x3e8)[_0x5b0b4a(0x185)](0x2),_0xd5cad2=_0x23a2ba[_0x5b0b4a(0x17c)](/\.?0+$/u,'');return _0xd5cad2+'s';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x29f644,_0x25a00e){const _0x3d8a08=a116_0x3b43,_0x5da1df=_0x29f644();while(!![]){try{const _0x18ee4c=-parseInt(_0x3d8a08(0x162))/0x1+-parseInt(_0x3d8a08(0x184))/0x2*(parseInt(_0x3d8a08(0x160))/0x3)+parseInt(_0x3d8a08(0x1a3))/0x4*(-parseInt(_0x3d8a08(0x189))/0x5)+-parseInt(_0x3d8a08(0x161))/0x6*(parseInt(_0x3d8a08(0x153))/0x7)+-parseInt(_0x3d8a08(0x192))/0x8*(parseInt(_0x3d8a08(0x197))/0x9)+parseInt(_0x3d8a08(0x18c))/0xa+parseInt(_0x3d8a08(0x18d))/0xb;if(_0x18ee4c===_0x25a00e)break;else _0x5da1df['push'](_0x5da1df['shift']());}catch(_0x5779a7){_0x5da1df['push'](_0x5da1df['shift']());}}}(a116_0x3eaa,0x4ad49));function a116_0x3b43(_0x50159b,_0x5ae603){_0x50159b=_0x50159b-0x151;const _0x3eaa74=a116_0x3eaa();let _0x3b43f7=_0x3eaa74[_0x50159b];return _0x3b43f7;}import a116_0x1acd40 from'path';import a116_0x3da64f from'fs';import a116_0x5b6a89 from'chalk';import a116_0x47310e 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';function a116_0x3eaa(){const _0x514ef1=['success','toLocaleString','writeFileSync','\x20config\x20set\x20appcode\x20<app-code>\x27','cd\x20','message','🚀\x20Next\x20Steps:','projectCode','API\x20configuration\x20pulled:\x20','W_OK','stringify','log','√\x20package.json\x20updated:\x20name=','*\x20Pulling\x20API\x20configuration...','开始创建项目:\x20','green','constants','length','resolve','\x20Generated\x20by\x20rabetbase\x20cli\x20','version','stableVersion','setLogPath','项目创建完成:\x20','trim','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','更新\x20package.json\x20name','\x20√\x20','name','38946udthhS','dirname','\x20&&\x20','Copy\x20project\x20files','1.0.0','1020415Aiusuh','\x20run\x20start','info','802490AnrNkr','18852966CSeHqB','string','create','minimumVersion','warn','2744912pybQra','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','\x20|\x20AppCode:\x20','needsUpgrade','belowMinimum','9sdLLVP','env','\x20\x202.\x20Pull\x20API\x20configuration:\x20','cyan','join','cookie','bold','rmSync','项目创建失败:\x20','existsSync','gray','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','4urSLjr','√\x20Configuration\x20file\x20created,\x20Apps:\x20','apps','清理项目目录失败:\x20','start','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27','parse','utf8','modelCount','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','readFileSync','Install\x20dependencies','chdir','package.json','2319828XuOwpN','error','CLI\x20版本检查','*\x20Configuring\x20AppCode\x20for\x20project\x20','Project\x20name:\x20','appCode','cwd','repeat','stop','\x20api\x20pull','\x20model(s)','production','defaultApp','27iYlzwb','6saeTyH','433792aaTgcI','projectName','配置应用AppCode失败','currentVersion','Project\x20name\x20cannot\x20be\x20empty'];a116_0x3eaa=function(){return _0x514ef1;};return a116_0x3eaa();}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(_0x428e07){const _0x6c7d3=a116_0x3b43,_0x5d501c=await checkCliVersion();(_0x5d501c[_0x6c7d3(0x195)]||_0x5d501c[_0x6c7d3(0x196)])&&(printCliUpgradeWarning(_0x5d501c),assertCliVersionSupported(_0x5d501c),logger[_0x6c7d3(0x18b)](_0x6c7d3(0x18f),_0x6c7d3(0x155),{'currentVersion':_0x5d501c[_0x6c7d3(0x165)],'stableVersion':_0x5d501c[_0x6c7d3(0x17c)],'minimumVersion':_0x5d501c[_0x6c7d3(0x190)],'needsUpgrade':_0x5d501c[_0x6c7d3(0x195)],'belowMinimum':_0x5d501c[_0x6c7d3(0x196)]}));if(_0x428e07[_0x6c7d3(0x16e)]&&_0x428e07['appCode'])await runCreate({'projectName':_0x428e07[_0x6c7d3(0x16e)],'appCode':_0x428e07[_0x6c7d3(0x158)],'env':_0x428e07[_0x6c7d3(0x198)]},_0x428e07);else{if(_0x428e07[_0x6c7d3(0x16e)]){const _0x294ac3=await selectSingleAppcode(_0x428e07[_0x6c7d3(0x19c)]);await runCreate({'projectName':_0x428e07[_0x6c7d3(0x16e)],'appCode':_0x294ac3||undefined,'env':_0x428e07[_0x6c7d3(0x198)]},_0x428e07);}else await guidedCreateProject(_0x3f1eb4=>runCreate(_0x3f1eb4,_0x428e07),_0x428e07[_0x6c7d3(0x198)],_0x428e07[_0x6c7d3(0x19c)]);}}async function runCreate(_0x1e0821,_0x1a6815){const _0x261c50=a116_0x3b43;if(!_0x1e0821[_0x261c50(0x163)]||_0x1e0821['projectName'][_0x261c50(0x17f)]()==='')throw new Error(_0x261c50(0x166));const _0x4d3cd9=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x4d3cd9['test'](_0x1e0821[_0x261c50(0x163)]))throw new Error(_0x261c50(0x193));if(_0x1e0821[_0x261c50(0x163)][_0x261c50(0x178)]>0x64)throw new Error(_0x261c50(0x180));const _0xfaa246=a116_0x1acd40[_0x261c50(0x179)](process[_0x261c50(0x159)](),_0x1e0821['projectName']);if(a116_0x3da64f['existsSync'](_0xfaa246))throw new Error('Project\x20directory\x20'+_0x1e0821['projectName']+'\x20already\x20exists');try{a116_0x3da64f['accessSync'](a116_0x1acd40[_0x261c50(0x185)](_0xfaa246),a116_0x3da64f[_0x261c50(0x177)][_0x261c50(0x170)]);}catch{throw new Error(_0x261c50(0x1a2));}logger[_0x261c50(0x17d)](_0xfaa246),logger[_0x261c50(0x18b)](_0x261c50(0x18f),_0x261c50(0x175)+_0x1e0821[_0x261c50(0x163)],{'projectDir':_0xfaa246,'appCode':_0x1e0821[_0x261c50(0x158)]}),console[_0x261c50(0x172)](),console[_0x261c50(0x172)](a116_0x5b6a89[_0x261c50(0x176)](_0x261c50(0x182))+_0x261c50(0x157)+a116_0x5b6a89[_0x261c50(0x176)](_0x1e0821[_0x261c50(0x163)])+(_0x1e0821[_0x261c50(0x158)]?_0x261c50(0x194)+a116_0x5b6a89[_0x261c50(0x19a)](_0x1e0821['appCode']):''));try{await runTask(_0x261c50(0x187),()=>copyProjectTemplate(_0x1e0821[_0x261c50(0x163)])),await updatePackageJsonName(_0x1e0821[_0x261c50(0x163)]),await runTask(_0x261c50(0x1ae),()=>installDependencies(_0x1e0821[_0x261c50(0x163)])),await runTask('Format\x20code',()=>formatProjectCode(_0x1e0821[_0x261c50(0x163)])),await configureAppCode(_0x1e0821[_0x261c50(0x163)],_0x1e0821[_0x261c50(0x158)]||'',_0x1e0821['env']);let _0x36c494=![];if(_0x1e0821[_0x261c50(0x158)]){console['log'](_0x261c50(0x174));const _0x39f5cc=process[_0x261c50(0x159)]();try{process[_0x261c50(0x151)](_0xfaa246);const _0x5f3331=_0x1e0821[_0x261c50(0x198)]||_0x261c50(0x15e);initEnv(_0x5f3331);const {configArray:_0xb894ba}=await fetchModelList(_0x1e0821['appCode'],_0x1a6815[_0x261c50(0x19c)]||''),_0x395fff=DEFAULT_API_DIR,_0x3550a3=await generateApiFile(_0xb894ba,'',_0x1e0821[_0x261c50(0x158)],!![],_0x5f3331,_0x395fff);console['log']('√\x20Pulled\x20'+_0xb894ba['length']+'\x20dataset(s),\x20generated\x20'+_0x3550a3[_0x261c50(0x1ab)]+_0x261c50(0x15d)),logger['info'](_0x261c50(0x18f),_0x261c50(0x16f)+_0x1e0821[_0x261c50(0x158)]);}catch(_0x5544e6){_0x36c494=!![],console[_0x261c50(0x172)]('!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull'),logger[_0x261c50(0x191)](_0x261c50(0x18f),'API\x20配置拉取异常',{'error':_0x5544e6 instanceof Error?_0x5544e6[_0x261c50(0x16c)]:String(_0x5544e6)});}finally{process[_0x261c50(0x151)](_0x39f5cc);}}logger[_0x261c50(0x167)]('create',_0x261c50(0x17e)+_0x1e0821[_0x261c50(0x163)]),console[_0x261c50(0x172)](),console[_0x261c50(0x172)](a116_0x5b6a89[_0x261c50(0x176)]('─'[_0x261c50(0x15a)](0x3c))),console[_0x261c50(0x172)](a116_0x5b6a89[_0x261c50(0x19a)][_0x261c50(0x19d)](_0x261c50(0x16d))),console[_0x261c50(0x172)](),console['log']('\x20\x201.\x20Start\x20project:\x20'+a116_0x5b6a89['cyan'][_0x261c50(0x19d)](_0x261c50(0x16b)+_0x1e0821[_0x261c50(0x163)]+_0x261c50(0x186)+CLI_BIN_NAME+_0x261c50(0x18a))),_0x36c494&&console['log'](_0x261c50(0x199)+a116_0x5b6a89[_0x261c50(0x19a)][_0x261c50(0x19d)](CLI_BIN_NAME+_0x261c50(0x15c))),console[_0x261c50(0x172)](a116_0x5b6a89[_0x261c50(0x176)]('─'['repeat'](0x3c)));}catch(_0x3b0210){logger[_0x261c50(0x154)](_0x261c50(0x18f),_0x261c50(0x19f)+_0x1e0821['projectName'],{'error':_0x3b0210 instanceof Error?_0x3b0210[_0x261c50(0x16c)]:String(_0x3b0210)});try{a116_0x3da64f[_0x261c50(0x1a0)](_0xfaa246)&&(console[_0x261c50(0x172)](_0x261c50(0x1ac)+_0xfaa246),a116_0x3da64f[_0x261c50(0x19e)](_0xfaa246,{'recursive':!![],'force':!![]}));}catch{logger[_0x261c50(0x191)](_0x261c50(0x18f),_0x261c50(0x1a6)+_0xfaa246);}throw _0x3b0210;}}async function runTask(_0x442dd4,_0x5a4923){const _0x13f065=a116_0x3b43,_0x40f3d3=a116_0x47310e(_0x442dd4+'...')[_0x13f065(0x1a7)]();try{const _0x22bc75=await _0x5a4923();_0x40f3d3[_0x13f065(0x15b)](),console[_0x13f065(0x172)](''+a116_0x5b6a89[_0x13f065(0x176)](_0x13f065(0x182))+_0x442dd4+'\x20'+a116_0x5b6a89[_0x13f065(0x1a1)]('['+_0x22bc75+']'));}catch(_0x1cfff3){_0x40f3d3['fail'](_0x442dd4);throw _0x1cfff3;}}async function updatePackageJsonName(_0x13e1be){const _0x2734ec=a116_0x3b43,_0x73443b=a116_0x1acd40['resolve'](process[_0x2734ec(0x159)](),_0x13e1be),_0x555fcc=a116_0x1acd40['join'](_0x73443b,_0x2734ec(0x152));try{console['log']('*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields');const _0x5de319=getRabetbaseCliPackageRoot(),_0x5d1839=a116_0x1acd40[_0x2734ec(0x19b)](_0x5de319,'package.json');let _0x207bde='1.0.0';try{const _0x33ee52=JSON[_0x2734ec(0x1a9)](a116_0x3da64f[_0x2734ec(0x1ad)](_0x5d1839,_0x2734ec(0x1aa)));_0x207bde=_0x33ee52['version']||'1.0.0';}catch{}const _0x44aeac=a116_0x3da64f[_0x2734ec(0x1ad)](_0x555fcc,_0x2734ec(0x1aa)),_0xe35e2e=JSON[_0x2734ec(0x1a9)](_0x44aeac);_0xe35e2e[_0x2734ec(0x183)]=_0x13e1be,_0xe35e2e['description']=_0x13e1be+_0x2734ec(0x17a)+_0x207bde,a116_0x3da64f[_0x2734ec(0x169)](_0x555fcc,JSON[_0x2734ec(0x171)](_0xe35e2e,null,0x2)+'\x0a',_0x2734ec(0x1aa)),console[_0x2734ec(0x172)](_0x2734ec(0x173)+_0x13e1be),logger[_0x2734ec(0x18b)](_0x2734ec(0x18f),_0x2734ec(0x181));}catch(_0x2cf423){logger['error'](_0x2734ec(0x18f),'更新\x20package.json\x20失败');throw _0x2cf423;}}async function configureAppCode(_0x54aa3e,_0x33be2b,_0x407837){const _0x375942=a116_0x3b43,_0x25b5d3=a116_0x1acd40[_0x375942(0x179)](process[_0x375942(0x159)](),_0x54aa3e),_0x1b36f1=a116_0x1acd40[_0x375942(0x19b)](_0x25b5d3,NEW_CONFIG_NAME);try{_0x33be2b?console['log'](_0x375942(0x156)+_0x54aa3e+':\x20'+_0x33be2b):console[_0x375942(0x172)]('*\x20Creating\x20configuration\x20file\x20for\x20project\x20'+_0x54aa3e);const _0x197cec=getRabetbaseCliPackageRoot(),_0x4ab07b=a116_0x1acd40['join'](_0x197cec,_0x375942(0x152));let _0x305d8d=_0x375942(0x188);try{const _0x29e2de=JSON['parse'](a116_0x3da64f[_0x375942(0x1ad)](_0x4ab07b,_0x375942(0x1aa)));_0x305d8d=_0x29e2de[_0x375942(0x17b)]||_0x375942(0x188);}catch{}const _0x474e63=readConfig(),_0x1ef11a=typeof _0x474e63[_0x375942(0x198)]===_0x375942(0x18e)?_0x474e63[_0x375942(0x198)]:undefined,_0x29fee1={};for(const _0x3470ca of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x474e63[_0x3470ca]!=null)_0x29fee1[_0x3470ca]=_0x474e63[_0x3470ca];}const _0x3a22b0=buildCanonicalProjectConfig(_0x29fee1,{'appCodes':_0x33be2b?[_0x33be2b]:[],'env':_0x407837||_0x1ef11a||_0x375942(0x15e),'metadata':{'createdAt':new Date()[_0x375942(0x168)](),'version':_0x305d8d}});writeConfigFile(_0x1b36f1,_0x3a22b0),_0x33be2b?console[_0x375942(0x172)](_0x375942(0x1a4)+Object['keys'](_0x3a22b0[_0x375942(0x1a5)]||{})[_0x375942(0x19b)](',\x20')+'\x20|\x20Default:\x20'+_0x3a22b0[_0x375942(0x15f)]):console['log'](_0x375942(0x1a8)+CLI_BIN_NAME+_0x375942(0x16a)),logger[_0x375942(0x18b)]('create','配置应用AppCode:\x20'+_0x33be2b);}catch(_0x421fe6){logger[_0x375942(0x154)](_0x375942(0x18f),_0x375942(0x164));}}
|
|
1
|
+
function a118_0x5f2e(_0x4b3f1b,_0x390b71){_0x4b3f1b=_0x4b3f1b-0x6b;const _0x622df9=a118_0x622d();let _0x5f2e7a=_0x622df9[_0x4b3f1b];return _0x5f2e7a;}(function(_0x4f0376,_0x84e01d){const _0x21f605=a118_0x5f2e,_0xb0c064=_0x4f0376();while(!![]){try{const _0x71a318=parseInt(_0x21f605(0x9b))/0x1*(-parseInt(_0x21f605(0x7f))/0x2)+parseInt(_0x21f605(0xa1))/0x3+parseInt(_0x21f605(0x8d))/0x4*(-parseInt(_0x21f605(0x86))/0x5)+parseInt(_0x21f605(0x8a))/0x6*(parseInt(_0x21f605(0xb8))/0x7)+-parseInt(_0x21f605(0x82))/0x8*(parseInt(_0x21f605(0xbb))/0x9)+parseInt(_0x21f605(0xa0))/0xa+parseInt(_0x21f605(0x7a))/0xb*(parseInt(_0x21f605(0xb3))/0xc);if(_0x71a318===_0x84e01d)break;else _0xb0c064['push'](_0xb0c064['shift']());}catch(_0x25ae3a){_0xb0c064['push'](_0xb0c064['shift']());}}}(a118_0x622d,0xb4253));import a118_0x2cd85b from'path';import a118_0x1e53e0 from'fs';import a118_0x210517 from'chalk';import a118_0x391224 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(_0x10a539){const _0x39a143=a118_0x5f2e,_0x26f172=await checkCliVersion();(_0x26f172['needsUpgrade']||_0x26f172[_0x39a143(0x9d)])&&(printCliUpgradeWarning(_0x26f172),assertCliVersionSupported(_0x26f172),logger[_0x39a143(0x78)](_0x39a143(0x98),_0x39a143(0x88),{'currentVersion':_0x26f172[_0x39a143(0xc5)],'stableVersion':_0x26f172[_0x39a143(0xa4)],'minimumVersion':_0x26f172['minimumVersion'],'needsUpgrade':_0x26f172[_0x39a143(0x7c)],'belowMinimum':_0x26f172['belowMinimum']}));if(_0x10a539[_0x39a143(0xac)]&&_0x10a539[_0x39a143(0x95)])await runCreate({'projectName':_0x10a539[_0x39a143(0xac)],'appCode':_0x10a539[_0x39a143(0x95)],'env':_0x10a539['env']},_0x10a539);else{if(_0x10a539[_0x39a143(0xac)]){const _0x23374c=await selectSingleAppcode(_0x10a539[_0x39a143(0xa7)]);await runCreate({'projectName':_0x10a539[_0x39a143(0xac)],'appCode':_0x23374c||undefined,'env':_0x10a539[_0x39a143(0x91)]},_0x10a539);}else await guidedCreateProject(_0x32d825=>runCreate(_0x32d825,_0x10a539),_0x10a539[_0x39a143(0x91)],_0x10a539['cookie']);}}async function runCreate(_0x1a66f2,_0x30f196){const _0x2873e4=a118_0x5f2e;if(!_0x1a66f2[_0x2873e4(0x93)]||_0x1a66f2[_0x2873e4(0x93)][_0x2873e4(0xaa)]()==='')throw new Error(_0x2873e4(0x92));const _0x1e7792=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x1e7792['test'](_0x1a66f2[_0x2873e4(0x93)]))throw new Error(_0x2873e4(0x87));if(_0x1a66f2[_0x2873e4(0x93)]['length']>0x64)throw new Error(_0x2873e4(0x99));const _0x3fd9cb=a118_0x2cd85b['resolve'](process[_0x2873e4(0x81)](),_0x1a66f2['projectName']);if(a118_0x1e53e0[_0x2873e4(0xae)](_0x3fd9cb))throw new Error(_0x2873e4(0xa3)+_0x1a66f2[_0x2873e4(0x93)]+_0x2873e4(0xb6));try{a118_0x1e53e0['accessSync'](a118_0x2cd85b[_0x2873e4(0xb7)](_0x3fd9cb),a118_0x1e53e0[_0x2873e4(0xa5)]['W_OK']);}catch{throw new Error(_0x2873e4(0x73));}logger[_0x2873e4(0xba)](_0x3fd9cb),logger[_0x2873e4(0x78)](_0x2873e4(0x98),'开始创建项目:\x20'+_0x1a66f2[_0x2873e4(0x93)],{'projectDir':_0x3fd9cb,'appCode':_0x1a66f2[_0x2873e4(0x95)]}),console[_0x2873e4(0xa6)](),console['log'](a118_0x210517['green'](_0x2873e4(0x79))+_0x2873e4(0x74)+a118_0x210517[_0x2873e4(0xb0)](_0x1a66f2[_0x2873e4(0x93)])+(_0x1a66f2['appCode']?_0x2873e4(0x71)+a118_0x210517[_0x2873e4(0x6c)](_0x1a66f2[_0x2873e4(0x95)]):''));try{await runTask('Copy\x20project\x20files',()=>copyProjectTemplate(_0x1a66f2[_0x2873e4(0x93)])),await updatePackageJsonName(_0x1a66f2[_0x2873e4(0x93)]),await runTask(_0x2873e4(0xc4),()=>installDependencies(_0x1a66f2['projectName'])),await runTask(_0x2873e4(0xbc),()=>formatProjectCode(_0x1a66f2[_0x2873e4(0x93)])),await configureAppCode(_0x1a66f2[_0x2873e4(0x93)],_0x1a66f2[_0x2873e4(0x95)]||'',_0x1a66f2[_0x2873e4(0x91)]);let _0x1f4bd2=![];if(_0x1a66f2[_0x2873e4(0x95)]){console[_0x2873e4(0xa6)](_0x2873e4(0xa9));const _0x75563f=process[_0x2873e4(0x81)]();try{process['chdir'](_0x3fd9cb);const _0x4309b8=_0x1a66f2[_0x2873e4(0x91)]||_0x2873e4(0x9f);initEnv(_0x4309b8);const {configArray:_0x2ad3e5}=await fetchModelList(_0x1a66f2['appCode'],_0x30f196[_0x2873e4(0xa7)]||''),_0x279fb6=DEFAULT_API_DIR,_0x2ed96e=await generateApiFile(_0x2ad3e5,'',_0x1a66f2[_0x2873e4(0x95)],!![],_0x4309b8,_0x279fb6);console[_0x2873e4(0xa6)](_0x2873e4(0x9a)+_0x2ad3e5[_0x2873e4(0x9e)]+_0x2873e4(0x8b)+_0x2ed96e['modelCount']+_0x2873e4(0x75)),logger['info'](_0x2873e4(0x98),_0x2873e4(0xbd)+_0x1a66f2[_0x2873e4(0x95)]);}catch(_0x147820){_0x1f4bd2=!![],console['log'](_0x2873e4(0xbe)),logger[_0x2873e4(0xaf)]('create',_0x2873e4(0xab),{'error':_0x147820 instanceof Error?_0x147820[_0x2873e4(0xb4)]:String(_0x147820)});}finally{process['chdir'](_0x75563f);}}logger['success'](_0x2873e4(0x98),'项目创建完成:\x20'+_0x1a66f2['projectName']),console[_0x2873e4(0xa6)](),console['log'](a118_0x210517[_0x2873e4(0xb0)]('─'[_0x2873e4(0x85)](0x3c))),console[_0x2873e4(0xa6)](a118_0x210517['cyan']['bold'](_0x2873e4(0xa8))),console[_0x2873e4(0xa6)](),console[_0x2873e4(0xa6)](_0x2873e4(0x89)+a118_0x210517['cyan'][_0x2873e4(0x7b)]('cd\x20'+_0x1a66f2[_0x2873e4(0x93)]+_0x2873e4(0xad)+CLI_BIN_NAME+'\x20run\x20start')),_0x1f4bd2&&console['log']('\x20\x202.\x20Pull\x20API\x20configuration:\x20'+a118_0x210517[_0x2873e4(0x6c)]['bold'](CLI_BIN_NAME+_0x2873e4(0x90))),console[_0x2873e4(0xa6)](a118_0x210517[_0x2873e4(0xb0)]('─'[_0x2873e4(0x85)](0x3c)));}catch(_0x31c59d){logger[_0x2873e4(0x83)]('create','项目创建失败:\x20'+_0x1a66f2['projectName'],{'error':_0x31c59d instanceof Error?_0x31c59d[_0x2873e4(0xb4)]:String(_0x31c59d)});try{a118_0x1e53e0['existsSync'](_0x3fd9cb)&&(console[_0x2873e4(0xa6)](_0x2873e4(0x94)+_0x3fd9cb),a118_0x1e53e0[_0x2873e4(0x6f)](_0x3fd9cb,{'recursive':!![],'force':!![]}));}catch{logger['warn'](_0x2873e4(0x98),'清理项目目录失败:\x20'+_0x3fd9cb);}throw _0x31c59d;}}async function runTask(_0x175ef3,_0x3f6028){const _0x563abf=a118_0x5f2e,_0x4c56f6=a118_0x391224(_0x175ef3+_0x563abf(0x70))[_0x563abf(0xb1)]();try{const _0x9185db=await _0x3f6028();_0x4c56f6[_0x563abf(0x6d)](),console[_0x563abf(0xa6)](''+a118_0x210517['green'](_0x563abf(0x79))+_0x175ef3+'\x20'+a118_0x210517[_0x563abf(0xa2)]('['+_0x9185db+']'));}catch(_0x18b52a){_0x4c56f6[_0x563abf(0x8c)](_0x175ef3);throw _0x18b52a;}}async function updatePackageJsonName(_0x54468d){const _0x5bf23e=a118_0x5f2e,_0x3d2dab=a118_0x2cd85b['resolve'](process[_0x5bf23e(0x81)](),_0x54468d),_0x21e613=a118_0x2cd85b[_0x5bf23e(0x96)](_0x3d2dab,_0x5bf23e(0xb9));try{console[_0x5bf23e(0xa6)](_0x5bf23e(0x97));const _0x110742=getRabetbaseCliPackageRoot(),_0x3d3909=a118_0x2cd85b[_0x5bf23e(0x96)](_0x110742,_0x5bf23e(0xb9));let _0x296762=_0x5bf23e(0x6b);try{const _0x4213ae=JSON[_0x5bf23e(0xb2)](a118_0x1e53e0[_0x5bf23e(0x7e)](_0x3d3909,_0x5bf23e(0xb5)));_0x296762=_0x4213ae['version']||_0x5bf23e(0x6b);}catch{}const _0x3eb7c0=a118_0x1e53e0[_0x5bf23e(0x7e)](_0x21e613,_0x5bf23e(0xb5)),_0x1a5e8c=JSON[_0x5bf23e(0xb2)](_0x3eb7c0);_0x1a5e8c['name']=_0x54468d,_0x1a5e8c[_0x5bf23e(0x84)]=_0x54468d+_0x5bf23e(0xc6)+_0x296762,a118_0x1e53e0[_0x5bf23e(0x76)](_0x21e613,JSON[_0x5bf23e(0x77)](_0x1a5e8c,null,0x2)+'\x0a','utf8'),console[_0x5bf23e(0xa6)](_0x5bf23e(0xbf)+_0x54468d),logger['info'](_0x5bf23e(0x98),_0x5bf23e(0x80));}catch(_0x558b61){logger[_0x5bf23e(0x83)](_0x5bf23e(0x98),_0x5bf23e(0x72));throw _0x558b61;}}function a118_0x622d(){const _0x4ecae4=['cwd','528vxpTWO','error','description','repeat','4980545SfRICo','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','CLI\x20版本检查','\x20\x201.\x20Start\x20project:\x20','366DoWCnX','\x20dataset(s),\x20generated\x20','fail','4hgEpaO','keys','\x20config\x20set\x20appcode\x20<app-code>\x27','\x20api\x20pull','env','Project\x20name\x20cannot\x20be\x20empty','projectName','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','appCode','join','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','create','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','√\x20Pulled\x20','1rkoSXS','配置应用AppCode失败','belowMinimum','length','production','9903790VVGdHs','2353998BxAnPe','gray','Project\x20directory\x20','stableVersion','constants','log','cookie','🚀\x20Next\x20Steps:','*\x20Pulling\x20API\x20configuration...','trim','API\x20配置拉取异常','projectCode','\x20&&\x20','existsSync','warn','green','start','parse','2724WRTOYC','message','utf8','\x20already\x20exists','dirname','8981WZjRVN','package.json','setLogPath','68850GdxXcu','Format\x20code','API\x20configuration\x20pulled:\x20','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','√\x20package.json\x20updated:\x20name=','\x20|\x20Default:\x20','version','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','resolve','Install\x20dependencies','currentVersion','\x20Generated\x20by\x20rabetbase\x20cli\x20','1.0.0','cyan','stop','配置应用AppCode:\x20','rmSync','...','\x20|\x20AppCode:\x20','更新\x20package.json\x20失败','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','Project\x20name:\x20','\x20model(s)','writeFileSync','stringify','info','\x20√\x20','77077TVrpUp','bold','needsUpgrade','√\x20Configuration\x20file\x20created,\x20Apps:\x20','readFileSync','2410026jJxjSB','更新\x20package.json\x20name'];a118_0x622d=function(){return _0x4ecae4;};return a118_0x622d();}async function configureAppCode(_0x29097f,_0x16dd86,_0x11e440){const _0x45a01c=a118_0x5f2e,_0x48ab8f=a118_0x2cd85b[_0x45a01c(0xc3)](process['cwd'](),_0x29097f),_0x29883e=a118_0x2cd85b[_0x45a01c(0x96)](_0x48ab8f,NEW_CONFIG_NAME);try{_0x16dd86?console[_0x45a01c(0xa6)]('*\x20Configuring\x20AppCode\x20for\x20project\x20'+_0x29097f+':\x20'+_0x16dd86):console[_0x45a01c(0xa6)](_0x45a01c(0xc2)+_0x29097f);const _0x2bc6c5=getRabetbaseCliPackageRoot(),_0x5321d9=a118_0x2cd85b[_0x45a01c(0x96)](_0x2bc6c5,_0x45a01c(0xb9));let _0x55d5f3=_0x45a01c(0x6b);try{const _0xa30a6d=JSON['parse'](a118_0x1e53e0[_0x45a01c(0x7e)](_0x5321d9,_0x45a01c(0xb5)));_0x55d5f3=_0xa30a6d[_0x45a01c(0xc1)]||_0x45a01c(0x6b);}catch{}const _0x441f39=readConfig(),_0x1f364d=typeof _0x441f39[_0x45a01c(0x91)]==='string'?_0x441f39[_0x45a01c(0x91)]:undefined,_0x28657e={};for(const _0x123775 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x441f39[_0x123775]!=null)_0x28657e[_0x123775]=_0x441f39[_0x123775];}const _0x2579e9=buildCanonicalProjectConfig(_0x28657e,{'appCodes':_0x16dd86?[_0x16dd86]:[],'env':_0x11e440||_0x1f364d||_0x45a01c(0x9f),'metadata':{'createdAt':new Date()['toLocaleString'](),'version':_0x55d5f3}});writeConfigFile(_0x29883e,_0x2579e9),_0x16dd86?console['log'](_0x45a01c(0x7d)+Object[_0x45a01c(0x8e)](_0x2579e9['apps']||{})[_0x45a01c(0x96)](',\x20')+_0x45a01c(0xc0)+_0x2579e9['defaultApp']):console['log']('√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27'+CLI_BIN_NAME+_0x45a01c(0x8f)),logger[_0x45a01c(0x78)](_0x45a01c(0x98),_0x45a01c(0x6e)+_0x16dd86);}catch(_0x429027){logger[_0x45a01c(0x83)](_0x45a01c(0x98),_0x45a01c(0x9c));}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1b9b5b,_0x67f483){const _0x5dcff7=a119_0x2a39,_0x3af0db=_0x1b9b5b();while(!![]){try{const _0x2a3e4e=parseInt(_0x5dcff7(0x11e))/0x1+parseInt(_0x5dcff7(0x10c))/0x2+-parseInt(_0x5dcff7(0xec))/0x3*(-parseInt(_0x5dcff7(0xe9))/0x4)+-parseInt(_0x5dcff7(0x118))/0x5*(-parseInt(_0x5dcff7(0xf0))/0x6)+parseInt(_0x5dcff7(0xfb))/0x7+parseInt(_0x5dcff7(0xff))/0x8+-parseInt(_0x5dcff7(0xfe))/0x9;if(_0x2a3e4e===_0x67f483)break;else _0x3af0db['push'](_0x3af0db['shift']());}catch(_0xfe2f09){_0x3af0db['push'](_0x3af0db['shift']());}}}(a119_0x5753,0x5d170));import a119_0x566cf0 from'path';import a119_0x5300a4 from'fs/promises';function a119_0x2a39(_0x481c64,_0x20cb3a){_0x481c64=_0x481c64-0xe7;const _0x575321=a119_0x5753();let _0x2a39b8=_0x575321[_0x481c64];return _0x2a39b8;}import{existsSync}from'fs';function a119_0x5753(){const _0x1c4adb=['\x0a\x20\x20cd\x20','package.json','221929rObswt','npm','chdir','trim','resolve','A\x20project\x20created\x20with\x20Lovrabet\x20CLI','writeFile','24bLxKmC','Project\x20directory\x20\x22','ignore','144546QHSAPd','log','validation','W_OK','3048DkBirZ','\x20\x20Pulling\x20API\x20configuration...','\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`','\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)','\x20api\x20pull`\x20manually\x20later.','access','\x20\x20√\x20Project\x20template\x20created','\x20\x20√\x20Code\x20formatted','needsUpgrade','\x0a√\x20Project\x20','Cannot\x20create\x20project\x20in\x20current\x20directory.','5201700cdvlEK','description','modelCount','17484876hcJLWt','762824Pjqxta','Project\x20name\x20contains\x20invalid\x20characters.','toLocaleString','*\x20Creating\x20project\x20','readFile','string','bun\x20--version','parse','env','stringify','name','\x20created\x20successfully!','bun\x20run\x20format','1448284bQHvFg','constants','test','\x22\x20already\x20exists.','\x20model(s)','Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','bun','Use\x20a\x20different\x20project\x20name.','\x20\x20rabetbase\x20run\x20start\x0a','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','Check\x20directory\x20permissions.','cwd','2465mjVext','belowMinimum','\x20dataset(s),\x20generated\x20','production'];a119_0x5753=function(){return _0x1c4adb;};return a119_0x5753();}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';import{promisify}from'util';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{readConfig}from'../../../utils/config.js';import{getCliVersion}from'../../../utils/version.js';import{CliErrors}from'../../../errors.js';import{fetchModelList}from'../../../api/fetch-model-list.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';const execAsync=promisify(exec);export async function createProjectNonInteractive(_0x4cb6b4,_0x3b1b78,_0x2a0585,_0xb043f9){const _0x1cddcc=a119_0x2a39,_0x568ab9=await checkCliVersion();(_0x568ab9[_0x1cddcc(0xf8)]||_0x568ab9[_0x1cddcc(0x119)])&&(printCliUpgradeWarning(_0x568ab9),assertCliVersionSupported(_0x568ab9));if(!_0x4cb6b4||_0x4cb6b4[_0x1cddcc(0x121)]()==='')throw CliErrors[_0x1cddcc(0xee)]('Project\x20name\x20cannot\x20be\x20empty.');const _0x1703e8=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x1703e8[_0x1cddcc(0x10e)](_0x4cb6b4))throw CliErrors[_0x1cddcc(0xee)](_0x1cddcc(0x100),_0x1cddcc(0x111));if(_0x4cb6b4['length']>0x64)throw CliErrors[_0x1cddcc(0xee)](_0x1cddcc(0x115));const _0x469363=a119_0x566cf0[_0x1cddcc(0x122)](process[_0x1cddcc(0x117)](),_0x4cb6b4);if(existsSync(_0x469363))throw CliErrors[_0x1cddcc(0xee)](_0x1cddcc(0xea)+_0x4cb6b4+_0x1cddcc(0x10f),_0x1cddcc(0x113));try{const _0x40172b=a119_0x566cf0['dirname'](_0x469363);await a119_0x5300a4[_0x1cddcc(0xf5)](_0x40172b,a119_0x5300a4[_0x1cddcc(0x10d)][_0x1cddcc(0xef)]);}catch{throw CliErrors[_0x1cddcc(0xee)](_0x1cddcc(0xfa),_0x1cddcc(0x116));}try{console['log'](_0x1cddcc(0x102)+_0x4cb6b4+'...');const _0x282623=getSubAppReactDemoTemplateDir();await copyDirectory(_0x282623,_0x469363),console[_0x1cddcc(0xed)](_0x1cddcc(0xf6)),await updatePackageJsonName(_0x4cb6b4),console[_0x1cddcc(0xed)]('\x20\x20√\x20package.json\x20updated'),console['log']('\x20\x20Installing\x20dependencies...'),console[_0x1cddcc(0xed)](_0x1cddcc(0xf3)),await formatCode(_0x469363),console['log'](_0x1cddcc(0xf7)),await configureProject(_0x4cb6b4,_0x2a0585,_0x3b1b78),console[_0x1cddcc(0xed)]('\x20\x20√\x20Configuration\x20file\x20created'),_0x2a0585&&await pullApiConfig(_0x469363,_0x2a0585,_0x3b1b78,_0xb043f9),console[_0x1cddcc(0xed)](_0x1cddcc(0xf9)+_0x4cb6b4+_0x1cddcc(0x10a)),console[_0x1cddcc(0xed)](_0x1cddcc(0x11c)+_0x4cb6b4),console[_0x1cddcc(0xed)](_0x1cddcc(0x114));}catch(_0x4c5e04){try{existsSync(_0x469363)&&await a119_0x5300a4['rm'](_0x469363,{'recursive':!![],'force':!![]});}catch{}throw _0x4c5e04;}}async function updatePackageJsonName(_0xd68c6f){const _0x4dc9d9=a119_0x2a39,_0x383b0e=a119_0x566cf0['resolve'](process['cwd'](),_0xd68c6f),_0x460803=a119_0x566cf0['join'](_0x383b0e,_0x4dc9d9(0x11d)),_0x2946c6=await a119_0x5300a4[_0x4dc9d9(0x103)](_0x460803,'utf-8'),_0x4a5946=JSON[_0x4dc9d9(0x106)](_0x2946c6);_0x4a5946[_0x4dc9d9(0x109)]=_0xd68c6f,_0x4a5946[_0x4dc9d9(0xfc)]=_0x4dc9d9(0xe7),await a119_0x5300a4[_0x4dc9d9(0xe8)](_0x460803,JSON[_0x4dc9d9(0x108)](_0x4a5946,null,0x2)+'\x0a');}function detectPackageManager(){const _0x52314a=a119_0x2a39;try{return execSync(_0x52314a(0x105),{'stdio':_0x52314a(0xeb)}),_0x52314a(0x112);}catch{return _0x52314a(0x11f);}}async function formatCode(_0xa1b63b){const _0x583c62=a119_0x2a39;try{await execAsync(_0x583c62(0x10b),{'cwd':_0xa1b63b});}catch{}}async function configureProject(_0x4bf7f6,_0x4a07ce,_0x15a276){const _0xd9c74=a119_0x2a39,_0x2202f7=a119_0x566cf0['resolve'](process['cwd'](),_0x4bf7f6),_0x1654bf=a119_0x566cf0['join'](_0x2202f7,NEW_CONFIG_NAME),_0x3a8d39=readConfig(),_0x593487=typeof _0x3a8d39[_0xd9c74(0x107)]===_0xd9c74(0x104)?_0x3a8d39[_0xd9c74(0x107)]:undefined,_0x364bda={};for(const _0x54432a of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x3a8d39[_0x54432a]!=null)_0x364bda[_0x54432a]=_0x3a8d39[_0x54432a];}const _0x29d0fd=buildCanonicalProjectConfig(_0x364bda,{'appCodes':_0x4a07ce?[_0x4a07ce]:[],'env':_0x15a276||_0x593487||_0xd9c74(0x11b),'metadata':{'createdAt':new Date()[_0xd9c74(0x101)](),'version':getCliVersion()}});writeConfigFile(_0x1654bf,_0x29d0fd);}async function pullApiConfig(_0x9fd6ea,_0xabf843,_0x41f273,_0x53eba2){const _0x31cf65=a119_0x2a39,_0x4c6285=process['cwd']();try{process[_0x31cf65(0x120)](_0x9fd6ea);const _0x66e6=_0x41f273||_0x31cf65(0x11b);initEnv(_0x66e6),console[_0x31cf65(0xed)](_0x31cf65(0xf1));const {configArray:_0x124682}=await fetchModelList(_0xabf843,_0x53eba2||''),_0x2aec1b=await generateApiFile(_0x124682,'',_0xabf843,!![],_0x66e6,DEFAULT_API_DIR);console[_0x31cf65(0xed)]('\x20\x20√\x20Pulled\x20'+_0x124682['length']+_0x31cf65(0x11a)+_0x2aec1b[_0x31cf65(0xfd)]+_0x31cf65(0x110));}catch(_0x4f4d0f){console[_0x31cf65(0xed)](_0x31cf65(0xf2)+CLI_BIN_NAME+_0x31cf65(0xf4));}finally{process[_0x31cf65(0x120)](_0x4c6285);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a120_0x2dda96=a120_0x55d3;(function(_0x3b5e44,_0x4422b6){const _0x3b8037=a120_0x55d3,_0x1753e6=_0x3b5e44();while(!![]){try{const _0x5c09bd=parseInt(_0x3b8037(0x194))/0x1+-parseInt(_0x3b8037(0x197))/0x2*(-parseInt(_0x3b8037(0x195))/0x3)+parseInt(_0x3b8037(0x19e))/0x4*(-parseInt(_0x3b8037(0x1a1))/0x5)+-parseInt(_0x3b8037(0x19b))/0x6+-parseInt(_0x3b8037(0x1a2))/0x7+-parseInt(_0x3b8037(0x193))/0x8*(-parseInt(_0x3b8037(0x19f))/0x9)+-parseInt(_0x3b8037(0x198))/0xa*(-parseInt(_0x3b8037(0x199))/0xb);if(_0x5c09bd===_0x4422b6)break;else _0x1753e6['push'](_0x1753e6['shift']());}catch(_0x3a988c){_0x1753e6['push'](_0x1753e6['shift']());}}}(a120_0x303f,0xb32df));import a120_0x55dd68 from'node:path';function a120_0x303f(){const _0x393e44=['1089yMkmxb','projects','102175lJYXgD','9989588Yyfyjr','49208TThKLE','803452zgBPij','42543zznAQo','../../../../','56OQPpZf','530jGPlgy','540859ymYEhz','templates','5755770ToMmaF','dirname','resolve','280jBNRwa'];a120_0x303f=function(){return _0x393e44;};return a120_0x303f();}function a120_0x55d3(_0x388d65,_0x47f896){_0x388d65=_0x388d65-0x193;const _0x303f20=a120_0x303f();let _0x55d373=_0x303f20[_0x388d65];return _0x55d373;}import{fileURLToPath}from'node:url';const __dirname=a120_0x55dd68[a120_0x2dda96(0x19c)](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x299706=a120_0x2dda96;return a120_0x55dd68[_0x299706(0x19d)](__dirname,_0x299706(0x196));}export function getSubAppReactDemoTemplateDir(){const _0x2b072b=a120_0x2dda96;return a120_0x55dd68['join'](getRabetbaseCliPackageRoot(),_0x2b072b(0x19a),_0x2b072b(0x1a0),'sub-app-react-demo');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x20e7d6,_0x1869cb){const _0x5bc897=a121_0x245b,_0x5b62c4=_0x20e7d6();while(!![]){try{const _0x566015=parseInt(_0x5bc897(0xc3))/0x1+-parseInt(_0x5bc897(0xc6))/0x2+parseInt(_0x5bc897(0xc5))/0x3+-parseInt(_0x5bc897(0xc4))/0x4*(-parseInt(_0x5bc897(0xc9))/0x5)+-parseInt(_0x5bc897(0xd0))/0x6+parseInt(_0x5bc897(0xd1))/0x7*(parseInt(_0x5bc897(0xcc))/0x8)+parseInt(_0x5bc897(0xcf))/0x9*(-parseInt(_0x5bc897(0xd2))/0xa);if(_0x566015===_0x1869cb)break;else _0x5b62c4['push'](_0x5b62c4['shift']());}catch(_0x586e9b){_0x5b62c4['push'](_0x5b62c4['shift']());}}}(a121_0x5b0a,0x5b06e));import a121_0x3c0993 from'node:path';import{copyDirectory}from'../../../utils/copy-directory.js';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a121_0x245b(_0x3dd42a,_0x570bfe){_0x3dd42a=_0x3dd42a-0xc2;const _0x5b0a65=a121_0x5b0a();let _0x245b18=_0x5b0a65[_0x3dd42a];return _0x245b18;}import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x17cf9c){const _0x4864dc=a121_0x245b,_0x316537=Date[_0x4864dc(0xcb)](),_0x5d07aa=a121_0x3c0993[_0x4864dc(0xc7)](process['cwd'](),_0x17cf9c);try{logger[_0x4864dc(0xce)](_0x4864dc(0xca),'开始复制项目模板',{'projectCode':_0x17cf9c,'templateDir':templateDir}),await copyDirectory(templateDir,_0x5d07aa);const _0x199544=Date[_0x4864dc(0xcb)]()-_0x316537;logger[_0x4864dc(0xc2)](_0x4864dc(0xca),_0x4864dc(0xcd),_0x199544,{'projectCode':_0x17cf9c});}catch(_0x1c7a4b){const _0x5c7f1b=Date['now']()-_0x316537;logger['error'](_0x4864dc(0xca),_0x4864dc(0xc8),{'projectCode':_0x17cf9c,'error':_0x1c7a4b instanceof Error?_0x1c7a4b[_0x4864dc(0xd3)]:String(_0x1c7a4b),'duration':_0x5c7f1b});throw _0x1c7a4b;}return formatElapsed(_0x316537);}function a121_0x5b0a(){const _0x340021=['572RKZcDJ','106626gmBdbK','371240UwiqlD','resolve','项目模板复制失败','17815ZCiWOQ','copy','now','360HTkGLp','项目模板复制完成','info','2126673toPoOf','1298670IOaAUB','46249TcgMKV','30uVkjWT','message','success','641436FrHDSR'];a121_0x5b0a=function(){return _0x340021;};return a121_0x5b0a();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x419152,_0x538e13){const _0x54bbe1=a122_0x44d0,_0x205fcf=_0x419152();while(!![]){try{const _0x19d916=parseInt(_0x54bbe1(0x82))/0x1+-parseInt(_0x54bbe1(0x7b))/0x2+-parseInt(_0x54bbe1(0x76))/0x3+-parseInt(_0x54bbe1(0x84))/0x4+-parseInt(_0x54bbe1(0x81))/0x5*(parseInt(_0x54bbe1(0x79))/0x6)+-parseInt(_0x54bbe1(0x7a))/0x7+parseInt(_0x54bbe1(0x7c))/0x8*(parseInt(_0x54bbe1(0x74))/0x9);if(_0x19d916===_0x538e13)break;else _0x205fcf['push'](_0x205fcf['shift']());}catch(_0x183ec5){_0x205fcf['push'](_0x205fcf['shift']());}}}(a122_0x4297,0xe6845));function a122_0x44d0(_0x4c2924,_0x738088){_0x4c2924=_0x4c2924-0x73;const _0x429752=a122_0x4297();let _0x44d024=_0x429752[_0x4c2924];return _0x44d024;}import a122_0x563171 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a122_0x4297(){const _0x14a15c=['npx','2930712cKOvCD','代码格式化完成','success','resolve','format','738UQJIng','info','5123688PVibrK','开始格式化代码','代码格式化失败','19842XryUSv','11567248euAIgI','469484gsvDmW','531536vwdnMy','cwd','prettier','--write','now','2610jYtAsL','1549987SmfUgt'];a122_0x4297=function(){return _0x14a15c;};return a122_0x4297();}import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x38dd9f){const _0x42b25e=a122_0x44d0,_0x1a167c=Date['now'](),_0x7e6ee5=a122_0x563171[_0x42b25e(0x87)](process[_0x42b25e(0x7d)](),_0x38dd9f);try{logger[_0x42b25e(0x75)]('format',_0x42b25e(0x77),{'projectCode':_0x38dd9f}),await execa(resolveNpmBin(_0x42b25e(0x83)),[_0x42b25e(0x7e),_0x42b25e(0x7f),'.'],{'cwd':_0x7e6ee5});const _0xd52bad=Date[_0x42b25e(0x80)]()-_0x1a167c;logger[_0x42b25e(0x86)](_0x42b25e(0x73),_0x42b25e(0x85),_0xd52bad,{'projectCode':_0x38dd9f});}catch(_0x25df6c){const _0xce8098=Date[_0x42b25e(0x80)]()-_0x1a167c;logger['error'](_0x42b25e(0x73),_0x42b25e(0x78),{'projectCode':_0x38dd9f,'error':_0x25df6c instanceof Error?_0x25df6c['message']:String(_0x25df6c),'duration':_0xce8098});throw _0x25df6c;}return formatElapsed(_0x1a167c);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a123_0x1d5c(){const _0x1b4224=['8693776bEtKJn','250pQSfdP','install','1276880sdCSoB','message','--registry','8713098KRaZfJ','resolve','21297xZQVuX','7229430aEYKzt','开始安装依赖','npm','25992736ZUwtMq','1632007WLRtrS','error','success','cwd','https://registry.npmmirror.com'];a123_0x1d5c=function(){return _0x1b4224;};return a123_0x1d5c();}(function(_0x52ed5e,_0x139cc4){const _0x27f6d5=a123_0x4d65,_0x474634=_0x52ed5e();while(!![]){try{const _0x5a0a05=parseInt(_0x27f6d5(0x1a4))/0x1+-parseInt(_0x27f6d5(0x198))/0x2*(-parseInt(_0x27f6d5(0x19f))/0x3)+parseInt(_0x27f6d5(0x19a))/0x4+parseInt(_0x27f6d5(0x1a0))/0x5+-parseInt(_0x27f6d5(0x19d))/0x6+parseInt(_0x27f6d5(0x197))/0x7+-parseInt(_0x27f6d5(0x1a3))/0x8;if(_0x5a0a05===_0x139cc4)break;else _0x474634['push'](_0x474634['shift']());}catch(_0x159386){_0x474634['push'](_0x474634['shift']());}}}(a123_0x1d5c,0xc975d));import a123_0x195f96 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';function a123_0x4d65(_0x36360f,_0x4c49f3){_0x36360f=_0x36360f-0x194;const _0x1d5c79=a123_0x1d5c();let _0x4d6515=_0x1d5c79[_0x36360f];return _0x4d6515;}export async function installDependencies(_0x223297){const _0x542c96=a123_0x4d65,_0x12f0c8=Date['now'](),_0x507d02=a123_0x195f96[_0x542c96(0x19e)](process[_0x542c96(0x195)](),_0x223297);try{logger['info'](_0x542c96(0x199),_0x542c96(0x1a1),{'projectCode':_0x223297,'registry':_0x542c96(0x196)}),await execa(resolveNpmBin(_0x542c96(0x1a2)),[_0x542c96(0x199),_0x542c96(0x19c),'https://registry.npmmirror.com'],{'cwd':_0x507d02});const _0x5819ba=Date['now']()-_0x12f0c8;logger[_0x542c96(0x194)](_0x542c96(0x199),'依赖安装完成',_0x5819ba,{'projectCode':_0x223297});}catch(_0x5582e8){const _0x432252=Date['now']()-_0x12f0c8;logger[_0x542c96(0x1a5)]('install','依赖安装失败',{'projectCode':_0x223297,'error':_0x5582e8 instanceof Error?_0x5582e8[_0x542c96(0x19b)]:String(_0x5582e8),'duration':_0x432252});throw _0x5582e8;}return formatElapsed(_0x12f0c8);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a124_0x4de022=a124_0x2c13;function a124_0x2c13(_0x1e48b8,_0x774b1c){_0x1e48b8=_0x1e48b8-0x115;const _0x4fb8df=a124_0x4fb8();let _0x2c1354=_0x4fb8df[_0x1e48b8];return _0x2c1354;}(function(_0x46a589,_0x3c62d1){const _0x546912=a124_0x2c13,_0x1270a7=_0x46a589();while(!![]){try{const _0x52bb87=parseInt(_0x546912(0x12e))/0x1*(parseInt(_0x546912(0x129))/0x2)+-parseInt(_0x546912(0x11b))/0x3*(-parseInt(_0x546912(0x138))/0x4)+parseInt(_0x546912(0x11c))/0x5+parseInt(_0x546912(0x12a))/0x6*(parseInt(_0x546912(0x13a))/0x7)+-parseInt(_0x546912(0x126))/0x8+parseInt(_0x546912(0x119))/0x9*(parseInt(_0x546912(0x13d))/0xa)+-parseInt(_0x546912(0x118))/0xb;if(_0x52bb87===_0x3c62d1)break;else _0x1270a7['push'](_0x1270a7['shift']());}catch(_0x47dce8){_0x1270a7['push'](_0x1270a7['shift']());}}}(a124_0x4fb8,0x56501));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{initConfig}from'../../commands/project/init.js';function a124_0x4fb8(){const _0x3f4f2e=['Usage:\x20','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','write','validation','trim','8HLYpLu','../../commands/project/create/main.js','206332hrfEFE','upgrade','string','320540CkYufB','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]','App\x20code\x20to\x20initialize','Initialize\x20.rabetbase.json\x20config\x20in\x20existing\x20project','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','10777569PFtZpF','72kiFUcU','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','329877iPEQsj','1669980FLvGjj','project','args','name','appcode','yes','Target\x20environment','boolean','nonInteractive','../../commands/project/create/non-interactive.js','762688fLCxfK','bool','cookie','206AiVAjW','102FsCSjE','Auto-confirm\x20prompts','Skip\x20confirmation\x20prompt','str','1138ELfwpo','create','Create\x20a\x20new\x20project','env','project-name'];a124_0x4fb8=function(){return _0x3f4f2e;};return a124_0x4fb8();}import{upgradeApp}from'../../commands/project/upgrade.js';const initFlags=[{'name':a124_0x4de022(0x120),'type':a124_0x4de022(0x13c),'description':a124_0x4de022(0x115)},{'name':'env','type':a124_0x4de022(0x13c),'description':a124_0x4de022(0x122)},{'name':a124_0x4de022(0x121),'type':a124_0x4de022(0x123),'description':a124_0x4de022(0x12b),'default':![]}],createFlags=[{'name':a124_0x4de022(0x11f),'type':'string','description':'Project\x20name'},{'name':a124_0x4de022(0x131),'type':'string','description':'Target\x20environment'},{'name':a124_0x4de022(0x120),'type':'string','description':a124_0x4de022(0x134)}],upgradeFlags=[{'name':a124_0x4de022(0x121),'type':a124_0x4de022(0x123),'description':a124_0x4de022(0x12c),'default':![]}];export const projectDefinitions=[{'service':a124_0x4de022(0x11d),'command':'init','description':a124_0x4de022(0x116),'risk':a124_0x4de022(0x135),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initFlags,async 'execute'(_0x394f49){const _0x23f243=a124_0x4de022;return await initConfig({'appcode':_0x394f49[_0x23f243(0x12d)](_0x23f243(0x120))||undefined,'env':_0x394f49[_0x23f243(0x12d)](_0x23f243(0x131))||undefined,'autoYes':_0x394f49[_0x23f243(0x127)](_0x23f243(0x121))}),{'ok':!![]};}},{'service':a124_0x4de022(0x11d),'command':a124_0x4de022(0x12f),'description':a124_0x4de022(0x130),'risk':a124_0x4de022(0x135),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a124_0x4de022(0x132),'description':a124_0x4de022(0x11a),'required':![]}],'flags':createFlags,async 'execute'(_0x1920de){const _0x16d44c=a124_0x4de022,{createApp:_0x32287a}=await import(_0x16d44c(0x139)),{createProjectNonInteractive:_0x4152d8}=await import(_0x16d44c(0x125)),_0x5826f4=_0x1920de[_0x16d44c(0x12d)](_0x16d44c(0x11f))[_0x16d44c(0x137)]()||_0x1920de[_0x16d44c(0x11e)][0x0]?.[_0x16d44c(0x137)](),_0x4990b9=_0x1920de['str'](_0x16d44c(0x131))||undefined,_0x516647=_0x1920de[_0x16d44c(0x12d)](_0x16d44c(0x120))||undefined;if(_0x1920de[_0x16d44c(0x124)]){if(!_0x5826f4)throw CliErrors[_0x16d44c(0x136)](_0x16d44c(0x117),_0x16d44c(0x133)+CLI_BIN_NAME+_0x16d44c(0x13e));await _0x4152d8(_0x5826f4,_0x4990b9,_0x516647,_0x1920de[_0x16d44c(0x128)]);}else await _0x32287a({'projectCode':_0x5826f4,'appCode':_0x516647,'env':_0x4990b9,'cookie':_0x1920de[_0x16d44c(0x128)]});return{'ok':!![]};}},{'service':a124_0x4de022(0x11d),'command':a124_0x4de022(0x13b),'description':'Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x71a14f){const _0x5fe3ad=a124_0x4de022;return await upgradeApp(_0x71a14f[_0x5fe3ad(0x124)],{'yes':_0x71a14f['bool']('yes')}),{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x594210,_0x13c630){const _0x21c9fe=a125_0x5626,_0x32d15d=_0x594210();while(!![]){try{const _0x57c3f8=parseInt(_0x21c9fe(0x9f))/0x1*(-parseInt(_0x21c9fe(0xbf))/0x2)+-parseInt(_0x21c9fe(0x9e))/0x3*(-parseInt(_0x21c9fe(0xb8))/0x4)+-parseInt(_0x21c9fe(0x9b))/0x5*(-parseInt(_0x21c9fe(0xcc))/0x6)+parseInt(_0x21c9fe(0xa5))/0x7+-parseInt(_0x21c9fe(0xaf))/0x8*(-parseInt(_0x21c9fe(0xc6))/0x9)+parseInt(_0x21c9fe(0xc5))/0xa*(-parseInt(_0x21c9fe(0xbc))/0xb)+-parseInt(_0x21c9fe(0xb7))/0xc*(parseInt(_0x21c9fe(0xb6))/0xd);if(_0x57c3f8===_0x13c630)break;else _0x32d15d['push'](_0x32d15d['shift']());}catch(_0x1aed01){_0x32d15d['push'](_0x32d15d['shift']());}}}(a125_0x4c7b,0x6730b));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a125_0x12683d from'chalk';import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';import{readRawConfig,getProjectConfigPath,writeConfigFile,NEW_CONFIG_NAME,LEGACY_CONFIG_NAMES}from'../../context.js';function a125_0x4c7b(){const _0x2ebdd9=['471eoanXP','77emGVBW','app','package.json','info','Upgrade\x20it\x20to\x20','init','1165794cgWJkZ','App\x20Code\x20cannot\x20be\x20empty','\x20project\x20init`\x20to\x20start\x20fresh.','apps','Migration\x20cancelled.\x20Run\x20`','1.0.0','toLocaleString','utf8','✓\x20Upgraded\x20','Invalid\x20App\x20Code','16144ugGYGV','defaultApp','cwd','trim','从旧配置文件升级成功','string','appcode','451412RDDtOA','276PsVblG','16480xNekPx','.bak','\x20\x20Old\x20file\x20backed\x20up\x20as\x20','\x20api\x20pull\x27','11qWObiP','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','setLogPath','6962jEcGHj','env','../..','cyan','\x20→\x20.rabetbase.json','\x20\x20Default:\x20','3224490VjIXFB','1503ILSmuG','\x20\x20appcode:\x20','?\x20(Old\x20file\x20→\x20*.bak)','keys','yellow','.rabetbase.json','3968502nHfzIO','green','初始化项目配置文件成功','production','version','\x20\x20Apps:\x20','5PYWplL','bold','log'];a125_0x4c7b=function(){return _0x2ebdd9;};return a125_0x4c7b();}import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x449a3a){const _0x1cce5f=a125_0x5626,{appcode:_0x57e01e,env:_0x5c6947,autoYes:_0x44bbf3}=_0x449a3a,_0x3f9bb4=process[_0x1cce5f(0xb1)]();if(getProjectConfigPath())throw new Error(_0x1cce5f(0xbd));let _0x4b2394;for(const _0x27f087 of LEGACY_CONFIG_NAMES){const _0x105ff3=resolve(_0x3f9bb4,_0x27f087);if(existsSync(_0x105ff3)){_0x4b2394=_0x105ff3;break;}}if(_0x4b2394){let _0x5b61d3={};try{_0x5b61d3=JSON['parse'](readFileSync(_0x4b2394,_0x1cce5f(0xac)));}catch{}const _0x526f52=basename(_0x4b2394),_0x2b7d3f=_0x5b61d3?.['appcode']||_0x5b61d3?.['app'];let _0xb77c74=_0x44bbf3;!_0x44bbf3&&(console['log'](a125_0x12683d[_0x1cce5f(0xca)]('⚠\x20Found\x20legacy\x20configuration\x20file:\x20'+a125_0x12683d[_0x1cce5f(0x9c)](_0x526f52))),_0x2b7d3f&&console[_0x1cce5f(0x9d)](a125_0x12683d[_0x1cce5f(0xc2)](_0x1cce5f(0xc7)+_0x2b7d3f)),_0xb77c74=await confirm({'message':_0x1cce5f(0xa3)+a125_0x12683d[_0x1cce5f(0x9c)](_0x1cce5f(0xcb))+_0x1cce5f(0xc8),'default':!![]}));if(!_0xb77c74){console[_0x1cce5f(0x9d)](_0x1cce5f(0xa9)+CLI_BIN_NAME+_0x1cce5f(0xa7));return;}const _0x2ecc69=resolve(_0x3f9bb4,NEW_CONFIG_NAME),_0x577182=getCliVersionFromPkg(),_0x44cfe9=readRawConfig(),_0x1754e3=_0x57e01e||(typeof _0x5b61d3?.[_0x1cce5f(0xb5)]===_0x1cce5f(0xb4)?_0x5b61d3[_0x1cce5f(0xb5)]:undefined)||(typeof _0x5b61d3?.[_0x1cce5f(0xa0)]===_0x1cce5f(0xb4)?_0x5b61d3[_0x1cce5f(0xa0)]:undefined)||await askAppcode(),_0x1c22be=typeof _0x5b61d3?.[_0x1cce5f(0xc0)]===_0x1cce5f(0xb4)?_0x5b61d3[_0x1cce5f(0xc0)]:typeof _0x44cfe9[_0x1cce5f(0xc0)]===_0x1cce5f(0xb4)?_0x44cfe9['env']:'production',_0x32c773=buildCanonicalProjectConfig({..._0x44cfe9,..._0x5b61d3},{'appCodes':[_0x1754e3],'env':_0x1c22be,'metadata':{'version':_0x577182,'migratedAt':new Date()[_0x1cce5f(0xab)](),'migratedFrom':_0x4b2394}});writeConfigFile(_0x2ecc69,_0x32c773);const _0x4d55ba=_0x4b2394+_0x1cce5f(0xb9);renameSync(_0x4b2394,_0x4d55ba),logger[_0x1cce5f(0xbe)](_0x3f9bb4),logger[_0x1cce5f(0xa2)](_0x1cce5f(0xa4),_0x1cce5f(0xb3),{'from':_0x4b2394,'to':_0x2ecc69,'appcode':_0x1754e3,'env':_0x32c773[_0x1cce5f(0xc0)]}),console[_0x1cce5f(0x9d)](a125_0x12683d[_0x1cce5f(0x96)](_0x1cce5f(0xad)+_0x526f52+_0x1cce5f(0xc3))),console[_0x1cce5f(0x9d)](a125_0x12683d['cyan'](_0x1cce5f(0x9a)+Object[_0x1cce5f(0xc9)](_0x32c773[_0x1cce5f(0xa8)]||{})['join'](',\x20'))),console[_0x1cce5f(0x9d)](a125_0x12683d[_0x1cce5f(0xc2)](_0x1cce5f(0xc4)+_0x32c773[_0x1cce5f(0xb0)])),console[_0x1cce5f(0x9d)](a125_0x12683d['gray'](_0x1cce5f(0xba)+_0x526f52+_0x1cce5f(0xb9)));return;}const _0x3e522a=_0x57e01e||await askAppcode(),_0x573b16=resolve(_0x3f9bb4,NEW_CONFIG_NAME),_0x1e4155=getCliVersionFromPkg(),_0x516518=readRawConfig(),_0x182dd6=typeof _0x516518[_0x1cce5f(0xc0)]===_0x1cce5f(0xb4)?_0x516518[_0x1cce5f(0xc0)]:undefined,_0x25f20d=buildCanonicalProjectConfig({},{'appCodes':[_0x3e522a],'env':_0x5c6947||_0x182dd6||_0x1cce5f(0x98),'metadata':{'version':_0x1e4155,'createdAt':new Date()[_0x1cce5f(0xab)]()}});writeConfigFile(_0x573b16,_0x25f20d),logger[_0x1cce5f(0xbe)](_0x3f9bb4),logger['info'](_0x1cce5f(0xa4),_0x1cce5f(0x97),{'appcode':_0x3e522a,'env':_0x25f20d['env'],'version':_0x25f20d[_0x1cce5f(0x99)],'configPath':_0x573b16}),console[_0x1cce5f(0x9d)](a125_0x12683d[_0x1cce5f(0x96)]('✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory')),console[_0x1cce5f(0x9d)](a125_0x12683d[_0x1cce5f(0xc2)](_0x1cce5f(0x9a)+Object[_0x1cce5f(0xc9)](_0x25f20d['apps']||{})['join'](',\x20'))),console[_0x1cce5f(0x9d)](a125_0x12683d[_0x1cce5f(0xc2)](_0x1cce5f(0xc4)+_0x25f20d[_0x1cce5f(0xb0)])),console[_0x1cce5f(0x9d)]('\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27'+CLI_BIN_NAME+'\x20api\x20generate\x27\x20and\x20\x27'+CLI_BIN_NAME+_0x1cce5f(0xbb));}function askAppcode(){return input({'message':'Please\x20enter\x20App\x20Code:','validate':_0x21b093=>{const _0x168a67=a125_0x5626;if(!_0x21b093[_0x168a67(0xb2)]())return _0x168a67(0xa6);const {valid:_0x37bd3e,message:_0x1b2899}=validateAppcode(_0x21b093[_0x168a67(0xb2)]());return _0x37bd3e||_0x1b2899||_0x168a67(0xae);}});}function a125_0x5626(_0x5e374e,_0x156501){_0x5e374e=_0x5e374e-0x96;const _0x4c7b3e=a125_0x4c7b();let _0x562681=_0x4c7b3e[_0x5e374e];return _0x562681;}function getCliVersionFromPkg(){const _0x459b01=a125_0x5626;try{const _0x141e85=fileURLToPath(import.meta.url),_0x4fe471=resolve(dirname(_0x141e85),_0x459b01(0xc1)),_0x555ccf=JSON['parse'](readFileSync(resolve(_0x4fe471,_0x459b01(0xa1)),'utf8'));return _0x555ccf[_0x459b01(0x99)]||'1.0.0';}catch{return _0x459b01(0xaa);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a124_0x2973df=a124_0x303a;(function(_0x4e1a77,_0x5ab289){const _0x119cdd=a124_0x303a,_0x37ce70=_0x4e1a77();while(!![]){try{const _0x4161f9=parseInt(_0x119cdd(0xd5))/0x1*(-parseInt(_0x119cdd(0x128))/0x2)+parseInt(_0x119cdd(0xee))/0x3+-parseInt(_0x119cdd(0xc0))/0x4+-parseInt(_0x119cdd(0xcb))/0x5+-parseInt(_0x119cdd(0x11b))/0x6+parseInt(_0x119cdd(0xcf))/0x7*(-parseInt(_0x119cdd(0xb3))/0x8)+parseInt(_0x119cdd(0xda))/0x9*(parseInt(_0x119cdd(0xe5))/0xa);if(_0x4161f9===_0x5ab289)break;else _0x37ce70['push'](_0x37ce70['shift']());}catch(_0x48e4a3){_0x37ce70['push'](_0x37ce70['shift']());}}}(a124_0x4b4c,0x5e93e));import a124_0x3899f4 from'chalk';import a124_0x2030c3 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[a124_0x2973df(0xca)](_0x354123=>_0x354123!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x399446){const _0x2b1ed5=a124_0x2973df,_0x50814a=[];for(const _0xa8773a of Object['values'](CORE_IDE_CONFIGS)){if(_0xa8773a[_0x2b1ed5(0x10d)])for(const _0x4ba84c of _0xa8773a['files']){_0x50814a[_0x2b1ed5(0x104)](resolve(_0x399446,_0x4ba84c[_0x2b1ed5(0x12b)]));}}return _0x50814a;}function analyse(_0x55ce9c){const _0x2addcc=a124_0x2973df;let _0x3693d1=null;const _0x4864a8=resolve(_0x55ce9c,NEW_CONFIG_NAME),_0x5e81b4=existsSync(_0x4864a8);for(const _0x1e45bd of LEGACY_CONFIG_NAMES){const _0x1f7050=resolve(_0x55ce9c,_0x1e45bd);if(existsSync(_0x1f7050)){const _0x2e66b3=readConfigFile(_0x1f7050),_0x148e94=Object['keys'](_0x2e66b3)[_0x2addcc(0xca)](_0x1a89f3=>typeof _0x2e66b3[_0x1a89f3]!==_0x2addcc(0xc6));_0x3693d1={'oldPath':_0x1f7050,'hasNewConfig':_0x5e81b4,'fields':_0x148e94};break;}}const _0xb33250=[],_0x19aa01=resolve(_0x55ce9c,_0x2addcc(0xf4));if(existsSync(_0x19aa01))_0xb33250[_0x2addcc(0x104)](_0x19aa01);const _0x58d00b=resolve(_0x55ce9c,_0x2addcc(0xfa));if(existsSync(_0x58d00b))_0xb33250[_0x2addcc(0x104)](_0x58d00b);const _0x5b4d6d=resolve(_0x55ce9c,_0x2addcc(0xef));if(existsSync(_0x5b4d6d))_0xb33250[_0x2addcc(0x104)](_0x5b4d6d);for(const _0x3bdf28 of collectIdeSkillFiles(_0x55ce9c)){if(existsSync(_0x3bdf28))_0xb33250[_0x2addcc(0x104)](_0x3bdf28);}let _0xb52401=null;const _0x23cba0=resolve(_0x55ce9c,_0x2addcc(0x123));if(existsSync(_0x23cba0))try{const _0x581951=JSON[_0x2addcc(0xf0)](readFileSync(_0x23cba0,_0x2addcc(0xfb)));if(_0x581951?.[_0x2addcc(0xff)]&&typeof _0x581951['mcpServers']==='object'){const _0x4e9104=[];for(const [_0x5bc7ba,_0x308caf]of Object[_0x2addcc(0x116)](_0x581951['mcpServers'])){const _0x5d2d1f=_0x308caf;_0x5d2d1f?.['args']&&Array[_0x2addcc(0xb9)](_0x5d2d1f[_0x2addcc(0x10b)])&&_0x5d2d1f[_0x2addcc(0x10b)][_0x2addcc(0xfd)](_0x1ae3a5=>typeof _0x1ae3a5===_0x2addcc(0xd9)&&_0x1ae3a5[_0x2addcc(0xb6)](_0x2addcc(0xdb)))&&_0x4e9104[_0x2addcc(0x104)](_0x5bc7ba);}_0x4e9104[_0x2addcc(0x109)]>0x0&&(_0xb52401={'path':_0x23cba0,'keys':_0x4e9104});}}catch{}const _0x1edd0a=_0xb33250[_0x2addcc(0x109)]>0x0||_0x3693d1!==null;let _0x262721=null;const _0x2e48cf=resolve(_0x55ce9c,'package.json');if(existsSync(_0x2e48cf))try{const _0x210939=JSON['parse'](readFileSync(_0x2e48cf,_0x2addcc(0xfb)));for(const _0x767726 of[_0x2addcc(0xd0),_0x2addcc(0xec)]){const _0x56e5db=_0x210939?.[_0x767726]?.['@lovrabet/sdk'];if(typeof _0x56e5db===_0x2addcc(0xd9)){_0x56e5db!=='latest'&&(_0x262721={'pkgPath':_0x2e48cf,'currentVersion':_0x56e5db,'field':_0x767726});break;}}}catch{}return{'configMigration':_0x3693d1,'oldArtifacts':_0xb33250,'oldMcpConfig':_0xb52401,'needsSkillSwap':_0x1edd0a,'sdkUpgrade':_0x262721};}function a124_0x303a(_0x169a27,_0x104861){_0x169a27=_0x169a27-0xb3;const _0x4b4c52=a124_0x4b4c();let _0x303af9=_0x4b4c52[_0x169a27];return _0x303af9;}function printReport(_0x57bec1){const _0x3b4ba0=a124_0x2973df,{configMigration:_0x25cc9e,oldArtifacts:_0xd0d4f,oldMcpConfig:_0x1efa74,needsSkillSwap:_0x5bdaad}=_0x57bec1;console[_0x3b4ba0(0xb4)](''),console[_0x3b4ba0(0xb4)](a124_0x3899f4[_0x3b4ba0(0x111)](_0x3b4ba0(0xe2))),console[_0x3b4ba0(0xb4)]('');_0x25cc9e?(console['log'](a124_0x3899f4[_0x3b4ba0(0xe9)](_0x3b4ba0(0xd1))+('\x20\x20'+a124_0x3899f4[_0x3b4ba0(0xfc)](_0x25cc9e[_0x3b4ba0(0x120)]))),console[_0x3b4ba0(0xb4)]('\x20\x20New\x20config\x20(.rabetbase.json):\x20'+(_0x25cc9e[_0x3b4ba0(0xea)]?a124_0x3899f4['green'](_0x3b4ba0(0xf9)):a124_0x3899f4[_0x3b4ba0(0xc8)](_0x3b4ba0(0x114)))),console['log'](_0x3b4ba0(0x110)+_0x25cc9e[_0x3b4ba0(0xba)][_0x3b4ba0(0xe4)](',\x20')),console['log'](_0x3b4ba0(0x11c))):console[_0x3b4ba0(0xb4)](a124_0x3899f4[_0x3b4ba0(0xe9)](_0x3b4ba0(0xd1))+'\x20\x20'+a124_0x3899f4[_0x3b4ba0(0xc8)](_0x3b4ba0(0xf1)));console['log']('');if(_0xd0d4f['length']>0x0){console['log'](a124_0x3899f4[_0x3b4ba0(0xe9)](_0x3b4ba0(0xe1)));for(const _0x55a9f9 of _0xd0d4f){console[_0x3b4ba0(0xb4)]('\x20\x20'+a124_0x3899f4[_0x3b4ba0(0xf7)]('FOUND')+'\x20\x20'+_0x55a9f9);}console[_0x3b4ba0(0xb4)](_0x3b4ba0(0x129));}else console[_0x3b4ba0(0xb4)](a124_0x3899f4[_0x3b4ba0(0xe9)](_0x3b4ba0(0xe1))+'\x20\x20'+a124_0x3899f4['gray']('none\x20found'));console[_0x3b4ba0(0xb4)]('');_0x1efa74?(console[_0x3b4ba0(0xb4)](a124_0x3899f4[_0x3b4ba0(0xe9)](_0x3b4ba0(0xbf))+('\x20\x20'+a124_0x3899f4[_0x3b4ba0(0xfc)](_0x1efa74[_0x3b4ba0(0x12b)])+_0x3b4ba0(0xeb)+_0x1efa74[_0x3b4ba0(0xed)][_0x3b4ba0(0xe4)](',\x20'))),console[_0x3b4ba0(0xb4)]('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console[_0x3b4ba0(0xb4)](a124_0x3899f4[_0x3b4ba0(0xe9)](_0x3b4ba0(0xbf))+'\x20\x20'+a124_0x3899f4[_0x3b4ba0(0xc8)](_0x3b4ba0(0x125)));console[_0x3b4ba0(0xb4)](''),console[_0x3b4ba0(0xb4)](a124_0x3899f4['cyan'](_0x3b4ba0(0xe3))+('\x20\x20'+(_0x5bdaad?a124_0x3899f4[_0x3b4ba0(0xfc)]('needed'):a124_0x3899f4['green'](_0x3b4ba0(0x10e)))));_0x5bdaad&&console[_0x3b4ba0(0xb4)]('\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`'+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console['log']('');if(_0x57bec1[_0x3b4ba0(0xbb)]){const {currentVersion:_0x22ea91,field:_0x219b32,pkgPath:_0x492c57}=_0x57bec1['sdkUpgrade'];console[_0x3b4ba0(0xb4)](a124_0x3899f4[_0x3b4ba0(0xe9)]('@lovrabet/sdk:')+('\x20\x20'+a124_0x3899f4[_0x3b4ba0(0xfc)](_0x492c57))),console[_0x3b4ba0(0xb4)](_0x3b4ba0(0xd2)+_0x219b32+':\x20'+a124_0x3899f4[_0x3b4ba0(0xfc)](_0x22ea91)+_0x3b4ba0(0x11e)+a124_0x3899f4[_0x3b4ba0(0xd4)](_0x3b4ba0(0x106))),console[_0x3b4ba0(0xb4)]('\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)');}else console[_0x3b4ba0(0xb4)](a124_0x3899f4[_0x3b4ba0(0xe9)]('@lovrabet/sdk:')+'\x20\x20'+a124_0x3899f4[_0x3b4ba0(0xc8)]('not\x20found\x20or\x20already\x20at\x20latest'));console['log']('');}function a124_0x4b4c(){const _0x556272=['===\x20Upgrade\x20Summary\x20===','MCP\x20config:','486524fDNSfs','skipped','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','CANCEL','skipped\x20(no\x20legacy\x20config)','oldMcpConfig','undefined','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','gray','stringify','filter','2538245Lugdiy','failed','no\x20matching\x20entry\x20found','\x20removed','14BYyqVa','dependencies','Config\x20file:','\x20\x20Current\x20version\x20in\x20','exit\x20','green','1tJMvie','detail','error','fail','string','45epKpvR','@lovrabet/dataset-mcp-server','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','Upgrade\x20cancelled.','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','white','\x20\x20\x20\x20\x20\x20\x20','Legacy\x20artifacts:','===\x20Upgrade\x20Analysis\x20===','Skill\x20swap:','join','4426190wjXdCQ','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','Remove\x20legacy\x20artifacts','cyan','hasNewConfig','\x20→\x20keys:\x20','devDependencies','keys','198504QXgqUV','.claude/skills/lovrabet','parse','no\x20legacy\x20config\x20found','@lovrabet/sdk','Upgrade\x20completed\x20successfully!','.lovrabet','Step\x201/7:\x20Config\x20migration\x20—\x20','message','red','\x20\x20#\x20or','already\x20exists\x20(will\x20merge)','.cursor/rules/lovrabet_rules.mdc','utf8','yellow','some','step','mcpServers','cwd','FAIL','\x20removed\x20(','\x20→\x20latest','push','yes','latest','succeed','Config\x20migration','length','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','args','needsSkillSwap','files','not\x20needed','removed\x20','\x20\x20Fields\x20to\x20migrate:\x20','bold','done','lovrabet/lovrabet-skill\x20removed','not\x20found\x20(will\x20create)','Step\x201/7:\x20Migrating\x20config...','entries','\x20\x20bun\x20install','Install\x20new\x20skill','status','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','4035492vzdXQU','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','Step\x204/7:\x20Cleaning\x20MCP\x20config...','\x20→\x20','label','oldPath','Clean\x20MCP\x20config','oldArtifacts','.cursor/mcp.json','Step\x204/7:\x20MCP\x20config\x20—\x20','no\x20legacy\x20entry','start','Remove\x20.lovrabet/','1069066JsegXQ','\x20\x20Action:\x20delete','lovrabet/rabetbase','path','Upgrade\x20@lovrabet/sdk','221912hmQeZR','log','inherit','includes','Step\x205/7:\x20Removing\x20old\x20skill...','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','isArray','fields','sdkUpgrade','\x20\x20Step\x20','info'];a124_0x4b4c=function(){return _0x556272;};return a124_0x4b4c();}function execConfigMigration(_0x289891,_0x4c8e69){const _0x512dda=a124_0x2973df,{configMigration:_0x38ead0}=_0x289891;if(!_0x38ead0?.[_0x512dda(0x120)])return{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x512dda(0xc4)};const _0x374f35=readConfigFile(_0x38ead0['oldPath']),_0x42b213=resolve(_0x4c8e69,NEW_CONFIG_NAME),_0x17b6d1=_0x38ead0[_0x512dda(0xea)]?readConfigFile(_0x42b213):{};for(const [_0xc5c259,_0x323133]of Object[_0x512dda(0x116)](_0x374f35)){!(_0xc5c259 in _0x17b6d1)&&(_0x17b6d1[_0xc5c259]=_0x323133);}writeConfigFile(_0x42b213,_0x17b6d1);const _0xf64de4=_0x38ead0['oldPath']+'.bak';return renameSync(_0x38ead0[_0x512dda(0x120)],_0xf64de4),{'step':0x1,'label':_0x512dda(0x108),'ok':!![],'detail':_0x38ead0[_0x512dda(0x120)]+_0x512dda(0x11e)+_0x42b213+'\x20(backup:\x20'+_0xf64de4+')'};}function execRemoveOldArtifacts(_0x32423e){const _0xede85b=a124_0x2973df,_0x14df91=[];for(const _0x475c25 of _0x32423e){try{if(!existsSync(_0x475c25))continue;const _0x3ba56a=tryStat(_0x475c25);_0x3ba56a?.['isDirectory']()?rmSync(_0x475c25,{'recursive':!![],'force':!![]}):unlinkSync(_0x475c25);}catch(_0x56d549){_0x14df91[_0xede85b(0x104)](_0x475c25+':\x20'+_0x56d549[_0xede85b(0xf6)]);}}return{'step':0x3,'label':_0xede85b(0xe8),'ok':_0x14df91[_0xede85b(0x109)]===0x0,'detail':_0x14df91[_0xede85b(0x109)]>0x0?_0x32423e['length']-_0x14df91[_0xede85b(0x109)]+'/'+_0x32423e[_0xede85b(0x109)]+_0xede85b(0x102)+_0x14df91[_0xede85b(0xe4)](';\x20')+')':_0x32423e['length']+_0xede85b(0xce)};}function execCleanMcp(_0x209011){const _0xc88430=a124_0x2973df;if(!_0x209011[_0xc88430(0xc5)])return{'step':0x4,'label':_0xc88430(0x121),'ok':!![],'detail':_0xc88430(0xc1)};try{const _0x26faf6=readFileSync(_0x209011[_0xc88430(0xc5)][_0xc88430(0x12b)],_0xc88430(0xfb)),_0x41df3d=JSON['parse'](_0x26faf6);if(_0x41df3d?.[_0xc88430(0xff)]&&typeof _0x41df3d[_0xc88430(0xff)]==='object'){const _0x2c7a6c=[];for(const [_0x4c448c,_0x47e550]of Object[_0xc88430(0x116)](_0x41df3d[_0xc88430(0xff)])){_0x47e550?.[_0xc88430(0x10b)]&&Array[_0xc88430(0xb9)](_0x47e550[_0xc88430(0x10b)])&&_0x47e550[_0xc88430(0x10b)]['some'](_0x11fbad=>typeof _0x11fbad==='string'&&_0x11fbad[_0xc88430(0xb6)](_0xc88430(0xdb)))&&_0x2c7a6c[_0xc88430(0x104)](_0x4c448c);}for(const _0xeb5e63 of _0x2c7a6c){delete _0x41df3d['mcpServers'][_0xeb5e63];}return _0x2c7a6c[_0xc88430(0x109)]>0x0&&writeFileSync(_0x209011[_0xc88430(0xc5)]['path'],JSON[_0xc88430(0xc9)](_0x41df3d,null,0x2)+'\x0a',_0xc88430(0xfb)),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0xc88430(0x10f)+_0x2c7a6c['join'](',\x20')+'\x20from\x20'+_0x209011[_0xc88430(0xc5)]['path']};}return{'step':0x4,'label':_0xc88430(0x121),'ok':!![],'detail':_0xc88430(0xcd)};}catch(_0x47f206){return{'step':0x4,'label':_0xc88430(0x121),'ok':![],'detail':_0x47f206[_0xc88430(0xf6)]};}}function execSkillsRemove(_0x5d2ae2,_0x5b4b99){const _0x3cc758=a124_0x2973df,_0x30155f=runNpxSkillsRemove(_0x5d2ae2,{'stdio':_0x3cc758(0xb5),'yes':_0x5b4b99});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x30155f['ok'],'detail':_0x30155f['ok']?_0x3cc758(0x113):_0x30155f['error']??_0x3cc758(0xd3)+_0x30155f[_0x3cc758(0x119)]};}function execSkillsAdd(_0x3eb07d,_0xfee786){const _0x4b6abc=a124_0x2973df,_0xffd632=runNpxSkillsAddGlobal(_0x3eb07d,_0x4b6abc(0x12a),{'stdio':_0x4b6abc(0xb5),'yes':_0xfee786});return{'step':0x6,'label':_0x4b6abc(0x118),'ok':_0xffd632['ok'],'detail':_0xffd632['ok']?'lovrabet/rabetbase\x20installed\x20globally':_0xffd632[_0x4b6abc(0xd7)]??'exit\x20'+_0xffd632[_0x4b6abc(0x119)]};}function execUpgradeSdk(_0x46a7e1){const _0x1cd1ad=a124_0x2973df;if(!_0x46a7e1[_0x1cd1ad(0xbb)])return{'step':0x7,'label':_0x1cd1ad(0x12c),'ok':!![],'detail':_0x1cd1ad(0x11a)};const {pkgPath:_0x352493,currentVersion:_0x2cfd13,field:_0x334819}=_0x46a7e1[_0x1cd1ad(0xbb)];try{const _0x24de00=readFileSync(_0x352493,_0x1cd1ad(0xfb)),_0x1fa49c=JSON[_0x1cd1ad(0xf0)](_0x24de00);return _0x1fa49c[_0x334819][_0x1cd1ad(0xf2)]=_0x1cd1ad(0x106),writeFileSync(_0x352493,JSON[_0x1cd1ad(0xc9)](_0x1fa49c,null,0x2)+'\x0a',_0x1cd1ad(0xfb)),{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x334819+'[\x22@lovrabet/sdk\x22]:\x20'+_0x2cfd13+_0x1cd1ad(0x103)};}catch(_0x18d1e7){return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':![],'detail':_0x18d1e7['message']};}}function tryStat(_0x17740a){try{return statSync(_0x17740a);}catch{return undefined;}}function printSummary(_0x474434){const _0xfc83e1=a124_0x2973df;console['log'](''),console['log'](a124_0x3899f4['bold'](_0xfc83e1(0xbe))),console[_0xfc83e1(0xb4)]('');for(const _0x35c8b1 of _0x474434){const _0xb7874f=_0x35c8b1['ok']?a124_0x3899f4[_0xfc83e1(0xd4)]('OK'):a124_0x3899f4['red'](_0xfc83e1(0x101));console[_0xfc83e1(0xb4)]('\x20\x20'+_0xb7874f+_0xfc83e1(0xbc)+_0x35c8b1[_0xfc83e1(0xfe)]+':\x20'+_0x35c8b1[_0xfc83e1(0x11f)]);if(_0x35c8b1['detail'])console['log'](_0xfc83e1(0xe0)+a124_0x3899f4[_0xfc83e1(0xc8)](_0x35c8b1[_0xfc83e1(0xd6)]));}console[_0xfc83e1(0xb4)]('');}export async function upgradeApp(_0xc6cbde,_0x478a50){const _0xd3fd20=a124_0x2973df,_0x2f9424=process[_0xd3fd20(0x100)](),_0x4ed372=analyse(_0x2f9424),_0x25c504=!_0x4ed372['configMigration']&&_0x4ed372[_0xd3fd20(0x122)][_0xd3fd20(0x109)]===0x0&&!_0x4ed372[_0xd3fd20(0xc5)]&&!_0x4ed372[_0xd3fd20(0x10c)]&&!_0x4ed372[_0xd3fd20(0xbb)];if(_0x25c504){console[_0xd3fd20(0xb4)](a124_0x3899f4[_0xd3fd20(0xd4)](_0xd3fd20(0xc7)));return;}printReport(_0x4ed372);const _0x11b72b=!!(_0x478a50[_0xd3fd20(0x105)]||_0x478a50['Y']||_0xc6cbde);if(!_0x11b72b)try{const _0x1354c0=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x1354c0){console[_0xd3fd20(0xb4)](a124_0x3899f4[_0xd3fd20(0xc8)]('Upgrade\x20cancelled.'));return;}}catch(_0x31520b){if(_0x31520b?.['message']===_0xd3fd20(0xc3)){console[_0xd3fd20(0xb4)](a124_0x3899f4[_0xd3fd20(0xc8)](_0xd3fd20(0xdd)));return;}throw _0x31520b;}const _0x122150=[],_0x29c416=a124_0x2030c3({'text':_0xd3fd20(0x115),'color':_0xd3fd20(0xe9)})[_0xd3fd20(0x126)](),_0x1fe71d=execConfigMigration(_0x4ed372,_0x2f9424);_0x122150[_0xd3fd20(0x104)](_0x1fe71d),_0x29c416[_0x1fe71d['ok']?_0xd3fd20(0x107):_0xd3fd20(0xd8)](_0xd3fd20(0xf5)+(_0x1fe71d[_0xd3fd20(0xd6)]??(_0x1fe71d['ok']?_0xd3fd20(0x112):_0xd3fd20(0xcc))));const _0x4265a6=resolve(_0x2f9424,_0xd3fd20(0xf4)),_0x34ff30=a124_0x2030c3({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':_0xd3fd20(0xe9)})['start']();if(existsSync(_0x4265a6))try{rmSync(_0x4265a6,{'recursive':!![],'force':!![]}),_0x34ff30[_0xd3fd20(0x107)](_0xd3fd20(0xc2)),_0x122150[_0xd3fd20(0x104)]({'step':0x2,'label':_0xd3fd20(0x127),'ok':!![]});}catch(_0x57f8c0){_0x34ff30[_0xd3fd20(0xd8)](_0xd3fd20(0xde)+_0x57f8c0[_0xd3fd20(0xf6)]),_0x122150[_0xd3fd20(0x104)]({'step':0x2,'label':_0xd3fd20(0x127),'ok':![],'detail':_0x57f8c0[_0xd3fd20(0xf6)]});}else _0x34ff30[_0xd3fd20(0xbd)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x122150['push']({'step':0x2,'label':_0xd3fd20(0x127),'ok':!![],'detail':_0xd3fd20(0xc1)});const _0x213045=a124_0x2030c3({'text':_0xd3fd20(0xe7),'color':_0xd3fd20(0xe9)})[_0xd3fd20(0x126)](),_0x2fde33=execRemoveOldArtifacts(_0x4ed372['oldArtifacts']);_0x122150[_0xd3fd20(0x104)](_0x2fde33),_0x213045[_0x2fde33['ok']?'succeed':'fail']('Step\x203/7:\x20Legacy\x20artifacts\x20—\x20'+(_0x2fde33[_0xd3fd20(0xd6)]??(_0x2fde33['ok']?'done':_0xd3fd20(0xcc))));const _0xf13d0b=a124_0x2030c3({'text':_0xd3fd20(0x11d),'color':_0xd3fd20(0xe9)})['start'](),_0x3a6425=execCleanMcp(_0x4ed372);_0x122150['push'](_0x3a6425),_0xf13d0b[_0x3a6425['ok']?'succeed':'fail'](_0xd3fd20(0x124)+(_0x3a6425[_0xd3fd20(0xd6)]??(_0x3a6425['ok']?_0xd3fd20(0x112):_0xd3fd20(0xcc))));const _0x52a409=a124_0x2030c3({'text':_0xd3fd20(0xb7),'color':_0xd3fd20(0xe9)})[_0xd3fd20(0x126)](),_0x397f28=execSkillsRemove(_0x2f9424,_0x11b72b);_0x122150['push'](_0x397f28),_0x52a409[_0x397f28['ok']?'succeed':_0xd3fd20(0xd8)](_0xd3fd20(0xdc)+(_0x397f28[_0xd3fd20(0xd6)]??(_0x397f28['ok']?'done':_0xd3fd20(0xcc))));const _0x5e3eb5=a124_0x2030c3({'text':'Step\x206/7:\x20Installing\x20new\x20skill...','color':_0xd3fd20(0xe9)})[_0xd3fd20(0x126)](),_0x27c42e=execSkillsAdd(_0x2f9424,_0x11b72b);_0x122150[_0xd3fd20(0x104)](_0x27c42e),_0x5e3eb5[_0x27c42e['ok']?_0xd3fd20(0x107):'fail']('Step\x206/7:\x20Install\x20new\x20skill\x20—\x20'+(_0x27c42e['detail']??(_0x27c42e['ok']?_0xd3fd20(0x112):_0xd3fd20(0xcc))));const _0x48e472=a124_0x2030c3({'text':_0xd3fd20(0xb8),'color':_0xd3fd20(0xe9)})['start'](),_0x145e69=execUpgradeSdk(_0x4ed372);_0x122150['push'](_0x145e69),_0x48e472[_0x145e69['ok']?_0xd3fd20(0x107):_0xd3fd20(0xd8)](_0xd3fd20(0x10a)+(_0x145e69['detail']??(_0x145e69['ok']?'done':_0xd3fd20(0xcc)))),printSummary(_0x122150);const _0x33c02e=_0x122150['some'](_0x2a0c0c=>!_0x2a0c0c['ok']);_0x33c02e?console['log'](a124_0x3899f4[_0xd3fd20(0xfc)](_0xd3fd20(0xe6))):console[_0xd3fd20(0xb4)](a124_0x3899f4[_0xd3fd20(0xd4)](_0xd3fd20(0xf3))),_0x145e69['ok']&&_0x4ed372[_0xd3fd20(0xbb)]&&(console[_0xd3fd20(0xb4)](''),console[_0xd3fd20(0xb4)](a124_0x3899f4[_0xd3fd20(0x111)]['cyan']('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console['log'](a124_0x3899f4[_0xd3fd20(0xe9)]('Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:')),console[_0xd3fd20(0xb4)](''),console[_0xd3fd20(0xb4)](a124_0x3899f4['white']('\x20\x20npm\x20install')),console[_0xd3fd20(0xb4)](a124_0x3899f4[_0xd3fd20(0xdf)](_0xd3fd20(0xf8))),console[_0xd3fd20(0xb4)](a124_0x3899f4['white'](_0xd3fd20(0x117))),console[_0xd3fd20(0xb4)](''));}
|
|
1
|
+
const a126_0x4acc28=a126_0x2b07;(function(_0x54e97c,_0x1fa897){const _0x50128a=a126_0x2b07,_0x591559=_0x54e97c();while(!![]){try{const _0x48497c=-parseInt(_0x50128a(0x18f))/0x1+parseInt(_0x50128a(0x187))/0x2+parseInt(_0x50128a(0x1a7))/0x3*(-parseInt(_0x50128a(0x1c7))/0x4)+parseInt(_0x50128a(0x1d7))/0x5+-parseInt(_0x50128a(0x172))/0x6+parseInt(_0x50128a(0x1a1))/0x7+parseInt(_0x50128a(0x1d4))/0x8;if(_0x48497c===_0x1fa897)break;else _0x591559['push'](_0x591559['shift']());}catch(_0x4278ec){_0x591559['push'](_0x591559['shift']());}}}(a126_0x2aa3,0x78fbb));import a126_0x36533f from'chalk';import a126_0x2fc026 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';function a126_0x2aa3(){const _0x3631d6=['1196ugcXyD','oldPath','object','isDirectory','.lovrabet','.cursor/mcp.json','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','[\x22@lovrabet/sdk\x22]:\x20','gray','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','bold','\x20→\x20','\x20\x20Action:\x20delete','10510144jGfbNt','some','includes','1402800rQlIyB','join','oldMcpConfig','args','Step\x201/7:\x20Migrating\x20config...','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','skipped','fail','lovrabet/rabetbase','Upgrade\x20@lovrabet/sdk','.claude/skills/lovrabet','\x20from\x20','path','\x20\x20bun\x20install','latest','\x20(backup:\x20','fields','skipped\x20(no\x20legacy\x20config)','===\x20Upgrade\x20Analysis\x20===','Install\x20new\x20skill','label','white','1238712sqinoL','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','Step\x204/7:\x20MCP\x20config\x20—\x20','not\x20found\x20or\x20already\x20at\x20latest','===\x20Upgrade\x20Summary\x20===','MCP\x20config:','sdkUpgrade','\x20\x20#\x20or','lovrabet/rabetbase\x20installed\x20globally','no\x20legacy\x20entry','push','\x20\x20Current\x20version\x20in\x20','\x20removed','length','Config\x20migration','green','@lovrabet/dataset-mcp-server','Clean\x20MCP\x20config','start','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','\x20\x20\x20\x20\x20\x20\x20','704292jBShhx','cwd','configMigration','error','\x20removed\x20(','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','FAIL','@lovrabet/sdk:','761820BpIyBJ','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','red','cyan','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','utf8','mcpServers','no\x20matching\x20entry\x20found','files','exit\x20','Remove\x20old\x20skill','done','isArray','Step\x205/7:\x20Removing\x20old\x20skill...','Remove\x20legacy\x20artifacts','@lovrabet/sdk','detail','hasNewConfig','424396JVFNzZ','needed','keys','stringify','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','inherit','5451wSMSAO','not\x20found\x20(will\x20create)','filter','status','Step\x206/7:\x20Installing\x20new\x20skill...','Step\x204/7:\x20Cleaning\x20MCP\x20config...','Config\x20file:','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','message','string','dependencies','failed','yellow','succeed','Legacy\x20artifacts:','entries','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','removed\x20','package.json','Remove\x20.lovrabet/','values','.bak','log','Step\x201/7:\x20Config\x20migration\x20—\x20','needsSkillSwap','not\x20needed','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','\x20\x20New\x20config\x20(.rabetbase.json):\x20','parse','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...'];a126_0x2aa3=function(){return _0x3631d6;};return a126_0x2aa3();}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[a126_0x4acc28(0x1a9)](_0x40d556=>_0x40d556!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x1335dc){const _0x1edf4f=a126_0x4acc28,_0x105110=[];for(const _0x59c45c of Object[_0x1edf4f(0x1bb)](CORE_IDE_CONFIGS)){if(_0x59c45c[_0x1edf4f(0x197)])for(const _0x2cdfab of _0x59c45c[_0x1edf4f(0x197)]){_0x105110[_0x1edf4f(0x17c)](resolve(_0x1335dc,_0x2cdfab[_0x1edf4f(0x168)]));}}return _0x105110;}function a126_0x2b07(_0x50b75f,_0x2b9d92){_0x50b75f=_0x50b75f-0x168;const _0x2aa3c5=a126_0x2aa3();let _0x2b07d8=_0x2aa3c5[_0x50b75f];return _0x2b07d8;}function analyse(_0x108c88){const _0xef69a6=a126_0x4acc28;let _0x25570d=null;const _0x84ac47=resolve(_0x108c88,NEW_CONFIG_NAME),_0x492c44=existsSync(_0x84ac47);for(const _0x53340b of LEGACY_CONFIG_NAMES){const _0x3e2aee=resolve(_0x108c88,_0x53340b);if(existsSync(_0x3e2aee)){const _0x568f0a=readConfigFile(_0x3e2aee),_0x37480b=Object[_0xef69a6(0x1a3)](_0x568f0a)[_0xef69a6(0x1a9)](_0x74d28d=>typeof _0x568f0a[_0x74d28d]!=='undefined');_0x25570d={'oldPath':_0x3e2aee,'hasNewConfig':_0x492c44,'fields':_0x37480b};break;}}const _0x2fa767=[],_0x33782a=resolve(_0x108c88,_0xef69a6(0x1cb));if(existsSync(_0x33782a))_0x2fa767[_0xef69a6(0x17c)](_0x33782a);const _0x579965=resolve(_0x108c88,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x579965))_0x2fa767[_0xef69a6(0x17c)](_0x579965);const _0x31c8f0=resolve(_0x108c88,_0xef69a6(0x1e1));if(existsSync(_0x31c8f0))_0x2fa767['push'](_0x31c8f0);for(const _0x4b9560 of collectIdeSkillFiles(_0x108c88)){if(existsSync(_0x4b9560))_0x2fa767['push'](_0x4b9560);}let _0xed432e=null;const _0x45fb8b=resolve(_0x108c88,_0xef69a6(0x1cc));if(existsSync(_0x45fb8b))try{const _0x25b24c=JSON[_0xef69a6(0x1c5)](readFileSync(_0x45fb8b,_0xef69a6(0x194)));if(_0x25b24c?.[_0xef69a6(0x195)]&&typeof _0x25b24c[_0xef69a6(0x195)]===_0xef69a6(0x1c9)){const _0x163146=[];for(const [_0x472c42,_0x11ecc6]of Object[_0xef69a6(0x1b6)](_0x25b24c['mcpServers'])){const _0x324a5c=_0x11ecc6;_0x324a5c?.['args']&&Array[_0xef69a6(0x19b)](_0x324a5c[_0xef69a6(0x1da)])&&_0x324a5c[_0xef69a6(0x1da)][_0xef69a6(0x1d5)](_0x20db1a=>typeof _0x20db1a===_0xef69a6(0x1b0)&&_0x20db1a[_0xef69a6(0x1d6)](_0xef69a6(0x182)))&&_0x163146['push'](_0x472c42);}_0x163146[_0xef69a6(0x17f)]>0x0&&(_0xed432e={'path':_0x45fb8b,'keys':_0x163146});}}catch{}const _0x5d5bfd=_0x2fa767[_0xef69a6(0x17f)]>0x0||_0x25570d!==null;let _0x3903a2=null;const _0x449634=resolve(_0x108c88,_0xef69a6(0x1b9));if(existsSync(_0x449634))try{const _0x3330dd=JSON[_0xef69a6(0x1c5)](readFileSync(_0x449634,'utf8'));for(const _0x457191 of[_0xef69a6(0x1b1),'devDependencies']){const _0x28ef2b=_0x3330dd?.[_0x457191]?.[_0xef69a6(0x19e)];if(typeof _0x28ef2b===_0xef69a6(0x1b0)){_0x28ef2b!==_0xef69a6(0x16a)&&(_0x3903a2={'pkgPath':_0x449634,'currentVersion':_0x28ef2b,'field':_0x457191});break;}}}catch{}return{'configMigration':_0x25570d,'oldArtifacts':_0x2fa767,'oldMcpConfig':_0xed432e,'needsSkillSwap':_0x5d5bfd,'sdkUpgrade':_0x3903a2};}function printReport(_0x4886bc){const _0x12ad13=a126_0x4acc28,{configMigration:_0x584ebd,oldArtifacts:_0x5ca313,oldMcpConfig:_0x2d827b,needsSkillSwap:_0x3ffa12}=_0x4886bc;console['log'](''),console[_0x12ad13(0x1bd)](a126_0x36533f[_0x12ad13(0x1d1)](_0x12ad13(0x16e))),console[_0x12ad13(0x1bd)]('');_0x584ebd?(console[_0x12ad13(0x1bd)](a126_0x36533f[_0x12ad13(0x192)](_0x12ad13(0x1ad))+('\x20\x20'+a126_0x36533f[_0x12ad13(0x1b3)](_0x584ebd[_0x12ad13(0x1c8)]))),console[_0x12ad13(0x1bd)](_0x12ad13(0x1c4)+(_0x584ebd[_0x12ad13(0x1a0)]?a126_0x36533f[_0x12ad13(0x181)]('already\x20exists\x20(will\x20merge)'):a126_0x36533f[_0x12ad13(0x1cf)](_0x12ad13(0x1a8)))),console['log']('\x20\x20Fields\x20to\x20migrate:\x20'+_0x584ebd[_0x12ad13(0x16c)][_0x12ad13(0x1d8)](',\x20')),console[_0x12ad13(0x1bd)](_0x12ad13(0x1cd))):console[_0x12ad13(0x1bd)](a126_0x36533f[_0x12ad13(0x192)](_0x12ad13(0x1ad))+'\x20\x20'+a126_0x36533f[_0x12ad13(0x1cf)]('no\x20legacy\x20config\x20found'));console[_0x12ad13(0x1bd)]('');if(_0x5ca313[_0x12ad13(0x17f)]>0x0){console['log'](a126_0x36533f['cyan'](_0x12ad13(0x1b5)));for(const _0x1d2584 of _0x5ca313){console['log']('\x20\x20'+a126_0x36533f[_0x12ad13(0x191)]('FOUND')+'\x20\x20'+_0x1d2584);}console[_0x12ad13(0x1bd)](_0x12ad13(0x1d3));}else console[_0x12ad13(0x1bd)](a126_0x36533f['cyan']('Legacy\x20artifacts:')+'\x20\x20'+a126_0x36533f[_0x12ad13(0x1cf)]('none\x20found'));console[_0x12ad13(0x1bd)]('');_0x2d827b?(console[_0x12ad13(0x1bd)](a126_0x36533f['cyan'](_0x12ad13(0x177))+('\x20\x20'+a126_0x36533f[_0x12ad13(0x1b3)](_0x2d827b[_0x12ad13(0x168)])+'\x20→\x20keys:\x20'+_0x2d827b[_0x12ad13(0x1a3)][_0x12ad13(0x1d8)](',\x20'))),console[_0x12ad13(0x1bd)](_0x12ad13(0x193))):console[_0x12ad13(0x1bd)](a126_0x36533f[_0x12ad13(0x192)](_0x12ad13(0x177))+'\x20\x20'+a126_0x36533f[_0x12ad13(0x1cf)](_0x12ad13(0x17b)));console[_0x12ad13(0x1bd)](''),console[_0x12ad13(0x1bd)](a126_0x36533f['cyan']('Skill\x20swap:')+('\x20\x20'+(_0x3ffa12?a126_0x36533f['yellow'](_0x12ad13(0x1a2)):a126_0x36533f[_0x12ad13(0x181)](_0x12ad13(0x1c0)))));_0x3ffa12&&console['log'](_0x12ad13(0x1c2)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x12ad13(0x1bd)]('');if(_0x4886bc['sdkUpgrade']){const {currentVersion:_0x381f9a,field:_0x6e3235,pkgPath:_0xceb358}=_0x4886bc[_0x12ad13(0x178)];console[_0x12ad13(0x1bd)](a126_0x36533f['cyan'](_0x12ad13(0x18e))+('\x20\x20'+a126_0x36533f[_0x12ad13(0x1b3)](_0xceb358))),console['log'](_0x12ad13(0x17d)+_0x6e3235+':\x20'+a126_0x36533f[_0x12ad13(0x1b3)](_0x381f9a)+_0x12ad13(0x1d2)+a126_0x36533f[_0x12ad13(0x181)](_0x12ad13(0x16a))),console[_0x12ad13(0x1bd)](_0x12ad13(0x1ae));}else console[_0x12ad13(0x1bd)](a126_0x36533f[_0x12ad13(0x192)](_0x12ad13(0x18e))+'\x20\x20'+a126_0x36533f[_0x12ad13(0x1cf)](_0x12ad13(0x175)));console[_0x12ad13(0x1bd)]('');}function execConfigMigration(_0x47a27d,_0xa035be){const _0x5b411f=a126_0x4acc28,{configMigration:_0x1f4248}=_0x47a27d;if(!_0x1f4248?.[_0x5b411f(0x1c8)])return{'step':0x1,'label':_0x5b411f(0x180),'ok':!![],'detail':_0x5b411f(0x16d)};const _0x2ee421=readConfigFile(_0x1f4248[_0x5b411f(0x1c8)]),_0x4555e9=resolve(_0xa035be,NEW_CONFIG_NAME),_0x103b78=_0x1f4248[_0x5b411f(0x1a0)]?readConfigFile(_0x4555e9):{};for(const [_0x2b41c4,_0x312df8]of Object['entries'](_0x2ee421)){!(_0x2b41c4 in _0x103b78)&&(_0x103b78[_0x2b41c4]=_0x312df8);}writeConfigFile(_0x4555e9,_0x103b78);const _0x57d2e5=_0x1f4248[_0x5b411f(0x1c8)]+_0x5b411f(0x1bc);return renameSync(_0x1f4248[_0x5b411f(0x1c8)],_0x57d2e5),{'step':0x1,'label':_0x5b411f(0x180),'ok':!![],'detail':_0x1f4248[_0x5b411f(0x1c8)]+_0x5b411f(0x1d2)+_0x4555e9+_0x5b411f(0x16b)+_0x57d2e5+')'};}function execRemoveOldArtifacts(_0x3d716d){const _0x31007b=a126_0x4acc28,_0xe14a0e=[];for(const _0x2a92b0 of _0x3d716d){try{if(!existsSync(_0x2a92b0))continue;const _0x344fdb=tryStat(_0x2a92b0);_0x344fdb?.[_0x31007b(0x1ca)]()?rmSync(_0x2a92b0,{'recursive':!![],'force':!![]}):unlinkSync(_0x2a92b0);}catch(_0x181050){_0xe14a0e['push'](_0x2a92b0+':\x20'+_0x181050[_0x31007b(0x1af)]);}}return{'step':0x3,'label':_0x31007b(0x19d),'ok':_0xe14a0e[_0x31007b(0x17f)]===0x0,'detail':_0xe14a0e[_0x31007b(0x17f)]>0x0?_0x3d716d[_0x31007b(0x17f)]-_0xe14a0e[_0x31007b(0x17f)]+'/'+_0x3d716d['length']+_0x31007b(0x18b)+_0xe14a0e['join'](';\x20')+')':_0x3d716d[_0x31007b(0x17f)]+_0x31007b(0x17e)};}function execCleanMcp(_0x5b8208){const _0x43bb66=a126_0x4acc28;if(!_0x5b8208['oldMcpConfig'])return{'step':0x4,'label':_0x43bb66(0x183),'ok':!![],'detail':_0x43bb66(0x1dd)};try{const _0x24fd54=readFileSync(_0x5b8208['oldMcpConfig'][_0x43bb66(0x168)],_0x43bb66(0x194)),_0x59582e=JSON[_0x43bb66(0x1c5)](_0x24fd54);if(_0x59582e?.[_0x43bb66(0x195)]&&typeof _0x59582e['mcpServers']===_0x43bb66(0x1c9)){const _0x31ee2a=[];for(const [_0x5aacf6,_0x17e7ee]of Object[_0x43bb66(0x1b6)](_0x59582e[_0x43bb66(0x195)])){_0x17e7ee?.[_0x43bb66(0x1da)]&&Array[_0x43bb66(0x19b)](_0x17e7ee['args'])&&_0x17e7ee[_0x43bb66(0x1da)][_0x43bb66(0x1d5)](_0x3c3e96=>typeof _0x3c3e96===_0x43bb66(0x1b0)&&_0x3c3e96[_0x43bb66(0x1d6)](_0x43bb66(0x182)))&&_0x31ee2a['push'](_0x5aacf6);}for(const _0x157a7b of _0x31ee2a){delete _0x59582e[_0x43bb66(0x195)][_0x157a7b];}return _0x31ee2a[_0x43bb66(0x17f)]>0x0&&writeFileSync(_0x5b8208['oldMcpConfig'][_0x43bb66(0x168)],JSON['stringify'](_0x59582e,null,0x2)+'\x0a',_0x43bb66(0x194)),{'step':0x4,'label':_0x43bb66(0x183),'ok':!![],'detail':_0x43bb66(0x1b8)+_0x31ee2a[_0x43bb66(0x1d8)](',\x20')+_0x43bb66(0x1e2)+_0x5b8208[_0x43bb66(0x1d9)][_0x43bb66(0x168)]};}return{'step':0x4,'label':_0x43bb66(0x183),'ok':!![],'detail':_0x43bb66(0x196)};}catch(_0x45ecef){return{'step':0x4,'label':_0x43bb66(0x183),'ok':![],'detail':_0x45ecef['message']};}}function execSkillsRemove(_0x478758,_0x11d372){const _0x43e2d7=a126_0x4acc28,_0x4afdbe=runNpxSkillsRemove(_0x478758,{'stdio':_0x43e2d7(0x1a6),'yes':_0x11d372});return{'step':0x5,'label':_0x43e2d7(0x199),'ok':_0x4afdbe['ok'],'detail':_0x4afdbe['ok']?'lovrabet/lovrabet-skill\x20removed':_0x4afdbe[_0x43e2d7(0x18a)]??_0x43e2d7(0x198)+_0x4afdbe[_0x43e2d7(0x1aa)]};}function execSkillsAdd(_0x4a1343,_0x238617){const _0x38c965=a126_0x4acc28,_0x54ad14=runNpxSkillsAddGlobal(_0x4a1343,_0x38c965(0x1df),{'stdio':_0x38c965(0x1a6),'yes':_0x238617});return{'step':0x6,'label':_0x38c965(0x16f),'ok':_0x54ad14['ok'],'detail':_0x54ad14['ok']?_0x38c965(0x17a):_0x54ad14[_0x38c965(0x18a)]??_0x38c965(0x198)+_0x54ad14[_0x38c965(0x1aa)]};}function execUpgradeSdk(_0x4e5487){const _0x9ff4ca=a126_0x4acc28;if(!_0x4e5487[_0x9ff4ca(0x178)])return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x9ff4ca(0x1b7)};const {pkgPath:_0x400122,currentVersion:_0x48fd33,field:_0xa6d01}=_0x4e5487[_0x9ff4ca(0x178)];try{const _0xc84307=readFileSync(_0x400122,'utf8'),_0x8659f=JSON[_0x9ff4ca(0x1c5)](_0xc84307);return _0x8659f[_0xa6d01][_0x9ff4ca(0x19e)]=_0x9ff4ca(0x16a),writeFileSync(_0x400122,JSON[_0x9ff4ca(0x1a4)](_0x8659f,null,0x2)+'\x0a',_0x9ff4ca(0x194)),{'step':0x7,'label':_0x9ff4ca(0x1e0),'ok':!![],'detail':_0xa6d01+_0x9ff4ca(0x1ce)+_0x48fd33+'\x20→\x20latest'};}catch(_0x53a964){return{'step':0x7,'label':_0x9ff4ca(0x1e0),'ok':![],'detail':_0x53a964[_0x9ff4ca(0x1af)]};}}function tryStat(_0x3af87a){try{return statSync(_0x3af87a);}catch{return undefined;}}function printSummary(_0x39744a){const _0x1e5517=a126_0x4acc28;console['log'](''),console['log'](a126_0x36533f['bold'](_0x1e5517(0x176))),console[_0x1e5517(0x1bd)]('');for(const _0x27c573 of _0x39744a){const _0x405f3e=_0x27c573['ok']?a126_0x36533f['green']('OK'):a126_0x36533f['red'](_0x1e5517(0x18d));console[_0x1e5517(0x1bd)]('\x20\x20'+_0x405f3e+'\x20\x20Step\x20'+_0x27c573['step']+':\x20'+_0x27c573[_0x1e5517(0x170)]);if(_0x27c573[_0x1e5517(0x19f)])console[_0x1e5517(0x1bd)](_0x1e5517(0x186)+a126_0x36533f[_0x1e5517(0x1cf)](_0x27c573[_0x1e5517(0x19f)]));}console[_0x1e5517(0x1bd)]('');}export async function upgradeApp(_0x5bf3ef,_0x4d678b){const _0x4e9db4=a126_0x4acc28,_0x145e49=process[_0x4e9db4(0x188)](),_0x4ea308=analyse(_0x145e49),_0x4f49d5=!_0x4ea308[_0x4e9db4(0x189)]&&_0x4ea308['oldArtifacts']['length']===0x0&&!_0x4ea308[_0x4e9db4(0x1d9)]&&!_0x4ea308[_0x4e9db4(0x1bf)]&&!_0x4ea308['sdkUpgrade'];if(_0x4f49d5){console[_0x4e9db4(0x1bd)](a126_0x36533f[_0x4e9db4(0x181)](_0x4e9db4(0x1d0)));return;}printReport(_0x4ea308);const _0x165992=!!(_0x4d678b['yes']||_0x4d678b['Y']||_0x5bf3ef);if(!_0x165992)try{const _0x163375=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x163375){console[_0x4e9db4(0x1bd)](a126_0x36533f[_0x4e9db4(0x1cf)]('Upgrade\x20cancelled.'));return;}}catch(_0x171766){if(_0x171766?.['message']==='CANCEL'){console[_0x4e9db4(0x1bd)](a126_0x36533f[_0x4e9db4(0x1cf)]('Upgrade\x20cancelled.'));return;}throw _0x171766;}const _0x888a77=[],_0x3eece2=a126_0x2fc026({'text':_0x4e9db4(0x1db),'color':_0x4e9db4(0x192)})[_0x4e9db4(0x184)](),_0x7a16a=execConfigMigration(_0x4ea308,_0x145e49);_0x888a77[_0x4e9db4(0x17c)](_0x7a16a),_0x3eece2[_0x7a16a['ok']?'succeed':_0x4e9db4(0x1de)](_0x4e9db4(0x1be)+(_0x7a16a['detail']??(_0x7a16a['ok']?_0x4e9db4(0x19a):_0x4e9db4(0x1b2))));const _0x5b5aa8=resolve(_0x145e49,'.lovrabet'),_0x345560=a126_0x2fc026({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':_0x4e9db4(0x192)})[_0x4e9db4(0x184)]();if(existsSync(_0x5b5aa8))try{rmSync(_0x5b5aa8,{'recursive':!![],'force':!![]}),_0x345560[_0x4e9db4(0x1b4)](_0x4e9db4(0x1a5)),_0x888a77[_0x4e9db4(0x17c)]({'step':0x2,'label':_0x4e9db4(0x1ba),'ok':!![]});}catch(_0x2f5eed){_0x345560[_0x4e9db4(0x1de)](_0x4e9db4(0x173)+_0x2f5eed[_0x4e9db4(0x1af)]),_0x888a77[_0x4e9db4(0x17c)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x2f5eed['message']});}else _0x345560['info'](_0x4e9db4(0x185)),_0x888a77[_0x4e9db4(0x17c)]({'step':0x2,'label':_0x4e9db4(0x1ba),'ok':!![],'detail':_0x4e9db4(0x1dd)});const _0x24d4c3=a126_0x2fc026({'text':_0x4e9db4(0x1c6),'color':_0x4e9db4(0x192)})[_0x4e9db4(0x184)](),_0x217dc0=execRemoveOldArtifacts(_0x4ea308['oldArtifacts']);_0x888a77[_0x4e9db4(0x17c)](_0x217dc0),_0x24d4c3[_0x217dc0['ok']?_0x4e9db4(0x1b4):_0x4e9db4(0x1de)](_0x4e9db4(0x1dc)+(_0x217dc0['detail']??(_0x217dc0['ok']?_0x4e9db4(0x19a):_0x4e9db4(0x1b2))));const _0x1c149b=a126_0x2fc026({'text':_0x4e9db4(0x1ac),'color':_0x4e9db4(0x192)})['start'](),_0x16059b=execCleanMcp(_0x4ea308);_0x888a77['push'](_0x16059b),_0x1c149b[_0x16059b['ok']?_0x4e9db4(0x1b4):_0x4e9db4(0x1de)](_0x4e9db4(0x174)+(_0x16059b[_0x4e9db4(0x19f)]??(_0x16059b['ok']?'done':_0x4e9db4(0x1b2))));const _0x18d03c=a126_0x2fc026({'text':_0x4e9db4(0x19c),'color':_0x4e9db4(0x192)})[_0x4e9db4(0x184)](),_0x2abf9d=execSkillsRemove(_0x145e49,_0x165992);_0x888a77[_0x4e9db4(0x17c)](_0x2abf9d),_0x18d03c[_0x2abf9d['ok']?_0x4e9db4(0x1b4):_0x4e9db4(0x1de)](_0x4e9db4(0x1c3)+(_0x2abf9d[_0x4e9db4(0x19f)]??(_0x2abf9d['ok']?_0x4e9db4(0x19a):_0x4e9db4(0x1b2))));const _0x564cb8=a126_0x2fc026({'text':_0x4e9db4(0x1ab),'color':_0x4e9db4(0x192)})[_0x4e9db4(0x184)](),_0x279723=execSkillsAdd(_0x145e49,_0x165992);_0x888a77[_0x4e9db4(0x17c)](_0x279723),_0x564cb8[_0x279723['ok']?_0x4e9db4(0x1b4):_0x4e9db4(0x1de)]('Step\x206/7:\x20Install\x20new\x20skill\x20—\x20'+(_0x279723['detail']??(_0x279723['ok']?'done':_0x4e9db4(0x1b2))));const _0x4b6832=a126_0x2fc026({'text':_0x4e9db4(0x18c),'color':_0x4e9db4(0x192)})[_0x4e9db4(0x184)](),_0x5cc815=execUpgradeSdk(_0x4ea308);_0x888a77[_0x4e9db4(0x17c)](_0x5cc815),_0x4b6832[_0x5cc815['ok']?_0x4e9db4(0x1b4):_0x4e9db4(0x1de)](_0x4e9db4(0x190)+(_0x5cc815[_0x4e9db4(0x19f)]??(_0x5cc815['ok']?_0x4e9db4(0x19a):_0x4e9db4(0x1b2)))),printSummary(_0x888a77);const _0x6c79e6=_0x888a77[_0x4e9db4(0x1d5)](_0x35adec=>!_0x35adec['ok']);_0x6c79e6?console[_0x4e9db4(0x1bd)](a126_0x36533f[_0x4e9db4(0x1b3)]('Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.')):console[_0x4e9db4(0x1bd)](a126_0x36533f[_0x4e9db4(0x181)]('Upgrade\x20completed\x20successfully!')),_0x5cc815['ok']&&_0x4ea308['sdkUpgrade']&&(console[_0x4e9db4(0x1bd)](''),console[_0x4e9db4(0x1bd)](a126_0x36533f[_0x4e9db4(0x1d1)][_0x4e9db4(0x192)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x4e9db4(0x1bd)](a126_0x36533f[_0x4e9db4(0x192)](_0x4e9db4(0x1c1))),console[_0x4e9db4(0x1bd)](''),console[_0x4e9db4(0x1bd)](a126_0x36533f['white']('\x20\x20npm\x20install')),console['log'](a126_0x36533f['white'](_0x4e9db4(0x179))),console['log'](a126_0x36533f[_0x4e9db4(0x171)](_0x4e9db4(0x169))),console[_0x4e9db4(0x1bd)](''));}
|
package/lib/commands/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a127_0x3de416=a127_0x3e41;(function(_0x2384bc,_0x595332){const _0x40809c=a127_0x3e41,_0x16f661=_0x2384bc();while(!![]){try{const _0x50c94a=parseInt(_0x40809c(0x1eb))/0x1*(-parseInt(_0x40809c(0x214))/0x2)+-parseInt(_0x40809c(0x20e))/0x3*(parseInt(_0x40809c(0x1e7))/0x4)+parseInt(_0x40809c(0x1dc))/0x5+-parseInt(_0x40809c(0x200))/0x6+parseInt(_0x40809c(0x20b))/0x7+-parseInt(_0x40809c(0x205))/0x8*(-parseInt(_0x40809c(0x1ff))/0x9)+-parseInt(_0x40809c(0x1f0))/0xa*(-parseInt(_0x40809c(0x1f9))/0xb);if(_0x50c94a===_0x595332)break;else _0x16f661['push'](_0x16f661['shift']());}catch(_0x21140b){_0x16f661['push'](_0x16f661['shift']());}}}(a127_0x96ab,0xde06a));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';function a127_0x3e41(_0x3dead1,_0x1df3b6){_0x3dead1=_0x3dead1-0x1d5;const _0x96ab2a=a127_0x96ab();let _0x3e4185=_0x96ab2a[_0x3dead1];return _0x3e4185;}import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{appDefinitions}from'../commands/app/index.js';import{appConfigDefinitions}from'../commands/app-config/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{projectDefinitions}from'../commands/project/index.js';import{initDefinitions}from'../commands/init/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x159d26){const _0x11809f=a127_0x3e41;for(const _0xb457b4 of _0x159d26){definitions['set'](_0xb457b4['service']+':'+_0xb457b4[_0x11809f(0x1f2)],_0xb457b4);let _0x5009cf=serviceGroups[_0x11809f(0x212)](_0xb457b4[_0x11809f(0x1ef)]);!_0x5009cf&&(_0x5009cf=[],serviceGroups[_0x11809f(0x20a)](_0xb457b4['service'],_0x5009cf)),_0x5009cf[_0x11809f(0x20c)](_0xb457b4);}}function registerDeclarativeService(_0x212623,_0x1ccab7,_0x3719a7){const _0x31279f=a127_0x3e41;registerDefinitions(_0x1ccab7);_0x3719a7?.['wildcardDef']&®isterDefinitions([_0x3719a7['wildcardDef']]);const _0x55e924=_0x22b9ba=>_0x22b9ba===_0x31279f(0x1fc)?'':_0x22b9ba===_0x31279f(0x1fb)?_0x31279f(0x209):_0x31279f(0x1fa),_0x5b052d={'service':_0x1ccab7[0x0]['service'],'label':_0x212623,'commands':_0x1ccab7[_0x31279f(0x201)](_0x224468=>({'command':_0x224468[_0x31279f(0x1f2)],'description':_0x224468[_0x31279f(0x1e5)],'tag':_0x55e924(_0x224468[_0x31279f(0x203)])})),'declarative':!![],'defaultCommand':_0x3719a7?.[_0x31279f(0x1fe)]??(_0x3719a7?.[_0x31279f(0x202)]?_0x1ccab7[0x0][_0x31279f(0x1f2)]:undefined),'wildcardDef':_0x3719a7?.['wildcardDef'],'isSingleCommand':_0x3719a7?.[_0x31279f(0x202)]};serviceRegistry[_0x31279f(0x20c)](_0x5b052d),serviceByName['set'](_0x5b052d['service'],_0x5b052d);}registerDeclarativeService(a127_0x3de416(0x1dd),initDefinitions,{'defaultCommand':a127_0x3de416(0x1fd),'isSingleCommand':!![]}),registerDeclarativeService(a127_0x3de416(0x1f7),projectDefinitions),registerDeclarativeService(a127_0x3de416(0x20d),workspaceDefinitions),registerDeclarativeService(a127_0x3de416(0x1f5),appDefinitions),registerDeclarativeService(a127_0x3de416(0x1d5),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a127_0x3de416(0x207)]-0x1];last[a127_0x3de416(0x1da)]=[{'command':a127_0x3de416(0x1ed),'description':'Run\x20any\x20package.json\x20script','tag':''}];}registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':a127_0x3de416(0x1f4)}),registerDeclarativeService(a127_0x3de416(0x1e0),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a127_0x3de416(0x215),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a127_0x3de416(0x1f3),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Configuration',configDefinitions),registerDeclarativeService(a127_0x3de416(0x1df),appConfigDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService(a127_0x3de416(0x1d7),apiDefinitions),registerDeclarativeService(a127_0x3de416(0x204),menuDefinitions),registerDeclarativeService('Database\x20Connections',dbDefinitions),registerDeclarativeService('Dataset\x20&\x20Operations',datasetDefinitions),registerDeclarativeService(a127_0x3de416(0x1d6),pageDefinitions),registerDeclarativeService(a127_0x3de416(0x1e4),dataDefinitions),registerDeclarativeService('BFF\x20Scripts',bffDefinitions),registerDeclarativeService(a127_0x3de416(0x1ec),sqlDefinitions),registerDeclarativeService(a127_0x3de416(0x210),codegenDefinitions),registerDeclarativeService(a127_0x3de416(0x1db),cliSkillDefinitions,{'defaultCommand':a127_0x3de416(0x1e1)}),registerDeclarativeService(a127_0x3de416(0x1f1),logsDefinitions,{'defaultCommand':a127_0x3de416(0x1ee)});function a127_0x96ab(){const _0x188dd1=['Code\x20Generation','auth','get','`rabetbase\x20skills`\x20has\x20been\x20removed.','2MyjHKW','Diagnostics','Run\x20Scripts','Smart\x20List\x20Pages','API','has','wildcardDef','commands','CLI\x20Built-in\x20Skill','1661710CCKGXB','Quick\x20Start','`\x20has\x20been\x20removed.','Remote\x20App\x20Config','Self\x20Update','install','start','preview','Instant\x20API','description','skill','1796bVcYte','create','`rabetbase\x20','values','176346AogSHB','SQL\x20Queries','<script>','show','service','10OvLdwf','Logs','command','Schema','login','App\x20Management','skills','Project','from','1307394uupCVH','\x20\x20[high-risk-write]','write','read','run','defaultCommand','1269nusPrg','2344134dreYfZ','map','isSingleCommand','risk','Menu','32FHojDh','skill\x20','length','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','\x20\x20[write]','set','7273427iebCyb','push','Workspace','96QUycTa','build'];a127_0x96ab=function(){return _0x188dd1;};return a127_0x96ab();}export const deprecatedAliases={'create':{'service':'project','command':'create'},'start':{'service':a127_0x3de416(0x1fd),'command':a127_0x3de416(0x1e2)},'build':{'service':a127_0x3de416(0x1fd),'command':a127_0x3de416(0x20f)},'preview':{'service':'run','command':a127_0x3de416(0x1e3)},'logout':{'service':a127_0x3de416(0x211),'command':'logout'}};const CLI_SKILL_INSTALL_REMOVED_HINT=a127_0x3de416(0x208);export function resolveRemovedCommand(_0x57de09,_0x412a0f){const _0xa3996e=a127_0x3de416;if(_0x57de09===_0xa3996e(0x1e6)){const _0x5b790c=_0x412a0f?_0xa3996e(0x206)+_0x412a0f:_0xa3996e(0x1e6);return{'command':_0x5b790c,'message':_0xa3996e(0x1e9)+_0x5b790c+_0xa3996e(0x1de),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x57de09==='skills')return{'command':_0xa3996e(0x1f6),'message':_0xa3996e(0x213),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':a127_0x3de416(0x1e8)},'sql':{'new':a127_0x3de416(0x1e8)}};export function resolveDeprecatedSubcommand(_0x15bcf6,_0x7c627f){return deprecatedSubcommands[_0x15bcf6]?.[_0x7c627f];}export function findDefinition(_0x5e0af3,_0x4a0c69){const _0x287149=a127_0x3de416;return definitions[_0x287149(0x212)](_0x5e0af3+':'+_0x4a0c69);}export function isKnownService(_0x35b0eb){return serviceByName['has'](_0x35b0eb);}export function isDeclarativeService(_0x74dcb3){const _0xa76be7=a127_0x3de416;return serviceGroups[_0xa76be7(0x1d8)](_0x74dcb3)||serviceByName[_0xa76be7(0x212)](_0x74dcb3)?.[_0xa76be7(0x1d9)]!==undefined;}export function getServiceEntry(_0x4db9fd){return serviceByName['get'](_0x4db9fd);}export function getLegacyHandler(_0x466d07,_0x5351af){return undefined;}export function getAllDefinitions(){const _0x39320b=a127_0x3de416;return Array[_0x39320b(0x1f8)](definitions[_0x39320b(0x1ea)]());}
|