@lovrabet/rabetbase-cli 2.5.1 → 2.5.2-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/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/api/generate-sdk-config-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/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.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/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.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-restore.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.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-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/dataset/user-deleted-field-list.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.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/table-diff-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/deployment/auto-sync.d.ts +3 -11
- package/lib/commands/deployment/auto-sync.js +1 -1
- package/lib/commands/deployment/index.js +1 -1
- package/lib/commands/deployment/sync-all.d.ts +2 -0
- package/lib/commands/deployment/sync-all.js +1 -0
- package/lib/commands/deployment/sync-jobs.d.ts +2 -0
- package/lib/commands/deployment/sync-jobs.js +1 -0
- package/lib/commands/deployment/sync-status.d.ts +2 -0
- package/lib/commands/deployment/sync-status.js +1 -0
- package/lib/commands/deployment/sync.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/instant-api-policy/current.d.ts +2 -0
- package/lib/commands/instant-api-policy/current.js +1 -0
- package/lib/commands/instant-api-policy/index.d.ts +2 -0
- package/lib/commands/instant-api-policy/index.js +1 -0
- package/lib/commands/instant-api-policy/init.d.ts +2 -0
- package/lib/commands/instant-api-policy/init.js +1 -0
- package/lib/commands/instant-api-policy/publish.d.ts +2 -0
- package/lib/commands/instant-api-policy/publish.js +1 -0
- package/lib/commands/instant-api-policy/pull.d.ts +2 -0
- package/lib/commands/instant-api-policy/pull.js +1 -0
- package/lib/commands/instant-api-policy/revision.d.ts +2 -0
- package/lib/commands/instant-api-policy/revision.js +1 -0
- package/lib/commands/instant-api-policy/revisions.d.ts +2 -0
- package/lib/commands/instant-api-policy/revisions.js +1 -0
- package/lib/commands/instant-api-policy/rollback.d.ts +2 -0
- package/lib/commands/instant-api-policy/rollback.js +1 -0
- package/lib/commands/instant-api-policy/shared.d.ts +82 -0
- package/lib/commands/instant-api-policy/shared.js +1 -0
- package/lib/commands/instant-api-policy/validate.d.ts +2 -0
- package/lib/commands/instant-api-policy/validate.js +1 -0
- 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/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.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/mutations.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/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.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/restore.js +1 -1
- package/lib/commands/page/shared.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/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.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/domain-routing-sync.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/rule/get.js +1 -1
- package/lib/commands/rule/index.js +1 -1
- package/lib/commands/rule/list.js +1 -1
- package/lib/commands/rule/set.js +1 -1
- package/lib/commands/rule/shared.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/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/project-domain-routing.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/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/routing-profile.js +1 -1
- package/lib/context/app-resolver.d.ts +0 -2
- 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.d.ts +113 -2
- 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/instant-api-policy/config.d.ts +23 -0
- package/lib/core/instant-api-policy/config.js +1 -0
- package/lib/core/kb-search-client.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-index-auditor.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/error-output.js +1 -1
- package/lib/framework/explicit-yes.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/supported-flags.d.ts +2 -0
- package/lib/framework/supported-flags.js +1 -0
- package/lib/framework/types.d.ts +2 -4
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/generated/official-routing.js +1 -1
- package/lib/generated/routing-contract.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.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/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/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/skills/rabetbase/SKILL.md +12 -6
- package/skills/rabetbase/references/rabetbase-deployment-sync.md +51 -43
- package/skills/rabetbase/references/rabetbase-instant-api-policy.md +92 -0
- package/skills/rabetbase.manifest.json +4 -3
- package/lib/config/deployment-sync.d.ts +0 -10
- package/lib/config/deployment-sync.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x571133,_0x4be4a2){const _0x3b198d=a179_0x182a,_0x3a2b10=_0x571133();while(!![]){try{const _0x2ee931=parseInt(_0x3b198d(0x79))/0x1+-parseInt(_0x3b198d(0x7e))/0x2+-parseInt(_0x3b198d(0x89))/0x3*(parseInt(_0x3b198d(0x7b))/0x4)+parseInt(_0x3b198d(0x75))/0x5*(-parseInt(_0x3b198d(0x8a))/0x6)+-parseInt(_0x3b198d(0x7f))/0x7*(-parseInt(_0x3b198d(0x8f))/0x8)+-parseInt(_0x3b198d(0x8b))/0x9*(parseInt(_0x3b198d(0x8c))/0xa)+parseInt(_0x3b198d(0x76))/0xb*(parseInt(_0x3b198d(0x86))/0xc);if(_0x2ee931===_0x4be4a2)break;else _0x3a2b10['push'](_0x3a2b10['shift']());}catch(_0x4d479f){_0x3a2b10['push'](_0x3a2b10['shift']());}}}(a179_0x5d1c,0x4511b));import{existsSync}from'node:fs';import a179_0x5e90a0 from'node:path';import a179_0x14e0e1 from'chalk';function a179_0x182a(_0x3612c7,_0x174a5b){_0x3612c7=_0x3612c7-0x75;const _0x5d1cf9=a179_0x5d1c();let _0x182a22=_0x5d1cf9[_0x3612c7];return _0x182a22;}function a179_0x5d1c(){const _0x4a0b94=['74179NldOLS','Login\x20failed','env','Not\x20set','Skipped','production','trim','120UsVlcv','√\x20App\x20Code:\x20','string','1203QXOOvE','1497786ZwRkvm','5337COrTwU','5810QzMkgt','√\x20Project\x20Name:\x20','No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','408RaudDq','log','cwd','10CKWvax','1250392QMLaYX','my-app','√\x20Login\x20status:\x20','281752HxmVxD','cyan','5628KpDEJF','green','\x22\x20already\x20exists','536020JKPvAH'];a179_0x5d1c=function(){return _0x4a0b94;};return a179_0x5d1c();}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';import{getProjectNameValidationError}from'../../../commands/project/create/project-name.js';export async function guidedCreateProject(_0x3ceb72,_0x302318,_0x24f0f7){const _0x1f478b=a179_0x182a,_0x3c8058=_0x1f478b(0x77),_0x205960=readConfig(),_0x163a04=typeof _0x205960[_0x1f478b(0x81)]===_0x1f478b(0x88)?_0x205960['env']:undefined,_0x13a25d=await input({'message':'Project\x20name:','default':_0x3c8058,'validate':_0x124282=>{const _0x4db53e=_0x1f478b,_0x50dc8a=_0x124282[_0x4db53e(0x85)]()||_0x3c8058,_0x44df90=getProjectNameValidationError(_0x50dc8a);if(_0x44df90)return _0x44df90;const _0x125533=a179_0x5e90a0['resolve'](process[_0x4db53e(0x91)](),_0x50dc8a);if(existsSync(_0x125533))return'Directory\x20\x22'+_0x50dc8a+_0x4db53e(0x7d);return!![];}});console['log'](a179_0x14e0e1[_0x1f478b(0x7c)](_0x1f478b(0x8d)+a179_0x14e0e1['cyan'](_0x13a25d)));const _0x428ee9=await selectSingleAppcode(_0x24f0f7);console[_0x1f478b(0x90)](a179_0x14e0e1[_0x1f478b(0x7c)](_0x1f478b(0x87)+a179_0x14e0e1[_0x1f478b(0x7a)](_0x428ee9||_0x1f478b(0x82))));if(_0x428ee9){const _0x5d62a7=await getIsSessionValid();if(!_0x5d62a7){const _0x2cf139=await confirm({'message':_0x1f478b(0x8e),'default':!![]});if(_0x2cf139){const _0x2188cd=await authServer({'silent':!![]});console['log'](a179_0x14e0e1['green']('√\x20Login\x20status:\x20'+a179_0x14e0e1[_0x1f478b(0x7a)](_0x2188cd?'Logged\x20in':_0x1f478b(0x80))));}else console[_0x1f478b(0x90)](a179_0x14e0e1['green'](_0x1f478b(0x78)+a179_0x14e0e1[_0x1f478b(0x7a)](_0x1f478b(0x83))));}await _0x3ceb72({'projectName':_0x13a25d,'appCode':_0x428ee9,'env':_0x302318||_0x163a04||'production'});}else await _0x3ceb72({'projectName':_0x13a25d,'env':_0x302318||_0x163a04||_0x1f478b(0x84)});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x37e59e,_0x5133ae){const _0x37d4cb=a180_0x8824,_0x1fa8a9=_0x37e59e();while(!![]){try{const _0x2a5260=parseInt(_0x37d4cb(0xf0))/0x1*(parseInt(_0x37d4cb(0xe9))/0x2)+parseInt(_0x37d4cb(0xec))/0x3*(-parseInt(_0x37d4cb(0xea))/0x4)+-parseInt(_0x37d4cb(0xef))/0x5*(-parseInt(_0x37d4cb(0xeb))/0x6)+-parseInt(_0x37d4cb(0xf3))/0x7*(parseInt(_0x37d4cb(0xed))/0x8)+parseInt(_0x37d4cb(0xf2))/0x9*(parseInt(_0x37d4cb(0xee))/0xa)+parseInt(_0x37d4cb(0xf6))/0xb+-parseInt(_0x37d4cb(0xf5))/0xc;if(_0x2a5260===_0x5133ae)break;else _0x1fa8a9['push'](_0x1fa8a9['shift']());}catch(_0x4a1e54){_0x1fa8a9['push'](_0x1fa8a9['shift']());}}}(a180_0x13c9,0xbbf1b));function a180_0x8824(_0x45a838,_0x3624aa){_0x45a838=_0x45a838-0xe9;const _0x13c999=a180_0x13c9();let _0x8824e9=_0x13c999[_0x45a838];return _0x8824e9;}export function formatElapsed(_0x4a109a){const _0x1e9a61=a180_0x8824,_0x211643=Date['now']()-_0x4a109a;if(_0x211643<0x3e8)return _0x211643+'ms';const _0xaee42c=(_0x211643/0x3e8)[_0x1e9a61(0xf4)](0x2),_0x5e59c9=_0xaee42c[_0x1e9a61(0xf1)](/\.?0+$/u,'');return _0x5e59c9+'s';}function a180_0x13c9(){const _0x10ebde=['23979DBYIFk','3112klGWUp','7408910LWnlVj','6475vJVZVo','564191DoZPCS','replace','18xstQwF','23009YvrmUg','toFixed','20979156nKSmou','6858522XmGROt','4anhNTX','28mUYzSv','2868ttLBRH'];a180_0x13c9=function(){return _0x10ebde;};return a180_0x13c9();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0xdebea9,_0x14d615){const _0x2e8356=a168_0x3d17,_0x293e89=_0xdebea9();while(!![]){try{const _0x30708e=-parseInt(_0x2e8356(0xaa))/0x1*(-parseInt(_0x2e8356(0xaf))/0x2)+-parseInt(_0x2e8356(0xcc))/0x3*(-parseInt(_0x2e8356(0xfa))/0x4)+parseInt(_0x2e8356(0x86))/0x5*(parseInt(_0x2e8356(0x95))/0x6)+-parseInt(_0x2e8356(0xb6))/0x7*(-parseInt(_0x2e8356(0x9b))/0x8)+-parseInt(_0x2e8356(0xe0))/0x9+parseInt(_0x2e8356(0xf8))/0xa*(-parseInt(_0x2e8356(0xe7))/0xb)+parseInt(_0x2e8356(0xe8))/0xc*(-parseInt(_0x2e8356(0xdc))/0xd);if(_0x30708e===_0x14d615)break;else _0x293e89['push'](_0x293e89['shift']());}catch(_0x2c0059){_0x293e89['push'](_0x293e89['shift']());}}}(a168_0x1875,0xa34f1));import a168_0x5544ee from'path';import a168_0x25fb96 from'fs';import a168_0x48f4f0 from'chalk';import a168_0x33b813 from'ora';import{guidedCreateProject}from'../../../commands/project/create/enhanced-guided-create.js';import{fetchModelList}from'../../../core/api-client.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';function a168_0x3d17(_0x509788,_0x2d702f){_0x509788=_0x509788-0x81;const _0x187530=a168_0x1875();let _0x3d171d=_0x187530[_0x509788];return _0x3d171d;}import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{loadRawConfigLayers,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';import{validateProjectName}from'../../../commands/project/create/project-name.js';import{getSdkClientRoutingConfig}from'../../../constant/domain.js';import{generateSdkConfigFile}from'../../../api/generate-sdk-config-file.js';import{writeProjectDomainRoutingManifest}from'../../../config/project-domain-routing.js';import{CliErrors}from'../../../errors.js';function readDirectoryIdentity(_0x4869ee){const _0x3710b8=a168_0x3d17;try{const _0x179ee6=a168_0x25fb96[_0x3710b8(0xee)](_0x4869ee);if(!_0x179ee6[_0x3710b8(0xf6)]())return null;return{'dev':_0x179ee6[_0x3710b8(0xae)],'ino':_0x179ee6[_0x3710b8(0x8e)]};}catch{return null;}}function isSameDirectory(_0xf92816,_0xcbc46b){const _0x235856=a168_0x3d17;return!!_0xf92816&&!!_0xcbc46b&&_0xf92816[_0x235856(0xae)]===_0xcbc46b[_0x235856(0xae)]&&_0xf92816[_0x235856(0x8e)]===_0xcbc46b['ino'];}function commitCurrentDirectoryProject(_0x5cb8f2,_0x3f5c3b,_0xd02ffb){const _0x17c1e6=a168_0x3d17;if(!isSameDirectory(readDirectoryIdentity(_0x5cb8f2),_0xd02ffb))throw new Error(_0x17c1e6(0xea));const _0x33f2c4=a168_0x5544ee[_0x17c1e6(0xda)](_0x3f5c3b),_0x3b2657=a168_0x25fb96[_0x17c1e6(0xcf)](_0x5cb8f2);if(_0x3b2657[_0x17c1e6(0xd2)]!==0x1||_0x3b2657[0x0]!==_0x33f2c4)throw CliErrors[_0x17c1e6(0xb7)](_0x17c1e6(0xf4),'Remove\x20the\x20new\x20files\x20and\x20retry\x20from\x20an\x20empty\x20directory.');const _0x2d3bac=a168_0x5544ee[_0x17c1e6(0x9a)](_0x3f5c3b,_0x17c1e6(0xc6)),_0x2f06=[];try{for(const _0x613d7e of a168_0x25fb96[_0x17c1e6(0xcf)](_0x2d3bac)){a168_0x25fb96[_0x17c1e6(0xc2)](a168_0x5544ee[_0x17c1e6(0x9a)](_0x2d3bac,_0x613d7e),a168_0x5544ee[_0x17c1e6(0x9a)](_0x5cb8f2,_0x613d7e)),_0x2f06['push'](_0x613d7e);}a168_0x25fb96['rmSync'](_0x3f5c3b,{'recursive':!![],'force':!![]});}catch(_0x55399d){for(const _0x4a7e55 of _0x2f06[_0x17c1e6(0xb5)]()){const _0xf49580=a168_0x5544ee[_0x17c1e6(0x9a)](_0x5cb8f2,_0x4a7e55);if(!a168_0x25fb96[_0x17c1e6(0x8c)](_0xf49580))continue;a168_0x25fb96[_0x17c1e6(0xc2)](_0xf49580,a168_0x5544ee['join'](_0x2d3bac,_0x4a7e55));}throw _0x55399d;}}export async function createApp(_0x3a83e2){const _0x325260=a168_0x3d17,_0x10d3e3=await checkCliVersion();(_0x10d3e3['needsUpgrade']||_0x10d3e3[_0x325260(0xe6)])&&(printCliUpgradeWarning(_0x10d3e3),assertCliVersionSupported(_0x10d3e3),logger[_0x325260(0xc5)](_0x325260(0xd3),'CLI\x20version\x20check',{'currentVersion':_0x10d3e3[_0x325260(0xde)],'stableVersion':_0x10d3e3[_0x325260(0xa2)],'minimumVersion':_0x10d3e3[_0x325260(0x9c)],'needsUpgrade':_0x10d3e3[_0x325260(0xd5)],'belowMinimum':_0x10d3e3[_0x325260(0xe6)]}));const _0x1fe67d=_0x3a83e2[_0x325260(0xeb)]?a168_0x5544ee[_0x325260(0xda)](process[_0x325260(0xe2)]()):_0x3a83e2[_0x325260(0xe5)];if(_0x1fe67d&&(_0x3a83e2[_0x325260(0x84)]||_0x3a83e2[_0x325260(0xec)]))await runCreate({'projectName':_0x1fe67d,'appCode':_0x3a83e2['appCode'],'env':_0x3a83e2['env']},_0x3a83e2);else{if(_0x1fe67d){const _0x51cffe=await selectSingleAppcode(_0x3a83e2['cookie']);await runCreate({'projectName':_0x1fe67d,'appCode':_0x51cffe||undefined,'env':_0x3a83e2[_0x325260(0xa3)]},_0x3a83e2);}else await guidedCreateProject(_0x3a92e9=>runCreate(_0x3a92e9,_0x3a83e2),_0x3a83e2[_0x325260(0xa3)],_0x3a83e2['cookie']);}}async function runCreate(_0x3490df,_0x2342bf){const _0x4d62d2=a168_0x3d17;_0x3490df[_0x4d62d2(0xa6)]=validateProjectName(_0x3490df['projectName']);const _0x5d62c4=_0x2342bf[_0x4d62d2(0xeb)]?process['cwd']():a168_0x5544ee[_0x4d62d2(0xad)](process[_0x4d62d2(0xe2)](),_0x3490df[_0x4d62d2(0xa6)]);if(_0x2342bf[_0x4d62d2(0xeb)]){if(a168_0x25fb96[_0x4d62d2(0xcf)](_0x5d62c4)[_0x4d62d2(0xd2)]>0x0)throw CliErrors[_0x4d62d2(0xb7)]('The\x20current\x20directory\x20must\x20be\x20empty.',_0x4d62d2(0xef));}else{if(a168_0x25fb96[_0x4d62d2(0x8c)](_0x5d62c4))throw new Error('Project\x20directory\x20'+_0x3490df[_0x4d62d2(0xa6)]+_0x4d62d2(0xe4));}let _0x193925=null;const _0x3acbbe=_0x2342bf[_0x4d62d2(0xeb)]?readDirectoryIdentity(_0x5d62c4):null;let _0x1710c2=null;try{a168_0x25fb96[_0x4d62d2(0xc9)](a168_0x5544ee[_0x4d62d2(0xce)](_0x5d62c4),a168_0x25fb96['constants']['W_OK']);}catch{throw new Error(_0x4d62d2(0xa5));}logger['info']('create',_0x4d62d2(0xf2)+_0x3490df[_0x4d62d2(0xa6)],{'projectDir':_0x5d62c4,'appCode':_0x3490df[_0x4d62d2(0x84)]}),console[_0x4d62d2(0xdb)](),console[_0x4d62d2(0xdb)](a168_0x48f4f0['green']('\x20√\x20')+_0x4d62d2(0xc8)+a168_0x48f4f0[_0x4d62d2(0x91)](_0x3490df[_0x4d62d2(0xa6)])+(_0x3490df[_0x4d62d2(0x84)]?_0x4d62d2(0xb1)+a168_0x48f4f0[_0x4d62d2(0xe3)](_0x3490df[_0x4d62d2(0x84)]):''));try{let _0x17e866=_0x3490df['projectName'];_0x2342bf['currentDir']&&(_0x1710c2=a168_0x25fb96[_0x4d62d2(0xfb)](a168_0x5544ee[_0x4d62d2(0x9a)](_0x5d62c4,_0x4d62d2(0xb4))),_0x17e866=a168_0x5544ee[_0x4d62d2(0x82)](process['cwd'](),a168_0x5544ee[_0x4d62d2(0x9a)](_0x1710c2,'project')));const _0x1f9b44=a168_0x5544ee[_0x4d62d2(0xad)](process[_0x4d62d2(0xe2)](),_0x17e866);await runTask('Resolving\x20project\x20template',_0x556f8f=>copyProjectTemplate(_0x17e866,_0x2f3725=>_0x556f8f(projectTemplateStageLabel(_0x2f3725)),_0x2342bf['templateSource']),'Project\x20template\x20ready'),_0x193925=_0x2342bf[_0x4d62d2(0xeb)]?null:readDirectoryIdentity(_0x5d62c4);if(!_0x2342bf[_0x4d62d2(0xeb)]&&!_0x193925)throw new Error(_0x4d62d2(0x83));await updatePackageJsonName(_0x17e866,_0x3490df['projectName']),await runTask('Install\x20dependencies',()=>installDependencies(_0x17e866)),await runTask(_0x4d62d2(0xc3),()=>formatProjectCode(_0x17e866)),await configureAppCode(_0x17e866,_0x3490df['projectName'],_0x3490df[_0x4d62d2(0x84)]||'',_0x3490df[_0x4d62d2(0xa3)]);let _0x2d79e5=![];if(_0x3490df[_0x4d62d2(0x84)]){console[_0x4d62d2(0xdb)]('*\x20Pulling\x20API\x20configuration...');const _0x20a440=process[_0x4d62d2(0xe2)]();try{process[_0x4d62d2(0xd9)](_0x1f9b44);const _0x4b301e=_0x3490df[_0x4d62d2(0xa3)]||'production';initEnv(_0x4b301e);const {configArray:_0x36dcf6}=await fetchModelList(_0x3490df[_0x4d62d2(0x84)],_0x2342bf[_0x4d62d2(0xd0)]||''),_0xd69710=DEFAULT_API_DIR,_0x24dd1e=await generateApiFile(_0x36dcf6,'',_0x3490df[_0x4d62d2(0x84)],!![],_0x4b301e,_0xd69710,undefined,getSdkClientRoutingConfig(),{'overwriteTypescript':!![]});console[_0x4d62d2(0xdb)]('√\x20Pulled\x20'+_0x36dcf6[_0x4d62d2(0xd2)]+_0x4d62d2(0x8f)+_0x24dd1e[_0x4d62d2(0xd4)]+'\x20model(s)'),logger['info']('create','API\x20configuration\x20pulled:\x20'+_0x3490df[_0x4d62d2(0x84)]);}catch(_0x5044cb){_0x2d79e5=!![],console[_0x4d62d2(0xdb)]('!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20'+CLI_BIN_NAME+_0x4d62d2(0xd6)),logger[_0x4d62d2(0xb8)](_0x4d62d2(0xd3),'API\x20configuration\x20pull\x20failed',{'error':_0x5044cb instanceof Error?_0x5044cb[_0x4d62d2(0xf5)]:String(_0x5044cb)});}finally{process[_0x4d62d2(0xd9)](_0x20a440);}}if(_0x2342bf['currentDir']){if(!_0x1710c2||!_0x3acbbe)throw new Error(_0x4d62d2(0xbc));commitCurrentDirectoryProject(_0x5d62c4,_0x1710c2,_0x3acbbe),_0x1710c2=null;}try{logger[_0x4d62d2(0x81)](_0x5d62c4),logger[_0x4d62d2(0x96)](_0x4d62d2(0xd3),'Project\x20created:\x20'+_0x3490df[_0x4d62d2(0xa6)]);}catch(_0x1e9030){console['warn'](_0x4d62d2(0xc0)+(_0x1e9030 instanceof Error?_0x1e9030[_0x4d62d2(0xf5)]:String(_0x1e9030)));}console[_0x4d62d2(0xdb)](),console['log'](a168_0x48f4f0['green']('─'[_0x4d62d2(0xa1)](0x3c))),console[_0x4d62d2(0xdb)](a168_0x48f4f0[_0x4d62d2(0xe3)][_0x4d62d2(0xcb)](_0x4d62d2(0x99))),console[_0x4d62d2(0xdb)]();const _0x5e0c9b=_0x2342bf[_0x4d62d2(0xeb)]?CLI_BIN_NAME+_0x4d62d2(0xc4):_0x4d62d2(0xcd)+_0x3490df[_0x4d62d2(0xa6)]+_0x4d62d2(0xf0)+CLI_BIN_NAME+_0x4d62d2(0xc4);console[_0x4d62d2(0xdb)](_0x4d62d2(0xa8)+a168_0x48f4f0[_0x4d62d2(0xe3)][_0x4d62d2(0xcb)](_0x5e0c9b)),_0x2d79e5&&console[_0x4d62d2(0xdb)](_0x4d62d2(0xdf)+a168_0x48f4f0[_0x4d62d2(0xe3)]['bold'](CLI_BIN_NAME+_0x4d62d2(0xd6))),console[_0x4d62d2(0xdb)](a168_0x48f4f0[_0x4d62d2(0x91)]('─'['repeat'](0x3c)));}catch(_0x2c64fe){logger['error'](_0x4d62d2(0xd3),_0x4d62d2(0xa7)+_0x3490df[_0x4d62d2(0xa6)],{'error':_0x2c64fe instanceof Error?_0x2c64fe['message']:String(_0x2c64fe)});try{const _0x236f1b=readDirectoryIdentity(_0x5d62c4);if(_0x2342bf[_0x4d62d2(0xeb)]&&_0x1710c2)a168_0x25fb96[_0x4d62d2(0x93)](_0x1710c2,{'recursive':!![],'force':!![]});else{if(_0x193925&&_0x236f1b?.['dev']===_0x193925[_0x4d62d2(0xae)]&&_0x236f1b[_0x4d62d2(0x8e)]===_0x193925['ino'])console[_0x4d62d2(0xdb)](_0x4d62d2(0x8a)+_0x5d62c4),a168_0x25fb96[_0x4d62d2(0x93)](_0x5d62c4,{'recursive':!![],'force':!![]});else _0x236f1b&&logger[_0x4d62d2(0xb8)](_0x4d62d2(0xd3),'Skip\x20cleanup:\x20project\x20directory\x20ownership\x20changed:\x20'+_0x5d62c4);}}catch{logger[_0x4d62d2(0xb8)](_0x4d62d2(0xd3),'Failed\x20to\x20clean\x20up\x20project\x20directory:\x20'+_0x5d62c4);}throw _0x2c64fe;}}function a168_0x1875(){const _0x1f66d4=['Starting\x20project\x20creation:\x20','√\x20package.json\x20updated:\x20name=','The\x20current\x20directory\x20changed\x20during\x20project\x20creation.','message','isDirectory','Verifying\x20project\x20template','6733190PXWoQg','readFileSync','68BZVnJJ','mkdtempSync','setLogPath','relative','Unable\x20to\x20verify\x20ownership\x20of\x20the\x20created\x20project\x20directory','appCode','Failed\x20to\x20update\x20package.json','6458295TFOCqp','parse','name','version','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','\x20|\x20Default:\x20implicit\x20(single\x20app)','existsSync','...','ino','\x20dataset(s),\x20generated\x20','Extracting\x20project\x20template','green','extracting','rmSync','Resolving\x20project\x20template','6kBQSJk','success','toLocaleString','verifying','🚀\x20Next\x20Steps:','join','231032DHWAvO','minimumVersion','apps','keys','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27','stringify','repeat','stableVersion','env','\x20√\x20','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','projectName','Project\x20creation\x20failed:\x20','\x20\x201.\x20Start\x20project:\x20','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','6042ezKDzs','fail','error','resolve','dev','398DAjBQo','gray','\x20|\x20AppCode:\x20','description','Copying\x20local\x20template\x20source','.rabetbase-create-','reverse','35EyaUxj','validation','warn','stop','writeFileSync','\x20config\x20set\x20appcode\x20<app-code>\x27','Unable\x20to\x20prepare\x20the\x20current\x20directory\x20workspace','1.0.0','resolving','text','!\x20Project\x20created,\x20but\x20local\x20logging\x20could\x20not\x20be\x20initialized:\x20','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','renameSync','Format\x20code','\x20run\x20start','info','project','string','Project\x20name:\x20','accessSync','production','bold','26826mgyOWf','cd\x20','dirname','readdirSync','cookie','package.json','length','create','modelCount','needsUpgrade','\x20api\x20pull\x20--force\x20--yes','*\x20Configuring\x20AppCode\x20for\x20project\x20','start','chdir','basename','log','13foQrsF','Configured\x20app\x20AppCode:\x20','currentVersion','\x20\x202.\x20Pull\x20API\x20configuration:\x20','9611559ewuyuW','Failed\x20to\x20configure\x20app\x20AppCode','cwd','cyan','\x20already\x20exists','projectCode','belowMinimum','11WSpHCE','4562916oTXQlR','utf8','Current\x20directory\x20identity\x20changed\x20during\x20project\x20creation','currentDir','nonInteractive','Downloading\x20project\x20template','lstatSync','Remove\x20or\x20move\x20the\x20existing\x20files,\x20then\x20retry\x20with\x20--current-dir.','\x20&&\x20','√\x20Configuration\x20file\x20created,\x20Apps:\x20'];a168_0x1875=function(){return _0x1f66d4;};return a168_0x1875();}async function runTask(_0x3152d3,_0x4cbd0e,_0x28fcf8=_0x3152d3){const _0x1ab374=a168_0x3d17,_0xd27da1=a168_0x33b813(_0x3152d3+_0x1ab374(0x8d))[_0x1ab374(0xd8)]();try{const _0x2cc54e=await _0x4cbd0e(_0x4787cb=>{const _0x544ff3=_0x1ab374;_0xd27da1[_0x544ff3(0xbf)]=_0x4787cb+'...';});_0xd27da1[_0x1ab374(0xb9)](),console[_0x1ab374(0xdb)](''+a168_0x48f4f0[_0x1ab374(0x91)](_0x1ab374(0xa4))+_0x28fcf8+'\x20'+a168_0x48f4f0[_0x1ab374(0xb0)]('['+_0x2cc54e+']'));}catch(_0xcd935b){_0xd27da1[_0x1ab374(0xab)](_0x3152d3);throw _0xcd935b;}}function projectTemplateStageLabel(_0x189906){const _0x252e52=a168_0x3d17;switch(_0x189906){case _0x252e52(0xbe):return _0x252e52(0x94);case'downloading':return _0x252e52(0xed);case _0x252e52(0x98):return _0x252e52(0xf7);case _0x252e52(0x92):return _0x252e52(0x90);case'copying':return _0x252e52(0xb3);}}async function updatePackageJsonName(_0x422c71,_0xfa32ca){const _0x547791=a168_0x3d17,_0x24b5b1=a168_0x5544ee['resolve'](process[_0x547791(0xe2)](),_0x422c71),_0x1a7fc6=a168_0x5544ee['join'](_0x24b5b1,_0x547791(0xd1));try{console['log'](_0x547791(0xc1));const _0xf7890c=getRabetbaseCliPackageRoot(),_0x25daa=a168_0x5544ee['join'](_0xf7890c,_0x547791(0xd1));let _0x1bb1ed=_0x547791(0xbd);try{const _0x13278e=JSON[_0x547791(0x87)](a168_0x25fb96[_0x547791(0xf9)](_0x25daa,'utf8'));_0x1bb1ed=_0x13278e[_0x547791(0x89)]||_0x547791(0xbd);}catch{}const _0x46d47a=a168_0x25fb96['readFileSync'](_0x1a7fc6,_0x547791(0xe9)),_0x3e1a9a=JSON[_0x547791(0x87)](_0x46d47a);_0x3e1a9a[_0x547791(0x88)]=_0xfa32ca,_0x3e1a9a[_0x547791(0xb2)]=_0xfa32ca+'\x20Generated\x20by\x20rabetbase\x20cli\x20'+_0x1bb1ed,a168_0x25fb96[_0x547791(0xba)](_0x1a7fc6,JSON[_0x547791(0xa0)](_0x3e1a9a,null,0x2)+'\x0a',_0x547791(0xe9)),console[_0x547791(0xdb)](_0x547791(0xf3)+_0xfa32ca),logger['info'](_0x547791(0xd3),'Updating\x20package.json\x20name');}catch(_0x1ae034){logger[_0x547791(0xac)](_0x547791(0xd3),_0x547791(0x85));throw _0x1ae034;}}async function configureAppCode(_0x674032,_0x44c035,_0x384cba,_0x51a16c){const _0x24ddfd=a168_0x3d17,_0x5b712d=a168_0x5544ee[_0x24ddfd(0xad)](process[_0x24ddfd(0xe2)](),_0x674032),_0x3ed4db=a168_0x5544ee[_0x24ddfd(0x9a)](_0x5b712d,NEW_CONFIG_NAME);try{_0x384cba?console['log'](_0x24ddfd(0xd7)+_0x44c035+':\x20'+_0x384cba):console[_0x24ddfd(0xdb)](_0x24ddfd(0xa9)+_0x44c035);const _0x42b467=getRabetbaseCliPackageRoot(),_0x5024c9=a168_0x5544ee[_0x24ddfd(0x9a)](_0x42b467,'package.json');let _0x4a2899='1.0.0';try{const _0x400aed=JSON[_0x24ddfd(0x87)](a168_0x25fb96['readFileSync'](_0x5024c9,'utf8'));_0x4a2899=_0x400aed[_0x24ddfd(0x89)]||_0x24ddfd(0xbd);}catch{}const {globalConfig:_0x2264a4}=loadRawConfigLayers(),_0x242515=typeof _0x2264a4[_0x24ddfd(0xa3)]===_0x24ddfd(0xc7)?_0x2264a4[_0x24ddfd(0xa3)]:undefined,_0x57d380={};for(const _0x2c8845 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x2264a4[_0x2c8845]!=null)_0x57d380[_0x2c8845]=_0x2264a4[_0x2c8845];}const _0x3e1022=buildCanonicalProjectConfig(_0x57d380,{'appCodes':_0x384cba?[_0x384cba]:[],'env':_0x51a16c||_0x242515||_0x24ddfd(0xca),'metadata':{'createdAt':new Date()[_0x24ddfd(0x97)](),'version':_0x4a2899}});writeConfigFile(_0x3ed4db,_0x3e1022),await generateSdkConfigFile(a168_0x5544ee['join'](_0x5b712d,DEFAULT_API_DIR),getSdkClientRoutingConfig()),writeProjectDomainRoutingManifest(_0x5b712d),_0x384cba?console[_0x24ddfd(0xdb)](_0x24ddfd(0xf1)+Object[_0x24ddfd(0x9e)](_0x3e1022[_0x24ddfd(0x9d)]||{})['join'](',\x20')+_0x24ddfd(0x8b)):console[_0x24ddfd(0xdb)](_0x24ddfd(0x9f)+CLI_BIN_NAME+_0x24ddfd(0xbb)),logger[_0x24ddfd(0xc5)](_0x24ddfd(0xd3),_0x24ddfd(0xdd)+_0x384cba);}catch(_0x13c642){logger[_0x24ddfd(0xac)]('create',_0x24ddfd(0xe1));throw _0x13c642;}}
|
|
1
|
+
(function(_0x26de59,_0x400f0b){const _0x1e7c6b=a181_0x1488,_0x41cb62=_0x26de59();while(!![]){try{const _0x1b5f73=-parseInt(_0x1e7c6b(0x148))/0x1*(-parseInt(_0x1e7c6b(0x199))/0x2)+-parseInt(_0x1e7c6b(0x1bf))/0x3+-parseInt(_0x1e7c6b(0x147))/0x4*(parseInt(_0x1e7c6b(0x151))/0x5)+parseInt(_0x1e7c6b(0x182))/0x6+parseInt(_0x1e7c6b(0x1a4))/0x7+parseInt(_0x1e7c6b(0x153))/0x8*(-parseInt(_0x1e7c6b(0x1a5))/0x9)+-parseInt(_0x1e7c6b(0x196))/0xa*(-parseInt(_0x1e7c6b(0x18a))/0xb);if(_0x1b5f73===_0x400f0b)break;else _0x41cb62['push'](_0x41cb62['shift']());}catch(_0x4a5f08){_0x41cb62['push'](_0x41cb62['shift']());}}}(a181_0x36c3,0x81ef6));import a181_0xb1949a from'path';import a181_0x494a6f from'fs';import a181_0x3d50ae from'chalk';import a181_0x4fb61c from'ora';import{guidedCreateProject}from'../../../commands/project/create/enhanced-guided-create.js';import{fetchModelList}from'../../../core/api-client.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{loadRawConfigLayers,writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{copyProjectTemplate}from'../../../commands/project/create/use-copy-project-template.js';function a181_0x36c3(){const _0x27c5d1=['\x20|\x20Default:\x20implicit\x20(single\x20app)','env','cwd','readdirSync','dirname','stop','version','\x20√\x20','description','\x20|\x20AppCode:\x20','2666058fmKdbY','\x20config\x20set\x20appcode\x20<app-code>\x27','Remove\x20or\x20move\x20the\x20existing\x20files,\x20then\x20retry\x20with\x20--current-dir.','bold','warn','lstatSync','mkdtempSync','4oRdtzI','1tCAoZF','.rabetbase-create-','cookie','Format\x20code','Failed\x20to\x20update\x20package.json','projectName','accessSync','*\x20Pulling\x20API\x20configuration...','API\x20configuration\x20pull\x20failed','792005RESKwg','log','6208VUOniO','√\x20Configuration\x20file\x20created,\x20Apps:\x20','success','utf8','W_OK','\x20run\x20start','existsSync','green','dev','The\x20current\x20directory\x20must\x20be\x20empty.','basename','projectCode','appCode','join','constants','project','readFileSync','resolving','setLogPath','string','\x20api\x20pull\x20--force\x20--yes','Starting\x20project\x20creation:\x20','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20','Install\x20dependencies','resolve','CLI\x20version\x20check','error','Unable\x20to\x20prepare\x20the\x20current\x20directory\x20workspace','validation','*\x20Configuring\x20AppCode\x20for\x20project\x20','needsUpgrade','Project\x20directory\x20','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','\x20&&\x20','length','√\x20package.json\x20updated:\x20name=','Project\x20created:\x20','√\x20Pulled\x20','renameSync','\x20model(s)','create','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','modelCount','The\x20current\x20directory\x20changed\x20during\x20project\x20creation.','production','toLocaleString','Downloading\x20project\x20template','1822554hdYqvH','belowMinimum','Verifying\x20project\x20template','Failed\x20to\x20clean\x20up\x20project\x20directory:\x20','Remove\x20the\x20new\x20files\x20and\x20retry\x20from\x20an\x20empty\x20directory.','1.0.0','chdir','Resolving\x20project\x20template','526702qilKCC','copying','cyan','Extracting\x20project\x20template','Configured\x20app\x20AppCode:\x20','stableVersion','Current\x20directory\x20identity\x20changed\x20during\x20project\x20creation','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','rmSync','!\x20Project\x20created,\x20but\x20local\x20logging\x20could\x20not\x20be\x20initialized:\x20','parse','repeat','50cqOTSp','writeFileSync','message','1379718cLBEsm','Skip\x20cleanup:\x20project\x20directory\x20ownership\x20changed:\x20','Failed\x20to\x20configure\x20app\x20AppCode','package.json','API\x20configuration\x20pulled:\x20','text','templateSource','nonInteractive','reverse','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27','info','2907359RZCfCc','801tRCQnW','currentVersion','\x20\x202.\x20Pull\x20API\x20configuration:\x20','ino','Copying\x20local\x20template\x20source','stringify','\x20\x201.\x20Start\x20project:\x20','isDirectory','push','Project\x20name:\x20','extracting','\x20dataset(s),\x20generated\x20','gray','...','\x20already\x20exists','currentDir'];a181_0x36c3=function(){return _0x27c5d1;};return a181_0x36c3();}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';import{validateProjectName}from'../../../commands/project/create/project-name.js';import{getSdkClientRoutingConfig}from'../../../constant/domain.js';function a181_0x1488(_0x984fef,_0x509359){_0x984fef=_0x984fef-0x145;const _0x36c3c3=a181_0x36c3();let _0x1488d9=_0x36c3c3[_0x984fef];return _0x1488d9;}import{generateSdkConfigFile}from'../../../api/generate-sdk-config-file.js';import{writeProjectDomainRoutingManifest}from'../../../config/project-domain-routing.js';import{CliErrors}from'../../../errors.js';function readDirectoryIdentity(_0x5928b9){const _0x47edbb=a181_0x1488;try{const _0x227d37=a181_0x494a6f[_0x47edbb(0x145)](_0x5928b9);if(!_0x227d37[_0x47edbb(0x1ac)]())return null;return{'dev':_0x227d37[_0x47edbb(0x15b)],'ino':_0x227d37[_0x47edbb(0x1a8)]};}catch{return null;}}function isSameDirectory(_0x232a46,_0x1c63a1){const _0x4980a8=a181_0x1488;return!!_0x232a46&&!!_0x1c63a1&&_0x232a46[_0x4980a8(0x15b)]===_0x1c63a1[_0x4980a8(0x15b)]&&_0x232a46[_0x4980a8(0x1a8)]===_0x1c63a1[_0x4980a8(0x1a8)];}function commitCurrentDirectoryProject(_0x436b7c,_0x5923e8,_0xfb5ad1){const _0x82f203=a181_0x1488;if(!isSameDirectory(readDirectoryIdentity(_0x436b7c),_0xfb5ad1))throw new Error(_0x82f203(0x190));const _0x90e2db=a181_0xb1949a[_0x82f203(0x15d)](_0x5923e8),_0x1bff35=a181_0x494a6f['readdirSync'](_0x436b7c);if(_0x1bff35[_0x82f203(0x175)]!==0x1||_0x1bff35[0x0]!==_0x90e2db)throw CliErrors[_0x82f203(0x16f)](_0x82f203(0x17e),_0x82f203(0x186));const _0x1fd5b9=a181_0xb1949a[_0x82f203(0x160)](_0x5923e8,_0x82f203(0x162)),_0x5a6386=[];try{for(const _0x4fc3be of a181_0x494a6f[_0x82f203(0x1b8)](_0x1fd5b9)){a181_0x494a6f[_0x82f203(0x179)](a181_0xb1949a[_0x82f203(0x160)](_0x1fd5b9,_0x4fc3be),a181_0xb1949a[_0x82f203(0x160)](_0x436b7c,_0x4fc3be)),_0x5a6386[_0x82f203(0x1ad)](_0x4fc3be);}a181_0x494a6f[_0x82f203(0x192)](_0x5923e8,{'recursive':!![],'force':!![]});}catch(_0x369b09){for(const _0x3dd35a of _0x5a6386[_0x82f203(0x1a1)]()){const _0x1b15f9=a181_0xb1949a[_0x82f203(0x160)](_0x436b7c,_0x3dd35a);if(!a181_0x494a6f[_0x82f203(0x159)](_0x1b15f9))continue;a181_0x494a6f['renameSync'](_0x1b15f9,a181_0xb1949a[_0x82f203(0x160)](_0x1fd5b9,_0x3dd35a));}throw _0x369b09;}}export async function createApp(_0x3d69bf){const _0x4447da=a181_0x1488,_0x3bdba3=await checkCliVersion();(_0x3bdba3[_0x4447da(0x171)]||_0x3bdba3[_0x4447da(0x183)])&&(printCliUpgradeWarning(_0x3bdba3),assertCliVersionSupported(_0x3bdba3),logger[_0x4447da(0x1a3)](_0x4447da(0x17b),_0x4447da(0x16c),{'currentVersion':_0x3bdba3[_0x4447da(0x1a6)],'stableVersion':_0x3bdba3[_0x4447da(0x18f)],'minimumVersion':_0x3bdba3['minimumVersion'],'needsUpgrade':_0x3bdba3[_0x4447da(0x171)],'belowMinimum':_0x3bdba3[_0x4447da(0x183)]}));const _0x80bb3=_0x3d69bf[_0x4447da(0x1b4)]?a181_0xb1949a[_0x4447da(0x15d)](process[_0x4447da(0x1b7)]()):_0x3d69bf[_0x4447da(0x15e)];if(_0x80bb3&&(_0x3d69bf[_0x4447da(0x15f)]||_0x3d69bf[_0x4447da(0x1a0)]))await runCreate({'projectName':_0x80bb3,'appCode':_0x3d69bf[_0x4447da(0x15f)],'env':_0x3d69bf['env']},_0x3d69bf);else{if(_0x80bb3){const _0x28b6f3=await selectSingleAppcode(_0x3d69bf[_0x4447da(0x14a)]);await runCreate({'projectName':_0x80bb3,'appCode':_0x28b6f3||undefined,'env':_0x3d69bf[_0x4447da(0x1b6)]},_0x3d69bf);}else await guidedCreateProject(_0x4d4d6d=>runCreate(_0x4d4d6d,_0x3d69bf),_0x3d69bf[_0x4447da(0x1b6)],_0x3d69bf['cookie']);}}async function runCreate(_0x13ab13,_0x104e4c){const _0x2a0c3b=a181_0x1488;_0x13ab13['projectName']=validateProjectName(_0x13ab13[_0x2a0c3b(0x14d)]);const _0x52e649=_0x104e4c[_0x2a0c3b(0x1b4)]?process[_0x2a0c3b(0x1b7)]():a181_0xb1949a['resolve'](process[_0x2a0c3b(0x1b7)](),_0x13ab13['projectName']);if(_0x104e4c[_0x2a0c3b(0x1b4)]){if(a181_0x494a6f[_0x2a0c3b(0x1b8)](_0x52e649)[_0x2a0c3b(0x175)]>0x0)throw CliErrors['validation'](_0x2a0c3b(0x15c),_0x2a0c3b(0x1c1));}else{if(a181_0x494a6f[_0x2a0c3b(0x159)](_0x52e649))throw new Error(_0x2a0c3b(0x172)+_0x13ab13[_0x2a0c3b(0x14d)]+_0x2a0c3b(0x1b3));}let _0x83874e=null;const _0x3903bb=_0x104e4c['currentDir']?readDirectoryIdentity(_0x52e649):null;let _0x4828b9=null;try{a181_0x494a6f[_0x2a0c3b(0x14e)](a181_0xb1949a[_0x2a0c3b(0x1b9)](_0x52e649),a181_0x494a6f[_0x2a0c3b(0x161)][_0x2a0c3b(0x157)]);}catch{throw new Error(_0x2a0c3b(0x17c));}logger['info'](_0x2a0c3b(0x17b),_0x2a0c3b(0x168)+_0x13ab13['projectName'],{'projectDir':_0x52e649,'appCode':_0x13ab13['appCode']}),console[_0x2a0c3b(0x152)](),console[_0x2a0c3b(0x152)](a181_0x3d50ae[_0x2a0c3b(0x15a)](_0x2a0c3b(0x1bc))+_0x2a0c3b(0x1ae)+a181_0x3d50ae['green'](_0x13ab13[_0x2a0c3b(0x14d)])+(_0x13ab13[_0x2a0c3b(0x15f)]?_0x2a0c3b(0x1be)+a181_0x3d50ae[_0x2a0c3b(0x18c)](_0x13ab13[_0x2a0c3b(0x15f)]):''));try{let _0x58b5d9=_0x13ab13['projectName'];_0x104e4c['currentDir']&&(_0x4828b9=a181_0x494a6f[_0x2a0c3b(0x146)](a181_0xb1949a['join'](_0x52e649,_0x2a0c3b(0x149))),_0x58b5d9=a181_0xb1949a['relative'](process[_0x2a0c3b(0x1b7)](),a181_0xb1949a[_0x2a0c3b(0x160)](_0x4828b9,_0x2a0c3b(0x162))));const _0x2862b5=a181_0xb1949a[_0x2a0c3b(0x16b)](process[_0x2a0c3b(0x1b7)](),_0x58b5d9);await runTask('Resolving\x20project\x20template',_0x281434=>copyProjectTemplate(_0x58b5d9,_0x33e4fd=>_0x281434(projectTemplateStageLabel(_0x33e4fd)),_0x104e4c[_0x2a0c3b(0x19f)]),'Project\x20template\x20ready'),_0x83874e=_0x104e4c[_0x2a0c3b(0x1b4)]?null:readDirectoryIdentity(_0x52e649);if(!_0x104e4c[_0x2a0c3b(0x1b4)]&&!_0x83874e)throw new Error('Unable\x20to\x20verify\x20ownership\x20of\x20the\x20created\x20project\x20directory');await updatePackageJsonName(_0x58b5d9,_0x13ab13['projectName']),await runTask(_0x2a0c3b(0x16a),()=>installDependencies(_0x58b5d9)),await runTask(_0x2a0c3b(0x14b),()=>formatProjectCode(_0x58b5d9)),await configureAppCode(_0x58b5d9,_0x13ab13[_0x2a0c3b(0x14d)],_0x13ab13[_0x2a0c3b(0x15f)]||'',_0x13ab13['env']);let _0x2b26af=![];if(_0x13ab13[_0x2a0c3b(0x15f)]){console[_0x2a0c3b(0x152)](_0x2a0c3b(0x14f));const _0x3d4165=process[_0x2a0c3b(0x1b7)]();try{process[_0x2a0c3b(0x188)](_0x2862b5);const _0x559e73=_0x13ab13[_0x2a0c3b(0x1b6)]||_0x2a0c3b(0x17f);initEnv(_0x559e73);const {configArray:_0x486f0e}=await fetchModelList(_0x13ab13[_0x2a0c3b(0x15f)],_0x104e4c[_0x2a0c3b(0x14a)]||''),_0x768137=DEFAULT_API_DIR,_0x3f5e59=await generateApiFile(_0x486f0e,'',_0x13ab13[_0x2a0c3b(0x15f)],!![],_0x559e73,_0x768137,undefined,getSdkClientRoutingConfig(),{'overwriteTypescript':!![]});console[_0x2a0c3b(0x152)](_0x2a0c3b(0x178)+_0x486f0e[_0x2a0c3b(0x175)]+_0x2a0c3b(0x1b0)+_0x3f5e59[_0x2a0c3b(0x17d)]+_0x2a0c3b(0x17a)),logger[_0x2a0c3b(0x1a3)](_0x2a0c3b(0x17b),_0x2a0c3b(0x19d)+_0x13ab13['appCode']);}catch(_0x50d276){_0x2b26af=!![],console['log'](_0x2a0c3b(0x169)+CLI_BIN_NAME+_0x2a0c3b(0x167)),logger[_0x2a0c3b(0x1c3)](_0x2a0c3b(0x17b),_0x2a0c3b(0x150),{'error':_0x50d276 instanceof Error?_0x50d276[_0x2a0c3b(0x198)]:String(_0x50d276)});}finally{process[_0x2a0c3b(0x188)](_0x3d4165);}}if(_0x104e4c[_0x2a0c3b(0x1b4)]){if(!_0x4828b9||!_0x3903bb)throw new Error(_0x2a0c3b(0x16e));commitCurrentDirectoryProject(_0x52e649,_0x4828b9,_0x3903bb),_0x4828b9=null;}try{logger[_0x2a0c3b(0x165)](_0x52e649),logger[_0x2a0c3b(0x155)]('create',_0x2a0c3b(0x177)+_0x13ab13[_0x2a0c3b(0x14d)]);}catch(_0x199048){console[_0x2a0c3b(0x1c3)](_0x2a0c3b(0x193)+(_0x199048 instanceof Error?_0x199048[_0x2a0c3b(0x198)]:String(_0x199048)));}console[_0x2a0c3b(0x152)](),console[_0x2a0c3b(0x152)](a181_0x3d50ae[_0x2a0c3b(0x15a)]('─'[_0x2a0c3b(0x195)](0x3c))),console[_0x2a0c3b(0x152)](a181_0x3d50ae[_0x2a0c3b(0x18c)][_0x2a0c3b(0x1c2)]('🚀\x20Next\x20Steps:')),console['log']();const _0x38129e=_0x104e4c['currentDir']?CLI_BIN_NAME+'\x20run\x20start':'cd\x20'+_0x13ab13[_0x2a0c3b(0x14d)]+_0x2a0c3b(0x174)+CLI_BIN_NAME+_0x2a0c3b(0x158);console[_0x2a0c3b(0x152)](_0x2a0c3b(0x1ab)+a181_0x3d50ae[_0x2a0c3b(0x18c)][_0x2a0c3b(0x1c2)](_0x38129e)),_0x2b26af&&console[_0x2a0c3b(0x152)](_0x2a0c3b(0x1a7)+a181_0x3d50ae[_0x2a0c3b(0x18c)][_0x2a0c3b(0x1c2)](CLI_BIN_NAME+_0x2a0c3b(0x167))),console['log'](a181_0x3d50ae[_0x2a0c3b(0x15a)]('─'[_0x2a0c3b(0x195)](0x3c)));}catch(_0x597a93){logger['error'](_0x2a0c3b(0x17b),'Project\x20creation\x20failed:\x20'+_0x13ab13[_0x2a0c3b(0x14d)],{'error':_0x597a93 instanceof Error?_0x597a93[_0x2a0c3b(0x198)]:String(_0x597a93)});try{const _0xc1f3be=readDirectoryIdentity(_0x52e649);if(_0x104e4c[_0x2a0c3b(0x1b4)]&&_0x4828b9)a181_0x494a6f[_0x2a0c3b(0x192)](_0x4828b9,{'recursive':!![],'force':!![]});else{if(_0x83874e&&_0xc1f3be?.[_0x2a0c3b(0x15b)]===_0x83874e[_0x2a0c3b(0x15b)]&&_0xc1f3be[_0x2a0c3b(0x1a8)]===_0x83874e[_0x2a0c3b(0x1a8)])console['log']('*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20'+_0x52e649),a181_0x494a6f[_0x2a0c3b(0x192)](_0x52e649,{'recursive':!![],'force':!![]});else _0xc1f3be&&logger[_0x2a0c3b(0x1c3)](_0x2a0c3b(0x17b),_0x2a0c3b(0x19a)+_0x52e649);}}catch{logger['warn']('create',_0x2a0c3b(0x185)+_0x52e649);}throw _0x597a93;}}async function runTask(_0x9122ab,_0x170956,_0x147c72=_0x9122ab){const _0x5de6bd=a181_0x1488,_0x9f96e4=a181_0x4fb61c(_0x9122ab+'...')['start']();try{const _0x248106=await _0x170956(_0x18e7b3=>{const _0x2d3038=a181_0x1488;_0x9f96e4[_0x2d3038(0x19e)]=_0x18e7b3+_0x2d3038(0x1b2);});_0x9f96e4[_0x5de6bd(0x1ba)](),console['log'](''+a181_0x3d50ae[_0x5de6bd(0x15a)](_0x5de6bd(0x1bc))+_0x147c72+'\x20'+a181_0x3d50ae[_0x5de6bd(0x1b1)]('['+_0x248106+']'));}catch(_0x3f9f95){_0x9f96e4['fail'](_0x9122ab);throw _0x3f9f95;}}function projectTemplateStageLabel(_0x4e1c2b){const _0x2f948c=a181_0x1488;switch(_0x4e1c2b){case _0x2f948c(0x164):return _0x2f948c(0x189);case'downloading':return _0x2f948c(0x181);case'verifying':return _0x2f948c(0x184);case _0x2f948c(0x1af):return _0x2f948c(0x18d);case _0x2f948c(0x18b):return _0x2f948c(0x1a9);}}async function updatePackageJsonName(_0x5f20f1,_0x5a4877){const _0x559a0d=a181_0x1488,_0x2a674c=a181_0xb1949a[_0x559a0d(0x16b)](process['cwd'](),_0x5f20f1),_0x361edf=a181_0xb1949a[_0x559a0d(0x160)](_0x2a674c,_0x559a0d(0x19c));try{console[_0x559a0d(0x152)](_0x559a0d(0x173));const _0x538718=getRabetbaseCliPackageRoot(),_0x3de683=a181_0xb1949a[_0x559a0d(0x160)](_0x538718,_0x559a0d(0x19c));let _0x44155f=_0x559a0d(0x187);try{const _0x233b48=JSON['parse'](a181_0x494a6f['readFileSync'](_0x3de683,_0x559a0d(0x156)));_0x44155f=_0x233b48[_0x559a0d(0x1bb)]||_0x559a0d(0x187);}catch{}const _0x172fa8=a181_0x494a6f[_0x559a0d(0x163)](_0x361edf,_0x559a0d(0x156)),_0xa7a6d6=JSON['parse'](_0x172fa8);_0xa7a6d6['name']=_0x5a4877,_0xa7a6d6[_0x559a0d(0x1bd)]=_0x5a4877+'\x20Generated\x20by\x20rabetbase\x20cli\x20'+_0x44155f,a181_0x494a6f[_0x559a0d(0x197)](_0x361edf,JSON[_0x559a0d(0x1aa)](_0xa7a6d6,null,0x2)+'\x0a','utf8'),console['log'](_0x559a0d(0x176)+_0x5a4877),logger[_0x559a0d(0x1a3)](_0x559a0d(0x17b),'Updating\x20package.json\x20name');}catch(_0xb4d396){logger['error'](_0x559a0d(0x17b),_0x559a0d(0x14c));throw _0xb4d396;}}async function configureAppCode(_0x2a3527,_0x124922,_0x2385df,_0x466cae){const _0x27d9f2=a181_0x1488,_0x3c3ff3=a181_0xb1949a[_0x27d9f2(0x16b)](process[_0x27d9f2(0x1b7)](),_0x2a3527),_0x4d17a3=a181_0xb1949a[_0x27d9f2(0x160)](_0x3c3ff3,NEW_CONFIG_NAME);try{_0x2385df?console[_0x27d9f2(0x152)](_0x27d9f2(0x170)+_0x124922+':\x20'+_0x2385df):console[_0x27d9f2(0x152)](_0x27d9f2(0x191)+_0x124922);const _0xb92a8=getRabetbaseCliPackageRoot(),_0x30a979=a181_0xb1949a['join'](_0xb92a8,_0x27d9f2(0x19c));let _0xc576ce=_0x27d9f2(0x187);try{const _0x57eac0=JSON[_0x27d9f2(0x194)](a181_0x494a6f[_0x27d9f2(0x163)](_0x30a979,_0x27d9f2(0x156)));_0xc576ce=_0x57eac0[_0x27d9f2(0x1bb)]||_0x27d9f2(0x187);}catch{}const {globalConfig:_0x335b3e}=loadRawConfigLayers(),_0x4faf7c=typeof _0x335b3e[_0x27d9f2(0x1b6)]===_0x27d9f2(0x166)?_0x335b3e[_0x27d9f2(0x1b6)]:undefined,_0x1bfd6e={};for(const _0x449aa9 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x335b3e[_0x449aa9]!=null)_0x1bfd6e[_0x449aa9]=_0x335b3e[_0x449aa9];}const _0x1b117c=buildCanonicalProjectConfig(_0x1bfd6e,{'appCodes':_0x2385df?[_0x2385df]:[],'env':_0x466cae||_0x4faf7c||_0x27d9f2(0x17f),'metadata':{'createdAt':new Date()[_0x27d9f2(0x180)](),'version':_0xc576ce}});writeConfigFile(_0x4d17a3,_0x1b117c),await generateSdkConfigFile(a181_0xb1949a[_0x27d9f2(0x160)](_0x3c3ff3,DEFAULT_API_DIR),getSdkClientRoutingConfig()),writeProjectDomainRoutingManifest(_0x3c3ff3),_0x2385df?console['log'](_0x27d9f2(0x154)+Object['keys'](_0x1b117c['apps']||{})['join'](',\x20')+_0x27d9f2(0x1b5)):console['log'](_0x27d9f2(0x1a2)+CLI_BIN_NAME+_0x27d9f2(0x1c0)),logger[_0x27d9f2(0x1a3)](_0x27d9f2(0x17b),_0x27d9f2(0x18e)+_0x2385df);}catch(_0x2a11cc){logger[_0x27d9f2(0x16d)](_0x27d9f2(0x17b),_0x27d9f2(0x19b));throw _0x2a11cc;}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a169_0x183167=a169_0x1385;(function(_0x4ac5c4,_0x44871b){const _0x54dee0=a169_0x1385,_0x2362d5=_0x4ac5c4();while(!![]){try{const _0xce6130=parseInt(_0x54dee0(0x143))/0x1*(-parseInt(_0x54dee0(0x153))/0x2)+-parseInt(_0x54dee0(0xf8))/0x3*(parseInt(_0x54dee0(0x12a))/0x4)+-parseInt(_0x54dee0(0x100))/0x5+parseInt(_0x54dee0(0x13d))/0x6*(parseInt(_0x54dee0(0xf7))/0x7)+-parseInt(_0x54dee0(0x168))/0x8*(-parseInt(_0x54dee0(0xfa))/0x9)+-parseInt(_0x54dee0(0x108))/0xa*(-parseInt(_0x54dee0(0x127))/0xb)+parseInt(_0x54dee0(0x12b))/0xc;if(_0xce6130===_0x44871b)break;else _0x2362d5['push'](_0x2362d5['shift']());}catch(_0x1759b5){_0x2362d5['push'](_0x2362d5['shift']());}}}(a169_0x4ae5,0x8456f));import{createHash}from'node:crypto';import a169_0x160309 from'node:fs/promises';import a169_0x35e067 from'node:path';import{PROJECT_TEMPLATE_ASSET_BASE_URL}from'../../../constant/cdn.js';import{extractProjectTemplateArchive}from'../../../commands/project/create/project-template-archive.js';import{getRabetbaseCdnConfig}from'../../../utils/cli-version-policy.js';import{CliErrors}from'../../../errors.js';const TEMPLATE_ID='sub-app-react-demo',ARCHIVE_TIMEOUT_MS=0x3a98,MAX_ARCHIVE_SIZE=0x14*0x400*0x400;function nonEmptyString(_0xe5f74e){const _0x2a8e9f=a169_0x1385;return typeof _0xe5f74e===_0x2a8e9f(0x11e)&&_0xe5f74e[_0x2a8e9f(0x134)]()?_0xe5f74e['trim']():null;}function parseDescriptor(_0x261620){const _0x42823b=a169_0x1385;if(!_0x261620||typeof _0x261620!==_0x42823b(0xfb))throw new Error('CDN\x20config\x20does\x20not\x20define\x20template\x20\x22'+TEMPLATE_ID+'\x22.');const _0xa6ec35=_0x261620,_0x39335b=nonEmptyString(_0xa6ec35['version']),_0x323e62=nonEmptyString(_0xa6ec35[_0x42823b(0x145)]),_0x3277de=nonEmptyString(_0xa6ec35[_0x42823b(0x10d)])?.[_0x42823b(0x144)](),_0x246c98=_0xa6ec35[_0x42823b(0x157)];if(!_0x39335b||!_0x323e62||_0x323e62!==a169_0x35e067[_0x42823b(0x12c)][_0x42823b(0x101)](_0x323e62)||_0x323e62[_0x42823b(0x137)]('\x5c')||!_0x3277de||!/^sha256:[a-f0-9]{64}$/['test'](_0x3277de)||typeof _0x246c98!==_0x42823b(0x119)||!Number[_0x42823b(0x14d)](_0x246c98)||_0x246c98<=0x0||_0x246c98>MAX_ARCHIVE_SIZE)throw new Error(_0x42823b(0x14b)+TEMPLATE_ID+'\x22.');return{'version':_0x39335b,'name':_0x323e62,'sha256':_0x3277de,'size':_0x246c98};}async function fetchWithTimeout(_0x3cda21,_0x304d31,_0x319308,_0x3cd472){const _0x313679=a169_0x1385,_0x2113c8=new AbortController(),_0x4cf9fc=setTimeout(()=>_0x2113c8[_0x313679(0x150)](),_0x304d31);try{const _0x1d8f19=await fetch(_0x3cda21,{'headers':{'Accept':_0x319308},'signal':_0x2113c8[_0x313679(0x114)]});return await _0x3cd472(_0x1d8f19);}finally{clearTimeout(_0x4cf9fc);}}async function fetchTemplateDescriptor(){const _0x11f0b6=a169_0x1385,_0x31efcf=await getRabetbaseCdnConfig();if(!_0x31efcf)throw new Error('Rabetbase\x20CDN\x20config\x20is\x20unavailable.');return parseDescriptor(_0x31efcf[_0x11f0b6(0x15a)]);}function resolveArchiveUrl(_0x32dd70){const _0x455b74=a169_0x1385,_0x380e97=new URL(PROJECT_TEMPLATE_ASSET_BASE_URL+'/'),_0x524632=new URL(_0x32dd70,_0x380e97);if(_0x524632['protocol']!=='https:'||_0x524632[_0x455b74(0x140)]!==_0x380e97[_0x455b74(0x140)]||!_0x524632[_0x455b74(0x13a)][_0x455b74(0x136)](_0x380e97[_0x455b74(0x13a)]))throw new Error(_0x455b74(0x10a));return _0x524632['href'];}async function readResponseBytes(_0x4ea99e,_0x217cb9){const _0xc9237d=a169_0x1385;if(!_0x4ea99e[_0xc9237d(0x109)]){const _0x2208e3=Buffer['from'](await _0x4ea99e['arrayBuffer']());if(_0x2208e3['length']>_0x217cb9)throw new Error('CDN\x20project\x20template\x20exceeds\x20its\x20declared\x20download\x20size.');return _0x2208e3;}const _0x4d96de=_0x4ea99e[_0xc9237d(0x109)][_0xc9237d(0x121)](),_0x1a272a=[];let _0x11713a=0x0;try{while(!![]){const {done:_0x3cffcd,value:_0x3719e6}=await _0x4d96de['read']();if(_0x3cffcd)break;_0x11713a+=_0x3719e6['byteLength'];if(_0x11713a>_0x217cb9){await _0x4d96de['cancel']();throw new Error(_0xc9237d(0x12f));}_0x1a272a['push'](Buffer[_0xc9237d(0x11a)](_0x3719e6));}}finally{_0x4d96de[_0xc9237d(0x138)]();}return Buffer[_0xc9237d(0x113)](_0x1a272a,_0x11713a);}function a169_0x1385(_0x1b4c5b,_0xac4142){_0x1b4c5b=_0x1b4c5b-0xf6;const _0x4ae506=a169_0x4ae5();let _0x138514=_0x4ae506[_0x1b4c5b];return _0x138514;}async function downloadArchive(_0xbca845,_0x24a129,_0x2aea64){const _0x498661=a169_0x1385,_0x3d2583=await fetchWithTimeout(resolveArchiveUrl(_0xbca845[_0x498661(0x145)]),ARCHIVE_TIMEOUT_MS,_0x498661(0x130),async _0x523d46=>{const _0x41ba83=_0x498661;if(!_0x523d46['ok'])throw new Error(_0x41ba83(0x12d)+_0x523d46[_0x41ba83(0x11c)]+'.');const _0x166b81=Number(_0x523d46[_0x41ba83(0x160)][_0x41ba83(0xfc)](_0x41ba83(0x123)));if(Number['isFinite'](_0x166b81)&&_0x166b81>MAX_ARCHIVE_SIZE)throw new Error('CDN\x20project\x20template\x20exceeds\x20the\x2020\x20MB\x20download\x20limit.');return readResponseBytes(_0x523d46,_0xbca845['size']);});if(_0x3d2583[_0x498661(0x158)]!==_0xbca845[_0x498661(0x157)])throw new Error(_0x498661(0xf9)+_0xbca845[_0x498661(0x157)]+_0x498661(0x146)+_0x3d2583['length']+'.');_0x2aea64?.(_0x498661(0x12e));const _0x1d7ec2=_0x498661(0x165)+createHash('sha256')[_0x498661(0x15f)](_0x3d2583)[_0x498661(0xfd)](_0x498661(0x129));if(_0x1d7ec2!==_0xbca845[_0x498661(0x10d)])throw new Error('CDN\x20project\x20template\x20checksum\x20verification\x20failed.');await a169_0x160309[_0x498661(0x116)](_0x24a129,_0x3d2583,{'flag':'wx'});}async function assertTemplateRoot(_0x45c220){const _0xe1f416=a169_0x1385,_0x232a89=a169_0x35e067[_0xe1f416(0x15b)](_0x45c220,_0xe1f416(0x117)),_0x28df9e=JSON['parse'](await a169_0x160309[_0xe1f416(0x126)](_0x232a89,_0xe1f416(0x10f)));if(!_0x28df9e||typeof _0x28df9e!==_0xe1f416(0xfb))throw new Error(_0xe1f416(0x13c));}const LOCAL_FORBIDDEN_NAMES=new Set(['.DS_Store','.codegraph',a169_0x183167(0x149),'.idea',a169_0x183167(0x152),a169_0x183167(0x122),a169_0x183167(0x154),a169_0x183167(0x147),a169_0x183167(0x10c),a169_0x183167(0x105)]);function isForbiddenTemplateEntry(_0x2ef3c3){const _0x570d09=a169_0x183167;if(LOCAL_FORBIDDEN_NAMES[_0x570d09(0x131)](_0x2ef3c3))return!![];return _0x2ef3c3===_0x570d09(0x151)||_0x2ef3c3[_0x570d09(0x136)](_0x570d09(0x163))&&_0x2ef3c3!==_0x570d09(0x142);}function containsPath(_0x481b47,_0x37f4f7){const _0x524324=a169_0x183167,_0x2bbe11=a169_0x35e067['relative'](_0x481b47,_0x37f4f7);return _0x2bbe11===''||!_0x2bbe11[_0x524324(0x136)]('..'+a169_0x35e067[_0x524324(0x148)])&&_0x2bbe11!=='..'&&!a169_0x35e067[_0x524324(0x11f)](_0x2bbe11);}async function copyLocalTemplateDirectory(_0x5700a1,_0x42aec6){const _0x483acd=a169_0x183167;await a169_0x160309[_0x483acd(0x159)](_0x42aec6,{'recursive':!![]});for(const _0x572f51 of await a169_0x160309[_0x483acd(0xff)](_0x5700a1,{'withFileTypes':!![]})){const _0x38bbfe=a169_0x35e067[_0x483acd(0x15b)](_0x5700a1,_0x572f51['name']),_0x342cb4=a169_0x35e067[_0x483acd(0x15b)](_0x42aec6,_0x572f51[_0x483acd(0x145)]);if(isForbiddenTemplateEntry(_0x572f51[_0x483acd(0x145)]))throw new Error(_0x483acd(0x155)+_0x38bbfe);const _0x1fae9f=await a169_0x160309[_0x483acd(0x128)](_0x38bbfe);if(_0x1fae9f[_0x483acd(0x14f)]())throw new Error(_0x483acd(0x15c)+_0x38bbfe);if(_0x1fae9f[_0x483acd(0x167)]()){await copyLocalTemplateDirectory(_0x38bbfe,_0x342cb4);continue;}if(!_0x1fae9f[_0x483acd(0x120)]())continue;await a169_0x160309[_0x483acd(0xf6)](_0x38bbfe,_0x342cb4),await a169_0x160309[_0x483acd(0x107)](_0x342cb4,_0x1fae9f[_0x483acd(0x110)]&0x1ff);}}function a169_0x4ae5(){const _0x1b459e=['Local\x20project\x20template\x20contains\x20a\x20local-only\x20entry:\x20','resolve','size','length','mkdir','projectTemplate','join','Local\x20project\x20template\x20must\x20not\x20contain\x20symlinks:\x20','Local\x20template\x20source\x20does\x20not\x20exist:\x20','template.zip','update','headers','extracting','Pass\x20a\x20directory\x20containing\x20the\x20template\x20source\x20package.json.','.env.','Choose\x20an\x20output\x20directory\x20outside\x20the\x20template\x20source.','sha256:','realpath','isDirectory','104QGisNs','copyFile','581dzhLlk','201kviOtj','CDN\x20project\x20template\x20size\x20mismatch:\x20expected\x20','376227KkXHti','object','get','digest','rename','readdir','1757380cEgvVI','basename','Choose\x20a\x20different\x20project\x20name\x20or\x20remove\x20the\x20directory\x20first.','resolving','validation','node_modules','Local\x20template\x20source\x20and\x20project\x20output\x20must\x20not\x20overlap.','chmod','10qNHHbG','body','CDN\x20project\x20template\x20URL\x20must\x20use\x20the\x20trusted\x20HTTPS\x20origin.','Unable\x20to\x20claim\x20the\x20project\x20directory.','dist','sha256','code','utf8','mode','message','Project\x20directory\x20already\x20exists:\x20','concat','signal','EEXIST','writeFile','package.json','local','number','from','Check\x20the\x20source\x20directory\x20and\x20retry.','status','parse','string','isAbsolute','isFile','getReader','.lovrabet.log','content-length','.rabetbase-create-','Check\x20your\x20network\x20and\x20retry.\x20Details:\x20','readFile','10555457oqTiyY','lstat','hex','33164NvHRow','816624bBNxqD','posix','CDN\x20project\x20template\x20request\x20failed\x20with\x20HTTP\x20','verifying','CDN\x20project\x20template\x20exceeds\x20its\x20declared\x20download\x20size.','application/zip','has','Use\x20a\x20different\x20project\x20name.','Invalid\x20local\x20template\x20source:\x20','trim','ENOENT','startsWith','includes','releaseLock','cdn','pathname','project','Project\x20template\x20package.json\x20is\x20invalid.','1962QsndmT','version','dirname','origin','Local\x20template\x20source\x20is\x20not\x20a\x20directory:\x20','.env.example','1Croult','toLowerCase','name',',\x20received\x20','.rabetbase.json','sep','.git','copying','CDN\x20config\x20contains\x20an\x20invalid\x20descriptor\x20for\x20\x22','ino','isSafeInteger','dev','isSymbolicLink','abort','.env','.lovrabet.json','298366LgePsb','.rabetbase'];a169_0x4ae5=function(){return _0x1b459e;};return a169_0x4ae5();}async function readTemplateVersion(_0x56958b){const _0x4ebcff=a169_0x183167,_0x3c7f6f=JSON[_0x4ebcff(0x11d)](await a169_0x160309[_0x4ebcff(0x126)](a169_0x35e067[_0x4ebcff(0x15b)](_0x56958b,_0x4ebcff(0x117)),_0x4ebcff(0x10f)));return nonEmptyString(_0x3c7f6f[_0x4ebcff(0x13e)])||_0x4ebcff(0x118);}async function readDirectoryIdentity(_0x3f5c0b){const _0x21e52d=a169_0x183167;try{const _0x5ed7b8=await a169_0x160309['lstat'](_0x3f5c0b);if(!_0x5ed7b8[_0x21e52d(0x167)]())return null;return{'dev':_0x5ed7b8[_0x21e52d(0x14e)],'ino':_0x5ed7b8[_0x21e52d(0x14c)]};}catch{return null;}}async function commitStagedProject(_0x235fb1,_0x465fe0){const _0x2207c4=a169_0x183167;await a169_0x160309[_0x2207c4(0x159)](_0x465fe0);const _0x1b6b26=await readDirectoryIdentity(_0x465fe0);if(!_0x1b6b26)throw new Error(_0x2207c4(0x10b));try{for(const _0x57c271 of await a169_0x160309[_0x2207c4(0xff)](_0x235fb1)){await a169_0x160309[_0x2207c4(0xfe)](a169_0x35e067[_0x2207c4(0x15b)](_0x235fb1,_0x57c271),a169_0x35e067[_0x2207c4(0x15b)](_0x465fe0,_0x57c271));}}catch(_0x10d7b5){const _0xed5bc3=await readDirectoryIdentity(_0x465fe0);_0xed5bc3?.[_0x2207c4(0x14e)]===_0x1b6b26[_0x2207c4(0x14e)]&&_0xed5bc3['ino']===_0x1b6b26['ino']&&await a169_0x160309['rm'](_0x465fe0,{'recursive':!![],'force':!![]});throw _0x10d7b5;}}export async function materializeProjectTemplate(_0x27eba9,_0x2b2572){const _0x53c0d1=a169_0x183167,_0x492658=a169_0x35e067[_0x53c0d1(0x156)](_0x27eba9),_0x174b6d=a169_0x35e067[_0x53c0d1(0x13f)](_0x492658);try{await a169_0x160309[_0x53c0d1(0x128)](_0x492658);throw new Error('Project\x20directory\x20already\x20exists:\x20'+_0x492658);}catch(_0x6a6239){if(_0x6a6239[_0x53c0d1(0x10e)]!==_0x53c0d1(0x135))throw _0x6a6239;}const _0x19d0bf=await a169_0x160309['mkdtemp'](a169_0x35e067['join'](_0x174b6d,_0x53c0d1(0x124))),_0x505289=a169_0x35e067[_0x53c0d1(0x15b)](_0x19d0bf,_0x53c0d1(0x13b)),_0x55702e=a169_0x35e067['join'](_0x19d0bf,_0x53c0d1(0x15e));try{try{_0x2b2572?.(_0x53c0d1(0x103));const _0x5b8f89=await fetchTemplateDescriptor();return _0x2b2572?.('downloading'),await downloadArchive(_0x5b8f89,_0x55702e,_0x2b2572),_0x2b2572?.(_0x53c0d1(0x161)),await extractProjectTemplateArchive(_0x55702e,_0x505289),await assertTemplateRoot(_0x505289),await commitStagedProject(_0x505289,_0x492658),{'source':_0x53c0d1(0x139),'version':_0x5b8f89[_0x53c0d1(0x13e)]};}catch(_0x4852db){if(_0x4852db['code']===_0x53c0d1(0x115))throw CliErrors[_0x53c0d1(0x104)](_0x53c0d1(0x112)+_0x492658,_0x53c0d1(0x132));const _0xb03b30=_0x4852db instanceof Error?_0x4852db[_0x53c0d1(0x111)]:String(_0x4852db);throw CliErrors[_0x53c0d1(0x104)]('Unable\x20to\x20download\x20a\x20valid\x20project\x20template\x20from\x20CDN.',_0x53c0d1(0x125)+_0xb03b30);}}finally{await a169_0x160309['rm'](_0x19d0bf,{'recursive':!![],'force':!![]});}}export async function materializeLocalProjectTemplate(_0x111f97,_0x19d9d6,_0x2456d6){const _0x3e16ec=a169_0x183167;let _0x3ef340;try{_0x3ef340=await a169_0x160309[_0x3e16ec(0x166)](a169_0x35e067[_0x3e16ec(0x156)](_0x111f97));}catch{throw CliErrors[_0x3e16ec(0x104)](_0x3e16ec(0x15d)+a169_0x35e067['resolve'](_0x111f97),_0x3e16ec(0x162));}const _0x18d16e=await a169_0x160309[_0x3e16ec(0x128)](_0x3ef340);if(!_0x18d16e[_0x3e16ec(0x167)]())throw CliErrors[_0x3e16ec(0x104)](_0x3e16ec(0x141)+_0x3ef340);const _0x2ee6c5=a169_0x35e067[_0x3e16ec(0x156)](_0x19d9d6),_0x410cc6=await a169_0x160309[_0x3e16ec(0x166)](a169_0x35e067[_0x3e16ec(0x13f)](_0x2ee6c5)),_0x2c39b5=a169_0x35e067[_0x3e16ec(0x15b)](_0x410cc6,a169_0x35e067[_0x3e16ec(0x101)](_0x2ee6c5));if(containsPath(_0x3ef340,_0x2c39b5)||containsPath(_0x2c39b5,_0x3ef340))throw CliErrors[_0x3e16ec(0x104)](_0x3e16ec(0x106),_0x3e16ec(0x164));try{await a169_0x160309['lstat'](_0x2c39b5);throw CliErrors[_0x3e16ec(0x104)](_0x3e16ec(0x112)+_0x2c39b5,_0x3e16ec(0x102));}catch(_0x5dae8c){if(_0x5dae8c[_0x3e16ec(0x10e)]!==_0x3e16ec(0x135))throw _0x5dae8c;}const _0x3ac2b0=a169_0x35e067[_0x3e16ec(0x13f)](_0x2c39b5);await a169_0x160309['access'](_0x3ac2b0);const _0x494ba9=await a169_0x160309['mkdtemp'](a169_0x35e067['join'](_0x3ac2b0,_0x3e16ec(0x124))),_0x33ca0b=a169_0x35e067['join'](_0x494ba9,_0x3e16ec(0x13b));try{_0x2456d6?.(_0x3e16ec(0x14a)),await copyLocalTemplateDirectory(_0x3ef340,_0x33ca0b),await assertTemplateRoot(_0x33ca0b);const _0xa49df8=await readTemplateVersion(_0x33ca0b);return await commitStagedProject(_0x33ca0b,_0x2c39b5),{'source':_0x3e16ec(0x118),'version':_0xa49df8};}catch(_0x200532){const _0x81ce97=_0x200532 instanceof Error?_0x200532[_0x3e16ec(0x111)]:String(_0x200532);throw CliErrors['validation'](_0x3e16ec(0x133)+_0x81ce97,_0x3e16ec(0x11b));}finally{await a169_0x160309['rm'](_0x494ba9,{'recursive':!![],'force':!![]});}}
|
|
1
|
+
const a182_0x55e557=a182_0x3212;(function(_0x22f9e1,_0x1d1a01){const _0x36cd03=a182_0x3212,_0x22d1e4=_0x22f9e1();while(!![]){try{const _0x1ccf97=-parseInt(_0x36cd03(0x165))/0x1*(parseInt(_0x36cd03(0x175))/0x2)+parseInt(_0x36cd03(0x197))/0x3+-parseInt(_0x36cd03(0x195))/0x4+parseInt(_0x36cd03(0x142))/0x5+parseInt(_0x36cd03(0x19c))/0x6+-parseInt(_0x36cd03(0x160))/0x7*(parseInt(_0x36cd03(0x145))/0x8)+parseInt(_0x36cd03(0x19d))/0x9;if(_0x1ccf97===_0x1d1a01)break;else _0x22d1e4['push'](_0x22d1e4['shift']());}catch(_0x13abba){_0x22d1e4['push'](_0x22d1e4['shift']());}}}(a182_0x4cea,0x79518));import{createHash}from'node:crypto';import a182_0x1996ba from'node:fs/promises';import a182_0x4b327b from'node:path';import{PROJECT_TEMPLATE_ASSET_BASE_URL}from'../../../constant/cdn.js';import{extractProjectTemplateArchive}from'../../../commands/project/create/project-template-archive.js';import{getRabetbaseCdnConfig}from'../../../utils/cli-version-policy.js';import{CliErrors}from'../../../errors.js';const TEMPLATE_ID='sub-app-react-demo',ARCHIVE_TIMEOUT_MS=0x3a98,MAX_ARCHIVE_SIZE=0x14*0x400*0x400;function nonEmptyString(_0x47df0a){const _0x1d55cc=a182_0x3212;return typeof _0x47df0a==='string'&&_0x47df0a[_0x1d55cc(0x13b)]()?_0x47df0a[_0x1d55cc(0x13b)]():null;}function parseDescriptor(_0x52918c){const _0x5d4c04=a182_0x3212;if(!_0x52918c||typeof _0x52918c!==_0x5d4c04(0x139))throw new Error(_0x5d4c04(0x13c)+TEMPLATE_ID+'\x22.');const _0x487699=_0x52918c,_0x199500=nonEmptyString(_0x487699[_0x5d4c04(0x19f)]),_0x5bb01c=nonEmptyString(_0x487699['name']),_0x3180f9=nonEmptyString(_0x487699[_0x5d4c04(0x1aa)])?.[_0x5d4c04(0x1a6)](),_0x23fc61=_0x487699['size'];if(!_0x199500||!_0x5bb01c||_0x5bb01c!==a182_0x4b327b[_0x5d4c04(0x15b)][_0x5d4c04(0x1a0)](_0x5bb01c)||_0x5bb01c[_0x5d4c04(0x194)]('\x5c')||!_0x3180f9||!/^sha256:[a-f0-9]{64}$/[_0x5d4c04(0x181)](_0x3180f9)||typeof _0x23fc61!=='number'||!Number[_0x5d4c04(0x18f)](_0x23fc61)||_0x23fc61<=0x0||_0x23fc61>MAX_ARCHIVE_SIZE)throw new Error('CDN\x20config\x20contains\x20an\x20invalid\x20descriptor\x20for\x20\x22'+TEMPLATE_ID+'\x22.');return{'version':_0x199500,'name':_0x5bb01c,'sha256':_0x3180f9,'size':_0x23fc61};}async function fetchWithTimeout(_0x3dfa88,_0x51483d,_0x40abf4,_0x1cacdf){const _0x2cdb93=a182_0x3212,_0x21eb37=new AbortController(),_0x4042d7=setTimeout(()=>_0x21eb37[_0x2cdb93(0x196)](),_0x51483d);try{const _0x4f0c83=await fetch(_0x3dfa88,{'headers':{'Accept':_0x40abf4},'signal':_0x21eb37['signal']});return await _0x1cacdf(_0x4f0c83);}finally{clearTimeout(_0x4042d7);}}async function fetchTemplateDescriptor(){const _0x261de1=a182_0x3212,_0x47478e=await getRabetbaseCdnConfig();if(!_0x47478e)throw new Error('Rabetbase\x20CDN\x20config\x20is\x20unavailable.');return parseDescriptor(_0x47478e[_0x261de1(0x149)]);}function resolveArchiveUrl(_0x1493b0){const _0x1cdf80=a182_0x3212,_0x437038=new URL(PROJECT_TEMPLATE_ASSET_BASE_URL+'/'),_0x4c5bb4=new URL(_0x1493b0,_0x437038);if(_0x4c5bb4[_0x1cdf80(0x140)]!=='https:'||_0x4c5bb4[_0x1cdf80(0x186)]!==_0x437038[_0x1cdf80(0x186)]||!_0x4c5bb4['pathname'][_0x1cdf80(0x192)](_0x437038[_0x1cdf80(0x178)]))throw new Error(_0x1cdf80(0x146));return _0x4c5bb4[_0x1cdf80(0x13e)];}async function readResponseBytes(_0xb07f76,_0x1eca71){const _0x1319f5=a182_0x3212;if(!_0xb07f76[_0x1319f5(0x14d)]){const _0x117b9f=Buffer['from'](await _0xb07f76[_0x1319f5(0x193)]());if(_0x117b9f[_0x1319f5(0x14b)]>_0x1eca71)throw new Error(_0x1319f5(0x158));return _0x117b9f;}const _0xeb2557=_0xb07f76['body']['getReader'](),_0x52c701=[];let _0x288fb6=0x0;try{while(!![]){const {done:_0x10889a,value:_0xa85c84}=await _0xeb2557[_0x1319f5(0x16a)]();if(_0x10889a)break;_0x288fb6+=_0xa85c84[_0x1319f5(0x151)];if(_0x288fb6>_0x1eca71){await _0xeb2557[_0x1319f5(0x1a9)]();throw new Error(_0x1319f5(0x158));}_0x52c701[_0x1319f5(0x14e)](Buffer[_0x1319f5(0x18a)](_0xa85c84));}}finally{_0xeb2557['releaseLock']();}return Buffer[_0x1319f5(0x190)](_0x52c701,_0x288fb6);}async function downloadArchive(_0x5bfa06,_0x33fabd,_0x36f807){const _0xa7e9e4=a182_0x3212,_0x441de7=await fetchWithTimeout(resolveArchiveUrl(_0x5bfa06[_0xa7e9e4(0x198)]),ARCHIVE_TIMEOUT_MS,_0xa7e9e4(0x152),async _0x191881=>{const _0x3e670f=_0xa7e9e4;if(!_0x191881['ok'])throw new Error(_0x3e670f(0x170)+_0x191881[_0x3e670f(0x180)]+'.');const _0x1d4039=Number(_0x191881['headers'][_0x3e670f(0x176)](_0x3e670f(0x18c)));if(Number[_0x3e670f(0x1a3)](_0x1d4039)&&_0x1d4039>MAX_ARCHIVE_SIZE)throw new Error(_0x3e670f(0x184));return readResponseBytes(_0x191881,_0x5bfa06['size']);});if(_0x441de7['length']!==_0x5bfa06[_0xa7e9e4(0x17e)])throw new Error(_0xa7e9e4(0x14a)+_0x5bfa06['size']+_0xa7e9e4(0x1a5)+_0x441de7['length']+'.');_0x36f807?.(_0xa7e9e4(0x14c));const _0x717973='sha256:'+createHash('sha256')[_0xa7e9e4(0x13f)](_0x441de7)['digest'](_0xa7e9e4(0x199));if(_0x717973!==_0x5bfa06[_0xa7e9e4(0x1aa)])throw new Error(_0xa7e9e4(0x189));await a182_0x1996ba[_0xa7e9e4(0x141)](_0x33fabd,_0x441de7,{'flag':'wx'});}function a182_0x4cea(){const _0x2de85a=['3679716BrNQgr','abort','1749786blqKAD','name','hex','dev','downloading','2784492PjKUAZ','5330241mWxBPD','.codegraph','version','basename','relative','Local\x20template\x20source\x20and\x20project\x20output\x20must\x20not\x20overlap.','isFinite','chmod',',\x20received\x20','toLowerCase','mode','.env.example','cancel','sha256','isFile','ino','object','project','trim','CDN\x20config\x20does\x20not\x20define\x20template\x20\x22','.env','href','update','protocol','writeFile','2333910ZqjATG','isSymbolicLink','.DS_Store','12016RnfBQs','CDN\x20project\x20template\x20URL\x20must\x20use\x20the\x20trusted\x20HTTPS\x20origin.','code','Local\x20template\x20source\x20is\x20not\x20a\x20directory:\x20','projectTemplate','CDN\x20project\x20template\x20size\x20mismatch:\x20expected\x20','length','verifying','body','push','extracting','.lovrabet.log','byteLength','application/zip','Unable\x20to\x20download\x20a\x20valid\x20project\x20template\x20from\x20CDN.','copyFile','has','local','.rabetbase.json','CDN\x20project\x20template\x20exceeds\x20its\x20declared\x20download\x20size.','.lovrabet.json','resolve','posix','readFile','mkdir','EEXIST','lstat','1302KcgsHC','.idea','.env.','ENOENT','dirname','410154TBLmtT','sep','utf8','node_modules','Check\x20your\x20network\x20and\x20retry.\x20Details:\x20','read','cdn','Project\x20template\x20package.json\x20is\x20invalid.','Project\x20directory\x20already\x20exists:\x20','Check\x20the\x20source\x20directory\x20and\x20retry.','Unable\x20to\x20claim\x20the\x20project\x20directory.','CDN\x20project\x20template\x20request\x20failed\x20with\x20HTTP\x20','Local\x20project\x20template\x20must\x20not\x20contain\x20symlinks:\x20','Use\x20a\x20different\x20project\x20name.','Choose\x20a\x20different\x20project\x20name\x20or\x20remove\x20the\x20directory\x20first.','Invalid\x20local\x20template\x20source:\x20','2urECXG','get','.rabetbase','pathname','isDirectory','join','template.zip','realpath','.rabetbase-create-','size','dist','status','test','parse','message','CDN\x20project\x20template\x20exceeds\x20the\x2020\x20MB\x20download\x20limit.','Choose\x20an\x20output\x20directory\x20outside\x20the\x20template\x20source.','origin','validation','readdir','CDN\x20project\x20template\x20checksum\x20verification\x20failed.','from','Local\x20template\x20source\x20does\x20not\x20exist:\x20','content-length','copying','resolving','isSafeInteger','concat','Local\x20project\x20template\x20contains\x20a\x20local-only\x20entry:\x20','startsWith','arrayBuffer','includes'];a182_0x4cea=function(){return _0x2de85a;};return a182_0x4cea();}async function assertTemplateRoot(_0xe83c39){const _0x1072e0=a182_0x3212,_0x470be5=a182_0x4b327b[_0x1072e0(0x17a)](_0xe83c39,'package.json'),_0xe113d6=JSON[_0x1072e0(0x182)](await a182_0x1996ba[_0x1072e0(0x15c)](_0x470be5,_0x1072e0(0x167)));if(!_0xe113d6||typeof _0xe113d6!=='object')throw new Error(_0x1072e0(0x16c));}const LOCAL_FORBIDDEN_NAMES=new Set([a182_0x55e557(0x144),a182_0x55e557(0x19e),'.git',a182_0x55e557(0x161),a182_0x55e557(0x159),a182_0x55e557(0x150),a182_0x55e557(0x177),a182_0x55e557(0x157),a182_0x55e557(0x17f),a182_0x55e557(0x168)]);function isForbiddenTemplateEntry(_0x53377f){const _0x5b7926=a182_0x55e557;if(LOCAL_FORBIDDEN_NAMES[_0x5b7926(0x155)](_0x53377f))return!![];return _0x53377f===_0x5b7926(0x13d)||_0x53377f[_0x5b7926(0x192)](_0x5b7926(0x162))&&_0x53377f!==_0x5b7926(0x1a8);}function containsPath(_0x590fb2,_0xd9cf7a){const _0x3cb04b=a182_0x55e557,_0x3ee1d6=a182_0x4b327b[_0x3cb04b(0x1a1)](_0x590fb2,_0xd9cf7a);return _0x3ee1d6===''||!_0x3ee1d6['startsWith']('..'+a182_0x4b327b[_0x3cb04b(0x166)])&&_0x3ee1d6!=='..'&&!a182_0x4b327b['isAbsolute'](_0x3ee1d6);}function a182_0x3212(_0x1c493c,_0x5d1867){_0x1c493c=_0x1c493c-0x137;const _0x4cea4a=a182_0x4cea();let _0x32122f=_0x4cea4a[_0x1c493c];return _0x32122f;}async function copyLocalTemplateDirectory(_0x4851ba,_0x4d24cd){const _0x40f552=a182_0x55e557;await a182_0x1996ba[_0x40f552(0x15d)](_0x4d24cd,{'recursive':!![]});for(const _0x2c4ae4 of await a182_0x1996ba[_0x40f552(0x188)](_0x4851ba,{'withFileTypes':!![]})){const _0x5e3575=a182_0x4b327b[_0x40f552(0x17a)](_0x4851ba,_0x2c4ae4['name']),_0x3a859d=a182_0x4b327b[_0x40f552(0x17a)](_0x4d24cd,_0x2c4ae4[_0x40f552(0x198)]);if(isForbiddenTemplateEntry(_0x2c4ae4[_0x40f552(0x198)]))throw new Error(_0x40f552(0x191)+_0x5e3575);const _0x541eb5=await a182_0x1996ba[_0x40f552(0x15f)](_0x5e3575);if(_0x541eb5[_0x40f552(0x143)]())throw new Error(_0x40f552(0x171)+_0x5e3575);if(_0x541eb5[_0x40f552(0x179)]()){await copyLocalTemplateDirectory(_0x5e3575,_0x3a859d);continue;}if(!_0x541eb5[_0x40f552(0x137)]())continue;await a182_0x1996ba[_0x40f552(0x154)](_0x5e3575,_0x3a859d),await a182_0x1996ba[_0x40f552(0x1a4)](_0x3a859d,_0x541eb5[_0x40f552(0x1a7)]&0x1ff);}}async function readTemplateVersion(_0x2e48ee){const _0x5bbbb4=a182_0x55e557,_0x38144b=JSON[_0x5bbbb4(0x182)](await a182_0x1996ba[_0x5bbbb4(0x15c)](a182_0x4b327b[_0x5bbbb4(0x17a)](_0x2e48ee,'package.json'),_0x5bbbb4(0x167)));return nonEmptyString(_0x38144b[_0x5bbbb4(0x19f)])||_0x5bbbb4(0x156);}async function readDirectoryIdentity(_0x2f0930){const _0x593336=a182_0x55e557;try{const _0x471ea6=await a182_0x1996ba[_0x593336(0x15f)](_0x2f0930);if(!_0x471ea6[_0x593336(0x179)]())return null;return{'dev':_0x471ea6['dev'],'ino':_0x471ea6['ino']};}catch{return null;}}async function commitStagedProject(_0xd31d04,_0x152baa){const _0x58c4d7=a182_0x55e557;await a182_0x1996ba['mkdir'](_0x152baa);const _0xe4ebaf=await readDirectoryIdentity(_0x152baa);if(!_0xe4ebaf)throw new Error(_0x58c4d7(0x16f));try{for(const _0x2f651d of await a182_0x1996ba['readdir'](_0xd31d04)){await a182_0x1996ba['rename'](a182_0x4b327b[_0x58c4d7(0x17a)](_0xd31d04,_0x2f651d),a182_0x4b327b[_0x58c4d7(0x17a)](_0x152baa,_0x2f651d));}}catch(_0x491a2a){const _0x32044a=await readDirectoryIdentity(_0x152baa);_0x32044a?.[_0x58c4d7(0x19a)]===_0xe4ebaf[_0x58c4d7(0x19a)]&&_0x32044a['ino']===_0xe4ebaf[_0x58c4d7(0x138)]&&await a182_0x1996ba['rm'](_0x152baa,{'recursive':!![],'force':!![]});throw _0x491a2a;}}export async function materializeProjectTemplate(_0x3b49ef,_0x30a9d4){const _0x3a6262=a182_0x55e557,_0x55dccd=a182_0x4b327b['resolve'](_0x3b49ef),_0x23eeb7=a182_0x4b327b[_0x3a6262(0x164)](_0x55dccd);try{await a182_0x1996ba[_0x3a6262(0x15f)](_0x55dccd);throw new Error(_0x3a6262(0x16d)+_0x55dccd);}catch(_0x2e03f8){if(_0x2e03f8[_0x3a6262(0x147)]!==_0x3a6262(0x163))throw _0x2e03f8;}const _0x5e8c67=await a182_0x1996ba['mkdtemp'](a182_0x4b327b[_0x3a6262(0x17a)](_0x23eeb7,'.rabetbase-create-')),_0x4adafd=a182_0x4b327b['join'](_0x5e8c67,_0x3a6262(0x13a)),_0x382bec=a182_0x4b327b[_0x3a6262(0x17a)](_0x5e8c67,_0x3a6262(0x17b));try{try{_0x30a9d4?.(_0x3a6262(0x18e));const _0x7461fa=await fetchTemplateDescriptor();return _0x30a9d4?.(_0x3a6262(0x19b)),await downloadArchive(_0x7461fa,_0x382bec,_0x30a9d4),_0x30a9d4?.(_0x3a6262(0x14f)),await extractProjectTemplateArchive(_0x382bec,_0x4adafd),await assertTemplateRoot(_0x4adafd),await commitStagedProject(_0x4adafd,_0x55dccd),{'source':_0x3a6262(0x16b),'version':_0x7461fa[_0x3a6262(0x19f)]};}catch(_0x335b24){if(_0x335b24[_0x3a6262(0x147)]===_0x3a6262(0x15e))throw CliErrors[_0x3a6262(0x187)]('Project\x20directory\x20already\x20exists:\x20'+_0x55dccd,_0x3a6262(0x172));const _0x5a92cc=_0x335b24 instanceof Error?_0x335b24[_0x3a6262(0x183)]:String(_0x335b24);throw CliErrors[_0x3a6262(0x187)](_0x3a6262(0x153),_0x3a6262(0x169)+_0x5a92cc);}}finally{await a182_0x1996ba['rm'](_0x5e8c67,{'recursive':!![],'force':!![]});}}export async function materializeLocalProjectTemplate(_0x4c19b0,_0x1e4d63,_0x448441){const _0x152255=a182_0x55e557;let _0x17c521;try{_0x17c521=await a182_0x1996ba[_0x152255(0x17c)](a182_0x4b327b[_0x152255(0x15a)](_0x4c19b0));}catch{throw CliErrors['validation'](_0x152255(0x18b)+a182_0x4b327b[_0x152255(0x15a)](_0x4c19b0),'Pass\x20a\x20directory\x20containing\x20the\x20template\x20source\x20package.json.');}const _0x2ae96f=await a182_0x1996ba['lstat'](_0x17c521);if(!_0x2ae96f[_0x152255(0x179)]())throw CliErrors['validation'](_0x152255(0x148)+_0x17c521);const _0x5c71a3=a182_0x4b327b[_0x152255(0x15a)](_0x1e4d63),_0x1fa002=await a182_0x1996ba['realpath'](a182_0x4b327b[_0x152255(0x164)](_0x5c71a3)),_0x2a0bf2=a182_0x4b327b[_0x152255(0x17a)](_0x1fa002,a182_0x4b327b[_0x152255(0x1a0)](_0x5c71a3));if(containsPath(_0x17c521,_0x2a0bf2)||containsPath(_0x2a0bf2,_0x17c521))throw CliErrors[_0x152255(0x187)](_0x152255(0x1a2),_0x152255(0x185));try{await a182_0x1996ba[_0x152255(0x15f)](_0x2a0bf2);throw CliErrors[_0x152255(0x187)]('Project\x20directory\x20already\x20exists:\x20'+_0x2a0bf2,_0x152255(0x173));}catch(_0x47203a){if(_0x47203a['code']!==_0x152255(0x163))throw _0x47203a;}const _0x22f51a=a182_0x4b327b[_0x152255(0x164)](_0x2a0bf2);await a182_0x1996ba['access'](_0x22f51a);const _0x15ac14=await a182_0x1996ba['mkdtemp'](a182_0x4b327b[_0x152255(0x17a)](_0x22f51a,_0x152255(0x17d))),_0x1c2ae1=a182_0x4b327b[_0x152255(0x17a)](_0x15ac14,'project');try{_0x448441?.(_0x152255(0x18d)),await copyLocalTemplateDirectory(_0x17c521,_0x1c2ae1),await assertTemplateRoot(_0x1c2ae1);const _0x15ed2a=await readTemplateVersion(_0x1c2ae1);return await commitStagedProject(_0x1c2ae1,_0x2a0bf2),{'source':_0x152255(0x156),'version':_0x15ed2a};}catch(_0x570778){const _0x4d8437=_0x570778 instanceof Error?_0x570778[_0x152255(0x183)]:String(_0x570778);throw CliErrors['validation'](_0x152255(0x174)+_0x4d8437,_0x152255(0x16e));}finally{await a182_0x1996ba['rm'](_0x15ac14,{'recursive':!![],'force':!![]});}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x409938,_0x1efaa0){const _0x2fc6fd=a183_0xdf30,_0x2011ea=_0x409938();while(!![]){try{const _0x325814=-parseInt(_0x2fc6fd(0x97))/0x1*(-parseInt(_0x2fc6fd(0x9b))/0x2)+-parseInt(_0x2fc6fd(0x91))/0x3*(parseInt(_0x2fc6fd(0x92))/0x4)+parseInt(_0x2fc6fd(0xa5))/0x5*(-parseInt(_0x2fc6fd(0x98))/0x6)+parseInt(_0x2fc6fd(0x9a))/0x7*(-parseInt(_0x2fc6fd(0x9d))/0x8)+parseInt(_0x2fc6fd(0x9e))/0x9+parseInt(_0x2fc6fd(0x93))/0xa*(-parseInt(_0x2fc6fd(0x94))/0xb)+-parseInt(_0x2fc6fd(0xa4))/0xc*(-parseInt(_0x2fc6fd(0x95))/0xd);if(_0x325814===_0x1efaa0)break;else _0x2011ea['push'](_0x2011ea['shift']());}catch(_0x34d71a){_0x2011ea['push'](_0x2011ea['shift']());}}}(a183_0x3b0c,0xd7da1));function a183_0xdf30(_0x1a89ea,_0x3f1d80){_0x1a89ea=_0x1a89ea-0x91;const _0x3b0c05=a183_0x3b0c();let _0xdf304b=_0x3b0c05[_0x1a89ea];return _0xdf304b;}function a183_0x3b0c(){const _0x3882fd=['10534643MXuOdF','277318jeXceM','validation','8zGVTbn','2795409KZjsJo','\x22\x20is\x20reserved\x20on\x20Windows','Project\x20name\x20cannot\x20exceed\x20','length','Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_','test','2820OjWCOX','5581685njQAii','3wncpTr','4483592HvXYTq','110KOeDPG','79981bYrDPm','227825hhRYjd','\x20characters','2fKnxEq','6xGVvfb','Project\x20name\x20cannot\x20be\x20empty'];a183_0x3b0c=function(){return _0x3882fd;};return a183_0x3b0c();}import{CliErrors}from'../../../errors.js';const PROJECT_NAME_PATTERN=/^[A-Za-z0-9][A-Za-z0-9_-]*$/,WINDOWS_RESERVED_NAME=/^(con|prn|aux|nul|com[1-9]|lpt[1-9])$/i,MAX_PROJECT_NAME_LENGTH=0x64;export function getProjectNameValidationError(_0x5310d3){const _0x638caa=a183_0xdf30,_0x467acc=_0x5310d3['trim']();if(!_0x467acc)return _0x638caa(0x99);if(_0x467acc[_0x638caa(0xa1)]>MAX_PROJECT_NAME_LENGTH)return _0x638caa(0xa0)+MAX_PROJECT_NAME_LENGTH+_0x638caa(0x96);if(!PROJECT_NAME_PATTERN[_0x638caa(0xa3)](_0x467acc))return _0x638caa(0xa2);if(WINDOWS_RESERVED_NAME[_0x638caa(0xa3)](_0x467acc))return'Project\x20name\x20\x22'+_0x467acc+_0x638caa(0x9f);return null;}export function validateProjectName(_0x4a8f9f){const _0x433670=a183_0xdf30,_0x7ea929=_0x4a8f9f['trim'](),_0x1b492b=getProjectNameValidationError(_0x7ea929);if(_0x1b492b)throw CliErrors[_0x433670(0x9c)](_0x1b492b,'Use\x20a\x20portable\x20directory\x20name\x20without\x20path\x20separators.');return _0x7ea929;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1b6571,_0x124557){const _0xe25496=a184_0x2503,_0x593344=_0x1b6571();while(!![]){try{const _0x290bc1=parseInt(_0xe25496(0xa5))/0x1+parseInt(_0xe25496(0xad))/0x2+-parseInt(_0xe25496(0xa2))/0x3+-parseInt(_0xe25496(0x95))/0x4*(-parseInt(_0xe25496(0x8f))/0x5)+-parseInt(_0xe25496(0xae))/0x6+-parseInt(_0xe25496(0xb1))/0x7*(parseInt(_0xe25496(0xb2))/0x8)+-parseInt(_0xe25496(0xba))/0x9*(parseInt(_0xe25496(0x91))/0xa);if(_0x290bc1===_0x124557)break;else _0x593344['push'](_0x593344['shift']());}catch(_0x49631a){_0x593344['push'](_0x593344['shift']());}}}(a184_0x1943,0xec8cd));import{createWriteStream}from'node:fs';import a184_0x10e5fe from'node:fs/promises';import a184_0x2900eb from'node:path';function a184_0x1943(){const _0x5dcd17=['readEntry','Project\x20template\x20ZIP\x20exceeds\x20','Unable\x20to\x20read\x20ZIP\x20entry:\x20','4bLouRh','Duplicate\x20or\x20case-conflicting\x20ZIP\x20entry:\x20','uncompressedSize','sep','isEncrypted','resolve','catch','Unsafe\x20or\x20non-portable\x20ZIP\x20entry\x20path:\x20','startsWith','replace','Unable\x20to\x20open\x20project\x20template\x20archive.','slice','openReadStream','753504HKtcEY','test','\x20entries.','713315XGZomc','Symbolic\x20links\x20are\x20not\x20allowed\x20in\x20project\x20templates:\x20','join','length','fileName','Unsafe\x20absolute\x20ZIP\x20entry\x20path:\x20','has','ZIP\x20entry\x20escapes\x20the\x20destination\x20directory:\x20','2077606uXJEub','3965070PdDOgJ','endsWith','externalFileAttributes','12509kwbEOe','4856yyAtRW','close','get','open','split','en-US','error','mkdir','2008035oecrer','Project\x20template\x20ZIP\x20expands\x20beyond\x20the\x2050\x20MB\x20safety\x20limit.','entry','once','9414290ESAXun','Encrypted\x20ZIP\x20entries\x20are\x20not\x20supported:\x20','30ZlvWmY'];a184_0x1943=function(){return _0x5dcd17;};return a184_0x1943();}function a184_0x2503(_0x34630c,_0x5dd324){_0x34630c=_0x34630c-0x8f;const _0x194363=a184_0x1943();let _0x2503fd=_0x194363[_0x34630c];return _0x2503fd;}import{pipeline}from'node:stream/promises';import a184_0x1e28ed from'yauzl';const MAX_ENTRY_COUNT=0x7d0,MAX_UNCOMPRESSED_SIZE=0x32*0x400*0x400,WINDOWS_RESERVED_NAME=/^(con|prn|aux|nul|com[1-9]|lpt[1-9])(?:\..*)?$/i,WINDOWS_INVALID_CHAR=/[<>:"|?*\x00-\x1f]/;function openZip(_0x64742d){return new Promise((_0x1b0f0e,_0x5ed8d7)=>{const _0x5a66d9=a184_0x2503;a184_0x1e28ed[_0x5a66d9(0xb5)](_0x64742d,{'lazyEntries':!![],'decodeStrings':!![],'strictFileNames':!![],'validateEntrySizes':!![]},(_0x1679c9,_0x1f0705)=>{const _0x494e4f=_0x5a66d9;if(_0x1679c9||!_0x1f0705){_0x5ed8d7(_0x1679c9||new Error(_0x494e4f(0x9f)));return;}_0x1b0f0e(_0x1f0705);});});}function openEntryStream(_0xd5da6,_0x1c2039){return new Promise((_0x3abb63,_0x199a08)=>{const _0x5d249f=a184_0x2503;_0xd5da6[_0x5d249f(0xa1)](_0x1c2039,(_0x5cb06a,_0x2c6f54)=>{const _0x3ddf5f=_0x5d249f;if(_0x5cb06a||!_0x2c6f54){_0x199a08(_0x5cb06a||new Error(_0x3ddf5f(0x94)+_0x1c2039[_0x3ddf5f(0xa9)]));return;}_0x3abb63(_0x2c6f54);});});}function validateEntryPath(_0x419b79){const _0x35bcc9=a184_0x2503,_0x47a6c8=_0x419b79[_0x35bcc9(0x9e)](/\\/g,'/'),_0x50ef1f=_0x47a6c8[_0x35bcc9(0xaf)]('/'),_0x280f86=_0x50ef1f?_0x47a6c8[_0x35bcc9(0xa0)](0x0,-0x1):_0x47a6c8;if(!_0x280f86||_0x47a6c8['startsWith']('/')||/^[A-Za-z]:\//[_0x35bcc9(0xa3)](_0x47a6c8))throw new Error(_0x35bcc9(0xaa)+_0x419b79);const _0x1b47f9=_0x280f86['split']('/');for(const _0x567c56 of _0x1b47f9){if(!_0x567c56||_0x567c56==='.'||_0x567c56==='..'||_0x567c56['endsWith']('.')||_0x567c56['endsWith']('\x20')||WINDOWS_INVALID_CHAR[_0x35bcc9(0xa3)](_0x567c56)||WINDOWS_RESERVED_NAME[_0x35bcc9(0xa3)](_0x567c56))throw new Error(_0x35bcc9(0x9c)+_0x419b79);}return{'relativePath':_0x1b47f9[_0x35bcc9(0xa7)](a184_0x2900eb['sep']),'directory':_0x50ef1f};}function isSymbolicLink(_0xd0da02){const _0x3dd7bb=a184_0x2503,_0x54bc45=_0xd0da02[_0x3dd7bb(0xb0)]>>>0x10&0xffff;return(_0x54bc45&0xf000)===0xa000;}export async function extractProjectTemplateArchive(_0x2ebf51,_0xcbbfd4){const _0x154651=a184_0x2503,_0x412334=await openZip(_0x2ebf51),_0x3810ae=a184_0x2900eb[_0x154651(0x9a)](_0xcbbfd4),_0x24a63d=new Set(),_0x1bdce1=new Map();let _0x5ca02a=0x0,_0x552fcf=0x0;await a184_0x10e5fe[_0x154651(0xb9)](_0x3810ae,{'recursive':!![]}),await new Promise((_0x4e04b4,_0x1951e8)=>{const _0x429921=_0x154651;let _0x1f3f11=![];const _0x167744=_0x5a5426=>{const _0x490536=a184_0x2503;if(_0x1f3f11)return;_0x1f3f11=!![],_0x412334[_0x490536(0xb3)](),_0x1951e8(_0x5a5426 instanceof Error?_0x5a5426:new Error(String(_0x5a5426)));};_0x412334[_0x429921(0xbd)](_0x429921(0xb8),_0x167744),_0x412334[_0x429921(0xbd)]('end',()=>{if(_0x1f3f11)return;_0x1f3f11=!![],_0x4e04b4();}),_0x412334['on'](_0x429921(0xbc),_0x56eb22=>{const _0x20a413=_0x429921;void(async()=>{const _0x4716ca=a184_0x2503;_0x5ca02a+=0x1,_0x552fcf+=_0x56eb22[_0x4716ca(0x97)];if(_0x5ca02a>MAX_ENTRY_COUNT)throw new Error(_0x4716ca(0x93)+MAX_ENTRY_COUNT+_0x4716ca(0xa4));if(_0x552fcf>MAX_UNCOMPRESSED_SIZE)throw new Error(_0x4716ca(0xbb));if(_0x56eb22[_0x4716ca(0x99)]())throw new Error(_0x4716ca(0x90)+_0x56eb22['fileName']);if(isSymbolicLink(_0x56eb22))throw new Error(_0x4716ca(0xa6)+_0x56eb22['fileName']);const {relativePath:_0x4e142a,directory:_0x1b51e1}=validateEntryPath(_0x56eb22[_0x4716ca(0xa9)]),_0x40ae11=_0x4e142a[_0x4716ca(0xb6)](a184_0x2900eb[_0x4716ca(0x98)]);for(let _0x1ec2b9=0x1;_0x1ec2b9<=_0x40ae11[_0x4716ca(0xa8)];_0x1ec2b9+=0x1){const _0x2601df=_0x40ae11['slice'](0x0,_0x1ec2b9)[_0x4716ca(0xa7)](a184_0x2900eb[_0x4716ca(0x98)]),_0x2398d9=_0x2601df['toLocaleLowerCase'](_0x4716ca(0xb7)),_0x93d28a=_0x1bdce1[_0x4716ca(0xb4)](_0x2398d9);if(_0x93d28a&&_0x93d28a!==_0x2601df)throw new Error('Case-conflicting\x20ZIP\x20entry\x20path:\x20'+_0x56eb22[_0x4716ca(0xa9)]);_0x1bdce1['set'](_0x2398d9,_0x2601df);}const _0x2e7db5=_0x4e142a['toLocaleLowerCase'](_0x4716ca(0xb7));if(_0x24a63d[_0x4716ca(0xab)](_0x2e7db5))throw new Error(_0x4716ca(0x96)+_0x56eb22[_0x4716ca(0xa9)]);_0x24a63d['add'](_0x2e7db5);const _0x5e2a8f=a184_0x2900eb[_0x4716ca(0x9a)](_0x3810ae,_0x4e142a);if(_0x5e2a8f!==_0x3810ae&&!_0x5e2a8f[_0x4716ca(0x9d)](''+_0x3810ae+a184_0x2900eb[_0x4716ca(0x98)]))throw new Error(_0x4716ca(0xac)+_0x56eb22[_0x4716ca(0xa9)]);if(_0x1b51e1)await a184_0x10e5fe['mkdir'](_0x5e2a8f,{'recursive':!![]});else{await a184_0x10e5fe[_0x4716ca(0xb9)](a184_0x2900eb['dirname'](_0x5e2a8f),{'recursive':!![]});const _0x5e2b95=await openEntryStream(_0x412334,_0x56eb22);await pipeline(_0x5e2b95,createWriteStream(_0x5e2a8f,{'flags':'wx','mode':0x1a4}));}_0x412334[_0x4716ca(0x92)]();})()[_0x20a413(0x9b)](_0x167744);}),_0x412334['readEntry']();});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x32e58e,_0x125f45){const _0x4c95f1=a185_0x3d68,_0x36dd24=_0x32e58e();while(!![]){try{const _0x332961=parseInt(_0x4c95f1(0xe6))/0x1+parseInt(_0x4c95f1(0xdf))/0x2+parseInt(_0x4c95f1(0xe4))/0x3+parseInt(_0x4c95f1(0xe0))/0x4+-parseInt(_0x4c95f1(0xe2))/0x5*(-parseInt(_0x4c95f1(0xe1))/0x6)+-parseInt(_0x4c95f1(0xde))/0x7+-parseInt(_0x4c95f1(0xe5))/0x8;if(_0x332961===_0x125f45)break;else _0x36dd24['push'](_0x36dd24['shift']());}catch(_0x40742d){_0x36dd24['push'](_0x36dd24['shift']());}}}(a185_0x3dd6,0x70c70));import a185_0x3a63d0 from'node:path';import{fileURLToPath}from'node:url';function a185_0x3dd6(){const _0x31b88b=['258490iVYacU','../../../../','3783836dcncrl','817844lqgxrq','2029900WtzZUt','15348tTjpdS','1680JgDfHw','resolve','866199XBRuJV','10564992GFUGjt'];a185_0x3dd6=function(){return _0x31b88b;};return a185_0x3dd6();}function a185_0x3d68(_0x4c729f,_0x218c4d){_0x4c729f=_0x4c729f-0xde;const _0x3dd6c8=a185_0x3dd6();let _0x3d6888=_0x3dd6c8[_0x4c729f];return _0x3d6888;}const __dirname=a185_0x3a63d0['dirname'](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0xfb5fdc=a185_0x3d68;return a185_0x3a63d0[_0xfb5fdc(0xe3)](__dirname,_0xfb5fdc(0xe7));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x456aa2,_0x4deb63){const _0x413134=a186_0xb068,_0x39b47b=_0x456aa2();while(!![]){try{const _0x895355=parseInt(_0x413134(0x8c))/0x1*(-parseInt(_0x413134(0x87))/0x2)+parseInt(_0x413134(0x8e))/0x3*(parseInt(_0x413134(0x93))/0x4)+-parseInt(_0x413134(0x82))/0x5+parseInt(_0x413134(0x89))/0x6*(parseInt(_0x413134(0x91))/0x7)+parseInt(_0x413134(0x95))/0x8+-parseInt(_0x413134(0x84))/0x9*(-parseInt(_0x413134(0x80))/0xa)+-parseInt(_0x413134(0x83))/0xb;if(_0x895355===_0x4deb63)break;else _0x39b47b['push'](_0x39b47b['shift']());}catch(_0x288a90){_0x39b47b['push'](_0x39b47b['shift']());}}}(a186_0x4b07,0x65a22));import a186_0x33e314 from'node:path';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a186_0x4b07(){const _0x4ac9f8=['Project\x20template\x20created','91sWGiqo','Failed\x20to\x20copy\x20project\x20template','2654524mWdCPr','cwd','3801960wiiFtv','2190ISEbxk','info','3478425rKSUtE','6352137HUrnZz','27765EukHQl','now','source','86VsgjkZ','resolve','208164CdPZiw','Starting\x20project\x20template\x20creation','version','13397wngQHI','copy','3oSXJwd','error'];a186_0x4b07=function(){return _0x4ac9f8;};return a186_0x4b07();}import{logger}from'../../../utils/logger.js';import{materializeLocalProjectTemplate,materializeProjectTemplate}from'../../../commands/project/create/materialize-project-template.js';function a186_0xb068(_0x5d2f52,_0x2c6daa){_0x5d2f52=_0x5d2f52-0x80;const _0x4b07e1=a186_0x4b07();let _0xb06876=_0x4b07e1[_0x5d2f52];return _0xb06876;}export async function copyProjectTemplate(_0x512582,_0x51d06a,_0x2ec727){const _0x12023a=a186_0xb068,_0xdb816f=Date[_0x12023a(0x85)](),_0x1df616=a186_0x33e314[_0x12023a(0x88)](process[_0x12023a(0x94)](),_0x512582);try{logger[_0x12023a(0x81)](_0x12023a(0x8d),_0x12023a(0x8a),{'projectCode':_0x512582});const _0x3a926a=_0x2ec727?await materializeLocalProjectTemplate(_0x2ec727,_0x1df616,_0x51d06a):await materializeProjectTemplate(_0x1df616,_0x51d06a),_0xf4a866=Date['now']()-_0xdb816f;logger['success']('copy',_0x12023a(0x90),_0xf4a866,{'projectCode':_0x512582,'templateSource':_0x3a926a[_0x12023a(0x86)],'templateVersion':_0x3a926a[_0x12023a(0x8b)]});}catch(_0x1d563e){const _0x305ef6=Date[_0x12023a(0x85)]()-_0xdb816f;logger[_0x12023a(0x8f)](_0x12023a(0x8d),_0x12023a(0x92),{'projectCode':_0x512582,'error':_0x1d563e instanceof Error?_0x1d563e['message']:String(_0x1d563e),'duration':_0x305ef6});throw _0x1d563e;}return formatElapsed(_0xdb816f);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3e4f8e,_0x4c9911){const _0x94292b=a187_0x1f24,_0x594ba5=_0x3e4f8e();while(!![]){try{const _0x42dda0=-parseInt(_0x94292b(0x13b))/0x1*(-parseInt(_0x94292b(0x130))/0x2)+parseInt(_0x94292b(0x13d))/0x3+parseInt(_0x94292b(0x137))/0x4+-parseInt(_0x94292b(0x134))/0x5*(-parseInt(_0x94292b(0x132))/0x6)+-parseInt(_0x94292b(0x13e))/0x7*(-parseInt(_0x94292b(0x136))/0x8)+parseInt(_0x94292b(0x12d))/0x9*(parseInt(_0x94292b(0x12b))/0xa)+-parseInt(_0x94292b(0x135))/0xb*(parseInt(_0x94292b(0x139))/0xc);if(_0x42dda0===_0x4c9911)break;else _0x594ba5['push'](_0x594ba5['shift']());}catch(_0x28857b){_0x594ba5['push'](_0x594ba5['shift']());}}}(a187_0x2279,0x39848));import a187_0x18d515 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a187_0x1f24(_0x261826,_0x48326d){_0x261826=_0x261826-0x12a;const _0x2279d1=a187_0x2279();let _0x1f2448=_0x2279d1[_0x261826];return _0x1f2448;}import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x123e90){const _0x3390d7=a187_0x1f24,_0x4321cf=Date[_0x3390d7(0x12c)](),_0x1f0133=a187_0x18d515['resolve'](process[_0x3390d7(0x12e)](),_0x123e90);try{logger[_0x3390d7(0x138)](_0x3390d7(0x13a),_0x3390d7(0x131),{'projectCode':_0x123e90}),await execa(resolveNpmBin(_0x3390d7(0x140)),['prettier',_0x3390d7(0x12f),'.'],{'cwd':_0x1f0133});const _0x49ce4d=Date[_0x3390d7(0x12c)]()-_0x4321cf;logger['success'](_0x3390d7(0x13a),_0x3390d7(0x133),_0x49ce4d,{'projectCode':_0x123e90});}catch(_0x497b0e){const _0x77d2fb=Date['now']()-_0x4321cf;logger[_0x3390d7(0x13c)]('format',_0x3390d7(0x13f),{'projectCode':_0x123e90,'error':_0x497b0e instanceof Error?_0x497b0e[_0x3390d7(0x12a)]:String(_0x497b0e),'duration':_0x77d2fb});throw _0x497b0e;}return formatElapsed(_0x4321cf);}function a187_0x2279(){const _0x1c0e73=['397504aWCMki','Starting\x20code\x20format','20874BoAzkr','Code\x20format\x20completed','485OWyiQW','22wNFgGS','16xmbwoe','1703104tAEbiy','info','6772908tSPJyp','format','1hGFPcD','error','796869tujTsU','290486zCnKaE','Code\x20format\x20failed','npx','message','40TDuQVh','now','121050oOpdUx','cwd','--write'];a187_0x2279=function(){return _0x1c0e73;};return a187_0x2279();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a188_0x5db8(_0x4e7a5f,_0x592f61){_0x4e7a5f=_0x4e7a5f-0xb6;const _0x4c285c=a188_0x4c28();let _0x5db895=_0x4c285c[_0x4e7a5f];return _0x5db895;}function a188_0x4c28(){const _0x46ab40=['4777105dbwaAf','success','install','resolve','Dependency\x20install\x20completed','154HIFCuD','error','317934GdadJV','https://registry.npmmirror.com','info','3759532HuflFB','now','cwd','206177xmHdXh','3260478oiPzdx','12876648lAYoul','--registry','message','1681714cIEhBD','npm'];a188_0x4c28=function(){return _0x46ab40;};return a188_0x4c28();}(function(_0x465cce,_0x36dbe6){const _0x27248b=a188_0x5db8,_0x363b4a=_0x465cce();while(!![]){try{const _0x35d69a=parseInt(_0x27248b(0xb6))/0x1+parseInt(_0x27248b(0xbb))/0x2+-parseInt(_0x27248b(0xb7))/0x3+-parseInt(_0x27248b(0xc7))/0x4+-parseInt(_0x27248b(0xbd))/0x5+parseInt(_0x27248b(0xc4))/0x6*(parseInt(_0x27248b(0xc2))/0x7)+parseInt(_0x27248b(0xb8))/0x8;if(_0x35d69a===_0x36dbe6)break;else _0x363b4a['push'](_0x363b4a['shift']());}catch(_0x193496){_0x363b4a['push'](_0x363b4a['shift']());}}}(a188_0x4c28,0xcd233));import a188_0x493f12 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0xab7fd3){const _0x5b8d76=a188_0x5db8,_0x383818=Date['now'](),_0x34e6db=a188_0x493f12[_0x5b8d76(0xc0)](process[_0x5b8d76(0xc9)](),_0xab7fd3);try{logger[_0x5b8d76(0xc6)](_0x5b8d76(0xbf),'Starting\x20dependency\x20install',{'projectCode':_0xab7fd3,'registry':_0x5b8d76(0xc5)}),await execa(resolveNpmBin(_0x5b8d76(0xbc)),['install',_0x5b8d76(0xb9),_0x5b8d76(0xc5)],{'cwd':_0x34e6db});const _0x3dc3e6=Date[_0x5b8d76(0xc8)]()-_0x383818;logger[_0x5b8d76(0xbe)](_0x5b8d76(0xbf),_0x5b8d76(0xc1),_0x3dc3e6,{'projectCode':_0xab7fd3});}catch(_0x523647){const _0x24a1e7=Date[_0x5b8d76(0xc8)]()-_0x383818;logger[_0x5b8d76(0xc3)](_0x5b8d76(0xbf),'Dependency\x20install\x20failed',{'projectCode':_0xab7fd3,'error':_0x523647 instanceof Error?_0x523647[_0x5b8d76(0xba)]:String(_0x523647),'duration':_0x24a1e7});throw _0x523647;}return formatElapsed(_0x383818);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a189_0x1b3372=a189_0x1d8a;(function(_0x5eaaf4,_0x9b9972){const _0x31143c=a189_0x1d8a,_0x772aa8=_0x5eaaf4();while(!![]){try{const _0x202917=parseInt(_0x31143c(0x15e))/0x1*(parseInt(_0x31143c(0x15f))/0x2)+-parseInt(_0x31143c(0x167))/0x3+-parseInt(_0x31143c(0x158))/0x4*(-parseInt(_0x31143c(0x16a))/0x5)+-parseInt(_0x31143c(0x169))/0x6*(parseInt(_0x31143c(0x162))/0x7)+parseInt(_0x31143c(0x168))/0x8+-parseInt(_0x31143c(0x157))/0x9*(parseInt(_0x31143c(0x15a))/0xa)+parseInt(_0x31143c(0x164))/0xb*(parseInt(_0x31143c(0x166))/0xc);if(_0x202917===_0x9b9972)break;else _0x772aa8['push'](_0x772aa8['shift']());}catch(_0x3d3f97){_0x772aa8['push'](_0x772aa8['shift']());}}}(a189_0x4073,0x4a00d));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a189_0x4073(){const _0x46a4b5=['Synchronize\x20the\x20current\x20project\x27s\x20public\x20Domain\x20routing','validation','read','5190lonPMp','212wJhMfV','domain-routing-sync','Run\x20','161dhPghX','project','586399jQFyZC','No\x20Rabetbase\x20project\x20configuration\x20was\x20found.','36EmLxGN','1545555pgQbBB','4248320mdwQau','28602Btrzwg','1705vEllSQ','\x20workspace\x20init\x20--appcode\x20<code>\x20in\x20the\x20project\x20directory\x20first.','216RzFlgq','2544kTmFdQ','path','220850JzUsRx'];a189_0x4073=function(){return _0x46a4b5;};return a189_0x4073();}import{findProjectRootDirectory,resolveConfigPath}from'../../context/config-loader.js';import{writeProjectDomainRoutingManifest}from'../../config/project-domain-routing.js';function a189_0x1d8a(_0x17ae84,_0x13d820){_0x17ae84=_0x17ae84-0x156;const _0x4073e3=a189_0x4073();let _0x1d8a55=_0x4073e3[_0x17ae84];return _0x1d8a55;}export const projectDomainRoutingSyncDefinition={'service':a189_0x1b3372(0x163),'command':a189_0x1b3372(0x160),'description':a189_0x1b3372(0x15b),'risk':a189_0x1b3372(0x15d),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'flags':[],async 'execute'(){const _0xf15333=a189_0x1b3372,_0x7dcfb1=findProjectRootDirectory();if(!resolveConfigPath(_0x7dcfb1))throw CliErrors[_0xf15333(0x15c)](_0xf15333(0x165),_0xf15333(0x161)+CLI_BIN_NAME+_0xf15333(0x156));const _0x5db1e1=writeProjectDomainRoutingManifest(_0x7dcfb1);return{'ok':!![],'message':'Domain\x20routing\x20synchronized:\x20'+_0x5db1e1[_0xf15333(0x159)],'data':_0x5db1e1};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a190_0x110ff0=a190_0x454d;(function(_0x2e35ce,_0x4a473d){const _0xdafd77=a190_0x454d,_0x35ab7d=_0x2e35ce();while(!![]){try{const _0x5978d6=parseInt(_0xdafd77(0x18c))/0x1+parseInt(_0xdafd77(0x166))/0x2+parseInt(_0xdafd77(0x182))/0x3*(parseInt(_0xdafd77(0x172))/0x4)+-parseInt(_0xdafd77(0x16b))/0x5*(-parseInt(_0xdafd77(0x184))/0x6)+parseInt(_0xdafd77(0x189))/0x7*(parseInt(_0xdafd77(0x17f))/0x8)+parseInt(_0xdafd77(0x16f))/0x9+parseInt(_0xdafd77(0x174))/0xa*(-parseInt(_0xdafd77(0x18e))/0xb);if(_0x5978d6===_0x4a473d)break;else _0x35ab7d['push'](_0x35ab7d['shift']());}catch(_0xab9e04){_0x35ab7d['push'](_0x35ab7d['shift']());}}}(a190_0x4a68,0xaf2e3));import{CliErrors}from'../../errors.js';function a190_0x4a68(){const _0x1a05f3=['7137027LVdOBS','yes','--current-dir\x20cannot\x20be\x20combined\x20with\x20a\x20project\x20name.','1268ZnqtAE','Skip\x20confirmation\x20prompt','40419550ZUKNyW','name','project-name','trim','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','cookie','upgrade','nonInteractive','../../commands/project/create/main.js','str','Prepared\x20local\x20project\x20template\x20directory','12400TdhhpX','Target\x20environment','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','7143iMrkje','string','5112aNIAel','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]\x20from\x20the\x20empty\x20target\x20directory.','bool','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]\x20or\x20','current-dir','861KOfZZH','Project\x20name','appcode','1130674fFHXFj','create','11DxUXGr','env','write','1938756yVXnxp','project','Initialize\x20the\x20current\x20empty\x20directory\x20instead\x20of\x20creating\x20a\x20child\x20directory','Create\x20a\x20new\x20project','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]','5405xGnZMw','template-source','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','boolean'];a190_0x4a68=function(){return _0x1a05f3;};return a190_0x4a68();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{upgradeApp}from'../../commands/project/upgrade.js';import{projectDomainRoutingSyncDefinition}from'../../commands/project/domain-routing-sync.js';const createFlags=[{'name':a190_0x110ff0(0x175),'type':a190_0x110ff0(0x183),'description':a190_0x110ff0(0x18a)},{'name':a190_0x110ff0(0x18f),'type':a190_0x110ff0(0x183),'description':a190_0x110ff0(0x180)},{'name':a190_0x110ff0(0x18b),'type':a190_0x110ff0(0x183),'description':'App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)'},{'name':a190_0x110ff0(0x188),'type':a190_0x110ff0(0x16e),'description':a190_0x110ff0(0x168),'default':![]},{'name':a190_0x110ff0(0x16c),'type':a190_0x110ff0(0x183),'description':a190_0x110ff0(0x17e)}],upgradeFlags=[{'name':a190_0x110ff0(0x170),'type':a190_0x110ff0(0x16e),'description':a190_0x110ff0(0x173),'default':![]}];function a190_0x454d(_0x4de06b,_0x1c1402){_0x4de06b=_0x4de06b-0x165;const _0x4a6892=a190_0x4a68();let _0x454d9e=_0x4a6892[_0x4de06b];return _0x454d9e;}export const projectDefinitions=[{'service':a190_0x110ff0(0x167),'command':a190_0x110ff0(0x18d),'description':a190_0x110ff0(0x169),'risk':a190_0x110ff0(0x165),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a190_0x110ff0(0x176),'description':a190_0x110ff0(0x181),'required':![]}],'flags':createFlags,async 'execute'(_0x4e9242){const _0x121c51=a190_0x110ff0,{createApp:_0xe922c0}=await import(_0x121c51(0x17c)),_0x2a69d9=_0x4e9242[_0x121c51(0x17d)](_0x121c51(0x175))[_0x121c51(0x177)]()||_0x4e9242['args'][0x0]?.[_0x121c51(0x177)](),_0x1cf64d=_0x4e9242[_0x121c51(0x17d)](_0x121c51(0x18f))||undefined,_0x34b939=_0x4e9242[_0x121c51(0x17d)]('appcode')||undefined,_0x88bc4f=_0x4e9242[_0x121c51(0x17d)]('template-source')[_0x121c51(0x177)]()||undefined,_0x198c94=_0x4e9242[_0x121c51(0x186)](_0x121c51(0x188));if(_0x198c94&&_0x2a69d9)throw CliErrors['validation'](_0x121c51(0x171),'Run\x20'+CLI_BIN_NAME+_0x121c51(0x185));if(_0x4e9242[_0x121c51(0x17b)]){if(!_0x2a69d9&&!_0x198c94)throw CliErrors['validation'](_0x121c51(0x16d),'Usage:\x20'+CLI_BIN_NAME+_0x121c51(0x187)+CLI_BIN_NAME+_0x121c51(0x16a));await _0xe922c0({'projectCode':_0x2a69d9,'appCode':_0x34b939,'env':_0x1cf64d,'cookie':_0x4e9242[_0x121c51(0x179)],'currentDir':_0x198c94,'nonInteractive':!![],'templateSource':_0x88bc4f});}else await _0xe922c0({'projectCode':_0x2a69d9,'appCode':_0x34b939,'env':_0x1cf64d,'cookie':_0x4e9242[_0x121c51(0x179)],'currentDir':_0x198c94,'templateSource':_0x88bc4f});return{'ok':!![]};}},projectDomainRoutingSyncDefinition,{'service':a190_0x110ff0(0x167),'command':a190_0x110ff0(0x17a),'description':a190_0x110ff0(0x178),'risk':a190_0x110ff0(0x165),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x22604d){return await upgradeApp(_0x22604d['nonInteractive'],{'yes':_0x22604d['bool']('yes')}),{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a178_0x567882=a178_0x28e0;(function(_0x3cf5c8,_0x4bef32){const _0x3b62ac=a178_0x28e0,_0x5b2748=_0x3cf5c8();while(!![]){try{const _0x535742=parseInt(_0x3b62ac(0xe2))/0x1+-parseInt(_0x3b62ac(0xd3))/0x2*(parseInt(_0x3b62ac(0xc8))/0x3)+parseInt(_0x3b62ac(0xfe))/0x4+parseInt(_0x3b62ac(0x11c))/0x5*(parseInt(_0x3b62ac(0xc7))/0x6)+-parseInt(_0x3b62ac(0xd2))/0x7+parseInt(_0x3b62ac(0xfd))/0x8+parseInt(_0x3b62ac(0xff))/0x9*(-parseInt(_0x3b62ac(0xe8))/0xa);if(_0x535742===_0x4bef32)break;else _0x5b2748['push'](_0x5b2748['shift']());}catch(_0x29217a){_0x5b2748['push'](_0x5b2748['shift']());}}}(a178_0x3069,0x6bd31));import a178_0x521e32 from'chalk';function a178_0x28e0(_0x1e6ddf,_0x623363){_0x1e6ddf=_0x1e6ddf-0x9f;const _0x306947=a178_0x3069();let _0x28e094=_0x306947[_0x1e6ddf];return _0x28e094;}import a178_0x56b65b from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';import{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=[a178_0x567882(0xe4),a178_0x567882(0xbc)];function collectIdeSkillFiles(_0x594e69){const _0x1405ff=a178_0x567882,_0x33e539=[];for(const _0x48ca24 of Object[_0x1405ff(0x11a)](CORE_IDE_CONFIGS)){if(_0x48ca24['files'])for(const _0x2037b6 of _0x48ca24[_0x1405ff(0xc4)]){_0x33e539[_0x1405ff(0x11b)](resolve(_0x594e69,_0x2037b6[_0x1405ff(0xac)]));}}return _0x33e539;}function analyse(_0x2d61ff){const _0x23eb70=a178_0x567882;let _0x415b26=null;const _0x5a65aa=resolve(_0x2d61ff,NEW_CONFIG_NAME),_0x247a80=existsSync(_0x5a65aa);for(const _0x37ce8e of LEGACY_CONFIG_NAMES){const _0x52cbe1=resolve(_0x2d61ff,_0x37ce8e);if(existsSync(_0x52cbe1)){const _0x2ae112=readConfigFile(_0x52cbe1),_0x14763f=Object[_0x23eb70(0xef)](_0x2ae112)['filter'](_0x3bf85d=>typeof _0x2ae112[_0x3bf85d]!==_0x23eb70(0xc6));_0x415b26={'oldPath':_0x52cbe1,'hasNewConfig':_0x247a80,'fields':_0x14763f};break;}}const _0x406d56=[],_0x9159ba=resolve(_0x2d61ff,_0x23eb70(0xb0));if(existsSync(_0x9159ba))_0x406d56['push'](_0x9159ba);const _0x35f5fc=resolve(_0x2d61ff,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x35f5fc))_0x406d56[_0x23eb70(0x11b)](_0x35f5fc);const _0x52010c=resolve(_0x2d61ff,_0x23eb70(0x10b));if(existsSync(_0x52010c))_0x406d56[_0x23eb70(0x11b)](_0x52010c);for(const _0x3558ef of collectIdeSkillFiles(_0x2d61ff)){if(existsSync(_0x3558ef))_0x406d56[_0x23eb70(0x11b)](_0x3558ef);}let _0x4d8ac2=null;const _0xaf1f39=resolve(_0x2d61ff,_0x23eb70(0xa0));if(existsSync(_0xaf1f39))try{const _0x4533f5=JSON[_0x23eb70(0xa8)](readFileSync(_0xaf1f39,_0x23eb70(0xe1)));if(_0x4533f5?.[_0x23eb70(0xd1)]&&typeof _0x4533f5[_0x23eb70(0xd1)]===_0x23eb70(0xf3)){const _0x3f164c=[];for(const [_0x46a09d,_0x3e9fac]of Object[_0x23eb70(0x9f)](_0x4533f5['mcpServers'])){const _0x161c99=_0x3e9fac;_0x161c99?.[_0x23eb70(0xda)]&&Array[_0x23eb70(0xa5)](_0x161c99[_0x23eb70(0xda)])&&_0x161c99[_0x23eb70(0xda)][_0x23eb70(0x110)](_0xcd0cc5=>typeof _0xcd0cc5===_0x23eb70(0xed)&&_0xcd0cc5[_0x23eb70(0x108)](_0x23eb70(0xcf)))&&_0x3f164c['push'](_0x46a09d);}_0x3f164c[_0x23eb70(0xce)]>0x0&&(_0x4d8ac2={'path':_0xaf1f39,'keys':_0x3f164c});}}catch{}const _0x35bb1a=_0x406d56[_0x23eb70(0xce)]>0x0||_0x415b26!==null;let _0x2fd3f2=null;const _0x5f2e49=resolve(_0x2d61ff,_0x23eb70(0xdf));if(existsSync(_0x5f2e49))try{const _0x4eb304=JSON[_0x23eb70(0xa8)](readFileSync(_0x5f2e49,_0x23eb70(0xe1)));for(const _0x1e9719 of[_0x23eb70(0xd9),_0x23eb70(0xf7)]){const _0x4fd0c8=_0x4eb304?.[_0x1e9719]?.['@lovrabet/sdk'];if(typeof _0x4fd0c8===_0x23eb70(0xed)){_0x4fd0c8!==_0x23eb70(0xbe)&&(_0x2fd3f2={'pkgPath':_0x5f2e49,'currentVersion':_0x4fd0c8,'field':_0x1e9719});break;}}}catch{}return{'configMigration':_0x415b26,'oldArtifacts':_0x406d56,'oldMcpConfig':_0x4d8ac2,'needsSkillSwap':_0x35bb1a,'sdkUpgrade':_0x2fd3f2};}function printReport(_0x28fa38){const _0x456982=a178_0x567882,{configMigration:_0x1ce8f3,oldArtifacts:_0x599a5f,oldMcpConfig:_0x3039d7,needsSkillSwap:_0x609d65}=_0x28fa38;console[_0x456982(0x106)](''),console[_0x456982(0x106)](a178_0x521e32[_0x456982(0x115)](_0x456982(0xb6))),console['log']('');_0x1ce8f3?(console[_0x456982(0x106)](a178_0x521e32[_0x456982(0xea)]('Config\x20file:')+('\x20\x20'+a178_0x521e32['yellow'](_0x1ce8f3[_0x456982(0xb5)]))),console[_0x456982(0x106)]('\x20\x20New\x20config\x20(.rabetbase.json):\x20'+(_0x1ce8f3[_0x456982(0x105)]?a178_0x521e32[_0x456982(0x117)](_0x456982(0x11e)):a178_0x521e32[_0x456982(0x10e)](_0x456982(0xa9)))),console[_0x456982(0x106)](_0x456982(0xb1)+_0x1ce8f3[_0x456982(0x101)][_0x456982(0x10f)](',\x20')),console[_0x456982(0x106)](_0x456982(0x118))):console[_0x456982(0x106)](a178_0x521e32[_0x456982(0xea)](_0x456982(0x103))+'\x20\x20'+a178_0x521e32[_0x456982(0x10e)]('no\x20legacy\x20config\x20found'));console[_0x456982(0x106)]('');if(_0x599a5f[_0x456982(0xce)]>0x0){console['log'](a178_0x521e32[_0x456982(0xea)]('Legacy\x20artifacts:'));for(const _0x5b7d11 of _0x599a5f){console['log']('\x20\x20'+a178_0x521e32[_0x456982(0xde)](_0x456982(0xb7))+'\x20\x20'+_0x5b7d11);}console[_0x456982(0x106)](_0x456982(0xbb));}else console[_0x456982(0x106)](a178_0x521e32[_0x456982(0xea)](_0x456982(0xe7))+'\x20\x20'+a178_0x521e32[_0x456982(0x10e)](_0x456982(0xd6)));console['log']('');_0x3039d7?(console[_0x456982(0x106)](a178_0x521e32['cyan'](_0x456982(0xb3))+('\x20\x20'+a178_0x521e32['yellow'](_0x3039d7[_0x456982(0xac)])+'\x20→\x20keys:\x20'+_0x3039d7[_0x456982(0xef)][_0x456982(0x10f)](',\x20'))),console[_0x456982(0x106)](_0x456982(0xe0))):console['log'](a178_0x521e32[_0x456982(0xea)]('MCP\x20config:')+'\x20\x20'+a178_0x521e32[_0x456982(0x10e)]('no\x20legacy\x20entry'));console[_0x456982(0x106)](''),console[_0x456982(0x106)](a178_0x521e32['cyan'](_0x456982(0x116))+('\x20\x20'+(_0x609d65?a178_0x521e32[_0x456982(0xd5)](_0x456982(0xb9)):a178_0x521e32[_0x456982(0x117)]('not\x20needed'))));_0x609d65&&console[_0x456982(0x106)](_0x456982(0xb2)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console['log']('');if(_0x28fa38['sdkUpgrade']){const {currentVersion:_0x34c8e0,field:_0x328e6b,pkgPath:_0x11210e}=_0x28fa38[_0x456982(0xfb)];console[_0x456982(0x106)](a178_0x521e32[_0x456982(0xea)]('@lovrabet/sdk:')+('\x20\x20'+a178_0x521e32['yellow'](_0x11210e))),console[_0x456982(0x106)]('\x20\x20Current\x20version\x20in\x20'+_0x328e6b+':\x20'+a178_0x521e32['yellow'](_0x34c8e0)+_0x456982(0xa1)+a178_0x521e32['green'](_0x456982(0xbe))),console[_0x456982(0x106)](_0x456982(0x111));}else console[_0x456982(0x106)](a178_0x521e32['cyan'](_0x456982(0xf4))+'\x20\x20'+a178_0x521e32[_0x456982(0x10e)](_0x456982(0xa6)));console[_0x456982(0x106)]('');}function execConfigMigration(_0x5c9124,_0x34b26a){const _0x47df04=a178_0x567882,{configMigration:_0x3fdf91}=_0x5c9124;if(!_0x3fdf91?.['oldPath'])return{'step':0x1,'label':_0x47df04(0xbf),'ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x1d5cf9=readConfigFile(_0x3fdf91[_0x47df04(0xb5)]),_0xabb429=resolve(_0x34b26a,NEW_CONFIG_NAME),_0x43b4b3=_0x3fdf91[_0x47df04(0x105)]?readConfigFile(_0xabb429):{};for(const [_0x46d03d,_0x3876b3]of Object['entries'](_0x1d5cf9)){!(_0x46d03d in _0x43b4b3)&&(_0x43b4b3[_0x46d03d]=_0x3876b3);}writeConfigFile(_0xabb429,_0x43b4b3);const _0x58960c=_0x3fdf91['oldPath']+_0x47df04(0xfc);return renameSync(_0x3fdf91[_0x47df04(0xb5)],_0x58960c),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x3fdf91[_0x47df04(0xb5)]+_0x47df04(0xa1)+_0xabb429+_0x47df04(0xad)+_0x58960c+')'};}function execRemoveOldArtifacts(_0x389fda){const _0x1cfc4e=a178_0x567882,_0x504670=[];for(const _0x231a34 of _0x389fda){try{if(!existsSync(_0x231a34))continue;const _0x1e39e9=tryStat(_0x231a34);_0x1e39e9?.[_0x1cfc4e(0x10a)]()?rmSync(_0x231a34,{'recursive':!![],'force':!![]}):unlinkSync(_0x231a34);}catch(_0x53926b){_0x504670[_0x1cfc4e(0x11b)](_0x231a34+':\x20'+_0x53926b[_0x1cfc4e(0xfa)]);}}return{'step':0x3,'label':_0x1cfc4e(0xa3),'ok':_0x504670['length']===0x0,'detail':_0x504670[_0x1cfc4e(0xce)]>0x0?_0x389fda['length']-_0x504670[_0x1cfc4e(0xce)]+'/'+_0x389fda[_0x1cfc4e(0xce)]+_0x1cfc4e(0xc0)+_0x504670['join'](';\x20')+')':_0x389fda[_0x1cfc4e(0xce)]+'\x20removed'};}function execCleanMcp(_0x5f1fa1){const _0x2916e2=a178_0x567882;if(!_0x5f1fa1['oldMcpConfig'])return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x2916e2(0xba)};try{const _0x4d5e4b=readFileSync(_0x5f1fa1['oldMcpConfig'][_0x2916e2(0xac)],'utf8'),_0x3cc0ad=JSON[_0x2916e2(0xa8)](_0x4d5e4b);if(_0x3cc0ad?.[_0x2916e2(0xd1)]&&typeof _0x3cc0ad[_0x2916e2(0xd1)]===_0x2916e2(0xf3)){const _0x2b42af=[];for(const [_0x57de80,_0x1361c2]of Object['entries'](_0x3cc0ad[_0x2916e2(0xd1)])){_0x1361c2?.[_0x2916e2(0xda)]&&Array['isArray'](_0x1361c2[_0x2916e2(0xda)])&&_0x1361c2[_0x2916e2(0xda)][_0x2916e2(0x110)](_0x4b0883=>typeof _0x4b0883===_0x2916e2(0xed)&&_0x4b0883[_0x2916e2(0x108)](_0x2916e2(0xcf)))&&_0x2b42af[_0x2916e2(0x11b)](_0x57de80);}for(const _0x537b4c of _0x2b42af){delete _0x3cc0ad['mcpServers'][_0x537b4c];}return _0x2b42af[_0x2916e2(0xce)]>0x0&&writeFileSync(_0x5f1fa1[_0x2916e2(0xdc)][_0x2916e2(0xac)],JSON[_0x2916e2(0xc1)](_0x3cc0ad,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':_0x2916e2(0xee),'ok':!![],'detail':_0x2916e2(0xaf)+_0x2b42af['join'](',\x20')+'\x20from\x20'+_0x5f1fa1[_0x2916e2(0xdc)][_0x2916e2(0xac)]};}return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x2916e2(0xec)};}catch(_0x3c2d9d){return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':![],'detail':_0x3c2d9d[_0x2916e2(0xfa)]};}}function execSkillsRemove(_0x32cca4,_0x15e0af){const _0x1586e4=a178_0x567882,_0x2db24e=runNpxSkillsRemove(_0x32cca4,{'stdio':_0x1586e4(0xc3),'yes':_0x15e0af});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x2db24e['ok'],'detail':_0x2db24e['ok']?_0x1586e4(0xa7):_0x2db24e['error']??_0x1586e4(0xca)+_0x2db24e[_0x1586e4(0xc5)]};}function execSkillsAdd(_0x12bd7a,_0x6063e3){const _0xdf053c=a178_0x567882,_0x36e298=runNpxSkillsAddGlobal(_0x12bd7a,_0xdf053c(0xb4),{'stdio':'inherit','yes':_0x6063e3});return{'step':0x6,'label':'Install\x20new\x20skill','ok':_0x36e298['ok'],'detail':_0x36e298['ok']?'lovrabet/rabetbase\x20installed\x20globally':_0x36e298[_0xdf053c(0xd8)]??_0xdf053c(0xca)+_0x36e298[_0xdf053c(0xc5)]};}function execUpgradeSdk(_0x495c9d){const _0x2368ce=a178_0x567882;if(!_0x495c9d['sdkUpgrade'])return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x2368ce(0xe9)};const {pkgPath:_0x4e1029,currentVersion:_0x33e6e8,field:_0x45f5cf}=_0x495c9d[_0x2368ce(0xfb)];try{const _0x20ab25=readFileSync(_0x4e1029,_0x2368ce(0xe1)),_0x3fa010=JSON[_0x2368ce(0xa8)](_0x20ab25);return _0x3fa010[_0x45f5cf]['@lovrabet/sdk']=_0x2368ce(0xbe),writeFileSync(_0x4e1029,JSON[_0x2368ce(0xc1)](_0x3fa010,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':_0x2368ce(0xc9),'ok':!![],'detail':_0x45f5cf+_0x2368ce(0xd0)+_0x33e6e8+'\x20→\x20latest'};}catch(_0x1f0118){return{'step':0x7,'label':_0x2368ce(0xc9),'ok':![],'detail':_0x1f0118[_0x2368ce(0xfa)]};}}function tryStat(_0xe23791){try{return statSync(_0xe23791);}catch{return undefined;}}function printSummary(_0x2c13a1){const _0x190e2f=a178_0x567882;console[_0x190e2f(0x106)](''),console[_0x190e2f(0x106)](a178_0x521e32[_0x190e2f(0x115)](_0x190e2f(0xe5))),console[_0x190e2f(0x106)]('');for(const _0x22bdf3 of _0x2c13a1){const _0x578865=_0x22bdf3['ok']?a178_0x521e32[_0x190e2f(0x117)]('OK'):a178_0x521e32[_0x190e2f(0xde)](_0x190e2f(0xcd));console['log']('\x20\x20'+_0x578865+'\x20\x20Step\x20'+_0x22bdf3['step']+':\x20'+_0x22bdf3[_0x190e2f(0x10c)]);if(_0x22bdf3['detail'])console[_0x190e2f(0x106)](_0x190e2f(0xcb)+a178_0x521e32[_0x190e2f(0x10e)](_0x22bdf3[_0x190e2f(0xf1)]));}console[_0x190e2f(0x106)]('');}export async function upgradeApp(_0x8c1c1,_0x46029f){const _0x123f90=a178_0x567882,_0x58da5c=process[_0x123f90(0xf6)](),_0x4f3681=analyse(_0x58da5c),_0x282a4f=!_0x4f3681[_0x123f90(0x104)]&&_0x4f3681[_0x123f90(0xb8)]['length']===0x0&&!_0x4f3681['oldMcpConfig']&&!_0x4f3681[_0x123f90(0xa4)]&&!_0x4f3681[_0x123f90(0xfb)];if(_0x282a4f){console['log'](a178_0x521e32[_0x123f90(0x117)]('No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.'));return;}printReport(_0x4f3681);const _0x56da7e=!!(_0x46029f['yes']||_0x46029f['Y']||_0x8c1c1);if(!_0x56da7e)try{const _0x234171=await askConfirm(_0x123f90(0x119));if(!_0x234171){console[_0x123f90(0x106)](a178_0x521e32[_0x123f90(0x10e)](_0x123f90(0xdb)));return;}}catch(_0x1f2a22){if(_0x1f2a22?.['message']===_0x123f90(0xf9)){console[_0x123f90(0x106)](a178_0x521e32[_0x123f90(0x10e)]('Upgrade\x20cancelled.'));return;}throw _0x1f2a22;}const _0x2089ff=[],_0xb5d610=a178_0x56b65b({'text':_0x123f90(0x100),'color':_0x123f90(0xea)})['start'](),_0x57eff0=execConfigMigration(_0x4f3681,_0x58da5c);_0x2089ff[_0x123f90(0x11b)](_0x57eff0),_0xb5d610[_0x57eff0['ok']?'succeed':'fail'](_0x123f90(0xf8)+(_0x57eff0['detail']??(_0x57eff0['ok']?_0x123f90(0x113):'failed')));const _0x14e16e=resolve(_0x58da5c,_0x123f90(0xb0)),_0xea4f7c=a178_0x56b65b({'text':_0x123f90(0xf2),'color':_0x123f90(0xea)})[_0x123f90(0xeb)]();if(existsSync(_0x14e16e))try{rmSync(_0x14e16e,{'recursive':!![],'force':!![]}),_0xea4f7c[_0x123f90(0xd7)](_0x123f90(0xe6)),_0x2089ff['push']({'step':0x2,'label':_0x123f90(0x114),'ok':!![]});}catch(_0x24bd79){_0xea4f7c['fail'](_0x123f90(0x11d)+_0x24bd79[_0x123f90(0xfa)]),_0x2089ff[_0x123f90(0x11b)]({'step':0x2,'label':_0x123f90(0x114),'ok':![],'detail':_0x24bd79[_0x123f90(0xfa)]});}else _0xea4f7c['info'](_0x123f90(0xaa)),_0x2089ff[_0x123f90(0x11b)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![],'detail':_0x123f90(0xba)});const _0x1bd6d5=a178_0x56b65b({'text':_0x123f90(0x102),'color':_0x123f90(0xea)})[_0x123f90(0xeb)](),_0x32935c=execRemoveOldArtifacts(_0x4f3681[_0x123f90(0xb8)]);_0x2089ff[_0x123f90(0x11b)](_0x32935c),_0x1bd6d5[_0x32935c['ok']?_0x123f90(0xd7):_0x123f90(0xf5)](_0x123f90(0xf0)+(_0x32935c['detail']??(_0x32935c['ok']?'done':'failed')));const _0x39a0dd=a178_0x56b65b({'text':_0x123f90(0xa2),'color':_0x123f90(0xea)})[_0x123f90(0xeb)](),_0x110f85=execCleanMcp(_0x4f3681);_0x2089ff['push'](_0x110f85),_0x39a0dd[_0x110f85['ok']?_0x123f90(0xd7):_0x123f90(0xf5)](_0x123f90(0x10d)+(_0x110f85[_0x123f90(0xf1)]??(_0x110f85['ok']?'done':_0x123f90(0x112))));const _0x28fb5a=a178_0x56b65b({'text':_0x123f90(0xe3),'color':_0x123f90(0xea)})[_0x123f90(0xeb)](),_0x25bdd9=execSkillsRemove(_0x58da5c,_0x56da7e);_0x2089ff[_0x123f90(0x11b)](_0x25bdd9),_0x28fb5a[_0x25bdd9['ok']?'succeed':_0x123f90(0xf5)](_0x123f90(0xab)+(_0x25bdd9[_0x123f90(0xf1)]??(_0x25bdd9['ok']?_0x123f90(0x113):_0x123f90(0x112))));const _0x48115d=a178_0x56b65b({'text':'Step\x206/7:\x20Installing\x20new\x20skill...','color':_0x123f90(0xea)})['start'](),_0x30d76f=execSkillsAdd(_0x58da5c,_0x56da7e);_0x2089ff[_0x123f90(0x11b)](_0x30d76f),_0x48115d[_0x30d76f['ok']?'succeed':_0x123f90(0xf5)](_0x123f90(0xc2)+(_0x30d76f['detail']??(_0x30d76f['ok']?_0x123f90(0x113):'failed')));const _0x1d3943=a178_0x56b65b({'text':'Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','color':_0x123f90(0xea)})['start'](),_0x5c37ba=execUpgradeSdk(_0x4f3681);_0x2089ff[_0x123f90(0x11b)](_0x5c37ba),_0x1d3943[_0x5c37ba['ok']?_0x123f90(0xd7):_0x123f90(0xf5)](_0x123f90(0x109)+(_0x5c37ba[_0x123f90(0xf1)]??(_0x5c37ba['ok']?_0x123f90(0x113):_0x123f90(0x112)))),printSummary(_0x2089ff);const _0x13f297=_0x2089ff[_0x123f90(0x110)](_0x223297=>!_0x223297['ok']);_0x13f297?console['log'](a178_0x521e32[_0x123f90(0xd5)](_0x123f90(0x107))):console['log'](a178_0x521e32[_0x123f90(0x117)]('Upgrade\x20completed\x20successfully!')),_0x5c37ba['ok']&&_0x4f3681[_0x123f90(0xfb)]&&(console[_0x123f90(0x106)](''),console[_0x123f90(0x106)](a178_0x521e32[_0x123f90(0x115)]['cyan'](_0x123f90(0xcc))),console[_0x123f90(0x106)](a178_0x521e32[_0x123f90(0xea)](_0x123f90(0xd4))),console[_0x123f90(0x106)](''),console['log'](a178_0x521e32[_0x123f90(0xae)](_0x123f90(0xbd))),console[_0x123f90(0x106)](a178_0x521e32[_0x123f90(0xae)](_0x123f90(0xdd))),console[_0x123f90(0x106)](a178_0x521e32[_0x123f90(0xae)]('\x20\x20bun\x20install')),console['log'](''));}function a178_0x3069(){const _0x12c2e4=['status','undefined','6ZjmrQX','318sJTgEX','Upgrade\x20@lovrabet/sdk','exit\x20','\x20\x20\x20\x20\x20\x20\x20','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','FAIL','length','@lovrabet/dataset-mcp-server','[\x22@lovrabet/sdk\x22]:\x20','mcpServers','452347KKWFwW','11944eaZvJX','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','yellow','none\x20found','succeed','error','dependencies','args','Upgrade\x20cancelled.','oldMcpConfig','\x20\x20#\x20or','red','package.json','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','utf8','863676PddmnP','Step\x205/7:\x20Removing\x20old\x20skill...','.lovrabet.json','===\x20Upgrade\x20Summary\x20===','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','Legacy\x20artifacts:','80740qSiQJA','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','cyan','start','no\x20matching\x20entry\x20found','string','Clean\x20MCP\x20config','keys','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','detail','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','object','@lovrabet/sdk:','fail','cwd','devDependencies','Step\x201/7:\x20Config\x20migration\x20—\x20','CANCEL','message','sdkUpgrade','.bak','3269304uceBqV','1679900upoRjm','864FyZmoB','Step\x201/7:\x20Migrating\x20config...','fields','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','Config\x20file:','configMigration','hasNewConfig','log','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','includes','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','isDirectory','.claude/skills/lovrabet','label','Step\x204/7:\x20MCP\x20config\x20—\x20','gray','join','some','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','failed','done','Remove\x20.lovrabet/','bold','Skill\x20swap:','green','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','Proceed\x20with\x20upgrade?','values','push','1110460RfjJhA','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','already\x20exists\x20(will\x20merge)','entries','.cursor/mcp.json','\x20→\x20','Step\x204/7:\x20Cleaning\x20MCP\x20config...','Remove\x20legacy\x20artifacts','needsSkillSwap','isArray','not\x20found\x20or\x20already\x20at\x20latest','lovrabet/lovrabet-skill\x20removed','parse','not\x20found\x20(will\x20create)','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','path','\x20(backup:\x20','white','removed\x20','.lovrabet','\x20\x20Fields\x20to\x20migrate:\x20','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','MCP\x20config:','lovrabet/rabetbase','oldPath','===\x20Upgrade\x20Analysis\x20===','FOUND','oldArtifacts','needed','skipped','\x20\x20Action:\x20delete','.lovrabetrc','\x20\x20npm\x20install','latest','Config\x20migration','\x20removed\x20(','stringify','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','inherit','files'];a178_0x3069=function(){return _0x12c2e4;};return a178_0x3069();}
|
|
1
|
+
const a191_0x16ee30=a191_0x250b;(function(_0x45144a,_0x4c4c4b){const _0x17301e=a191_0x250b,_0x485470=_0x45144a();while(!![]){try{const _0x4a3a08=parseInt(_0x17301e(0x1e6))/0x1*(-parseInt(_0x17301e(0x201))/0x2)+-parseInt(_0x17301e(0x210))/0x3+-parseInt(_0x17301e(0x20a))/0x4*(parseInt(_0x17301e(0x24f))/0x5)+-parseInt(_0x17301e(0x234))/0x6+parseInt(_0x17301e(0x24c))/0x7*(parseInt(_0x17301e(0x204))/0x8)+-parseInt(_0x17301e(0x208))/0x9+parseInt(_0x17301e(0x21e))/0xa*(parseInt(_0x17301e(0x22f))/0xb);if(_0x4a3a08===_0x4c4c4b)break;else _0x485470['push'](_0x485470['shift']());}catch(_0xe53588){_0x485470['push'](_0x485470['shift']());}}}(a191_0x430f,0x252c9));import a191_0x2845ed from'chalk';import a191_0x3a8b4f from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';function a191_0x430f(){const _0x1d022e=['Upgrade\x20completed\x20successfully!','push','FOUND','.lovrabetrc','Legacy\x20artifacts:','keys','utf8','\x20\x20Step\x20','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','stringify','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','isArray','detail','1029xsjDJb','undefined','yellow','1375875hvoWRZ','devDependencies','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','status','lovrabet/lovrabet-skill\x20removed','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','Remove\x20.lovrabet/','Step\x201/7:\x20Migrating\x20config...','\x20→\x20latest','\x20→\x20','no\x20legacy\x20entry','args','needed','mcpServers','5DcfHYB','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','oldMcpConfig','Step\x205/7:\x20Removing\x20old\x20skill...','dependencies','done','object','some','log','length','\x20\x20npm\x20install','cyan','includes','no\x20legacy\x20config\x20found','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','join','white','isDirectory','values','parse','\x20\x20#\x20or','Step\x206/7:\x20Installing\x20new\x20skill...','message','.lovrabet','Skill\x20swap:','filter','Step\x204/7:\x20Cleaning\x20MCP\x20config...','115358NkQvAo','oldArtifacts','oldPath','15736ktxJOs','cwd','\x20\x20New\x20config\x20(.rabetbase.json):\x20','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','2367459IePcLH','package.json','4oODkdy','latest','inherit','Step\x201/7:\x20Config\x20migration\x20—\x20','@lovrabet/sdk:','@lovrabet/sdk','667194AamgzA','sdkUpgrade','none\x20found','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','not\x20found\x20(will\x20create)','configMigration','removed\x20','.cursor/rules/lovrabet_rules.mdc','Step\x204/7:\x20MCP\x20config\x20—\x20','skipped','===\x20Upgrade\x20Summary\x20===','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','MCP\x20config:','10vBFOOk','exit\x20','Remove\x20legacy\x20artifacts','green','Config\x20file:','@lovrabet/dataset-mcp-server','\x20(backup:\x20','Remove\x20old\x20skill','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','gray','failed','start','files','Clean\x20MCP\x20config','.bak','red','.claude/skills/lovrabet','11590458pwTctn','fail','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','Upgrade\x20cancelled.','[\x22@lovrabet/sdk\x22]:\x20','849258sBLUQf','.cursor/mcp.json','path','succeed','not\x20needed','===\x20Upgrade\x20Analysis\x20===','bold','Upgrade\x20@lovrabet/sdk','CANCEL','Step\x207/7:\x20@lovrabet/sdk\x20—\x20'];a191_0x430f=function(){return _0x1d022e;};return a191_0x430f();}import{resolve}from'node:path';import{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';function a191_0x250b(_0x2daf97,_0x58ebc8){_0x2daf97=_0x2daf97-0x1db;const _0x430f13=a191_0x430f();let _0x250b84=_0x430f13[_0x2daf97];return _0x250b84;}import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=['.lovrabet.json',a191_0x16ee30(0x241)];function collectIdeSkillFiles(_0x40bfe1){const _0xf247b8=a191_0x16ee30,_0x170979=[];for(const _0x3f44ee of Object[_0xf247b8(0x1f8)](CORE_IDE_CONFIGS)){if(_0x3f44ee[_0xf247b8(0x22a)])for(const _0x459ead of _0x3f44ee['files']){_0x170979['push'](resolve(_0x40bfe1,_0x459ead['path']));}}return _0x170979;}function analyse(_0x3e3df9){const _0x3e8435=a191_0x16ee30;let _0x4b8f24=null;const _0x3883a7=resolve(_0x3e3df9,NEW_CONFIG_NAME),_0x3317d4=existsSync(_0x3883a7);for(const _0x2fc43f of LEGACY_CONFIG_NAMES){const _0x55b90b=resolve(_0x3e3df9,_0x2fc43f);if(existsSync(_0x55b90b)){const _0x2ff339=readConfigFile(_0x55b90b),_0x3d72f6=Object[_0x3e8435(0x243)](_0x2ff339)[_0x3e8435(0x1ff)](_0x3465e9=>typeof _0x2ff339[_0x3465e9]!==_0x3e8435(0x24d));_0x4b8f24={'oldPath':_0x55b90b,'hasNewConfig':_0x3317d4,'fields':_0x3d72f6};break;}}const _0x5ae51d=[],_0x54ff23=resolve(_0x3e3df9,'.lovrabet');if(existsSync(_0x54ff23))_0x5ae51d['push'](_0x54ff23);const _0x54226c=resolve(_0x3e3df9,_0x3e8435(0x217));if(existsSync(_0x54226c))_0x5ae51d['push'](_0x54226c);const _0x4fc8c7=resolve(_0x3e3df9,_0x3e8435(0x22e));if(existsSync(_0x4fc8c7))_0x5ae51d['push'](_0x4fc8c7);for(const _0x597b6f of collectIdeSkillFiles(_0x3e3df9)){if(existsSync(_0x597b6f))_0x5ae51d['push'](_0x597b6f);}let _0x3242bd=null;const _0x34f700=resolve(_0x3e3df9,_0x3e8435(0x235));if(existsSync(_0x34f700))try{const _0x4fdd40=JSON[_0x3e8435(0x1f9)](readFileSync(_0x34f700,_0x3e8435(0x244)));if(_0x4fdd40?.['mcpServers']&&typeof _0x4fdd40['mcpServers']==='object'){const _0x568228=[];for(const [_0x3333cd,_0x342dbb]of Object['entries'](_0x4fdd40['mcpServers'])){const _0x38d7f5=_0x342dbb;_0x38d7f5?.[_0x3e8435(0x1e3)]&&Array[_0x3e8435(0x24a)](_0x38d7f5[_0x3e8435(0x1e3)])&&_0x38d7f5[_0x3e8435(0x1e3)]['some'](_0x68512b=>typeof _0x68512b==='string'&&_0x68512b[_0x3e8435(0x1f2)](_0x3e8435(0x223)))&&_0x568228[_0x3e8435(0x23f)](_0x3333cd);}_0x568228[_0x3e8435(0x1ef)]>0x0&&(_0x3242bd={'path':_0x34f700,'keys':_0x568228});}}catch{}const _0x91fb2a=_0x5ae51d[_0x3e8435(0x1ef)]>0x0||_0x4b8f24!==null;let _0x2388bd=null;const _0x3542b2=resolve(_0x3e3df9,_0x3e8435(0x209));if(existsSync(_0x3542b2))try{const _0x347f62=JSON[_0x3e8435(0x1f9)](readFileSync(_0x3542b2,_0x3e8435(0x244)));for(const _0x74fce1 of[_0x3e8435(0x1ea),_0x3e8435(0x250)]){const _0x18186d=_0x347f62?.[_0x74fce1]?.['@lovrabet/sdk'];if(typeof _0x18186d==='string'){_0x18186d!==_0x3e8435(0x20b)&&(_0x2388bd={'pkgPath':_0x3542b2,'currentVersion':_0x18186d,'field':_0x74fce1});break;}}}catch{}return{'configMigration':_0x4b8f24,'oldArtifacts':_0x5ae51d,'oldMcpConfig':_0x3242bd,'needsSkillSwap':_0x91fb2a,'sdkUpgrade':_0x2388bd};}function printReport(_0x1813aa){const _0x287310=a191_0x16ee30,{configMigration:_0x25f583,oldArtifacts:_0x5c8261,oldMcpConfig:_0xba911d,needsSkillSwap:_0x5c010f}=_0x1813aa;console[_0x287310(0x1ee)](''),console[_0x287310(0x1ee)](a191_0x2845ed[_0x287310(0x23a)](_0x287310(0x239))),console[_0x287310(0x1ee)]('');_0x25f583?(console[_0x287310(0x1ee)](a191_0x2845ed[_0x287310(0x1f1)](_0x287310(0x222))+('\x20\x20'+a191_0x2845ed[_0x287310(0x24e)](_0x25f583['oldPath']))),console[_0x287310(0x1ee)](_0x287310(0x206)+(_0x25f583['hasNewConfig']?a191_0x2845ed['green']('already\x20exists\x20(will\x20merge)'):a191_0x2845ed['gray'](_0x287310(0x214)))),console[_0x287310(0x1ee)]('\x20\x20Fields\x20to\x20migrate:\x20'+_0x25f583['fields'][_0x287310(0x1f5)](',\x20')),console[_0x287310(0x1ee)](_0x287310(0x249))):console[_0x287310(0x1ee)](a191_0x2845ed['cyan'](_0x287310(0x222))+'\x20\x20'+a191_0x2845ed[_0x287310(0x227)](_0x287310(0x1f3)));console[_0x287310(0x1ee)]('');if(_0x5c8261[_0x287310(0x1ef)]>0x0){console[_0x287310(0x1ee)](a191_0x2845ed['cyan'](_0x287310(0x242)));for(const _0x498a3d of _0x5c8261){console[_0x287310(0x1ee)]('\x20\x20'+a191_0x2845ed[_0x287310(0x22d)](_0x287310(0x240))+'\x20\x20'+_0x498a3d);}console['log']('\x20\x20Action:\x20delete');}else console[_0x287310(0x1ee)](a191_0x2845ed[_0x287310(0x1f1)](_0x287310(0x242))+'\x20\x20'+a191_0x2845ed[_0x287310(0x227)](_0x287310(0x212)));console['log']('');_0xba911d?(console[_0x287310(0x1ee)](a191_0x2845ed[_0x287310(0x1f1)](_0x287310(0x21d))+('\x20\x20'+a191_0x2845ed[_0x287310(0x24e)](_0xba911d[_0x287310(0x236)])+'\x20→\x20keys:\x20'+_0xba911d[_0x287310(0x243)][_0x287310(0x1f5)](',\x20'))),console[_0x287310(0x1ee)](_0x287310(0x226))):console[_0x287310(0x1ee)](a191_0x2845ed['cyan']('MCP\x20config:')+'\x20\x20'+a191_0x2845ed[_0x287310(0x227)](_0x287310(0x1e2)));console[_0x287310(0x1ee)](''),console['log'](a191_0x2845ed[_0x287310(0x1f1)](_0x287310(0x1fe))+('\x20\x20'+(_0x5c010f?a191_0x2845ed[_0x287310(0x24e)](_0x287310(0x1e4)):a191_0x2845ed[_0x287310(0x221)](_0x287310(0x238)))));_0x5c010f&&console['log'](_0x287310(0x207)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x287310(0x1ee)]('');if(_0x1813aa[_0x287310(0x211)]){const {currentVersion:_0x1df409,field:_0x2d9e78,pkgPath:_0x52ef74}=_0x1813aa[_0x287310(0x211)];console[_0x287310(0x1ee)](a191_0x2845ed[_0x287310(0x1f1)](_0x287310(0x20e))+('\x20\x20'+a191_0x2845ed['yellow'](_0x52ef74))),console[_0x287310(0x1ee)]('\x20\x20Current\x20version\x20in\x20'+_0x2d9e78+':\x20'+a191_0x2845ed[_0x287310(0x24e)](_0x1df409)+_0x287310(0x1e1)+a191_0x2845ed['green'](_0x287310(0x20b))),console['log'](_0x287310(0x21c));}else console['log'](a191_0x2845ed[_0x287310(0x1f1)](_0x287310(0x20e))+'\x20\x20'+a191_0x2845ed[_0x287310(0x227)]('not\x20found\x20or\x20already\x20at\x20latest'));console[_0x287310(0x1ee)]('');}function execConfigMigration(_0x3031d3,_0x4d6a64){const _0x17c31b=a191_0x16ee30,{configMigration:_0x23af15}=_0x3031d3;if(!_0x23af15?.[_0x17c31b(0x203)])return{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x1d62e5=readConfigFile(_0x23af15[_0x17c31b(0x203)]),_0x3f3bd9=resolve(_0x4d6a64,NEW_CONFIG_NAME),_0x3ab1de=_0x23af15['hasNewConfig']?readConfigFile(_0x3f3bd9):{};for(const [_0x11e123,_0x3ff3ee]of Object['entries'](_0x1d62e5)){!(_0x11e123 in _0x3ab1de)&&(_0x3ab1de[_0x11e123]=_0x3ff3ee);}writeConfigFile(_0x3f3bd9,_0x3ab1de);const _0x360969=_0x23af15[_0x17c31b(0x203)]+_0x17c31b(0x22c);return renameSync(_0x23af15['oldPath'],_0x360969),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x23af15[_0x17c31b(0x203)]+_0x17c31b(0x1e1)+_0x3f3bd9+_0x17c31b(0x224)+_0x360969+')'};}function execRemoveOldArtifacts(_0x3aa07e){const _0x246425=a191_0x16ee30,_0x5a0a60=[];for(const _0x56ef5d of _0x3aa07e){try{if(!existsSync(_0x56ef5d))continue;const _0x29e664=tryStat(_0x56ef5d);_0x29e664?.[_0x246425(0x1f7)]()?rmSync(_0x56ef5d,{'recursive':!![],'force':!![]}):unlinkSync(_0x56ef5d);}catch(_0x119bff){_0x5a0a60[_0x246425(0x23f)](_0x56ef5d+':\x20'+_0x119bff['message']);}}return{'step':0x3,'label':_0x246425(0x220),'ok':_0x5a0a60['length']===0x0,'detail':_0x5a0a60[_0x246425(0x1ef)]>0x0?_0x3aa07e[_0x246425(0x1ef)]-_0x5a0a60[_0x246425(0x1ef)]+'/'+_0x3aa07e[_0x246425(0x1ef)]+'\x20removed\x20('+_0x5a0a60[_0x246425(0x1f5)](';\x20')+')':_0x3aa07e[_0x246425(0x1ef)]+'\x20removed'};}function execCleanMcp(_0x821c37){const _0x3c3ff8=a191_0x16ee30;if(!_0x821c37[_0x3c3ff8(0x1e8)])return{'step':0x4,'label':_0x3c3ff8(0x22b),'ok':!![],'detail':_0x3c3ff8(0x219)};try{const _0x14b999=readFileSync(_0x821c37[_0x3c3ff8(0x1e8)]['path'],_0x3c3ff8(0x244)),_0x4e2d9f=JSON[_0x3c3ff8(0x1f9)](_0x14b999);if(_0x4e2d9f?.[_0x3c3ff8(0x1e5)]&&typeof _0x4e2d9f[_0x3c3ff8(0x1e5)]===_0x3c3ff8(0x1ec)){const _0x31e1a7=[];for(const [_0x27979d,_0x1efdf1]of Object['entries'](_0x4e2d9f[_0x3c3ff8(0x1e5)])){_0x1efdf1?.[_0x3c3ff8(0x1e3)]&&Array['isArray'](_0x1efdf1[_0x3c3ff8(0x1e3)])&&_0x1efdf1[_0x3c3ff8(0x1e3)][_0x3c3ff8(0x1ed)](_0x164193=>typeof _0x164193==='string'&&_0x164193[_0x3c3ff8(0x1f2)](_0x3c3ff8(0x223)))&&_0x31e1a7['push'](_0x27979d);}for(const _0xb2346b of _0x31e1a7){delete _0x4e2d9f[_0x3c3ff8(0x1e5)][_0xb2346b];}return _0x31e1a7['length']>0x0&&writeFileSync(_0x821c37[_0x3c3ff8(0x1e8)][_0x3c3ff8(0x236)],JSON[_0x3c3ff8(0x247)](_0x4e2d9f,null,0x2)+'\x0a',_0x3c3ff8(0x244)),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x3c3ff8(0x216)+_0x31e1a7[_0x3c3ff8(0x1f5)](',\x20')+'\x20from\x20'+_0x821c37[_0x3c3ff8(0x1e8)][_0x3c3ff8(0x236)]};}return{'step':0x4,'label':_0x3c3ff8(0x22b),'ok':!![],'detail':'no\x20matching\x20entry\x20found'};}catch(_0x585b6f){return{'step':0x4,'label':_0x3c3ff8(0x22b),'ok':![],'detail':_0x585b6f[_0x3c3ff8(0x1fc)]};}}function execSkillsRemove(_0x278455,_0x44c53d){const _0x10977c=a191_0x16ee30,_0x1d265e=runNpxSkillsRemove(_0x278455,{'stdio':_0x10977c(0x20c),'yes':_0x44c53d});return{'step':0x5,'label':_0x10977c(0x225),'ok':_0x1d265e['ok'],'detail':_0x1d265e['ok']?_0x10977c(0x1dc):_0x1d265e['error']??'exit\x20'+_0x1d265e[_0x10977c(0x1db)]};}function execSkillsAdd(_0x5b0348,_0x5808b5){const _0x11c632=a191_0x16ee30,_0x5d4d6f=runNpxSkillsAddGlobal(_0x5b0348,'lovrabet/rabetbase',{'stdio':_0x11c632(0x20c),'yes':_0x5808b5});return{'step':0x6,'label':'Install\x20new\x20skill','ok':_0x5d4d6f['ok'],'detail':_0x5d4d6f['ok']?'lovrabet/rabetbase\x20installed\x20globally':_0x5d4d6f['error']??_0x11c632(0x21f)+_0x5d4d6f[_0x11c632(0x1db)]};}function execUpgradeSdk(_0x4a7332){const _0x548daa=a191_0x16ee30;if(!_0x4a7332[_0x548daa(0x211)])return{'step':0x7,'label':_0x548daa(0x23b),'ok':!![],'detail':_0x548daa(0x246)};const {pkgPath:_0x55568e,currentVersion:_0x17ef21,field:_0x59abc7}=_0x4a7332[_0x548daa(0x211)];try{const _0x4c80ea=readFileSync(_0x55568e,_0x548daa(0x244)),_0x1ab9f2=JSON[_0x548daa(0x1f9)](_0x4c80ea);return _0x1ab9f2[_0x59abc7][_0x548daa(0x20f)]='latest',writeFileSync(_0x55568e,JSON[_0x548daa(0x247)](_0x1ab9f2,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':_0x548daa(0x23b),'ok':!![],'detail':_0x59abc7+_0x548daa(0x233)+_0x17ef21+_0x548daa(0x1e0)};}catch(_0x38d7de){return{'step':0x7,'label':_0x548daa(0x23b),'ok':![],'detail':_0x38d7de[_0x548daa(0x1fc)]};}}function tryStat(_0x8ac591){try{return statSync(_0x8ac591);}catch{return undefined;}}function printSummary(_0x4a2e9d){const _0x5953c6=a191_0x16ee30;console[_0x5953c6(0x1ee)](''),console['log'](a191_0x2845ed[_0x5953c6(0x23a)](_0x5953c6(0x21a))),console[_0x5953c6(0x1ee)]('');for(const _0x20d285 of _0x4a2e9d){const _0x3df99c=_0x20d285['ok']?a191_0x2845ed[_0x5953c6(0x221)]('OK'):a191_0x2845ed[_0x5953c6(0x22d)]('FAIL');console['log']('\x20\x20'+_0x3df99c+_0x5953c6(0x245)+_0x20d285['step']+':\x20'+_0x20d285['label']);if(_0x20d285[_0x5953c6(0x24b)])console[_0x5953c6(0x1ee)]('\x20\x20\x20\x20\x20\x20\x20'+a191_0x2845ed[_0x5953c6(0x227)](_0x20d285['detail']));}console[_0x5953c6(0x1ee)]('');}export async function upgradeApp(_0x2a226d,_0x41261a){const _0x164e71=a191_0x16ee30,_0x578acf=process[_0x164e71(0x205)](),_0x20de4c=analyse(_0x578acf),_0x27f0ac=!_0x20de4c[_0x164e71(0x215)]&&_0x20de4c[_0x164e71(0x202)][_0x164e71(0x1ef)]===0x0&&!_0x20de4c[_0x164e71(0x1e8)]&&!_0x20de4c['needsSkillSwap']&&!_0x20de4c[_0x164e71(0x211)];if(_0x27f0ac){console[_0x164e71(0x1ee)](a191_0x2845ed[_0x164e71(0x221)](_0x164e71(0x231)));return;}printReport(_0x20de4c);const _0x1d7243=!!(_0x41261a['yes']||_0x41261a['Y']||_0x2a226d);if(!_0x1d7243)try{const _0x6fb295=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x6fb295){console[_0x164e71(0x1ee)](a191_0x2845ed[_0x164e71(0x227)](_0x164e71(0x232)));return;}}catch(_0x2c3783){if(_0x2c3783?.[_0x164e71(0x1fc)]===_0x164e71(0x23c)){console[_0x164e71(0x1ee)](a191_0x2845ed[_0x164e71(0x227)](_0x164e71(0x232)));return;}throw _0x2c3783;}const _0x3804e5=[],_0x34fdca=a191_0x3a8b4f({'text':_0x164e71(0x1df),'color':_0x164e71(0x1f1)})[_0x164e71(0x229)](),_0x586775=execConfigMigration(_0x20de4c,_0x578acf);_0x3804e5[_0x164e71(0x23f)](_0x586775),_0x34fdca[_0x586775['ok']?'succeed':_0x164e71(0x230)](_0x164e71(0x20d)+(_0x586775[_0x164e71(0x24b)]??(_0x586775['ok']?_0x164e71(0x1eb):_0x164e71(0x228))));const _0x3be705=resolve(_0x578acf,_0x164e71(0x1fd)),_0x198652=a191_0x3a8b4f({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':_0x164e71(0x1f1)})[_0x164e71(0x229)]();if(existsSync(_0x3be705))try{rmSync(_0x3be705,{'recursive':!![],'force':!![]}),_0x198652[_0x164e71(0x237)](_0x164e71(0x251)),_0x3804e5['push']({'step':0x2,'label':_0x164e71(0x1de),'ok':!![]});}catch(_0x2626af){_0x198652[_0x164e71(0x230)]('Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20'+_0x2626af[_0x164e71(0x1fc)]),_0x3804e5['push']({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x2626af[_0x164e71(0x1fc)]});}else _0x198652['info'](_0x164e71(0x1e7)),_0x3804e5[_0x164e71(0x23f)]({'step':0x2,'label':_0x164e71(0x1de),'ok':!![],'detail':_0x164e71(0x219)});const _0x198f81=a191_0x3a8b4f({'text':_0x164e71(0x1dd),'color':'cyan'})['start'](),_0x52958e=execRemoveOldArtifacts(_0x20de4c['oldArtifacts']);_0x3804e5[_0x164e71(0x23f)](_0x52958e),_0x198f81[_0x52958e['ok']?_0x164e71(0x237):_0x164e71(0x230)]('Step\x203/7:\x20Legacy\x20artifacts\x20—\x20'+(_0x52958e[_0x164e71(0x24b)]??(_0x52958e['ok']?_0x164e71(0x1eb):'failed')));const _0x5b23aa=a191_0x3a8b4f({'text':_0x164e71(0x200),'color':_0x164e71(0x1f1)})[_0x164e71(0x229)](),_0x2a1188=execCleanMcp(_0x20de4c);_0x3804e5[_0x164e71(0x23f)](_0x2a1188),_0x5b23aa[_0x2a1188['ok']?_0x164e71(0x237):_0x164e71(0x230)](_0x164e71(0x218)+(_0x2a1188[_0x164e71(0x24b)]??(_0x2a1188['ok']?_0x164e71(0x1eb):_0x164e71(0x228))));const _0x1d3894=a191_0x3a8b4f({'text':_0x164e71(0x1e9),'color':_0x164e71(0x1f1)})['start'](),_0x8900b1=execSkillsRemove(_0x578acf,_0x1d7243);_0x3804e5[_0x164e71(0x23f)](_0x8900b1),_0x1d3894[_0x8900b1['ok']?'succeed':_0x164e71(0x230)]('Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20'+(_0x8900b1[_0x164e71(0x24b)]??(_0x8900b1['ok']?'done':_0x164e71(0x228))));const _0x2d7fe7=a191_0x3a8b4f({'text':_0x164e71(0x1fb),'color':'cyan'})['start'](),_0x41c163=execSkillsAdd(_0x578acf,_0x1d7243);_0x3804e5[_0x164e71(0x23f)](_0x41c163),_0x2d7fe7[_0x41c163['ok']?_0x164e71(0x237):_0x164e71(0x230)](_0x164e71(0x213)+(_0x41c163['detail']??(_0x41c163['ok']?_0x164e71(0x1eb):_0x164e71(0x228))));const _0x394d00=a191_0x3a8b4f({'text':_0x164e71(0x21b),'color':_0x164e71(0x1f1)})[_0x164e71(0x229)](),_0x4a716e=execUpgradeSdk(_0x20de4c);_0x3804e5[_0x164e71(0x23f)](_0x4a716e),_0x394d00[_0x4a716e['ok']?_0x164e71(0x237):_0x164e71(0x230)](_0x164e71(0x23d)+(_0x4a716e[_0x164e71(0x24b)]??(_0x4a716e['ok']?'done':_0x164e71(0x228)))),printSummary(_0x3804e5);const _0x456f86=_0x3804e5[_0x164e71(0x1ed)](_0x56d9d3=>!_0x56d9d3['ok']);_0x456f86?console[_0x164e71(0x1ee)](a191_0x2845ed['yellow'](_0x164e71(0x1f4))):console[_0x164e71(0x1ee)](a191_0x2845ed[_0x164e71(0x221)](_0x164e71(0x23e))),_0x4a716e['ok']&&_0x20de4c[_0x164e71(0x211)]&&(console[_0x164e71(0x1ee)](''),console[_0x164e71(0x1ee)](a191_0x2845ed['bold'][_0x164e71(0x1f1)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x164e71(0x1ee)](a191_0x2845ed[_0x164e71(0x1f1)](_0x164e71(0x248))),console['log'](''),console['log'](a191_0x2845ed[_0x164e71(0x1f6)](_0x164e71(0x1f0))),console['log'](a191_0x2845ed[_0x164e71(0x1f6)](_0x164e71(0x1fa))),console['log'](a191_0x2845ed[_0x164e71(0x1f6)]('\x20\x20bun\x20install')),console[_0x164e71(0x1ee)](''));}
|