@lovrabet/rabetbase-cli 2.5.4-beta.2 → 2.5.4-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/api-group.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/api/legacy-api-file.js +1 -1
- package/lib/api/model-registry-file.js +1 -1
- package/lib/api/model-registry-scaffold.js +1 -1
- package/lib/api/model-source.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/logs.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/batch-design.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/cross-relation-create.js +1 -1
- package/lib/commands/dataset/cross-relation-delete.js +1 -1
- package/lib/commands/dataset/cross-relation-list.js +1 -1
- package/lib/commands/dataset/cross-relation-shared.js +1 -1
- package/lib/commands/dataset/cross-relation-update.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/index.js +1 -1
- package/lib/commands/deployment/sync-all.js +1 -1
- package/lib/commands/deployment/sync-jobs.js +1 -1
- package/lib/commands/deployment/sync-status.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/flow/create.js +1 -1
- package/lib/commands/flow/detail.js +1 -1
- package/lib/commands/flow/index.js +1 -1
- package/lib/commands/flow/list.js +1 -1
- package/lib/commands/flow/publish.js +1 -1
- package/lib/commands/flow/runtime-resources-shared.js +1 -1
- package/lib/commands/flow/runtime-role-list.js +1 -1
- package/lib/commands/flow/runtime-role-user-list.js +1 -1
- package/lib/commands/flow/runtime-user-search.js +1 -1
- package/lib/commands/flow/shared.js +1 -1
- package/lib/commands/flow/update.js +1 -1
- package/lib/commands/flow/validate.js +1 -1
- package/lib/commands/instant-api-policy/current.js +1 -1
- package/lib/commands/instant-api-policy/index.js +1 -1
- package/lib/commands/instant-api-policy/init.js +1 -1
- package/lib/commands/instant-api-policy/publish.js +1 -1
- package/lib/commands/instant-api-policy/pull.js +1 -1
- package/lib/commands/instant-api-policy/revision.js +1 -1
- package/lib/commands/instant-api-policy/revisions.js +1 -1
- package/lib/commands/instant-api-policy/rollback.js +1 -1
- package/lib/commands/instant-api-policy/shared.js +1 -1
- package/lib/commands/instant-api-policy/validate.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/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/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/api-architecture-upgrade.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/feishu-bind.d.ts +2 -0
- package/lib/commands/user-account/feishu-bind.js +1 -0
- 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/region-config.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.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 +2 -0
- 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/hook-directory.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/cross-db-relation.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/flow-config.js +1 -1
- package/lib/core/instant-api-policy/config.js +1 -1
- 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/page/lr-smart-jsx.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.js +1 -1
- 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 +3 -2
- package/skills/rabetbase/references/rabetbase-user-account.md +20 -2
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const a200_0x55ccf0=a200_0x2a6d;(function(_0x5df315,_0x2c2c04){const _0x2f1136=a200_0x2a6d,_0x2fddda=_0x5df315();while(!![]){try{const _0x26a5b1=-parseInt(_0x2f1136(0x1ce))/0x1*(-parseInt(_0x2f1136(0x1e2))/0x2)+-parseInt(_0x2f1136(0x1e0))/0x3+-parseInt(_0x2f1136(0x1d7))/0x4+-parseInt(_0x2f1136(0x1da))/0x5+parseInt(_0x2f1136(0x1ee))/0x6*(parseInt(_0x2f1136(0x1b3))/0x7)+-parseInt(_0x2f1136(0x1c9))/0x8*(-parseInt(_0x2f1136(0x1d2))/0x9)+parseInt(_0x2f1136(0x1e5))/0xa*(-parseInt(_0x2f1136(0x1c0))/0xb);if(_0x26a5b1===_0x2c2c04)break;else _0x2fddda['push'](_0x2fddda['shift']());}catch(_0x3061f8){_0x2fddda['push'](_0x2fddda['shift']());}}}(a200_0x3c22,0x19876));import{copyFileSync,existsSync,mkdirSync,readFileSync,writeFileSync}from'node:fs';import a200_0x1d034e from'node:path';import{getMultiAppConfigs,initMultiAppEnvironment,readConfigFile,writeConfigFile}from'../../context.js';import{DEFAULT_API_DIR}from'../../constant/paths.js';import{getRuntimeDomain}from'../../constant/domain.js';import{getRegistryGroup,resolveApiProfileLayouts}from'../../api/api-group.js';import{MODEL_REGISTRY_FILE_NAME,MODEL_RUNTIME_FILE_NAME,readModelRegistry,updateModelRegistry}from'../../api/model-registry-file.js';import{isLegacyGeneratedApiScaffold,isLegacyGeneratedClientScaffold,parseLegacyApiModels}from'../../api/legacy-api-file.js';import{renderModelRegistryScaffold}from'../../api/model-registry-scaffold.js';import{writeProjectDomainRoutingManifest}from'../../config/project-domain-routing.js';const MIGRATION_ID='api-model-registry-v2',SDK_CONFIG_SOURCE=a200_0x55ccf0(0x1df);function a200_0x2a6d(_0xbf4538,_0x3e4cd6){_0xbf4538=_0xbf4538-0x1b0;const _0x3c22e8=a200_0x3c22();let _0x2a6dc5=_0x3c22e8[_0xbf4538];return _0x2a6dc5;}function a200_0x3c22(){const _0x238a8d=['apiGroup','2984HjfTpV','relative','project','Recognized\x20legacy\x20CLI\x20scaffold;\x20a\x20backup\x20will\x20be\x20retained.','modelRuntime','3UEFNtM','client','entries','manual-merge','1845ZjuMhV','Multiple\x20Lovrabet\x20model\x20profiles\x20match\x20Runtime\x20Domain','-api.ts','parse','preserve','170792Tfmbzr','The\x20existing\x20runtime\x20selector\x20is\x20not\x20a\x20recognized\x20current\x20generated\x20file.','Profile-aware\x20model\x20selection\x20generated\x20by\x20Rabetbase\x20CLI','104860WkEdsN','profiles','dirname','flatMap','isDefault','/**\x0a\x20*\x20Lovrabet\x20SDK\x20runtime\x20routing.\x0a\x20*\x20Generated\x20by\x20Rabetbase\x20CLI.\x20Do\x20not\x20add\x20credentials\x20to\x20this\x20file.\x0a\x20*/\x0aexport\x20const\x20LOVRABET_SDK_CONFIG\x20=\x20{}\x20as\x20const;\x0a','226803beGJWE','normalizedApiDir','1354LCfFDW','client.ts','unchanged','275270SMuOyD','resolve','push','outputDir','migrate-single-app','.rabetbase','length','files','string','89016KfCdLZ','startsWith','action','apiDir','sdk-config.ts','path','some','replace-generated','app','The\x20file\x20contains\x20project-owned\x20code\x20and\x20will\x20not\x20be\x20overwritten.','api.ts','add','apps','single','find','./models.generated','91OPPPrC','backups','has','name','./model-runtime','.rabetbase.json','LOVRABET_RUNTIME_DOMAIN','appcode','defaultApp','keys','utf8','candidates','join','11Tsiueb','project-upgrade','map','includes','external-api-dir','basename','object','default'];a200_0x3c22=function(){return _0x238a8d;};return a200_0x3c22();}function relativeMigrationDir(_0x7ee339,_0x2c93dc){const _0x20e7fd=a200_0x55ccf0,_0x47d8b5=a200_0x1d034e[_0x20e7fd(0x1ca)](_0x7ee339,_0x2c93dc);return _0x47d8b5&&!_0x47d8b5[_0x20e7fd(0x1ef)]('..')?_0x47d8b5:_0x20e7fd(0x1c4);}function candidatePath(_0x537b96,_0x95eeb7,_0x264f26){const _0x551036=a200_0x55ccf0;return a200_0x1d034e[_0x551036(0x1bf)](_0x537b96,_0x551036(0x1ea),_0x551036(0x1c1),MIGRATION_ID,_0x551036(0x1be),relativeMigrationDir(_0x537b96,_0x95eeb7),_0x264f26);}function backupPath(_0x56a871,_0xd542ac,_0x369bb8){const _0x536dee=a200_0x55ccf0;return a200_0x1d034e['join'](_0x56a871,_0x536dee(0x1ea),'project-upgrade',MIGRATION_ID,_0x536dee(0x1b4),relativeMigrationDir(_0x56a871,_0xd542ac),_0x369bb8);}function readOptional(_0x3a2858){try{return readFileSync(_0x3a2858,'utf8');}catch{return undefined;}}function readJsonObject(_0x1a1c0c){const _0x12ac3c=a200_0x55ccf0;try{const _0x5990ce=JSON[_0x12ac3c(0x1d5)](readFileSync(_0x1a1c0c,_0x12ac3c(0x1bd)));return _0x5990ce&&typeof _0x5990ce===_0x12ac3c(0x1c6)?_0x5990ce:{};}catch{return{};}}function planEntrypoint(_0x3739c5,_0x592a0a,_0x545cd2,_0x27ef6d){const _0x149ad4=a200_0x55ccf0,_0x4a4e10=a200_0x1d034e[_0x149ad4(0x1bf)](_0x592a0a,_0x545cd2),_0x561e60=readOptional(_0x4a4e10);if(_0x561e60===undefined)return{'path':_0x4a4e10,'action':'create'};if(_0x545cd2==='api.ts'?_0x561e60[_0x149ad4(0x1c3)](_0x149ad4(0x1b2))&&_0x561e60[_0x149ad4(0x1c3)](_0x149ad4(0x1b7)):_0x561e60[_0x149ad4(0x1c3)](_0x149ad4(0x1b9)))return{'path':_0x4a4e10,'action':'unchanged'};if(_0x27ef6d(_0x561e60))return{'path':_0x4a4e10,'action':_0x149ad4(0x1f5),'reason':_0x149ad4(0x1cc)};return{'path':_0x4a4e10,'action':_0x149ad4(0x1d1),'reason':_0x149ad4(0x1f7),'candidatePath':candidatePath(_0x3739c5,_0x592a0a,_0x545cd2)};}function syntheticApps(_0x4fa2a2){const _0x34a80a=a200_0x55ccf0,_0x175833=_0x4fa2a2['apps']&&typeof _0x4fa2a2[_0x34a80a(0x1fa)]==='object'?_0x4fa2a2[_0x34a80a(0x1fa)]:undefined;if(_0x175833&&Object['keys'](_0x175833)[_0x34a80a(0x1eb)]>0x0){const _0x49b686=typeof _0x4fa2a2['defaultApp']==='string'?_0x4fa2a2[_0x34a80a(0x1bb)]:Object[_0x34a80a(0x1bc)](_0x175833)[_0x34a80a(0x1eb)]===0x1?Object[_0x34a80a(0x1bc)](_0x175833)[0x0]:undefined;return Object[_0x34a80a(0x1d0)](_0x175833)[_0x34a80a(0x1dd)](([_0x4a4e72,_0x14e864])=>{const _0xbc7d3c=_0x34a80a,_0x28c349=_0x14e864,_0x5ca7f2=typeof _0x28c349[_0xbc7d3c(0x1ba)]===_0xbc7d3c(0x1ed)?_0x28c349[_0xbc7d3c(0x1ba)]:'';return _0x5ca7f2?[{'name':_0x4a4e72,'appcode':_0x5ca7f2,'apiGroup':typeof _0x28c349[_0xbc7d3c(0x1c8)]===_0xbc7d3c(0x1ed)?_0x28c349[_0xbc7d3c(0x1c8)]:undefined,'isDefault':_0x4a4e72===_0x49b686,'region':'cn','regionSource':_0xbc7d3c(0x1c7),'apiDir':typeof _0x28c349[_0xbc7d3c(0x1f1)]===_0xbc7d3c(0x1ed)?_0x28c349[_0xbc7d3c(0x1f1)]:typeof _0x4fa2a2[_0xbc7d3c(0x1f1)]===_0xbc7d3c(0x1ed)?_0x4fa2a2[_0xbc7d3c(0x1f1)]:undefined,'routingConfig':{}}]:[];});}const _0x10eb82=typeof _0x4fa2a2[_0x34a80a(0x1ba)]===_0x34a80a(0x1ed)?_0x4fa2a2[_0x34a80a(0x1ba)]:typeof _0x4fa2a2[_0x34a80a(0x1f6)]==='string'?_0x4fa2a2['app']:undefined;if(!_0x10eb82)return[];return[{'name':_0x10eb82,'appcode':_0x10eb82,'isDefault':!![],'region':'cn','regionSource':_0x34a80a(0x1c7),'apiDir':typeof _0x4fa2a2['apiDir']===_0x34a80a(0x1ed)?_0x4fa2a2['apiDir']:undefined,'routingConfig':{}}];}function configuredLayouts(_0x9da6a5,_0x527c54){const _0x52f96b=a200_0x55ccf0;return resolveApiProfileLayouts(_0x527c54,_0x2f3693=>a200_0x1d034e[_0x52f96b(0x1e6)](_0x9da6a5,_0x2f3693['apiDir']||DEFAULT_API_DIR),_0x9da6a5);}function uniqueRegistryGroups(_0x4c9335){const _0x538f77=a200_0x55ccf0,_0x3ba2bc=[],_0x43f24e=new Set(),_0x2f0796=new Set();for(const _0x31fc37 of _0x4c9335){const _0x4c2d0b=getRegistryGroup(_0x4c9335,_0x31fc37);if(!_0x4c2d0b){_0x43f24e[_0x538f77(0x1f9)](_0x31fc37[_0x538f77(0x1e8)]);continue;}const _0x516f29=_0x31fc37[_0x538f77(0x1e1)]+'\x00'+(_0x31fc37['apiGroup']??_0x538f77(0x1b0));!_0x2f0796[_0x538f77(0x1b5)](_0x516f29)&&(_0x3ba2bc[_0x538f77(0x1e7)](_0x4c2d0b),_0x2f0796[_0x538f77(0x1f9)](_0x516f29));}return{'groups':_0x3ba2bc,'skipped':[..._0x43f24e]};}function planGroup(_0x4867f9,_0x8098c1){const _0x5f0142=a200_0x55ccf0,_0x4cbf5c=_0x8098c1[0x0]['normalizedApiDir'],_0xffa391=a200_0x1d034e[_0x5f0142(0x1bf)](_0x4cbf5c,MODEL_RUNTIME_FILE_NAME),_0x26b116=readOptional(_0xffa391),_0x35b771=_0x26b116!==undefined&&_0x26b116[_0x5f0142(0x1c3)](_0x5f0142(0x1d9))&&_0x26b116[_0x5f0142(0x1c3)](_0x5f0142(0x1d3))&&_0x26b116[_0x5f0142(0x1c3)]('No\x20Lovrabet\x20model\x20profile\x20matches\x20Runtime\x20Domain'),_0x1c4b75=a200_0x1d034e[_0x5f0142(0x1bf)](_0x4cbf5c,MODEL_REGISTRY_FILE_NAME),_0x56aedf=a200_0x1d034e[_0x5f0142(0x1bf)](_0x4cbf5c,_0x5f0142(0x1f2)),_0x22c33f=[planEntrypoint(_0x4867f9,_0x4cbf5c,_0x5f0142(0x1f8),isLegacyGeneratedApiScaffold),planEntrypoint(_0x4867f9,_0x4cbf5c,_0x5f0142(0x1e3),isLegacyGeneratedClientScaffold),{'path':_0xffa391,'action':_0x26b116===undefined?'create':_0x35b771?'unchanged':_0x5f0142(0x1d1),'reason':_0x26b116===undefined?undefined:_0x5f0142(0x1d8),..._0x26b116!==undefined&&!_0x35b771?{'candidatePath':candidatePath(_0x4867f9,_0x4cbf5c,MODEL_RUNTIME_FILE_NAME)}:{}},{'path':_0x1c4b75,'action':existsSync(_0x1c4b75)?_0x5f0142(0x1d6):'create','reason':'Model\x20facts\x20are\x20preserved\x20and\x20completed\x20from\x20legacy\x20generated\x20files\x20when\x20possible.'},{'path':_0x56aedf,'action':existsSync(_0x56aedf)?_0x5f0142(0x1d6):'create'}];return{'apiDir':_0x4cbf5c,'profiles':_0x8098c1['map'](_0x9f3a6b=>_0x9f3a6b[_0x5f0142(0x1f6)][_0x5f0142(0x1b6)]),'files':_0x22c33f};}export function analyzeProjectApiArchitecture(_0x92f2ef,_0x3ebd92){const _0x45a786=a200_0x55ccf0,_0x489262=a200_0x1d034e[_0x45a786(0x1bf)](_0x92f2ef,'.rabetbase.json'),_0x205139=_0x3ebd92??(existsSync(_0x489262)?readJsonObject(_0x489262):{}),_0x2c6477=syntheticApps(_0x205139);if(_0x2c6477[_0x45a786(0x1eb)]===0x0)return{'migration':MIGRATION_ID,'needed':![],'configAction':'unconfigured','groups':[],'skippedLegacyDirectories':[],'manualMergeRequired':![]};const _0x4bd6ba=_0x205139[_0x45a786(0x1fa)]?_0x45a786(0x1e4):_0x45a786(0x1e9),{groups:_0x1e91d5,skipped:_0x3f3b42}=uniqueRegistryGroups(configuredLayouts(_0x92f2ef,_0x2c6477)),_0x484cfc=_0x1e91d5[_0x45a786(0x1c2)](_0x1f5846=>planGroup(_0x92f2ef,_0x1f5846)),_0x250bb6=_0x484cfc[_0x45a786(0x1f4)](_0x4e6ba2=>_0x4e6ba2[_0x45a786(0x1ec)][_0x45a786(0x1f4)](_0x385be3=>_0x385be3[_0x45a786(0x1f0)]===_0x45a786(0x1d1))),_0x3d9476=_0x4bd6ba===_0x45a786(0x1e9)||_0x484cfc[_0x45a786(0x1f4)](_0xd4c283=>_0xd4c283['files'][_0x45a786(0x1f4)](_0x3fc4f4=>![_0x45a786(0x1e4),_0x45a786(0x1d6)][_0x45a786(0x1c3)](_0x3fc4f4[_0x45a786(0x1f0)])));return{'migration':MIGRATION_ID,'needed':_0x3d9476,'configAction':_0x4bd6ba,'groups':_0x484cfc,'skippedLegacyDirectories':_0x3f3b42,'manualMergeRequired':_0x250bb6};}function migrateSingleAppConfig(_0x155e2d){const _0x59b5c5=a200_0x55ccf0,_0x544e2d=a200_0x1d034e[_0x59b5c5(0x1bf)](_0x155e2d,_0x59b5c5(0x1b8));if(!existsSync(_0x544e2d))return;const _0x13f7e8=readConfigFile(_0x544e2d);if(_0x13f7e8[_0x59b5c5(0x1fa)]&&typeof _0x13f7e8['apps']===_0x59b5c5(0x1c6))return;const _0x4abeab=typeof _0x13f7e8['appcode']===_0x59b5c5(0x1ed)?_0x13f7e8['appcode']:typeof _0x13f7e8[_0x59b5c5(0x1f6)]===_0x59b5c5(0x1ed)?_0x13f7e8[_0x59b5c5(0x1f6)]:undefined;if(!_0x4abeab)return;_0x13f7e8['apps']={[_0x4abeab]:{'appcode':_0x4abeab}},_0x13f7e8[_0x59b5c5(0x1bb)]=_0x4abeab,delete _0x13f7e8['app'],delete _0x13f7e8['appcode'],writeConfigFile(_0x544e2d,_0x13f7e8);}function legacyApiPath(_0x146116,_0xb611e9){const _0x4da37c=a200_0x55ccf0,_0x27cca3=_0xb611e9[_0x4da37c(0x1e1)],_0x54d6c4=_0x146116[_0x4da37c(0x1eb)]===0x1||_0xb611e9['app'][_0x4da37c(0x1de)]?[a200_0x1d034e[_0x4da37c(0x1bf)](_0x27cca3,_0x4da37c(0x1f8)),a200_0x1d034e[_0x4da37c(0x1bf)](_0x27cca3,_0xb611e9['app'][_0x4da37c(0x1b6)]+_0x4da37c(0x1d4))]:[a200_0x1d034e['join'](_0x27cca3,_0xb611e9[_0x4da37c(0x1f6)][_0x4da37c(0x1b6)]+_0x4da37c(0x1d4))];return _0x54d6c4['find'](existsSync);}function writeCandidateOrEntrypoint(_0x545136,_0x544420,_0x119557,_0x592f66){const _0x57373a=a200_0x55ccf0;if(_0x119557[_0x57373a(0x1f0)]==='unchanged'||_0x119557[_0x57373a(0x1f0)]===_0x57373a(0x1d6))return;if(_0x119557[_0x57373a(0x1f0)]===_0x57373a(0x1d1)){const _0x1f59c2=_0x119557['candidatePath'];mkdirSync(a200_0x1d034e[_0x57373a(0x1dc)](_0x1f59c2),{'recursive':!![]}),writeFileSync(_0x1f59c2,_0x592f66,_0x57373a(0x1bd));return;}if(_0x119557['action']==='replace-generated'){const _0x16f38f=backupPath(_0x545136,_0x544420,a200_0x1d034e[_0x57373a(0x1c5)](_0x119557[_0x57373a(0x1f3)]));mkdirSync(a200_0x1d034e['dirname'](_0x16f38f),{'recursive':!![]}),copyFileSync(_0x119557[_0x57373a(0x1f3)],_0x16f38f);}mkdirSync(a200_0x1d034e['dirname'](_0x119557['path']),{'recursive':!![]}),writeFileSync(_0x119557[_0x57373a(0x1f3)],_0x592f66,_0x57373a(0x1bd));}export async function upgradeProjectApiArchitecture(_0x37f5b1){const _0x3417de=a200_0x55ccf0,_0x5bcf74=analyzeProjectApiArchitecture(_0x37f5b1);migrateSingleAppConfig(_0x37f5b1);const _0x3ac098=getMultiAppConfigs(_0x3417de(0x1cb),_0x37f5b1)??[],_0x13e047=configuredLayouts(_0x37f5b1,_0x3ac098),{groups:_0x21c69b}=uniqueRegistryGroups(_0x13e047);let _0x91a343;for(const _0x5ddee2 of _0x21c69b){const _0x4d7dc5=_0x5ddee2[0x0][_0x3417de(0x1e1)];mkdirSync(_0x4d7dc5,{'recursive':!![]});const _0x267777=_0x5ddee2[_0x3417de(0x1b1)](_0x308622=>_0x308622['app'][_0x3417de(0x1de)])??_0x5ddee2[0x0];for(const _0x5578a6 of _0x5ddee2){const _0x4c3147=a200_0x1d034e[_0x3417de(0x1bf)](_0x4d7dc5,MODEL_REGISTRY_FILE_NAME),_0x1b8165=readModelRegistry(_0x4c3147);if(_0x1b8165?.[_0x3417de(0x1db)][_0x5578a6[_0x3417de(0x1f6)][_0x3417de(0x1b6)]])continue;const _0x1d6431=legacyApiPath(_0x5ddee2,_0x5578a6),_0x44f4b6=_0x1d6431?readOptional(_0x1d6431):undefined;await initMultiAppEnvironment(_0x5578a6['app']),updateModelRegistry({'outputDir':_0x4d7dc5,'profileName':_0x5578a6['app'][_0x3417de(0x1b6)],'defaultProfile':_0x267777['app'][_0x3417de(0x1b6)],'appCode':_0x5578a6[_0x3417de(0x1f6)]['appcode'],'runtimeDomain':getRuntimeDomain(),'models':_0x44f4b6?parseLegacyApiModels(_0x44f4b6):[]});}const _0x77abe1=await renderModelRegistryScaffold(_0x4d7dc5,_0x37f5b1),_0x58e3c9=planGroup(_0x37f5b1,_0x5ddee2);for(const _0x53a508 of _0x58e3c9[_0x3417de(0x1ec)]){const _0x4a1a67=a200_0x1d034e[_0x3417de(0x1c5)](_0x53a508[_0x3417de(0x1f3)]);if(_0x4a1a67===_0x3417de(0x1f8))writeCandidateOrEntrypoint(_0x37f5b1,_0x4d7dc5,_0x53a508,_0x77abe1['api']);else{if(_0x4a1a67===_0x3417de(0x1e3))writeCandidateOrEntrypoint(_0x37f5b1,_0x4d7dc5,_0x53a508,_0x77abe1[_0x3417de(0x1cf)]);else{if(_0x4a1a67===MODEL_RUNTIME_FILE_NAME)writeCandidateOrEntrypoint(_0x37f5b1,_0x4d7dc5,_0x53a508,_0x77abe1[_0x3417de(0x1cd)]);else _0x4a1a67===_0x3417de(0x1f2)&&_0x53a508[_0x3417de(0x1f0)]==='create'&&writeCandidateOrEntrypoint(_0x37f5b1,_0x4d7dc5,_0x53a508,SDK_CONFIG_SOURCE);}}}}const _0x1d8e04=_0x3ac098[_0x3417de(0x1b1)](_0x3115cf=>_0x3115cf[_0x3417de(0x1de)])??_0x3ac098[0x0];_0x1d8e04&&(await initMultiAppEnvironment(_0x1d8e04),_0x91a343=writeProjectDomainRoutingManifest(_0x37f5b1)[_0x3417de(0x1f3)]);const _0x24575b=analyzeProjectApiArchitecture(_0x37f5b1);return{..._0x5bcf74,'completed':!_0x24575b['manualMergeRequired'],'manualMergeRequired':_0x24575b['manualMergeRequired'],'routingPath':_0x91a343};}
|
|
1
|
+
const a200_0x596d14=a200_0x3eeb;(function(_0x4b8f60,_0x4992f3){const _0x45ae8e=a200_0x3eeb,_0x58f812=_0x4b8f60();while(!![]){try{const _0xce6a09=-parseInt(_0x45ae8e(0xac))/0x1*(parseInt(_0x45ae8e(0xdf))/0x2)+-parseInt(_0x45ae8e(0xe7))/0x3*(-parseInt(_0x45ae8e(0xce))/0x4)+-parseInt(_0x45ae8e(0xc6))/0x5*(parseInt(_0x45ae8e(0xbf))/0x6)+parseInt(_0x45ae8e(0xb4))/0x7+parseInt(_0x45ae8e(0xba))/0x8+-parseInt(_0x45ae8e(0xe6))/0x9+parseInt(_0x45ae8e(0xb9))/0xa*(parseInt(_0x45ae8e(0xbe))/0xb);if(_0xce6a09===_0x4992f3)break;else _0x58f812['push'](_0x58f812['shift']());}catch(_0x3889b3){_0x58f812['push'](_0x58f812['shift']());}}}(a200_0x215b,0x3df02));import{copyFileSync,existsSync,mkdirSync,readFileSync,writeFileSync}from'node:fs';import a200_0x3a120c from'node:path';import{getMultiAppConfigs,initMultiAppEnvironment,readConfigFile,writeConfigFile}from'../../context.js';import{DEFAULT_API_DIR}from'../../constant/paths.js';import{getRuntimeDomain}from'../../constant/domain.js';import{getRegistryGroup,resolveApiProfileLayouts}from'../../api/api-group.js';import{MODEL_REGISTRY_FILE_NAME,MODEL_RUNTIME_FILE_NAME,readModelRegistry,updateModelRegistry}from'../../api/model-registry-file.js';import{isLegacyGeneratedApiScaffold,isLegacyGeneratedClientScaffold,parseLegacyApiModels}from'../../api/legacy-api-file.js';import{renderModelRegistryScaffold}from'../../api/model-registry-scaffold.js';import{writeProjectDomainRoutingManifest}from'../../config/project-domain-routing.js';const MIGRATION_ID=a200_0x596d14(0xcc),SDK_CONFIG_SOURCE=a200_0x596d14(0xa4);function relativeMigrationDir(_0x246ec5,_0x352f59){const _0x2b034f=a200_0x596d14,_0x2495a7=a200_0x3a120c[_0x2b034f(0xe2)](_0x246ec5,_0x352f59);return _0x2495a7&&!_0x2495a7[_0x2b034f(0xae)]('..')?_0x2495a7:'external-api-dir';}function candidatePath(_0xbcb0f3,_0x207700,_0x4aea88){const _0x76b8c6=a200_0x596d14;return a200_0x3a120c['join'](_0xbcb0f3,_0x76b8c6(0xd0),_0x76b8c6(0xaf),MIGRATION_ID,_0x76b8c6(0xaa),relativeMigrationDir(_0xbcb0f3,_0x207700),_0x4aea88);}function backupPath(_0x4ef1d0,_0x2714b9,_0x162cb2){const _0x4d24ae=a200_0x596d14;return a200_0x3a120c[_0x4d24ae(0xc2)](_0x4ef1d0,'.rabetbase','project-upgrade',MIGRATION_ID,_0x4d24ae(0xb2),relativeMigrationDir(_0x4ef1d0,_0x2714b9),_0x162cb2);}function readOptional(_0x4830d8){const _0x51928f=a200_0x596d14;try{return readFileSync(_0x4830d8,_0x51928f(0xd3));}catch{return undefined;}}function readJsonObject(_0x3c91a7){const _0x78f69e=a200_0x596d14;try{const _0x2419ee=JSON['parse'](readFileSync(_0x3c91a7,_0x78f69e(0xd3)));return _0x2419ee&&typeof _0x2419ee==='object'?_0x2419ee:{};}catch{return{};}}function planEntrypoint(_0x4ea0ec,_0x20264f,_0x41b4fe,_0x60b311){const _0x4a2d7a=a200_0x596d14,_0x3fcf6d=a200_0x3a120c[_0x4a2d7a(0xc2)](_0x20264f,_0x41b4fe),_0xf8f28f=readOptional(_0x3fcf6d);if(_0xf8f28f===undefined)return{'path':_0x3fcf6d,'action':_0x4a2d7a(0xa5)};if(_0x41b4fe===_0x4a2d7a(0xdd)?_0xf8f28f[_0x4a2d7a(0xe4)]('./models.generated')&&_0xf8f28f['includes'](_0x4a2d7a(0xe1)):_0xf8f28f[_0x4a2d7a(0xe4)]('LOVRABET_RUNTIME_DOMAIN'))return{'path':_0x3fcf6d,'action':_0x4a2d7a(0xca)};if(_0x60b311(_0xf8f28f))return{'path':_0x3fcf6d,'action':_0x4a2d7a(0xda),'reason':_0x4a2d7a(0xc7)};return{'path':_0x3fcf6d,'action':'manual-merge','reason':'The\x20file\x20contains\x20project-owned\x20code\x20and\x20will\x20not\x20be\x20overwritten.','candidatePath':candidatePath(_0x4ea0ec,_0x20264f,_0x41b4fe)};}function a200_0x3eeb(_0x49756f,_0x10e4db){_0x49756f=_0x49756f-0xa0;const _0x215b3a=a200_0x215b();let _0x3eeb42=_0x215b3a[_0x49756f];return _0x3eeb42;}function a200_0x215b(){const _0x3d8170=['resolve','length','apps','/**\x0a\x20*\x20Lovrabet\x20SDK\x20runtime\x20routing.\x0a\x20*\x20Generated\x20by\x20Rabetbase\x20CLI.\x20Do\x20not\x20add\x20credentials\x20to\x20this\x20file.\x0a\x20*/\x0aexport\x20const\x20LOVRABET_SDK_CONFIG\x20=\x20{}\x20as\x20const;\x0a','create','apiGroup','No\x20Lovrabet\x20model\x20profile\x20matches\x20Runtime\x20Domain','path','unconfigured','candidates','-api.ts','1YwnMZF','manual-merge','startsWith','project-upgrade','defaultApp','Profile-aware\x20model\x20selection\x20generated\x20by\x20Rabetbase\x20CLI','backups','app','3079342GrkaJp','files','add','profiles','entries','230WDyHSn','690760nBGLIZ','Multiple\x20Lovrabet\x20model\x20profiles\x20match\x20Runtime\x20Domain','manualMergeRequired','api','113597QTysni','1590JZAvTF','map','push','join','isDefault','client.ts','.rabetbase.json','4600ruHsWA','Recognized\x20legacy\x20CLI\x20scaffold;\x20a\x20backup\x20will\x20be\x20retained.','sdk-config.ts','action','unchanged','normalizedApiDir','api-model-registry-v2','The\x20existing\x20runtime\x20selector\x20is\x20not\x20a\x20recognized\x20current\x20generated\x20file.','567284HgvJUj','default','.rabetbase','appcode','find','utf8','single','keys','preserve','string','project','some','replace-generated','dirname','has','api.ts','flatMap','429112EYHIWO','candidatePath','./model-runtime','relative','apiDir','includes','client','1741851lZDULE','3oLSYPh','name','outputDir','basename','migrate-single-app','Model\x20facts\x20are\x20preserved\x20and\x20completed\x20from\x20legacy\x20generated\x20files\x20when\x20possible.'];a200_0x215b=function(){return _0x3d8170;};return a200_0x215b();}function syntheticApps(_0x325f15){const _0x17546c=a200_0x596d14,_0x48dc51=_0x325f15[_0x17546c(0xa3)]&&typeof _0x325f15[_0x17546c(0xa3)]==='object'?_0x325f15[_0x17546c(0xa3)]:undefined;if(_0x48dc51&&Object[_0x17546c(0xd5)](_0x48dc51)['length']>0x0){const _0x594915=typeof _0x325f15['defaultApp']===_0x17546c(0xd7)?_0x325f15[_0x17546c(0xb0)]:Object[_0x17546c(0xd5)](_0x48dc51)[_0x17546c(0xa2)]===0x1?Object['keys'](_0x48dc51)[0x0]:undefined;return Object[_0x17546c(0xb8)](_0x48dc51)[_0x17546c(0xde)](([_0x4bb0b3,_0x5e2c75])=>{const _0x53f7e5=_0x17546c,_0x286ff0=_0x5e2c75,_0x31ebb6=typeof _0x286ff0['appcode']===_0x53f7e5(0xd7)?_0x286ff0['appcode']:'';return _0x31ebb6?[{'name':_0x4bb0b3,'appcode':_0x31ebb6,'apiGroup':typeof _0x286ff0[_0x53f7e5(0xa6)]===_0x53f7e5(0xd7)?_0x286ff0[_0x53f7e5(0xa6)]:undefined,'isDefault':_0x4bb0b3===_0x594915,'region':'cn','regionSource':_0x53f7e5(0xcf),'apiDir':typeof _0x286ff0[_0x53f7e5(0xe3)]===_0x53f7e5(0xd7)?_0x286ff0[_0x53f7e5(0xe3)]:typeof _0x325f15[_0x53f7e5(0xe3)]===_0x53f7e5(0xd7)?_0x325f15[_0x53f7e5(0xe3)]:undefined,'routingConfig':{}}]:[];});}const _0x5e9b03=typeof _0x325f15[_0x17546c(0xd1)]===_0x17546c(0xd7)?_0x325f15[_0x17546c(0xd1)]:typeof _0x325f15[_0x17546c(0xb3)]===_0x17546c(0xd7)?_0x325f15['app']:undefined;if(!_0x5e9b03)return[];return[{'name':_0x5e9b03,'appcode':_0x5e9b03,'isDefault':!![],'region':'cn','regionSource':'default','apiDir':typeof _0x325f15[_0x17546c(0xe3)]===_0x17546c(0xd7)?_0x325f15[_0x17546c(0xe3)]:undefined,'routingConfig':{}}];}function configuredLayouts(_0x287687,_0x1d1f69){const _0x5eed0a=a200_0x596d14;return resolveApiProfileLayouts(_0x1d1f69,_0x4d2546=>a200_0x3a120c[_0x5eed0a(0xa1)](_0x287687,_0x4d2546[_0x5eed0a(0xe3)]||DEFAULT_API_DIR),_0x287687);}function uniqueRegistryGroups(_0x26825c){const _0x26c325=a200_0x596d14,_0x15f25c=[],_0xb60250=new Set(),_0x4f41c1=new Set();for(const _0x9ad146 of _0x26825c){const _0x520546=getRegistryGroup(_0x26825c,_0x9ad146);if(!_0x520546){_0xb60250[_0x26c325(0xb6)](_0x9ad146[_0x26c325(0xe9)]);continue;}const _0x2e6a73=_0x9ad146[_0x26c325(0xcb)]+'\x00'+(_0x9ad146[_0x26c325(0xa6)]??_0x26c325(0xd4));!_0x4f41c1[_0x26c325(0xdc)](_0x2e6a73)&&(_0x15f25c[_0x26c325(0xc1)](_0x520546),_0x4f41c1[_0x26c325(0xb6)](_0x2e6a73));}return{'groups':_0x15f25c,'skipped':[..._0xb60250]};}function planGroup(_0x3ca18b,_0x470a20){const _0x54bb29=a200_0x596d14,_0x57212c=_0x470a20[0x0][_0x54bb29(0xcb)],_0x5b728f=a200_0x3a120c[_0x54bb29(0xc2)](_0x57212c,MODEL_RUNTIME_FILE_NAME),_0x25565c=readOptional(_0x5b728f),_0x369667=_0x25565c!==undefined&&_0x25565c[_0x54bb29(0xe4)](_0x54bb29(0xb1))&&_0x25565c[_0x54bb29(0xe4)](_0x54bb29(0xbb))&&_0x25565c[_0x54bb29(0xe4)](_0x54bb29(0xa7)),_0xb9bc45=a200_0x3a120c[_0x54bb29(0xc2)](_0x57212c,MODEL_REGISTRY_FILE_NAME),_0x193331=a200_0x3a120c[_0x54bb29(0xc2)](_0x57212c,_0x54bb29(0xc8)),_0x4efd3a=[planEntrypoint(_0x3ca18b,_0x57212c,'api.ts',isLegacyGeneratedApiScaffold),planEntrypoint(_0x3ca18b,_0x57212c,_0x54bb29(0xc4),isLegacyGeneratedClientScaffold),{'path':_0x5b728f,'action':_0x25565c===undefined?_0x54bb29(0xa5):_0x369667?_0x54bb29(0xca):_0x54bb29(0xad),'reason':_0x25565c===undefined?undefined:_0x54bb29(0xcd),..._0x25565c!==undefined&&!_0x369667?{'candidatePath':candidatePath(_0x3ca18b,_0x57212c,MODEL_RUNTIME_FILE_NAME)}:{}},{'path':_0xb9bc45,'action':existsSync(_0xb9bc45)?_0x54bb29(0xd6):_0x54bb29(0xa5),'reason':_0x54bb29(0xa0)},{'path':_0x193331,'action':existsSync(_0x193331)?_0x54bb29(0xd6):'create'}];return{'apiDir':_0x57212c,'profiles':_0x470a20['map'](_0x4df3d0=>_0x4df3d0[_0x54bb29(0xb3)]['name']),'files':_0x4efd3a};}export function analyzeProjectApiArchitecture(_0x5239cd,_0x1ba42d){const _0x3cf776=a200_0x596d14,_0x1cc5f8=a200_0x3a120c['join'](_0x5239cd,_0x3cf776(0xc5)),_0x146d01=_0x1ba42d??(existsSync(_0x1cc5f8)?readJsonObject(_0x1cc5f8):{}),_0x4ebcdc=syntheticApps(_0x146d01);if(_0x4ebcdc['length']===0x0)return{'migration':MIGRATION_ID,'needed':![],'configAction':_0x3cf776(0xa9),'groups':[],'skippedLegacyDirectories':[],'manualMergeRequired':![]};const _0x3c662f=_0x146d01['apps']?_0x3cf776(0xca):_0x3cf776(0xeb),{groups:_0x54dcda,skipped:_0xfe2182}=uniqueRegistryGroups(configuredLayouts(_0x5239cd,_0x4ebcdc)),_0x304003=_0x54dcda[_0x3cf776(0xc0)](_0x1eada4=>planGroup(_0x5239cd,_0x1eada4)),_0x5a99d6=_0x304003[_0x3cf776(0xd9)](_0x3c2eb6=>_0x3c2eb6[_0x3cf776(0xb5)][_0x3cf776(0xd9)](_0x1d355a=>_0x1d355a[_0x3cf776(0xc9)]===_0x3cf776(0xad))),_0x36b4b1=_0x3c662f===_0x3cf776(0xeb)||_0x304003['some'](_0x13e6a0=>_0x13e6a0['files'][_0x3cf776(0xd9)](_0x1b0592=>![_0x3cf776(0xca),_0x3cf776(0xd6)]['includes'](_0x1b0592[_0x3cf776(0xc9)])));return{'migration':MIGRATION_ID,'needed':_0x36b4b1,'configAction':_0x3c662f,'groups':_0x304003,'skippedLegacyDirectories':_0xfe2182,'manualMergeRequired':_0x5a99d6};}function migrateSingleAppConfig(_0x4b06b0){const _0x3b3727=a200_0x596d14,_0xf0aa4f=a200_0x3a120c[_0x3b3727(0xc2)](_0x4b06b0,_0x3b3727(0xc5));if(!existsSync(_0xf0aa4f))return;const _0x16b3fc=readConfigFile(_0xf0aa4f);if(_0x16b3fc[_0x3b3727(0xa3)]&&typeof _0x16b3fc[_0x3b3727(0xa3)]==='object')return;const _0x10a458=typeof _0x16b3fc[_0x3b3727(0xd1)]===_0x3b3727(0xd7)?_0x16b3fc[_0x3b3727(0xd1)]:typeof _0x16b3fc[_0x3b3727(0xb3)]===_0x3b3727(0xd7)?_0x16b3fc[_0x3b3727(0xb3)]:undefined;if(!_0x10a458)return;_0x16b3fc[_0x3b3727(0xa3)]={[_0x10a458]:{'appcode':_0x10a458}},_0x16b3fc[_0x3b3727(0xb0)]=_0x10a458,delete _0x16b3fc['app'],delete _0x16b3fc[_0x3b3727(0xd1)],writeConfigFile(_0xf0aa4f,_0x16b3fc);}function legacyApiPath(_0x33d780,_0x388639){const _0x25aa6c=a200_0x596d14,_0x553448=_0x388639[_0x25aa6c(0xcb)],_0x455cd3=_0x33d780[_0x25aa6c(0xa2)]===0x1||_0x388639['app'][_0x25aa6c(0xc3)]?[a200_0x3a120c[_0x25aa6c(0xc2)](_0x553448,'api.ts'),a200_0x3a120c['join'](_0x553448,_0x388639['app']['name']+_0x25aa6c(0xab))]:[a200_0x3a120c['join'](_0x553448,_0x388639[_0x25aa6c(0xb3)][_0x25aa6c(0xe8)]+_0x25aa6c(0xab))];return _0x455cd3[_0x25aa6c(0xd2)](existsSync);}function writeCandidateOrEntrypoint(_0x37125d,_0x40be8d,_0x339a21,_0xe5aef4){const _0x214d9e=a200_0x596d14;if(_0x339a21[_0x214d9e(0xc9)]==='unchanged'||_0x339a21[_0x214d9e(0xc9)]===_0x214d9e(0xd6))return;if(_0x339a21[_0x214d9e(0xc9)]==='manual-merge'){const _0x456760=_0x339a21[_0x214d9e(0xe0)];mkdirSync(a200_0x3a120c[_0x214d9e(0xdb)](_0x456760),{'recursive':!![]}),writeFileSync(_0x456760,_0xe5aef4,'utf8');return;}if(_0x339a21[_0x214d9e(0xc9)]==='replace-generated'){const _0x48a552=backupPath(_0x37125d,_0x40be8d,a200_0x3a120c[_0x214d9e(0xea)](_0x339a21[_0x214d9e(0xa8)]));mkdirSync(a200_0x3a120c[_0x214d9e(0xdb)](_0x48a552),{'recursive':!![]}),copyFileSync(_0x339a21[_0x214d9e(0xa8)],_0x48a552);}mkdirSync(a200_0x3a120c['dirname'](_0x339a21[_0x214d9e(0xa8)]),{'recursive':!![]}),writeFileSync(_0x339a21['path'],_0xe5aef4,_0x214d9e(0xd3));}export async function upgradeProjectApiArchitecture(_0x27bbab){const _0x10fad6=a200_0x596d14,_0x3af620=analyzeProjectApiArchitecture(_0x27bbab);migrateSingleAppConfig(_0x27bbab);const _0xa1ced1=getMultiAppConfigs(_0x10fad6(0xd8),_0x27bbab)??[],_0x246964=configuredLayouts(_0x27bbab,_0xa1ced1),{groups:_0x21500d}=uniqueRegistryGroups(_0x246964);let _0x59b481;for(const _0x3536ce of _0x21500d){const _0x17ce9e=_0x3536ce[0x0]['normalizedApiDir'];mkdirSync(_0x17ce9e,{'recursive':!![]});const _0x313131=_0x3536ce[_0x10fad6(0xd2)](_0x456feb=>_0x456feb[_0x10fad6(0xb3)]['isDefault'])??_0x3536ce[0x0];for(const _0x504ab6 of _0x3536ce){const _0x31e630=a200_0x3a120c['join'](_0x17ce9e,MODEL_REGISTRY_FILE_NAME),_0x4cf804=readModelRegistry(_0x31e630);if(_0x4cf804?.[_0x10fad6(0xb7)][_0x504ab6[_0x10fad6(0xb3)]['name']])continue;const _0x472eaa=legacyApiPath(_0x3536ce,_0x504ab6),_0x31910a=_0x472eaa?readOptional(_0x472eaa):undefined;await initMultiAppEnvironment(_0x504ab6[_0x10fad6(0xb3)]),updateModelRegistry({'outputDir':_0x17ce9e,'profileName':_0x504ab6['app'][_0x10fad6(0xe8)],'defaultProfile':_0x313131[_0x10fad6(0xb3)][_0x10fad6(0xe8)],'appCode':_0x504ab6[_0x10fad6(0xb3)]['appcode'],'runtimeDomain':getRuntimeDomain(),'models':_0x31910a?parseLegacyApiModels(_0x31910a):[]});}const _0x9674bc=await renderModelRegistryScaffold(_0x17ce9e,_0x27bbab),_0x35475e=planGroup(_0x27bbab,_0x3536ce);for(const _0x662326 of _0x35475e[_0x10fad6(0xb5)]){const _0x5b4e11=a200_0x3a120c[_0x10fad6(0xea)](_0x662326[_0x10fad6(0xa8)]);if(_0x5b4e11==='api.ts')writeCandidateOrEntrypoint(_0x27bbab,_0x17ce9e,_0x662326,_0x9674bc[_0x10fad6(0xbd)]);else{if(_0x5b4e11==='client.ts')writeCandidateOrEntrypoint(_0x27bbab,_0x17ce9e,_0x662326,_0x9674bc[_0x10fad6(0xe5)]);else{if(_0x5b4e11===MODEL_RUNTIME_FILE_NAME)writeCandidateOrEntrypoint(_0x27bbab,_0x17ce9e,_0x662326,_0x9674bc['modelRuntime']);else _0x5b4e11===_0x10fad6(0xc8)&&_0x662326[_0x10fad6(0xc9)]==='create'&&writeCandidateOrEntrypoint(_0x27bbab,_0x17ce9e,_0x662326,SDK_CONFIG_SOURCE);}}}}const _0x23a8ae=_0xa1ced1[_0x10fad6(0xd2)](_0x4dbec4=>_0x4dbec4[_0x10fad6(0xc3)])??_0xa1ced1[0x0];_0x23a8ae&&(await initMultiAppEnvironment(_0x23a8ae),_0x59b481=writeProjectDomainRoutingManifest(_0x27bbab)[_0x10fad6(0xa8)]);const _0x10c9e6=analyzeProjectApiArchitecture(_0x27bbab);return{..._0x3af620,'completed':!_0x10c9e6[_0x10fad6(0xbc)],'manualMergeRequired':_0x10c9e6[_0x10fad6(0xbc)],'routingPath':_0x59b481};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a201_0x4d36(_0x58baa8,_0x5bde6c){_0x58baa8=_0x58baa8-0xe0;const _0x8627a1=a201_0x8627();let _0x4d36cf=_0x8627a1[_0x58baa8];return _0x4d36cf;}function a201_0x8627(){const _0x1f8e8f=['log','my-app','No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','5757440SMfPNw','4abPXpq','green','string','\x22\x20already\x20exists','√\x20Project\x20Name:\x20','Login\x20failed','production','Logged\x20in','resolve','Skipped','2718486IBvTRw','√\x20App\x20Code:\x20','16847595wHfKZG','env','cyan','3422520ozvqrr','Directory\x20\x22','19408jVqvID','2751DSULtD','Project\x20name:','cwd','982425YsHdJJ','1123098IuPzNk','Not\x20set','√\x20Login\x20status:\x20'];a201_0x8627=function(){return _0x1f8e8f;};return a201_0x8627();}(function(_0x5bde4b,_0x2b1e70){const _0x264cf1=a201_0x4d36,_0x3ae0f3=_0x5bde4b();while(!![]){try{const _0x3e664e=parseInt(_0x264cf1(0xe3))/0x1+-parseInt(_0x264cf1(0xe4))/0x2+parseInt(_0x264cf1(0xf5))/0x3*(parseInt(_0x264cf1(0xeb))/0x4)+parseInt(_0x264cf1(0xea))/0x5+-parseInt(_0x264cf1(0xfa))/0x6+parseInt(_0x264cf1(0xe0))/0x7*(parseInt(_0x264cf1(0xfc))/0x8)+-parseInt(_0x264cf1(0xf7))/0x9;if(_0x3e664e===_0x2b1e70)break;else _0x3ae0f3['push'](_0x3ae0f3['shift']());}catch(_0x15d835){_0x3ae0f3['push'](_0x3ae0f3['shift']());}}}(a201_0x8627,0xf1981));import{existsSync}from'node:fs';import a201_0x28f094 from'node:path';import a201_0x517da2 from'chalk';import{input,confirm}from'@inquirer/prompts';import{getIsSessionValid}from'../../../auth/is-session-valid.js';import{authServer}from'../../../auth/auth-server.js';import{readConfig}from'../../../utils/config.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';import{getProjectNameValidationError}from'../../../commands/project/create/project-name.js';export async function guidedCreateProject(_0x4cadf9,_0x526153,_0x7c2445){const _0xa7c04=a201_0x4d36,_0x17f02e=_0xa7c04(0xe8),_0x2aa5a9=readConfig(),_0x201ac5=typeof _0x2aa5a9[_0xa7c04(0xf8)]===_0xa7c04(0xed)?_0x2aa5a9[_0xa7c04(0xf8)]:undefined,_0x2b17b1=await input({'message':_0xa7c04(0xe1),'default':_0x17f02e,'validate':_0x43f468=>{const _0x149b17=_0xa7c04,_0x4fbb86=_0x43f468['trim']()||_0x17f02e,_0x29659c=getProjectNameValidationError(_0x4fbb86);if(_0x29659c)return _0x29659c;const _0x5bab0f=a201_0x28f094[_0x149b17(0xf3)](process[_0x149b17(0xe2)](),_0x4fbb86);if(existsSync(_0x5bab0f))return _0x149b17(0xfb)+_0x4fbb86+_0x149b17(0xee);return!![];}});console[_0xa7c04(0xe7)](a201_0x517da2[_0xa7c04(0xec)](_0xa7c04(0xef)+a201_0x517da2[_0xa7c04(0xf9)](_0x2b17b1)));const _0x5b90d5=await selectSingleAppcode(_0x7c2445);console[_0xa7c04(0xe7)](a201_0x517da2['green'](_0xa7c04(0xf6)+a201_0x517da2[_0xa7c04(0xf9)](_0x5b90d5||_0xa7c04(0xe5))));if(_0x5b90d5){const _0x12d2a1=await getIsSessionValid();if(!_0x12d2a1){const _0x12007d=await confirm({'message':_0xa7c04(0xe9),'default':!![]});if(_0x12007d){const _0x1d19c3=await authServer({'silent':!![]});console[_0xa7c04(0xe7)](a201_0x517da2[_0xa7c04(0xec)](_0xa7c04(0xe6)+a201_0x517da2['cyan'](_0x1d19c3?_0xa7c04(0xf2):_0xa7c04(0xf0))));}else console[_0xa7c04(0xe7)](a201_0x517da2[_0xa7c04(0xec)](_0xa7c04(0xe6)+a201_0x517da2[_0xa7c04(0xf9)](_0xa7c04(0xf4))));}await _0x4cadf9({'projectName':_0x2b17b1,'appCode':_0x5b90d5,'env':_0x526153||_0x201ac5||_0xa7c04(0xf1)});}else await _0x4cadf9({'projectName':_0x2b17b1,'env':_0x526153||_0x201ac5||'production'});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a202_0x245a(){const _0x5c122b=['9NWXgGf','15UZyeLS','331832DQaXyS','854738koTZMX','1788280OYuNyO','replace','1987944CYqIVE','1hgbWdc','3068530IVbYbZ','toFixed','55BnfgTk','170iisoGx','40542FYCRwQ','1167036xTKziU'];a202_0x245a=function(){return _0x5c122b;};return a202_0x245a();}function a202_0x970b(_0xa12e0b,_0x188b03){_0xa12e0b=_0xa12e0b-0x83;const _0x245a1a=a202_0x245a();let _0x970b28=_0x245a1a[_0xa12e0b];return _0x970b28;}(function(_0x3cbb2a,_0x5eea5b){const _0x434ef0=a202_0x970b,_0x3dbfdc=_0x3cbb2a();while(!![]){try{const _0x246e35=parseInt(_0x434ef0(0x84))/0x1*(parseInt(_0x434ef0(0x8e))/0x2)+parseInt(_0x434ef0(0x8c))/0x3*(parseInt(_0x434ef0(0x8d))/0x4)+parseInt(_0x434ef0(0x88))/0x5*(parseInt(_0x434ef0(0x89))/0x6)+-parseInt(_0x434ef0(0x83))/0x7+parseInt(_0x434ef0(0x8f))/0x8+parseInt(_0x434ef0(0x8b))/0x9*(-parseInt(_0x434ef0(0x85))/0xa)+parseInt(_0x434ef0(0x87))/0xb*(-parseInt(_0x434ef0(0x8a))/0xc);if(_0x246e35===_0x5eea5b)break;else _0x3dbfdc['push'](_0x3dbfdc['shift']());}catch(_0x268c43){_0x3dbfdc['push'](_0x3dbfdc['shift']());}}}(a202_0x245a,0x354d2));export function formatElapsed(_0x58ea01){const _0x2cd7f2=a202_0x970b,_0x4a7a81=Date['now']()-_0x58ea01;if(_0x4a7a81<0x3e8)return _0x4a7a81+'ms';const _0xd8de8e=(_0x4a7a81/0x3e8)[_0x2cd7f2(0x86)](0x2),_0xb44988=_0xd8de8e[_0x2cd7f2(0x90)](/\.?0+$/u,'');return _0xb44988+'s';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x353241,_0xf7ac1f){const _0x970c0d=a203_0x412a,_0x260751=_0x353241();while(!![]){try{const _0x3f2426=-parseInt(_0x970c0d(0xf9))/0x1*(parseInt(_0x970c0d(0x103))/0x2)+parseInt(_0x970c0d(0xa3))/0x3*(parseInt(_0x970c0d(0xc8))/0x4)+-parseInt(_0x970c0d(0xb7))/0x5*(parseInt(_0x970c0d(0xeb))/0x6)+-parseInt(_0x970c0d(0xda))/0x7*(-parseInt(_0x970c0d(0xd7))/0x8)+parseInt(_0x970c0d(0xfc))/0x9+-parseInt(_0x970c0d(0x95))/0xa+parseInt(_0x970c0d(0xdc))/0xb;if(_0x3f2426===_0xf7ac1f)break;else _0x260751['push'](_0x260751['shift']());}catch(_0x398590){_0x260751['push'](_0x260751['shift']());}}}(a203_0x2ca5,0x52411));import a203_0x25495f from'path';import a203_0x4931cf from'fs';import a203_0xbb6924 from'chalk';import a203_0x464c98 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';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{getRuntimeDomain,getSdkClientRoutingConfig}from'../../../constant/domain.js';import{generateSdkConfigFile}from'../../../api/generate-sdk-config-file.js';import{writeProjectDomainRoutingManifest}from'../../../config/project-domain-routing.js';function a203_0x2ca5(){const _0x42842c=['success','error','Configured\x20app\x20AppCode:\x20','project','stop','info','\x20√\x20','belowMinimum','keys','stableVersion','10XSkcje','Updating\x20package.json\x20name','join','text','green','cwd','!\x20Project\x20created,\x20but\x20local\x20logging\x20could\x20not\x20be\x20initialized:\x20','create','Project\x20name:\x20','Project\x20template\x20ready','Current\x20directory\x20identity\x20changed\x20during\x20project\x20creation','mkdtempSync','\x20run\x20start','\x20already\x20exists','accessSync','modelCount','The\x20current\x20directory\x20changed\x20during\x20project\x20creation.','518660NfEmvR','cyan','Starting\x20project\x20creation:\x20','nonInteractive','downloading','Resolving\x20project\x20template','name','lstatSync','dirname','dev','\x20\x202.\x20Pull\x20API\x20configuration:\x20','\x20api\x20pull\x20--force\x20--yes','basename','\x20config\x20set\x20appcode\x20<app-code>\x27','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27','1224568BGoWoL','warn','projectName','14MNRLuZ','Format\x20code','77946OHMJdw','.rabetbase-create-','renameSync','1.0.0','length','resolve','gray','toLocaleString','rmSync','\x20\x201.\x20Start\x20project:\x20','API\x20configuration\x20pull\x20failed','cookie','√\x20package.json\x20updated:\x20name=','\x20dataset(s),\x20generated\x20','bold','1437684wtTqiK','stringify','currentDir','W_OK','√\x20Pulled\x20','resolving','parse','start','fail','env','Project\x20creation\x20failed:\x20','utf8','\x20&&\x20','\x20|\x20AppCode:\x20','16eTIsav','Failed\x20to\x20update\x20package.json','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','3768552rLrCLE','Failed\x20to\x20clean\x20up\x20project\x20directory:\x20','package.json','chdir','validation','copying','\x20Generated\x20by\x20rabetbase\x20cli\x20','7594EBQPDl','relative','Install\x20dependencies','writeFileSync','...','cd\x20','verifying','3737230obcuCa','production','needsUpgrade','reverse','ino','Remove\x20or\x20move\x20the\x20existing\x20files,\x20then\x20retry\x20with\x20--current-dir.','appCode','Copying\x20local\x20template\x20source','🚀\x20Next\x20Steps:','apps','Project\x20created:\x20','message','repeat','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','12rSejdG','push','Downloading\x20project\x20template','existsSync','The\x20current\x20directory\x20must\x20be\x20empty.','*\x20Pulling\x20API\x20configuration...','extracting','log','readdirSync','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20'];a203_0x2ca5=function(){return _0x42842c;};return a203_0x2ca5();}import{CliErrors}from'../../../errors.js';function readDirectoryIdentity(_0x13c610){const _0x22dc06=a203_0x412a;try{const _0x5d9fb8=a203_0x4931cf[_0x22dc06(0xcf)](_0x13c610);if(!_0x5d9fb8['isDirectory']())return null;return{'dev':_0x5d9fb8['dev'],'ino':_0x5d9fb8[_0x22dc06(0x99)]};}catch{return null;}}function isSameDirectory(_0x3f5159,_0xbb85a1){const _0x4e278a=a203_0x412a;return!!_0x3f5159&&!!_0xbb85a1&&_0x3f5159['dev']===_0xbb85a1[_0x4e278a(0xd1)]&&_0x3f5159[_0x4e278a(0x99)]===_0xbb85a1['ino'];}function a203_0x412a(_0x2809b3,_0x38d3b3){_0x2809b3=_0x2809b3-0x95;const _0x2ca5f7=a203_0x2ca5();let _0x412a71=_0x2ca5f7[_0x2809b3];return _0x412a71;}function commitCurrentDirectoryProject(_0x441428,_0x2b315c,_0x3befd3){const _0x25deb6=a203_0x412a;if(!isSameDirectory(readDirectoryIdentity(_0x441428),_0x3befd3))throw new Error(_0x25deb6(0xc1));const _0x4f64b2=a203_0x25495f[_0x25deb6(0xd4)](_0x2b315c),_0x319533=a203_0x4931cf[_0x25deb6(0xab)](_0x441428);if(_0x319533['length']!==0x1||_0x319533[0x0]!==_0x4f64b2)throw CliErrors[_0x25deb6(0x100)](_0x25deb6(0xc7),'Remove\x20the\x20new\x20files\x20and\x20retry\x20from\x20an\x20empty\x20directory.');const _0x1131e9=a203_0x25495f[_0x25deb6(0xb9)](_0x2b315c,'project'),_0x225140=[];try{for(const _0xc9f825 of a203_0x4931cf[_0x25deb6(0xab)](_0x1131e9)){a203_0x4931cf[_0x25deb6(0xde)](a203_0x25495f[_0x25deb6(0xb9)](_0x1131e9,_0xc9f825),a203_0x25495f[_0x25deb6(0xb9)](_0x441428,_0xc9f825)),_0x225140[_0x25deb6(0xa4)](_0xc9f825);}a203_0x4931cf[_0x25deb6(0xe4)](_0x2b315c,{'recursive':!![],'force':!![]});}catch(_0x29ee17){for(const _0x34b9ed of _0x225140[_0x25deb6(0x98)]()){const _0x212b08=a203_0x25495f[_0x25deb6(0xb9)](_0x441428,_0x34b9ed);if(!a203_0x4931cf[_0x25deb6(0xa6)](_0x212b08))continue;a203_0x4931cf[_0x25deb6(0xde)](_0x212b08,a203_0x25495f[_0x25deb6(0xb9)](_0x1131e9,_0x34b9ed));}throw _0x29ee17;}}export async function createApp(_0x4b9471){const _0x162250=a203_0x412a,_0x45ce62=await checkCliVersion();(_0x45ce62['needsUpgrade']||_0x45ce62[_0x162250(0xb4)])&&(printCliUpgradeWarning(_0x45ce62),assertCliVersionSupported(_0x45ce62),logger[_0x162250(0xb2)](_0x162250(0xbe),'CLI\x20version\x20check',{'currentVersion':_0x45ce62['currentVersion'],'stableVersion':_0x45ce62[_0x162250(0xb6)],'minimumVersion':_0x45ce62['minimumVersion'],'needsUpgrade':_0x45ce62[_0x162250(0x97)],'belowMinimum':_0x45ce62[_0x162250(0xb4)]}));const _0x291619=_0x4b9471[_0x162250(0xed)]?a203_0x25495f[_0x162250(0xd4)](process['cwd']()):_0x4b9471['projectCode'];if(_0x291619&&(_0x4b9471[_0x162250(0x9b)]||_0x4b9471[_0x162250(0xcb)]))await runCreate({'projectName':_0x291619,'appCode':_0x4b9471['appCode'],'env':_0x4b9471['env']},_0x4b9471);else{if(_0x291619){const _0x2a6698=await selectSingleAppcode(_0x4b9471[_0x162250(0xe7)]);await runCreate({'projectName':_0x291619,'appCode':_0x2a6698||undefined,'env':_0x4b9471[_0x162250(0xf4)]},_0x4b9471);}else await guidedCreateProject(_0x4e4668=>runCreate(_0x4e4668,_0x4b9471),_0x4b9471[_0x162250(0xf4)],_0x4b9471[_0x162250(0xe7)]);}}async function runCreate(_0x5bf322,_0x37a652){const _0x41d6b5=a203_0x412a;_0x5bf322[_0x41d6b5(0xd9)]=validateProjectName(_0x5bf322[_0x41d6b5(0xd9)]);const _0x32a8ea=_0x37a652[_0x41d6b5(0xed)]?process[_0x41d6b5(0xbc)]():a203_0x25495f[_0x41d6b5(0xe1)](process[_0x41d6b5(0xbc)](),_0x5bf322[_0x41d6b5(0xd9)]);if(_0x37a652[_0x41d6b5(0xed)]){if(a203_0x4931cf[_0x41d6b5(0xab)](_0x32a8ea)[_0x41d6b5(0xe0)]>0x0)throw CliErrors[_0x41d6b5(0x100)](_0x41d6b5(0xa7),_0x41d6b5(0x9a));}else{if(a203_0x4931cf[_0x41d6b5(0xa6)](_0x32a8ea))throw new Error('Project\x20directory\x20'+_0x5bf322[_0x41d6b5(0xd9)]+_0x41d6b5(0xc4));}let _0x3fcd47=null;const _0x22d53e=_0x37a652['currentDir']?readDirectoryIdentity(_0x32a8ea):null;let _0x27548f=null;try{a203_0x4931cf[_0x41d6b5(0xc5)](a203_0x25495f[_0x41d6b5(0xd0)](_0x32a8ea),a203_0x4931cf['constants'][_0x41d6b5(0xee)]);}catch{throw new Error(_0x41d6b5(0xa2));}logger[_0x41d6b5(0xb2)](_0x41d6b5(0xbe),_0x41d6b5(0xca)+_0x5bf322[_0x41d6b5(0xd9)],{'projectDir':_0x32a8ea,'appCode':_0x5bf322['appCode']}),console[_0x41d6b5(0xaa)](),console[_0x41d6b5(0xaa)](a203_0xbb6924['green'](_0x41d6b5(0xb3))+_0x41d6b5(0xbf)+a203_0xbb6924[_0x41d6b5(0xbb)](_0x5bf322['projectName'])+(_0x5bf322[_0x41d6b5(0x9b)]?_0x41d6b5(0xf8)+a203_0xbb6924[_0x41d6b5(0xc9)](_0x5bf322['appCode']):''));try{let _0x590f94=_0x5bf322['projectName'];_0x37a652[_0x41d6b5(0xed)]&&(_0x27548f=a203_0x4931cf[_0x41d6b5(0xc2)](a203_0x25495f[_0x41d6b5(0xb9)](_0x32a8ea,_0x41d6b5(0xdd))),_0x590f94=a203_0x25495f[_0x41d6b5(0x104)](process[_0x41d6b5(0xbc)](),a203_0x25495f['join'](_0x27548f,_0x41d6b5(0xb0))));const _0x226a02=a203_0x25495f[_0x41d6b5(0xe1)](process['cwd'](),_0x590f94);await runTask(_0x41d6b5(0xcd),_0x3d8d18=>copyProjectTemplate(_0x590f94,_0x9094ec=>_0x3d8d18(projectTemplateStageLabel(_0x9094ec)),_0x37a652['templateSource']),_0x41d6b5(0xc0)),_0x3fcd47=_0x37a652[_0x41d6b5(0xed)]?null:readDirectoryIdentity(_0x32a8ea);if(!_0x37a652['currentDir']&&!_0x3fcd47)throw new Error('Unable\x20to\x20verify\x20ownership\x20of\x20the\x20created\x20project\x20directory');await updatePackageJsonName(_0x590f94,_0x5bf322['projectName']),await runTask(_0x41d6b5(0x105),()=>installDependencies(_0x590f94)),await runTask(_0x41d6b5(0xdb),()=>formatProjectCode(_0x590f94)),await configureAppCode(_0x590f94,_0x5bf322[_0x41d6b5(0xd9)],_0x5bf322[_0x41d6b5(0x9b)]||'',_0x5bf322['env']);let _0x2283f8=![];if(_0x5bf322[_0x41d6b5(0x9b)]){console[_0x41d6b5(0xaa)](_0x41d6b5(0xa8));const _0x5578fe=process[_0x41d6b5(0xbc)]();try{process[_0x41d6b5(0xff)](_0x226a02);const _0x5ec5ef=_0x5bf322[_0x41d6b5(0xf4)]||_0x41d6b5(0x96);initEnv(_0x5ec5ef);const {configArray:_0x430fe3}=await fetchModelList(_0x5bf322[_0x41d6b5(0x9b)],_0x37a652[_0x41d6b5(0xe7)]||''),_0xc1d5c1=DEFAULT_API_DIR,_0x291d0a=await generateApiFile(_0x430fe3,'',_0x5bf322[_0x41d6b5(0x9b)],!![],_0x5ec5ef,_0xc1d5c1,undefined,getSdkClientRoutingConfig(),{'overwriteTypescript':!![],'modelProfile':{'name':_0x5bf322[_0x41d6b5(0x9b)],'defaultName':_0x5bf322['appCode'],'runtimeDomain':getRuntimeDomain()}});console['log'](_0x41d6b5(0xef)+_0x430fe3[_0x41d6b5(0xe0)]+_0x41d6b5(0xe9)+_0x291d0a[_0x41d6b5(0xc6)]+'\x20model(s)'),logger[_0x41d6b5(0xb2)]('create','API\x20configuration\x20pulled:\x20'+_0x5bf322['appCode']);}catch(_0x4373bf){_0x2283f8=!![],console['log'](_0x41d6b5(0xac)+CLI_BIN_NAME+_0x41d6b5(0xd3)),logger['warn'](_0x41d6b5(0xbe),_0x41d6b5(0xe6),{'error':_0x4373bf instanceof Error?_0x4373bf['message']:String(_0x4373bf)});}finally{process[_0x41d6b5(0xff)](_0x5578fe);}}if(_0x37a652[_0x41d6b5(0xed)]){if(!_0x27548f||!_0x22d53e)throw new Error('Unable\x20to\x20prepare\x20the\x20current\x20directory\x20workspace');commitCurrentDirectoryProject(_0x32a8ea,_0x27548f,_0x22d53e),_0x27548f=null;}try{logger['setLogPath'](_0x32a8ea),logger[_0x41d6b5(0xad)](_0x41d6b5(0xbe),_0x41d6b5(0x9f)+_0x5bf322[_0x41d6b5(0xd9)]);}catch(_0x20254b){console[_0x41d6b5(0xd8)](_0x41d6b5(0xbd)+(_0x20254b instanceof Error?_0x20254b['message']:String(_0x20254b)));}console[_0x41d6b5(0xaa)](),console[_0x41d6b5(0xaa)](a203_0xbb6924['green']('─'[_0x41d6b5(0xa1)](0x3c))),console[_0x41d6b5(0xaa)](a203_0xbb6924[_0x41d6b5(0xc9)][_0x41d6b5(0xea)](_0x41d6b5(0x9d))),console['log']();const _0x5017c3=_0x37a652[_0x41d6b5(0xed)]?CLI_BIN_NAME+_0x41d6b5(0xc3):_0x41d6b5(0x108)+_0x5bf322['projectName']+_0x41d6b5(0xf7)+CLI_BIN_NAME+_0x41d6b5(0xc3);console['log'](_0x41d6b5(0xe5)+a203_0xbb6924['cyan']['bold'](_0x5017c3)),_0x2283f8&&console[_0x41d6b5(0xaa)](_0x41d6b5(0xd2)+a203_0xbb6924[_0x41d6b5(0xc9)][_0x41d6b5(0xea)](CLI_BIN_NAME+_0x41d6b5(0xd3))),console['log'](a203_0xbb6924[_0x41d6b5(0xbb)]('─'[_0x41d6b5(0xa1)](0x3c)));}catch(_0x22b539){logger[_0x41d6b5(0xae)](_0x41d6b5(0xbe),_0x41d6b5(0xf5)+_0x5bf322['projectName'],{'error':_0x22b539 instanceof Error?_0x22b539[_0x41d6b5(0xa0)]:String(_0x22b539)});try{const _0x143639=readDirectoryIdentity(_0x32a8ea);if(_0x37a652[_0x41d6b5(0xed)]&&_0x27548f)a203_0x4931cf['rmSync'](_0x27548f,{'recursive':!![],'force':!![]});else{if(_0x3fcd47&&_0x143639?.[_0x41d6b5(0xd1)]===_0x3fcd47['dev']&&_0x143639[_0x41d6b5(0x99)]===_0x3fcd47[_0x41d6b5(0x99)])console[_0x41d6b5(0xaa)]('*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20'+_0x32a8ea),a203_0x4931cf['rmSync'](_0x32a8ea,{'recursive':!![],'force':!![]});else _0x143639&&logger[_0x41d6b5(0xd8)](_0x41d6b5(0xbe),'Skip\x20cleanup:\x20project\x20directory\x20ownership\x20changed:\x20'+_0x32a8ea);}}catch{logger[_0x41d6b5(0xd8)]('create',_0x41d6b5(0xfd)+_0x32a8ea);}throw _0x22b539;}}async function runTask(_0x4cb4c1,_0x5d26e2,_0x2c38b0=_0x4cb4c1){const _0x7406b1=a203_0x412a,_0x35be43=a203_0x464c98(_0x4cb4c1+'...')[_0x7406b1(0xf2)]();try{const _0x19abca=await _0x5d26e2(_0x332072=>{const _0x7bb513=_0x7406b1;_0x35be43[_0x7bb513(0xba)]=_0x332072+_0x7bb513(0x107);});_0x35be43[_0x7406b1(0xb1)](),console['log'](''+a203_0xbb6924['green']('\x20√\x20')+_0x2c38b0+'\x20'+a203_0xbb6924[_0x7406b1(0xe2)]('['+_0x19abca+']'));}catch(_0x4d3da8){_0x35be43[_0x7406b1(0xf3)](_0x4cb4c1);throw _0x4d3da8;}}function projectTemplateStageLabel(_0x5f3c82){const _0xf71172=a203_0x412a;switch(_0x5f3c82){case _0xf71172(0xf0):return _0xf71172(0xcd);case _0xf71172(0xcc):return _0xf71172(0xa5);case _0xf71172(0x109):return'Verifying\x20project\x20template';case _0xf71172(0xa9):return'Extracting\x20project\x20template';case _0xf71172(0x101):return _0xf71172(0x9c);}}async function updatePackageJsonName(_0x242553,_0x538ebc){const _0x152991=a203_0x412a,_0x46b6d7=a203_0x25495f[_0x152991(0xe1)](process[_0x152991(0xbc)](),_0x242553),_0x3a3686=a203_0x25495f[_0x152991(0xb9)](_0x46b6d7,'package.json');try{console['log']('*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields');const _0x18030f=getRabetbaseCliPackageRoot(),_0x54ba9d=a203_0x25495f['join'](_0x18030f,_0x152991(0xfe));let _0x2cccb4=_0x152991(0xdf);try{const _0x530e8f=JSON[_0x152991(0xf1)](a203_0x4931cf['readFileSync'](_0x54ba9d,_0x152991(0xf6)));_0x2cccb4=_0x530e8f['version']||_0x152991(0xdf);}catch{}const _0x5f2416=a203_0x4931cf['readFileSync'](_0x3a3686,_0x152991(0xf6)),_0x4bbd70=JSON[_0x152991(0xf1)](_0x5f2416);_0x4bbd70[_0x152991(0xce)]=_0x538ebc,_0x4bbd70['description']=_0x538ebc+_0x152991(0x102)+_0x2cccb4,a203_0x4931cf[_0x152991(0x106)](_0x3a3686,JSON[_0x152991(0xec)](_0x4bbd70,null,0x2)+'\x0a','utf8'),console['log'](_0x152991(0xe8)+_0x538ebc),logger[_0x152991(0xb2)]('create',_0x152991(0xb8));}catch(_0x393ae0){logger[_0x152991(0xae)]('create',_0x152991(0xfa));throw _0x393ae0;}}async function configureAppCode(_0x51b216,_0x563d8f,_0x5df076,_0x477f51){const _0x4b9f1d=a203_0x412a,_0x1eca2a=a203_0x25495f[_0x4b9f1d(0xe1)](process['cwd'](),_0x51b216),_0x65cc87=a203_0x25495f[_0x4b9f1d(0xb9)](_0x1eca2a,NEW_CONFIG_NAME);try{_0x5df076?console['log']('*\x20Configuring\x20AppCode\x20for\x20project\x20'+_0x563d8f+':\x20'+_0x5df076):console[_0x4b9f1d(0xaa)](_0x4b9f1d(0xfb)+_0x563d8f);const _0x154554=getRabetbaseCliPackageRoot(),_0x49c4b6=a203_0x25495f['join'](_0x154554,'package.json');let _0x155705=_0x4b9f1d(0xdf);try{const _0x8f1a5c=JSON[_0x4b9f1d(0xf1)](a203_0x4931cf['readFileSync'](_0x49c4b6,_0x4b9f1d(0xf6)));_0x155705=_0x8f1a5c['version']||_0x4b9f1d(0xdf);}catch{}const {globalConfig:_0x3d05eb}=loadRawConfigLayers(),_0x2a1eaa=typeof _0x3d05eb['env']==='string'?_0x3d05eb[_0x4b9f1d(0xf4)]:undefined,_0x4edc9d={};for(const _0x35e31d of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x3d05eb[_0x35e31d]!=null)_0x4edc9d[_0x35e31d]=_0x3d05eb[_0x35e31d];}const _0x11e6ad=buildCanonicalProjectConfig(_0x4edc9d,{'appCodes':_0x5df076?[_0x5df076]:[],'env':_0x477f51||_0x2a1eaa||'production','metadata':{'createdAt':new Date()[_0x4b9f1d(0xe3)](),'version':_0x155705}});writeConfigFile(_0x65cc87,_0x11e6ad),await generateSdkConfigFile(a203_0x25495f['join'](_0x1eca2a,DEFAULT_API_DIR),getSdkClientRoutingConfig()),writeProjectDomainRoutingManifest(_0x1eca2a),_0x5df076?console[_0x4b9f1d(0xaa)]('√\x20Configuration\x20file\x20created,\x20Apps:\x20'+Object[_0x4b9f1d(0xb5)](_0x11e6ad[_0x4b9f1d(0x9e)]||{})['join'](',\x20')+'\x20|\x20Default:\x20implicit\x20(single\x20app)'):console[_0x4b9f1d(0xaa)](_0x4b9f1d(0xd6)+CLI_BIN_NAME+_0x4b9f1d(0xd5)),logger[_0x4b9f1d(0xb2)](_0x4b9f1d(0xbe),_0x4b9f1d(0xaf)+_0x5df076);}catch(_0xc52ca6){logger['error'](_0x4b9f1d(0xbe),'Failed\x20to\x20configure\x20app\x20AppCode');throw _0xc52ca6;}}
|
|
1
|
+
(function(_0x490678,_0x402bb6){const _0x3b8434=a203_0x3f88,_0x59488c=_0x490678();while(!![]){try{const _0x410e27=parseInt(_0x3b8434(0x173))/0x1*(-parseInt(_0x3b8434(0x194))/0x2)+-parseInt(_0x3b8434(0x177))/0x3*(parseInt(_0x3b8434(0x175))/0x4)+-parseInt(_0x3b8434(0x1bd))/0x5+parseInt(_0x3b8434(0x1e1))/0x6+parseInt(_0x3b8434(0x186))/0x7+-parseInt(_0x3b8434(0x1cf))/0x8*(parseInt(_0x3b8434(0x184))/0x9)+parseInt(_0x3b8434(0x1b0))/0xa*(parseInt(_0x3b8434(0x174))/0xb);if(_0x410e27===_0x402bb6)break;else _0x59488c['push'](_0x59488c['shift']());}catch(_0x9e3655){_0x59488c['push'](_0x59488c['shift']());}}}(a203_0x16fc,0x3e442));import a203_0xbc9756 from'path';import a203_0x4c92f9 from'fs';import a203_0x1caa83 from'chalk';import a203_0x195e04 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 a203_0x3f88(_0x429491,_0x48aafd){_0x429491=_0x429491-0x173;const _0x16fcf1=a203_0x16fc();let _0x3f88a3=_0x16fcf1[_0x429491];return _0x3f88a3;}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{getRuntimeDomain,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(_0x38c0d3){const _0x20eb09=a203_0x3f88;try{const _0x4661c1=a203_0x4c92f9[_0x20eb09(0x1ab)](_0x38c0d3);if(!_0x4661c1[_0x20eb09(0x18c)]())return null;return{'dev':_0x4661c1[_0x20eb09(0x182)],'ino':_0x4661c1[_0x20eb09(0x195)]};}catch{return null;}}function isSameDirectory(_0x38119b,_0x27ec70){const _0x41b980=a203_0x3f88;return!!_0x38119b&&!!_0x27ec70&&_0x38119b[_0x41b980(0x182)]===_0x27ec70[_0x41b980(0x182)]&&_0x38119b[_0x41b980(0x195)]===_0x27ec70[_0x41b980(0x195)];}function commitCurrentDirectoryProject(_0x121666,_0x22fc52,_0x44623b){const _0x167286=a203_0x3f88;if(!isSameDirectory(readDirectoryIdentity(_0x121666),_0x44623b))throw new Error(_0x167286(0x1d5));const _0x27b11a=a203_0xbc9756[_0x167286(0x1dd)](_0x22fc52),_0x4b535a=a203_0x4c92f9['readdirSync'](_0x121666);if(_0x4b535a[_0x167286(0x1da)]!==0x1||_0x4b535a[0x0]!==_0x27b11a)throw CliErrors[_0x167286(0x1d6)](_0x167286(0x1e4),'Remove\x20the\x20new\x20files\x20and\x20retry\x20from\x20an\x20empty\x20directory.');const _0x44de3f=a203_0xbc9756['join'](_0x22fc52,_0x167286(0x199)),_0x39580a=[];try{for(const _0x504a92 of a203_0x4c92f9[_0x167286(0x1cb)](_0x44de3f)){a203_0x4c92f9['renameSync'](a203_0xbc9756[_0x167286(0x1de)](_0x44de3f,_0x504a92),a203_0xbc9756[_0x167286(0x1de)](_0x121666,_0x504a92)),_0x39580a[_0x167286(0x1aa)](_0x504a92);}a203_0x4c92f9[_0x167286(0x1d0)](_0x22fc52,{'recursive':!![],'force':!![]});}catch(_0x4d574f){for(const _0x48d4b6 of _0x39580a[_0x167286(0x1d4)]()){const _0x1dab06=a203_0xbc9756[_0x167286(0x1de)](_0x121666,_0x48d4b6);if(!a203_0x4c92f9[_0x167286(0x1e2)](_0x1dab06))continue;a203_0x4c92f9[_0x167286(0x18b)](_0x1dab06,a203_0xbc9756['join'](_0x44de3f,_0x48d4b6));}throw _0x4d574f;}}export async function createApp(_0x215851){const _0x2b9185=a203_0x3f88,_0x463a23=await checkCliVersion();(_0x463a23[_0x2b9185(0x1e0)]||_0x463a23[_0x2b9185(0x1b7)])&&(printCliUpgradeWarning(_0x463a23),assertCliVersionSupported(_0x463a23),logger[_0x2b9185(0x1be)]('create',_0x2b9185(0x176),{'currentVersion':_0x463a23['currentVersion'],'stableVersion':_0x463a23[_0x2b9185(0x17f)],'minimumVersion':_0x463a23[_0x2b9185(0x1a5)],'needsUpgrade':_0x463a23['needsUpgrade'],'belowMinimum':_0x463a23[_0x2b9185(0x1b7)]}));const _0x448c00=_0x215851['currentDir']?a203_0xbc9756[_0x2b9185(0x1dd)](process[_0x2b9185(0x183)]()):_0x215851[_0x2b9185(0x17b)];if(_0x448c00&&(_0x215851[_0x2b9185(0x19f)]||_0x215851[_0x2b9185(0x196)]))await runCreate({'projectName':_0x448c00,'appCode':_0x215851[_0x2b9185(0x19f)],'env':_0x215851[_0x2b9185(0x187)]},_0x215851);else{if(_0x448c00){const _0x5e186b=await selectSingleAppcode(_0x215851[_0x2b9185(0x1cc)]);await runCreate({'projectName':_0x448c00,'appCode':_0x5e186b||undefined,'env':_0x215851[_0x2b9185(0x187)]},_0x215851);}else await guidedCreateProject(_0x56e051=>runCreate(_0x56e051,_0x215851),_0x215851['env'],_0x215851[_0x2b9185(0x1cc)]);}}async function runCreate(_0x1c2652,_0x2d273b){const _0x3682fb=a203_0x3f88;_0x1c2652[_0x3682fb(0x1ae)]=validateProjectName(_0x1c2652[_0x3682fb(0x1ae)]);const _0x18901a=_0x2d273b['currentDir']?process[_0x3682fb(0x183)]():a203_0xbc9756[_0x3682fb(0x1c5)](process[_0x3682fb(0x183)](),_0x1c2652['projectName']);if(_0x2d273b[_0x3682fb(0x180)]){if(a203_0x4c92f9[_0x3682fb(0x1cb)](_0x18901a)[_0x3682fb(0x1da)]>0x0)throw CliErrors['validation'](_0x3682fb(0x17e),_0x3682fb(0x1c2));}else{if(a203_0x4c92f9['existsSync'](_0x18901a))throw new Error(_0x3682fb(0x190)+_0x1c2652[_0x3682fb(0x1ae)]+'\x20already\x20exists');}let _0x2a240c=null;const _0x32a50c=_0x2d273b[_0x3682fb(0x180)]?readDirectoryIdentity(_0x18901a):null;let _0x465e60=null;try{a203_0x4c92f9[_0x3682fb(0x1c9)](a203_0xbc9756[_0x3682fb(0x193)](_0x18901a),a203_0x4c92f9[_0x3682fb(0x1b2)][_0x3682fb(0x1e3)]);}catch{throw new Error('Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions');}logger[_0x3682fb(0x1be)](_0x3682fb(0x1ce),_0x3682fb(0x192)+_0x1c2652['projectName'],{'projectDir':_0x18901a,'appCode':_0x1c2652[_0x3682fb(0x19f)]}),console['log'](),console['log'](a203_0x1caa83[_0x3682fb(0x1a6)](_0x3682fb(0x1d8))+'Project\x20name:\x20'+a203_0x1caa83[_0x3682fb(0x1a6)](_0x1c2652[_0x3682fb(0x1ae)])+(_0x1c2652[_0x3682fb(0x19f)]?_0x3682fb(0x1c8)+a203_0x1caa83[_0x3682fb(0x1a8)](_0x1c2652[_0x3682fb(0x19f)]):''));try{let _0x32ec09=_0x1c2652[_0x3682fb(0x1ae)];_0x2d273b[_0x3682fb(0x180)]&&(_0x465e60=a203_0x4c92f9['mkdtempSync'](a203_0xbc9756[_0x3682fb(0x1de)](_0x18901a,'.rabetbase-create-')),_0x32ec09=a203_0xbc9756[_0x3682fb(0x17c)](process[_0x3682fb(0x183)](),a203_0xbc9756[_0x3682fb(0x1de)](_0x465e60,_0x3682fb(0x199))));const _0x59f78a=a203_0xbc9756[_0x3682fb(0x1c5)](process[_0x3682fb(0x183)](),_0x32ec09);await runTask(_0x3682fb(0x1c3),_0x4bada7=>copyProjectTemplate(_0x32ec09,_0x5ca2a0=>_0x4bada7(projectTemplateStageLabel(_0x5ca2a0)),_0x2d273b[_0x3682fb(0x17a)]),_0x3682fb(0x1c7)),_0x2a240c=_0x2d273b[_0x3682fb(0x180)]?null:readDirectoryIdentity(_0x18901a);if(!_0x2d273b[_0x3682fb(0x180)]&&!_0x2a240c)throw new Error('Unable\x20to\x20verify\x20ownership\x20of\x20the\x20created\x20project\x20directory');await updatePackageJsonName(_0x32ec09,_0x1c2652[_0x3682fb(0x1ae)]),await runTask('Install\x20dependencies',()=>installDependencies(_0x32ec09)),await runTask(_0x3682fb(0x1d7),()=>formatProjectCode(_0x32ec09)),await configureAppCode(_0x32ec09,_0x1c2652[_0x3682fb(0x1ae)],_0x1c2652[_0x3682fb(0x19f)]||'',_0x1c2652[_0x3682fb(0x187)]);let _0x276983=![];if(_0x1c2652[_0x3682fb(0x19f)]){console[_0x3682fb(0x181)](_0x3682fb(0x17d));const _0x27f132=process[_0x3682fb(0x183)]();try{process[_0x3682fb(0x1c1)](_0x59f78a);const _0x1bc13d=_0x1c2652['env']||_0x3682fb(0x1ca);initEnv(_0x1bc13d);const {configArray:_0x5d1f92}=await fetchModelList(_0x1c2652['appCode'],_0x2d273b['cookie']||''),_0x4a634b=DEFAULT_API_DIR,_0x2312c7=await generateApiFile(_0x5d1f92,'',_0x1c2652['appCode'],!![],_0x1bc13d,_0x4a634b,undefined,getSdkClientRoutingConfig(),{'overwriteTypescript':!![],'modelProfile':{'name':_0x1c2652[_0x3682fb(0x19f)],'defaultName':_0x1c2652[_0x3682fb(0x19f)],'runtimeDomain':getRuntimeDomain()}});console[_0x3682fb(0x181)](_0x3682fb(0x1b6)+_0x5d1f92['length']+'\x20dataset(s),\x20generated\x20'+_0x2312c7['modelCount']+_0x3682fb(0x1bf)),logger[_0x3682fb(0x1be)](_0x3682fb(0x1ce),_0x3682fb(0x1d9)+_0x1c2652[_0x3682fb(0x19f)]);}catch(_0x35e879){_0x276983=!![],console['log'](_0x3682fb(0x1d2)+CLI_BIN_NAME+_0x3682fb(0x179)),logger[_0x3682fb(0x1a0)]('create','API\x20configuration\x20pull\x20failed',{'error':_0x35e879 instanceof Error?_0x35e879[_0x3682fb(0x1ba)]:String(_0x35e879)});}finally{process[_0x3682fb(0x1c1)](_0x27f132);}}if(_0x2d273b[_0x3682fb(0x180)]){if(!_0x465e60||!_0x32a50c)throw new Error('Unable\x20to\x20prepare\x20the\x20current\x20directory\x20workspace');commitCurrentDirectoryProject(_0x18901a,_0x465e60,_0x32a50c),_0x465e60=null;}try{logger['setLogPath'](_0x18901a),logger['success'](_0x3682fb(0x1ce),_0x3682fb(0x19c)+_0x1c2652[_0x3682fb(0x1ae)]);}catch(_0x5aa87b){console[_0x3682fb(0x1a0)](_0x3682fb(0x1a9)+(_0x5aa87b instanceof Error?_0x5aa87b[_0x3682fb(0x1ba)]:String(_0x5aa87b)));}console['log'](),console[_0x3682fb(0x181)](a203_0x1caa83[_0x3682fb(0x1a6)]('─'['repeat'](0x3c))),console[_0x3682fb(0x181)](a203_0x1caa83[_0x3682fb(0x1a8)]['bold'](_0x3682fb(0x1c0))),console[_0x3682fb(0x181)]();const _0x18b13c=_0x2d273b[_0x3682fb(0x180)]?CLI_BIN_NAME+_0x3682fb(0x1df):_0x3682fb(0x1db)+_0x1c2652[_0x3682fb(0x1ae)]+_0x3682fb(0x189)+CLI_BIN_NAME+_0x3682fb(0x1df);console[_0x3682fb(0x181)](_0x3682fb(0x198)+a203_0x1caa83[_0x3682fb(0x1a8)]['bold'](_0x18b13c)),_0x276983&&console['log'](_0x3682fb(0x18d)+a203_0x1caa83['cyan']['bold'](CLI_BIN_NAME+_0x3682fb(0x179))),console[_0x3682fb(0x181)](a203_0x1caa83['green']('─'[_0x3682fb(0x1b9)](0x3c)));}catch(_0x4ce9fa){logger['error']('create',_0x3682fb(0x19a)+_0x1c2652['projectName'],{'error':_0x4ce9fa instanceof Error?_0x4ce9fa[_0x3682fb(0x1ba)]:String(_0x4ce9fa)});try{const _0x43fd41=readDirectoryIdentity(_0x18901a);if(_0x2d273b['currentDir']&&_0x465e60)a203_0x4c92f9[_0x3682fb(0x1d0)](_0x465e60,{'recursive':!![],'force':!![]});else{if(_0x2a240c&&_0x43fd41?.[_0x3682fb(0x182)]===_0x2a240c[_0x3682fb(0x182)]&&_0x43fd41['ino']===_0x2a240c[_0x3682fb(0x195)])console['log'](_0x3682fb(0x1a4)+_0x18901a),a203_0x4c92f9[_0x3682fb(0x1d0)](_0x18901a,{'recursive':!![],'force':!![]});else _0x43fd41&&logger[_0x3682fb(0x1a0)](_0x3682fb(0x1ce),_0x3682fb(0x1d1)+_0x18901a);}}catch{logger[_0x3682fb(0x1a0)](_0x3682fb(0x1ce),'Failed\x20to\x20clean\x20up\x20project\x20directory:\x20'+_0x18901a);}throw _0x4ce9fa;}}async function runTask(_0x56386f,_0x2877a6,_0x296904=_0x56386f){const _0x2787da=a203_0x3f88,_0xe42af7=a203_0x195e04(_0x56386f+_0x2787da(0x1ad))[_0x2787da(0x1b8)]();try{const _0x351037=await _0x2877a6(_0x58c110=>{const _0x355447=_0x2787da;_0xe42af7[_0x355447(0x18a)]=_0x58c110+'...';});_0xe42af7[_0x2787da(0x19b)](),console[_0x2787da(0x181)](''+a203_0x1caa83[_0x2787da(0x1a6)](_0x2787da(0x1d8))+_0x296904+'\x20'+a203_0x1caa83[_0x2787da(0x178)]('['+_0x351037+']'));}catch(_0x231774){_0xe42af7[_0x2787da(0x19d)](_0x56386f);throw _0x231774;}}function projectTemplateStageLabel(_0x368609){const _0x4fdf11=a203_0x3f88;switch(_0x368609){case'resolving':return _0x4fdf11(0x1c3);case'downloading':return _0x4fdf11(0x1a3);case _0x4fdf11(0x1bb):return _0x4fdf11(0x1a1);case _0x4fdf11(0x1af):return'Extracting\x20project\x20template';case'copying':return _0x4fdf11(0x185);}}async function updatePackageJsonName(_0x4cfffd,_0x5b1219){const _0x3f15cc=a203_0x3f88,_0x356bb3=a203_0xbc9756[_0x3f15cc(0x1c5)](process[_0x3f15cc(0x183)](),_0x4cfffd),_0x4b283f=a203_0xbc9756['join'](_0x356bb3,'package.json');try{console[_0x3f15cc(0x181)]('*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields');const _0x60d8d8=getRabetbaseCliPackageRoot(),_0x5e424a=a203_0xbc9756[_0x3f15cc(0x1de)](_0x60d8d8,_0x3f15cc(0x1a7));let _0x117461=_0x3f15cc(0x1cd);try{const _0x56a2e7=JSON[_0x3f15cc(0x18f)](a203_0x4c92f9[_0x3f15cc(0x1b5)](_0x5e424a,'utf8'));_0x117461=_0x56a2e7[_0x3f15cc(0x1b3)]||_0x3f15cc(0x1cd);}catch{}const _0x92405a=a203_0x4c92f9[_0x3f15cc(0x1b5)](_0x4b283f,_0x3f15cc(0x197)),_0x450838=JSON[_0x3f15cc(0x18f)](_0x92405a);_0x450838[_0x3f15cc(0x1c4)]=_0x5b1219,_0x450838[_0x3f15cc(0x1dc)]=_0x5b1219+_0x3f15cc(0x19e)+_0x117461,a203_0x4c92f9['writeFileSync'](_0x4b283f,JSON[_0x3f15cc(0x18e)](_0x450838,null,0x2)+'\x0a',_0x3f15cc(0x197)),console[_0x3f15cc(0x181)](_0x3f15cc(0x1b1)+_0x5b1219),logger[_0x3f15cc(0x1be)](_0x3f15cc(0x1ce),_0x3f15cc(0x1a2));}catch(_0x5be83e){logger['error'](_0x3f15cc(0x1ce),_0x3f15cc(0x1d3));throw _0x5be83e;}}function a203_0x16fc(){const _0x762a21=['fail','\x20Generated\x20by\x20rabetbase\x20cli\x20','appCode','warn','Verifying\x20project\x20template','Updating\x20package.json\x20name','Downloading\x20project\x20template','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','minimumVersion','green','package.json','cyan','!\x20Project\x20created,\x20but\x20local\x20logging\x20could\x20not\x20be\x20initialized:\x20','push','lstatSync','keys','...','projectName','extracting','4790eGGutL','√\x20package.json\x20updated:\x20name=','constants','version','string','readFileSync','√\x20Pulled\x20','belowMinimum','start','repeat','message','verifying','toLocaleString','2357325ydiJFQ','info','\x20model(s)','🚀\x20Next\x20Steps:','chdir','Remove\x20or\x20move\x20the\x20existing\x20files,\x20then\x20retry\x20with\x20--current-dir.','Resolving\x20project\x20template','name','resolve','\x20|\x20Default:\x20implicit\x20(single\x20app)','Project\x20template\x20ready','\x20|\x20AppCode:\x20','accessSync','production','readdirSync','cookie','1.0.0','create','546880ZBISOQ','rmSync','Skip\x20cleanup:\x20project\x20directory\x20ownership\x20changed:\x20','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20','Failed\x20to\x20update\x20package.json','reverse','Current\x20directory\x20identity\x20changed\x20during\x20project\x20creation','validation','Format\x20code','\x20√\x20','API\x20configuration\x20pulled:\x20','length','cd\x20','description','basename','join','\x20run\x20start','needsUpgrade','2974272qkMVUu','existsSync','W_OK','The\x20current\x20directory\x20changed\x20during\x20project\x20creation.','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27','2780BTRBDK','25498yuLTGH','2516dsyQun','CLI\x20version\x20check','459ipxUWO','gray','\x20api\x20pull\x20--force\x20--yes','templateSource','projectCode','relative','*\x20Pulling\x20API\x20configuration...','The\x20current\x20directory\x20must\x20be\x20empty.','stableVersion','currentDir','log','dev','cwd','45JmSRTM','Copying\x20local\x20template\x20source','139930jFyODh','env','\x20config\x20set\x20appcode\x20<app-code>\x27','\x20&&\x20','text','renameSync','isDirectory','\x20\x202.\x20Pull\x20API\x20configuration:\x20','stringify','parse','Project\x20directory\x20','apps','Starting\x20project\x20creation:\x20','dirname','332CfeAsp','ino','nonInteractive','utf8','\x20\x201.\x20Start\x20project:\x20','project','Project\x20creation\x20failed:\x20','stop','Project\x20created:\x20'];a203_0x16fc=function(){return _0x762a21;};return a203_0x16fc();}async function configureAppCode(_0x2b8b94,_0x39ef60,_0x1842fd,_0x315ab4){const _0xfbb796=a203_0x3f88,_0x4a6504=a203_0xbc9756[_0xfbb796(0x1c5)](process['cwd'](),_0x2b8b94),_0x4e768f=a203_0xbc9756[_0xfbb796(0x1de)](_0x4a6504,NEW_CONFIG_NAME);try{_0x1842fd?console[_0xfbb796(0x181)]('*\x20Configuring\x20AppCode\x20for\x20project\x20'+_0x39ef60+':\x20'+_0x1842fd):console[_0xfbb796(0x181)]('*\x20Creating\x20configuration\x20file\x20for\x20project\x20'+_0x39ef60);const _0x7ea803=getRabetbaseCliPackageRoot(),_0x1178e9=a203_0xbc9756[_0xfbb796(0x1de)](_0x7ea803,_0xfbb796(0x1a7));let _0x2efd88='1.0.0';try{const _0x67ca9=JSON[_0xfbb796(0x18f)](a203_0x4c92f9[_0xfbb796(0x1b5)](_0x1178e9,_0xfbb796(0x197)));_0x2efd88=_0x67ca9[_0xfbb796(0x1b3)]||'1.0.0';}catch{}const {globalConfig:_0x85aca3}=loadRawConfigLayers(),_0x603c2=typeof _0x85aca3[_0xfbb796(0x187)]===_0xfbb796(0x1b4)?_0x85aca3['env']:undefined,_0x51d98a={};for(const _0x310292 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x85aca3[_0x310292]!=null)_0x51d98a[_0x310292]=_0x85aca3[_0x310292];}const _0x874451=buildCanonicalProjectConfig(_0x51d98a,{'appCodes':_0x1842fd?[_0x1842fd]:[],'env':_0x315ab4||_0x603c2||'production','metadata':{'createdAt':new Date()[_0xfbb796(0x1bc)](),'version':_0x2efd88}});writeConfigFile(_0x4e768f,_0x874451),await generateSdkConfigFile(a203_0xbc9756[_0xfbb796(0x1de)](_0x4a6504,DEFAULT_API_DIR),getSdkClientRoutingConfig()),writeProjectDomainRoutingManifest(_0x4a6504),_0x1842fd?console[_0xfbb796(0x181)]('√\x20Configuration\x20file\x20created,\x20Apps:\x20'+Object[_0xfbb796(0x1ac)](_0x874451[_0xfbb796(0x191)]||{})[_0xfbb796(0x1de)](',\x20')+_0xfbb796(0x1c6)):console[_0xfbb796(0x181)](_0xfbb796(0x1e5)+CLI_BIN_NAME+_0xfbb796(0x188)),logger[_0xfbb796(0x1be)](_0xfbb796(0x1ce),'Configured\x20app\x20AppCode:\x20'+_0x1842fd);}catch(_0x55409d){logger['error']('create','Failed\x20to\x20configure\x20app\x20AppCode');throw _0x55409d;}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a204_0x50b9cb=a204_0x3c6c;(function(_0x3bb164,_0x218b85){const _0x93c3d5=a204_0x3c6c,_0x278643=_0x3bb164();while(!![]){try{const _0xec7cda=-parseInt(_0x93c3d5(0x166))/0x1*(-parseInt(_0x93c3d5(0x19a))/0x2)+parseInt(_0x93c3d5(0x18c))/0x3*(-parseInt(_0x93c3d5(0x188))/0x4)+parseInt(_0x93c3d5(0x19d))/0x5+-parseInt(_0x93c3d5(0x145))/0x6*(-parseInt(_0x93c3d5(0x15b))/0x7)+parseInt(_0x93c3d5(0x16a))/0x8*(-parseInt(_0x93c3d5(0x18a))/0x9)+-parseInt(_0x93c3d5(0x150))/0xa+parseInt(_0x93c3d5(0x1b4))/0xb;if(_0xec7cda===_0x218b85)break;else _0x278643['push'](_0x278643['shift']());}catch(_0x2e1a60){_0x278643['push'](_0x278643['shift']());}}}(a204_0x321a,0xac5ca));import{createHash}from'node:crypto';import a204_0xaebcec from'node:fs/promises';import a204_0x2774ce from'node:path';import a204_0x2df993 from'semver';function a204_0x321a(){const _0x54b62d=['Use\x20a\x20different\x20project\x20name.','number','CDN\x20config\x20does\x20not\x20define\x20template\x20\x22','copyFile','cancel','verifying','package.json','from','update','.rabetbase','3474569boYjgD','CDN\x20project\x20template\x20relative\x20URL\x20must\x20match\x20its\x20release\x20channel\x20or\x20version.','dirname','CDN\x20project\x20template\x20exceeds\x20the\x2020\x20MB\x20download\x20limit.','ENOENT','readFile','message','Choose\x20an\x20output\x20directory\x20outside\x20the\x20template\x20source.','validation','.lovrabet.json','join','3asISYT','pathname','.git','valid','136RVuCNI','parse','sha256:','Local\x20project\x20template\x20contains\x20a\x20local-only\x20entry:\x20','release','template.zip','mode','protocol','utf8','get','dist','Invalid\x20local\x20template\x20source:\x20','code','byteLength','EEXIST','Local\x20template\x20source\x20does\x20not\x20exist:\x20','digest','push','resolving','string','.idea','lstat',',\x20received\x20','cdn','releaseLock','arrayBuffer','version','trim','CDN\x20project\x20template\x20checksum\x20verification\x20failed.','isDirectory','4776RWgHCB','Local\x20template\x20source\x20is\x20not\x20a\x20directory:\x20','511839nQWJCn','Local\x20template\x20source\x20and\x20project\x20output\x20must\x20not\x20overlap.','153HKjhRq','url','node_modules','signal','readdir','Check\x20your\x20network\x20and\x20retry.\x20Details:\x20','.DS_Store','project','Project\x20directory\x20already\x20exists:\x20','startsWith','mkdir','name','Unable\x20to\x20claim\x20the\x20project\x20directory.','headers','470342JUdHjR','content-length','downloading','2510350SAwhaN','posix','mkdtemp','access','abort','object','test','getReader','href','config','Project\x20template\x20package.json\x20is\x20invalid.','.codegraph','legacyAssetBaseUrl','copying','ino','application/zip','CDN\x20config\x20contains\x20an\x20invalid\x20descriptor\x20for\x20\x22','status','size','writeFile','Check\x20the\x20source\x20directory\x20and\x20retry.','realpath','toLowerCase','2991956klEEhj','local','basename','.env','https:','CDN\x20project\x20template\x20URL\x20must\x20use\x20the\x20trusted\x20HTTPS\x20origin.','CDN\x20project\x20template\x20size\x20mismatch:\x20expected\x20','.rabetbase-create-','isFile','isSymbolicLink','extracting','sep','includes','Unable\x20to\x20download\x20a\x20valid\x20project\x20template\x20from\x20CDN.','length','sha256','Local\x20project\x20template\x20must\x20not\x20contain\x20symlinks:\x20','6HQXztM','resolve','body','.env.','rename','concat','Choose\x20a\x20different\x20project\x20name\x20or\x20remove\x20the\x20directory\x20first.','CDN\x20project\x20template\x20exceeds\x20its\x20declared\x20download\x20size.','has','dev','origin','2422510MgPPdy'];a204_0x321a=function(){return _0x54b62d;};return a204_0x321a();}import{getProjectTemplateRelativeUrl}from'../../../constant/cdn.js';import{extractProjectTemplateArchive}from'../../../commands/project/create/project-template-archive.js';import{fetchProjectTemplateCdnConfig,isBetaCliVersion,resolveProjectTemplateDescriptor}from'../../../utils/cli-version-policy.js';import{getCliVersion}from'../../../utils/version.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(_0x319ada){const _0x1f8512=a204_0x3c6c;return typeof _0x319ada===_0x1f8512(0x17d)&&_0x319ada[_0x1f8512(0x185)]()?_0x319ada[_0x1f8512(0x185)]():null;}function parseDescriptor(_0x59d03b){const _0x2fb3ce=a204_0x3c6c;if(!_0x59d03b||typeof _0x59d03b!==_0x2fb3ce(0x1a2))throw new Error(_0x2fb3ce(0x153)+TEMPLATE_ID+'\x22.');const _0x261f06=_0x59d03b,_0x555192=nonEmptyString(_0x261f06['version']),_0x7093c6=nonEmptyString(_0x261f06[_0x2fb3ce(0x197)]),_0x501309=_0x261f06[_0x2fb3ce(0x18d)]===undefined?undefined:nonEmptyString(_0x261f06[_0x2fb3ce(0x18d)])||undefined,_0x443c97=nonEmptyString(_0x261f06['sha256'])?.[_0x2fb3ce(0x1b3)](),_0x3076b1=_0x261f06[_0x2fb3ce(0x1af)];if(!_0x555192||!a204_0x2df993[_0x2fb3ce(0x169)](_0x555192)||!_0x7093c6||_0x7093c6!==a204_0x2774ce[_0x2fb3ce(0x19e)]['basename'](_0x7093c6)||_0x7093c6[_0x2fb3ce(0x140)]('\x5c')||_0x261f06[_0x2fb3ce(0x18d)]!==undefined&&!_0x501309||!_0x443c97||!/^sha256:[a-f0-9]{64}$/[_0x2fb3ce(0x1a3)](_0x443c97)||typeof _0x3076b1!==_0x2fb3ce(0x152)||!Number['isSafeInteger'](_0x3076b1)||_0x3076b1<=0x0||_0x3076b1>MAX_ARCHIVE_SIZE)throw new Error(_0x2fb3ce(0x1ad)+TEMPLATE_ID+'\x22.');return{'version':_0x555192,'name':_0x7093c6,'url':_0x501309,'sha256':_0x443c97,'size':_0x3076b1};}function a204_0x3c6c(_0x112d40,_0x40e1ed){_0x112d40=_0x112d40-0x139;const _0x321a08=a204_0x321a();let _0x3c6c15=_0x321a08[_0x112d40];return _0x3c6c15;}async function fetchWithTimeout(_0x30189f,_0x20f07c,_0x340aa6,_0x2c7cb6){const _0x501d7f=a204_0x3c6c,_0x135e12=new AbortController(),_0x1a69c8=setTimeout(()=>_0x135e12[_0x501d7f(0x1a1)](),_0x20f07c);try{const _0x3847ea=await fetch(_0x30189f,{'headers':{'Accept':_0x340aa6},'redirect':'error','signal':_0x135e12[_0x501d7f(0x18f)]});return await _0x2c7cb6(_0x3847ea);}finally{clearTimeout(_0x1a69c8);}}async function fetchTemplateDescriptor(){const _0x35957f=a204_0x3c6c,_0x1088b4=getCliVersion(),_0x43a7c8=isBetaCliVersion(_0x1088b4)?'beta':_0x35957f(0x16e),_0x170d65=await fetchProjectTemplateCdnConfig();if(!_0x170d65)throw new Error('Rabetbase\x20CDN\x20config\x20is\x20unavailable.');const _0x2f62cb=parseDescriptor(resolveProjectTemplateDescriptor(_0x170d65[_0x35957f(0x1a6)],_0x1088b4));return{'descriptor':_0x2f62cb,'channel':_0x43a7c8,'assetBaseUrl':_0x170d65['assetBaseUrl'],'legacyAssetBaseUrl':_0x170d65[_0x35957f(0x1a9)]};}function resolveArchiveUrl(_0x2df981,_0x46eab0,_0x488d50,_0x5855ac){const _0x7f157f=a204_0x3c6c,_0x1b5954=new URL(_0x488d50+'/'),_0x1d03c6=[getProjectTemplateRelativeUrl(_0x46eab0),getProjectTemplateRelativeUrl(_0x46eab0,_0x2df981['version'])];if(_0x2df981['url']&&!_0x1d03c6[_0x7f157f(0x140)](_0x2df981[_0x7f157f(0x18d)]))throw new Error(_0x7f157f(0x15c));const _0x1311fc=new URL(_0x5855ac+'/'),_0x5ee17e=_0x2df981[_0x7f157f(0x18d)]?new URL(_0x2df981[_0x7f157f(0x18d)],_0x1b5954[_0x7f157f(0x14f)]):new URL(_0x2df981[_0x7f157f(0x197)],_0x1311fc),_0x1d11fa=_0x2df981['url']?_0x1b5954[_0x7f157f(0x14f)]:_0x1311fc[_0x7f157f(0x14f)];if(_0x5ee17e[_0x7f157f(0x171)]!==_0x7f157f(0x1b8)||_0x5ee17e[_0x7f157f(0x14f)]!==_0x1d11fa||a204_0x2774ce[_0x7f157f(0x19e)][_0x7f157f(0x1b6)](decodeURIComponent(_0x5ee17e['pathname']))!==_0x2df981['name']||!_0x2df981[_0x7f157f(0x18d)]&&!_0x5ee17e[_0x7f157f(0x167)][_0x7f157f(0x195)](_0x1311fc['pathname']))throw new Error(_0x7f157f(0x139));return _0x5ee17e[_0x7f157f(0x1a5)];}async function readResponseBytes(_0x5d9d7f,_0x488702){const _0x125730=a204_0x3c6c;if(!_0x5d9d7f[_0x125730(0x147)]){const _0x5c0e18=Buffer['from'](await _0x5d9d7f[_0x125730(0x183)]());if(_0x5c0e18['length']>_0x488702)throw new Error(_0x125730(0x14c));return _0x5c0e18;}const _0x4a43ac=_0x5d9d7f[_0x125730(0x147)][_0x125730(0x1a4)](),_0x560f5d=[];let _0x136d9c=0x0;try{while(!![]){const {done:_0x386ba2,value:_0x326909}=await _0x4a43ac['read']();if(_0x386ba2)break;_0x136d9c+=_0x326909[_0x125730(0x177)];if(_0x136d9c>_0x488702){await _0x4a43ac[_0x125730(0x155)]();throw new Error(_0x125730(0x14c));}_0x560f5d[_0x125730(0x17b)](Buffer[_0x125730(0x158)](_0x326909));}}finally{_0x4a43ac[_0x125730(0x182)]();}return Buffer[_0x125730(0x14a)](_0x560f5d,_0x136d9c);}async function downloadArchive(_0x3da4d0,_0x3d563b,_0x2e191d,_0x13c36a,_0x407212,_0x22b4a9){const _0x76de6b=a204_0x3c6c,_0x1430c6=await fetchWithTimeout(resolveArchiveUrl(_0x3da4d0,_0x3d563b,_0x2e191d,_0x13c36a),ARCHIVE_TIMEOUT_MS,_0x76de6b(0x1ac),async _0x1c4adb=>{const _0x470548=_0x76de6b;if(!_0x1c4adb['ok'])throw new Error('CDN\x20project\x20template\x20request\x20failed\x20with\x20HTTP\x20'+_0x1c4adb[_0x470548(0x1ae)]+'.');const _0x2fba4c=Number(_0x1c4adb[_0x470548(0x199)][_0x470548(0x173)](_0x470548(0x19b)));if(Number['isFinite'](_0x2fba4c)&&_0x2fba4c>MAX_ARCHIVE_SIZE)throw new Error(_0x470548(0x15e));return readResponseBytes(_0x1c4adb,_0x3da4d0[_0x470548(0x1af)]);});if(_0x1430c6[_0x76de6b(0x142)]!==_0x3da4d0[_0x76de6b(0x1af)])throw new Error(_0x76de6b(0x13a)+_0x3da4d0[_0x76de6b(0x1af)]+_0x76de6b(0x180)+_0x1430c6['length']+'.');_0x22b4a9?.(_0x76de6b(0x156));const _0x548f34=_0x76de6b(0x16c)+createHash(_0x76de6b(0x143))[_0x76de6b(0x159)](_0x1430c6)[_0x76de6b(0x17a)]('hex');if(_0x548f34!==_0x3da4d0[_0x76de6b(0x143)])throw new Error(_0x76de6b(0x186));await a204_0xaebcec[_0x76de6b(0x1b0)](_0x407212,_0x1430c6,{'flag':'wx'});}async function assertTemplateRoot(_0x42a7d0){const _0x93c675=a204_0x3c6c,_0x35aba3=a204_0x2774ce[_0x93c675(0x165)](_0x42a7d0,_0x93c675(0x157)),_0x1766f6=JSON[_0x93c675(0x16b)](await a204_0xaebcec[_0x93c675(0x160)](_0x35aba3,_0x93c675(0x172)));if(!_0x1766f6||typeof _0x1766f6!==_0x93c675(0x1a2))throw new Error(_0x93c675(0x1a7));}const LOCAL_FORBIDDEN_NAMES=new Set([a204_0x50b9cb(0x192),a204_0x50b9cb(0x1a8),a204_0x50b9cb(0x168),a204_0x50b9cb(0x17e),a204_0x50b9cb(0x164),'.lovrabet.log',a204_0x50b9cb(0x15a),'.rabetbase.json',a204_0x50b9cb(0x174),a204_0x50b9cb(0x18e)]);function isForbiddenTemplateEntry(_0x219e4d){const _0x2f7d65=a204_0x50b9cb;if(LOCAL_FORBIDDEN_NAMES[_0x2f7d65(0x14d)](_0x219e4d))return!![];return _0x219e4d===_0x2f7d65(0x1b7)||_0x219e4d[_0x2f7d65(0x195)](_0x2f7d65(0x148))&&_0x219e4d!=='.env.example';}function containsPath(_0x180f65,_0x557b37){const _0x287a21=a204_0x50b9cb,_0x36a927=a204_0x2774ce['relative'](_0x180f65,_0x557b37);return _0x36a927===''||!_0x36a927['startsWith']('..'+a204_0x2774ce[_0x287a21(0x13f)])&&_0x36a927!=='..'&&!a204_0x2774ce['isAbsolute'](_0x36a927);}async function copyLocalTemplateDirectory(_0x5ce760,_0x4a25a4){const _0x51e518=a204_0x50b9cb;await a204_0xaebcec[_0x51e518(0x196)](_0x4a25a4,{'recursive':!![]});for(const _0x315189 of await a204_0xaebcec[_0x51e518(0x190)](_0x5ce760,{'withFileTypes':!![]})){const _0x16d823=a204_0x2774ce['join'](_0x5ce760,_0x315189['name']),_0xf7d41f=a204_0x2774ce['join'](_0x4a25a4,_0x315189[_0x51e518(0x197)]);if(isForbiddenTemplateEntry(_0x315189[_0x51e518(0x197)]))throw new Error(_0x51e518(0x16d)+_0x16d823);const _0x574af5=await a204_0xaebcec[_0x51e518(0x17f)](_0x16d823);if(_0x574af5[_0x51e518(0x13d)]())throw new Error(_0x51e518(0x144)+_0x16d823);if(_0x574af5[_0x51e518(0x187)]()){await copyLocalTemplateDirectory(_0x16d823,_0xf7d41f);continue;}if(!_0x574af5[_0x51e518(0x13c)]())continue;await a204_0xaebcec[_0x51e518(0x154)](_0x16d823,_0xf7d41f),await a204_0xaebcec['chmod'](_0xf7d41f,_0x574af5[_0x51e518(0x170)]&0x1ff);}}async function readTemplateVersion(_0x351b67){const _0x252025=a204_0x50b9cb,_0x5304c0=JSON['parse'](await a204_0xaebcec['readFile'](a204_0x2774ce[_0x252025(0x165)](_0x351b67,_0x252025(0x157)),_0x252025(0x172)));return nonEmptyString(_0x5304c0[_0x252025(0x184)])||_0x252025(0x1b5);}async function readDirectoryIdentity(_0x33a011){const _0x34052a=a204_0x50b9cb;try{const _0x124f5d=await a204_0xaebcec[_0x34052a(0x17f)](_0x33a011);if(!_0x124f5d[_0x34052a(0x187)]())return null;return{'dev':_0x124f5d[_0x34052a(0x14e)],'ino':_0x124f5d[_0x34052a(0x1ab)]};}catch{return null;}}async function commitStagedProject(_0x33f2d8,_0x463ade){const _0x2cd57d=a204_0x50b9cb;await a204_0xaebcec[_0x2cd57d(0x196)](_0x463ade);const _0x2eb2c4=await readDirectoryIdentity(_0x463ade);if(!_0x2eb2c4)throw new Error(_0x2cd57d(0x198));try{for(const _0x11829a of await a204_0xaebcec[_0x2cd57d(0x190)](_0x33f2d8)){await a204_0xaebcec[_0x2cd57d(0x149)](a204_0x2774ce[_0x2cd57d(0x165)](_0x33f2d8,_0x11829a),a204_0x2774ce[_0x2cd57d(0x165)](_0x463ade,_0x11829a));}}catch(_0x22bf44){const _0x5d487a=await readDirectoryIdentity(_0x463ade);_0x5d487a?.['dev']===_0x2eb2c4[_0x2cd57d(0x14e)]&&_0x5d487a['ino']===_0x2eb2c4[_0x2cd57d(0x1ab)]&&await a204_0xaebcec['rm'](_0x463ade,{'recursive':!![],'force':!![]});throw _0x22bf44;}}export async function materializeProjectTemplate(_0x4fcbb0,_0x1eadf0){const _0x426ddd=a204_0x50b9cb,_0x245e96=a204_0x2774ce[_0x426ddd(0x146)](_0x4fcbb0),_0x2c4608=a204_0x2774ce[_0x426ddd(0x15d)](_0x245e96);try{await a204_0xaebcec[_0x426ddd(0x17f)](_0x245e96);throw new Error(_0x426ddd(0x194)+_0x245e96);}catch(_0x3f1315){if(_0x3f1315[_0x426ddd(0x176)]!==_0x426ddd(0x15f))throw _0x3f1315;}const _0x452082=await a204_0xaebcec[_0x426ddd(0x19f)](a204_0x2774ce[_0x426ddd(0x165)](_0x2c4608,_0x426ddd(0x13b))),_0x223700=a204_0x2774ce[_0x426ddd(0x165)](_0x452082,_0x426ddd(0x193)),_0x5c350f=a204_0x2774ce['join'](_0x452082,_0x426ddd(0x16f));try{try{_0x1eadf0?.(_0x426ddd(0x17c));const {descriptor:_0x32d10b,channel:_0x5edefb,assetBaseUrl:_0x2d59e9,legacyAssetBaseUrl:_0x739269}=await fetchTemplateDescriptor();return _0x1eadf0?.(_0x426ddd(0x19c)),await downloadArchive(_0x32d10b,_0x5edefb,_0x2d59e9,_0x739269,_0x5c350f,_0x1eadf0),_0x1eadf0?.(_0x426ddd(0x13e)),await extractProjectTemplateArchive(_0x5c350f,_0x223700),await assertTemplateRoot(_0x223700),await commitStagedProject(_0x223700,_0x245e96),{'source':_0x426ddd(0x181),'version':_0x32d10b[_0x426ddd(0x184)]};}catch(_0x52fbb8){if(_0x52fbb8[_0x426ddd(0x176)]===_0x426ddd(0x178))throw CliErrors[_0x426ddd(0x163)](_0x426ddd(0x194)+_0x245e96,_0x426ddd(0x151));const _0x3a526c=_0x52fbb8 instanceof Error?_0x52fbb8[_0x426ddd(0x161)]:String(_0x52fbb8);throw CliErrors[_0x426ddd(0x163)](_0x426ddd(0x141),_0x426ddd(0x191)+_0x3a526c);}}finally{await a204_0xaebcec['rm'](_0x452082,{'recursive':!![],'force':!![]});}}export async function materializeLocalProjectTemplate(_0x27ce0a,_0x5b68de,_0x380b06){const _0x204415=a204_0x50b9cb;let _0x4d434a;try{_0x4d434a=await a204_0xaebcec[_0x204415(0x1b2)](a204_0x2774ce[_0x204415(0x146)](_0x27ce0a));}catch{throw CliErrors[_0x204415(0x163)](_0x204415(0x179)+a204_0x2774ce[_0x204415(0x146)](_0x27ce0a),'Pass\x20a\x20directory\x20containing\x20the\x20template\x20source\x20package.json.');}const _0x59d327=await a204_0xaebcec[_0x204415(0x17f)](_0x4d434a);if(!_0x59d327['isDirectory']())throw CliErrors[_0x204415(0x163)](_0x204415(0x189)+_0x4d434a);const _0x592017=a204_0x2774ce['resolve'](_0x5b68de),_0x32a88d=await a204_0xaebcec[_0x204415(0x1b2)](a204_0x2774ce[_0x204415(0x15d)](_0x592017)),_0x12d238=a204_0x2774ce[_0x204415(0x165)](_0x32a88d,a204_0x2774ce[_0x204415(0x1b6)](_0x592017));if(containsPath(_0x4d434a,_0x12d238)||containsPath(_0x12d238,_0x4d434a))throw CliErrors[_0x204415(0x163)](_0x204415(0x18b),_0x204415(0x162));try{await a204_0xaebcec[_0x204415(0x17f)](_0x12d238);throw CliErrors['validation'](_0x204415(0x194)+_0x12d238,_0x204415(0x14b));}catch(_0x3257dc){if(_0x3257dc['code']!==_0x204415(0x15f))throw _0x3257dc;}const _0x424e1f=a204_0x2774ce[_0x204415(0x15d)](_0x12d238);await a204_0xaebcec[_0x204415(0x1a0)](_0x424e1f);const _0x1c4d10=await a204_0xaebcec['mkdtemp'](a204_0x2774ce[_0x204415(0x165)](_0x424e1f,_0x204415(0x13b))),_0x25956a=a204_0x2774ce[_0x204415(0x165)](_0x1c4d10,_0x204415(0x193));try{_0x380b06?.(_0x204415(0x1aa)),await copyLocalTemplateDirectory(_0x4d434a,_0x25956a),await assertTemplateRoot(_0x25956a);const _0x550d49=await readTemplateVersion(_0x25956a);return await commitStagedProject(_0x25956a,_0x12d238),{'source':_0x204415(0x1b5),'version':_0x550d49};}catch(_0x44456b){const _0x516368=_0x44456b instanceof Error?_0x44456b[_0x204415(0x161)]:String(_0x44456b);throw CliErrors[_0x204415(0x163)](_0x204415(0x175)+_0x516368,_0x204415(0x1b1));}finally{await a204_0xaebcec['rm'](_0x1c4d10,{'recursive':!![],'force':!![]});}}
|
|
1
|
+
const a204_0x23159d=a204_0x3231;(function(_0x1db2f9,_0x41b638){const _0x4a1ea8=a204_0x3231,_0x199572=_0x1db2f9();while(!![]){try{const _0x1fb257=parseInt(_0x4a1ea8(0x234))/0x1*(parseInt(_0x4a1ea8(0x20b))/0x2)+-parseInt(_0x4a1ea8(0x1ed))/0x3+-parseInt(_0x4a1ea8(0x22e))/0x4*(-parseInt(_0x4a1ea8(0x1f0))/0x5)+parseInt(_0x4a1ea8(0x1eb))/0x6*(-parseInt(_0x4a1ea8(0x201))/0x7)+parseInt(_0x4a1ea8(0x1bd))/0x8+-parseInt(_0x4a1ea8(0x1f8))/0x9+parseInt(_0x4a1ea8(0x21d))/0xa*(parseInt(_0x4a1ea8(0x1dc))/0xb);if(_0x1fb257===_0x41b638)break;else _0x199572['push'](_0x199572['shift']());}catch(_0x49456b){_0x199572['push'](_0x199572['shift']());}}}(a204_0x171c,0x4cd0d));import{createHash}from'node:crypto';import a204_0xa0855e from'node:fs/promises';import a204_0x2b8fd4 from'node:path';function a204_0x3231(_0x11ce0d,_0x5928f7){_0x11ce0d=_0x11ce0d-0x1bb;const _0x171c05=a204_0x171c();let _0x323109=_0x171c05[_0x11ce0d];return _0x323109;}import a204_0x53d3bc from'semver';import{getProjectTemplateRelativeUrl}from'../../../constant/cdn.js';import{extractProjectTemplateArchive}from'../../../commands/project/create/project-template-archive.js';import{fetchProjectTemplateCdnConfig,isBetaCliVersion,resolveProjectTemplateDescriptor}from'../../../utils/cli-version-policy.js';import{getCliVersion}from'../../../utils/version.js';import{CliErrors}from'../../../errors.js';const TEMPLATE_ID=a204_0x23159d(0x1e3),ARCHIVE_TIMEOUT_MS=0x3a98,MAX_ARCHIVE_SIZE=0x14*0x400*0x400;function nonEmptyString(_0x771790){const _0x7256bc=a204_0x23159d;return typeof _0x771790===_0x7256bc(0x1f9)&&_0x771790['trim']()?_0x771790['trim']():null;}function parseDescriptor(_0x154a64){const _0x5dddff=a204_0x23159d;if(!_0x154a64||typeof _0x154a64!=='object')throw new Error(_0x5dddff(0x1fa)+TEMPLATE_ID+'\x22.');const _0x495138=_0x154a64,_0xfbe2b0=nonEmptyString(_0x495138[_0x5dddff(0x1e4)]),_0x307182=nonEmptyString(_0x495138[_0x5dddff(0x209)]),_0x127488=_0x495138[_0x5dddff(0x1d1)]===undefined?undefined:nonEmptyString(_0x495138[_0x5dddff(0x1d1)])||undefined,_0x43e242=nonEmptyString(_0x495138[_0x5dddff(0x1f3)])?.[_0x5dddff(0x224)](),_0x5c47d1=_0x495138[_0x5dddff(0x204)];if(!_0xfbe2b0||!a204_0x53d3bc['valid'](_0xfbe2b0)||!_0x307182||_0x307182!==a204_0x2b8fd4[_0x5dddff(0x202)][_0x5dddff(0x20a)](_0x307182)||_0x307182[_0x5dddff(0x218)]('\x5c')||_0x495138[_0x5dddff(0x1d1)]!==undefined&&!_0x127488||!_0x43e242||!/^sha256:[a-f0-9]{64}$/[_0x5dddff(0x221)](_0x43e242)||typeof _0x5c47d1!==_0x5dddff(0x1d3)||!Number[_0x5dddff(0x212)](_0x5c47d1)||_0x5c47d1<=0x0||_0x5c47d1>MAX_ARCHIVE_SIZE)throw new Error(_0x5dddff(0x231)+TEMPLATE_ID+'\x22.');return{'version':_0xfbe2b0,'name':_0x307182,'url':_0x127488,'sha256':_0x43e242,'size':_0x5c47d1};}async function fetchWithTimeout(_0x204a73,_0x498d9e,_0x3fe9f9,_0x247f1b){const _0x1725cf=a204_0x23159d,_0xfcb97=new AbortController(),_0x258ab7=setTimeout(()=>_0xfcb97[_0x1725cf(0x21f)](),_0x498d9e);try{const _0x5f0eaf=await fetch(_0x204a73,{'headers':{'Accept':_0x3fe9f9},'redirect':_0x1725cf(0x1ef),'signal':_0xfcb97[_0x1725cf(0x1de)]});return await _0x247f1b(_0x5f0eaf);}finally{clearTimeout(_0x258ab7);}}async function fetchTemplateDescriptor(){const _0x242134=a204_0x23159d,_0x532ac8=getCliVersion(),_0x50fc44=isBetaCliVersion(_0x532ac8)?'beta':_0x242134(0x1dd),_0x4791ee=await fetchProjectTemplateCdnConfig();if(!_0x4791ee)throw new Error(_0x242134(0x225));const _0x1331e5=parseDescriptor(resolveProjectTemplateDescriptor(_0x4791ee[_0x242134(0x20f)],_0x532ac8));return{'descriptor':_0x1331e5,'channel':_0x50fc44,'assetBaseUrl':_0x4791ee['assetBaseUrl'],'legacyAssetBaseUrl':_0x4791ee[_0x242134(0x230)]};}function resolveArchiveUrl(_0x5871d,_0x1d744c,_0x262925,_0x17b7c3){const _0x2a5121=a204_0x23159d,_0x450126=new URL(_0x262925+'/'),_0xe5318f=[getProjectTemplateRelativeUrl(_0x1d744c),getProjectTemplateRelativeUrl(_0x1d744c,_0x5871d[_0x2a5121(0x1e4)])];if(_0x5871d[_0x2a5121(0x1d1)]&&!_0xe5318f[_0x2a5121(0x218)](_0x5871d[_0x2a5121(0x1d1)]))throw new Error(_0x2a5121(0x1be));const _0x2e0221=new URL(_0x17b7c3+'/'),_0xe2bd3c=_0x5871d[_0x2a5121(0x1d1)]?new URL(_0x5871d[_0x2a5121(0x1d1)],_0x450126[_0x2a5121(0x20e)]):new URL(_0x5871d[_0x2a5121(0x209)],_0x2e0221),_0x4fd8a6=_0x5871d[_0x2a5121(0x1d1)]?_0x450126[_0x2a5121(0x20e)]:_0x2e0221[_0x2a5121(0x20e)];if(_0xe2bd3c['protocol']!==_0x2a5121(0x1c4)||_0xe2bd3c[_0x2a5121(0x20e)]!==_0x4fd8a6||a204_0x2b8fd4['posix'][_0x2a5121(0x20a)](decodeURIComponent(_0xe2bd3c['pathname']))!==_0x5871d['name']||!_0x5871d[_0x2a5121(0x1d1)]&&!_0xe2bd3c['pathname'][_0x2a5121(0x1c3)](_0x2e0221['pathname']))throw new Error(_0x2a5121(0x1e5));return _0xe2bd3c['href'];}async function readResponseBytes(_0xa321dd,_0x46e5f9){const _0x3abba3=a204_0x23159d;if(!_0xa321dd[_0x3abba3(0x20c)]){const _0x5be254=Buffer[_0x3abba3(0x1fd)](await _0xa321dd[_0x3abba3(0x1d0)]());if(_0x5be254['length']>_0x46e5f9)throw new Error(_0x3abba3(0x1e2));return _0x5be254;}const _0x160f42=_0xa321dd[_0x3abba3(0x20c)][_0x3abba3(0x1d8)](),_0x5bf500=[];let _0x4dfa93=0x0;try{while(!![]){const {done:_0x46ed3e,value:_0x57d41}=await _0x160f42[_0x3abba3(0x226)]();if(_0x46ed3e)break;_0x4dfa93+=_0x57d41[_0x3abba3(0x1fe)];if(_0x4dfa93>_0x46e5f9){await _0x160f42[_0x3abba3(0x1c2)]();throw new Error(_0x3abba3(0x1e2));}_0x5bf500[_0x3abba3(0x1fc)](Buffer[_0x3abba3(0x1fd)](_0x57d41));}}finally{_0x160f42[_0x3abba3(0x1bf)]();}return Buffer[_0x3abba3(0x1cc)](_0x5bf500,_0x4dfa93);}async function downloadArchive(_0x21adac,_0x37e389,_0x520cdb,_0x4e4de2,_0x511d8b,_0x1730fc){const _0x4da59d=a204_0x23159d,_0x1a8ecd=await fetchWithTimeout(resolveArchiveUrl(_0x21adac,_0x37e389,_0x520cdb,_0x4e4de2),ARCHIVE_TIMEOUT_MS,_0x4da59d(0x1e6),async _0x2a7b53=>{const _0x17b0c6=_0x4da59d;if(!_0x2a7b53['ok'])throw new Error(_0x17b0c6(0x220)+_0x2a7b53[_0x17b0c6(0x1db)]+'.');const _0x10e955=Number(_0x2a7b53[_0x17b0c6(0x21b)][_0x17b0c6(0x219)](_0x17b0c6(0x233)));if(Number['isFinite'](_0x10e955)&&_0x10e955>MAX_ARCHIVE_SIZE)throw new Error(_0x17b0c6(0x1c6));return readResponseBytes(_0x2a7b53,_0x21adac[_0x17b0c6(0x204)]);});if(_0x1a8ecd[_0x4da59d(0x21c)]!==_0x21adac[_0x4da59d(0x204)])throw new Error('CDN\x20project\x20template\x20size\x20mismatch:\x20expected\x20'+_0x21adac[_0x4da59d(0x204)]+_0x4da59d(0x211)+_0x1a8ecd[_0x4da59d(0x21c)]+'.');_0x1730fc?.(_0x4da59d(0x205));const _0x48c4fb=_0x4da59d(0x206)+createHash('sha256')[_0x4da59d(0x1fb)](_0x1a8ecd)[_0x4da59d(0x1f1)](_0x4da59d(0x216));if(_0x48c4fb!==_0x21adac[_0x4da59d(0x1f3)])throw new Error(_0x4da59d(0x223));await a204_0xa0855e[_0x4da59d(0x1d4)](_0x511d8b,_0x1a8ecd,{'flag':'wx'});}async function assertTemplateRoot(_0x245b43){const _0x47982a=a204_0x23159d,_0xdd35cb=a204_0x2b8fd4[_0x47982a(0x1c8)](_0x245b43,_0x47982a(0x1da)),_0x4614e9=JSON[_0x47982a(0x229)](await a204_0xa0855e['readFile'](_0xdd35cb,_0x47982a(0x1f4)));if(!_0x4614e9||typeof _0x4614e9!=='object')throw new Error(_0x47982a(0x1c5));}const LOCAL_FORBIDDEN_NAMES=new Set([a204_0x23159d(0x1c0),'.codegraph',a204_0x23159d(0x1f7),a204_0x23159d(0x1ea),a204_0x23159d(0x1c1),a204_0x23159d(0x1d7),a204_0x23159d(0x222),'.rabetbase.json','dist',a204_0x23159d(0x20d)]);function isForbiddenTemplateEntry(_0x45ad03){const _0x126cb7=a204_0x23159d;if(LOCAL_FORBIDDEN_NAMES[_0x126cb7(0x208)](_0x45ad03))return!![];return _0x45ad03===_0x126cb7(0x22d)||_0x45ad03[_0x126cb7(0x1c3)](_0x126cb7(0x1e8))&&_0x45ad03!==_0x126cb7(0x232);}function containsPath(_0x47e83c,_0x5b7c80){const _0x1f87ad=a204_0x23159d,_0x4fabb6=a204_0x2b8fd4[_0x1f87ad(0x1c7)](_0x47e83c,_0x5b7c80);return _0x4fabb6===''||!_0x4fabb6[_0x1f87ad(0x1c3)]('..'+a204_0x2b8fd4['sep'])&&_0x4fabb6!=='..'&&!a204_0x2b8fd4['isAbsolute'](_0x4fabb6);}async function copyLocalTemplateDirectory(_0x24274b,_0x3906a7){const _0x387d88=a204_0x23159d;await a204_0xa0855e[_0x387d88(0x1ee)](_0x3906a7,{'recursive':!![]});for(const _0x5743a9 of await a204_0xa0855e[_0x387d88(0x217)](_0x24274b,{'withFileTypes':!![]})){const _0x3577ab=a204_0x2b8fd4[_0x387d88(0x1c8)](_0x24274b,_0x5743a9[_0x387d88(0x209)]),_0x43eaf5=a204_0x2b8fd4[_0x387d88(0x1c8)](_0x3906a7,_0x5743a9[_0x387d88(0x209)]);if(isForbiddenTemplateEntry(_0x5743a9[_0x387d88(0x209)]))throw new Error(_0x387d88(0x22b)+_0x3577ab);const _0x36e9c4=await a204_0xa0855e[_0x387d88(0x1ca)](_0x3577ab);if(_0x36e9c4['isSymbolicLink']())throw new Error(_0x387d88(0x1cb)+_0x3577ab);if(_0x36e9c4[_0x387d88(0x203)]()){await copyLocalTemplateDirectory(_0x3577ab,_0x43eaf5);continue;}if(!_0x36e9c4['isFile']())continue;await a204_0xa0855e[_0x387d88(0x210)](_0x3577ab,_0x43eaf5),await a204_0xa0855e[_0x387d88(0x1c9)](_0x43eaf5,_0x36e9c4['mode']&0x1ff);}}function a204_0x171c(){const _0x25778a=['CDN\x20project\x20template\x20request\x20failed\x20with\x20HTTP\x20','test','.rabetbase','CDN\x20project\x20template\x20checksum\x20verification\x20failed.','toLowerCase','Rabetbase\x20CDN\x20config\x20is\x20unavailable.','read','Use\x20a\x20different\x20project\x20name.','project','parse','validation','Local\x20project\x20template\x20contains\x20a\x20local-only\x20entry:\x20','downloading','.env','4LtaJVf','realpath','legacyAssetBaseUrl','CDN\x20config\x20contains\x20an\x20invalid\x20descriptor\x20for\x20\x22','.env.example','content-length','4HbxeUC','local','ENOENT','1180288ekBgyf','CDN\x20project\x20template\x20relative\x20URL\x20must\x20match\x20its\x20release\x20channel\x20or\x20version.','releaseLock','.DS_Store','.lovrabet.json','cancel','startsWith','https:','Project\x20template\x20package.json\x20is\x20invalid.','CDN\x20project\x20template\x20exceeds\x20the\x2020\x20MB\x20download\x20limit.','relative','join','chmod','lstat','Local\x20project\x20template\x20must\x20not\x20contain\x20symlinks:\x20','concat','dirname','readFile','ino','arrayBuffer','url','Choose\x20a\x20different\x20project\x20name\x20or\x20remove\x20the\x20directory\x20first.','number','writeFile','code','resolve','.lovrabet.log','getReader','Choose\x20an\x20output\x20directory\x20outside\x20the\x20template\x20source.','package.json','status','1139402hIxxVm','release','signal','Unable\x20to\x20claim\x20the\x20project\x20directory.','template.zip','Local\x20template\x20source\x20and\x20project\x20output\x20must\x20not\x20overlap.','CDN\x20project\x20template\x20exceeds\x20its\x20declared\x20download\x20size.','sub-app-react-demo','version','CDN\x20project\x20template\x20URL\x20must\x20use\x20the\x20trusted\x20HTTPS\x20origin.','application/zip','mkdtemp','.env.','Check\x20the\x20source\x20directory\x20and\x20retry.','.idea','117186TNNTtP','EEXIST','718026uNSuXg','mkdir','error','2821505uxclAo','digest','message','sha256','utf8','dev','.rabetbase-create-','.git','5247531meMBvd','string','CDN\x20config\x20does\x20not\x20define\x20template\x20\x22','update','push','from','byteLength','cdn','Project\x20directory\x20already\x20exists:\x20','49GdsfhV','posix','isDirectory','size','verifying','sha256:','resolving','has','name','basename','22004UicBXv','body','node_modules','origin','config','copyFile',',\x20received\x20','isSafeInteger','extracting','copying','Local\x20template\x20source\x20is\x20not\x20a\x20directory:\x20','hex','readdir','includes','get','rename','headers','length','50fXnJoS','access','abort'];a204_0x171c=function(){return _0x25778a;};return a204_0x171c();}async function readTemplateVersion(_0x1795b0){const _0x41323b=a204_0x23159d,_0x462cdd=JSON[_0x41323b(0x229)](await a204_0xa0855e[_0x41323b(0x1ce)](a204_0x2b8fd4[_0x41323b(0x1c8)](_0x1795b0,'package.json'),_0x41323b(0x1f4)));return nonEmptyString(_0x462cdd['version'])||_0x41323b(0x1bb);}async function readDirectoryIdentity(_0x2a4daf){const _0x27b13d=a204_0x23159d;try{const _0x1affc6=await a204_0xa0855e[_0x27b13d(0x1ca)](_0x2a4daf);if(!_0x1affc6[_0x27b13d(0x203)]())return null;return{'dev':_0x1affc6[_0x27b13d(0x1f5)],'ino':_0x1affc6[_0x27b13d(0x1cf)]};}catch{return null;}}async function commitStagedProject(_0x21358b,_0x438809){const _0x1c3cb4=a204_0x23159d;await a204_0xa0855e['mkdir'](_0x438809);const _0x36dc02=await readDirectoryIdentity(_0x438809);if(!_0x36dc02)throw new Error(_0x1c3cb4(0x1df));try{for(const _0xc7a597 of await a204_0xa0855e[_0x1c3cb4(0x217)](_0x21358b)){await a204_0xa0855e[_0x1c3cb4(0x21a)](a204_0x2b8fd4[_0x1c3cb4(0x1c8)](_0x21358b,_0xc7a597),a204_0x2b8fd4[_0x1c3cb4(0x1c8)](_0x438809,_0xc7a597));}}catch(_0x311717){const _0x818114=await readDirectoryIdentity(_0x438809);_0x818114?.[_0x1c3cb4(0x1f5)]===_0x36dc02[_0x1c3cb4(0x1f5)]&&_0x818114[_0x1c3cb4(0x1cf)]===_0x36dc02[_0x1c3cb4(0x1cf)]&&await a204_0xa0855e['rm'](_0x438809,{'recursive':!![],'force':!![]});throw _0x311717;}}export async function materializeProjectTemplate(_0x1bd8c0,_0x2a50ea){const _0xba169c=a204_0x23159d,_0x56cded=a204_0x2b8fd4[_0xba169c(0x1d6)](_0x1bd8c0),_0x3148cc=a204_0x2b8fd4['dirname'](_0x56cded);try{await a204_0xa0855e[_0xba169c(0x1ca)](_0x56cded);throw new Error(_0xba169c(0x200)+_0x56cded);}catch(_0x429093){if(_0x429093[_0xba169c(0x1d5)]!==_0xba169c(0x1bc))throw _0x429093;}const _0x2e1160=await a204_0xa0855e[_0xba169c(0x1e7)](a204_0x2b8fd4[_0xba169c(0x1c8)](_0x3148cc,_0xba169c(0x1f6))),_0x5db50c=a204_0x2b8fd4[_0xba169c(0x1c8)](_0x2e1160,'project'),_0x369de3=a204_0x2b8fd4[_0xba169c(0x1c8)](_0x2e1160,_0xba169c(0x1e0));try{try{_0x2a50ea?.(_0xba169c(0x207));const {descriptor:_0x36fd82,channel:_0x1c7563,assetBaseUrl:_0x56b544,legacyAssetBaseUrl:_0x204b40}=await fetchTemplateDescriptor();return _0x2a50ea?.(_0xba169c(0x22c)),await downloadArchive(_0x36fd82,_0x1c7563,_0x56b544,_0x204b40,_0x369de3,_0x2a50ea),_0x2a50ea?.(_0xba169c(0x213)),await extractProjectTemplateArchive(_0x369de3,_0x5db50c),await assertTemplateRoot(_0x5db50c),await commitStagedProject(_0x5db50c,_0x56cded),{'source':_0xba169c(0x1ff),'version':_0x36fd82[_0xba169c(0x1e4)]};}catch(_0x1af26e){if(_0x1af26e['code']===_0xba169c(0x1ec))throw CliErrors['validation'](_0xba169c(0x200)+_0x56cded,_0xba169c(0x227));const _0x1ec667=_0x1af26e instanceof Error?_0x1af26e[_0xba169c(0x1f2)]:String(_0x1af26e);throw CliErrors[_0xba169c(0x22a)]('Unable\x20to\x20download\x20a\x20valid\x20project\x20template\x20from\x20CDN.','Check\x20your\x20network\x20and\x20retry.\x20Details:\x20'+_0x1ec667);}}finally{await a204_0xa0855e['rm'](_0x2e1160,{'recursive':!![],'force':!![]});}}export async function materializeLocalProjectTemplate(_0x7e9c,_0x53ad2a,_0x4398aa){const _0x2ef613=a204_0x23159d;let _0x454f4d;try{_0x454f4d=await a204_0xa0855e[_0x2ef613(0x22f)](a204_0x2b8fd4['resolve'](_0x7e9c));}catch{throw CliErrors[_0x2ef613(0x22a)]('Local\x20template\x20source\x20does\x20not\x20exist:\x20'+a204_0x2b8fd4['resolve'](_0x7e9c),'Pass\x20a\x20directory\x20containing\x20the\x20template\x20source\x20package.json.');}const _0x5ddd3b=await a204_0xa0855e[_0x2ef613(0x1ca)](_0x454f4d);if(!_0x5ddd3b['isDirectory']())throw CliErrors[_0x2ef613(0x22a)](_0x2ef613(0x215)+_0x454f4d);const _0x38bec5=a204_0x2b8fd4[_0x2ef613(0x1d6)](_0x53ad2a),_0x2633e8=await a204_0xa0855e[_0x2ef613(0x22f)](a204_0x2b8fd4[_0x2ef613(0x1cd)](_0x38bec5)),_0x145d96=a204_0x2b8fd4['join'](_0x2633e8,a204_0x2b8fd4[_0x2ef613(0x20a)](_0x38bec5));if(containsPath(_0x454f4d,_0x145d96)||containsPath(_0x145d96,_0x454f4d))throw CliErrors[_0x2ef613(0x22a)](_0x2ef613(0x1e1),_0x2ef613(0x1d9));try{await a204_0xa0855e[_0x2ef613(0x1ca)](_0x145d96);throw CliErrors[_0x2ef613(0x22a)](_0x2ef613(0x200)+_0x145d96,_0x2ef613(0x1d2));}catch(_0x334167){if(_0x334167[_0x2ef613(0x1d5)]!==_0x2ef613(0x1bc))throw _0x334167;}const _0x3ab333=a204_0x2b8fd4[_0x2ef613(0x1cd)](_0x145d96);await a204_0xa0855e[_0x2ef613(0x21e)](_0x3ab333);const _0x2b1ebc=await a204_0xa0855e[_0x2ef613(0x1e7)](a204_0x2b8fd4[_0x2ef613(0x1c8)](_0x3ab333,_0x2ef613(0x1f6))),_0x25fb3c=a204_0x2b8fd4[_0x2ef613(0x1c8)](_0x2b1ebc,_0x2ef613(0x228));try{_0x4398aa?.(_0x2ef613(0x214)),await copyLocalTemplateDirectory(_0x454f4d,_0x25fb3c),await assertTemplateRoot(_0x25fb3c);const _0xbbb84d=await readTemplateVersion(_0x25fb3c);return await commitStagedProject(_0x25fb3c,_0x145d96),{'source':_0x2ef613(0x1bb),'version':_0xbbb84d};}catch(_0x5695c3){const _0x3b41e4=_0x5695c3 instanceof Error?_0x5695c3[_0x2ef613(0x1f2)]:String(_0x5695c3);throw CliErrors[_0x2ef613(0x22a)]('Invalid\x20local\x20template\x20source:\x20'+_0x3b41e4,_0x2ef613(0x1e9));}finally{await a204_0xa0855e['rm'](_0x2b1ebc,{'recursive':!![],'force':!![]});}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a205_0x5095(){const _0x6aa996=['1pNVOHv','validation','\x20characters','length','test','19528oUlepJ','trim','1227531UNbrvu','Use\x20a\x20portable\x20directory\x20name\x20without\x20path\x20separators.','195108xZhQpr','Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_','5249316szzeZN','526830KrLECR','153NXDdIP','Project\x20name\x20cannot\x20be\x20empty','Project\x20name\x20cannot\x20exceed\x20','Project\x20name\x20\x22','2276716XZjxTP','1969RUYidf','3899OOTmAp','55janPMB','26470LwBfQC'];a205_0x5095=function(){return _0x6aa996;};return a205_0x5095();}(function(_0x5a0ae8,_0x4b1121){const _0x2c0882=a205_0x3ff4,_0x2ca1a9=_0x5a0ae8();while(!![]){try{const _0x4b6014=-parseInt(_0x2c0882(0xce))/0x1*(-parseInt(_0x2c0882(0xc9))/0x2)+parseInt(_0x2c0882(0xd5))/0x3+-parseInt(_0x2c0882(0xd9))/0x4+-parseInt(_0x2c0882(0xcc))/0x5*(parseInt(_0x2c0882(0xda))/0x6)+-parseInt(_0x2c0882(0xcb))/0x7*(parseInt(_0x2c0882(0xd3))/0x8)+-parseInt(_0x2c0882(0xdb))/0x9*(-parseInt(_0x2c0882(0xcd))/0xa)+-parseInt(_0x2c0882(0xca))/0xb*(-parseInt(_0x2c0882(0xd7))/0xc);if(_0x4b6014===_0x4b1121)break;else _0x2ca1a9['push'](_0x2ca1a9['shift']());}catch(_0x5c4a0d){_0x2ca1a9['push'](_0x2ca1a9['shift']());}}}(a205_0x5095,0xd3332));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(_0x612db2){const _0x52e935=a205_0x3ff4,_0x22b94f=_0x612db2[_0x52e935(0xd4)]();if(!_0x22b94f)return _0x52e935(0xdc);if(_0x22b94f[_0x52e935(0xd1)]>MAX_PROJECT_NAME_LENGTH)return _0x52e935(0xdd)+MAX_PROJECT_NAME_LENGTH+_0x52e935(0xd0);if(!PROJECT_NAME_PATTERN['test'](_0x22b94f))return _0x52e935(0xd8);if(WINDOWS_RESERVED_NAME[_0x52e935(0xd2)](_0x22b94f))return _0x52e935(0xde)+_0x22b94f+'\x22\x20is\x20reserved\x20on\x20Windows';return null;}function a205_0x3ff4(_0x46655b,_0x1423b6){_0x46655b=_0x46655b-0xc9;const _0x50952f=a205_0x5095();let _0x3ff4aa=_0x50952f[_0x46655b];return _0x3ff4aa;}export function validateProjectName(_0x13746a){const _0x318de2=a205_0x3ff4,_0x128d0a=_0x13746a[_0x318de2(0xd4)](),_0x413209=getProjectNameValidationError(_0x128d0a);if(_0x413209)throw CliErrors[_0x318de2(0xcf)](_0x413209,_0x318de2(0xd6));return _0x128d0a;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4b4266,_0x4ba132){const _0x1910e9=a206_0x8267,_0x456d3f=_0x4b4266();while(!![]){try{const _0x291287=parseInt(_0x1910e9(0x150))/0x1+-parseInt(_0x1910e9(0x16e))/0x2+-parseInt(_0x1910e9(0x158))/0x3+parseInt(_0x1910e9(0x171))/0x4*(parseInt(_0x1910e9(0x160))/0x5)+parseInt(_0x1910e9(0x17b))/0x6*(-parseInt(_0x1910e9(0x161))/0x7)+-parseInt(_0x1910e9(0x16a))/0x8*(-parseInt(_0x1910e9(0x16c))/0x9)+parseInt(_0x1910e9(0x17a))/0xa;if(_0x291287===_0x4ba132)break;else _0x456d3f['push'](_0x456d3f['shift']());}catch(_0x19f638){_0x456d3f['push'](_0x456d3f['shift']());}}}(a206_0x522a,0x30b6e));import{createWriteStream}from'node:fs';import a206_0x24b68f from'node:fs/promises';import a206_0x51f75b from'node:path';import{pipeline}from'node:stream/promises';import a206_0x5aba3a from'yauzl';function a206_0x8267(_0x464b03,_0x47d810){_0x464b03=_0x464b03-0x150;const _0x522afe=a206_0x522a();let _0x826782=_0x522afe[_0x464b03];return _0x826782;}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(_0x382115){return new Promise((_0x751184,_0x100b0c)=>{const _0x1c7a97=a206_0x8267;a206_0x5aba3a[_0x1c7a97(0x157)](_0x382115,{'lazyEntries':!![],'decodeStrings':!![],'strictFileNames':!![],'validateEntrySizes':!![]},(_0x27e71,_0xbd6266)=>{const _0x2465aa=_0x1c7a97;if(_0x27e71||!_0xbd6266){_0x100b0c(_0x27e71||new Error(_0x2465aa(0x15d)));return;}_0x751184(_0xbd6266);});});}function openEntryStream(_0x17b975,_0x5d04c2){return new Promise((_0x54024d,_0x2f6789)=>{const _0x521a35=a206_0x8267;_0x17b975[_0x521a35(0x156)](_0x5d04c2,(_0x5a6b8c,_0x23483b)=>{const _0x18ebf7=_0x521a35;if(_0x5a6b8c||!_0x23483b){_0x2f6789(_0x5a6b8c||new Error('Unable\x20to\x20read\x20ZIP\x20entry:\x20'+_0x5d04c2[_0x18ebf7(0x16b)]));return;}_0x54024d(_0x23483b);});});}function validateEntryPath(_0x3b676a){const _0x5f58b1=a206_0x8267,_0x5f1f3a=_0x3b676a[_0x5f58b1(0x15e)](/\\/g,'/'),_0x4041f3=_0x5f1f3a[_0x5f58b1(0x15f)]('/'),_0x15d32a=_0x4041f3?_0x5f1f3a['slice'](0x0,-0x1):_0x5f1f3a;if(!_0x15d32a||_0x5f1f3a[_0x5f58b1(0x153)]('/')||/^[A-Za-z]:\//[_0x5f58b1(0x172)](_0x5f1f3a))throw new Error(_0x5f58b1(0x152)+_0x3b676a);const _0xfa2c6=_0x15d32a[_0x5f58b1(0x179)]('/');for(const _0x3d71ae of _0xfa2c6){if(!_0x3d71ae||_0x3d71ae==='.'||_0x3d71ae==='..'||_0x3d71ae[_0x5f58b1(0x15f)]('.')||_0x3d71ae['endsWith']('\x20')||WINDOWS_INVALID_CHAR[_0x5f58b1(0x172)](_0x3d71ae)||WINDOWS_RESERVED_NAME[_0x5f58b1(0x172)](_0x3d71ae))throw new Error(_0x5f58b1(0x164)+_0x3b676a);}return{'relativePath':_0xfa2c6['join'](a206_0x51f75b[_0x5f58b1(0x176)]),'directory':_0x4041f3};}function isSymbolicLink(_0x131d40){const _0x3f60af=a206_0x8267,_0xf8afa9=_0x131d40[_0x3f60af(0x167)]>>>0x10&0xffff;return(_0xf8afa9&0xf000)===0xa000;}export async function extractProjectTemplateArchive(_0x9b0fd6,_0x557654){const _0x11c8d6=a206_0x8267,_0xef7dc5=await openZip(_0x9b0fd6),_0x37df51=a206_0x51f75b['resolve'](_0x557654),_0x5864b4=new Set(),_0x1f42cc=new Map();let _0x37d35f=0x0,_0x59134a=0x0;await a206_0x24b68f[_0x11c8d6(0x177)](_0x37df51,{'recursive':!![]}),await new Promise((_0x15cb9e,_0x497b82)=>{const _0x48da91=_0x11c8d6;let _0x47e26b=![];const _0xd85a2f=_0x2776bc=>{if(_0x47e26b)return;_0x47e26b=!![],_0xef7dc5['close'](),_0x497b82(_0x2776bc instanceof Error?_0x2776bc:new Error(String(_0x2776bc)));};_0xef7dc5['once'](_0x48da91(0x159),_0xd85a2f),_0xef7dc5[_0x48da91(0x15b)]('end',()=>{if(_0x47e26b)return;_0x47e26b=!![],_0x15cb9e();}),_0xef7dc5['on'](_0x48da91(0x154),_0xfeccb9=>{void(async()=>{const _0x22c529=a206_0x8267;_0x37d35f+=0x1,_0x59134a+=_0xfeccb9[_0x22c529(0x15a)];if(_0x37d35f>MAX_ENTRY_COUNT)throw new Error(_0x22c529(0x175)+MAX_ENTRY_COUNT+'\x20entries.');if(_0x59134a>MAX_UNCOMPRESSED_SIZE)throw new Error('Project\x20template\x20ZIP\x20expands\x20beyond\x20the\x2050\x20MB\x20safety\x20limit.');if(_0xfeccb9['isEncrypted']())throw new Error(_0x22c529(0x168)+_0xfeccb9[_0x22c529(0x16b)]);if(isSymbolicLink(_0xfeccb9))throw new Error(_0x22c529(0x162)+_0xfeccb9['fileName']);const {relativePath:_0x4149c1,directory:_0x5e163f}=validateEntryPath(_0xfeccb9[_0x22c529(0x16b)]),_0x4802a2=_0x4149c1[_0x22c529(0x179)](a206_0x51f75b[_0x22c529(0x176)]);for(let _0x800ab1=0x1;_0x800ab1<=_0x4802a2[_0x22c529(0x165)];_0x800ab1+=0x1){const _0x22b515=_0x4802a2[_0x22c529(0x178)](0x0,_0x800ab1)[_0x22c529(0x169)](a206_0x51f75b[_0x22c529(0x176)]),_0x32c947=_0x22b515['toLocaleLowerCase'](_0x22c529(0x163)),_0x44f12d=_0x1f42cc[_0x22c529(0x15c)](_0x32c947);if(_0x44f12d&&_0x44f12d!==_0x22b515)throw new Error(_0x22c529(0x170)+_0xfeccb9[_0x22c529(0x16b)]);_0x1f42cc['set'](_0x32c947,_0x22b515);}const _0x3ffd04=_0x4149c1[_0x22c529(0x174)]('en-US');if(_0x5864b4[_0x22c529(0x16d)](_0x3ffd04))throw new Error(_0x22c529(0x173)+_0xfeccb9[_0x22c529(0x16b)]);_0x5864b4[_0x22c529(0x151)](_0x3ffd04);const _0xdb0586=a206_0x51f75b[_0x22c529(0x166)](_0x37df51,_0x4149c1);if(_0xdb0586!==_0x37df51&&!_0xdb0586[_0x22c529(0x153)](''+_0x37df51+a206_0x51f75b[_0x22c529(0x176)]))throw new Error(_0x22c529(0x17c)+_0xfeccb9[_0x22c529(0x16b)]);if(_0x5e163f)await a206_0x24b68f['mkdir'](_0xdb0586,{'recursive':!![]});else{await a206_0x24b68f[_0x22c529(0x177)](a206_0x51f75b[_0x22c529(0x16f)](_0xdb0586),{'recursive':!![]});const _0x2abdaa=await openEntryStream(_0xef7dc5,_0xfeccb9);await pipeline(_0x2abdaa,createWriteStream(_0xdb0586,{'flags':'wx','mode':0x1a4}));}_0xef7dc5[_0x22c529(0x155)]();})()['catch'](_0xd85a2f);}),_0xef7dc5['readEntry']();});}function a206_0x522a(){const _0x30ec28=['Case-conflicting\x20ZIP\x20entry\x20path:\x20','16656Rgfqct','test','Duplicate\x20or\x20case-conflicting\x20ZIP\x20entry:\x20','toLocaleLowerCase','Project\x20template\x20ZIP\x20exceeds\x20','sep','mkdir','slice','split','3418350lpEuNy','1482xLEAZR','ZIP\x20entry\x20escapes\x20the\x20destination\x20directory:\x20','166010EliJIG','add','Unsafe\x20absolute\x20ZIP\x20entry\x20path:\x20','startsWith','entry','readEntry','openReadStream','open','518937fIYWGo','error','uncompressedSize','once','get','Unable\x20to\x20open\x20project\x20template\x20archive.','replace','endsWith','100ZHnqFQ','9821zsBUMd','Symbolic\x20links\x20are\x20not\x20allowed\x20in\x20project\x20templates:\x20','en-US','Unsafe\x20or\x20non-portable\x20ZIP\x20entry\x20path:\x20','length','resolve','externalFileAttributes','Encrypted\x20ZIP\x20entries\x20are\x20not\x20supported:\x20','join','8YzIABy','fileName','1466334aoTTer','has','69994LTZvRO','dirname'];a206_0x522a=function(){return _0x30ec28;};return a206_0x522a();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x541a3f,_0x3cdad6){const _0x2736b7=a207_0x86b7,_0x27b694=_0x541a3f();while(!![]){try{const _0x313eb5=parseInt(_0x2736b7(0x17d))/0x1*(parseInt(_0x2736b7(0x179))/0x2)+-parseInt(_0x2736b7(0x171))/0x3*(-parseInt(_0x2736b7(0x17e))/0x4)+-parseInt(_0x2736b7(0x173))/0x5*(parseInt(_0x2736b7(0x17f))/0x6)+parseInt(_0x2736b7(0x174))/0x7*(-parseInt(_0x2736b7(0x172))/0x8)+-parseInt(_0x2736b7(0x17c))/0x9*(-parseInt(_0x2736b7(0x177))/0xa)+-parseInt(_0x2736b7(0x178))/0xb+-parseInt(_0x2736b7(0x176))/0xc*(-parseInt(_0x2736b7(0x17b))/0xd);if(_0x313eb5===_0x3cdad6)break;else _0x27b694['push'](_0x27b694['shift']());}catch(_0x1a4685){_0x27b694['push'](_0x27b694['shift']());}}}(a207_0x1faf,0x75571));import a207_0x2ffe82 from'node:path';function a207_0x86b7(_0x4fe1b1,_0x7fd2b5){_0x4fe1b1=_0x4fe1b1-0x171;const _0x1faf92=a207_0x1faf();let _0x86b7f2=_0x1faf92[_0x4fe1b1];return _0x86b7f2;}function a207_0x1faf(){const _0x1b86f6=['resolve','588leBgSx','10uSnQut','2469225deRfRi','132766vEwxZD','../../../../','201981AKvFVL','7582779zvKOme','2uectfe','986836IsBAHx','2861790dVutZB','3pwHyAi','2594312EqTzqR','10vMfYmo','7YhQMgC'];a207_0x1faf=function(){return _0x1b86f6;};return a207_0x1faf();}import{fileURLToPath}from'node:url';const __dirname=a207_0x2ffe82['dirname'](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x465a64=a207_0x86b7;return a207_0x2ffe82[_0x465a64(0x175)](__dirname,_0x465a64(0x17a));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x29bad5,_0x411ab2){const _0x9d264c=a208_0x4b50,_0x48691f=_0x29bad5();while(!![]){try{const _0x57c3fb=-parseInt(_0x9d264c(0xff))/0x1+parseInt(_0x9d264c(0xf6))/0x2+-parseInt(_0x9d264c(0xfb))/0x3+parseInt(_0x9d264c(0x103))/0x4+parseInt(_0x9d264c(0xf4))/0x5+parseInt(_0x9d264c(0x100))/0x6+parseInt(_0x9d264c(0xf5))/0x7*(-parseInt(_0x9d264c(0x104))/0x8);if(_0x57c3fb===_0x411ab2)break;else _0x48691f['push'](_0x48691f['shift']());}catch(_0x213690){_0x48691f['push'](_0x48691f['shift']());}}}(a208_0x1e78,0xef183));function a208_0x1e78(){const _0x37a3a5=['6532256YMwriA','39952TPpKmO','3373165JgkmZh','931QPlXww','2354924gHBRhD','success','resolve','now','cwd','2812470FQuLag','message','version','error','1754994XVaEjn','5105148fYlcAj','Project\x20template\x20created','copy'];a208_0x1e78=function(){return _0x37a3a5;};return a208_0x1e78();}import a208_0x19027f from'node:path';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a208_0x4b50(_0x572f07,_0x10af7b){_0x572f07=_0x572f07-0xf4;const _0x1e78ac=a208_0x1e78();let _0x4b505e=_0x1e78ac[_0x572f07];return _0x4b505e;}import{logger}from'../../../utils/logger.js';import{materializeLocalProjectTemplate,materializeProjectTemplate}from'../../../commands/project/create/materialize-project-template.js';export async function copyProjectTemplate(_0x3b7bcf,_0x31e9a9,_0x2e7e9f){const _0x1f22dc=a208_0x4b50,_0x577873=Date[_0x1f22dc(0xf9)](),_0x363565=a208_0x19027f[_0x1f22dc(0xf8)](process[_0x1f22dc(0xfa)](),_0x3b7bcf);try{logger['info'](_0x1f22dc(0x102),'Starting\x20project\x20template\x20creation',{'projectCode':_0x3b7bcf});const _0x21b231=_0x2e7e9f?await materializeLocalProjectTemplate(_0x2e7e9f,_0x363565,_0x31e9a9):await materializeProjectTemplate(_0x363565,_0x31e9a9),_0x2dded1=Date[_0x1f22dc(0xf9)]()-_0x577873;logger[_0x1f22dc(0xf7)]('copy',_0x1f22dc(0x101),_0x2dded1,{'projectCode':_0x3b7bcf,'templateSource':_0x21b231['source'],'templateVersion':_0x21b231[_0x1f22dc(0xfd)]});}catch(_0x362fa1){const _0x54aa8e=Date[_0x1f22dc(0xf9)]()-_0x577873;logger[_0x1f22dc(0xfe)](_0x1f22dc(0x102),'Failed\x20to\x20copy\x20project\x20template',{'projectCode':_0x3b7bcf,'error':_0x362fa1 instanceof Error?_0x362fa1[_0x1f22dc(0xfc)]:String(_0x362fa1),'duration':_0x54aa8e});throw _0x362fa1;}return formatElapsed(_0x577873);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a209_0x1bf4(){const _0xcece10=['info','Code\x20format\x20completed','45xenWGC','now','22tAqsuw','Starting\x20code\x20format','6RNyiqN','803ELwfTj','33963OJLiHv','error','resolve','1669870lRzrpF','443226bMzEFh','success','52163zDIpeP','881136Zovjig','Code\x20format\x20failed','npx','82310SElmyw','58488HIvSlL','format','prettier','cwd'];a209_0x1bf4=function(){return _0xcece10;};return a209_0x1bf4();}(function(_0x385263,_0x39e6f6){const _0x537e84=a209_0x4708,_0x556c4c=_0x385263();while(!![]){try{const _0x5bd9ec=parseInt(_0x537e84(0x1ef))/0x1+parseInt(_0x537e84(0x1e5))/0x2*(parseInt(_0x537e84(0x1e9))/0x3)+-parseInt(_0x537e84(0x1f0))/0x4+-parseInt(_0x537e84(0x1ec))/0x5*(parseInt(_0x537e84(0x1e7))/0x6)+-parseInt(_0x537e84(0x1ed))/0x7+-parseInt(_0x537e84(0x1f4))/0x8*(-parseInt(_0x537e84(0x1e3))/0x9)+-parseInt(_0x537e84(0x1f3))/0xa*(-parseInt(_0x537e84(0x1e8))/0xb);if(_0x5bd9ec===_0x39e6f6)break;else _0x556c4c['push'](_0x556c4c['shift']());}catch(_0x5f23f2){_0x556c4c['push'](_0x556c4c['shift']());}}}(a209_0x1bf4,0x2ffb8));import a209_0x1bc212 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a209_0x4708(_0x39d5e9,_0x2ad121){_0x39d5e9=_0x39d5e9-0x1de;const _0x1bf4f2=a209_0x1bf4();let _0x4708ef=_0x1bf4f2[_0x39d5e9];return _0x4708ef;}import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x115e38){const _0x14bb1f=a209_0x4708,_0x2fab77=Date[_0x14bb1f(0x1e4)](),_0x4de5d0=a209_0x1bc212[_0x14bb1f(0x1eb)](process[_0x14bb1f(0x1e0)](),_0x115e38);try{logger[_0x14bb1f(0x1e1)](_0x14bb1f(0x1de),_0x14bb1f(0x1e6),{'projectCode':_0x115e38}),await execa(resolveNpmBin(_0x14bb1f(0x1f2)),[_0x14bb1f(0x1df),'--write','.'],{'cwd':_0x4de5d0});const _0x3427f3=Date['now']()-_0x2fab77;logger[_0x14bb1f(0x1ee)](_0x14bb1f(0x1de),_0x14bb1f(0x1e2),_0x3427f3,{'projectCode':_0x115e38});}catch(_0x18db93){const _0x254dfd=Date[_0x14bb1f(0x1e4)]()-_0x2fab77;logger[_0x14bb1f(0x1ea)](_0x14bb1f(0x1de),_0x14bb1f(0x1f1),{'projectCode':_0x115e38,'error':_0x18db93 instanceof Error?_0x18db93['message']:String(_0x18db93),'duration':_0x254dfd});throw _0x18db93;}return formatElapsed(_0x2fab77);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0xb60525,_0x1c0df6){const _0xbcedbc=a210_0x5077,_0xfe3711=_0xb60525();while(!![]){try{const _0x4d8623=-parseInt(_0xbcedbc(0x1c7))/0x1*(-parseInt(_0xbcedbc(0x1b9))/0x2)+-parseInt(_0xbcedbc(0x1be))/0x3+-parseInt(_0xbcedbc(0x1c6))/0x4+-parseInt(_0xbcedbc(0x1ca))/0x5*(parseInt(_0xbcedbc(0x1c8))/0x6)+-parseInt(_0xbcedbc(0x1c4))/0x7*(-parseInt(_0xbcedbc(0x1c9))/0x8)+-parseInt(_0xbcedbc(0x1bc))/0x9+parseInt(_0xbcedbc(0x1bb))/0xa*(parseInt(_0xbcedbc(0x1c0))/0xb);if(_0x4d8623===_0x1c0df6)break;else _0xfe3711['push'](_0xfe3711['shift']());}catch(_0x5a35b4){_0xfe3711['push'](_0xfe3711['shift']());}}}(a210_0x3064,0x5cfa7));import a210_0x2cd45a from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';function a210_0x5077(_0x4c3aba,_0x1a4bbe){_0x4c3aba=_0x4c3aba-0x1b6;const _0x3064d9=a210_0x3064();let _0x5077c6=_0x3064d9[_0x4c3aba];return _0x5077c6;}export async function installDependencies(_0x3f16ce){const _0x4c6ec8=a210_0x5077,_0x1bbdc4=Date['now'](),_0xddb915=a210_0x2cd45a[_0x4c6ec8(0x1c3)](process['cwd'](),_0x3f16ce);try{logger[_0x4c6ec8(0x1c5)](_0x4c6ec8(0x1bd),'Starting\x20dependency\x20install',{'projectCode':_0x3f16ce,'registry':_0x4c6ec8(0x1c2)}),await execa(resolveNpmBin(_0x4c6ec8(0x1b8)),[_0x4c6ec8(0x1bd),_0x4c6ec8(0x1c1),_0x4c6ec8(0x1c2)],{'cwd':_0xddb915});const _0x13b3f8=Date[_0x4c6ec8(0x1bf)]()-_0x1bbdc4;logger[_0x4c6ec8(0x1b6)](_0x4c6ec8(0x1bd),'Dependency\x20install\x20completed',_0x13b3f8,{'projectCode':_0x3f16ce});}catch(_0x513016){const _0x220b1b=Date[_0x4c6ec8(0x1bf)]()-_0x1bbdc4;logger[_0x4c6ec8(0x1b7)]('install',_0x4c6ec8(0x1ba),{'projectCode':_0x3f16ce,'error':_0x513016 instanceof Error?_0x513016['message']:String(_0x513016),'duration':_0x220b1b});throw _0x513016;}return formatElapsed(_0x1bbdc4);}function a210_0x3064(){const _0x27afa5=['2508BKVmkV','--registry','https://registry.npmmirror.com','resolve','8386mbXMPk','info','1717516aQlbYM','5QmgokS','6VMrinM','4328nwtKPi','1402025jkciLc','success','error','npm','83034kbHZUq','Dependency\x20install\x20failed','42260UZGfpb','3539871kFHqdu','install','1005867JkRnxg','now'];a210_0x3064=function(){return _0x27afa5;};return a210_0x3064();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x5dc866,_0x5ce1df){const _0x2793ec=a211_0x3be3,_0x3b0e93=_0x5dc866();while(!![]){try{const _0x4b9f3c=-parseInt(_0x2793ec(0x1dc))/0x1+parseInt(_0x2793ec(0x1e6))/0x2+parseInt(_0x2793ec(0x1db))/0x3*(parseInt(_0x2793ec(0x1e1))/0x4)+-parseInt(_0x2793ec(0x1d9))/0x5+parseInt(_0x2793ec(0x1e4))/0x6*(parseInt(_0x2793ec(0x1e0))/0x7)+parseInt(_0x2793ec(0x1df))/0x8*(parseInt(_0x2793ec(0x1d7))/0x9)+parseInt(_0x2793ec(0x1d8))/0xa*(parseInt(_0x2793ec(0x1e5))/0xb);if(_0x4b9f3c===_0x5ce1df)break;else _0x3b0e93['push'](_0x3b0e93['shift']());}catch(_0x11ce30){_0x3b0e93['push'](_0x3b0e93['shift']());}}}(a211_0x2e52,0xc34a6));import{CliErrors}from'../../errors.js';function a211_0x3be3(_0x40b1d5,_0x578c00){_0x40b1d5=_0x40b1d5-0x1d7;const _0x2e5241=a211_0x2e52();let _0x3be3b4=_0x2e5241[_0x40b1d5];return _0x3be3b4;}function a211_0x2e52(){const _0x3eb0e1=['2119520FEyjKI','No\x20Rabetbase\x20project\x20configuration\x20was\x20found.','12dUEgXG','1422508AMthCv','Run\x20','validation','144UchSNa','14721vAZNjM','1262612EKJlFb','Domain\x20routing\x20synchronized:\x20','path','228yMuhPs','11eftNmD','1496558MIOzvm','67491zrxwjY','4205350wlqmuJ'];a211_0x2e52=function(){return _0x3eb0e1;};return a211_0x2e52();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{findProjectRootDirectory,resolveConfigPath}from'../../context/config-loader.js';import{writeProjectDomainRoutingManifest}from'../../config/project-domain-routing.js';export const projectDomainRoutingSyncDefinition={'service':'project','command':'domain-routing-sync','description':'Synchronize\x20the\x20current\x20project\x27s\x20public\x20Domain\x20routing','risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'flags':[],async 'execute'(){const _0x65e74=a211_0x3be3,_0x37827d=findProjectRootDirectory();if(!resolveConfigPath(_0x37827d))throw CliErrors[_0x65e74(0x1de)](_0x65e74(0x1da),_0x65e74(0x1dd)+CLI_BIN_NAME+'\x20workspace\x20init\x20--appcode\x20<code>\x20in\x20the\x20project\x20directory\x20first.');const _0x5a4859=writeProjectDomainRoutingManifest(_0x37827d);return{'ok':!![],'message':_0x65e74(0x1e2)+_0x5a4859[_0x65e74(0x1e3)],'data':_0x5a4859};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a212_0x1a68e1=a212_0x8614;(function(_0x282649,_0x56010a){const _0x5817d1=a212_0x8614,_0x23fcca=_0x282649();while(!![]){try{const _0x13e724=parseInt(_0x5817d1(0x1a0))/0x1+-parseInt(_0x5817d1(0x194))/0x2*(parseInt(_0x5817d1(0x19c))/0x3)+parseInt(_0x5817d1(0x1ad))/0x4+-parseInt(_0x5817d1(0x1b1))/0x5*(-parseInt(_0x5817d1(0x1b2))/0x6)+-parseInt(_0x5817d1(0x1a5))/0x7*(-parseInt(_0x5817d1(0x18d))/0x8)+parseInt(_0x5817d1(0x19e))/0x9*(-parseInt(_0x5817d1(0x187))/0xa)+-parseInt(_0x5817d1(0x1af))/0xb*(parseInt(_0x5817d1(0x1a1))/0xc);if(_0x13e724===_0x56010a)break;else _0x23fcca['push'](_0x23fcca['shift']());}catch(_0x1b8297){_0x23fcca['push'](_0x23fcca['shift']());}}}(a212_0x5215,0xf01ce));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{analyseProjectUpgrade,upgradeApp}from'../../commands/project/upgrade.js';function a212_0x5215(){const _0x3e971f=['env','template-source','project','2120996nsIRzB','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','1156837EnXSJb','Project\x20upgrade\x20completed\x20with\x20follow-up\x20work.','45JobvWy','941568ybOOHU','3940QPMcoP','name','Upgrade\x20cancelled.','cwd','Project\x20name','current-dir','8fjhNUk','Usage:\x20','appcode','Initialize\x20the\x20current\x20empty\x20directory\x20instead\x20of\x20creating\x20a\x20child\x20directory','../../commands/project/create/main.js','trim','str','1098426jeVeZF','Skip\x20confirmation\x20prompt','Create\x20a\x20new\x20project','nonInteractive','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]\x20from\x20the\x20empty\x20target\x20directory.','string','cookie','3WaAVxN','cancelled','14895gzUTUe','args','449452SzAonx','60obsrCk','create','yes','boolean','2229969yeWlzC','Would\x20upgrade\x20project\x20dependencies\x20and\x20application\x20source\x20structure\x20without\x20overwriting\x20project-owned\x20entrypoints','validation','completed','write'];a212_0x5215=function(){return _0x3e971f;};return a212_0x5215();}function a212_0x8614(_0x23dc46,_0x59df08){_0x23dc46=_0x23dc46-0x187;const _0x52158d=a212_0x5215();let _0x861492=_0x52158d[_0x23dc46];return _0x861492;}import{projectDomainRoutingSyncDefinition}from'../../commands/project/domain-routing-sync.js';const createFlags=[{'name':a212_0x1a68e1(0x188),'type':'string','description':a212_0x1a68e1(0x18b)},{'name':a212_0x1a68e1(0x1aa),'type':a212_0x1a68e1(0x19a),'description':'Target\x20environment'},{'name':'appcode','type':a212_0x1a68e1(0x19a),'description':'App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)'},{'name':a212_0x1a68e1(0x18c),'type':a212_0x1a68e1(0x1a4),'description':a212_0x1a68e1(0x190),'default':![]},{'name':a212_0x1a68e1(0x1ab),'type':a212_0x1a68e1(0x19a),'description':'Prepared\x20local\x20project\x20template\x20directory'}],upgradeFlags=[{'name':'yes','type':a212_0x1a68e1(0x1a4),'description':a212_0x1a68e1(0x195),'default':![]}];export const projectDefinitions=[{'service':'project','command':a212_0x1a68e1(0x1a2),'description':a212_0x1a68e1(0x196),'risk':a212_0x1a68e1(0x1a9),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':'project-name','description':a212_0x1a68e1(0x198),'required':![]}],'flags':createFlags,async 'execute'(_0x69b258){const _0x122ae=a212_0x1a68e1,{createApp:_0x361276}=await import(_0x122ae(0x191)),_0x19572c=_0x69b258[_0x122ae(0x193)](_0x122ae(0x188))[_0x122ae(0x192)]()||_0x69b258[_0x122ae(0x19f)][0x0]?.[_0x122ae(0x192)](),_0x26f6ea=_0x69b258[_0x122ae(0x193)](_0x122ae(0x1aa))||undefined,_0x486c5e=_0x69b258[_0x122ae(0x193)](_0x122ae(0x18f))||undefined,_0x3589cf=_0x69b258[_0x122ae(0x193)](_0x122ae(0x1ab))[_0x122ae(0x192)]()||undefined,_0x4ac9cb=_0x69b258['bool'](_0x122ae(0x18c));if(_0x4ac9cb&&_0x19572c)throw CliErrors[_0x122ae(0x1a7)]('--current-dir\x20cannot\x20be\x20combined\x20with\x20a\x20project\x20name.','Run\x20'+CLI_BIN_NAME+_0x122ae(0x199));if(_0x69b258[_0x122ae(0x197)]){if(!_0x19572c&&!_0x4ac9cb)throw CliErrors[_0x122ae(0x1a7)](_0x122ae(0x1ae),_0x122ae(0x18e)+CLI_BIN_NAME+'\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]\x20or\x20'+CLI_BIN_NAME+'\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]');await _0x361276({'projectCode':_0x19572c,'appCode':_0x486c5e,'env':_0x26f6ea,'cookie':_0x69b258[_0x122ae(0x19b)],'currentDir':_0x4ac9cb,'nonInteractive':!![],'templateSource':_0x3589cf});}else await _0x361276({'projectCode':_0x19572c,'appCode':_0x486c5e,'env':_0x26f6ea,'cookie':_0x69b258[_0x122ae(0x19b)],'currentDir':_0x4ac9cb,'templateSource':_0x3589cf});return{'ok':!![]};}},projectDomainRoutingSyncDefinition,{'service':a212_0x1a68e1(0x1ac),'command':'upgrade','description':'Upgrade\x20project\x20dependencies\x20and\x20application\x20source\x20structure','risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'dryRun'(){const _0x1c1bb3=a212_0x1a68e1,_0x2ed718=analyseProjectUpgrade(process['cwd']());return{'method':'PATCH','url':process[_0x1c1bb3(0x18a)](),'body':_0x2ed718,'description':_0x1c1bb3(0x1a6)};},async 'execute'(_0x5efc39){const _0x4d3c60=a212_0x1a68e1,_0x1eecf4=await upgradeApp(_0x5efc39[_0x4d3c60(0x197)],{'yes':_0x5efc39['bool'](_0x4d3c60(0x1a3))});return{'ok':_0x1eecf4['completed']||_0x1eecf4[_0x4d3c60(0x19d)]===!![],'message':_0x1eecf4[_0x4d3c60(0x19d)]?_0x4d3c60(0x189):_0x1eecf4[_0x4d3c60(0x1a8)]?'Project\x20upgrade\x20completed.':_0x4d3c60(0x1b0),'data':_0x1eecf4};}}];
|