@lovrabet/rabetbase-cli 2.5.2-beta.6 → 2.5.2-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-restore.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/dataset/user-deleted-field-list.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/table-diff-shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/deployment/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/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/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/domain-routing-sync.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/rule/get.js +1 -1
- package/lib/commands/rule/index.js +1 -1
- package/lib/commands/rule/list.js +1 -1
- package/lib/commands/rule/set.js +1 -1
- package/lib/commands/rule/shared.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/project-domain-routing.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/routing-profile.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/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/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 +1 -1
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a19_0x1744(_0x1329be,_0x5f0c20){_0x1329be=_0x1329be-0x1da;const _0x20e8b7=a19_0x20e8();let _0x174483=_0x20e8b7[_0x1329be];return _0x174483;}(function(_0x197ddf,_0x279a18){const _0x100fa0=a19_0x1744,_0x52b07f=_0x197ddf();while(!![]){try{const _0x323b77=-parseInt(_0x100fa0(0x1da))/0x1+-parseInt(_0x100fa0(0x1dd))/0x2*(-parseInt(_0x100fa0(0x1e3))/0x3)+parseInt(_0x100fa0(0x1db))/0x4*(-parseInt(_0x100fa0(0x1dc))/0x5)+parseInt(_0x100fa0(0x1e0))/0x6+parseInt(_0x100fa0(0x1e2))/0x7+parseInt(_0x100fa0(0x1df))/0x8+parseInt(_0x100fa0(0x1e1))/0x9*(-parseInt(_0x100fa0(0x1de))/0xa);if(_0x323b77===_0x279a18)break;else _0x52b07f['push'](_0x52b07f['shift']());}catch(_0xf67d79){_0x52b07f['push'](_0x52b07f['shift']());}}}(a19_0x20e8,0x6f72e));import{appListDefinition}from'../../commands/app/list.js';import{appMembersListDefinition}from'../../commands/app/members-list.js';function a19_0x20e8(){const _0x39b53b=['2620056duIisY','9RatdFT','3717371OqxlrO','459777orSLXm','717126QdEXEG','4BDZRtG','2656670SgRvGs','6lGyGIe','2027420qtYZjf','3841520mlmjXZ'];a19_0x20e8=function(){return _0x39b53b;};return a19_0x20e8();}export const appDefinitions=[appListDefinition,appMembersListDefinition];
|
package/lib/commands/app/list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a20_0x4a89fd=a20_0x3e73;(function(_0x617d58,_0x239a12){const _0x540522=a20_0x3e73,_0x67aa51=_0x617d58();while(!![]){try{const _0x106842=-parseInt(_0x540522(0x89))/0x1+parseInt(_0x540522(0xa4))/0x2+parseInt(_0x540522(0x93))/0x3+parseInt(_0x540522(0x8c))/0x4*(parseInt(_0x540522(0x96))/0x5)+-parseInt(_0x540522(0x98))/0x6+parseInt(_0x540522(0xa3))/0x7+-parseInt(_0x540522(0xab))/0x8;if(_0x106842===_0x239a12)break;else _0x67aa51['push'](_0x67aa51['shift']());}catch(_0x337548){_0x67aa51['push'](_0x67aa51['shift']());}}}(a20_0x3e21,0x6441b));function a20_0x3e21(){const _0x73ed2d=['projectConfig','6787072LXFnLh','map','Use\x20`rabetbase\x20app\x20list\x20--remote`\x20for\x20the\x20platform\x20directory,\x20or\x20`rabetbase\x20app\x20list\x20--global/--project`\x20for\x20local\x20config.','push','projectPath','validation','boolean','301633jBaPyZ','optional','object','48gKFgKd','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','entries','global','bool','length','merged','2251026GIvkXU','remote','\x20workspace\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','195515LUinOQ','isCurrent','4517088uiyCei','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','\x20config','keys','list','defaultApp','globalConfig','app','read','appcode','mergedCli','3778957XYKCdJ','1108174pzhIRQ','find','project','.\x20Use\x20`','apps','globalPath'];a20_0x3e21=function(){return _0x73ed2d;};return a20_0x3e21();}import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';import{listRemoteAppDirectory}from'../../commands/app/remote-directory.js';function buildItemsFromLayer(_0x5e9f41,_0xf24287){const _0x417760=a20_0x3e73,_0x1a4f7b=[],_0x2def81=_0x5e9f41['apps']&&typeof _0x5e9f41['apps']==='object'?_0x5e9f41[_0x417760(0xa8)]:{},_0x226e24=_0x5e9f41[_0x417760(0x9d)]||undefined,_0x54f158=_0x226e24??(Object['keys'](_0x2def81)[_0x417760(0x91)]===0x1?Object[_0x417760(0x9b)](_0x2def81)[0x0]:undefined);for(const [_0x387e20,_0x3f0b49]of Object[_0x417760(0x8e)](_0x2def81)){if(!_0x3f0b49||typeof _0x3f0b49!==_0x417760(0x8b)||!_0x3f0b49[_0x417760(0xa1)])continue;_0x1a4f7b[_0x417760(0x85)]({'name':_0x387e20,'appcode':_0x3f0b49[_0x417760(0xa1)],'named':!![],'definedIn':_0xf24287,'isDefault':_0x387e20===_0x54f158,...buildAppProfileListFields(_0x3f0b49)});}return _0x1a4f7b;}function buildMergedItems(_0x340d79,_0x5a0801){const _0x542d43=a20_0x3e73,{apps:apps={}}=_0x340d79,_0x521f34=_0x340d79['defaultApp'],_0x335e36=_0x521f34??(Object['keys'](apps)[_0x542d43(0x91)]===0x1?Object['keys'](apps)[0x0]:undefined),_0x377972=_0x5a0801[_0x542d43(0x9e)][_0x542d43(0xa8)]&&typeof _0x5a0801[_0x542d43(0x9e)][_0x542d43(0xa8)]===_0x542d43(0x8b)?_0x5a0801[_0x542d43(0x9e)]['apps']:{},_0x2faa2f=_0x5a0801[_0x542d43(0xaa)][_0x542d43(0xa8)]&&typeof _0x5a0801[_0x542d43(0xaa)]['apps']===_0x542d43(0x8b)?_0x5a0801[_0x542d43(0xaa)]['apps']:{},_0x1c45fd=Object[_0x542d43(0x8e)](apps),_0x19b8f8=_0x1c45fd[_0x542d43(0xac)](([_0x20f8d4,_0x17b5a8])=>({'name':_0x20f8d4,'appcode':_0x17b5a8[_0x542d43(0xa1)],'named':!![],'definedIn':appDefinedIn(_0x20f8d4,_0x377972,_0x2faa2f),'isDefault':_0x20f8d4===_0x335e36,...buildAppProfileListFields(_0x17b5a8)}));return _0x19b8f8;}function validateAppListFlags(_0x24001b){const _0x3f0640=a20_0x3e73;if(!_0x24001b['bool'](_0x3f0640(0x94)))return;if(!_0x24001b[_0x3f0640(0x90)](_0x3f0640(0x8f))&&!_0x24001b[_0x3f0640(0x90)](_0x3f0640(0xa6)))return;throw CliErrors[_0x3f0640(0x87)]('`--remote`\x20cannot\x20be\x20used\x20with\x20`--global`\x20or\x20`--project`.',_0x3f0640(0xad));}async function execute(_0x37d320){const _0x1ec0f4=a20_0x3e73;validateAppListFlags(_0x37d320);if(_0x37d320[_0x1ec0f4(0x90)](_0x1ec0f4(0x94)))return{'ok':!![],'data':await listRemoteAppDirectory(_0x37d320)};const _0x35df12=_0x37d320[_0x1ec0f4(0x90)](_0x1ec0f4(0x8f)),_0x290c3e=_0x37d320[_0x1ec0f4(0x90)](_0x1ec0f4(0xa6)),_0x81afcb=_0x35df12?_0x1ec0f4(0x8f):_0x290c3e?'project':_0x1ec0f4(0x92),{config:_0x21093e,layers:_0x899ece}=readRawConfigWithLayers(),_0x5285fb=resolveDefaultAppSource(_0x899ece),{defaultApp:_0x4de897}=_0x21093e;let _0x238ed0,_0x51fa64;switch(_0x81afcb){case _0x1ec0f4(0x8f):_0x238ed0=buildItemsFromLayer(_0x899ece[_0x1ec0f4(0x9e)],_0x1ec0f4(0x8f)),_0x51fa64=_0x899ece['globalPath'];break;case _0x1ec0f4(0xa6):_0x238ed0=buildItemsFromLayer(_0x899ece[_0x1ec0f4(0xaa)],_0x1ec0f4(0xa6)),_0x51fa64=_0x899ece[_0x1ec0f4(0x86)];break;default:_0x238ed0=buildMergedItems(_0x21093e,_0x899ece);break;}enrichAppListItemsWithMergedSelection(_0x238ed0,_0x37d320[_0x1ec0f4(0xa2)]);if(_0x238ed0[_0x1ec0f4(0x91)]===0x0){const _0x50eda5=_0x81afcb===_0x1ec0f4(0x92)?'':'\x20in\x20'+_0x81afcb+_0x1ec0f4(0x9a);return{'ok':!![],'data':[],'message':'No\x20apps\x20configured'+_0x50eda5+_0x1ec0f4(0xa7)+CLI_BIN_NAME+_0x1ec0f4(0x95)};}const _0x122b5f=_0x238ed0[_0x1ec0f4(0xa5)](_0x2ff072=>_0x2ff072[_0x1ec0f4(0x97)]===!![]),_0x5c8b20=_0x4de897??_0x122b5f?.['name']??null,_0x1e929e=_0x81afcb===_0x1ec0f4(0x92)?{'globalPath':_0x899ece[_0x1ec0f4(0xa9)]??null,'projectPath':_0x899ece[_0x1ec0f4(0x86)]??null,'defaultApp':_0x5c8b20,'defaultAppSource':_0x4de897!=null?_0x5285fb:null}:{'scope':_0x81afcb,'configPath':_0x51fa64??null};return{'ok':!![],'data':{'items':_0x238ed0,'meta':_0x1e929e}};}function a20_0x3e73(_0x3e789c,_0x11de1e){_0x3e789c=_0x3e789c-0x85;const _0x3e218d=a20_0x3e21();let _0x3e7349=_0x3e218d[_0x3e789c];return _0x3e7349;}export const appListDefinition={'service':a20_0x4a89fd(0x9f),'command':a20_0x4a89fd(0x9c),'description':'List\x20configured\x20apps,\x20or\x20platform\x20apps\x20with\x20--remote','risk':a20_0x4a89fd(0xa0),'auth':a20_0x4a89fd(0x8a),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a20_0x4a89fd(0x94),'type':a20_0x4a89fd(0x88),'description':'List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','default':![]},{'name':a20_0x4a89fd(0x8f),'type':a20_0x4a89fd(0x88),'description':a20_0x4a89fd(0x99),'default':![]},{'name':a20_0x4a89fd(0xa6),'type':a20_0x4a89fd(0x88),'description':a20_0x4a89fd(0x8d),'default':![]}],async 'validate'(_0x244476){validateAppListFlags(_0x244476);},'execute':execute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a21_0x52f685=a21_0x4930;function a21_0x3d6a(){const _0x19ba47=['1611847ptyTKF','7fNxbUV','read','5hXctwi','10QIrego','1141528mDhOPZ','app','928320ZtBSct','length','1693455yODunz','appCode','11501289RvXkiE','2007668UyOZBx','5769726maskMF'];a21_0x3d6a=function(){return _0x19ba47;};return a21_0x3d6a();}(function(_0x17ffb0,_0x5d4804){const _0x1fc175=a21_0x4930,_0x10beb1=_0x17ffb0();while(!![]){try{const _0x482a38=parseInt(_0x1fc175(0x97))/0x1+parseInt(_0x1fc175(0x9e))/0x2+-parseInt(_0x1fc175(0xa0))/0x3+-parseInt(_0x1fc175(0x95))/0x4+-parseInt(_0x1fc175(0x9a))/0x5*(-parseInt(_0x1fc175(0x96))/0x6)+parseInt(_0x1fc175(0x98))/0x7*(parseInt(_0x1fc175(0x9c))/0x8)+-parseInt(_0x1fc175(0x94))/0x9*(parseInt(_0x1fc175(0x9b))/0xa);if(_0x482a38===_0x5d4804)break;else _0x10beb1['push'](_0x10beb1['shift']());}catch(_0x49692d){_0x10beb1['push'](_0x10beb1['shift']());}}}(a21_0x3d6a,0xcc19c));function a21_0x4930(_0x5cd96f,_0x49ecf7){_0x5cd96f=_0x5cd96f-0x94;const _0x3d6a72=a21_0x3d6a();let _0x493016=_0x3d6a72[_0x5cd96f];return _0x493016;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{projectAppMembers}from'../../commands/app/shared.js';import{listRoleUsers}from'../../core/api-client.js';export const appMembersListDefinition={'service':a21_0x52f685(0x9d),'command':'members-list','description':'List\x20application\x20members\x20with\x20their\x20role\x20memberships','risk':a21_0x52f685(0x99),'requiresAuth':!![],'requiresAppCode':!![],'structuredErrors':!![],'flags':[APPCODE_FLAG_OPTIONAL],async 'execute'(_0x5a2aac){const _0x44c7fa=a21_0x52f685,_0x1ea569=projectAppMembers(await listRoleUsers(_0x5a2aac[_0x44c7fa(0xa1)]));return{'ok':!![],'data':{'appCode':_0x5a2aac[_0x44c7fa(0xa1)],'items':_0x1ea569,'totalCount':_0x1ea569[_0x44c7fa(0x9f)]},'message':'Found\x20'+_0x1ea569[_0x44c7fa(0x9f)]+'\x20application\x20member(s)'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x40c15f,_0x37f27f){const _0x21acfc=a22_0x4382,_0x2ad690=_0x40c15f();while(!![]){try{const _0xf0ffdd=-parseInt(_0x21acfc(0x13c))/0x1*(-parseInt(_0x21acfc(0x13a))/0x2)+-parseInt(_0x21acfc(0x13b))/0x3+parseInt(_0x21acfc(0x137))/0x4*(parseInt(_0x21acfc(0x139))/0x5)+-parseInt(_0x21acfc(0x138))/0x6+parseInt(_0x21acfc(0x12f))/0x7*(parseInt(_0x21acfc(0x132))/0x8)+parseInt(_0x21acfc(0x131))/0x9*(-parseInt(_0x21acfc(0x12e))/0xa)+parseInt(_0x21acfc(0x130))/0xb*(parseInt(_0x21acfc(0x134))/0xc);if(_0xf0ffdd===_0x37f27f)break;else _0x2ad690['push'](_0x2ad690['shift']());}catch(_0x160e4b){_0x2ad690['push'](_0x2ad690['shift']());}}}(a22_0x3d05,0x87489));function a22_0x3d05(){const _0x4e4abb=['2233ASoQUH','943481LfkVRs','315QzMRkh','264yXcHHs','platform','48bgTToR','appName','authRequired','28UcHOMm','2353518ScuZSm','559035ZeqFGX','38hfhHBO','998052WPXPCJ','55217HGMYzf','appDesc','258950eCNEvC'];a22_0x3d05=function(){return _0x4e4abb;};return a22_0x3d05();}import{listRemoteApps}from'../../core/api-client.js';function a22_0x4382(_0x15d5d8,_0x52d6cf){_0x15d5d8=_0x15d5d8-0x12d;const _0x3d0595=a22_0x3d05();let _0x438280=_0x3d0595[_0x15d5d8];return _0x438280;}import{getCookie}from'../../auth/get-cookie.js';import{CliErrors}from'../../errors.js';import{withActiveCookie}from'../../utils/with-active-cookie.js';function resolveCookie(_0x38f876){const _0x73a481=a22_0x4382,_0x5e95ff=_0x38f876['cookie']||getCookie();if(!_0x5e95ff)throw CliErrors[_0x73a481(0x136)]();return _0x5e95ff;}export async function listRemoteAppDirectory(_0x37b7aa){const _0x433a9b=a22_0x4382,_0x428f15=await withActiveCookie(resolveCookie(_0x37b7aa),()=>listRemoteApps());return{'items':_0x428f15['map'](_0xcd3d28=>({..._0xcd3d28['id']!=null?{'id':_0xcd3d28['id']}:{},'appCode':_0xcd3d28['appCode'],'appName':_0xcd3d28[_0x433a9b(0x135)],..._0xcd3d28['appDesc']!=null?{'appDesc':_0xcd3d28[_0x433a9b(0x12d)]}:{}})),'meta':{'source':_0x433a9b(0x133)}};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x466e53,_0xdf55ba){const _0x3238e4=a23_0x2f28,_0x1ca646=_0x466e53();while(!![]){try{const _0x29636f=parseInt(_0x3238e4(0xd5))/0x1+-parseInt(_0x3238e4(0xd6))/0x2+-parseInt(_0x3238e4(0x104))/0x3+-parseInt(_0x3238e4(0xfa))/0x4*(parseInt(_0x3238e4(0xd4))/0x5)+parseInt(_0x3238e4(0xda))/0x6+-parseInt(_0x3238e4(0xf5))/0x7+parseInt(_0x3238e4(0xeb))/0x8;if(_0x29636f===_0xdf55ba)break;else _0x1ca646['push'](_0x1ca646['shift']());}catch(_0x29cdfd){_0x1ca646['push'](_0x1ca646['shift']());}}}(a23_0x944a,0xa572a));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';function nullableText(_0x4ed300){const _0x2ad5b4=_0x4ed300?.['trim']();return _0x2ad5b4?_0x2ad5b4:null;}export function projectAppMembers(_0x4bbead){const _0x5eb2e0=a23_0x2f28,_0x317ce3=new Map(),_0x326fbc=[..._0x4bbead][_0x5eb2e0(0x103)]((_0x84e88e,_0x369f27)=>_0x84e88e['id']-_0x369f27['id']),_0x2e4922=(_0x48ea83,_0x57e76b,_0x3b1acf)=>{const _0x478201=_0x5eb2e0;for(const _0x45d4c1 of _0x57e76b){const _0x126941=Number(_0x45d4c1[_0x478201(0xf7)]);if(!Number[_0x478201(0x102)](_0x126941)||_0x126941<=0x0)continue;let _0x422ea0=_0x317ce3[_0x478201(0xec)](_0x126941);if(!_0x422ea0)_0x422ea0={'userId':_0x126941,'username':nullableText(_0x45d4c1[_0x478201(0xef)]),'displayName':nullableText(_0x45d4c1[_0x478201(0xf8)]),'status':_0x3b1acf,'roles':[],'roleKeys':new Set()},_0x317ce3[_0x478201(0xe6)](_0x126941,_0x422ea0);else{_0x422ea0['username']??=nullableText(_0x45d4c1[_0x478201(0xef)]),_0x422ea0[_0x478201(0xf1)]??=nullableText(_0x45d4c1[_0x478201(0xf8)]);if(_0x3b1acf===_0x478201(0xd2))_0x422ea0[_0x478201(0xe4)]=_0x478201(0xd2);}const _0x4cbfbd=_0x48ea83['id']+':'+_0x3b1acf;if(_0x422ea0[_0x478201(0xd8)][_0x478201(0x100)](_0x4cbfbd))continue;_0x422ea0[_0x478201(0xd8)][_0x478201(0xe1)](_0x4cbfbd),_0x422ea0[_0x478201(0x101)][_0x478201(0xfe)]({'roleId':_0x48ea83['id'],'roleCode':_0x48ea83[_0x478201(0xf9)],'roleName':nullableText(_0x48ea83[_0x478201(0xf4)]),'roleType':nullableText(_0x48ea83[_0x478201(0xe9)]),'membershipStatus':_0x3b1acf});}};for(const _0x55d96b of _0x326fbc){_0x2e4922(_0x55d96b,_0x55d96b['userList']??[],_0x5eb2e0(0xd2)),_0x2e4922(_0x55d96b,_0x55d96b[_0x5eb2e0(0xfb)]??[],_0x5eb2e0(0xfc));}return[..._0x317ce3[_0x5eb2e0(0xe7)]()][_0x5eb2e0(0xff)](_0x246474=>({'userId':_0x246474[_0x5eb2e0(0xf7)],'username':_0x246474[_0x5eb2e0(0xef)],'displayName':_0x246474[_0x5eb2e0(0xf1)],'status':_0x246474[_0x5eb2e0(0xe4)],'roles':_0x246474[_0x5eb2e0(0x101)]['sort']((_0x499c15,_0x1acfea)=>_0x499c15['roleId']-_0x1acfea['roleId']||(_0x499c15['membershipStatus']===_0x1acfea[_0x5eb2e0(0xe0)]?0x0:_0x499c15['membershipStatus']===_0x5eb2e0(0xd2)?-0x1:0x1))}))['sort']((_0xb03d1b,_0x5e0855)=>_0xb03d1b[_0x5eb2e0(0xf7)]-_0x5e0855[_0x5eb2e0(0xf7)]);}export function enrichAppListItemsWithMergedSelection(_0x1b7dfa,_0x430bcb){const _0x3c5863=a23_0x2f28;if(!_0x430bcb)return;const _0x43c1fc=_0x430bcb[_0x3c5863(0xdc)]&&typeof _0x430bcb[_0x3c5863(0xdc)]==='object'?_0x430bcb['apps']:{},_0x182386=Object[_0x3c5863(0xee)](_0x43c1fc)['length']>0x0;for(const _0x5e01f7 of _0x1b7dfa){_0x5e01f7[_0x3c5863(0xf2)]=![];}const _0x312c3c=_0x430bcb[_0x3c5863(0xe2)]!=null?String(_0x430bcb[_0x3c5863(0xe2)])['trim']():'';if(_0x182386){const _0x5242cb=_0x430bcb[_0x3c5863(0xf6)]??_0x430bcb[_0x3c5863(0xe8)];if(_0x5242cb)for(const _0x2b5808 of _0x1b7dfa){_0x2b5808[_0x3c5863(0xdd)]===!![]&&_0x2b5808['name']===_0x5242cb&&(_0x2b5808[_0x3c5863(0xf2)]=!![]);}for(const _0x10985d of _0x1b7dfa){if(_0x10985d[_0x3c5863(0xdd)]!==![])continue;if(_0x430bcb[_0x3c5863(0xe8)])continue;_0x312c3c&&String(_0x10985d[_0x3c5863(0xfd)]??'')[_0x3c5863(0xd3)]()===_0x312c3c&&(_0x10985d[_0x3c5863(0xf2)]=!![]);}return;}if(!_0x312c3c)return;for(const _0x342d64 of _0x1b7dfa){String(_0x342d64['appcode']??'')[_0x3c5863(0xd3)]()===_0x312c3c&&(_0x342d64[_0x3c5863(0xf2)]=!![]);}}function a23_0x2f28(_0x1a1f16,_0x3e1991){_0x1a1f16=_0x1a1f16-0xd2;const _0x944a31=a23_0x944a();let _0x2f284d=_0x944a31[_0x1a1f16];return _0x2f284d;}export function resolveAppScopeForWrite(_0x545b51,_0x1f0882,_0x385dc6){const _0x4140b7=a23_0x2f28;if(_0x1f0882)return _0x4140b7(0xdf);const _0x3fe264=_0x385dc6[_0x4140b7(0xf0)][_0x4140b7(0xdc)]&&typeof _0x385dc6[_0x4140b7(0xf0)][_0x4140b7(0xdc)]===_0x4140b7(0xea)?_0x385dc6[_0x4140b7(0xf0)][_0x4140b7(0xdc)]:{},_0x27f39=_0x385dc6[_0x4140b7(0xed)][_0x4140b7(0xdc)]&&typeof _0x385dc6[_0x4140b7(0xed)][_0x4140b7(0xdc)]===_0x4140b7(0xea)?_0x385dc6[_0x4140b7(0xed)]['apps']:{};if(Object[_0x4140b7(0xd7)][_0x4140b7(0xf3)][_0x4140b7(0xd9)](_0x3fe264,_0x545b51))return _0x4140b7(0xde);if(Object['prototype'][_0x4140b7(0xf3)][_0x4140b7(0xd9)](_0x27f39,_0x545b51))return _0x4140b7(0xdf);return'project';}export function appDefinedIn(_0x330d62,_0x2c22e5,_0x447f9b){const _0x177ce6=a23_0x2f28,_0x23eca9=Object[_0x177ce6(0xd7)][_0x177ce6(0xf3)]['call'](_0x2c22e5,_0x330d62),_0x19f39c=Object['prototype'][_0x177ce6(0xf3)][_0x177ce6(0xd9)](_0x447f9b,_0x330d62);if(_0x23eca9&&_0x19f39c)return _0x177ce6(0xe3);if(_0x19f39c)return'project';return _0x177ce6(0xdf);}export function resolveDefaultAppSource(_0x413e6a){const _0x3ab258=a23_0x2f28,_0x5504f9=_0x413e6a['projectConfig'][_0x3ab258(0xdc)]&&typeof _0x413e6a['projectConfig']['apps']===_0x3ab258(0xea)?_0x413e6a[_0x3ab258(0xf0)][_0x3ab258(0xdc)]:{};if(_0x3ab258(0xe8)in _0x413e6a['projectConfig'])return _0x3ab258(0xde);if(Object[_0x3ab258(0xee)](_0x5504f9)[_0x3ab258(0xe5)]>0x0)return _0x3ab258(0xde);if(Object[_0x3ab258(0xee)](_0x413e6a[_0x3ab258(0xf0)])[_0x3ab258(0xe5)]===0x0&&_0x413e6a['globalConfig'][_0x3ab258(0xe8)])return _0x3ab258(0xdf);return null;}export function getConfigPath(_0x359f66={}){const _0x19f699=a23_0x2f28,_0xb783c0=_0x359f66[_0x19f699(0xdf)]?_0x19f699(0xdf):_0x19f699(0xde);return resolveWriteConfigPath(_0xb783c0);}export function readConfig(_0x519eb1={}){return readConfigFile(getConfigPath(_0x519eb1));}function a23_0x944a(){const _0x3ac4ff=['values','defaultApp','roleType','object','14079208fdbkkw','get','globalConfig','keys','username','projectConfig','displayName','isCurrent','hasOwnProperty','roleName','8009169lVoMUX','currentApp','userId','nickname','roleCode','312420SqohVN','applyUserList','PENDING','appcode','push','map','has','roles','isFinite','sort','1518429OXVpYk','ACTIVE','trim','15zzhGgQ','570958BwmySI','1698714YCyUap','prototype','roleKeys','call','6484782itSWoH','\x20(global)','apps','named','project','global','membershipStatus','add','appCode','both','status','length','set'];a23_0x944a=function(){return _0x3ac4ff;};return a23_0x944a();}export function writeConfig(_0xc0aa64,_0x58f35b={}){writeConfigFile(getConfigPath(_0x58f35b),_0xc0aa64);}export function scopeLabel(_0x23b917){const _0x26c2ba=a23_0x2f28;return _0x23b917['global']?_0x26c2ba(0xdb):'';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a24_0x4b6c59=a24_0x28bb;(function(_0x4560f9,_0x26c55f){const _0x253841=a24_0x28bb,_0x89e678=_0x4560f9();while(!![]){try{const _0x3fc2c7=parseInt(_0x253841(0x92))/0x1+-parseInt(_0x253841(0x98))/0x2*(parseInt(_0x253841(0xaa))/0x3)+-parseInt(_0x253841(0xa2))/0x4*(-parseInt(_0x253841(0xa9))/0x5)+-parseInt(_0x253841(0xa6))/0x6+parseInt(_0x253841(0x99))/0x7*(-parseInt(_0x253841(0x9e))/0x8)+-parseInt(_0x253841(0x95))/0x9*(-parseInt(_0x253841(0x9b))/0xa)+parseInt(_0x253841(0x9c))/0xb;if(_0x3fc2c7===_0x26c55f)break;else _0x89e678['push'](_0x89e678['shift']());}catch(_0x2bab4e){_0x89e678['push'](_0x89e678['shift']());}}}(a24_0x51a7,0x72da2));function a24_0x51a7(){const _0x3146bd=['high-risk-write','isFinite','949257RriRdZ',',\x20appCode=','delete','836SVQYYm','4116189ZBxtqE','Delete\x20one\x20runtime\x20app-config\x20key','50bvjDyc','2056692vrpKnx','apiError','8pQvBTl','/smartapi/app-config/delete','appCode','validation','2644AYXYHo','App\x20config\x20key\x20not\x20found:\x20','number','App\x20config\x20server\x20id\x20missing\x20for\x20key=','2241324OXgXFv','app-config','get','2190qvHEch','165oonTdZ','451150niaGXh'];a24_0x51a7=function(){return _0x3146bd;};return a24_0x51a7();}import{deleteAppConfig,getAppConfigByKey}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asAppConfigDryRunResult,buildMutationData,KEY_ARG,projectAppConfig,readKeyArg,withAppConfigApiBoundary}from'../../commands/app-config/shared.js';function a24_0x28bb(_0x4a4d6b,_0x2f3eea){_0x4a4d6b=_0x4a4d6b-0x92;const _0x51a709=a24_0x51a7();let _0x28bb4c=_0x51a709[_0x4a4d6b];return _0x28bb4c;}const DELETE_PATH=a24_0x4b6c59(0x9f);export const appConfigDelete={'service':a24_0x4b6c59(0xa7),'command':a24_0x4b6c59(0x97),'description':a24_0x4b6c59(0x9a),'risk':a24_0x4b6c59(0x93),'args':[KEY_ARG],'flags':[APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1542a7){readKeyArg(_0x1542a7);},async 'dryRun'(_0x32baf4){const _0x41a099=a24_0x4b6c59,_0x4c4306=readKeyArg(_0x32baf4),_0x2fe05d=await mustGetByKey(_0x32baf4['appCode'],_0x4c4306);return asAppConfigDryRunResult(buildMutationData({'operation':_0x41a099(0x97),'appCode':_0x32baf4['appCode'],'key':_0x4c4306,'before':projectAppConfig(_0x2fe05d),'after':null,'dryRun':!![]}),{'method':'POST','url':DELETE_PATH});},async 'execute'(_0x468a29){const _0x2f0d13=a24_0x4b6c59,_0x588cb5=readKeyArg(_0x468a29),_0x2f6b3e=await mustGetByKey(_0x468a29[_0x2f0d13(0xa0)],_0x588cb5);return await withAppConfigApiBoundary(_0x2f0d13(0x97),{'appCode':_0x468a29[_0x2f0d13(0xa0)],'key':_0x588cb5},()=>deleteAppConfig({'appCode':_0x468a29[_0x2f0d13(0xa0)],'id':requireAppConfigId(_0x2f6b3e,_0x588cb5,_0x468a29[_0x2f0d13(0xa0)])})),{'ok':!![],'data':buildMutationData({'operation':'delete','appCode':_0x468a29[_0x2f0d13(0xa0)],'key':_0x588cb5,'before':projectAppConfig(_0x2f6b3e),'after':null,'dryRun':![]}),'message':'Deleted\x20app\x20config\x20'+_0x588cb5};}};async function mustGetByKey(_0x356320,_0x59949b){const _0x1703a3=a24_0x4b6c59,_0x308e97=await withAppConfigApiBoundary(_0x1703a3(0xa8),{'appCode':_0x356320,'key':_0x59949b},()=>getAppConfigByKey(_0x356320,_0x59949b));if(!_0x308e97)throw CliErrors[_0x1703a3(0xa1)](_0x1703a3(0xa3)+_0x59949b,'appCode:\x20'+_0x356320);return _0x308e97;}function requireAppConfigId(_0x329a3f,_0xd7f0d8,_0x420fe6){const _0x22f5b9=a24_0x4b6c59;if(typeof _0x329a3f['id']===_0x22f5b9(0xa4)&&Number[_0x22f5b9(0x94)](_0x329a3f['id'])&&_0x329a3f['id']>0x0)return _0x329a3f['id'];throw CliErrors[_0x22f5b9(0x9d)](_0x22f5b9(0xa5)+_0xd7f0d8+_0x22f5b9(0x96)+_0x420fe6);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a25_0x20a0a8=a25_0x36bf;(function(_0x4186a5,_0x4a6090){const _0x45e4cb=a25_0x36bf,_0x1f1854=_0x4186a5();while(!![]){try{const _0x3bd278=parseInt(_0x45e4cb(0x131))/0x1+-parseInt(_0x45e4cb(0x135))/0x2*(parseInt(_0x45e4cb(0x145))/0x3)+parseInt(_0x45e4cb(0x141))/0x4*(parseInt(_0x45e4cb(0x13f))/0x5)+-parseInt(_0x45e4cb(0x132))/0x6+-parseInt(_0x45e4cb(0x140))/0x7+parseInt(_0x45e4cb(0x139))/0x8+parseInt(_0x45e4cb(0x137))/0x9;if(_0x3bd278===_0x4a6090)break;else _0x1f1854['push'](_0x1f1854['shift']());}catch(_0x4d66c7){_0x1f1854['push'](_0x1f1854['shift']());}}}(a25_0x581d,0xb0cae));import{getAppConfigByKey}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a25_0x36bf(_0x2a732b,_0x1b7029){_0x2a732b=_0x2a732b-0x131;const _0x581db5=a25_0x581d();let _0x36bfb0=_0x581db5[_0x2a732b];return _0x36bfb0;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{KEY_ARG,projectAppConfig,readKeyArg,REVEAL_FLAG,withAppConfigApiBoundary}from'../../commands/app-config/shared.js';export const appConfigGet={'service':a25_0x20a0a8(0x133),'command':'get','description':a25_0x20a0a8(0x144),'risk':a25_0x20a0a8(0x13b),'args':[KEY_ARG],'flags':[APPCODE_FLAG_OPTIONAL,REVEAL_FLAG],async 'validate'(_0x2bc5b1){readKeyArg(_0x2bc5b1);},async 'execute'(_0xdffe12){const _0x5d4610=a25_0x20a0a8,_0x13f005=readKeyArg(_0xdffe12),_0x292b9f=await withAppConfigApiBoundary('get',{'appCode':_0xdffe12[_0x5d4610(0x134)],'key':_0x13f005},()=>getAppConfigByKey(_0xdffe12[_0x5d4610(0x134)],_0x13f005));if(!_0x292b9f)throw CliErrors[_0x5d4610(0x142)](_0x5d4610(0x13e)+_0x13f005,_0x5d4610(0x13d)+_0xdffe12[_0x5d4610(0x134)]);const _0x39bd66=projectAppConfig(_0x292b9f,{'reveal':_0xdffe12['bool'](_0x5d4610(0x143))});return{'ok':!![],'data':{'config':_0x39bd66},'message':_0xdffe12[_0x5d4610(0x136)](_0x5d4610(0x143))?_0x5d4610(0x13c)+_0x13f005+_0x5d4610(0x138):'Loaded\x20app\x20config\x20'+_0x13f005+_0x5d4610(0x13a)};}};function a25_0x581d(){const _0x48131a=['bool','22123233DcKdXU','\x20with\x20value\x20revealed','3237912mPWqOg','\x20with\x20value\x20redacted','read','Loaded\x20app\x20config\x20','appCode:\x20','App\x20config\x20key\x20not\x20found:\x20','5BmAVqS','7905135WvaVIk','248656VftgYx','validation','reveal','Inspect\x20one\x20runtime\x20app-config\x20key;\x20value\x20is\x20redacted\x20unless\x20--reveal\x20is\x20used','2931SxfJFi','912188uZgLPx','6087582DIpWNC','app-config','appCode','1984UyKdXO'];a25_0x581d=function(){return _0x48131a;};return a25_0x581d();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a26_0x5947(){const _0x4c22e9=['30TxTkXV','4108056keBTak','18092gBnjbh','6zQgfOF','1022910zdpeOl','1109101fCCTNg','719243WQxYbp','2007428Doczua','5275647kkakAZ'];a26_0x5947=function(){return _0x4c22e9;};return a26_0x5947();}(function(_0x461965,_0x24f972){const _0x40a4ce=a26_0x19b3,_0x4e9485=_0x461965();while(!![]){try{const _0x100a42=-parseInt(_0x40a4ce(0xfe))/0x1+parseInt(_0x40a4ce(0xfa))/0x2*(parseInt(_0x40a4ce(0xfb))/0x3)+parseInt(_0x40a4ce(0xff))/0x4+-parseInt(_0x40a4ce(0xfc))/0x5+-parseInt(_0x40a4ce(0xf8))/0x6*(-parseInt(_0x40a4ce(0xfd))/0x7)+-parseInt(_0x40a4ce(0xf9))/0x8+parseInt(_0x40a4ce(0x100))/0x9;if(_0x100a42===_0x24f972)break;else _0x4e9485['push'](_0x4e9485['shift']());}catch(_0x57af87){_0x4e9485['push'](_0x4e9485['shift']());}}}(a26_0x5947,0x708d7));function a26_0x19b3(_0x5e2cf3,_0x46dccf){_0x5e2cf3=_0x5e2cf3-0xf8;const _0x5947e0=a26_0x5947();let _0x19b3be=_0x5947e0[_0x5e2cf3];return _0x19b3be;}import{appConfigList}from'../../commands/app-config/list.js';import{appConfigGet}from'../../commands/app-config/get.js';import{appConfigSet}from'../../commands/app-config/set.js';import{appConfigDelete}from'../../commands/app-config/delete.js';export const appConfigDefinitions=[appConfigList,appConfigGet,appConfigSet,appConfigDelete];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a27_0x2ecc65=a27_0x2406;(function(_0x2096f0,_0x3b28c8){const _0x4c5d9d=a27_0x2406,_0x1e3a89=_0x2096f0();while(!![]){try{const _0xca3ae3=-parseInt(_0x4c5d9d(0x100))/0x1+parseInt(_0x4c5d9d(0x102))/0x2*(parseInt(_0x4c5d9d(0x10c))/0x3)+-parseInt(_0x4c5d9d(0xfb))/0x4*(-parseInt(_0x4c5d9d(0x10a))/0x5)+parseInt(_0x4c5d9d(0x101))/0x6+-parseInt(_0x4c5d9d(0x105))/0x7+-parseInt(_0x4c5d9d(0x10e))/0x8*(parseInt(_0x4c5d9d(0x109))/0x9)+-parseInt(_0x4c5d9d(0x10d))/0xa;if(_0xca3ae3===_0x3b28c8)break;else _0x1e3a89['push'](_0x1e3a89['shift']());}catch(_0xe759db){_0x1e3a89['push'](_0x1e3a89['shift']());}}}(a27_0x225d,0x7f679));function a27_0x225d(){const _0x422c9d=['762LazMfw','app-config','Found\x20','3500763HRNAtJ','string','List\x20runtime\x20app-config\x20key\x20metadata\x20without\x20printing\x20values','length','207gCMObb','414985QFrTlY','trim','5361gqgWTK','2396000oXrmIR','15856eYgUqC','list','\x20app\x20config(s)','read','24NfFqLh','str','key','map','appCode','572148UNLOmm','4202778igADNQ'];a27_0x225d=function(){return _0x422c9d;};return a27_0x225d();}function a27_0x2406(_0x1950ed,_0x369583){_0x1950ed=_0x1950ed-0xf9;const _0x225db7=a27_0x225d();let _0x240622=_0x225db7[_0x1950ed];return _0x240622;}import{listAppConfigs}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{projectAppConfig,readOptionalTags,TAGS_FLAG,validateKey,withAppConfigApiBoundary}from'../../commands/app-config/shared.js';export const appConfigList={'service':a27_0x2ecc65(0x103),'command':'list','description':a27_0x2ecc65(0x107),'risk':a27_0x2ecc65(0xfa),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a27_0x2ecc65(0xfd),'type':a27_0x2ecc65(0x106),'description':'Filter\x20by\x20exact\x20config\x20key'},TAGS_FLAG],async 'validate'(_0x4d89fe){const _0x25b03e=a27_0x2ecc65,_0x10684e=_0x4d89fe[_0x25b03e(0xfc)](_0x25b03e(0xfd))['trim']();if(_0x10684e)validateKey(_0x10684e);readOptionalTags(_0x4d89fe);},async 'execute'(_0x2f9479){const _0x468e62=a27_0x2ecc65,_0x5b8a86=_0x2f9479[_0x468e62(0xfc)]('key')[_0x468e62(0x10b)]()||undefined,_0x31c268=readOptionalTags(_0x2f9479),_0x46c79d=await withAppConfigApiBoundary(_0x468e62(0x10f),{'appCode':_0x2f9479[_0x468e62(0xff)]},()=>listAppConfigs(_0x2f9479[_0x468e62(0xff)],{'key':_0x5b8a86,'tags':_0x31c268})),_0x56f651=_0x46c79d[_0x468e62(0xfe)](_0x379899=>projectAppConfig(_0x379899));return{'ok':!![],'data':{'appCode':_0x2f9479[_0x468e62(0xff)],'count':_0x56f651[_0x468e62(0x108)],'configs':_0x56f651},'message':_0x468e62(0x104)+_0x56f651[_0x468e62(0x108)]+_0x468e62(0xf9)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a28_0x28cd20=a28_0x5472;function a28_0x5472(_0x4857aa,_0x17486c){_0x4857aa=_0x4857aa-0xe3;const _0x239ca0=a28_0x239c();let _0x547272=_0x239ca0[_0x4857aa];return _0x547272;}(function(_0x99d73c,_0x3b1a0c){const _0xe8a74=a28_0x5472,_0x419aa8=_0x99d73c();while(!![]){try{const _0x5ac901=parseInt(_0xe8a74(0xf4))/0x1*(-parseInt(_0xe8a74(0xe5))/0x2)+-parseInt(_0xe8a74(0xe7))/0x3+parseInt(_0xe8a74(0xe6))/0x4*(parseInt(_0xe8a74(0xfd))/0x5)+parseInt(_0xe8a74(0xf8))/0x6+parseInt(_0xe8a74(0xfe))/0x7+-parseInt(_0xe8a74(0xea))/0x8+-parseInt(_0xe8a74(0xec))/0x9;if(_0x5ac901===_0x3b1a0c)break;else _0x419aa8['push'](_0x419aa8['shift']());}catch(_0x3792f7){_0x419aa8['push'](_0x419aa8['shift']());}}}(a28_0x239c,0x62200));import{createAppConfig,getAppConfigByKey,updateAppConfig}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a28_0x239c(){const _0x30542f=['get','37405nWSbVA','5029920sIhoDY','tags','app-config','App\x20config\x20server\x20id\x20missing\x20for\x20key=','15076sSBYRw','356LkJBba','367575TDxlSd','Read\x20config\x20value\x20from\x20file','apiError','5829456XhiVMo','file','2759886mQUjjp','/smartapi/app-config/update','\x20app\x20config\x20','Updated','isFinite','update','string','set','75fAMsBc','create','appCode','Create\x20or\x20update\x20one\x20runtime\x20app-config\x20key','4444572PbGskZ',',\x20appCode=','number','write'];a28_0x239c=function(){return _0x30542f;};return a28_0x239c();}import{assertSingleValueSource,assertValueSourceReadable,asAppConfigDryRunResult,buildMutationData,FROM_ENV_FLAG,KEY_ARG,plannedAppConfig,projectAppConfig,readAppConfigValue,readKeyArg,readOptionalTags,STDIN_FLAG,TAGS_FLAG,VALUE_ARG,withAppConfigApiBoundary}from'../../commands/app-config/shared.js';const CREATE_PATH='/smartapi/app-config/create',UPDATE_PATH=a28_0x28cd20(0xed);export const appConfigSet={'service':a28_0x28cd20(0xe3),'command':a28_0x28cd20(0xf3),'description':a28_0x28cd20(0xf7),'risk':a28_0x28cd20(0xfb),'args':[KEY_ARG,VALUE_ARG],'flags':[APPCODE_FLAG_OPTIONAL,TAGS_FLAG,STDIN_FLAG,FROM_ENV_FLAG,{'name':a28_0x28cd20(0xeb),'type':a28_0x28cd20(0xf2),'description':a28_0x28cd20(0xe8)}],async 'validate'(_0x52dfa9){readKeyArg(_0x52dfa9),readOptionalTags(_0x52dfa9),assertSingleValueSource(_0x52dfa9);},async 'dryRun'(_0x57fd35){const _0x1035b0=a28_0x28cd20,_0x1ab126=readKeyArg(_0x57fd35),_0x18b4cb=readOptionalTags(_0x57fd35),_0x4ded04=assertSingleValueSource(_0x57fd35);await assertValueSourceReadable(_0x4ded04);const _0x2d250e=await withAppConfigApiBoundary('get',{'appCode':_0x57fd35['appCode'],'key':_0x1ab126},()=>getAppConfigByKey(_0x57fd35[_0x1035b0(0xf6)],_0x1ab126)),_0x7b40e=_0x2d250e?_0x1035b0(0xf1):_0x1035b0(0xf5),_0x4a9247=_0x2d250e?projectAppConfig(_0x2d250e):null,_0xf953f8=plannedAppConfig({'appCode':_0x57fd35[_0x1035b0(0xf6)],'key':_0x1ab126,'tags':_0x18b4cb??_0x2d250e?.['tags'],'hasValue':!![]});return asAppConfigDryRunResult(buildMutationData({'operation':_0x7b40e,'appCode':_0x57fd35[_0x1035b0(0xf6)],'key':_0x1ab126,'before':_0x4a9247,'after':_0xf953f8,'dryRun':!![]}),{'method':'POST','url':_0x7b40e===_0x1035b0(0xf1)?UPDATE_PATH:CREATE_PATH});},async 'execute'(_0x1bd52b){const _0x1ec6be=a28_0x28cd20,_0x5d1f0b=readKeyArg(_0x1bd52b),_0x5c1d8f=readOptionalTags(_0x1bd52b),_0x59a5c5=await withAppConfigApiBoundary('get',{'appCode':_0x1bd52b[_0x1ec6be(0xf6)],'key':_0x5d1f0b},()=>getAppConfigByKey(_0x1bd52b[_0x1ec6be(0xf6)],_0x5d1f0b)),_0x2af6ff=_0x59a5c5?projectAppConfig(_0x59a5c5):null,_0x20a9ab=_0x59a5c5?_0x1ec6be(0xf1):_0x1ec6be(0xf5),{value:_0x5bd613,warnings:_0x133848}=await readAppConfigValue(_0x1bd52b),_0x528bc8={'appCode':_0x1bd52b['appCode'],'key':_0x5d1f0b,'value':_0x5bd613,'tags':_0x5c1d8f??_0x59a5c5?.[_0x1ec6be(0xff)]??undefined};await withAppConfigApiBoundary(_0x20a9ab,{'appCode':_0x1bd52b[_0x1ec6be(0xf6)],'key':_0x5d1f0b},async()=>{const _0x146caa=_0x1ec6be;_0x59a5c5?await updateAppConfig({..._0x528bc8,'id':requireAppConfigId(_0x59a5c5,_0x5d1f0b,_0x1bd52b[_0x146caa(0xf6)])}):await createAppConfig(_0x528bc8);});const _0xbe96ff=await withAppConfigApiBoundary(_0x1ec6be(0xfc),{'appCode':_0x1bd52b[_0x1ec6be(0xf6)],'key':_0x5d1f0b},()=>getAppConfigByKey(_0x1bd52b[_0x1ec6be(0xf6)],_0x5d1f0b)),_0x4f63be=_0xbe96ff?projectAppConfig(_0xbe96ff):plannedAppConfig({'appCode':_0x1bd52b[_0x1ec6be(0xf6)],'key':_0x5d1f0b,'tags':_0x528bc8[_0x1ec6be(0xff)],'hasValue':_0x5bd613!==''});return{'ok':!![],'data':buildMutationData({'operation':_0x20a9ab,'appCode':_0x1bd52b[_0x1ec6be(0xf6)],'key':_0x5d1f0b,'before':_0x2af6ff,'after':_0x4f63be,'dryRun':![],'warnings':_0x133848}),'message':(_0x20a9ab==='update'?_0x1ec6be(0xef):'Created')+_0x1ec6be(0xee)+_0x5d1f0b};}};function requireAppConfigId(_0x2c5bcc,_0x2f2e0f,_0xa4cd3d){const _0x2c97b0=a28_0x28cd20;if(typeof _0x2c5bcc['id']===_0x2c97b0(0xfa)&&Number[_0x2c97b0(0xf0)](_0x2c5bcc['id'])&&_0x2c5bcc['id']>0x0)return _0x2c5bcc['id'];throw CliErrors[_0x2c97b0(0xe9)](_0x2c97b0(0xe4)+_0x2f2e0f+_0x2c97b0(0xf9)+_0xa4cd3d);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a29_0x1b2bd3=a29_0x2edc;(function(_0x5d878,_0x1f435a){const _0xaba202=a29_0x2edc,_0xf2b7f3=_0x5d878();while(!![]){try{const _0x1f33a9=-parseInt(_0xaba202(0x1bb))/0x1*(parseInt(_0xaba202(0x1df))/0x2)+parseInt(_0xaba202(0x1cc))/0x3+parseInt(_0xaba202(0x1bd))/0x4+-parseInt(_0xaba202(0x1c6))/0x5*(-parseInt(_0xaba202(0x1c0))/0x6)+-parseInt(_0xaba202(0x1dc))/0x7*(-parseInt(_0xaba202(0x1a5))/0x8)+parseInt(_0xaba202(0x1d0))/0x9+-parseInt(_0xaba202(0x1a7))/0xa;if(_0x1f33a9===_0x1f435a)break;else _0xf2b7f3['push'](_0xf2b7f3['shift']());}catch(_0x101115){_0xf2b7f3['push'](_0xf2b7f3['shift']());}}}(a29_0x401d,0xc6f29));import{access,readFile}from'node:fs/promises';import{CliErrors}from'../../errors.js';export const KEY_ARG={'name':a29_0x1b2bd3(0x1b4),'description':a29_0x1b2bd3(0x1c4),'required':!![]};export const VALUE_ARG={'name':'value','description':'Sensitive\x20config\x20value.\x20Prefer\x20--stdin,\x20--from-env,\x20or\x20--file\x20for\x20secrets.','required':![]};export const TAGS_FLAG={'name':a29_0x1b2bd3(0x1c9),'type':a29_0x1b2bd3(0x1d5),'description':a29_0x1b2bd3(0x1b8)};export const STDIN_FLAG={'name':'stdin','type':a29_0x1b2bd3(0x1b9),'description':a29_0x1b2bd3(0x1b1),'default':![]};export const FROM_ENV_FLAG={'name':a29_0x1b2bd3(0x1d9),'type':'string','description':a29_0x1b2bd3(0x1cb)};export const REVEAL_FLAG={'name':'reveal','type':a29_0x1b2bd3(0x1b9),'description':a29_0x1b2bd3(0x1cd),'default':![]};export function readKeyArg(_0x4a4a3f){const _0x39125b=a29_0x1b2bd3,_0x12d093=_0x4a4a3f[_0x39125b(0x1ae)][0x0]?.[_0x39125b(0x1af)]()??'';return validateKey(_0x12d093),_0x12d093;}export function readOptionalTags(_0x25675a){const _0x2b74f4=a29_0x1b2bd3,_0x485c93=_0x25675a[_0x2b74f4(0x1bc)]('tags')[_0x2b74f4(0x1af)]();if(!_0x485c93)return undefined;if(_0x485c93[_0x2b74f4(0x1da)]>0x20)throw CliErrors['validation'](_0x2b74f4(0x1b3));return _0x485c93;}export function validateKey(_0x2b7da3){const _0xcc603b=a29_0x1b2bd3;if(!_0x2b7da3)throw CliErrors[_0xcc603b(0x1ca)](_0xcc603b(0x1b0));if(_0x2b7da3[_0xcc603b(0x1da)]>0x100)throw CliErrors[_0xcc603b(0x1ca)]('App\x20config\x20key\x20length\x20cannot\x20exceed\x20256.');}export function projectAppConfig(_0x5d2868,_0x4bfd14){const _0x1aa382=a29_0x1b2bd3,_0x30b738=_0x5d2868[_0x1aa382(0x1aa)]!==undefined&&_0x5d2868['value']!==null&&_0x5d2868[_0x1aa382(0x1aa)]!=='',_0x2d6f8d={'appCode':_0x5d2868['appCode'],'key':_0x5d2868[_0x1aa382(0x1b4)],'tags':_0x5d2868[_0x1aa382(0x1c9)]??undefined,'hasValue':_0x30b738,'valueRedacted':_0x30b738&&!_0x4bfd14?.[_0x1aa382(0x1a9)],'gmtCreate':_0x5d2868[_0x1aa382(0x1a2)],'gmtModified':_0x5d2868['gmtModified']};return _0x4bfd14?.[_0x1aa382(0x1a9)]&&(_0x2d6f8d[_0x1aa382(0x1aa)]=_0x5d2868[_0x1aa382(0x1aa)]??'',_0x2d6f8d[_0x1aa382(0x1cf)]=![]),_0x2d6f8d;}function a29_0x2edc(_0x2408cf,_0x4b0732){_0x2408cf=_0x2408cf-0x1a1;const _0x401d4d=a29_0x401d();let _0x2edca5=_0x401d4d[_0x2408cf];return _0x2edca5;}export function plannedAppConfig(_0x1d40df){const _0x182de5=a29_0x1b2bd3,_0x272c79=_0x1d40df[_0x182de5(0x1ac)]??!![];return{'appCode':_0x1d40df['appCode'],'key':_0x1d40df[_0x182de5(0x1b4)],'tags':_0x1d40df[_0x182de5(0x1c9)]??undefined,'hasValue':_0x272c79,'valueRedacted':_0x272c79};}export function buildMutationData(_0x1d3c65){const _0x515774=a29_0x1b2bd3;return{'operation':_0x1d3c65[_0x515774(0x1ad)],'selector':{'appCode':_0x1d3c65[_0x515774(0x1a3)],'key':_0x1d3c65[_0x515774(0x1b4)]},'before':_0x1d3c65[_0x515774(0x1c7)],'after':_0x1d3c65[_0x515774(0x1e1)],'dryRun':_0x1d3c65[_0x515774(0x1a4)],'warnings':_0x1d3c65[_0x515774(0x1c5)]??[]};}export async function withAppConfigApiBoundary(_0x2adb24,_0x19547d,_0x33983a){const _0x1de802=a29_0x1b2bd3;try{return await _0x33983a();}catch{const _0x39207d=[_0x1de802(0x1d7)+_0x19547d[_0x1de802(0x1a3)]];if(_0x19547d[_0x1de802(0x1b4)])_0x39207d[_0x1de802(0x1c2)](_0x1de802(0x1d3)+_0x19547d[_0x1de802(0x1b4)]);_0x39207d[_0x1de802(0x1c2)](_0x1de802(0x1d6));throw CliErrors['apiError'](_0x1de802(0x1db)+_0x2adb24+_0x1de802(0x1d2),_0x39207d[_0x1de802(0x1a1)](';\x20')+'.');}}export function asAppConfigDryRunResult(_0x32aa80,_0x365d15){const _0x1100f2=a29_0x1b2bd3;return Object['defineProperties'](_0x32aa80,{'method':{'value':_0x365d15[_0x1100f2(0x1dd)],'enumerable':![]},'url':{'value':_0x365d15[_0x1100f2(0x1c3)],'enumerable':![]}});}export function assertSingleValueSource(_0x5195a6){const _0x3c85c1=a29_0x1b2bd3,_0x521714=[];_0x5195a6[_0x3c85c1(0x1ae)][_0x3c85c1(0x1da)]>0x1&&_0x521714[_0x3c85c1(0x1c2)]({'kind':'argument','value':_0x5195a6['args'][_0x3c85c1(0x1d4)](0x1)[_0x3c85c1(0x1a1)]('\x20')});const _0x51c58b=_0x5195a6[_0x3c85c1(0x1ba)](_0x3c85c1(0x1aa));_0x51c58b!==undefined&&_0x51c58b!==null&&_0x521714['push']({'kind':_0x3c85c1(0x1a8),'value':String(_0x51c58b)});_0x5195a6[_0x3c85c1(0x1ab)](_0x3c85c1(0x1a6))&&_0x521714[_0x3c85c1(0x1c2)]({'kind':_0x3c85c1(0x1a6)});const _0x4878cb=_0x5195a6[_0x3c85c1(0x1bc)](_0x3c85c1(0x1d9))[_0x3c85c1(0x1af)]();_0x4878cb&&_0x521714['push']({'kind':'env','name':_0x4878cb});const _0x1e9f89=_0x5195a6[_0x3c85c1(0x1bc)](_0x3c85c1(0x1be))[_0x3c85c1(0x1af)]();_0x1e9f89&&_0x521714[_0x3c85c1(0x1c2)]({'kind':_0x3c85c1(0x1be),'path':_0x1e9f89});if(_0x521714[_0x3c85c1(0x1da)]===0x0)throw CliErrors[_0x3c85c1(0x1ca)]('Missing\x20app-config\x20value\x20source.','Use\x20one\x20of:\x20positional\x20<value>,\x20--stdin,\x20--from-env\x20<NAME>,\x20or\x20--file\x20<path>.');if(_0x521714[_0x3c85c1(0x1da)]>0x1)throw CliErrors[_0x3c85c1(0x1ca)](_0x3c85c1(0x1b6),_0x3c85c1(0x1ce));return _0x521714[0x0];}export async function assertValueSourceReadable(_0x4f1ce4){const _0x592593=a29_0x1b2bd3;if(_0x4f1ce4[_0x592593(0x1bf)]===_0x592593(0x1d1)&&!(_0x4f1ce4[_0x592593(0x1de)]in process.env))throw CliErrors['validation'](_0x592593(0x1b5)+_0x4f1ce4[_0x592593(0x1de)]);if(_0x4f1ce4[_0x592593(0x1bf)]===_0x592593(0x1be))try{await access(_0x4f1ce4[_0x592593(0x1c8)]);}catch{throw CliErrors[_0x592593(0x1ca)]('Value\x20file\x20is\x20not\x20readable:\x20'+_0x4f1ce4[_0x592593(0x1c8)]);}}export async function readAppConfigValue(_0x529e0c){const _0x161eb4=a29_0x1b2bd3,_0xb13eef=assertSingleValueSource(_0x529e0c),_0x20c519=[];if(_0xb13eef[_0x161eb4(0x1bf)]===_0x161eb4(0x1a8))return _0x20c519[_0x161eb4(0x1c2)](_0x161eb4(0x1d8)),{'value':_0xb13eef[_0x161eb4(0x1aa)]??'','source':_0xb13eef[_0x161eb4(0x1bf)],'warnings':_0x20c519};if(_0xb13eef['kind']===_0x161eb4(0x1a6))return{'value':await readStdin(),'source':_0xb13eef['kind'],'warnings':_0x20c519};if(_0xb13eef['kind']===_0x161eb4(0x1d1)){if(!(_0xb13eef[_0x161eb4(0x1de)]in process.env))throw CliErrors[_0x161eb4(0x1ca)]('Environment\x20variable\x20is\x20not\x20set:\x20'+_0xb13eef[_0x161eb4(0x1de)]);return{'value':process.env[_0xb13eef.name]??'','source':_0xb13eef['kind'],'warnings':_0x20c519};}return{'value':await readFile(_0xb13eef[_0x161eb4(0x1c8)],'utf8'),'source':_0xb13eef[_0x161eb4(0x1bf)],'warnings':_0x20c519};}function a29_0x401d(){const _0x592513=['kind','12Fqwneh','end','push','url','Runtime\x20app-config\x20key','warnings','3335935bAHyiZ','before','path','tags','validation','Read\x20config\x20value\x20from\x20the\x20named\x20environment\x20variable','900669csgOCc','Reveal\x20the\x20sensitive\x20value\x20for\x20this\x20single\x20key','Use\x20exactly\x20one\x20of:\x20positional\x20<value>,\x20--stdin,\x20--from-env\x20<NAME>,\x20or\x20--file\x20<path>.','valueRedacted','354510pbNWKE','env','\x20app\x20config.','key:\x20','slice','string','value\x20is\x20redacted','appCode:\x20','Value\x20was\x20provided\x20as\x20a\x20command\x20argument;\x20prefer\x20--stdin,\x20--from-env,\x20or\x20--file\x20for\x20secrets.','from-env','length','Failed\x20to\x20','99708caJGmU','method','name','136cggZyr','setEncoding','after','join','gmtCreate','appCode','dryRun','64kRIWTY','stdin','17427520HgQEZe','argument','reveal','value','bool','hasValue','operation','args','trim','Missing\x20app-config\x20key.','Read\x20config\x20value\x20from\x20stdin','data','App\x20config\x20tags\x20length\x20cannot\x20exceed\x2032.','key','Environment\x20variable\x20is\x20not\x20set:\x20','App\x20config\x20value\x20source\x20is\x20ambiguous.','error','Config\x20tags\x20for\x20filtering/display\x20metadata','boolean','flag','10834OgIrfJ','str','6025656vKUSqz','file'];a29_0x401d=function(){return _0x592513;};return a29_0x401d();}function readStdin(){return new Promise((_0x38e539,_0x15283f)=>{const _0x2e7045=a29_0x2edc;let _0x3c86b2='';process[_0x2e7045(0x1a6)][_0x2e7045(0x1e0)]('utf8'),process['stdin']['on'](_0x2e7045(0x1b2),_0x578990=>{_0x3c86b2+=_0x578990;}),process['stdin']['once'](_0x2e7045(0x1c1),()=>_0x38e539(_0x3c86b2)),process[_0x2e7045(0x1a6)]['once'](_0x2e7045(0x1b7),_0x15283f);});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a30_0x4f91be=a30_0x8840;(function(_0x314e5e,_0x219418){const _0x14dc0f=a30_0x8840,_0x2b3611=_0x314e5e();while(!![]){try{const _0x4265f5=parseInt(_0x14dc0f(0x11f))/0x1*(parseInt(_0x14dc0f(0x129))/0x2)+-parseInt(_0x14dc0f(0x127))/0x3*(parseInt(_0x14dc0f(0x123))/0x4)+parseInt(_0x14dc0f(0x130))/0x5*(-parseInt(_0x14dc0f(0x125))/0x6)+-parseInt(_0x14dc0f(0x126))/0x7*(parseInt(_0x14dc0f(0x12e))/0x8)+-parseInt(_0x14dc0f(0x117))/0x9+-parseInt(_0x14dc0f(0x11c))/0xa*(parseInt(_0x14dc0f(0x12d))/0xb)+-parseInt(_0x14dc0f(0x121))/0xc*(-parseInt(_0x14dc0f(0x120))/0xd);if(_0x4265f5===_0x219418)break;else _0x2b3611['push'](_0x2b3611['shift']());}catch(_0x4aa482){_0x2b3611['push'](_0x2b3611['shift']());}}}(a30_0x55f0,0x95bd2));function a30_0x55f0(){const _0x1b9970=['login','4ONlhLx','auth','1517574pzNoUs','1857877cBJmmD','1330386BQBzts','../../auth/auth-server-ui.js','12638rqbXZJ','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','boolean','bool','627oZIyZn','24eNTUsR','Clear\x20login\x20session','20qiTamj','Login\x20via\x20browser','5921847TFCEcX','log','!\x20Not\x20logged\x20in','nonInteractive','yes','142610WvdSFz','✓\x20Logged\x20out','write','43HBKmxq','2431yVaEmC','260784pFPcIe'];a30_0x55f0=function(){return _0x1b9970;};return a30_0x55f0();}import{unlinkSync,existsSync}from'node:fs';function a30_0x8840(_0x4ceb20,_0x2e037a){_0x4ceb20=_0x4ceb20-0x117;const _0x55f09b=a30_0x55f0();let _0x8840cb=_0x55f09b[_0x4ceb20];return _0x8840cb;}import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a30_0x4f91be(0x124),'command':a30_0x4f91be(0x122),'description':a30_0x4f91be(0x131),'risk':a30_0x4f91be(0x11e),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a30_0x4f91be(0x11b),'type':a30_0x4f91be(0x12b),'description':a30_0x4f91be(0x12a),'default':![]}],async 'execute'(_0x384fd6){const _0x154d6a=a30_0x4f91be,{runAuthServer:_0x51ad8e}=await import(_0x154d6a(0x128));return await _0x51ad8e({'autoYes':_0x384fd6[_0x154d6a(0x12c)](_0x154d6a(0x11b)),'nonInteractive':_0x384fd6[_0x154d6a(0x11a)]}),{'ok':!![]};}},{'service':a30_0x4f91be(0x124),'command':'logout','description':a30_0x4f91be(0x12f),'risk':a30_0x4f91be(0x11e),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x797b9c){const _0x447083=a30_0x4f91be;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x447083(0x118)](_0x447083(0x11d))):console['log'](_0x447083(0x119)),{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a31_0x4f7967=a31_0x2695;(function(_0xc5694a,_0x4676b4){const _0x1d79e1=a31_0x2695,_0x4f3d4c=_0xc5694a();while(!![]){try{const _0x596066=parseInt(_0x1d79e1(0x168))/0x1+-parseInt(_0x1d79e1(0x1a9))/0x2*(-parseInt(_0x1d79e1(0x172))/0x3)+-parseInt(_0x1d79e1(0x18c))/0x4*(-parseInt(_0x1d79e1(0x185))/0x5)+-parseInt(_0x1d79e1(0x17b))/0x6+parseInt(_0x1d79e1(0x19a))/0x7*(-parseInt(_0x1d79e1(0x19c))/0x8)+parseInt(_0x1d79e1(0x182))/0x9+-parseInt(_0x1d79e1(0x173))/0xa;if(_0x596066===_0x4676b4)break;else _0x4f3d4c['push'](_0x4f3d4c['shift']());}catch(_0x50c5ea){_0x4f3d4c['push'](_0x4f3d4c['shift']());}}}(a31_0x17eb,0xca32f));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{DEFAULT_BFF_SCRIPT_DESCRIPTION,isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{getAppBaseUrl}from'../../constant/domain.js';export const bffCreate={'service':a31_0x4f7967(0x19d),'command':a31_0x4f7967(0x16a),'description':a31_0x4f7967(0x1a1),'risk':a31_0x4f7967(0x1aa),'flags':[{'name':a31_0x4f7967(0x169),'type':a31_0x4f7967(0x167),'required':!![],'enum':[a31_0x4f7967(0x1ac),'ENDPOINT',a31_0x4f7967(0x1af)],'description':a31_0x4f7967(0x1b3)},{'name':a31_0x4f7967(0x19f),'type':a31_0x4f7967(0x167),'required':!![],'description':'Function\x20name\x20(valid\x20JS\x20identifier)'},{'name':'description','type':a31_0x4f7967(0x167),'description':a31_0x4f7967(0x16c)},{'name':a31_0x4f7967(0x1b1),'type':a31_0x4f7967(0x167),'description':a31_0x4f7967(0x199)},{'name':'datasetcode','type':'string','description':a31_0x4f7967(0x1bc)},{'name':'operation-type','type':a31_0x4f7967(0x167),'description':'Operation\x20type\x20(HOOK\x20only)'},{'name':'function-node','type':'string','description':a31_0x4f7967(0x18a),'enum':['before',a31_0x4f7967(0x1b4)]}],async 'validate'(_0x61b134){const _0x35c96d=a31_0x4f7967,_0x2c627f=_0x61b134[_0x35c96d(0x186)]('name');if(!isValidBffFunctionName(_0x2c627f))throw CliErrors['validation'](_0x35c96d(0x1b6)+_0x2c627f+'\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).');},async 'execute'(_0x489f7c){const _0x3b8a93=a31_0x4f7967,_0x82006f=loadBffProjectConfig(_0x489f7c[_0x3b8a93(0x16d)]),_0xf4d9fe=_0x489f7c['str'](_0x3b8a93(0x169)),_0x3a045e=_0x489f7c[_0x3b8a93(0x186)](_0x3b8a93(0x19f)),_0x7bda50=_0x489f7c[_0x3b8a93(0x186)](_0x3b8a93(0x1bd))||undefined,_0x28f7e7=_0xf4d9fe===_0x3b8a93(0x1af)?await resolveHookOptions(_0x82006f,_0x489f7c):undefined,_0x38ad48=buildFilePath(_0x82006f,_0xf4d9fe,_0x3a045e,_0x28f7e7);if(await fileExists(_0x38ad48))throw CliErrors[_0x3b8a93(0x188)]('File\x20already\x20exists:\x20'+_0x38ad48);await mkdir(dirname(_0x38ad48),{'recursive':!![]});const _0x1928e5=generateTemplate(_0xf4d9fe,_0x3a045e,_0x489f7c[_0x3b8a93(0x16d)],_0x7bda50,_0x28f7e7);await writeFile(_0x38ad48,_0x1928e5,_0x3b8a93(0x17e));const _0x5df0d4={'type':_0xf4d9fe,'name':_0x3a045e,'path':_0x38ad48};if(_0x7bda50)_0x5df0d4['description']=_0x7bda50;if(_0x28f7e7){if(_0x28f7e7[_0x3b8a93(0x1b1)])_0x5df0d4[_0x3b8a93(0x1b1)]=_0x28f7e7[_0x3b8a93(0x1b1)];_0x5df0d4['datasetCode']=_0x28f7e7['datasetCode'],_0x5df0d4[_0x3b8a93(0x1a0)]=_0x28f7e7['operationType'],_0x5df0d4['functionNode']=_0x28f7e7[_0x3b8a93(0x17a)];}return{'ok':!![],'data':_0x5df0d4,'message':'Created\x20'+_0xf4d9fe+'\x20function:\x20'+_0x3a045e};}};async function resolveHookOptions(_0x10a311,_0x45df31){const _0xeb75c3=a31_0x4f7967,_0x2e8970=loadAliasMap(_0x45df31['apiDir'],undefined,resolveApiFilePath(_0x45df31[_0xeb75c3(0x195)],_0x45df31[_0xeb75c3(0x16d)])),_0x3cfabf=_0x2e8970[_0xeb75c3(0x1c2)]>0x0;let _0x28483c,_0x40300a,_0x17587c;const _0x17a092=_0x45df31[_0xeb75c3(0x186)](_0xeb75c3(0x1b1)),_0x4bdd73=_0x45df31[_0xeb75c3(0x186)](_0xeb75c3(0x181));if(_0x17a092){const _0xb94374=resolveAlias(_0x45df31[_0xeb75c3(0x195)],_0x17a092,undefined,resolveApiFilePath(_0x45df31[_0xeb75c3(0x195)],_0x45df31[_0xeb75c3(0x16d)]));if(!_0xb94374){const _0x4efda2=_0x3cfabf?_0xeb75c3(0x1b5)+_0x2e8970[_0xeb75c3(0x18d)](_0x2b264b=>_0x2b264b['alias'])[_0xeb75c3(0x1c9)](',\x20'):_0xeb75c3(0x18f)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0xeb75c3(0x188)](_0xeb75c3(0x1be)+_0x17a092+_0xeb75c3(0x196)+_0x4efda2);}_0x28483c=_0x17a092,_0x40300a=_0xb94374;}else{if(_0x4bdd73){_0x40300a=_0x4bdd73;const _0x5c6d6e=_0x2e8970[_0xeb75c3(0x194)](_0x3b29eb=>_0x3b29eb[_0xeb75c3(0x183)]===_0x4bdd73);_0x28483c=_0x5c6d6e?.[_0xeb75c3(0x1b1)];}else{if(_0x45df31['nonInteractive'])throw CliErrors[_0xeb75c3(0x188)](_0xeb75c3(0x1a6));else{if(_0x3cfabf){const _0x2966dd=_0x2e8970[_0xeb75c3(0x18d)](_0xfec5c8=>_0xfec5c8['alias']+'\x20('+_0xfec5c8[_0xeb75c3(0x1b0)]+')'),_0x28eaf4=await promptSelect('Select\x20dataset:',_0x2966dd),_0x4348ab=_0x2e8970[_0x28eaf4];if(!_0x4348ab)throw CliErrors['validation'](_0xeb75c3(0x1c3));_0x28483c=_0x4348ab[_0xeb75c3(0x1b1)],_0x40300a=_0x4348ab['datasetCode'];}else{const _0x1ab4f5=await listDatasets(_0x45df31[_0xeb75c3(0x16d)]);if(_0x1ab4f5['length']===0x0)throw CliErrors[_0xeb75c3(0x188)]('No\x20datasets\x20found\x20for\x20this\x20app.');const _0x37342b=_0x1ab4f5[_0xeb75c3(0x18d)](_0x4ce2e3=>_0x4ce2e3[_0xeb75c3(0x19f)]+'\x20['+(_0x4ce2e3[_0xeb75c3(0x1a3)]??_0xeb75c3(0x1b9))+_0xeb75c3(0x1a7)+_0x4ce2e3[_0xeb75c3(0x16f)]+')'),_0x163cce=await promptSelect('Select\x20dataset:',_0x37342b),_0x230fc1=_0x1ab4f5[_0x163cce];if(!_0x230fc1)throw CliErrors['validation'](_0xeb75c3(0x1c3));_0x40300a=_0x230fc1[_0xeb75c3(0x16f)],_0x28483c=undefined;}}}}const _0x1737fb=await listDatasets(_0x45df31[_0xeb75c3(0x16d)]),_0x36f298=_0x1737fb[_0xeb75c3(0x194)](_0x5d4d1a=>_0x5d4d1a[_0xeb75c3(0x16f)]===_0x40300a);if(!_0x36f298)throw CliErrors[_0xeb75c3(0x188)]('Dataset\x20not\x20found\x20for\x20code\x20\x22'+_0x40300a+'\x22.\x20'+(_0x28483c?_0xeb75c3(0x179)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));_0x17587c=_0x36f298['id'];const _0x574640=_0x28483c??_0x40300a,_0x101119=await listBffDatasetOperations(_0x45df31[_0xeb75c3(0x16d)],_0x17587c),_0xbfffb2=_0x101119?Object[_0xeb75c3(0x193)](_0x101119):[];if(_0xbfffb2['length']===0x0)throw CliErrors[_0xeb75c3(0x188)]('No\x20operation\x20types\x20found\x20for\x20dataset\x20'+_0x574640+'.');let _0x313f57;const _0x5302f0=_0x45df31[_0xeb75c3(0x186)](_0xeb75c3(0x176));if(_0x5302f0){if(!_0xbfffb2[_0xeb75c3(0x198)](_0x5302f0))throw CliErrors[_0xeb75c3(0x188)](_0xeb75c3(0x1c0)+_0x5302f0+'\x22\x20not\x20found\x20for\x20dataset\x20'+_0x574640+'.\x20'+(_0xeb75c3(0x1c5)+_0xbfffb2[_0xeb75c3(0x1c9)](',\x20')));_0x313f57=_0x5302f0;}else{if(_0x45df31[_0xeb75c3(0x187)])throw CliErrors[_0xeb75c3(0x188)](_0xeb75c3(0x178));const _0x56439e=await promptSelect('Select\x20operation\x20type:',_0xbfffb2);_0x313f57=_0xbfffb2[_0x56439e]??_0xbfffb2[0x0];}let _0x4ba1f6=normalizeHookFunctionNode(_0x45df31[_0xeb75c3(0x186)](_0xeb75c3(0x1a4)));if(!_0x4ba1f6){if(_0x45df31[_0xeb75c3(0x186)]('function-node'))throw CliErrors[_0xeb75c3(0x188)](_0xeb75c3(0x1cc));if(_0x45df31[_0xeb75c3(0x187)])throw CliErrors[_0xeb75c3(0x188)](_0xeb75c3(0x1a8));const _0x15db58=await promptSelect(_0xeb75c3(0x177),['before',_0xeb75c3(0x1b4)]);_0x4ba1f6=[_0xeb75c3(0x1bb),'after'][_0x15db58]??_0xeb75c3(0x1bb);}return{'alias':_0x28483c,'datasetCode':_0x40300a,'datasetId':_0x17587c,'operationType':_0x313f57,'functionNode':_0x4ba1f6};}async function promptSelect(_0x3a1470,_0x1d0e49){const _0x37b2ba=a31_0x4f7967;if(_0x1d0e49[_0x37b2ba(0x1c2)]===0x1)return 0x0;for(const [_0x2ae09f,_0x80838]of _0x1d0e49['entries']()){process[_0x37b2ba(0x16b)][_0x37b2ba(0x1b7)]('\x20\x20'+(_0x2ae09f+0x1)+'.\x20'+_0x80838+'\x0a');}const _0x23d44a=createInterface({'input':process[_0x37b2ba(0x1ab)],'output':process[_0x37b2ba(0x16b)]});while(!![]){const _0x216256=await new Promise(_0x3b104f=>{const _0x86e403=_0x37b2ba;_0x23d44a[_0x86e403(0x189)](_0x3a1470+'\x20',_0x3b104f);}),_0x435bbf=Number[_0x37b2ba(0x192)](_0x216256[_0x37b2ba(0x1a5)](),0xa);if(Number['isInteger'](_0x435bbf)&&_0x435bbf>=0x1&&_0x435bbf<=_0x1d0e49[_0x37b2ba(0x1c2)])return _0x23d44a[_0x37b2ba(0x170)](),_0x435bbf-0x1;process[_0x37b2ba(0x16b)][_0x37b2ba(0x1b7)]('\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20'+_0x1d0e49[_0x37b2ba(0x1c2)]+'.\x0a');}}function buildFilePath(_0x2ccc7c,_0xb9df13,_0x2ba355,_0x2e3081){const _0x4e5e60=a31_0x4f7967;if(_0xb9df13===_0x4e5e60(0x1af)){if(!_0x2e3081)throw CliErrors[_0x4e5e60(0x188)](_0x4e5e60(0x1a2));const _0x479f92=_0x2e3081[_0x4e5e60(0x1b1)]??_0x2e3081[_0x4e5e60(0x183)];return join(_0x2ccc7c[_0x4e5e60(0x1ba)],'HOOK',_0x479f92,_0x2e3081['operationType'],_0x2e3081['functionNode'],_0x2ba355+'.js');}return join(_0x2ccc7c['scriptsRootDir'],_0xb9df13,_0x2ba355+_0x4e5e60(0x1c7));}export function generateTemplate(_0x42e8b1,_0x397caa,_0x5df18d,_0x1fce1d,_0x1c0607){const _0x3fcee5=a31_0x4f7967,_0x189a6c=_0x1fce1d?.[_0x3fcee5(0x1a5)]()||DEFAULT_BFF_SCRIPT_DESCRIPTION,_0x5b0837=getAppBaseUrl(_0x5df18d),_0x690197='\x20*\x20[依赖数据集]\x20无(如有依赖,DB_TABLE\x20填物理表名;METADATA\x20填数据集编码与用途)\x0a\x20*\x20[调用\x20BF]\x20无(如有调用,填写脚本名称与用途)\x0a\x20*\x20[执行\x20SQL]\x20无(如有执行,填写\x20SQL\x20名称与用途)\x0a\x20*\x20[副作用]\x20无(如有通知或外部调用,说明影响与失败策略)';if(_0x42e8b1===_0x3fcee5(0x1ac))return'/**\x0a\x20*\x20'+_0x189a6c+_0x3fcee5(0x1c8)+_0x397caa+'\x0a\x20*\x20[平台配置]\x20'+_0x5b0837+_0x3fcee5(0x1ca)+_0x5df18d+_0x3fcee5(0x19b)+_0x397caa+_0x3fcee5(0x1c1)+_0x397caa+_0x3fcee5(0x1cb)+_0x690197+'\x0a\x20*\x20[参数字段]\x20按实际输入为\x20params.<字段名>\x20补充\x20JSDoc\x20参数标签;无字段时仅保留根参数\x0a\x20*\x20[异常说明]\x20无;显式抛出异常时补充异常类型与触发条件\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20请求参数\x0a\x20*\x20@param\x20{Object}\x20context\x20平台注入的执行上下文\x0a\x20*\x20@returns\x20{Promise<Object>}\x20TODO:\x20补充返回数据结构\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20'+_0x397caa+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(_0x42e8b1===_0x3fcee5(0x174))return'/**\x0a\x20*\x20'+_0x189a6c+_0x3fcee5(0x1b8)+_0x397caa+_0x3fcee5(0x17f)+_0x5df18d+'/'+_0x397caa+_0x3fcee5(0x19e)+_0x5b0837+_0x3fcee5(0x1ca)+_0x5df18d+_0x3fcee5(0x197)+_0x397caa+_0x3fcee5(0x171)+_0x690197+_0x3fcee5(0x184)+_0x397caa+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(!_0x1c0607)throw CliErrors[_0x3fcee5(0x188)]('HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.');const _0x53ee64=_0x1c0607[_0x3fcee5(0x1b1)]??_0x1c0607[_0x3fcee5(0x183)],_0x5392fe=_0x1c0607[_0x3fcee5(0x17a)]==='before'?_0x3fcee5(0x1c4):_0x3fcee5(0x1c6),_0x559352=_0x1c0607[_0x3fcee5(0x17a)]===_0x3fcee5(0x1bb)?_0x3fcee5(0x191):_0x3fcee5(0x17d);return _0x3fcee5(0x1b2)+_0x189a6c+_0x3fcee5(0x1ae)+_0x397caa+_0x3fcee5(0x17c)+_0x5df18d+'/'+_0x1c0607['datasetCode']+'/'+_0x1c0607['operationType']+_0x3fcee5(0x19e)+_0x5b0837+_0x3fcee5(0x1bf)+_0x1c0607[_0x3fcee5(0x18e)]+_0x3fcee5(0x190)+_0x5df18d+_0x3fcee5(0x180)+_0x53ee64+'/'+_0x1c0607[_0x3fcee5(0x1a0)]+'/'+_0x1c0607['functionNode']+'/'+_0x397caa+_0x3fcee5(0x18b)+_0x1c0607[_0x3fcee5(0x17a)]+'\x0a'+_0x690197+'\x0a\x20*\x20[参数字段]\x20按实际输入为\x20params.<字段名>\x20补充\x20JSDoc\x20参数标签;无字段时仅保留根参数\x0a\x20*\x20[异常说明]\x20无;显式抛出异常时补充异常类型与触发条件\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20'+_0x5392fe+_0x3fcee5(0x1ad)+_0x559352+_0x3fcee5(0x16e)+_0x397caa+_0x3fcee5(0x175);}function a31_0x2695(_0x1646ca,_0x42187a){_0x1646ca=_0x1646ca-0x167;const _0x17eba3=a31_0x17eb();let _0x2695c9=_0x17eba3[_0x1646ca];return _0x2695c9;}function a31_0x17eb(){const _0x4bbc87=['3504bAbbsb','bff','\x0a\x20*\x20[平台配置]\x20','name','operationType','Scaffold\x20a\x20new\x20Backend\x20Function\x20script\x20from\x20template','HOOK\x20requires\x20alias/operation/node\x20options.','source','function-node','trim','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.',']\x20(','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','68IQqQHp','read','stdin','COMMON','\x0a\x20*\x20@param\x20{Object}\x20context\x20平台注入的执行上下文\x0a\x20*\x20@returns\x20{Promise<Object>}\x20','\x0a\x20*\x0a\x20*\x20[脚本类型]\x20HOOK\x0a\x20*\x20[脚本名称]\x20','HOOK','tableName','alias','/**\x0a\x20*\x20','Script\x20type','after','Available\x20aliases:\x20','Invalid\x20function\x20name\x20\x22','write','\x0a\x20*\x0a\x20*\x20[脚本类型]\x20ENDPOINT\x0a\x20*\x20[脚本名称]\x20','UNKNOWN','scriptsRootDir','before','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','description','Alias\x20\x22','/data/dataset/','Operation\x20type\x20\x22','.js\x0a\x20*\x20[调用方式]\x20context.client.bff.execute({\x20scriptName:\x20\x22','length','Invalid\x20dataset\x20selection.','当前请求参数','Available:\x20','当前响应结果','.js','\x0a\x20*\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[脚本名称]\x20','join','/data/backend-function\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/','\x22,\x20params\x20})\x0a','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','string','716121pmXGps','type','create','stderr','Script\x20description','appCode','\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','code','close','.js\x0a','33795OgiWxd','7507270pmXQim','ENDPOINT','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','operation-type','Select\x20trigger\x20node:','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','functionNode','7187712rzvSzS','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','修改后的响应结果','utf8','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/','/HOOK/','datasetcode','8459055AJpqpW','datasetCode','\x0a\x20*\x20[参数字段]\x20按实际请求体为\x20params.<字段名>\x20补充\x20JSDoc\x20参数标签;无字段时仅保留根参数\x0a\x20*\x20[异常说明]\x20无;显式抛出异常时补充异常类型与触发条件\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20HTTP\x20请求体参数\x0a\x20*\x20@param\x20{Object}\x20context\x20平台注入的执行上下文\x0a\x20*\x20@returns\x20{Promise<Object>}\x20TODO:\x20补充业务返回数据结构\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','2846575IFVCFE','str','nonInteractive','validation','question','Trigger\x20node\x20(HOOK\x20only)','.js\x0a\x20*\x20[触发节点]\x20','8hYmfWK','map','datasetId','No\x20api.ts\x20found.\x20Run\x20`','#api-list\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/','修改后的请求参数','parseInt','keys','find','apiDir','\x22\x20not\x20found.\x20','/ENDPOINT/','includes','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','6405PoANBK','/COMMON/'];a31_0x17eb=function(){return _0x4bbc87;};return a31_0x17eb();}
|
|
1
|
+
const a31_0x29cb16=a31_0x373d;function a31_0x58f7(){const _0x10bd8b=['#api-list\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/','datasetcode','\x0a\x20*\x20[参数字段]\x20按实际请求体为\x20params.<字段名>\x20补充\x20JSDoc\x20参数标签;无字段时仅保留根参数\x0a\x20*\x20[异常说明]\x20无;显式抛出异常时补充异常类型与触发条件\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20HTTP\x20请求体参数\x0a\x20*\x20@param\x20{Object}\x20context\x20平台注入的执行上下文\x0a\x20*\x20@returns\x20{Promise<Object>}\x20TODO:\x20补充业务返回数据结构\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','2KORpjJ','type','\x22\x20not\x20found.\x20','修改后的请求参数','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','\x0a\x20*\x0a\x20*\x20[脚本类型]\x20ENDPOINT\x0a\x20*\x20[脚本名称]\x20','Operation\x20type\x20\x22','4524741PhMOhU','743655NkyTNE','Available:\x20','961276TPTLeE','Script\x20description','/**\x0a\x20*\x20','isInteger','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','str','.js','No\x20api.ts\x20found.\x20Run\x20`','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','当前请求参数','stderr','Invalid\x20function\x20name\x20\x22','code','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','Available\x20aliases:\x20','修改后的响应结果','\x22,\x20params\x20})\x0a','222mcnOeW','File\x20already\x20exists:\x20','No\x20datasets\x20found\x20for\x20this\x20app.','Invalid\x20dataset\x20selection.','length','HOOK','after','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','question','/data/dataset/','appCode','alias','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','scriptsRootDir','33754BOXvql','close','find','operationType','before','Select\x20dataset:','source','No\x20operation\x20types\x20found\x20for\x20dataset\x20','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','\x20api\x20pull`\x20to\x20refresh.','function-node','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','\x0a\x20*\x20[平台配置]\x20','/data/backend-function\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/','map','utf8',']\x20(','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','3242344RBheoQ','apiDir','string','operation-type','validation','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/','\x0a\x20*\x20[参数字段]\x20按实际输入为\x20params.<字段名>\x20补充\x20JSDoc\x20参数标签;无字段时仅保留根参数\x0a\x20*\x20[异常说明]\x20无;显式抛出异常时补充异常类型与触发条件\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20请求参数\x0a\x20*\x20@param\x20{Object}\x20context\x20平台注入的执行上下文\x0a\x20*\x20@returns\x20{Promise<Object>}\x20TODO:\x20补充返回数据结构\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','.js\x0a\x20*\x20[调用方式]\x20context.client.bff.execute({\x20scriptName:\x20\x22','datasetId','当前响应结果','\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','/ENDPOINT/','COMMON','Created\x20','join','description','.js\x0a\x20*\x20[触发节点]\x20','functionNode','\x0a\x20*\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[脚本名称]\x20','.js\x0a','Script\x20type','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','ENDPOINT','\x20function:\x20','73188SMvkmp','trim','nonInteractive','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','create','Function\x20name\x20(valid\x20JS\x20identifier)','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','Select\x20trigger\x20node:','name','Operation\x20type\x20(HOOK\x20only)','datasetCode','561147HdJCxQ','includes','write'];a31_0x58f7=function(){return _0x10bd8b;};return a31_0x58f7();}(function(_0x23f3e9,_0x370951){const _0x2b4178=a31_0x373d,_0x4c40c6=_0x23f3e9();while(!![]){try{const _0x1b76a8=-parseInt(_0x2b4178(0x18c))/0x1+-parseInt(_0x2b4178(0x19d))/0x2*(-parseInt(_0x2b4178(0x197))/0x3)+parseInt(_0x2b4178(0x1a7))/0x4+-parseInt(_0x2b4178(0x1a5))/0x5+-parseInt(_0x2b4178(0x1b8))/0x6*(-parseInt(_0x2b4178(0x1c6))/0x7)+parseInt(_0x2b4178(0x174))/0x8+-parseInt(_0x2b4178(0x1a4))/0x9;if(_0x1b76a8===_0x370951)break;else _0x4c40c6['push'](_0x4c40c6['shift']());}catch(_0x3d7ed5){_0x4c40c6['push'](_0x4c40c6['shift']());}}}(a31_0x58f7,0x45ec7));function a31_0x373d(_0xe1a24d,_0x6625fc){_0xe1a24d=_0xe1a24d-0x174;const _0x58f74e=a31_0x58f7();let _0x373d63=_0x58f74e[_0xe1a24d];return _0x373d63;}import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{DEFAULT_BFF_SCRIPT_DESCRIPTION,isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{getAppBaseUrl}from'../../constant/domain.js';export const bffCreate={'service':'bff','command':a31_0x29cb16(0x190),'description':'Scaffold\x20a\x20new\x20Backend\x20Function\x20script\x20from\x20template','risk':'read','flags':[{'name':a31_0x29cb16(0x19e),'type':a31_0x29cb16(0x176),'required':!![],'enum':['COMMON',a31_0x29cb16(0x18a),a31_0x29cb16(0x1bd)],'description':a31_0x29cb16(0x188)},{'name':a31_0x29cb16(0x194),'type':a31_0x29cb16(0x176),'required':!![],'description':a31_0x29cb16(0x191)},{'name':'description','type':'string','description':a31_0x29cb16(0x1a8)},{'name':a31_0x29cb16(0x1c3),'type':a31_0x29cb16(0x176),'description':a31_0x29cb16(0x192)},{'name':a31_0x29cb16(0x19b),'type':a31_0x29cb16(0x176),'description':a31_0x29cb16(0x1ce)},{'name':a31_0x29cb16(0x177),'type':a31_0x29cb16(0x176),'description':a31_0x29cb16(0x195)},{'name':a31_0x29cb16(0x1d0),'type':'string','description':'Trigger\x20node\x20(HOOK\x20only)','enum':[a31_0x29cb16(0x1ca),'after']}],async 'validate'(_0x15941d){const _0x28da3d=a31_0x29cb16,_0x5c50b1=_0x15941d['str'](_0x28da3d(0x194));if(!isValidBffFunctionName(_0x5c50b1))throw CliErrors[_0x28da3d(0x178)](_0x28da3d(0x1b2)+_0x5c50b1+_0x28da3d(0x1bf));},async 'execute'(_0x51b0a8){const _0x1a8fa3=a31_0x29cb16,_0xa74ed6=loadBffProjectConfig(_0x51b0a8['appCode']),_0x248553=_0x51b0a8[_0x1a8fa3(0x1ac)](_0x1a8fa3(0x19e)),_0x32ff03=_0x51b0a8[_0x1a8fa3(0x1ac)](_0x1a8fa3(0x194)),_0x263b01=_0x51b0a8['str']('description')||undefined,_0x5f4f5e=_0x248553===_0x1a8fa3(0x1bd)?await resolveHookOptions(_0xa74ed6,_0x51b0a8):undefined,_0x24b9ac=buildFilePath(_0xa74ed6,_0x248553,_0x32ff03,_0x5f4f5e);if(await fileExists(_0x24b9ac))throw CliErrors['validation'](_0x1a8fa3(0x1b9)+_0x24b9ac);await mkdir(dirname(_0x24b9ac),{'recursive':!![]});const _0x49ec36=generateTemplate(_0x248553,_0x32ff03,_0x51b0a8[_0x1a8fa3(0x1c2)],_0x263b01,_0x5f4f5e);await writeFile(_0x24b9ac,_0x49ec36,_0x1a8fa3(0x1d5));const _0x5a0345={'type':_0x248553,'name':_0x32ff03,'path':_0x24b9ac};if(_0x263b01)_0x5a0345[_0x1a8fa3(0x183)]=_0x263b01;if(_0x5f4f5e){if(_0x5f4f5e[_0x1a8fa3(0x1c3)])_0x5a0345[_0x1a8fa3(0x1c3)]=_0x5f4f5e[_0x1a8fa3(0x1c3)];_0x5a0345['datasetCode']=_0x5f4f5e[_0x1a8fa3(0x196)],_0x5a0345[_0x1a8fa3(0x1c9)]=_0x5f4f5e[_0x1a8fa3(0x1c9)],_0x5a0345['functionNode']=_0x5f4f5e[_0x1a8fa3(0x185)];}return{'ok':!![],'data':_0x5a0345,'message':_0x1a8fa3(0x181)+_0x248553+_0x1a8fa3(0x18b)+_0x32ff03};}};async function resolveHookOptions(_0x3ebc62,_0x25a123){const _0x162c63=a31_0x29cb16,_0x1d22bb=loadAliasMap(_0x25a123[_0x162c63(0x175)],undefined,resolveApiFilePath(_0x25a123[_0x162c63(0x175)],_0x25a123[_0x162c63(0x1c2)])),_0x119a23=_0x1d22bb[_0x162c63(0x1bc)]>0x0;let _0x5e38d6,_0x575733,_0x5a7388;const _0x1c32f0=_0x25a123[_0x162c63(0x1ac)](_0x162c63(0x1c3)),_0xc797b0=_0x25a123[_0x162c63(0x1ac)](_0x162c63(0x19b));if(_0x1c32f0){const _0x22996a=resolveAlias(_0x25a123[_0x162c63(0x175)],_0x1c32f0,undefined,resolveApiFilePath(_0x25a123['apiDir'],_0x25a123['appCode']));if(!_0x22996a){const _0x2593c5=_0x119a23?_0x162c63(0x1b5)+_0x1d22bb[_0x162c63(0x1d4)](_0x38a7b7=>_0x38a7b7[_0x162c63(0x1c3)])[_0x162c63(0x182)](',\x20'):_0x162c63(0x1ae)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0x162c63(0x178)]('Alias\x20\x22'+_0x1c32f0+_0x162c63(0x19f)+_0x2593c5);}_0x5e38d6=_0x1c32f0,_0x575733=_0x22996a;}else{if(_0xc797b0){_0x575733=_0xc797b0;const _0x19d61f=_0x1d22bb[_0x162c63(0x1c8)](_0x1edc9e=>_0x1edc9e[_0x162c63(0x196)]===_0xc797b0);_0x5e38d6=_0x19d61f?.[_0x162c63(0x1c3)];}else{if(_0x25a123[_0x162c63(0x18e)])throw CliErrors[_0x162c63(0x178)](_0x162c63(0x1c4));else{if(_0x119a23){const _0x3afed3=_0x1d22bb[_0x162c63(0x1d4)](_0x9e0e34=>_0x9e0e34['alias']+'\x20('+_0x9e0e34['tableName']+')'),_0x5448c1=await promptSelect('Select\x20dataset:',_0x3afed3),_0x17691d=_0x1d22bb[_0x5448c1];if(!_0x17691d)throw CliErrors[_0x162c63(0x178)](_0x162c63(0x1bb));_0x5e38d6=_0x17691d[_0x162c63(0x1c3)],_0x575733=_0x17691d[_0x162c63(0x196)];}else{const _0x42528d=await listDatasets(_0x25a123[_0x162c63(0x1c2)]);if(_0x42528d[_0x162c63(0x1bc)]===0x0)throw CliErrors['validation'](_0x162c63(0x1ba));const _0x3034b1=_0x42528d[_0x162c63(0x1d4)](_0x279e33=>_0x279e33['name']+'\x20['+(_0x279e33[_0x162c63(0x1cc)]??'UNKNOWN')+_0x162c63(0x1d6)+_0x279e33[_0x162c63(0x1b3)]+')'),_0x280735=await promptSelect(_0x162c63(0x1cb),_0x3034b1),_0x5ca1a3=_0x42528d[_0x280735];if(!_0x5ca1a3)throw CliErrors[_0x162c63(0x178)]('Invalid\x20dataset\x20selection.');_0x575733=_0x5ca1a3[_0x162c63(0x1b3)],_0x5e38d6=undefined;}}}}const _0x20694d=await listDatasets(_0x25a123[_0x162c63(0x1c2)]),_0xb18a07=_0x20694d['find'](_0x258b39=>_0x258b39[_0x162c63(0x1b3)]===_0x575733);if(!_0xb18a07)throw CliErrors[_0x162c63(0x178)]('Dataset\x20not\x20found\x20for\x20code\x20\x22'+_0x575733+'\x22.\x20'+(_0x5e38d6?_0x162c63(0x1af)+CLI_BIN_NAME+_0x162c63(0x1cf):''));_0x5a7388=_0xb18a07['id'];const _0xa92b90=_0x5e38d6??_0x575733,_0x14e953=await listBffDatasetOperations(_0x25a123['appCode'],_0x5a7388),_0x57dd8e=_0x14e953?Object['keys'](_0x14e953):[];if(_0x57dd8e['length']===0x0)throw CliErrors[_0x162c63(0x178)](_0x162c63(0x1cd)+_0xa92b90+'.');let _0x22651d;const _0x30438c=_0x25a123[_0x162c63(0x1ac)]('operation-type');if(_0x30438c){if(!_0x57dd8e[_0x162c63(0x198)](_0x30438c))throw CliErrors[_0x162c63(0x178)](_0x162c63(0x1a3)+_0x30438c+'\x22\x20not\x20found\x20for\x20dataset\x20'+_0xa92b90+'.\x20'+(_0x162c63(0x1a6)+_0x57dd8e[_0x162c63(0x182)](',\x20')));_0x22651d=_0x30438c;}else{if(_0x25a123[_0x162c63(0x18e)])throw CliErrors[_0x162c63(0x178)](_0x162c63(0x1d7));const _0x58b4db=await promptSelect('Select\x20operation\x20type:',_0x57dd8e);_0x22651d=_0x57dd8e[_0x58b4db]??_0x57dd8e[0x0];}let _0x52314e=normalizeHookFunctionNode(_0x25a123[_0x162c63(0x1ac)](_0x162c63(0x1d0)));if(!_0x52314e){if(_0x25a123[_0x162c63(0x1ac)](_0x162c63(0x1d0)))throw CliErrors['validation'](_0x162c63(0x1d1));if(_0x25a123[_0x162c63(0x18e)])throw CliErrors[_0x162c63(0x178)](_0x162c63(0x189));const _0x952275=await promptSelect(_0x162c63(0x193),[_0x162c63(0x1ca),'after']);_0x52314e=[_0x162c63(0x1ca),_0x162c63(0x1be)][_0x952275]??_0x162c63(0x1ca);}return{'alias':_0x5e38d6,'datasetCode':_0x575733,'datasetId':_0x5a7388,'operationType':_0x22651d,'functionNode':_0x52314e};}async function promptSelect(_0x392237,_0x5e7491){const _0x17872b=a31_0x29cb16;if(_0x5e7491['length']===0x1)return 0x0;for(const [_0xa4ceef,_0x1faad2]of _0x5e7491['entries']()){process[_0x17872b(0x1b1)][_0x17872b(0x199)]('\x20\x20'+(_0xa4ceef+0x1)+'.\x20'+_0x1faad2+'\x0a');}const _0x789423=createInterface({'input':process['stdin'],'output':process[_0x17872b(0x1b1)]});while(!![]){const _0x3c049f=await new Promise(_0xba2d70=>{const _0x40c91e=_0x17872b;_0x789423[_0x40c91e(0x1c0)](_0x392237+'\x20',_0xba2d70);}),_0x4dbb3a=Number['parseInt'](_0x3c049f[_0x17872b(0x18d)](),0xa);if(Number[_0x17872b(0x1aa)](_0x4dbb3a)&&_0x4dbb3a>=0x1&&_0x4dbb3a<=_0x5e7491[_0x17872b(0x1bc)])return _0x789423[_0x17872b(0x1c7)](),_0x4dbb3a-0x1;process[_0x17872b(0x1b1)][_0x17872b(0x199)](_0x17872b(0x1ab)+_0x5e7491[_0x17872b(0x1bc)]+'.\x0a');}}function buildFilePath(_0x3f9297,_0x2b5439,_0x29e395,_0x3e31df){const _0xf0fd68=a31_0x29cb16;if(_0x2b5439===_0xf0fd68(0x1bd)){if(!_0x3e31df)throw CliErrors[_0xf0fd68(0x178)]('HOOK\x20requires\x20alias/operation/node\x20options.');const _0xde638e=_0x3e31df[_0xf0fd68(0x1c3)]??_0x3e31df['datasetCode'];return join(_0x3f9297[_0xf0fd68(0x1c5)],_0xf0fd68(0x1bd),_0xde638e,_0x3e31df[_0xf0fd68(0x1c9)],_0x3e31df['functionNode'],_0x29e395+'.js');}return join(_0x3f9297[_0xf0fd68(0x1c5)],_0x2b5439,_0x29e395+_0xf0fd68(0x1ad));}export function generateTemplate(_0x3d9ea9,_0x3caa8d,_0x373a7a,_0x205681,_0x52ecb9){const _0x139cae=a31_0x29cb16,_0x3b571b=_0x205681?.[_0x139cae(0x18d)]()||DEFAULT_BFF_SCRIPT_DESCRIPTION,_0x354e38=getAppBaseUrl(_0x373a7a),_0x2a1e6a='\x20*\x20[依赖数据集]\x20无(如有依赖,DB_TABLE\x20填物理表名;METADATA\x20填数据集编码与用途)\x0a\x20*\x20[调用\x20BF]\x20无(如有调用,填写脚本名称与用途)\x0a\x20*\x20[执行\x20SQL]\x20无(如有执行,填写\x20SQL\x20名称与用途)\x0a\x20*\x20[副作用]\x20无(如有通知或外部调用,说明影响与失败策略)';if(_0x3d9ea9===_0x139cae(0x180))return _0x139cae(0x1a9)+_0x3b571b+_0x139cae(0x186)+_0x3caa8d+_0x139cae(0x1d2)+_0x354e38+_0x139cae(0x1d3)+_0x373a7a+'/COMMON/'+_0x3caa8d+_0x139cae(0x17b)+_0x3caa8d+_0x139cae(0x1b7)+_0x2a1e6a+_0x139cae(0x17a)+_0x3caa8d+_0x139cae(0x18f);if(_0x3d9ea9===_0x139cae(0x18a))return'/**\x0a\x20*\x20'+_0x3b571b+_0x139cae(0x1a2)+_0x3caa8d+_0x139cae(0x179)+_0x373a7a+'/'+_0x3caa8d+_0x139cae(0x1d2)+_0x354e38+_0x139cae(0x1d3)+_0x373a7a+_0x139cae(0x17f)+_0x3caa8d+_0x139cae(0x187)+_0x2a1e6a+_0x139cae(0x19c)+_0x3caa8d+_0x139cae(0x18f);if(!_0x52ecb9)throw CliErrors['validation'](_0x139cae(0x1a1));const _0xf243c6=_0x52ecb9[_0x139cae(0x1c3)]??_0x52ecb9[_0x139cae(0x196)],_0x4af008=_0x52ecb9['functionNode']==='before'?_0x139cae(0x1b0):_0x139cae(0x17d),_0x2bcb5d=_0x52ecb9[_0x139cae(0x185)]===_0x139cae(0x1ca)?_0x139cae(0x1a0):_0x139cae(0x1b6);return'/**\x0a\x20*\x20'+_0x3b571b+'\x0a\x20*\x0a\x20*\x20[脚本类型]\x20HOOK\x0a\x20*\x20[脚本名称]\x20'+_0x3caa8d+_0x139cae(0x1b4)+_0x373a7a+'/'+_0x52ecb9['datasetCode']+'/'+_0x52ecb9[_0x139cae(0x1c9)]+_0x139cae(0x1d2)+_0x354e38+_0x139cae(0x1c1)+_0x52ecb9[_0x139cae(0x17c)]+_0x139cae(0x19a)+_0x373a7a+'/HOOK/'+_0xf243c6+'/'+_0x52ecb9[_0x139cae(0x1c9)]+'/'+_0x52ecb9['functionNode']+'/'+_0x3caa8d+_0x139cae(0x184)+_0x52ecb9[_0x139cae(0x185)]+'\x0a'+_0x2a1e6a+'\x0a\x20*\x20[参数字段]\x20按实际输入为\x20params.<字段名>\x20补充\x20JSDoc\x20参数标签;无字段时仅保留根参数\x0a\x20*\x20[异常说明]\x20无;显式抛出异常时补充异常类型与触发条件\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20'+_0x4af008+'\x0a\x20*\x20@param\x20{Object}\x20context\x20平台注入的执行上下文\x0a\x20*\x20@returns\x20{Promise<Object>}\x20'+_0x2bcb5d+_0x139cae(0x17e)+_0x3caa8d+_0x139cae(0x18f);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a32_0x573b2e=a32_0x2824;(function(_0x57835b,_0x22bd11){const _0x4fb627=a32_0x2824,_0x3c770=_0x57835b();while(!![]){try{const _0x493b3a=parseInt(_0x4fb627(0x179))/0x1+parseInt(_0x4fb627(0x160))/0x2+parseInt(_0x4fb627(0x170))/0x3*(-parseInt(_0x4fb627(0x180))/0x4)+parseInt(_0x4fb627(0x15e))/0x5+parseInt(_0x4fb627(0x186))/0x6*(parseInt(_0x4fb627(0x16e))/0x7)+-parseInt(_0x4fb627(0x166))/0x8+-parseInt(_0x4fb627(0x169))/0x9;if(_0x493b3a===_0x22bd11)break;else _0x3c770['push'](_0x3c770['shift']());}catch(_0x55c0a6){_0x3c770['push'](_0x3c770['shift']());}}}(a32_0x1042,0x436ba));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';function a32_0x2824(_0x480ff1,_0x3dfd70){_0x480ff1=_0x480ff1-0x15e;const _0x10424b=a32_0x1042();let _0x282422=_0x10424b[_0x480ff1];return _0x282422;}import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a32_0x573b2e(0x182),'command':a32_0x573b2e(0x16f),'description':a32_0x573b2e(0x177),'risk':'high-risk-write','flags':[{'name':'target','type':a32_0x573b2e(0x16b),'required':!![],'description':a32_0x573b2e(0x175)}],async 'validate'(_0x10257c){const _0x5aede0=a32_0x573b2e,_0x47186a=loadBffProjectConfig(_0x10257c[_0x5aede0(0x17c)]),_0x164659=await readBffLockFile(_0x47186a[_0x5aede0(0x178)]);if(!_0x164659)throw CliErrors['validation'](_0x5aede0(0x18b));},async 'dryRun'(_0x40de10){const _0x23b826=a32_0x573b2e,_0x5de24d=loadBffProjectConfig(_0x40de10['appCode']),_0x40e385=await readBffLockFile(_0x5de24d[_0x23b826(0x178)]);if(!_0x40e385)throw CliErrors['validation'](_0x23b826(0x15f));const {appLock:_0x426fd9}=ensureLockScope(_0x40e385,_0x40de10[_0x23b826(0x17c)],_0x5de24d['scriptsRoot'],_0x23b826(0x16f)),_0x3766ca=_0x40de10['str'](_0x23b826(0x17a)),_0x1ae3bf=Object['keys'](_0x426fd9[_0x23b826(0x185)]),_0x301b8b=resolveDeleteTarget(_0x3766ca,_0x1ae3bf),_0x344cce=_0x426fd9[_0x23b826(0x185)][_0x301b8b];if(!_0x344cce)throw CliErrors[_0x23b826(0x171)](_0x23b826(0x16a)+_0x301b8b+'\x22.');const _0x205dd3=resolveLocalFilePathFromLockKey(_0x5de24d,_0x301b8b),_0x3105e0=relative(_0x5de24d['projectRoot'],_0x205dd3),_0x3ca81e=join(_0x5de24d[_0x23b826(0x187)],_0x23b826(0x161),_0x3105e0);return{'method':_0x23b826(0x168),'url':_0x23b826(0x16c),'body':{'appCode':_0x40de10[_0x23b826(0x17c)],'target':_0x301b8b,'remoteId':_0x344cce[_0x23b826(0x183)],'localFilePath':_0x205dd3,'trashedPath':_0x3ca81e},'description':_0x23b826(0x173)+_0x301b8b+_0x23b826(0x165)};},async 'execute'(_0xd80449){const _0x3e8442=a32_0x573b2e,_0x219f64=loadBffProjectConfig(_0xd80449[_0x3e8442(0x17c)]),_0x8ebb51=await readBffLockFile(_0x219f64[_0x3e8442(0x178)]);if(!_0x8ebb51)throw CliErrors[_0x3e8442(0x171)](_0x3e8442(0x15f));const {lockData:_0x56ed9e,appLock:_0x2f9bd0}=ensureLockScope(_0x8ebb51,_0xd80449[_0x3e8442(0x17c)],_0x219f64[_0x3e8442(0x174)],_0x3e8442(0x16f)),_0x756fc7=JSON['parse'](JSON[_0x3e8442(0x189)](_0x56ed9e)),_0x44b430=_0x756fc7[_0x3e8442(0x18d)][_0xd80449[_0x3e8442(0x17c)]];if(!_0x44b430)throw new Error(_0x3e8442(0x188)+_0xd80449[_0x3e8442(0x17c)]+_0x3e8442(0x162));const _0x412577=_0xd80449[_0x3e8442(0x18e)](_0x3e8442(0x17a)),_0x33b52f=Object['keys'](_0x44b430[_0x3e8442(0x185)]),_0x16bf27=resolveDeleteTarget(_0x412577,_0x33b52f),_0x1fe6de=_0x44b430[_0x3e8442(0x185)][_0x16bf27];if(!_0x1fe6de)throw CliErrors[_0x3e8442(0x171)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x16bf27+'\x22.');await deleteBffScript(_0x1fe6de[_0x3e8442(0x183)]),delete _0x44b430[_0x3e8442(0x185)][_0x16bf27],_0x44b430['lastSync']=new Date()[_0x3e8442(0x18a)](),await writeBffLockFile(_0x219f64['lockFilePath'],_0x756fc7);const _0x405c05=resolveLocalFilePathFromLockKey(_0x219f64,_0x16bf27);let _0x1484af;await fileExists(_0x405c05)&&(_0x1484af=await moveToTrash(_0x219f64[_0x3e8442(0x172)],_0x219f64['trashDir'],_0x405c05),await cleanupEmptyDirectories(dirname(_0x405c05),_0x219f64[_0x3e8442(0x17d)]));await waitForDeleteSettlement(_0x219f64[_0x3e8442(0x178)],_0xd80449['appCode'],_0x16bf27,_0x405c05),await sleep(0x96);const _0x2794cc={'deleted':_0x16bf27,'remoteId':_0x1fe6de[_0x3e8442(0x183)]};if(_0x1484af)_0x2794cc['trashedTo']=_0x1484af;return{'ok':!![],'data':_0x2794cc,'message':_0x3e8442(0x17f)+_0x16bf27+(_0x1484af?_0x3e8442(0x18c):'')};}};function resolveDeleteTarget(_0x2d8890,_0x40a9ae){const _0x413b1f=a32_0x573b2e;if(_0x2d8890['includes']('/')){const _0x464e25=_0x40a9ae[_0x413b1f(0x16d)](_0x45b7f6=>_0x45b7f6===_0x2d8890);if(!_0x464e25)throw CliErrors[_0x413b1f(0x171)]('Function\x20not\x20found:\x20'+_0x2d8890);return _0x464e25;}const _0xa6c8f6=_0x40a9ae[_0x413b1f(0x17e)](_0x300b80=>_0x300b80['split']('/')['at'](-0x1)===_0x2d8890);if(_0xa6c8f6[_0x413b1f(0x163)]===0x0)throw CliErrors[_0x413b1f(0x171)]('Function\x20not\x20found:\x20'+_0x2d8890);if(_0xa6c8f6['length']>0x1)throw CliErrors['validation'](_0x413b1f(0x184)+_0x2d8890+_0x413b1f(0x181)+_0xa6c8f6['map'](_0x341bfb=>'\x20\x20-\x20'+_0x341bfb)[_0x413b1f(0x167)]('\x0a'));return _0xa6c8f6[0x0];}async function moveToTrash(_0x38fa49,_0x4264e1,_0x4652a8){const _0x4f2e17=a32_0x573b2e,_0x2f9479=new Date()[_0x4f2e17(0x18a)]()[_0x4f2e17(0x164)](/[:.]/g,'-'),_0x15720a=relative(_0x38fa49,_0x4652a8),_0x37e9df=join(_0x4264e1,_0x2f9479,_0x15720a);return await mkdir(dirname(_0x37e9df),{'recursive':!![]}),await rename(_0x4652a8,_0x37e9df),_0x37e9df;}async function cleanupEmptyDirectories(_0x47069d,_0x54da0a){const _0x46fefa=a32_0x573b2e;let _0x52e40b=resolve(_0x47069d);const _0x5303ae=resolve(_0x54da0a);while(_0x52e40b[_0x46fefa(0x176)](''+_0x5303ae+sep)||_0x52e40b===_0x5303ae){if(_0x52e40b===_0x5303ae)return;try{const _0x3322e0=await readdir(_0x52e40b);if(_0x3322e0[_0x46fefa(0x163)]>0x0)return;await rmdir(_0x52e40b);}catch{return;}_0x52e40b=dirname(_0x52e40b);}}function a32_0x1042(){const _0x350755=['Backend\x20Function\x20lock\x20file\x20not\x20found.','904932fPuCif','<timestamp>','\x22\x20not\x20found\x20after\x20ensureLockScope.','length','replace','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','3282496CPhPeW','join','POST','5743026yvRxXs','No\x20lock\x20entry\x20found\x20for\x20\x22','string','/api/management/library/scripts/delete','find','35KOBFDL','delete','3jPzmda','validation','projectRoot','Would\x20delete\x20','scriptsRoot','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','startsWith','Delete\x20a\x20Backend\x20Function\x20script\x20from\x20remote\x20and\x20local','lockFilePath','491191QIQTfb','target','Local\x20delete\x20not\x20settled\x20for\x20','appCode','scriptsRootDir','filter','Deleted\x20','825596XMiTuY','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','bff','remoteId','Multiple\x20functions\x20match\x20\x22','functions','235092WYuJup','trashDir','Lock\x20scope\x20for\x20app\x20\x22','stringify','toISOString','Backend\x20Function\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','\x20(local\x20file\x20moved\x20to\x20trash)','apps','str','1957060VmYHep'];a32_0x1042=function(){return _0x350755;};return a32_0x1042();}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x5c42b7,_0x1fa139,_0x4f15a8,_0x5b610e){const _0x456ecb=a32_0x573b2e;for(let _0x35cbe4=0x0;_0x35cbe4<DELETE_SETTLE_RETRY_COUNT;_0x35cbe4+=0x1){const _0x491815=await readBffLockFile(_0x5c42b7),_0x40308e=!!_0x491815?.[_0x456ecb(0x18d)]?.[_0x1fa139]?.['functions']?.[_0x4f15a8],_0x56076b=await fileExists(_0x5b610e);if(!_0x40308e&&!_0x56076b)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x456ecb(0x17b)+_0x4f15a8+'.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a33_0x5b04d9=a33_0x331e;function a33_0x331e(_0x1acc84,_0x3873f4){_0x1acc84=_0x1acc84-0x9b;const _0x8825d7=a33_0x8825();let _0x331e55=_0x8825d7[_0x1acc84];return _0x331e55;}(function(_0xfb723b,_0xf63f03){const _0x45f92a=a33_0x331e,_0x2d6c28=_0xfb723b();while(!![]){try{const _0x44579a=parseInt(_0x45f92a(0xb2))/0x1+parseInt(_0x45f92a(0x9b))/0x2*(parseInt(_0x45f92a(0xb0))/0x3)+parseInt(_0x45f92a(0xa0))/0x4*(parseInt(_0x45f92a(0xac))/0x5)+parseInt(_0x45f92a(0xa3))/0x6+-parseInt(_0x45f92a(0xa4))/0x7*(-parseInt(_0x45f92a(0xa9))/0x8)+parseInt(_0x45f92a(0x9c))/0x9+-parseInt(_0x45f92a(0xa1))/0xa;if(_0x44579a===_0xf63f03)break;else _0x2d6c28['push'](_0x2d6c28['shift']());}catch(_0x670dfa){_0x2d6c28['push'](_0x2d6c28['shift']());}}}(a33_0x8825,0xd072e));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':'bff','command':'detail','description':'Get\x20Backend\x20Function\x20script\x20details\x20by\x20ID','risk':'read','flags':[{'name':'id','type':'number','required':!![],'description':a33_0x5b04d9(0x9d)},{'name':a33_0x5b04d9(0xa6),'type':a33_0x5b04d9(0xad),'description':a33_0x5b04d9(0x9e)}],async 'execute'(_0x3a2f32){const _0x52debd=a33_0x5b04d9,_0x1ff261=await getBffScriptInfo(_0x3a2f32[_0x52debd(0xaa)]('id')),_0x11ae0f=_0x3a2f32['bool'](_0x52debd(0xa6));if(_0x11ae0f)return{'ok':!![],'data':_0x1ff261};return{'ok':!![],'data':{'id':_0x1ff261['id'],'functionName':_0x1ff261[_0x52debd(0x9f)]??'','version':_0x1ff261[_0x52debd(0xa7)]??'','updateUserName':_0x1ff261[_0x52debd(0xa5)]??'','appCode':_0x1ff261[_0x52debd(0xa8)],'scriptType':_0x1ff261[_0x52debd(0xab)],'description':_0x1ff261[_0x52debd(0xb1)]||_0x52debd(0xaf),'createdTime':_0x1ff261[_0x52debd(0xae)]??'','updatedTime':_0x1ff261['updatedTime']??'','scriptContent':_0x1ff261[_0x52debd(0xa2)]??''}};}};function a33_0x8825(){const _0x5e5ea7=['description','138875FKVTVX','7094oOrBFC','7057170IQAbkU','Script\x20ID','Return\x20full\x20raw\x20script\x20object','functionName','73492HjkRdy','31807080sVjcen','scriptContent','8722734fqlviw','5822446XMqVHU','updateUserName','verbose','version','appCode','8THMoTu','num','scriptType','135bFMOqQ','boolean','createdTime','(none)','279rSOovz'];a33_0x8825=function(){return _0x5e5ea7;};return a33_0x8825();}
|