@lovrabet/rabetbase-cli 2.5.1-beta.1 → 2.5.1-beta.3
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.d.ts +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.d.ts +107 -0
- package/lib/commands/dataset/field-restore.js +1 -0
- 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.d.ts +36 -0
- package/lib/commands/dataset/user-deleted-field-list.js +1 -0
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/table-diff-shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/deployment/auto-sync.d.ts +28 -0
- package/lib/commands/deployment/auto-sync.js +1 -0
- package/lib/commands/deployment/index.d.ts +2 -0
- package/lib/commands/deployment/index.js +1 -0
- package/lib/commands/deployment/sync.d.ts +2 -0
- package/lib/commands/deployment/sync.js +1 -0
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/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/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/deployment-sync.d.ts +10 -0
- package/lib/config/deployment-sync.js +1 -0
- package/lib/config/domain-config.d.ts +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/project-routing.js +1 -1
- package/lib/config/schema.d.ts +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.d.ts +2 -0
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/routing-profile.js +1 -1
- package/lib/context/app-resolver.d.ts +2 -0
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +35 -16
- 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/kb-search-client.d.ts +30 -0
- package/lib/core/kb-search-client.js +1 -0
- 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/types.d.ts +5 -0
- 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/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/rabetbase/SKILL.md +12 -6
- package/skills/rabetbase/references/rabetbase-config.md +4 -1
- package/skills/rabetbase/references/rabetbase-dataset-business-group-update.md +9 -9
- package/skills/rabetbase/references/rabetbase-dataset-business-groups.md +1 -1
- package/skills/rabetbase/references/rabetbase-dataset-field-restore.md +59 -0
- package/skills/rabetbase/references/rabetbase-dataset-user-deleted-field-list.md +47 -0
- package/skills/rabetbase/references/rabetbase-deployment-sync.md +92 -0
- package/skills/rabetbase/references/rabetbase-doctor.md +1 -1
- package/skills/rabetbase/references/rabetbase-init.md +2 -0
- package/skills/rabetbase/references/rabetbase-kb.md +7 -7
- package/skills/rabetbase.manifest.json +6 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x59fce7,_0x1137ac){const _0x58e72b=a19_0x3a9d,_0x39e7bd=_0x59fce7();while(!![]){try{const _0x2bc432=-parseInt(_0x58e72b(0xfa))/0x1+parseInt(_0x58e72b(0xfb))/0x2*(-parseInt(_0x58e72b(0xf7))/0x3)+-parseInt(_0x58e72b(0xf1))/0x4*(parseInt(_0x58e72b(0xf2))/0x5)+parseInt(_0x58e72b(0xf4))/0x6+parseInt(_0x58e72b(0xf6))/0x7+-parseInt(_0x58e72b(0xf5))/0x8*(-parseInt(_0x58e72b(0xf8))/0x9)+-parseInt(_0x58e72b(0xf9))/0xa*(-parseInt(_0x58e72b(0xf3))/0xb);if(_0x2bc432===_0x1137ac)break;else _0x39e7bd['push'](_0x39e7bd['shift']());}catch(_0x5ade40){_0x39e7bd['push'](_0x39e7bd['shift']());}}}(a19_0x25c4,0xad5af));import{appListDefinition}from'../../commands/app/list.js';import{appMembersListDefinition}from'../../commands/app/members-list.js';function a19_0x3a9d(_0x499fd1,_0x5672d2){_0x499fd1=_0x499fd1-0xf1;const _0x25c431=a19_0x25c4();let _0x3a9dc8=_0x25c431[_0x499fd1];return _0x3a9dc8;}function a19_0x25c4(){const _0x3f756d=['27qzPlRJ','65260FzoOSn','307578XPuXGF','1858834ZgFkhv','67948wnwJhG','255TWnkmx','77TMHUOP','7897152DUcCOc','998584EiFjfS','7539364CCYqgM','3EcJJMU'];a19_0x25c4=function(){return _0x3f756d;};return a19_0x25c4();}export const appDefinitions=[appListDefinition,appMembersListDefinition];
|
package/lib/commands/app/list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a20_0x5d11e1=a20_0x2d24;function a20_0x4e9e(){const _0x514b2b=['remote','merged','20VNGTuJ','globalConfig','isCurrent','71718ZHGwsF','projectPath','10TMzjGp','3236589nzpnWC','3097523aNWpEW','entries','list','Use\x20`rabetbase\x20app\x20list\x20--remote`\x20for\x20the\x20platform\x20directory,\x20or\x20`rabetbase\x20app\x20list\x20--global/--project`\x20for\x20local\x20config.','app','`--remote`\x20cannot\x20be\x20used\x20with\x20`--global`\x20or\x20`--project`.','project','bool','1593606JoBklo','name','keys','validation','appcode','globalPath','length','defaultApp','optional','apps','220312ITxjBo','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','global','boolean','\x20config','6kQcaeG','object','map','projectConfig','read','1930828hDnlna','693444TzDFbv','.\x20Use\x20`','push','119OVQWir'];a20_0x4e9e=function(){return _0x514b2b;};return a20_0x4e9e();}(function(_0x2198ab,_0x2ddb97){const _0x4bda63=a20_0x2d24,_0xf7093f=_0x2198ab();while(!![]){try{const _0x14fa93=-parseInt(_0x4bda63(0xdc))/0x1*(-parseInt(_0x4bda63(0xf7))/0x2)+parseInt(_0x4bda63(0xe8))/0x3+-parseInt(_0x4bda63(0xfc))/0x4+parseInt(_0x4bda63(0xd9))/0x5*(-parseInt(_0x4bda63(0xfd))/0x6)+-parseInt(_0x4bda63(0xd6))/0x7*(-parseInt(_0x4bda63(0xf2))/0x8)+-parseInt(_0x4bda63(0xdf))/0x9*(-parseInt(_0x4bda63(0xde))/0xa)+-parseInt(_0x4bda63(0xe0))/0xb;if(_0x14fa93===_0x2ddb97)break;else _0xf7093f['push'](_0xf7093f['shift']());}catch(_0x4535ee){_0xf7093f['push'](_0xf7093f['shift']());}}}(a20_0x4e9e,0x54d98));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';import{buildAppProfileListFields}from'../../config/schema.js';function a20_0x2d24(_0xf2a7cf,_0x441f8c){_0xf2a7cf=_0xf2a7cf-0xd6;const _0x4e9e55=a20_0x4e9e();let _0x2d24da=_0x4e9e55[_0xf2a7cf];return _0x2d24da;}import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';import{listRemoteAppDirectory}from'../../commands/app/remote-directory.js';function buildItemsFromLayer(_0x4dca9b,_0x13c73d){const _0x434838=a20_0x2d24,_0x4c7315=[],_0x3a79ca=_0x4dca9b['apps']&&typeof _0x4dca9b[_0x434838(0xf1)]===_0x434838(0xf8)?_0x4dca9b[_0x434838(0xf1)]:{},_0x5cf33e=_0x4dca9b['defaultApp']||undefined,_0x1628fc=_0x5cf33e??(Object[_0x434838(0xea)](_0x3a79ca)[_0x434838(0xee)]===0x1?Object[_0x434838(0xea)](_0x3a79ca)[0x0]:undefined);for(const [_0x554863,_0x72b9b0]of Object[_0x434838(0xe1)](_0x3a79ca)){if(!_0x72b9b0||typeof _0x72b9b0!==_0x434838(0xf8)||!_0x72b9b0['appcode'])continue;_0x4c7315[_0x434838(0xff)]({'name':_0x554863,'appcode':_0x72b9b0[_0x434838(0xec)],'named':!![],'definedIn':_0x13c73d,'isDefault':_0x554863===_0x1628fc,...buildAppProfileListFields(_0x72b9b0)});}return _0x4c7315;}function buildMergedItems(_0x24dfbc,_0x4e0fbe){const _0x308b77=a20_0x2d24,{apps:apps={}}=_0x24dfbc,_0x10e151=_0x24dfbc[_0x308b77(0xef)],_0x1b94e8=_0x10e151??(Object[_0x308b77(0xea)](apps)[_0x308b77(0xee)]===0x1?Object[_0x308b77(0xea)](apps)[0x0]:undefined),_0x355faa=_0x4e0fbe[_0x308b77(0xda)]['apps']&&typeof _0x4e0fbe[_0x308b77(0xda)]['apps']===_0x308b77(0xf8)?_0x4e0fbe['globalConfig'][_0x308b77(0xf1)]:{},_0x24324a=_0x4e0fbe[_0x308b77(0xfa)][_0x308b77(0xf1)]&&typeof _0x4e0fbe['projectConfig'][_0x308b77(0xf1)]===_0x308b77(0xf8)?_0x4e0fbe['projectConfig'][_0x308b77(0xf1)]:{},_0x1596bf=Object['entries'](apps),_0x4d3b92=_0x1596bf[_0x308b77(0xf9)](([_0x874bf0,_0x3fe6d0])=>({'name':_0x874bf0,'appcode':_0x3fe6d0[_0x308b77(0xec)],'named':!![],'definedIn':appDefinedIn(_0x874bf0,_0x355faa,_0x24324a),'isDefault':_0x874bf0===_0x1b94e8,...buildAppProfileListFields(_0x3fe6d0)}));return _0x4d3b92;}function validateAppListFlags(_0x2cc7f9){const _0xc309ab=a20_0x2d24;if(!_0x2cc7f9[_0xc309ab(0xe7)](_0xc309ab(0xd7)))return;if(!_0x2cc7f9[_0xc309ab(0xe7)](_0xc309ab(0xf4))&&!_0x2cc7f9[_0xc309ab(0xe7)](_0xc309ab(0xe6)))return;throw CliErrors[_0xc309ab(0xeb)](_0xc309ab(0xe5),_0xc309ab(0xe3));}async function execute(_0x2a105a){const _0x90df1d=a20_0x2d24;validateAppListFlags(_0x2a105a);if(_0x2a105a[_0x90df1d(0xe7)](_0x90df1d(0xd7)))return{'ok':!![],'data':await listRemoteAppDirectory(_0x2a105a)};const _0x2f8aff=_0x2a105a[_0x90df1d(0xe7)](_0x90df1d(0xf4)),_0x4fdaf6=_0x2a105a[_0x90df1d(0xe7)](_0x90df1d(0xe6)),_0x11aa78=_0x2f8aff?_0x90df1d(0xf4):_0x4fdaf6?_0x90df1d(0xe6):_0x90df1d(0xd8),{config:_0x1377be,layers:_0x5a32a2}=readRawConfigWithLayers(),_0x2e3d7e=resolveDefaultAppSource(_0x5a32a2),{defaultApp:_0x35e41b}=_0x1377be;let _0x284db5,_0x1a404a;switch(_0x11aa78){case _0x90df1d(0xf4):_0x284db5=buildItemsFromLayer(_0x5a32a2['globalConfig'],_0x90df1d(0xf4)),_0x1a404a=_0x5a32a2['globalPath'];break;case _0x90df1d(0xe6):_0x284db5=buildItemsFromLayer(_0x5a32a2['projectConfig'],_0x90df1d(0xe6)),_0x1a404a=_0x5a32a2[_0x90df1d(0xdd)];break;default:_0x284db5=buildMergedItems(_0x1377be,_0x5a32a2);break;}enrichAppListItemsWithMergedSelection(_0x284db5,_0x2a105a['mergedCli']);if(_0x284db5[_0x90df1d(0xee)]===0x0){const _0x45031b=_0x11aa78===_0x90df1d(0xd8)?'':'\x20in\x20'+_0x11aa78+_0x90df1d(0xf6);return{'ok':!![],'data':[],'message':'No\x20apps\x20configured'+_0x45031b+_0x90df1d(0xfe)+CLI_BIN_NAME+'\x20workspace\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x252139=_0x284db5['find'](_0x409e4d=>_0x409e4d[_0x90df1d(0xdb)]===!![]),_0xc27b79=_0x35e41b??_0x252139?.[_0x90df1d(0xe9)]??null,_0x389240=_0x11aa78===_0x90df1d(0xd8)?{'globalPath':_0x5a32a2[_0x90df1d(0xed)]??null,'projectPath':_0x5a32a2[_0x90df1d(0xdd)]??null,'defaultApp':_0xc27b79,'defaultAppSource':_0x35e41b!=null?_0x2e3d7e:null}:{'scope':_0x11aa78,'configPath':_0x1a404a??null};return{'ok':!![],'data':{'items':_0x284db5,'meta':_0x389240}};}export const appListDefinition={'service':a20_0x5d11e1(0xe4),'command':a20_0x5d11e1(0xe2),'description':'List\x20configured\x20apps,\x20or\x20platform\x20apps\x20with\x20--remote','risk':a20_0x5d11e1(0xfb),'auth':a20_0x5d11e1(0xf0),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a20_0x5d11e1(0xd7),'type':a20_0x5d11e1(0xf5),'description':'List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','default':![]},{'name':a20_0x5d11e1(0xf4),'type':a20_0x5d11e1(0xf5),'description':a20_0x5d11e1(0xf3),'default':![]},{'name':'project','type':a20_0x5d11e1(0xf5),'description':'Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','default':![]}],async 'validate'(_0x1638ce){validateAppListFlags(_0x1638ce);},'execute':execute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a21_0x4772ff=a21_0x3441;(function(_0x1f4ba2,_0x39f5eb){const _0x1b4abc=a21_0x3441,_0x3e1c3e=_0x1f4ba2();while(!![]){try{const _0x14dbd4=parseInt(_0x1b4abc(0x1ee))/0x1+parseInt(_0x1b4abc(0x1f9))/0x2+-parseInt(_0x1b4abc(0x1f4))/0x3*(parseInt(_0x1b4abc(0x1ef))/0x4)+-parseInt(_0x1b4abc(0x1f7))/0x5*(parseInt(_0x1b4abc(0x1f8))/0x6)+-parseInt(_0x1b4abc(0x1f3))/0x7*(parseInt(_0x1b4abc(0x1f1))/0x8)+-parseInt(_0x1b4abc(0x1f6))/0x9+parseInt(_0x1b4abc(0x1eb))/0xa*(parseInt(_0x1b4abc(0x1ea))/0xb);if(_0x14dbd4===_0x39f5eb)break;else _0x3e1c3e['push'](_0x3e1c3e['shift']());}catch(_0x3593a3){_0x3e1c3e['push'](_0x3e1c3e['shift']());}}}(a21_0x2923,0x4ae13));function a21_0x3441(_0xadf76b,_0x2f389b){_0xadf76b=_0xadf76b-0x1ea;const _0x2923f7=a21_0x2923();let _0x344148=_0x2923f7[_0xadf76b];return _0x344148;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{projectAppMembers}from'../../commands/app/shared.js';function a21_0x2923(){const _0x53149a=['app','appCode','438882JaJyZD','4htQamV','Found\x20','5272RHIaNX','length','1099owyfog','250161sWNuAi','read','4219011ucJFvg','30LLYxfV','153822fNdcQF','210870zXJAhJ','6290251GgINMo','10QGkRHO'];a21_0x2923=function(){return _0x53149a;};return a21_0x2923();}import{listRoleUsers}from'../../core/api-client.js';export const appMembersListDefinition={'service':a21_0x4772ff(0x1ec),'command':'members-list','description':'List\x20application\x20members\x20with\x20their\x20role\x20memberships','risk':a21_0x4772ff(0x1f5),'requiresAuth':!![],'requiresAppCode':!![],'structuredErrors':!![],'flags':[APPCODE_FLAG_OPTIONAL],async 'execute'(_0x4f3bf5){const _0x12f969=a21_0x4772ff,_0x55a5b4=projectAppMembers(await listRoleUsers(_0x4f3bf5[_0x12f969(0x1ed)]));return{'ok':!![],'data':{'appCode':_0x4f3bf5[_0x12f969(0x1ed)],'items':_0x55a5b4,'totalCount':_0x55a5b4[_0x12f969(0x1f2)]},'message':_0x12f969(0x1f0)+_0x55a5b4['length']+'\x20application\x20member(s)'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x394546,_0x3832ea){const _0x5100e9=a22_0x3368,_0x2c30bf=_0x394546();while(!![]){try{const _0x2ae98d=parseInt(_0x5100e9(0x8d))/0x1*(-parseInt(_0x5100e9(0x88))/0x2)+parseInt(_0x5100e9(0x84))/0x3+parseInt(_0x5100e9(0x83))/0x4*(parseInt(_0x5100e9(0x8c))/0x5)+-parseInt(_0x5100e9(0x82))/0x6*(-parseInt(_0x5100e9(0x7f))/0x7)+-parseInt(_0x5100e9(0x8f))/0x8+-parseInt(_0x5100e9(0x87))/0x9*(parseInt(_0x5100e9(0x89))/0xa)+-parseInt(_0x5100e9(0x80))/0xb*(parseInt(_0x5100e9(0x7e))/0xc);if(_0x2ae98d===_0x3832ea)break;else _0x2c30bf['push'](_0x2c30bf['shift']());}catch(_0x369f43){_0x2c30bf['push'](_0x2c30bf['shift']());}}}(a22_0x8915,0xd059f));function a22_0x8915(){const _0x5f0ab8=['1547949ZbRyvq','platform','map','14808186jiotdI','1084814VDEUDe','10DPxDdW','authRequired','appDesc','145TZWxPS','1baUoYa','cookie','5231960DTXMEw','4404zIaZFn','28mzsqBV','4103SPXLsp','appCode','2492214TNTaNr','228220VEPngX'];a22_0x8915=function(){return _0x5f0ab8;};return a22_0x8915();}import{listRemoteApps}from'../../core/api-client.js';import{getCookie}from'../../auth/get-cookie.js';import{CliErrors}from'../../errors.js';function a22_0x3368(_0x30bc2b,_0x349a87){_0x30bc2b=_0x30bc2b-0x7e;const _0x89151e=a22_0x8915();let _0x33683f=_0x89151e[_0x30bc2b];return _0x33683f;}import{withActiveCookie}from'../../utils/with-active-cookie.js';function resolveCookie(_0x5abc3b){const _0x4131e2=a22_0x3368,_0x17d989=_0x5abc3b[_0x4131e2(0x8e)]||getCookie();if(!_0x17d989)throw CliErrors[_0x4131e2(0x8a)]();return _0x17d989;}export async function listRemoteAppDirectory(_0x456220){const _0x40bc91=a22_0x3368,_0x5bca4d=await withActiveCookie(resolveCookie(_0x456220),()=>listRemoteApps());return{'items':_0x5bca4d[_0x40bc91(0x86)](_0x1b8d66=>({..._0x1b8d66['id']!=null?{'id':_0x1b8d66['id']}:{},'appCode':_0x1b8d66[_0x40bc91(0x81)],'appName':_0x1b8d66['appName'],..._0x1b8d66['appDesc']!=null?{'appDesc':_0x1b8d66[_0x40bc91(0x8b)]}:{}})),'meta':{'source':_0x40bc91(0x85)}};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0xe0d031,_0x521105){const _0x47dff8=a23_0x34d9,_0x478917=_0xe0d031();while(!![]){try{const _0x463c18=parseInt(_0x47dff8(0x1ec))/0x1*(-parseInt(_0x47dff8(0x212))/0x2)+-parseInt(_0x47dff8(0x1ee))/0x3+parseInt(_0x47dff8(0x213))/0x4*(parseInt(_0x47dff8(0x1e9))/0x5)+-parseInt(_0x47dff8(0x1fe))/0x6+-parseInt(_0x47dff8(0x1fa))/0x7+parseInt(_0x47dff8(0x203))/0x8*(-parseInt(_0x47dff8(0x1ed))/0x9)+-parseInt(_0x47dff8(0x1f8))/0xa*(-parseInt(_0x47dff8(0x204))/0xb);if(_0x463c18===_0x521105)break;else _0x478917['push'](_0x478917['shift']());}catch(_0x46f537){_0x478917['push'](_0x478917['shift']());}}}(a23_0x2816,0x8a13d));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';function nullableText(_0x68c2b1){const _0x3c08c5=a23_0x34d9,_0x5b19cb=_0x68c2b1?.[_0x3c08c5(0x1f4)]();return _0x5b19cb?_0x5b19cb:null;}export function projectAppMembers(_0x39c392){const _0x2d3170=a23_0x34d9,_0x22a988=new Map(),_0x313fd5=[..._0x39c392]['sort']((_0x1a133e,_0x687c0c)=>_0x1a133e['id']-_0x687c0c['id']),_0x5d919b=(_0x18cd98,_0x47816e,_0x4d6782)=>{const _0x4f8c16=a23_0x34d9;for(const _0x206e35 of _0x47816e){const _0x35b43e=Number(_0x206e35[_0x4f8c16(0x20b)]);if(!Number[_0x4f8c16(0x214)](_0x35b43e)||_0x35b43e<=0x0)continue;let _0x4627fb=_0x22a988[_0x4f8c16(0x20c)](_0x35b43e);if(!_0x4627fb)_0x4627fb={'userId':_0x35b43e,'username':nullableText(_0x206e35[_0x4f8c16(0x20f)]),'displayName':nullableText(_0x206e35[_0x4f8c16(0x201)]),'status':_0x4d6782,'roles':[],'roleKeys':new Set()},_0x22a988['set'](_0x35b43e,_0x4627fb);else{_0x4627fb[_0x4f8c16(0x20f)]??=nullableText(_0x206e35[_0x4f8c16(0x20f)]),_0x4627fb[_0x4f8c16(0x1fb)]??=nullableText(_0x206e35['nickname']);if(_0x4d6782===_0x4f8c16(0x207))_0x4627fb[_0x4f8c16(0x20d)]=_0x4f8c16(0x207);}const _0x438c15=_0x18cd98['id']+':'+_0x4d6782;if(_0x4627fb[_0x4f8c16(0x1f5)]['has'](_0x438c15))continue;_0x4627fb[_0x4f8c16(0x1f5)][_0x4f8c16(0x20a)](_0x438c15),_0x4627fb['roles']['push']({'roleId':_0x18cd98['id'],'roleName':nullableText(_0x18cd98['roleName']),'roleType':nullableText(_0x18cd98[_0x4f8c16(0x202)]),'membershipStatus':_0x4d6782});}};for(const _0x45b6a5 of _0x313fd5){_0x5d919b(_0x45b6a5,_0x45b6a5[_0x2d3170(0x1fd)]??[],_0x2d3170(0x207)),_0x5d919b(_0x45b6a5,_0x45b6a5['applyUserList']??[],_0x2d3170(0x1f3));}return[..._0x22a988['values']()]['map'](_0x3485b1=>({'userId':_0x3485b1['userId'],'username':_0x3485b1[_0x2d3170(0x20f)],'displayName':_0x3485b1['displayName'],'status':_0x3485b1[_0x2d3170(0x20d)],'roles':_0x3485b1[_0x2d3170(0x20e)][_0x2d3170(0x200)]((_0x141787,_0x2bb8c9)=>_0x141787[_0x2d3170(0x1f0)]-_0x2bb8c9[_0x2d3170(0x1f0)]||(_0x141787[_0x2d3170(0x1ef)]===_0x2bb8c9[_0x2d3170(0x1ef)]?0x0:_0x141787[_0x2d3170(0x1ef)]===_0x2d3170(0x207)?-0x1:0x1))}))[_0x2d3170(0x200)]((_0x4f6275,_0x53c034)=>_0x4f6275[_0x2d3170(0x20b)]-_0x53c034['userId']);}export function enrichAppListItemsWithMergedSelection(_0x202c80,_0x1fb9ff){const _0x230b83=a23_0x34d9;if(!_0x1fb9ff)return;const _0x483877=_0x1fb9ff['apps']&&typeof _0x1fb9ff[_0x230b83(0x1fc)]===_0x230b83(0x206)?_0x1fb9ff['apps']:{},_0x5975a8=Object[_0x230b83(0x211)](_0x483877)['length']>0x0;for(const _0x3bda6e of _0x202c80){_0x3bda6e['isCurrent']=![];}const _0x2e9eca=_0x1fb9ff['appCode']!=null?String(_0x1fb9ff['appCode'])['trim']():'';if(_0x5975a8){const _0x3d1e8f=_0x1fb9ff['currentApp']??_0x1fb9ff[_0x230b83(0x209)];if(_0x3d1e8f)for(const _0x493adb of _0x202c80){_0x493adb['named']===!![]&&_0x493adb[_0x230b83(0x1eb)]===_0x3d1e8f&&(_0x493adb[_0x230b83(0x1f7)]=!![]);}for(const _0x2cb894 of _0x202c80){if(_0x2cb894['named']!==![])continue;if(_0x1fb9ff[_0x230b83(0x209)])continue;_0x2e9eca&&String(_0x2cb894[_0x230b83(0x1ff)]??'')['trim']()===_0x2e9eca&&(_0x2cb894[_0x230b83(0x1f7)]=!![]);}return;}if(!_0x2e9eca)return;for(const _0x41050a of _0x202c80){String(_0x41050a['appcode']??'')[_0x230b83(0x1f4)]()===_0x2e9eca&&(_0x41050a['isCurrent']=!![]);}}export function resolveAppScopeForWrite(_0x59bbec,_0x4928d7,_0x11bece){const _0x1004bd=a23_0x34d9;if(_0x4928d7)return _0x1004bd(0x1f9);const _0x132a50=_0x11bece['projectConfig'][_0x1004bd(0x1fc)]&&typeof _0x11bece['projectConfig']['apps']==='object'?_0x11bece[_0x1004bd(0x210)][_0x1004bd(0x1fc)]:{},_0x5030c4=_0x11bece[_0x1004bd(0x208)][_0x1004bd(0x1fc)]&&typeof _0x11bece['globalConfig'][_0x1004bd(0x1fc)]===_0x1004bd(0x206)?_0x11bece[_0x1004bd(0x208)][_0x1004bd(0x1fc)]:{};if(Object[_0x1004bd(0x1ea)][_0x1004bd(0x1f2)][_0x1004bd(0x1e8)](_0x132a50,_0x59bbec))return _0x1004bd(0x205);if(Object[_0x1004bd(0x1ea)][_0x1004bd(0x1f2)][_0x1004bd(0x1e8)](_0x5030c4,_0x59bbec))return _0x1004bd(0x1f9);return _0x1004bd(0x205);}export function appDefinedIn(_0x1b884e,_0x58453d,_0x1a5af2){const _0x3a231e=a23_0x34d9,_0x54d7da=Object[_0x3a231e(0x1ea)][_0x3a231e(0x1f2)][_0x3a231e(0x1e8)](_0x58453d,_0x1b884e),_0x5ec18e=Object[_0x3a231e(0x1ea)]['hasOwnProperty'][_0x3a231e(0x1e8)](_0x1a5af2,_0x1b884e);if(_0x54d7da&&_0x5ec18e)return'both';if(_0x5ec18e)return _0x3a231e(0x205);return _0x3a231e(0x1f9);}export function resolveDefaultAppSource(_0xd4d18b){const _0x5613aa=a23_0x34d9,_0x3681c9=_0xd4d18b[_0x5613aa(0x210)][_0x5613aa(0x1fc)]&&typeof _0xd4d18b[_0x5613aa(0x210)]['apps']==='object'?_0xd4d18b['projectConfig']['apps']:{};if(_0x5613aa(0x209)in _0xd4d18b['projectConfig'])return _0x5613aa(0x205);if(Object[_0x5613aa(0x211)](_0x3681c9)[_0x5613aa(0x1f1)]>0x0)return _0x5613aa(0x205);if(Object['keys'](_0xd4d18b['projectConfig'])[_0x5613aa(0x1f1)]===0x0&&_0xd4d18b[_0x5613aa(0x208)][_0x5613aa(0x209)])return _0x5613aa(0x1f9);return null;}export function getConfigPath(_0xb50af={}){const _0x18fe3e=a23_0x34d9,_0xa22c61=_0xb50af[_0x18fe3e(0x1f9)]?_0x18fe3e(0x1f9):_0x18fe3e(0x205);return resolveWriteConfigPath(_0xa22c61);}function a23_0x34d9(_0xb25f7c,_0x3a827b){_0xb25f7c=_0xb25f7c-0x1e8;const _0x281644=a23_0x2816();let _0x34d9e5=_0x281644[_0xb25f7c];return _0x34d9e5;}function a23_0x2816(){const _0x3a6461=['displayName','apps','userList','3389892rekgjm','appcode','sort','nickname','roleType','248ofhDmi','6007276WtXtFE','project','object','ACTIVE','globalConfig','defaultApp','add','userId','get','status','roles','username','projectConfig','keys','194dqetNs','4RoYXdS','isFinite','call','2198885Pakshw','prototype','name','1525RmrbwV','45729kpNaGL','3248214XZPBVq','membershipStatus','roleId','length','hasOwnProperty','PENDING','trim','roleKeys','\x20(global)','isCurrent','50TMnOYa','global','4561452xbceRW'];a23_0x2816=function(){return _0x3a6461;};return a23_0x2816();}export function readConfig(_0x42083c={}){return readConfigFile(getConfigPath(_0x42083c));}export function writeConfig(_0x4b5daf,_0x574ff6={}){writeConfigFile(getConfigPath(_0x574ff6),_0x4b5daf);}export function scopeLabel(_0x548e06){const _0x447bb7=a23_0x34d9;return _0x548e06[_0x447bb7(0x1f9)]?_0x447bb7(0x1f6):'';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a24_0x54de43=a24_0x4496;(function(_0x118766,_0x2c3853){const _0x54f14a=a24_0x4496,_0x163ce7=_0x118766();while(!![]){try{const _0x1766c1=parseInt(_0x54f14a(0xcb))/0x1*(-parseInt(_0x54f14a(0xd0))/0x2)+-parseInt(_0x54f14a(0xce))/0x3+-parseInt(_0x54f14a(0xca))/0x4+parseInt(_0x54f14a(0xd4))/0x5+-parseInt(_0x54f14a(0xdc))/0x6+-parseInt(_0x54f14a(0xda))/0x7*(-parseInt(_0x54f14a(0xcc))/0x8)+parseInt(_0x54f14a(0xd7))/0x9;if(_0x1766c1===_0x2c3853)break;else _0x163ce7['push'](_0x163ce7['shift']());}catch(_0x52dfa6){_0x163ce7['push'](_0x163ce7['shift']());}}}(a24_0x5e5c,0x8660f));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';const DELETE_PATH='/smartapi/app-config/delete';export const appConfigDelete={'service':'app-config','command':a24_0x54de43(0xdb),'description':a24_0x54de43(0xd6),'risk':a24_0x54de43(0xc9),'args':[KEY_ARG],'flags':[APPCODE_FLAG_OPTIONAL],async 'validate'(_0x291fb3){readKeyArg(_0x291fb3);},async 'dryRun'(_0x198359){const _0x431435=a24_0x54de43,_0x240a0a=readKeyArg(_0x198359),_0x1d2469=await mustGetByKey(_0x198359[_0x431435(0xcf)],_0x240a0a);return asAppConfigDryRunResult(buildMutationData({'operation':_0x431435(0xdb),'appCode':_0x198359[_0x431435(0xcf)],'key':_0x240a0a,'before':projectAppConfig(_0x1d2469),'after':null,'dryRun':!![]}),{'method':_0x431435(0xcd),'url':DELETE_PATH});},async 'execute'(_0x56842b){const _0x2ced7=a24_0x54de43,_0x58effd=readKeyArg(_0x56842b),_0x586413=await mustGetByKey(_0x56842b[_0x2ced7(0xcf)],_0x58effd);return await withAppConfigApiBoundary('delete',{'appCode':_0x56842b[_0x2ced7(0xcf)],'key':_0x58effd},()=>deleteAppConfig({'appCode':_0x56842b['appCode'],'id':requireAppConfigId(_0x586413,_0x58effd,_0x56842b[_0x2ced7(0xcf)])})),{'ok':!![],'data':buildMutationData({'operation':_0x2ced7(0xdb),'appCode':_0x56842b[_0x2ced7(0xcf)],'key':_0x58effd,'before':projectAppConfig(_0x586413),'after':null,'dryRun':![]}),'message':'Deleted\x20app\x20config\x20'+_0x58effd};}};function a24_0x5e5c(){const _0x1714ca=['appCode','1795340GDAJDO','number',',\x20appCode=','appCode:\x20','1149130HrcGwD','get','Delete\x20one\x20runtime\x20app-config\x20key','21129156gmuEJh','isFinite','validation','7JEvwiY','delete','1239828bXeuZf','high-risk-write','4112752Jgqoow','1TngyGF','2327408Zaikhf','POST','556575RzavwG'];a24_0x5e5c=function(){return _0x1714ca;};return a24_0x5e5c();}async function mustGetByKey(_0x4742d1,_0x11e796){const _0x13db3d=a24_0x54de43,_0x28faa3=await withAppConfigApiBoundary(_0x13db3d(0xd5),{'appCode':_0x4742d1,'key':_0x11e796},()=>getAppConfigByKey(_0x4742d1,_0x11e796));if(!_0x28faa3)throw CliErrors[_0x13db3d(0xd9)]('App\x20config\x20key\x20not\x20found:\x20'+_0x11e796,_0x13db3d(0xd3)+_0x4742d1);return _0x28faa3;}function a24_0x4496(_0x13a81e,_0x4d5d13){_0x13a81e=_0x13a81e-0xc9;const _0x5e5c29=a24_0x5e5c();let _0x449614=_0x5e5c29[_0x13a81e];return _0x449614;}function requireAppConfigId(_0x582fe6,_0x1d260c,_0x148c92){const _0x550c38=a24_0x54de43;if(typeof _0x582fe6['id']===_0x550c38(0xd1)&&Number[_0x550c38(0xd8)](_0x582fe6['id'])&&_0x582fe6['id']>0x0)return _0x582fe6['id'];throw CliErrors['apiError']('App\x20config\x20server\x20id\x20missing\x20for\x20key='+_0x1d260c+_0x550c38(0xd2)+_0x148c92);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a25_0x3da284=a25_0x19fa;function a25_0x5a8e(){const _0x3357f5=['1426512AVgcIy','Loaded\x20app\x20config\x20','\x20with\x20value\x20revealed','appCode','14egGVWF','973332SzCWMq','Inspect\x20one\x20runtime\x20app-config\x20key;\x20value\x20is\x20redacted\x20unless\x20--reveal\x20is\x20used','App\x20config\x20key\x20not\x20found:\x20','appCode:\x20','124356XPQlZc','338640OMCulQ','get','11342853nMXfnU','8CuBmUR','10QAkkOM','reveal','\x20with\x20value\x20redacted','2063244XCXAYG','342183GNGfhE'];a25_0x5a8e=function(){return _0x3357f5;};return a25_0x5a8e();}(function(_0x5c4cd0,_0x1ce000){const _0x296669=a25_0x19fa,_0x7e9597=_0x5c4cd0();while(!![]){try{const _0x4fe921=parseInt(_0x296669(0x91))/0x1+-parseInt(_0x296669(0x8c))/0x2*(parseInt(_0x296669(0x88))/0x3)+-parseInt(_0x296669(0x97))/0x4+-parseInt(_0x296669(0x89))/0x5+-parseInt(_0x296669(0x90))/0x6+parseInt(_0x296669(0x96))/0x7*(-parseInt(_0x296669(0x92))/0x8)+-parseInt(_0x296669(0x8b))/0x9*(-parseInt(_0x296669(0x8d))/0xa);if(_0x4fe921===_0x1ce000)break;else _0x7e9597['push'](_0x7e9597['shift']());}catch(_0x2ebecc){_0x7e9597['push'](_0x7e9597['shift']());}}}(a25_0x5a8e,0x67ca9));import{getAppConfigByKey}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a25_0x19fa(_0x27d2e0,_0x30b54f){_0x27d2e0=_0x27d2e0-0x87;const _0x5a8ea5=a25_0x5a8e();let _0x19fafe=_0x5a8ea5[_0x27d2e0];return _0x19fafe;}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':'app-config','command':a25_0x3da284(0x8a),'description':a25_0x3da284(0x98),'risk':'read','args':[KEY_ARG],'flags':[APPCODE_FLAG_OPTIONAL,REVEAL_FLAG],async 'validate'(_0x229a19){readKeyArg(_0x229a19);},async 'execute'(_0x5eed7c){const _0x3414c9=a25_0x3da284,_0x4c2ece=readKeyArg(_0x5eed7c),_0x2d633=await withAppConfigApiBoundary(_0x3414c9(0x8a),{'appCode':_0x5eed7c['appCode'],'key':_0x4c2ece},()=>getAppConfigByKey(_0x5eed7c[_0x3414c9(0x95)],_0x4c2ece));if(!_0x2d633)throw CliErrors['validation'](_0x3414c9(0x99)+_0x4c2ece,_0x3414c9(0x87)+_0x5eed7c['appCode']);const _0x596184=projectAppConfig(_0x2d633,{'reveal':_0x5eed7c['bool'](_0x3414c9(0x8e))});return{'ok':!![],'data':{'config':_0x596184},'message':_0x5eed7c['bool'](_0x3414c9(0x8e))?_0x3414c9(0x93)+_0x4c2ece+_0x3414c9(0x94):_0x3414c9(0x93)+_0x4c2ece+_0x3414c9(0x8f)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x31ee2b,_0x437078){const _0x2f9b5e=a26_0x124f,_0x134f99=_0x31ee2b();while(!![]){try{const _0xaec603=-parseInt(_0x2f9b5e(0x115))/0x1+parseInt(_0x2f9b5e(0x113))/0x2+-parseInt(_0x2f9b5e(0x110))/0x3+parseInt(_0x2f9b5e(0x111))/0x4+-parseInt(_0x2f9b5e(0x112))/0x5*(-parseInt(_0x2f9b5e(0x117))/0x6)+-parseInt(_0x2f9b5e(0x116))/0x7+parseInt(_0x2f9b5e(0x114))/0x8;if(_0xaec603===_0x437078)break;else _0x134f99['push'](_0x134f99['shift']());}catch(_0x325431){_0x134f99['push'](_0x134f99['shift']());}}}(a26_0x36f5,0xe5064));function a26_0x124f(_0x3b214f,_0x4c4d18){_0x3b214f=_0x3b214f-0x110;const _0x36f5dc=a26_0x36f5();let _0x124f6d=_0x36f5dc[_0x3b214f];return _0x124f6d;}import{appConfigList}from'../../commands/app-config/list.js';import{appConfigGet}from'../../commands/app-config/get.js';function a26_0x36f5(){const _0x5da1b9=['4191916WGpNfm','6105EZvLop','1985400WpWVvx','5218216RXdgPF','425267aIkaUx','6913235EmOdkp','4836knKgNo','3978378scSLFt'];a26_0x36f5=function(){return _0x5da1b9;};return a26_0x36f5();}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_0x4aa402=a27_0x166d;function a27_0x166d(_0x324718,_0x2390c8){_0x324718=_0x324718-0x13e;const _0x11cc21=a27_0x11cc();let _0x166d6c=_0x11cc21[_0x324718];return _0x166d6c;}(function(_0x1bfae2,_0x3f9cf8){const _0x48cd3b=a27_0x166d,_0x59a286=_0x1bfae2();while(!![]){try{const _0x14e452=parseInt(_0x48cd3b(0x152))/0x1+parseInt(_0x48cd3b(0x146))/0x2+parseInt(_0x48cd3b(0x142))/0x3*(-parseInt(_0x48cd3b(0x14d))/0x4)+parseInt(_0x48cd3b(0x149))/0x5+parseInt(_0x48cd3b(0x14c))/0x6+-parseInt(_0x48cd3b(0x141))/0x7+parseInt(_0x48cd3b(0x148))/0x8*(-parseInt(_0x48cd3b(0x151))/0x9);if(_0x14e452===_0x3f9cf8)break;else _0x59a286['push'](_0x59a286['shift']());}catch(_0x21b5d1){_0x59a286['push'](_0x59a286['shift']());}}}(a27_0x11cc,0x236f9));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';function a27_0x11cc(){const _0x3c864e=['282299hgFpaj','string','length','List\x20runtime\x20app-config\x20key\x20metadata\x20without\x20printing\x20values','key','1149463XFyzcC','741REfDxx','Filter\x20by\x20exact\x20config\x20key','read','app-config','4838qqLSgY','list','49208lnSXjH','306985gtTNoT','trim','\x20app\x20config(s)','1361202DfCBCZ','3572vJYcCv','map','Found\x20','appCode','63uOeReu'];a27_0x11cc=function(){return _0x3c864e;};return a27_0x11cc();}export const appConfigList={'service':a27_0x4aa402(0x145),'command':a27_0x4aa402(0x147),'description':a27_0x4aa402(0x13f),'risk':a27_0x4aa402(0x144),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a27_0x4aa402(0x140),'type':a27_0x4aa402(0x153),'description':a27_0x4aa402(0x143)},TAGS_FLAG],async 'validate'(_0xed14f4){const _0x503562=a27_0x4aa402,_0x4ca6f0=_0xed14f4['str'](_0x503562(0x140))[_0x503562(0x14a)]();if(_0x4ca6f0)validateKey(_0x4ca6f0);readOptionalTags(_0xed14f4);},async 'execute'(_0x4a451a){const _0x15fdf7=a27_0x4aa402,_0x1c51c4=_0x4a451a['str'](_0x15fdf7(0x140))[_0x15fdf7(0x14a)]()||undefined,_0x47baef=readOptionalTags(_0x4a451a),_0x3d85e8=await withAppConfigApiBoundary(_0x15fdf7(0x147),{'appCode':_0x4a451a['appCode']},()=>listAppConfigs(_0x4a451a[_0x15fdf7(0x150)],{'key':_0x1c51c4,'tags':_0x47baef})),_0x52c65d=_0x3d85e8[_0x15fdf7(0x14e)](_0x3f10ed=>projectAppConfig(_0x3f10ed));return{'ok':!![],'data':{'appCode':_0x4a451a[_0x15fdf7(0x150)],'count':_0x52c65d[_0x15fdf7(0x13e)],'configs':_0x52c65d},'message':_0x15fdf7(0x14f)+_0x52c65d[_0x15fdf7(0x13e)]+_0x15fdf7(0x14b)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a28_0x5d21e8=a28_0x1c40;(function(_0x39de10,_0x11af47){const _0x304420=a28_0x1c40,_0x72a3a1=_0x39de10();while(!![]){try{const _0x1f5a6d=parseInt(_0x304420(0xc4))/0x1+parseInt(_0x304420(0xc2))/0x2+-parseInt(_0x304420(0xc3))/0x3+parseInt(_0x304420(0xc7))/0x4+-parseInt(_0x304420(0xbf))/0x5*(parseInt(_0x304420(0xba))/0x6)+-parseInt(_0x304420(0xb8))/0x7*(parseInt(_0x304420(0xb6))/0x8)+parseInt(_0x304420(0xbc))/0x9;if(_0x1f5a6d===_0x11af47)break;else _0x72a3a1['push'](_0x72a3a1['shift']());}catch(_0x278387){_0x72a3a1['push'](_0x72a3a1['shift']());}}}(a28_0x528c,0xa8977));import{createAppConfig,getAppConfigByKey,updateAppConfig}from'../../core/api-client.js';function a28_0x1c40(_0x5cd1c9,_0xcfbc85){_0x5cd1c9=_0x5cd1c9-0xb4;const _0x528cdf=a28_0x528c();let _0x1c408f=_0x528cdf[_0x5cd1c9];return _0x1c408f;}import{CliErrors}from'../../errors.js';function a28_0x528c(){const _0x5ca69e=['3455988oNapjX','289737EJkRuw','App\x20config\x20server\x20id\x20missing\x20for\x20key=',',\x20appCode=','4162788FxGJuh','set','/smartapi/app-config/update','get','tags','POST','Created','string','number','8TgPllQ','app-config','5038369rLTIrs','Updated','186nrcgxy','create','9133290CueMQc','file','update','65885TJmcZd','appCode','Create\x20or\x20update\x20one\x20runtime\x20app-config\x20key','1251114fMLeCG'];a28_0x528c=function(){return _0x5ca69e;};return a28_0x528c();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';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_0x5d21e8(0xc9);export const appConfigSet={'service':a28_0x5d21e8(0xb7),'command':a28_0x5d21e8(0xc8),'description':a28_0x5d21e8(0xc1),'risk':'write','args':[KEY_ARG,VALUE_ARG],'flags':[APPCODE_FLAG_OPTIONAL,TAGS_FLAG,STDIN_FLAG,FROM_ENV_FLAG,{'name':a28_0x5d21e8(0xbd),'type':a28_0x5d21e8(0xb4),'description':'Read\x20config\x20value\x20from\x20file'}],async 'validate'(_0xbf54c8){readKeyArg(_0xbf54c8),readOptionalTags(_0xbf54c8),assertSingleValueSource(_0xbf54c8);},async 'dryRun'(_0x2954f8){const _0x388e3d=a28_0x5d21e8,_0x26771b=readKeyArg(_0x2954f8),_0x4bf22b=readOptionalTags(_0x2954f8),_0x1983ea=assertSingleValueSource(_0x2954f8);await assertValueSourceReadable(_0x1983ea);const _0x1b33ee=await withAppConfigApiBoundary(_0x388e3d(0xca),{'appCode':_0x2954f8[_0x388e3d(0xc0)],'key':_0x26771b},()=>getAppConfigByKey(_0x2954f8[_0x388e3d(0xc0)],_0x26771b)),_0x3eb276=_0x1b33ee?'update':_0x388e3d(0xbb),_0x327fb0=_0x1b33ee?projectAppConfig(_0x1b33ee):null,_0x691bfa=plannedAppConfig({'appCode':_0x2954f8[_0x388e3d(0xc0)],'key':_0x26771b,'tags':_0x4bf22b??_0x1b33ee?.['tags'],'hasValue':!![]});return asAppConfigDryRunResult(buildMutationData({'operation':_0x3eb276,'appCode':_0x2954f8[_0x388e3d(0xc0)],'key':_0x26771b,'before':_0x327fb0,'after':_0x691bfa,'dryRun':!![]}),{'method':_0x388e3d(0xcc),'url':_0x3eb276===_0x388e3d(0xbe)?UPDATE_PATH:CREATE_PATH});},async 'execute'(_0x4a9e00){const _0xd726fb=a28_0x5d21e8,_0x3c99a1=readKeyArg(_0x4a9e00),_0x32cb62=readOptionalTags(_0x4a9e00),_0x70503=await withAppConfigApiBoundary('get',{'appCode':_0x4a9e00[_0xd726fb(0xc0)],'key':_0x3c99a1},()=>getAppConfigByKey(_0x4a9e00[_0xd726fb(0xc0)],_0x3c99a1)),_0x38387c=_0x70503?projectAppConfig(_0x70503):null,_0x25cca9=_0x70503?_0xd726fb(0xbe):_0xd726fb(0xbb),{value:_0x29247a,warnings:_0x3cc983}=await readAppConfigValue(_0x4a9e00),_0x386a92={'appCode':_0x4a9e00[_0xd726fb(0xc0)],'key':_0x3c99a1,'value':_0x29247a,'tags':_0x32cb62??_0x70503?.[_0xd726fb(0xcb)]??undefined};await withAppConfigApiBoundary(_0x25cca9,{'appCode':_0x4a9e00[_0xd726fb(0xc0)],'key':_0x3c99a1},async()=>{const _0xbba183=_0xd726fb;_0x70503?await updateAppConfig({..._0x386a92,'id':requireAppConfigId(_0x70503,_0x3c99a1,_0x4a9e00[_0xbba183(0xc0)])}):await createAppConfig(_0x386a92);});const _0x464068=await withAppConfigApiBoundary(_0xd726fb(0xca),{'appCode':_0x4a9e00['appCode'],'key':_0x3c99a1},()=>getAppConfigByKey(_0x4a9e00[_0xd726fb(0xc0)],_0x3c99a1)),_0x57b09e=_0x464068?projectAppConfig(_0x464068):plannedAppConfig({'appCode':_0x4a9e00[_0xd726fb(0xc0)],'key':_0x3c99a1,'tags':_0x386a92[_0xd726fb(0xcb)],'hasValue':_0x29247a!==''});return{'ok':!![],'data':buildMutationData({'operation':_0x25cca9,'appCode':_0x4a9e00[_0xd726fb(0xc0)],'key':_0x3c99a1,'before':_0x38387c,'after':_0x57b09e,'dryRun':![],'warnings':_0x3cc983}),'message':(_0x25cca9==='update'?_0xd726fb(0xb9):_0xd726fb(0xcd))+'\x20app\x20config\x20'+_0x3c99a1};}};function requireAppConfigId(_0x2261e9,_0x1ba348,_0x5b4647){const _0x4d2cd4=a28_0x5d21e8;if(typeof _0x2261e9['id']===_0x4d2cd4(0xb5)&&Number['isFinite'](_0x2261e9['id'])&&_0x2261e9['id']>0x0)return _0x2261e9['id'];throw CliErrors['apiError'](_0x4d2cd4(0xc5)+_0x1ba348+_0x4d2cd4(0xc6)+_0x5b4647);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a29_0x12d039=a29_0x327c;(function(_0x199d6e,_0x2d2b6f){const _0x1a3607=a29_0x327c,_0x126311=_0x199d6e();while(!![]){try{const _0x593a16=parseInt(_0x1a3607(0x193))/0x1*(parseInt(_0x1a3607(0x18e))/0x2)+parseInt(_0x1a3607(0x178))/0x3*(parseInt(_0x1a3607(0x172))/0x4)+-parseInt(_0x1a3607(0x1a7))/0x5+-parseInt(_0x1a3607(0x19e))/0x6*(-parseInt(_0x1a3607(0x183))/0x7)+parseInt(_0x1a3607(0x185))/0x8+parseInt(_0x1a3607(0x173))/0x9*(parseInt(_0x1a3607(0x1a0))/0xa)+parseInt(_0x1a3607(0x1a4))/0xb*(-parseInt(_0x1a3607(0x1a3))/0xc);if(_0x593a16===_0x2d2b6f)break;else _0x126311['push'](_0x126311['shift']());}catch(_0xdc0ae7){_0x126311['push'](_0x126311['shift']());}}}(a29_0x57be,0x724be));import{access,readFile}from'node:fs/promises';import{CliErrors}from'../../errors.js';export const KEY_ARG={'name':'key','description':'Runtime\x20app-config\x20key','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_0x12d039(0x17a),'type':a29_0x12d039(0x194),'description':a29_0x12d039(0x17d)};export const STDIN_FLAG={'name':'stdin','type':'boolean','description':a29_0x12d039(0x187),'default':![]};export const FROM_ENV_FLAG={'name':a29_0x12d039(0x177),'type':a29_0x12d039(0x194),'description':'Read\x20config\x20value\x20from\x20the\x20named\x20environment\x20variable'};export const REVEAL_FLAG={'name':a29_0x12d039(0x199),'type':a29_0x12d039(0x1a2),'description':a29_0x12d039(0x196),'default':![]};export function readKeyArg(_0x44a515){const _0x5587b1=a29_0x12d039,_0x593b2b=_0x44a515[_0x5587b1(0x171)][0x0]?.[_0x5587b1(0x1a5)]()??'';return validateKey(_0x593b2b),_0x593b2b;}export function readOptionalTags(_0x2bcb54){const _0x16ee0f=a29_0x12d039,_0x55fa4f=_0x2bcb54[_0x16ee0f(0x181)]('tags')[_0x16ee0f(0x1a5)]();if(!_0x55fa4f)return undefined;if(_0x55fa4f[_0x16ee0f(0x180)]>0x20)throw CliErrors[_0x16ee0f(0x18a)](_0x16ee0f(0x198));return _0x55fa4f;}export function validateKey(_0x54fa69){const _0x5d4723=a29_0x12d039;if(!_0x54fa69)throw CliErrors[_0x5d4723(0x18a)](_0x5d4723(0x19d));if(_0x54fa69['length']>0x100)throw CliErrors[_0x5d4723(0x18a)](_0x5d4723(0x18c));}function a29_0x327c(_0x5f5952,_0xada8ba){_0x5f5952=_0x5f5952-0x16d;const _0x57bed8=a29_0x57be();let _0x327cd6=_0x57bed8[_0x5f5952];return _0x327cd6;}export function projectAppConfig(_0x4ade06,_0x2d08b7){const _0x59930a=a29_0x12d039,_0x540a7f=_0x4ade06[_0x59930a(0x186)]!==undefined&&_0x4ade06[_0x59930a(0x186)]!==null&&_0x4ade06[_0x59930a(0x186)]!=='',_0x23eaaf={'appCode':_0x4ade06['appCode'],'key':_0x4ade06[_0x59930a(0x17b)],'tags':_0x4ade06['tags']??undefined,'hasValue':_0x540a7f,'valueRedacted':_0x540a7f&&!_0x2d08b7?.[_0x59930a(0x199)],'gmtCreate':_0x4ade06[_0x59930a(0x182)],'gmtModified':_0x4ade06['gmtModified']};return _0x2d08b7?.[_0x59930a(0x199)]&&(_0x23eaaf[_0x59930a(0x186)]=_0x4ade06[_0x59930a(0x186)]??'',_0x23eaaf[_0x59930a(0x197)]=![]),_0x23eaaf;}export function plannedAppConfig(_0x475c03){const _0x47d9a4=a29_0x12d039,_0x3d10dd=_0x475c03[_0x47d9a4(0x19f)]??!![];return{'appCode':_0x475c03[_0x47d9a4(0x192)],'key':_0x475c03['key'],'tags':_0x475c03[_0x47d9a4(0x17a)]??undefined,'hasValue':_0x3d10dd,'valueRedacted':_0x3d10dd};}export function buildMutationData(_0x3d0a68){const _0x4da424=a29_0x12d039;return{'operation':_0x3d0a68[_0x4da424(0x174)],'selector':{'appCode':_0x3d0a68[_0x4da424(0x192)],'key':_0x3d0a68['key']},'before':_0x3d0a68[_0x4da424(0x16f)],'after':_0x3d0a68[_0x4da424(0x195)],'dryRun':_0x3d0a68[_0x4da424(0x191)],'warnings':_0x3d0a68['warnings']??[]};}export async function withAppConfigApiBoundary(_0xb112a,_0xb3b7d8,_0x369118){const _0x19c3a5=a29_0x12d039;try{return await _0x369118();}catch{const _0x19ad54=['appCode:\x20'+_0xb3b7d8['appCode']];if(_0xb3b7d8[_0x19c3a5(0x17b)])_0x19ad54['push'](_0x19c3a5(0x17e)+_0xb3b7d8[_0x19c3a5(0x17b)]);_0x19ad54['push']('value\x20is\x20redacted');throw CliErrors[_0x19c3a5(0x18d)](_0x19c3a5(0x175)+_0xb112a+_0x19c3a5(0x188),_0x19ad54[_0x19c3a5(0x179)](';\x20')+'.');}}export function asAppConfigDryRunResult(_0x32dbd7,_0xd5e76c){return Object['defineProperties'](_0x32dbd7,{'method':{'value':_0xd5e76c['method'],'enumerable':![]},'url':{'value':_0xd5e76c['url'],'enumerable':![]}});}export function assertSingleValueSource(_0x2a8b01){const _0x415fa5=a29_0x12d039,_0x1cceb3=[];_0x2a8b01[_0x415fa5(0x171)][_0x415fa5(0x180)]>0x1&&_0x1cceb3[_0x415fa5(0x1a8)]({'kind':'argument','value':_0x2a8b01[_0x415fa5(0x171)][_0x415fa5(0x189)](0x1)['join']('\x20')});const _0x17d917=_0x2a8b01[_0x415fa5(0x19b)](_0x415fa5(0x186));_0x17d917!==undefined&&_0x17d917!==null&&_0x1cceb3[_0x415fa5(0x1a8)]({'kind':'argument','value':String(_0x17d917)});_0x2a8b01[_0x415fa5(0x19a)](_0x415fa5(0x19c))&&_0x1cceb3['push']({'kind':'stdin'});const _0x5975a4=_0x2a8b01[_0x415fa5(0x181)]('from-env')[_0x415fa5(0x1a5)]();_0x5975a4&&_0x1cceb3[_0x415fa5(0x1a8)]({'kind':_0x415fa5(0x176),'name':_0x5975a4});const _0x4378f3=_0x2a8b01[_0x415fa5(0x181)]('file')[_0x415fa5(0x1a5)]();_0x4378f3&&_0x1cceb3['push']({'kind':_0x415fa5(0x17f),'path':_0x4378f3});if(_0x1cceb3[_0x415fa5(0x180)]===0x0)throw CliErrors[_0x415fa5(0x18a)]('Missing\x20app-config\x20value\x20source.',_0x415fa5(0x184));if(_0x1cceb3[_0x415fa5(0x180)]>0x1)throw CliErrors[_0x415fa5(0x18a)](_0x415fa5(0x1a6),_0x415fa5(0x170));return _0x1cceb3[0x0];}function a29_0x57be(){const _0x11925c=['App\x20config\x20value\x20source\x20is\x20ambiguous.','4172695tWenLK','push','kind','Value\x20was\x20provided\x20as\x20a\x20command\x20argument;\x20prefer\x20--stdin,\x20--from-env,\x20or\x20--file\x20for\x20secrets.','name','once','error','before','Use\x20exactly\x20one\x20of:\x20positional\x20<value>,\x20--stdin,\x20--from-env\x20<NAME>,\x20or\x20--file\x20<path>.','args','12156PYRWga','24741SEDVDq','operation','Failed\x20to\x20','env','from-env','153pQHYxE','join','tags','key','utf8','Config\x20tags\x20for\x20filtering/display\x20metadata','key:\x20','file','length','str','gmtCreate','189uwvQNr','Use\x20one\x20of:\x20positional\x20<value>,\x20--stdin,\x20--from-env\x20<NAME>,\x20or\x20--file\x20<path>.','5217056YmbdyQ','value','Read\x20config\x20value\x20from\x20stdin','\x20app\x20config.','slice','validation','end','App\x20config\x20key\x20length\x20cannot\x20exceed\x20256.','apiError','1238RDifWE','path','argument','dryRun','appCode','1507zLyyJR','string','after','Reveal\x20the\x20sensitive\x20value\x20for\x20this\x20single\x20key','valueRedacted','App\x20config\x20tags\x20length\x20cannot\x20exceed\x2032.','reveal','bool','flag','stdin','Missing\x20app-config\x20key.','116334bnSWFf','hasValue','1540iiteMG','Environment\x20variable\x20is\x20not\x20set:\x20','boolean','16609272dLgSMs','11QlwrqY','trim'];a29_0x57be=function(){return _0x11925c;};return a29_0x57be();}export async function assertValueSourceReadable(_0x48e93c){const _0x564f30=a29_0x12d039;if(_0x48e93c['kind']===_0x564f30(0x176)&&!(_0x48e93c['name']in process.env))throw CliErrors['validation'](_0x564f30(0x1a1)+_0x48e93c[_0x564f30(0x1ab)]);if(_0x48e93c[_0x564f30(0x1a9)]===_0x564f30(0x17f))try{await access(_0x48e93c[_0x564f30(0x18f)]);}catch{throw CliErrors[_0x564f30(0x18a)]('Value\x20file\x20is\x20not\x20readable:\x20'+_0x48e93c['path']);}}export async function readAppConfigValue(_0xc33945){const _0x2b6bfb=a29_0x12d039,_0x55c234=assertSingleValueSource(_0xc33945),_0x46be69=[];if(_0x55c234[_0x2b6bfb(0x1a9)]===_0x2b6bfb(0x190))return _0x46be69['push'](_0x2b6bfb(0x1aa)),{'value':_0x55c234[_0x2b6bfb(0x186)]??'','source':_0x55c234[_0x2b6bfb(0x1a9)],'warnings':_0x46be69};if(_0x55c234[_0x2b6bfb(0x1a9)]===_0x2b6bfb(0x19c))return{'value':await readStdin(),'source':_0x55c234[_0x2b6bfb(0x1a9)],'warnings':_0x46be69};if(_0x55c234[_0x2b6bfb(0x1a9)]===_0x2b6bfb(0x176)){if(!(_0x55c234[_0x2b6bfb(0x1ab)]in process.env))throw CliErrors[_0x2b6bfb(0x18a)]('Environment\x20variable\x20is\x20not\x20set:\x20'+_0x55c234[_0x2b6bfb(0x1ab)]);return{'value':process.env[_0x55c234.name]??'','source':_0x55c234[_0x2b6bfb(0x1a9)],'warnings':_0x46be69};}return{'value':await readFile(_0x55c234[_0x2b6bfb(0x18f)],_0x2b6bfb(0x17c)),'source':_0x55c234[_0x2b6bfb(0x1a9)],'warnings':_0x46be69};}function readStdin(){return new Promise((_0x3e2c4f,_0x4a248e)=>{const _0x3116b8=a29_0x327c;let _0xc22a3a='';process[_0x3116b8(0x19c)]['setEncoding'](_0x3116b8(0x17c)),process[_0x3116b8(0x19c)]['on']('data',_0x10b9ad=>{_0xc22a3a+=_0x10b9ad;}),process[_0x3116b8(0x19c)][_0x3116b8(0x16d)](_0x3116b8(0x18b),()=>_0x3e2c4f(_0xc22a3a)),process['stdin'][_0x3116b8(0x16d)](_0x3116b8(0x16e),_0x4a248e);});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a30_0xab4dab=a30_0x15cb;function a30_0x15cb(_0x2bf4cf,_0xe254e6){_0x2bf4cf=_0x2bf4cf-0x7d;const _0x45638b=a30_0x4563();let _0x15cb21=_0x45638b[_0x2bf4cf];return _0x15cb21;}(function(_0x14f63b,_0x3d3a22){const _0xa8f51b=a30_0x15cb,_0x4bb554=_0x14f63b();while(!![]){try{const _0x3c7940=-parseInt(_0xa8f51b(0x90))/0x1*(parseInt(_0xa8f51b(0x8d))/0x2)+parseInt(_0xa8f51b(0x80))/0x3+-parseInt(_0xa8f51b(0x7d))/0x4*(-parseInt(_0xa8f51b(0x7e))/0x5)+-parseInt(_0xa8f51b(0x87))/0x6+-parseInt(_0xa8f51b(0x86))/0x7+-parseInt(_0xa8f51b(0x85))/0x8*(parseInt(_0xa8f51b(0x83))/0x9)+parseInt(_0xa8f51b(0x81))/0xa;if(_0x3c7940===_0x3d3a22)break;else _0x4bb554['push'](_0x4bb554['shift']());}catch(_0x501983){_0x4bb554['push'](_0x4bb554['shift']());}}}(a30_0x4563,0xa2a18));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a30_0xab4dab(0x8f),'command':'login','description':'Login\x20via\x20browser','risk':a30_0xab4dab(0x7f),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a30_0xab4dab(0x8b),'type':a30_0xab4dab(0x8e),'description':a30_0xab4dab(0x91),'default':![]}],async 'execute'(_0x1a5849){const _0x2f95be=a30_0xab4dab,{runAuthServer:_0x575342}=await import(_0x2f95be(0x8a));return await _0x575342({'autoYes':_0x1a5849['bool']('yes'),'nonInteractive':_0x1a5849[_0x2f95be(0x89)]}),{'ok':!![]};}},{'service':a30_0xab4dab(0x8f),'command':'logout','description':a30_0xab4dab(0x88),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x5064af){const _0x3bd007=a30_0xab4dab;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x3bd007(0x84)](_0x3bd007(0x8c))):console['log'](_0x3bd007(0x82)),{'ok':!![]};}}];function a30_0x4563(){const _0x463534=['Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','498356DfGzfB','25AJOSAN','write','3166866KZTwvt','14273120tmHcfH','!\x20Not\x20logged\x20in','2887461aiVdCD','log','16pPJFZL','2621885lqZmgK','1981356dEMvdQ','Clear\x20login\x20session','nonInteractive','../../auth/auth-server-ui.js','yes','✓\x20Logged\x20out','32156ncoSvf','boolean','auth','68DoAFan'];a30_0x4563=function(){return _0x463534;};return a30_0x4563();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a31_0x164465=a31_0x48d1;(function(_0x1de471,_0x564cfb){const _0x278747=a31_0x48d1,_0x323836=_0x1de471();while(!![]){try{const _0xee872d=parseInt(_0x278747(0x178))/0x1+parseInt(_0x278747(0x146))/0x2*(parseInt(_0x278747(0x180))/0x3)+parseInt(_0x278747(0x1a1))/0x4*(parseInt(_0x278747(0x18f))/0x5)+parseInt(_0x278747(0x17e))/0x6*(parseInt(_0x278747(0x161))/0x7)+parseInt(_0x278747(0x188))/0x8*(-parseInt(_0x278747(0x13b))/0x9)+-parseInt(_0x278747(0x196))/0xa+-parseInt(_0x278747(0x143))/0xb;if(_0xee872d===_0x564cfb)break;else _0x323836['push'](_0x323836['shift']());}catch(_0x4c5638){_0x323836['push'](_0x323836['shift']());}}}(a31_0x5333,0xbd1c3));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';function a31_0x5333(){const _0x182083=['type','Select\x20dataset:','Dataset\x20not\x20found\x20for\x20code\x20\x22','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','before','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','\x0a\x20*\x20[参数字段]\x20按实际输入为\x20params.<字段名>\x20补充\x20JSDoc\x20参数标签;无字段时仅保留根参数\x0a\x20*\x20[异常说明]\x20无;显式抛出异常时补充异常类型与触发条件\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20','\x22.\x20','apiDir','\x0a\x20*\x20@param\x20{Object}\x20context\x20平台注入的执行上下文\x0a\x20*\x20@returns\x20{Promise<Object>}\x20','\x20function:\x20','1172109bROMYb','\x22\x20not\x20found.\x20','/data/dataset/','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','\x0a\x20*\x0a\x20*\x20[脚本类型]\x20HOOK\x0a\x20*\x20[脚本名称]\x20','join','3372oQzkzQ','\x20*\x20[依赖数据集]\x20无(如有依赖,DB_TABLE\x20填物理表名;METADATA\x20填数据集编码与用途)\x0a\x20*\x20[调用\x20BF]\x20无(如有调用,填写脚本名称与用途)\x0a\x20*\x20[执行\x20SQL]\x20无(如有执行,填写\x20SQL\x20名称与用途)\x0a\x20*\x20[副作用]\x20无(如有通知或外部调用,说明影响与失败策略)','1987053jOCBkO','Available\x20aliases:\x20','.js\x0a','Script\x20description','keys','当前响应结果','map','appCode','112VPLhea','Available:\x20','HOOK','\x0a\x20*\x0a\x20*\x20[脚本类型]\x20ENDPOINT\x0a\x20*\x20[脚本名称]\x20','write','/ENDPOINT/','source','4685CgsWqu','create','\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','当前请求参数','HOOK\x20requires\x20alias/operation/node\x20options.','.js\x0a\x20*\x20[调用方式]\x20context.client.bff.execute({\x20scriptName:\x20\x22','/**\x0a\x20*\x20','4193940QBHLhx','/data/backend-function\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/','nonInteractive','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','File\x20already\x20exists:\x20','close','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/','Function\x20name\x20(valid\x20JS\x20identifier)','Alias\x20\x22','Trigger\x20node\x20(HOOK\x20only)','5228iBhMPM','Select\x20trigger\x20node:','103257jhuPLM','string','ENDPOINT','stderr','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','str','Invalid\x20function\x20name\x20\x22','functionNode','20499094lGvyBG','description','name','2rIoNSK','COMMON','UNKNOWN','scriptsRootDir','\x0a\x20*\x20[平台配置]\x20','Operation\x20type\x20\x22','Invalid\x20dataset\x20selection.','operation-type','alias','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','length','修改后的请求参数','Scaffold\x20a\x20new\x20Backend\x20Function\x20script\x20from\x20template','\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','utf8','parseInt','\x0a\x20*\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[脚本名称]\x20','operationType','includes','question','find','datasetcode','修改后的响应结果','validation','datasetCode','Select\x20operation\x20type:','function-node','1981yzSaOy','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','No\x20api.ts\x20found.\x20Run\x20`','stdin','trim','\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','\x20api\x20pull`\x20to\x20refresh.','/COMMON/','Created\x20','code','after','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`'];a31_0x5333=function(){return _0x182083;};return a31_0x5333();}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_0x164465(0x190),'description':a31_0x164465(0x152),'risk':'read','flags':[{'name':a31_0x164465(0x16d),'type':a31_0x164465(0x13c),'required':!![],'enum':[a31_0x164465(0x147),a31_0x164465(0x13d),a31_0x164465(0x18a)],'description':'Script\x20type'},{'name':'name','type':a31_0x164465(0x13c),'required':!![],'description':a31_0x164465(0x19e)},{'name':a31_0x164465(0x144),'type':a31_0x164465(0x13c),'description':a31_0x164465(0x183)},{'name':'alias','type':'string','description':a31_0x164465(0x162)},{'name':a31_0x164465(0x15b),'type':a31_0x164465(0x13c),'description':a31_0x164465(0x199)},{'name':a31_0x164465(0x14d),'type':a31_0x164465(0x13c),'description':'Operation\x20type\x20(HOOK\x20only)'},{'name':a31_0x164465(0x160),'type':'string','description':a31_0x164465(0x1a0),'enum':[a31_0x164465(0x171),a31_0x164465(0x16b)]}],async 'validate'(_0x4ba163){const _0x222ac2=a31_0x164465,_0x411ae0=_0x4ba163[_0x222ac2(0x140)](_0x222ac2(0x145));if(!isValidBffFunctionName(_0x411ae0))throw CliErrors[_0x222ac2(0x15d)](_0x222ac2(0x141)+_0x411ae0+_0x222ac2(0x14f));},async 'execute'(_0x56b326){const _0x355d40=a31_0x164465,_0x237eb2=loadBffProjectConfig(_0x56b326[_0x355d40(0x187)]),_0x3f427d=_0x56b326[_0x355d40(0x140)](_0x355d40(0x16d)),_0x615e1=_0x56b326[_0x355d40(0x140)](_0x355d40(0x145)),_0xe9b99f=_0x56b326['str'](_0x355d40(0x144))||undefined,_0x5b5ce8=_0x3f427d==='HOOK'?await resolveHookOptions(_0x237eb2,_0x56b326):undefined,_0x360659=buildFilePath(_0x237eb2,_0x3f427d,_0x615e1,_0x5b5ce8);if(await fileExists(_0x360659))throw CliErrors[_0x355d40(0x15d)](_0x355d40(0x19b)+_0x360659);await mkdir(dirname(_0x360659),{'recursive':!![]});const _0x6ca54a=generateTemplate(_0x3f427d,_0x615e1,_0x56b326[_0x355d40(0x187)],_0xe9b99f,_0x5b5ce8);await writeFile(_0x360659,_0x6ca54a,_0x355d40(0x154));const _0xa7859b={'type':_0x3f427d,'name':_0x615e1,'path':_0x360659};if(_0xe9b99f)_0xa7859b[_0x355d40(0x144)]=_0xe9b99f;if(_0x5b5ce8){if(_0x5b5ce8[_0x355d40(0x14e)])_0xa7859b[_0x355d40(0x14e)]=_0x5b5ce8[_0x355d40(0x14e)];_0xa7859b[_0x355d40(0x15e)]=_0x5b5ce8['datasetCode'],_0xa7859b[_0x355d40(0x157)]=_0x5b5ce8[_0x355d40(0x157)],_0xa7859b['functionNode']=_0x5b5ce8[_0x355d40(0x142)];}return{'ok':!![],'data':_0xa7859b,'message':_0x355d40(0x169)+_0x3f427d+_0x355d40(0x177)+_0x615e1};}};async function resolveHookOptions(_0x19ef39,_0x79f6b0){const _0x557999=a31_0x164465,_0x32eee3=loadAliasMap(_0x79f6b0[_0x557999(0x175)],undefined,resolveApiFilePath(_0x79f6b0[_0x557999(0x175)],_0x79f6b0[_0x557999(0x187)])),_0x591c58=_0x32eee3[_0x557999(0x150)]>0x0;let _0x29ca73,_0x6c806d,_0x4a6684;const _0x33f537=_0x79f6b0['str'](_0x557999(0x14e)),_0x515980=_0x79f6b0[_0x557999(0x140)]('datasetcode');if(_0x33f537){const _0x2468e4=resolveAlias(_0x79f6b0[_0x557999(0x175)],_0x33f537,undefined,resolveApiFilePath(_0x79f6b0[_0x557999(0x175)],_0x79f6b0[_0x557999(0x187)]));if(!_0x2468e4){const _0x1cf6db=_0x591c58?_0x557999(0x181)+_0x32eee3[_0x557999(0x186)](_0x38e4be=>_0x38e4be['alias'])['join'](',\x20'):_0x557999(0x163)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0x557999(0x15d)](_0x557999(0x19f)+_0x33f537+_0x557999(0x179)+_0x1cf6db);}_0x29ca73=_0x33f537,_0x6c806d=_0x2468e4;}else{if(_0x515980){_0x6c806d=_0x515980;const _0x1a011e=_0x32eee3[_0x557999(0x15a)](_0x419f3b=>_0x419f3b[_0x557999(0x15e)]===_0x515980);_0x29ca73=_0x1a011e?.[_0x557999(0x14e)];}else{if(_0x79f6b0['nonInteractive'])throw CliErrors[_0x557999(0x15d)]('--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');else{if(_0x591c58){const _0x4d32bd=_0x32eee3['map'](_0x2c8026=>_0x2c8026[_0x557999(0x14e)]+'\x20('+_0x2c8026['tableName']+')'),_0x29dbd9=await promptSelect(_0x557999(0x16e),_0x4d32bd),_0x51cff0=_0x32eee3[_0x29dbd9];if(!_0x51cff0)throw CliErrors[_0x557999(0x15d)](_0x557999(0x14c));_0x29ca73=_0x51cff0[_0x557999(0x14e)],_0x6c806d=_0x51cff0['datasetCode'];}else{const _0x1706d8=await listDatasets(_0x79f6b0[_0x557999(0x187)]);if(_0x1706d8[_0x557999(0x150)]===0x0)throw CliErrors['validation']('No\x20datasets\x20found\x20for\x20this\x20app.');const _0x557aa9=_0x1706d8[_0x557999(0x186)](_0x261547=>_0x261547[_0x557999(0x145)]+'\x20['+(_0x261547[_0x557999(0x18e)]??_0x557999(0x148))+']\x20('+_0x261547['code']+')'),_0x46c10a=await promptSelect(_0x557999(0x16e),_0x557aa9),_0x55953a=_0x1706d8[_0x46c10a];if(!_0x55953a)throw CliErrors['validation']('Invalid\x20dataset\x20selection.');_0x6c806d=_0x55953a[_0x557999(0x16a)],_0x29ca73=undefined;}}}}const _0x30ddec=await listDatasets(_0x79f6b0[_0x557999(0x187)]),_0x5e8714=_0x30ddec[_0x557999(0x15a)](_0xebf3c7=>_0xebf3c7[_0x557999(0x16a)]===_0x6c806d);if(!_0x5e8714)throw CliErrors[_0x557999(0x15d)](_0x557999(0x16f)+_0x6c806d+_0x557999(0x174)+(_0x29ca73?_0x557999(0x16c)+CLI_BIN_NAME+_0x557999(0x167):''));_0x4a6684=_0x5e8714['id'];const _0x305c0c=_0x29ca73??_0x6c806d,_0x92eb9c=await listBffDatasetOperations(_0x79f6b0[_0x557999(0x187)],_0x4a6684),_0x2745fa=_0x92eb9c?Object[_0x557999(0x184)](_0x92eb9c):[];if(_0x2745fa['length']===0x0)throw CliErrors[_0x557999(0x15d)]('No\x20operation\x20types\x20found\x20for\x20dataset\x20'+_0x305c0c+'.');let _0x485758;const _0x2a4e04=_0x79f6b0['str']('operation-type');if(_0x2a4e04){if(!_0x2745fa[_0x557999(0x158)](_0x2a4e04))throw CliErrors['validation'](_0x557999(0x14b)+_0x2a4e04+'\x22\x20not\x20found\x20for\x20dataset\x20'+_0x305c0c+'.\x20'+(_0x557999(0x189)+_0x2745fa[_0x557999(0x17d)](',\x20')));_0x485758=_0x2a4e04;}else{if(_0x79f6b0[_0x557999(0x198)])throw CliErrors[_0x557999(0x15d)](_0x557999(0x13f));const _0x4d6580=await promptSelect(_0x557999(0x15f),_0x2745fa);_0x485758=_0x2745fa[_0x4d6580]??_0x2745fa[0x0];}let _0x54fa44=normalizeHookFunctionNode(_0x79f6b0[_0x557999(0x140)](_0x557999(0x160)));if(!_0x54fa44){if(_0x79f6b0[_0x557999(0x140)](_0x557999(0x160)))throw CliErrors[_0x557999(0x15d)]('--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.');if(_0x79f6b0['nonInteractive'])throw CliErrors[_0x557999(0x15d)](_0x557999(0x170));const _0x57eb69=await promptSelect(_0x557999(0x13a),[_0x557999(0x171),_0x557999(0x16b)]);_0x54fa44=[_0x557999(0x171),_0x557999(0x16b)][_0x57eb69]??_0x557999(0x171);}return{'alias':_0x29ca73,'datasetCode':_0x6c806d,'datasetId':_0x4a6684,'operationType':_0x485758,'functionNode':_0x54fa44};}async function promptSelect(_0x2892a7,_0x2408c4){const _0x537b23=a31_0x164465;if(_0x2408c4[_0x537b23(0x150)]===0x1)return 0x0;for(const [_0x4843eb,_0x4894d2]of _0x2408c4['entries']()){process['stderr'][_0x537b23(0x18c)]('\x20\x20'+(_0x4843eb+0x1)+'.\x20'+_0x4894d2+'\x0a');}const _0x5b27fa=createInterface({'input':process[_0x537b23(0x164)],'output':process['stderr']});while(!![]){const _0x1e6bd8=await new Promise(_0x4eeba3=>{const _0x1360bb=_0x537b23;_0x5b27fa[_0x1360bb(0x159)](_0x2892a7+'\x20',_0x4eeba3);}),_0x3b7525=Number[_0x537b23(0x155)](_0x1e6bd8[_0x537b23(0x165)](),0xa);if(Number['isInteger'](_0x3b7525)&&_0x3b7525>=0x1&&_0x3b7525<=_0x2408c4[_0x537b23(0x150)])return _0x5b27fa[_0x537b23(0x19c)](),_0x3b7525-0x1;process[_0x537b23(0x13e)][_0x537b23(0x18c)](_0x537b23(0x17b)+_0x2408c4[_0x537b23(0x150)]+'.\x0a');}}function a31_0x48d1(_0x3610d7,_0x1db8a8){_0x3610d7=_0x3610d7-0x13a;const _0x533368=a31_0x5333();let _0x48d1fd=_0x533368[_0x3610d7];return _0x48d1fd;}function buildFilePath(_0x30becd,_0x3ff8f3,_0x1e5371,_0x5cc519){const _0x4f39de=a31_0x164465;if(_0x3ff8f3===_0x4f39de(0x18a)){if(!_0x5cc519)throw CliErrors['validation'](_0x4f39de(0x193));const _0x19fc72=_0x5cc519[_0x4f39de(0x14e)]??_0x5cc519[_0x4f39de(0x15e)];return join(_0x30becd['scriptsRootDir'],_0x4f39de(0x18a),_0x19fc72,_0x5cc519[_0x4f39de(0x157)],_0x5cc519[_0x4f39de(0x142)],_0x1e5371+'.js');}return join(_0x30becd[_0x4f39de(0x149)],_0x3ff8f3,_0x1e5371+'.js');}export function generateTemplate(_0x2e4246,_0x51cdc4,_0x6435e2,_0x31e9bf,_0x1753d3){const _0x10cd75=a31_0x164465,_0x2d1a13=_0x31e9bf?.['trim']()||DEFAULT_BFF_SCRIPT_DESCRIPTION,_0x212560=getAppBaseUrl(_0x6435e2),_0x16d877=_0x10cd75(0x17f);if(_0x2e4246===_0x10cd75(0x147))return'/**\x0a\x20*\x20'+_0x2d1a13+_0x10cd75(0x156)+_0x51cdc4+'\x0a\x20*\x20[平台配置]\x20'+_0x212560+_0x10cd75(0x197)+_0x6435e2+_0x10cd75(0x168)+_0x51cdc4+_0x10cd75(0x194)+_0x51cdc4+'\x22,\x20params\x20})\x0a'+_0x16d877+_0x10cd75(0x153)+_0x51cdc4+_0x10cd75(0x19a);if(_0x2e4246==='ENDPOINT')return _0x10cd75(0x195)+_0x2d1a13+_0x10cd75(0x18b)+_0x51cdc4+_0x10cd75(0x19d)+_0x6435e2+'/'+_0x51cdc4+_0x10cd75(0x14a)+_0x212560+'/data/backend-function\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/'+_0x6435e2+_0x10cd75(0x18d)+_0x51cdc4+_0x10cd75(0x182)+_0x16d877+_0x10cd75(0x166)+_0x51cdc4+_0x10cd75(0x19a);if(!_0x1753d3)throw CliErrors[_0x10cd75(0x15d)]('HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.');const _0x184d16=_0x1753d3[_0x10cd75(0x14e)]??_0x1753d3[_0x10cd75(0x15e)],_0x351772=_0x1753d3[_0x10cd75(0x142)]==='before'?_0x10cd75(0x192):_0x10cd75(0x185),_0x32024f=_0x1753d3[_0x10cd75(0x142)]==='before'?_0x10cd75(0x151):_0x10cd75(0x15c);return _0x10cd75(0x195)+_0x2d1a13+_0x10cd75(0x17c)+_0x51cdc4+_0x10cd75(0x172)+_0x6435e2+'/'+_0x1753d3[_0x10cd75(0x15e)]+'/'+_0x1753d3[_0x10cd75(0x157)]+_0x10cd75(0x14a)+_0x212560+_0x10cd75(0x17a)+_0x1753d3['datasetId']+'#api-list\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/'+_0x6435e2+'/HOOK/'+_0x184d16+'/'+_0x1753d3[_0x10cd75(0x157)]+'/'+_0x1753d3[_0x10cd75(0x142)]+'/'+_0x51cdc4+'.js\x0a\x20*\x20[触发节点]\x20'+_0x1753d3[_0x10cd75(0x142)]+'\x0a'+_0x16d877+_0x10cd75(0x173)+_0x351772+_0x10cd75(0x176)+_0x32024f+_0x10cd75(0x191)+_0x51cdc4+_0x10cd75(0x19a);}
|
|
1
|
+
const a31_0x5a4fff=a31_0x2662;(function(_0x27e86a,_0x2b8de2){const _0x300de2=a31_0x2662,_0x199425=_0x27e86a();while(!![]){try{const _0x56561a=-parseInt(_0x300de2(0x12b))/0x1*(-parseInt(_0x300de2(0x121))/0x2)+parseInt(_0x300de2(0x10c))/0x3+-parseInt(_0x300de2(0xfe))/0x4*(-parseInt(_0x300de2(0x131))/0x5)+parseInt(_0x300de2(0x13c))/0x6+-parseInt(_0x300de2(0x11e))/0x7*(-parseInt(_0x300de2(0x138))/0x8)+parseInt(_0x300de2(0x14e))/0x9+-parseInt(_0x300de2(0x117))/0xa;if(_0x56561a===_0x2b8de2)break;else _0x199425['push'](_0x199425['shift']());}catch(_0x4c617d){_0x199425['push'](_0x199425['shift']());}}}(a31_0x1003,0x3399e));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';function a31_0x2662(_0x1801ea,_0x32594f){_0x1801ea=_0x1801ea-0xf6;const _0x1003fe=a31_0x1003();let _0x266227=_0x1003fe[_0x1801ea];return _0x266227;}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';function a31_0x1003(){const _0x59165a=['Scaffold\x20a\x20new\x20Backend\x20Function\x20script\x20from\x20template','write','length','operation-type','map','1103247JMIZkC','/HOOK/','trim','File\x20already\x20exists:\x20','\x22,\x20params\x20})\x0a','datasetCode','No\x20operation\x20types\x20found\x20for\x20dataset\x20','stdin','appCode','HOOK','\x20api\x20pull`\x20to\x20refresh.',']\x20(','Available\x20aliases:\x20','44utERcJ','datasetcode','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','str','Script\x20description','\x0a\x20*\x20@param\x20{Object}\x20context\x20平台注入的执行上下文\x0a\x20*\x20@returns\x20{Promise<Object>}\x20','Operation\x20type\x20\x22','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','\x20*\x20[依赖数据集]\x20无(如有依赖,DB_TABLE\x20填物理表名;METADATA\x20填数据集编码与用途)\x0a\x20*\x20[调用\x20BF]\x20无(如有调用,填写脚本名称与用途)\x0a\x20*\x20[执行\x20SQL]\x20无(如有执行,填写\x20SQL\x20名称与用途)\x0a\x20*\x20[副作用]\x20无(如有通知或外部调用,说明影响与失败策略)','.js\x0a\x20*\x20[调用方式]\x20context.client.bff.execute({\x20scriptName:\x20\x22','Invalid\x20dataset\x20selection.','join','keys','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','288999knEWuE','parseInt','description','\x22.\x20','.js','Function\x20name\x20(valid\x20JS\x20identifier)','tableName','scriptsRootDir','/COMMON/','Dataset\x20not\x20found\x20for\x20code\x20\x22','/data/backend-function\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/','5286310MQpdnx','nonInteractive','string','find','isInteger','修改后的请求参数','ENDPOINT','16219FDWZUb','Created\x20','\x0a\x20*\x0a\x20*\x20[脚本类型]\x20ENDPOINT\x0a\x20*\x20[脚本名称]\x20','58nzMdlu','当前请求参数','type','Operation\x20type\x20(HOOK\x20only)','source','Select\x20dataset:','No\x20datasets\x20found\x20for\x20this\x20app.','\x22\x20not\x20found\x20for\x20dataset\x20','after','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','3041szoKNm','No\x20api.ts\x20found.\x20Run\x20`','/ENDPOINT/','Available:\x20','close','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','163330ajogzh','当前响应结果','stderr','question','#api-list\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','function-node','64AoxlYx','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','code','alias','330132VZvoKj','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','functionNode','validation','Alias\x20\x22','apiDir','/**\x0a\x20*\x20','includes','operationType','name','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','修改后的响应结果','before'];a31_0x1003=function(){return _0x59165a;};return a31_0x1003();}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':'create','description':a31_0x5a4fff(0x149),'risk':'read','flags':[{'name':'type','type':a31_0x5a4fff(0x119),'required':!![],'enum':['COMMON',a31_0x5a4fff(0x11d),'HOOK'],'description':'Script\x20type'},{'name':a31_0x5a4fff(0x145),'type':'string','required':!![],'description':a31_0x5a4fff(0x111)},{'name':a31_0x5a4fff(0x10e),'type':a31_0x5a4fff(0x119),'description':a31_0x5a4fff(0x102)},{'name':a31_0x5a4fff(0x13b),'type':a31_0x5a4fff(0x119),'description':a31_0x5a4fff(0x100)},{'name':'datasetcode','type':a31_0x5a4fff(0x119),'description':a31_0x5a4fff(0x139)},{'name':a31_0x5a4fff(0x14c),'type':'string','description':a31_0x5a4fff(0x124)},{'name':a31_0x5a4fff(0x137),'type':a31_0x5a4fff(0x119),'description':'Trigger\x20node\x20(HOOK\x20only)','enum':[a31_0x5a4fff(0x148),a31_0x5a4fff(0x129)]}],async 'validate'(_0x2db68e){const _0x567578=a31_0x5a4fff,_0x5752ec=_0x2db68e['str'](_0x567578(0x145));if(!isValidBffFunctionName(_0x5752ec))throw CliErrors[_0x567578(0x13f)]('Invalid\x20function\x20name\x20\x22'+_0x5752ec+'\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).');},async 'execute'(_0x3a067c){const _0x4840d4=a31_0x5a4fff,_0xf1eefc=loadBffProjectConfig(_0x3a067c[_0x4840d4(0xf9)]),_0x2bae6c=_0x3a067c[_0x4840d4(0x101)](_0x4840d4(0x123)),_0x38118c=_0x3a067c[_0x4840d4(0x101)](_0x4840d4(0x145)),_0x1238e8=_0x3a067c['str'](_0x4840d4(0x10e))||undefined,_0x2630d8=_0x2bae6c===_0x4840d4(0xfa)?await resolveHookOptions(_0xf1eefc,_0x3a067c):undefined,_0xb73e74=buildFilePath(_0xf1eefc,_0x2bae6c,_0x38118c,_0x2630d8);if(await fileExists(_0xb73e74))throw CliErrors[_0x4840d4(0x13f)](_0x4840d4(0x151)+_0xb73e74);await mkdir(dirname(_0xb73e74),{'recursive':!![]});const _0x432598=generateTemplate(_0x2bae6c,_0x38118c,_0x3a067c[_0x4840d4(0xf9)],_0x1238e8,_0x2630d8);await writeFile(_0xb73e74,_0x432598,'utf8');const _0x5b3d1e={'type':_0x2bae6c,'name':_0x38118c,'path':_0xb73e74};if(_0x1238e8)_0x5b3d1e[_0x4840d4(0x10e)]=_0x1238e8;if(_0x2630d8){if(_0x2630d8[_0x4840d4(0x13b)])_0x5b3d1e[_0x4840d4(0x13b)]=_0x2630d8['alias'];_0x5b3d1e[_0x4840d4(0xf6)]=_0x2630d8[_0x4840d4(0xf6)],_0x5b3d1e[_0x4840d4(0x144)]=_0x2630d8['operationType'],_0x5b3d1e[_0x4840d4(0x13e)]=_0x2630d8[_0x4840d4(0x13e)];}return{'ok':!![],'data':_0x5b3d1e,'message':_0x4840d4(0x11f)+_0x2bae6c+'\x20function:\x20'+_0x38118c};}};async function resolveHookOptions(_0x243b4c,_0x581015){const _0x4beace=a31_0x5a4fff,_0x562c42=loadAliasMap(_0x581015['apiDir'],undefined,resolveApiFilePath(_0x581015[_0x4beace(0x141)],_0x581015['appCode'])),_0x4cd85e=_0x562c42['length']>0x0;let _0x8d4aec,_0x1db7f5,_0x1dde39;const _0x36805a=_0x581015[_0x4beace(0x101)](_0x4beace(0x13b)),_0x3c4316=_0x581015[_0x4beace(0x101)](_0x4beace(0xff));if(_0x36805a){const _0x5b41cf=resolveAlias(_0x581015[_0x4beace(0x141)],_0x36805a,undefined,resolveApiFilePath(_0x581015[_0x4beace(0x141)],_0x581015[_0x4beace(0xf9)]));if(!_0x5b41cf){const _0x506bfc=_0x4cd85e?_0x4beace(0xfd)+_0x562c42[_0x4beace(0x14d)](_0xefece=>_0xefece[_0x4beace(0x13b)])['join'](',\x20'):_0x4beace(0x12c)+CLI_BIN_NAME+_0x4beace(0x146);throw CliErrors[_0x4beace(0x13f)](_0x4beace(0x140)+_0x36805a+'\x22\x20not\x20found.\x20'+_0x506bfc);}_0x8d4aec=_0x36805a,_0x1db7f5=_0x5b41cf;}else{if(_0x3c4316){_0x1db7f5=_0x3c4316;const _0x34a286=_0x562c42[_0x4beace(0x11a)](_0x416b81=>_0x416b81[_0x4beace(0xf6)]===_0x3c4316);_0x8d4aec=_0x34a286?.[_0x4beace(0x13b)];}else{if(_0x581015[_0x4beace(0x118)])throw CliErrors[_0x4beace(0x13f)](_0x4beace(0x130));else{if(_0x4cd85e){const _0x4fa1ad=_0x562c42[_0x4beace(0x14d)](_0x3ff17a=>_0x3ff17a[_0x4beace(0x13b)]+'\x20('+_0x3ff17a[_0x4beace(0x112)]+')'),_0x34610f=await promptSelect(_0x4beace(0x126),_0x4fa1ad),_0x209efa=_0x562c42[_0x34610f];if(!_0x209efa)throw CliErrors['validation'](_0x4beace(0x108));_0x8d4aec=_0x209efa[_0x4beace(0x13b)],_0x1db7f5=_0x209efa[_0x4beace(0xf6)];}else{const _0x281486=await listDatasets(_0x581015['appCode']);if(_0x281486[_0x4beace(0x14b)]===0x0)throw CliErrors['validation'](_0x4beace(0x127));const _0x371c42=_0x281486[_0x4beace(0x14d)](_0x310ad7=>_0x310ad7['name']+'\x20['+(_0x310ad7[_0x4beace(0x125)]??'UNKNOWN')+_0x4beace(0xfc)+_0x310ad7[_0x4beace(0x13a)]+')'),_0x153367=await promptSelect(_0x4beace(0x126),_0x371c42),_0x2680d2=_0x281486[_0x153367];if(!_0x2680d2)throw CliErrors[_0x4beace(0x13f)](_0x4beace(0x108));_0x1db7f5=_0x2680d2['code'],_0x8d4aec=undefined;}}}}const _0x31fe68=await listDatasets(_0x581015[_0x4beace(0xf9)]),_0x5883b8=_0x31fe68[_0x4beace(0x11a)](_0x2fba55=>_0x2fba55[_0x4beace(0x13a)]===_0x1db7f5);if(!_0x5883b8)throw CliErrors[_0x4beace(0x13f)](_0x4beace(0x115)+_0x1db7f5+_0x4beace(0x10f)+(_0x8d4aec?_0x4beace(0x12a)+CLI_BIN_NAME+_0x4beace(0xfb):''));_0x1dde39=_0x5883b8['id'];const _0x59ba1d=_0x8d4aec??_0x1db7f5,_0x3135aa=await listBffDatasetOperations(_0x581015[_0x4beace(0xf9)],_0x1dde39),_0x5e2d8b=_0x3135aa?Object[_0x4beace(0x10a)](_0x3135aa):[];if(_0x5e2d8b[_0x4beace(0x14b)]===0x0)throw CliErrors[_0x4beace(0x13f)](_0x4beace(0xf7)+_0x59ba1d+'.');let _0x234fb1;const _0x3f9f6e=_0x581015[_0x4beace(0x101)]('operation-type');if(_0x3f9f6e){if(!_0x5e2d8b[_0x4beace(0x143)](_0x3f9f6e))throw CliErrors[_0x4beace(0x13f)](_0x4beace(0x104)+_0x3f9f6e+_0x4beace(0x128)+_0x59ba1d+'.\x20'+(_0x4beace(0x12e)+_0x5e2d8b[_0x4beace(0x109)](',\x20')));_0x234fb1=_0x3f9f6e;}else{if(_0x581015['nonInteractive'])throw CliErrors[_0x4beace(0x13f)](_0x4beace(0x105));const _0x412e12=await promptSelect('Select\x20operation\x20type:',_0x5e2d8b);_0x234fb1=_0x5e2d8b[_0x412e12]??_0x5e2d8b[0x0];}let _0x4af42=normalizeHookFunctionNode(_0x581015[_0x4beace(0x101)](_0x4beace(0x137)));if(!_0x4af42){if(_0x581015[_0x4beace(0x101)]('function-node'))throw CliErrors[_0x4beace(0x13f)]('--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.');if(_0x581015[_0x4beace(0x118)])throw CliErrors[_0x4beace(0x13f)](_0x4beace(0x10b));const _0x2c8bcb=await promptSelect('Select\x20trigger\x20node:',['before','after']);_0x4af42=['before',_0x4beace(0x129)][_0x2c8bcb]??_0x4beace(0x148);}return{'alias':_0x8d4aec,'datasetCode':_0x1db7f5,'datasetId':_0x1dde39,'operationType':_0x234fb1,'functionNode':_0x4af42};}async function promptSelect(_0x320858,_0x59b804){const _0x3f0288=a31_0x5a4fff;if(_0x59b804['length']===0x1)return 0x0;for(const [_0x4d50db,_0x21c601]of _0x59b804['entries']()){process[_0x3f0288(0x133)]['write']('\x20\x20'+(_0x4d50db+0x1)+'.\x20'+_0x21c601+'\x0a');}const _0x41d43f=createInterface({'input':process[_0x3f0288(0xf8)],'output':process['stderr']});while(!![]){const _0x508a15=await new Promise(_0xb42776=>{const _0x1159c9=_0x3f0288;_0x41d43f[_0x1159c9(0x134)](_0x320858+'\x20',_0xb42776);}),_0x5088fe=Number[_0x3f0288(0x10d)](_0x508a15['trim'](),0xa);if(Number[_0x3f0288(0x11b)](_0x5088fe)&&_0x5088fe>=0x1&&_0x5088fe<=_0x59b804[_0x3f0288(0x14b)])return _0x41d43f[_0x3f0288(0x12f)](),_0x5088fe-0x1;process[_0x3f0288(0x133)][_0x3f0288(0x14a)]('\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20'+_0x59b804[_0x3f0288(0x14b)]+'.\x0a');}}function buildFilePath(_0x3ac30a,_0x993900,_0x7a0e8f,_0x5c42be){const _0x5cc104=a31_0x5a4fff;if(_0x993900===_0x5cc104(0xfa)){if(!_0x5c42be)throw CliErrors[_0x5cc104(0x13f)]('HOOK\x20requires\x20alias/operation/node\x20options.');const _0x3092fa=_0x5c42be['alias']??_0x5c42be[_0x5cc104(0xf6)];return join(_0x3ac30a[_0x5cc104(0x113)],_0x5cc104(0xfa),_0x3092fa,_0x5c42be[_0x5cc104(0x144)],_0x5c42be[_0x5cc104(0x13e)],_0x7a0e8f+_0x5cc104(0x110));}return join(_0x3ac30a[_0x5cc104(0x113)],_0x993900,_0x7a0e8f+_0x5cc104(0x110));}export function generateTemplate(_0x5e5ace,_0x4e3bab,_0x58c933,_0x16d5cc,_0x3054db){const _0x32bdbd=a31_0x5a4fff,_0x162708=_0x16d5cc?.[_0x32bdbd(0x150)]()||DEFAULT_BFF_SCRIPT_DESCRIPTION,_0x7d5fd8=getAppBaseUrl(_0x58c933),_0x30cf18=_0x32bdbd(0x106);if(_0x5e5ace==='COMMON')return _0x32bdbd(0x142)+_0x162708+'\x0a\x20*\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[脚本名称]\x20'+_0x4e3bab+'\x0a\x20*\x20[平台配置]\x20'+_0x7d5fd8+_0x32bdbd(0x116)+_0x58c933+_0x32bdbd(0x114)+_0x4e3bab+_0x32bdbd(0x107)+_0x4e3bab+_0x32bdbd(0x152)+_0x30cf18+'\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'+_0x4e3bab+_0x32bdbd(0x13d);if(_0x5e5ace===_0x32bdbd(0x11d))return _0x32bdbd(0x142)+_0x162708+_0x32bdbd(0x120)+_0x4e3bab+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/'+_0x58c933+'/'+_0x4e3bab+'\x0a\x20*\x20[平台配置]\x20'+_0x7d5fd8+'/data/backend-function\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/'+_0x58c933+_0x32bdbd(0x12d)+_0x4e3bab+'.js\x0a'+_0x30cf18+'\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'+_0x4e3bab+_0x32bdbd(0x13d);if(!_0x3054db)throw CliErrors['validation'](_0x32bdbd(0x136));const _0x5615f0=_0x3054db['alias']??_0x3054db[_0x32bdbd(0xf6)],_0x4186c7=_0x3054db[_0x32bdbd(0x13e)]===_0x32bdbd(0x148)?_0x32bdbd(0x122):_0x32bdbd(0x132),_0xb31407=_0x3054db['functionNode']==='before'?_0x32bdbd(0x11c):_0x32bdbd(0x147);return _0x32bdbd(0x142)+_0x162708+'\x0a\x20*\x0a\x20*\x20[脚本类型]\x20HOOK\x0a\x20*\x20[脚本名称]\x20'+_0x4e3bab+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/'+_0x58c933+'/'+_0x3054db[_0x32bdbd(0xf6)]+'/'+_0x3054db['operationType']+'\x0a\x20*\x20[平台配置]\x20'+_0x7d5fd8+'/data/dataset/'+_0x3054db['datasetId']+_0x32bdbd(0x135)+_0x58c933+_0x32bdbd(0x14f)+_0x5615f0+'/'+_0x3054db[_0x32bdbd(0x144)]+'/'+_0x3054db['functionNode']+'/'+_0x4e3bab+'.js\x0a\x20*\x20[触发节点]\x20'+_0x3054db['functionNode']+'\x0a'+_0x30cf18+'\x0a\x20*\x20[参数字段]\x20按实际输入为\x20params.<字段名>\x20补充\x20JSDoc\x20参数标签;无字段时仅保留根参数\x0a\x20*\x20[异常说明]\x20无;显式抛出异常时补充异常类型与触发条件\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20'+_0x4186c7+_0x32bdbd(0x103)+_0xb31407+'\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20'+_0x4e3bab+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a32_0x5be015=a32_0xb7f6;function a32_0x2da8(){const _0x31ffb1=['42377357EgjIne','155132xbpJoG','Backend\x20Function\x20lock\x20file\x20not\x20found.','Lock\x20scope\x20for\x20app\x20\x22','high-risk-write','Backend\x20Function\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','appCode','7179417bUFYhC','Deleted\x20','apps','trashDir','lockFilePath','split','keys','2558190cdEZbw','replace','stringify','830539CVzTqL','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','startsWith','2BrZTEy','Multiple\x20functions\x20match\x20\x22','remoteId','lastSync','delete','validation','length','Would\x20delete\x20','find','toISOString','13427514mKTmIh','parse','scriptsRoot','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','scriptsRootDir','functions','filter','POST','No\x20lock\x20entry\x20found\x20for\x20\x22','\x20(local\x20file\x20moved\x20to\x20trash)','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','263345CUjMJh','84gOEgpZ','8FhErlc','projectRoot','\x22\x20not\x20found\x20after\x20ensureLockScope.','str','Function\x20not\x20found:\x20','\x20\x20-\x20','6CHQOLN','/api/management/library/scripts/delete','target'];a32_0x2da8=function(){return _0x31ffb1;};return a32_0x2da8();}(function(_0x3f86af,_0x295ba0){const _0x553a67=a32_0xb7f6,_0x8fe318=_0x3f86af();while(!![]){try{const _0x39b966=-parseInt(_0x553a67(0x176))/0x1*(-parseInt(_0x553a67(0x179))/0x2)+parseInt(_0x553a67(0x15b))/0x3*(parseInt(_0x553a67(0x166))/0x4)+parseInt(_0x553a67(0x15a))/0x5*(-parseInt(_0x553a67(0x162))/0x6)+parseInt(_0x553a67(0x16c))/0x7+-parseInt(_0x553a67(0x15c))/0x8*(-parseInt(_0x553a67(0x183))/0x9)+parseInt(_0x553a67(0x173))/0xa+-parseInt(_0x553a67(0x165))/0xb;if(_0x39b966===_0x295ba0)break;else _0x8fe318['push'](_0x8fe318['shift']());}catch(_0x158f29){_0x8fe318['push'](_0x8fe318['shift']());}}}(a32_0x2da8,0xbf93f));function a32_0xb7f6(_0x16f2b0,_0x2ffa6b){_0x16f2b0=_0x16f2b0-0x152;const _0x2da8a6=a32_0x2da8();let _0xb7f60=_0x2da8a6[_0x16f2b0];return _0xb7f60;}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';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':'bff','command':a32_0x5be015(0x17d),'description':'Delete\x20a\x20Backend\x20Function\x20script\x20from\x20remote\x20and\x20local','risk':a32_0x5be015(0x169),'flags':[{'name':a32_0x5be015(0x164),'type':'string','required':!![],'description':a32_0x5be015(0x159)}],async 'validate'(_0x3cbf20){const _0x220d7e=a32_0x5be015,_0x2bffa2=loadBffProjectConfig(_0x3cbf20[_0x220d7e(0x16b)]),_0x460c91=await readBffLockFile(_0x2bffa2[_0x220d7e(0x170)]);if(!_0x460c91)throw CliErrors[_0x220d7e(0x17e)](_0x220d7e(0x16a));},async 'dryRun'(_0x4213cc){const _0x215e2b=a32_0x5be015,_0x385d5c=loadBffProjectConfig(_0x4213cc[_0x215e2b(0x16b)]),_0x1c471f=await readBffLockFile(_0x385d5c[_0x215e2b(0x170)]);if(!_0x1c471f)throw CliErrors['validation'](_0x215e2b(0x167));const {appLock:_0x5d36e5}=ensureLockScope(_0x1c471f,_0x4213cc[_0x215e2b(0x16b)],_0x385d5c[_0x215e2b(0x185)],'delete'),_0x6adb9d=_0x4213cc[_0x215e2b(0x15f)]('target'),_0x5b4b25=Object[_0x215e2b(0x172)](_0x5d36e5['functions']),_0x4eb9e2=resolveDeleteTarget(_0x6adb9d,_0x5b4b25),_0x4db219=_0x5d36e5[_0x215e2b(0x154)][_0x4eb9e2];if(!_0x4db219)throw CliErrors[_0x215e2b(0x17e)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x4eb9e2+'\x22.');const _0x2395d8=resolveLocalFilePathFromLockKey(_0x385d5c,_0x4eb9e2),_0x3a61f4=relative(_0x385d5c[_0x215e2b(0x15d)],_0x2395d8),_0x186154=join(_0x385d5c[_0x215e2b(0x16f)],'<timestamp>',_0x3a61f4);return{'method':_0x215e2b(0x156),'url':_0x215e2b(0x163),'body':{'appCode':_0x4213cc[_0x215e2b(0x16b)],'target':_0x4eb9e2,'remoteId':_0x4db219[_0x215e2b(0x17b)],'localFilePath':_0x2395d8,'trashedPath':_0x186154},'description':_0x215e2b(0x180)+_0x4eb9e2+_0x215e2b(0x152)};},async 'execute'(_0x1143d6){const _0xc90585=a32_0x5be015,_0x5150d8=loadBffProjectConfig(_0x1143d6['appCode']),_0x284654=await readBffLockFile(_0x5150d8[_0xc90585(0x170)]);if(!_0x284654)throw CliErrors[_0xc90585(0x17e)](_0xc90585(0x167));const {lockData:_0x394f9d,appLock:_0x5dcd56}=ensureLockScope(_0x284654,_0x1143d6[_0xc90585(0x16b)],_0x5150d8[_0xc90585(0x185)],'delete'),_0x28f770=JSON[_0xc90585(0x184)](JSON[_0xc90585(0x175)](_0x394f9d)),_0x1ca73a=_0x28f770[_0xc90585(0x16e)][_0x1143d6[_0xc90585(0x16b)]];if(!_0x1ca73a)throw new Error(_0xc90585(0x168)+_0x1143d6[_0xc90585(0x16b)]+_0xc90585(0x15e));const _0x28a46a=_0x1143d6['str'](_0xc90585(0x164)),_0x5aaad8=Object[_0xc90585(0x172)](_0x1ca73a[_0xc90585(0x154)]),_0x22cad4=resolveDeleteTarget(_0x28a46a,_0x5aaad8),_0x57b51=_0x1ca73a[_0xc90585(0x154)][_0x22cad4];if(!_0x57b51)throw CliErrors[_0xc90585(0x17e)](_0xc90585(0x157)+_0x22cad4+'\x22.');await deleteBffScript(_0x57b51['remoteId']),delete _0x1ca73a['functions'][_0x22cad4],_0x1ca73a[_0xc90585(0x17c)]=new Date()[_0xc90585(0x182)](),await writeBffLockFile(_0x5150d8[_0xc90585(0x170)],_0x28f770);const _0x3d6dec=resolveLocalFilePathFromLockKey(_0x5150d8,_0x22cad4);let _0x391957;await fileExists(_0x3d6dec)&&(_0x391957=await moveToTrash(_0x5150d8[_0xc90585(0x15d)],_0x5150d8[_0xc90585(0x16f)],_0x3d6dec),await cleanupEmptyDirectories(dirname(_0x3d6dec),_0x5150d8[_0xc90585(0x153)]));await waitForDeleteSettlement(_0x5150d8[_0xc90585(0x170)],_0x1143d6[_0xc90585(0x16b)],_0x22cad4,_0x3d6dec),await sleep(0x96);const _0x38ed4c={'deleted':_0x22cad4,'remoteId':_0x57b51['remoteId']};if(_0x391957)_0x38ed4c['trashedTo']=_0x391957;return{'ok':!![],'data':_0x38ed4c,'message':_0xc90585(0x16d)+_0x22cad4+(_0x391957?_0xc90585(0x158):'')};}};function resolveDeleteTarget(_0x3d1f64,_0x240989){const _0x413e6d=a32_0x5be015;if(_0x3d1f64['includes']('/')){const _0x5ec204=_0x240989[_0x413e6d(0x181)](_0x4922fb=>_0x4922fb===_0x3d1f64);if(!_0x5ec204)throw CliErrors[_0x413e6d(0x17e)](_0x413e6d(0x160)+_0x3d1f64);return _0x5ec204;}const _0x3174a0=_0x240989[_0x413e6d(0x155)](_0x1ddb96=>_0x1ddb96[_0x413e6d(0x171)]('/')['at'](-0x1)===_0x3d1f64);if(_0x3174a0['length']===0x0)throw CliErrors[_0x413e6d(0x17e)]('Function\x20not\x20found:\x20'+_0x3d1f64);if(_0x3174a0[_0x413e6d(0x17f)]>0x1)throw CliErrors['validation'](_0x413e6d(0x17a)+_0x3d1f64+_0x413e6d(0x177)+_0x3174a0['map'](_0x333555=>_0x413e6d(0x161)+_0x333555)['join']('\x0a'));return _0x3174a0[0x0];}async function moveToTrash(_0x25253e,_0x497ab3,_0x102bd5){const _0x33c380=a32_0x5be015,_0x442ec5=new Date()[_0x33c380(0x182)]()[_0x33c380(0x174)](/[:.]/g,'-'),_0x51d37e=relative(_0x25253e,_0x102bd5),_0x9763f9=join(_0x497ab3,_0x442ec5,_0x51d37e);return await mkdir(dirname(_0x9763f9),{'recursive':!![]}),await rename(_0x102bd5,_0x9763f9),_0x9763f9;}async function cleanupEmptyDirectories(_0xed6e7c,_0x3f0ab6){const _0x3289bd=a32_0x5be015;let _0x5e85a9=resolve(_0xed6e7c);const _0x51c6a8=resolve(_0x3f0ab6);while(_0x5e85a9[_0x3289bd(0x178)](''+_0x51c6a8+sep)||_0x5e85a9===_0x51c6a8){if(_0x5e85a9===_0x51c6a8)return;try{const _0x3a30b0=await readdir(_0x5e85a9);if(_0x3a30b0[_0x3289bd(0x17f)]>0x0)return;await rmdir(_0x5e85a9);}catch{return;}_0x5e85a9=dirname(_0x5e85a9);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x558eba,_0x58ad0c,_0x38310b,_0x3e691a){for(let _0x3ec0af=0x0;_0x3ec0af<DELETE_SETTLE_RETRY_COUNT;_0x3ec0af+=0x1){const _0x3a1a81=await readBffLockFile(_0x558eba),_0x3b6bb1=!!_0x3a1a81?.['apps']?.[_0x58ad0c]?.['functions']?.[_0x38310b],_0x33bcd3=await fileExists(_0x3e691a);if(!_0x3b6bb1&&!_0x33bcd3)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error('Local\x20delete\x20not\x20settled\x20for\x20'+_0x38310b+'.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a33_0x414839=a33_0x1fc3;function a33_0x1fc3(_0x34c427,_0x112e8a){_0x34c427=_0x34c427-0xe2;const _0x4f6a36=a33_0x4f6a();let _0x1fc389=_0x4f6a36[_0x34c427];return _0x1fc389;}(function(_0x590b3f,_0x3bd0af){const _0x2cc3ad=a33_0x1fc3,_0xd22e1=_0x590b3f();while(!![]){try{const _0x127793=parseInt(_0x2cc3ad(0xe6))/0x1*(-parseInt(_0x2cc3ad(0xef))/0x2)+parseInt(_0x2cc3ad(0xe9))/0x3*(parseInt(_0x2cc3ad(0xf4))/0x4)+-parseInt(_0x2cc3ad(0xeb))/0x5+parseInt(_0x2cc3ad(0xe3))/0x6+parseInt(_0x2cc3ad(0xf6))/0x7*(-parseInt(_0x2cc3ad(0xf9))/0x8)+-parseInt(_0x2cc3ad(0xee))/0x9+parseInt(_0x2cc3ad(0xe5))/0xa;if(_0x127793===_0x3bd0af)break;else _0xd22e1['push'](_0xd22e1['shift']());}catch(_0xc43b82){_0xd22e1['push'](_0xd22e1['shift']());}}}(a33_0x4f6a,0x70381));function a33_0x4f6a(){const _0x30760e=['Get\x20Backend\x20Function\x20script\x20details\x20by\x20ID','4668480ceLmpc','6CoDXQB','createdTime','updatedTime','read','detail','193124eCfNhY','bff','21259fHswNY','Return\x20full\x20raw\x20script\x20object','updateUserName','776GBOqPp','number','5417892HLpBsX','verbose','10674340gciBkc','293903JboqDs','Script\x20ID','description','42NjStbk','version','2458415xDsqoq','scriptContent'];a33_0x4f6a=function(){return _0x30760e;};return a33_0x4f6a();}import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a33_0x414839(0xf5),'command':a33_0x414839(0xf3),'description':a33_0x414839(0xed),'risk':a33_0x414839(0xf2),'flags':[{'name':'id','type':a33_0x414839(0xe2),'required':!![],'description':a33_0x414839(0xe7)},{'name':'verbose','type':'boolean','description':a33_0x414839(0xf7)}],async 'execute'(_0x20121e){const _0x2edf40=a33_0x414839,_0x1f651c=await getBffScriptInfo(_0x20121e['num']('id')),_0x578be5=_0x20121e['bool'](_0x2edf40(0xe4));if(_0x578be5)return{'ok':!![],'data':_0x1f651c};return{'ok':!![],'data':{'id':_0x1f651c['id'],'functionName':_0x1f651c['functionName']??'','version':_0x1f651c[_0x2edf40(0xea)]??'','updateUserName':_0x1f651c[_0x2edf40(0xf8)]??'','appCode':_0x1f651c['appCode'],'scriptType':_0x1f651c['scriptType'],'description':_0x1f651c[_0x2edf40(0xe8)]||'(none)','createdTime':_0x1f651c[_0x2edf40(0xf0)]??'','updatedTime':_0x1f651c[_0x2edf40(0xf1)]??'','scriptContent':_0x1f651c[_0x2edf40(0xec)]??''}};}};
|