@lovrabet/rabetbase-cli 2.5.1-beta.2 → 2.5.1-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-restore.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/dataset/user-deleted-field-list.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/table-diff-shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/deployment/auto-sync.js +1 -1
- package/lib/commands/deployment/index.js +1 -1
- package/lib/commands/deployment/sync.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/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.js +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/project-routing.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/routing-profile.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +0 -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 +1 -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 +2 -2
- package/skills/rabetbase/references/rabetbase-config.md +1 -1
- package/skills/rabetbase/references/rabetbase-doctor.md +1 -1
- package/skills/rabetbase/references/rabetbase-kb.md +8 -7
- package/skills/rabetbase.manifest.json +3 -3
package/lib/commands/app/list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a20_0x1746(){const _0x2c2052=['\x20in\x20','name','List\x20configured\x20apps,\x20or\x20platform\x20apps\x20with\x20--remote','appcode','keys','\x20config','1201005PzHeNT','2628140LZTxLP','push','entries','global','apps','14502fjfQUS','1059592QFBhZG','find','validation','671gxEpdj','bool','list','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','boolean','No\x20apps\x20configured','projectPath','merged','93240mLqaBb','.\x20Use\x20`','`--remote`\x20cannot\x20be\x20used\x20with\x20`--global`\x20or\x20`--project`.','14rDSSTC','216276KLshrC','projectConfig','2eWvZoZ','length','Use\x20`rabetbase\x20app\x20list\x20--remote`\x20for\x20the\x20platform\x20directory,\x20or\x20`rabetbase\x20app\x20list\x20--global/--project`\x20for\x20local\x20config.','globalPath','mergedCli','project','object','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','remote','905XQOKoH','306121jOPdhH','app','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','9TpGsve','globalConfig','defaultApp'];a20_0x1746=function(){return _0x2c2052;};return a20_0x1746();}const a20_0x4ed8be=a20_0x5afe;(function(_0x23d4b5,_0x1b0687){const _0x400c73=a20_0x5afe,_0x31c811=_0x23d4b5();while(!![]){try{const _0xa32eca=-parseInt(_0x400c73(0x8a))/0x1*(parseInt(_0x400c73(0x80))/0x2)+parseInt(_0x400c73(0x96))/0x3+parseInt(_0x400c73(0x7a))/0x4+parseInt(_0x400c73(0x89))/0x5*(-parseInt(_0x400c73(0x9c))/0x6)+parseInt(_0x400c73(0x7d))/0x7*(-parseInt(_0x400c73(0x9d))/0x8)+-parseInt(_0x400c73(0x8d))/0x9*(parseInt(_0x400c73(0x97))/0xa)+-parseInt(_0x400c73(0x72))/0xb*(-parseInt(_0x400c73(0x7e))/0xc);if(_0xa32eca===_0x1b0687)break;else _0x31c811['push'](_0x31c811['shift']());}catch(_0x35fcaa){_0x31c811['push'](_0x31c811['shift']());}}}(a20_0x1746,0x3d75a));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';import{listRemoteAppDirectory}from'../../commands/app/remote-directory.js';function buildItemsFromLayer(_0x35ea13,_0x103fe9){const _0x8c9a88=a20_0x5afe,_0x431727=[],_0x34bd87=_0x35ea13[_0x8c9a88(0x9b)]&&typeof _0x35ea13['apps']==='object'?_0x35ea13['apps']:{},_0x860a74=_0x35ea13[_0x8c9a88(0x8f)]||undefined,_0x2e7271=_0x860a74??(Object[_0x8c9a88(0x94)](_0x34bd87)[_0x8c9a88(0x81)]===0x1?Object[_0x8c9a88(0x94)](_0x34bd87)[0x0]:undefined);for(const [_0x50bddc,_0x30457a]of Object['entries'](_0x34bd87)){if(!_0x30457a||typeof _0x30457a!==_0x8c9a88(0x86)||!_0x30457a[_0x8c9a88(0x93)])continue;_0x431727[_0x8c9a88(0x98)]({'name':_0x50bddc,'appcode':_0x30457a[_0x8c9a88(0x93)],'named':!![],'definedIn':_0x103fe9,'isDefault':_0x50bddc===_0x2e7271,...buildAppProfileListFields(_0x30457a)});}return _0x431727;}function buildMergedItems(_0x15e0ad,_0x5c610c){const _0x57c859=a20_0x5afe,{apps:apps={}}=_0x15e0ad,_0x5aac5a=_0x15e0ad[_0x57c859(0x8f)],_0x26fb65=_0x5aac5a??(Object[_0x57c859(0x94)](apps)['length']===0x1?Object['keys'](apps)[0x0]:undefined),_0x5e4db4=_0x5c610c[_0x57c859(0x8e)][_0x57c859(0x9b)]&&typeof _0x5c610c[_0x57c859(0x8e)][_0x57c859(0x9b)]===_0x57c859(0x86)?_0x5c610c[_0x57c859(0x8e)][_0x57c859(0x9b)]:{},_0x279319=_0x5c610c['projectConfig']['apps']&&typeof _0x5c610c[_0x57c859(0x7f)][_0x57c859(0x9b)]===_0x57c859(0x86)?_0x5c610c[_0x57c859(0x7f)][_0x57c859(0x9b)]:{},_0x1a1884=Object[_0x57c859(0x99)](apps),_0x78de24=_0x1a1884['map'](([_0x12671f,_0x30dd2e])=>({'name':_0x12671f,'appcode':_0x30dd2e[_0x57c859(0x93)],'named':!![],'definedIn':appDefinedIn(_0x12671f,_0x5e4db4,_0x279319),'isDefault':_0x12671f===_0x26fb65,...buildAppProfileListFields(_0x30dd2e)}));return _0x78de24;}function validateAppListFlags(_0x574119){const _0xbf1f9c=a20_0x5afe;if(!_0x574119[_0xbf1f9c(0x73)]('remote'))return;if(!_0x574119[_0xbf1f9c(0x73)](_0xbf1f9c(0x9a))&&!_0x574119[_0xbf1f9c(0x73)](_0xbf1f9c(0x85)))return;throw CliErrors[_0xbf1f9c(0x71)](_0xbf1f9c(0x7c),_0xbf1f9c(0x82));}function a20_0x5afe(_0x5affe6,_0x2ac866){_0x5affe6=_0x5affe6-0x70;const _0x17464e=a20_0x1746();let _0x5afe23=_0x17464e[_0x5affe6];return _0x5afe23;}async function execute(_0x9db262){const _0x554776=a20_0x5afe;validateAppListFlags(_0x9db262);if(_0x9db262[_0x554776(0x73)](_0x554776(0x88)))return{'ok':!![],'data':await listRemoteAppDirectory(_0x9db262)};const _0x5b36f6=_0x9db262[_0x554776(0x73)]('global'),_0x4e6de2=_0x9db262[_0x554776(0x73)](_0x554776(0x85)),_0x43b1b8=_0x5b36f6?'global':_0x4e6de2?_0x554776(0x85):_0x554776(0x79),{config:_0x198316,layers:_0xe94d72}=readRawConfigWithLayers(),_0x33c0b5=resolveDefaultAppSource(_0xe94d72),{defaultApp:_0x317d4b}=_0x198316;let _0x10aa46,_0x4d2d61;switch(_0x43b1b8){case'global':_0x10aa46=buildItemsFromLayer(_0xe94d72['globalConfig'],_0x554776(0x9a)),_0x4d2d61=_0xe94d72[_0x554776(0x83)];break;case _0x554776(0x85):_0x10aa46=buildItemsFromLayer(_0xe94d72[_0x554776(0x7f)],_0x554776(0x85)),_0x4d2d61=_0xe94d72[_0x554776(0x78)];break;default:_0x10aa46=buildMergedItems(_0x198316,_0xe94d72);break;}enrichAppListItemsWithMergedSelection(_0x10aa46,_0x9db262[_0x554776(0x84)]);if(_0x10aa46[_0x554776(0x81)]===0x0){const _0x90cdc6=_0x43b1b8===_0x554776(0x79)?'':_0x554776(0x90)+_0x43b1b8+_0x554776(0x95);return{'ok':!![],'data':[],'message':_0x554776(0x77)+_0x90cdc6+_0x554776(0x7b)+CLI_BIN_NAME+'\x20workspace\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x5efe48=_0x10aa46[_0x554776(0x70)](_0xc21a5f=>_0xc21a5f['isCurrent']===!![]),_0x53d5e9=_0x317d4b??_0x5efe48?.[_0x554776(0x91)]??null,_0x41f145=_0x43b1b8==='merged'?{'globalPath':_0xe94d72[_0x554776(0x83)]??null,'projectPath':_0xe94d72[_0x554776(0x78)]??null,'defaultApp':_0x53d5e9,'defaultAppSource':_0x317d4b!=null?_0x33c0b5:null}:{'scope':_0x43b1b8,'configPath':_0x4d2d61??null};return{'ok':!![],'data':{'items':_0x10aa46,'meta':_0x41f145}};}export const appListDefinition={'service':a20_0x4ed8be(0x8b),'command':a20_0x4ed8be(0x74),'description':a20_0x4ed8be(0x92),'risk':'read','auth':'optional','requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a20_0x4ed8be(0x88),'type':'boolean','description':a20_0x4ed8be(0x8c),'default':![]},{'name':a20_0x4ed8be(0x9a),'type':a20_0x4ed8be(0x76),'description':a20_0x4ed8be(0x75),'default':![]},{'name':a20_0x4ed8be(0x85),'type':'boolean','description':a20_0x4ed8be(0x87),'default':![]}],async 'validate'(_0x5bf637){validateAppListFlags(_0x5bf637);},'execute':execute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a21_0x212496=a21_0x578a;(function(_0x31e9f3,_0x3f2e7e){const _0x554710=a21_0x578a,_0x51a424=_0x31e9f3();while(!![]){try{const _0x5d708e=-parseInt(_0x554710(0xda))/0x1+-parseInt(_0x554710(0xdb))/0x2+-parseInt(_0x554710(0xde))/0x3+-parseInt(_0x554710(0xcf))/0x4+parseInt(_0x554710(0xd7))/0x5+parseInt(_0x554710(0xd2))/0x6*(-parseInt(_0x554710(0xd6))/0x7)+parseInt(_0x554710(0xd8))/0x8;if(_0x5d708e===_0x3f2e7e)break;else _0x51a424['push'](_0x51a424['shift']());}catch(_0x5e5bae){_0x51a424['push'](_0x51a424['shift']());}}}(a21_0x20ca,0x96e6c));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a21_0x578a(_0x4672f2,_0x4c1baa){_0x4672f2=_0x4672f2-0xcf;const _0x20caab=a21_0x20ca();let _0x578adf=_0x20caab[_0x4672f2];return _0x578adf;}function a21_0x20ca(){const _0x49131d=['2053653EkzQyl','632056FxCzeV','\x20application\x20member(s)','members-list','18jTgDGo','appCode','read','List\x20application\x20members\x20with\x20their\x20role\x20memberships','16576MLULkh','3983940HQLBBe','14462608JUgLvs','app','614729FAbVlE','1044248TfzgqH','Found\x20','length'];a21_0x20ca=function(){return _0x49131d;};return a21_0x20ca();}import{projectAppMembers}from'../../commands/app/shared.js';import{listRoleUsers}from'../../core/api-client.js';export const appMembersListDefinition={'service':a21_0x212496(0xd9),'command':a21_0x212496(0xd1),'description':a21_0x212496(0xd5),'risk':a21_0x212496(0xd4),'requiresAuth':!![],'requiresAppCode':!![],'structuredErrors':!![],'flags':[APPCODE_FLAG_OPTIONAL],async 'execute'(_0x376a9b){const _0x554706=a21_0x212496,_0x22b14d=projectAppMembers(await listRoleUsers(_0x376a9b[_0x554706(0xd3)]));return{'ok':!![],'data':{'appCode':_0x376a9b[_0x554706(0xd3)],'items':_0x22b14d,'totalCount':_0x22b14d[_0x554706(0xdd)]},'message':_0x554706(0xdc)+_0x22b14d['length']+_0x554706(0xd0)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a22_0x41c6(){const _0x4cb467=['12sMqShu','25289077IEnitz','authRequired','cookie','52fmWCPc','772952RHIquW','6zDxVKQ','181360vfwgQL','51zbUyCe','map','617365QuEeYI','36klOixN','appDesc','platform','4508777OzsvhE','appCode','44958EGdLBu','13864740yvXIMA'];a22_0x41c6=function(){return _0x4cb467;};return a22_0x41c6();}(function(_0x470088,_0x1d466d){const _0x11f2a2=a22_0x1c63,_0x30338a=_0x470088();while(!![]){try{const _0x42e9b6=parseInt(_0x11f2a2(0x1f1))/0x1+parseInt(_0x11f2a2(0x1f7))/0x2*(-parseInt(_0x11f2a2(0x1ef))/0x3)+-parseInt(_0x11f2a2(0x1eb))/0x4*(-parseInt(_0x11f2a2(0x1ee))/0x5)+parseInt(_0x11f2a2(0x1ed))/0x6*(parseInt(_0x11f2a2(0x1f5))/0x7)+parseInt(_0x11f2a2(0x1ec))/0x8*(parseInt(_0x11f2a2(0x1f2))/0x9)+parseInt(_0x11f2a2(0x1f8))/0xa+parseInt(_0x11f2a2(0x1fa))/0xb*(-parseInt(_0x11f2a2(0x1f9))/0xc);if(_0x42e9b6===_0x1d466d)break;else _0x30338a['push'](_0x30338a['shift']());}catch(_0x447730){_0x30338a['push'](_0x30338a['shift']());}}}(a22_0x41c6,0xc95ec));function a22_0x1c63(_0x49fc6b,_0x2ea6cf){_0x49fc6b=_0x49fc6b-0x1e9;const _0x41c6a7=a22_0x41c6();let _0x1c63de=_0x41c6a7[_0x49fc6b];return _0x1c63de;}import{listRemoteApps}from'../../core/api-client.js';import{getCookie}from'../../auth/get-cookie.js';import{CliErrors}from'../../errors.js';import{withActiveCookie}from'../../utils/with-active-cookie.js';function resolveCookie(_0x568df2){const _0x266acb=a22_0x1c63,_0x4ea8c5=_0x568df2[_0x266acb(0x1ea)]||getCookie();if(!_0x4ea8c5)throw CliErrors[_0x266acb(0x1e9)]();return _0x4ea8c5;}export async function listRemoteAppDirectory(_0x509438){const _0x3fd2f5=a22_0x1c63,_0x23d866=await withActiveCookie(resolveCookie(_0x509438),()=>listRemoteApps());return{'items':_0x23d866[_0x3fd2f5(0x1f0)](_0x537756=>({..._0x537756['id']!=null?{'id':_0x537756['id']}:{},'appCode':_0x537756[_0x3fd2f5(0x1f6)],'appName':_0x537756['appName'],..._0x537756[_0x3fd2f5(0x1f3)]!=null?{'appDesc':_0x537756[_0x3fd2f5(0x1f3)]}:{}})),'meta':{'source':_0x3fd2f5(0x1f4)}};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x13ac1b,_0x7267ba){const _0xf4eca2=a23_0x2e05,_0x2f6198=_0x13ac1b();while(!![]){try{const _0x3ed69b=parseInt(_0xf4eca2(0x1d1))/0x1*(parseInt(_0xf4eca2(0x1e2))/0x2)+parseInt(_0xf4eca2(0x1cd))/0x3*(-parseInt(_0xf4eca2(0x1e1))/0x4)+parseInt(_0xf4eca2(0x1ca))/0x5+-parseInt(_0xf4eca2(0x1ed))/0x6+-parseInt(_0xf4eca2(0x1f2))/0x7*(-parseInt(_0xf4eca2(0x1d6))/0x8)+parseInt(_0xf4eca2(0x1cc))/0x9*(parseInt(_0xf4eca2(0x1e9))/0xa)+-parseInt(_0xf4eca2(0x1d4))/0xb*(-parseInt(_0xf4eca2(0x1eb))/0xc);if(_0x3ed69b===_0x7267ba)break;else _0x2f6198['push'](_0x2f6198['shift']());}catch(_0x1bcab7){_0x2f6198['push'](_0x2f6198['shift']());}}}(a23_0x2920,0x9aff4));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';function nullableText(_0x57b195){const _0xa26946=a23_0x2e05,_0x503582=_0x57b195?.[_0xa26946(0x1c2)]();return _0x503582?_0x503582:null;}function a23_0x2920(){const _0x3cf395=['trim','defaultApp','nickname','length','project','displayName','\x20(global)','globalConfig','4357650pvKbGC','PENDING','54WBmWdo','2338623Utouqo','named','has','username','1xObpmo','applyUserList','hasOwnProperty','110EMvsnI','sort','907096qwtVIf','values','roleName','global','appCode','roleType','userList','both','keys','membershipStatus','name','4pjPuIY','872358OXkukK','get','push','roleId','userId','projectConfig','roleKeys','305870OBMYFT','currentApp','220812amHBeP','roles','3605958shGDmi','isFinite','ACTIVE','prototype','add','21tWSVeL','appcode','object','status','apps','isCurrent','call'];a23_0x2920=function(){return _0x3cf395;};return a23_0x2920();}function a23_0x2e05(_0x2c2962,_0x4f9eba){_0x2c2962=_0x2c2962-0x1c2;const _0x2920fb=a23_0x2920();let _0x2e0598=_0x2920fb[_0x2c2962];return _0x2e0598;}export function projectAppMembers(_0x4ca1a1){const _0x1e0f44=a23_0x2e05,_0x146434=new Map(),_0x2be17d=[..._0x4ca1a1]['sort']((_0x5d94b7,_0x26f654)=>_0x5d94b7['id']-_0x26f654['id']),_0x183077=(_0x4342f4,_0x279a07,_0x17a6fb)=>{const _0x32a000=a23_0x2e05;for(const _0x5e71e4 of _0x279a07){const _0x18e835=Number(_0x5e71e4[_0x32a000(0x1e6)]);if(!Number[_0x32a000(0x1ee)](_0x18e835)||_0x18e835<=0x0)continue;let _0x2b7b3d=_0x146434[_0x32a000(0x1e3)](_0x18e835);if(!_0x2b7b3d)_0x2b7b3d={'userId':_0x18e835,'username':nullableText(_0x5e71e4[_0x32a000(0x1d0)]),'displayName':nullableText(_0x5e71e4[_0x32a000(0x1c4)]),'status':_0x17a6fb,'roles':[],'roleKeys':new Set()},_0x146434['set'](_0x18e835,_0x2b7b3d);else{_0x2b7b3d[_0x32a000(0x1d0)]??=nullableText(_0x5e71e4['username']),_0x2b7b3d[_0x32a000(0x1c7)]??=nullableText(_0x5e71e4[_0x32a000(0x1c4)]);if(_0x17a6fb===_0x32a000(0x1ef))_0x2b7b3d[_0x32a000(0x1f5)]='ACTIVE';}const _0x311200=_0x4342f4['id']+':'+_0x17a6fb;if(_0x2b7b3d[_0x32a000(0x1e8)][_0x32a000(0x1cf)](_0x311200))continue;_0x2b7b3d[_0x32a000(0x1e8)][_0x32a000(0x1f1)](_0x311200),_0x2b7b3d[_0x32a000(0x1ec)][_0x32a000(0x1e4)]({'roleId':_0x4342f4['id'],'roleName':nullableText(_0x4342f4[_0x32a000(0x1d8)]),'roleType':nullableText(_0x4342f4[_0x32a000(0x1db)]),'membershipStatus':_0x17a6fb});}};for(const _0x45cf48 of _0x2be17d){_0x183077(_0x45cf48,_0x45cf48[_0x1e0f44(0x1dc)]??[],_0x1e0f44(0x1ef)),_0x183077(_0x45cf48,_0x45cf48[_0x1e0f44(0x1d2)]??[],_0x1e0f44(0x1cb));}return[..._0x146434[_0x1e0f44(0x1d7)]()]['map'](_0x24e05c=>({'userId':_0x24e05c['userId'],'username':_0x24e05c['username'],'displayName':_0x24e05c[_0x1e0f44(0x1c7)],'status':_0x24e05c['status'],'roles':_0x24e05c[_0x1e0f44(0x1ec)]['sort']((_0x1ff26e,_0x32fcd9)=>_0x1ff26e['roleId']-_0x32fcd9[_0x1e0f44(0x1e5)]||(_0x1ff26e[_0x1e0f44(0x1df)]===_0x32fcd9[_0x1e0f44(0x1df)]?0x0:_0x1ff26e['membershipStatus']==='ACTIVE'?-0x1:0x1))}))[_0x1e0f44(0x1d5)]((_0x5bd2f7,_0x108571)=>_0x5bd2f7[_0x1e0f44(0x1e6)]-_0x108571[_0x1e0f44(0x1e6)]);}export function enrichAppListItemsWithMergedSelection(_0x215741,_0xceb9d3){const _0x16df9a=a23_0x2e05;if(!_0xceb9d3)return;const _0x1f1236=_0xceb9d3[_0x16df9a(0x1f6)]&&typeof _0xceb9d3[_0x16df9a(0x1f6)]==='object'?_0xceb9d3[_0x16df9a(0x1f6)]:{},_0x5487a9=Object[_0x16df9a(0x1de)](_0x1f1236)[_0x16df9a(0x1c5)]>0x0;for(const _0x27dff4 of _0x215741){_0x27dff4[_0x16df9a(0x1f7)]=![];}const _0x22d149=_0xceb9d3['appCode']!=null?String(_0xceb9d3[_0x16df9a(0x1da)])[_0x16df9a(0x1c2)]():'';if(_0x5487a9){const _0x55a3cd=_0xceb9d3[_0x16df9a(0x1ea)]??_0xceb9d3[_0x16df9a(0x1c3)];if(_0x55a3cd)for(const _0x383ae8 of _0x215741){_0x383ae8['named']===!![]&&_0x383ae8[_0x16df9a(0x1e0)]===_0x55a3cd&&(_0x383ae8[_0x16df9a(0x1f7)]=!![]);}for(const _0xab4a38 of _0x215741){if(_0xab4a38[_0x16df9a(0x1ce)]!==![])continue;if(_0xceb9d3[_0x16df9a(0x1c3)])continue;_0x22d149&&String(_0xab4a38[_0x16df9a(0x1f3)]??'')[_0x16df9a(0x1c2)]()===_0x22d149&&(_0xab4a38[_0x16df9a(0x1f7)]=!![]);}return;}if(!_0x22d149)return;for(const _0x444fb2 of _0x215741){String(_0x444fb2[_0x16df9a(0x1f3)]??'')[_0x16df9a(0x1c2)]()===_0x22d149&&(_0x444fb2[_0x16df9a(0x1f7)]=!![]);}}export function resolveAppScopeForWrite(_0x36301c,_0x52d46b,_0x5de5a6){const _0x1afbfb=a23_0x2e05;if(_0x52d46b)return _0x1afbfb(0x1d9);const _0x95b49e=_0x5de5a6[_0x1afbfb(0x1e7)][_0x1afbfb(0x1f6)]&&typeof _0x5de5a6[_0x1afbfb(0x1e7)][_0x1afbfb(0x1f6)]==='object'?_0x5de5a6[_0x1afbfb(0x1e7)][_0x1afbfb(0x1f6)]:{},_0x70fbb9=_0x5de5a6[_0x1afbfb(0x1c9)][_0x1afbfb(0x1f6)]&&typeof _0x5de5a6[_0x1afbfb(0x1c9)][_0x1afbfb(0x1f6)]==='object'?_0x5de5a6[_0x1afbfb(0x1c9)][_0x1afbfb(0x1f6)]:{};if(Object[_0x1afbfb(0x1f0)][_0x1afbfb(0x1d3)]['call'](_0x95b49e,_0x36301c))return _0x1afbfb(0x1c6);if(Object['prototype'][_0x1afbfb(0x1d3)]['call'](_0x70fbb9,_0x36301c))return _0x1afbfb(0x1d9);return _0x1afbfb(0x1c6);}export function appDefinedIn(_0x25869f,_0xed9a2d,_0x1601b4){const _0x2ba0bf=a23_0x2e05,_0x51cc68=Object[_0x2ba0bf(0x1f0)]['hasOwnProperty'][_0x2ba0bf(0x1f8)](_0xed9a2d,_0x25869f),_0x469993=Object[_0x2ba0bf(0x1f0)]['hasOwnProperty'][_0x2ba0bf(0x1f8)](_0x1601b4,_0x25869f);if(_0x51cc68&&_0x469993)return _0x2ba0bf(0x1dd);if(_0x469993)return _0x2ba0bf(0x1c6);return _0x2ba0bf(0x1d9);}export function resolveDefaultAppSource(_0x133b70){const _0x380cf5=a23_0x2e05,_0x240446=_0x133b70['projectConfig']['apps']&&typeof _0x133b70['projectConfig'][_0x380cf5(0x1f6)]===_0x380cf5(0x1f4)?_0x133b70[_0x380cf5(0x1e7)]['apps']:{};if(_0x380cf5(0x1c3)in _0x133b70[_0x380cf5(0x1e7)])return _0x380cf5(0x1c6);if(Object['keys'](_0x240446)[_0x380cf5(0x1c5)]>0x0)return _0x380cf5(0x1c6);if(Object[_0x380cf5(0x1de)](_0x133b70[_0x380cf5(0x1e7)])[_0x380cf5(0x1c5)]===0x0&&_0x133b70['globalConfig']['defaultApp'])return _0x380cf5(0x1d9);return null;}export function getConfigPath(_0x25fab6={}){const _0x58ef0c=a23_0x2e05,_0x416dd1=_0x25fab6[_0x58ef0c(0x1d9)]?_0x58ef0c(0x1d9):_0x58ef0c(0x1c6);return resolveWriteConfigPath(_0x416dd1);}export function readConfig(_0x222cf7={}){return readConfigFile(getConfigPath(_0x222cf7));}export function writeConfig(_0x1fd798,_0x979e8={}){writeConfigFile(getConfigPath(_0x979e8),_0x1fd798);}export function scopeLabel(_0x284e31){const _0x4d84bb=a23_0x2e05;return _0x284e31[_0x4d84bb(0x1d9)]?_0x4d84bb(0x1c8):'';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a24_0x5611cf=a24_0x26dc;(function(_0x5e9e88,_0x5f43e6){const _0x2393b6=a24_0x26dc,_0x360763=_0x5e9e88();while(!![]){try{const _0x4d2928=parseInt(_0x2393b6(0x17d))/0x1*(-parseInt(_0x2393b6(0x176))/0x2)+parseInt(_0x2393b6(0x175))/0x3*(-parseInt(_0x2393b6(0x180))/0x4)+parseInt(_0x2393b6(0x182))/0x5*(-parseInt(_0x2393b6(0x18c))/0x6)+-parseInt(_0x2393b6(0x178))/0x7*(parseInt(_0x2393b6(0x17b))/0x8)+-parseInt(_0x2393b6(0x18a))/0x9*(-parseInt(_0x2393b6(0x188))/0xa)+-parseInt(_0x2393b6(0x185))/0xb+parseInt(_0x2393b6(0x17e))/0xc;if(_0x4d2928===_0x5f43e6)break;else _0x360763['push'](_0x360763['shift']());}catch(_0x55fada){_0x360763['push'](_0x360763['shift']());}}}(a24_0x465f,0x46723));import{deleteAppConfig,getAppConfigByKey}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a24_0x26dc(_0x263fb1,_0x87932d){_0x263fb1=_0x263fb1-0x174;const _0x465f88=a24_0x465f();let _0x26dc38=_0x465f88[_0x263fb1];return _0x26dc38;}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=a24_0x5611cf(0x187);export const appConfigDelete={'service':a24_0x5611cf(0x186),'command':a24_0x5611cf(0x17f),'description':a24_0x5611cf(0x179),'risk':a24_0x5611cf(0x17a),'args':[KEY_ARG],'flags':[APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4ff816){readKeyArg(_0x4ff816);},async 'dryRun'(_0x249687){const _0xa47286=a24_0x5611cf,_0x7402b6=readKeyArg(_0x249687),_0x271e7c=await mustGetByKey(_0x249687[_0xa47286(0x17c)],_0x7402b6);return asAppConfigDryRunResult(buildMutationData({'operation':_0xa47286(0x17f),'appCode':_0x249687['appCode'],'key':_0x7402b6,'before':projectAppConfig(_0x271e7c),'after':null,'dryRun':!![]}),{'method':_0xa47286(0x18b),'url':DELETE_PATH});},async 'execute'(_0x50d139){const _0x4df614=a24_0x5611cf,_0x5ab2da=readKeyArg(_0x50d139),_0x1b9389=await mustGetByKey(_0x50d139[_0x4df614(0x17c)],_0x5ab2da);return await withAppConfigApiBoundary(_0x4df614(0x17f),{'appCode':_0x50d139[_0x4df614(0x17c)],'key':_0x5ab2da},()=>deleteAppConfig({'appCode':_0x50d139[_0x4df614(0x17c)],'id':requireAppConfigId(_0x1b9389,_0x5ab2da,_0x50d139[_0x4df614(0x17c)])})),{'ok':!![],'data':buildMutationData({'operation':_0x4df614(0x17f),'appCode':_0x50d139[_0x4df614(0x17c)],'key':_0x5ab2da,'before':projectAppConfig(_0x1b9389),'after':null,'dryRun':![]}),'message':_0x4df614(0x174)+_0x5ab2da};}};async function mustGetByKey(_0x236157,_0x30cb37){const _0x3470dd=a24_0x5611cf,_0x5e6468=await withAppConfigApiBoundary('get',{'appCode':_0x236157,'key':_0x30cb37},()=>getAppConfigByKey(_0x236157,_0x30cb37));if(!_0x5e6468)throw CliErrors[_0x3470dd(0x183)]('App\x20config\x20key\x20not\x20found:\x20'+_0x30cb37,'appCode:\x20'+_0x236157);return _0x5e6468;}function requireAppConfigId(_0x5b5998,_0x5e8eca,_0x34510d){const _0x4ce4f5=a24_0x5611cf;if(typeof _0x5b5998['id']===_0x4ce4f5(0x184)&&Number[_0x4ce4f5(0x181)](_0x5b5998['id'])&&_0x5b5998['id']>0x0)return _0x5b5998['id'];throw CliErrors[_0x4ce4f5(0x189)](_0x4ce4f5(0x177)+_0x5e8eca+',\x20appCode='+_0x34510d);}function a24_0x465f(){const _0x4f7635=['validation','number','189233GLTFoN','app-config','/smartapi/app-config/delete','1420xdJcSi','apiError','29547gmjxnS','POST','5286LocGal','Deleted\x20app\x20config\x20','3BGLcmg','2YqhFyO','App\x20config\x20server\x20id\x20missing\x20for\x20key=','7IPzqSA','Delete\x20one\x20runtime\x20app-config\x20key','high-risk-write','1031144FtFHCX','appCode','576838JMYtzt','14191836XKykNv','delete','1883396jcTSoy','isFinite','945shJJAl'];a24_0x465f=function(){return _0x4f7635;};return a24_0x465f();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a25_0x4d815a=a25_0x53a0;(function(_0xd7b941,_0x14a625){const _0x288457=a25_0x53a0,_0x1712e5=_0xd7b941();while(!![]){try{const _0x4f5f83=-parseInt(_0x288457(0x1a0))/0x1+parseInt(_0x288457(0x19d))/0x2*(-parseInt(_0x288457(0x199))/0x3)+parseInt(_0x288457(0x1a2))/0x4+parseInt(_0x288457(0x19a))/0x5*(parseInt(_0x288457(0x196))/0x6)+parseInt(_0x288457(0x19f))/0x7+parseInt(_0x288457(0x19b))/0x8+-parseInt(_0x288457(0x198))/0x9*(parseInt(_0x288457(0x1a5))/0xa);if(_0x4f5f83===_0x14a625)break;else _0x1712e5['push'](_0x1712e5['shift']());}catch(_0x597956){_0x1712e5['push'](_0x1712e5['shift']());}}}(a25_0x89d3,0x65fd0));function a25_0x53a0(_0x1321a2,_0x3c7ba3){_0x1321a2=_0x1321a2-0x193;const _0x89d321=a25_0x89d3();let _0x53a0a0=_0x89d321[_0x1321a2];return _0x53a0a0;}import{getAppConfigByKey}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{KEY_ARG,projectAppConfig,readKeyArg,REVEAL_FLAG,withAppConfigApiBoundary}from'../../commands/app-config/shared.js';function a25_0x89d3(){const _0x48aed6=['33156tCmJsJ','get','36459cWZGbI','9CbIusZ','415zSjsKM','81448WCTGkk','reveal','481014wjBlQX','appCode','1648878QOrbFG','228730jFNMBG','validation','2946080DFNNcZ','Loaded\x20app\x20config\x20','App\x20config\x20key\x20not\x20found:\x20','180xsJHmi','\x20with\x20value\x20revealed','bool','Inspect\x20one\x20runtime\x20app-config\x20key;\x20value\x20is\x20redacted\x20unless\x20--reveal\x20is\x20used'];a25_0x89d3=function(){return _0x48aed6;};return a25_0x89d3();}export const appConfigGet={'service':'app-config','command':a25_0x4d815a(0x197),'description':a25_0x4d815a(0x195),'risk':'read','args':[KEY_ARG],'flags':[APPCODE_FLAG_OPTIONAL,REVEAL_FLAG],async 'validate'(_0x466ac5){readKeyArg(_0x466ac5);},async 'execute'(_0xe2d7d1){const _0xe9653e=a25_0x4d815a,_0x4cc134=readKeyArg(_0xe2d7d1),_0x48b7bc=await withAppConfigApiBoundary('get',{'appCode':_0xe2d7d1['appCode'],'key':_0x4cc134},()=>getAppConfigByKey(_0xe2d7d1['appCode'],_0x4cc134));if(!_0x48b7bc)throw CliErrors[_0xe9653e(0x1a1)](_0xe9653e(0x1a4)+_0x4cc134,'appCode:\x20'+_0xe2d7d1[_0xe9653e(0x19e)]);const _0x492b6f=projectAppConfig(_0x48b7bc,{'reveal':_0xe2d7d1[_0xe9653e(0x194)](_0xe9653e(0x19c))});return{'ok':!![],'data':{'config':_0x492b6f},'message':_0xe2d7d1[_0xe9653e(0x194)]('reveal')?_0xe9653e(0x1a3)+_0x4cc134+_0xe9653e(0x193):'Loaded\x20app\x20config\x20'+_0x4cc134+'\x20with\x20value\x20redacted'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a26_0x42f5(_0x567aa5,_0x312ac3){_0x567aa5=_0x567aa5-0x15b;const _0x1042eb=a26_0x1042();let _0x42f59b=_0x1042eb[_0x567aa5];return _0x42f59b;}(function(_0x4725c2,_0x405856){const _0x147dc7=a26_0x42f5,_0x55dcb7=_0x4725c2();while(!![]){try{const _0x20f3ce=-parseInt(_0x147dc7(0x162))/0x1*(parseInt(_0x147dc7(0x161))/0x2)+parseInt(_0x147dc7(0x160))/0x3+parseInt(_0x147dc7(0x163))/0x4+parseInt(_0x147dc7(0x15d))/0x5*(-parseInt(_0x147dc7(0x164))/0x6)+parseInt(_0x147dc7(0x15b))/0x7+parseInt(_0x147dc7(0x15f))/0x8*(parseInt(_0x147dc7(0x165))/0x9)+parseInt(_0x147dc7(0x15e))/0xa*(parseInt(_0x147dc7(0x15c))/0xb);if(_0x20f3ce===_0x405856)break;else _0x55dcb7['push'](_0x55dcb7['shift']());}catch(_0x19d779){_0x55dcb7['push'](_0x55dcb7['shift']());}}}(a26_0x1042,0x5f57e));import{appConfigList}from'../../commands/app-config/list.js';import{appConfigGet}from'../../commands/app-config/get.js';import{appConfigSet}from'../../commands/app-config/set.js';function a26_0x1042(){const _0x56bcc6=['326672SuBbRx','1034865cTEtEj','118QZQAQx','7617IDXIyu','127600jPlYRY','3551898HuKbIW','9JMYwgw','3424239RjCCmP','418cWDaJt','5aGBArq','138170pJMmAg'];a26_0x1042=function(){return _0x56bcc6;};return a26_0x1042();}import{appConfigDelete}from'../../commands/app-config/delete.js';export const appConfigDefinitions=[appConfigList,appConfigGet,appConfigSet,appConfigDelete];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a27_0x1097(_0x40d831,_0x267057){_0x40d831=_0x40d831-0x162;const _0x3d0766=a27_0x3d07();let _0x10974d=_0x3d0766[_0x40d831];return _0x10974d;}const a27_0x156672=a27_0x1097;(function(_0x321547,_0x505973){const _0x232dfb=a27_0x1097,_0x58d297=_0x321547();while(!![]){try{const _0x10b28a=-parseInt(_0x232dfb(0x174))/0x1+-parseInt(_0x232dfb(0x16d))/0x2*(parseInt(_0x232dfb(0x169))/0x3)+-parseInt(_0x232dfb(0x168))/0x4*(-parseInt(_0x232dfb(0x175))/0x5)+parseInt(_0x232dfb(0x165))/0x6*(parseInt(_0x232dfb(0x176))/0x7)+-parseInt(_0x232dfb(0x16b))/0x8+-parseInt(_0x232dfb(0x166))/0x9*(parseInt(_0x232dfb(0x173))/0xa)+parseInt(_0x232dfb(0x16e))/0xb;if(_0x10b28a===_0x505973)break;else _0x58d297['push'](_0x58d297['shift']());}catch(_0x26bb9c){_0x58d297['push'](_0x58d297['shift']());}}}(a27_0x3d07,0xb3964));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_0x3d07(){const _0x58b16c=['\x20app\x20config(s)','length','6FPgNwR','81XkwXIM','Filter\x20by\x20exact\x20config\x20key','4YLYbph','9DUUfxl','trim','5891984fiZeTV','str','129992ZpErMI','25946492BxXwqU','read','appCode','map','List\x20runtime\x20app-config\x20key\x20metadata\x20without\x20printing\x20values','708740uWDipm','1122728zpobNH','2395115TAdqdz','4129111CulaMl','string'];a27_0x3d07=function(){return _0x58b16c;};return a27_0x3d07();}export const appConfigList={'service':'app-config','command':'list','description':a27_0x156672(0x172),'risk':a27_0x156672(0x16f),'flags':[APPCODE_FLAG_OPTIONAL,{'name':'key','type':a27_0x156672(0x162),'description':a27_0x156672(0x167)},TAGS_FLAG],async 'validate'(_0x5291c7){const _0x4e1dc3=a27_0x156672,_0x1f3c90=_0x5291c7[_0x4e1dc3(0x16c)]('key')[_0x4e1dc3(0x16a)]();if(_0x1f3c90)validateKey(_0x1f3c90);readOptionalTags(_0x5291c7);},async 'execute'(_0x51fd94){const _0x10c3ae=a27_0x156672,_0x48767d=_0x51fd94[_0x10c3ae(0x16c)]('key')[_0x10c3ae(0x16a)]()||undefined,_0x5665a6=readOptionalTags(_0x51fd94),_0x288560=await withAppConfigApiBoundary('list',{'appCode':_0x51fd94[_0x10c3ae(0x170)]},()=>listAppConfigs(_0x51fd94[_0x10c3ae(0x170)],{'key':_0x48767d,'tags':_0x5665a6})),_0x5d15a8=_0x288560[_0x10c3ae(0x171)](_0x411338=>projectAppConfig(_0x411338));return{'ok':!![],'data':{'appCode':_0x51fd94[_0x10c3ae(0x170)],'count':_0x5d15a8[_0x10c3ae(0x164)],'configs':_0x5d15a8},'message':'Found\x20'+_0x5d15a8[_0x10c3ae(0x164)]+_0x10c3ae(0x163)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a28_0x31a406=a28_0x2947;function a28_0x2947(_0x5cfd39,_0x199e2a){_0x5cfd39=_0x5cfd39-0x71;const _0x141c2a=a28_0x141c();let _0x294766=_0x141c2a[_0x5cfd39];return _0x294766;}(function(_0x557af4,_0x41664d){const _0x8aa174=a28_0x2947,_0x40f0ee=_0x557af4();while(!![]){try{const _0x298038=parseInt(_0x8aa174(0x76))/0x1+parseInt(_0x8aa174(0x8c))/0x2*(-parseInt(_0x8aa174(0x8a))/0x3)+parseInt(_0x8aa174(0x75))/0x4*(-parseInt(_0x8aa174(0x82))/0x5)+parseInt(_0x8aa174(0x84))/0x6+parseInt(_0x8aa174(0x86))/0x7*(-parseInt(_0x8aa174(0x7d))/0x8)+parseInt(_0x8aa174(0x78))/0x9+parseInt(_0x8aa174(0x83))/0xa;if(_0x298038===_0x41664d)break;else _0x40f0ee['push'](_0x40f0ee['shift']());}catch(_0x312d83){_0x40f0ee['push'](_0x40f0ee['shift']());}}}(a28_0x141c,0xb2159));import{createAppConfig,getAppConfigByKey,updateAppConfig}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';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=a28_0x31a406(0x88),UPDATE_PATH=a28_0x31a406(0x71);export const appConfigSet={'service':a28_0x31a406(0x7c),'command':'set','description':a28_0x31a406(0x77),'risk':a28_0x31a406(0x7e),'args':[KEY_ARG,VALUE_ARG],'flags':[APPCODE_FLAG_OPTIONAL,TAGS_FLAG,STDIN_FLAG,FROM_ENV_FLAG,{'name':'file','type':a28_0x31a406(0x73),'description':'Read\x20config\x20value\x20from\x20file'}],async 'validate'(_0x2634fd){readKeyArg(_0x2634fd),readOptionalTags(_0x2634fd),assertSingleValueSource(_0x2634fd);},async 'dryRun'(_0x1b4dcd){const _0x262140=a28_0x31a406,_0x4bdc90=readKeyArg(_0x1b4dcd),_0x4fda2a=readOptionalTags(_0x1b4dcd),_0x2d7aad=assertSingleValueSource(_0x1b4dcd);await assertValueSourceReadable(_0x2d7aad);const _0x33fdad=await withAppConfigApiBoundary(_0x262140(0x80),{'appCode':_0x1b4dcd[_0x262140(0x87)],'key':_0x4bdc90},()=>getAppConfigByKey(_0x1b4dcd[_0x262140(0x87)],_0x4bdc90)),_0xe4029b=_0x33fdad?_0x262140(0x7b):_0x262140(0x7f),_0x5e1a45=_0x33fdad?projectAppConfig(_0x33fdad):null,_0x6155a0=plannedAppConfig({'appCode':_0x1b4dcd[_0x262140(0x87)],'key':_0x4bdc90,'tags':_0x4fda2a??_0x33fdad?.[_0x262140(0x8b)],'hasValue':!![]});return asAppConfigDryRunResult(buildMutationData({'operation':_0xe4029b,'appCode':_0x1b4dcd[_0x262140(0x87)],'key':_0x4bdc90,'before':_0x5e1a45,'after':_0x6155a0,'dryRun':!![]}),{'method':_0x262140(0x7a),'url':_0xe4029b===_0x262140(0x7b)?UPDATE_PATH:CREATE_PATH});},async 'execute'(_0x374f16){const _0x38b344=a28_0x31a406,_0x3aa516=readKeyArg(_0x374f16),_0x3f2372=readOptionalTags(_0x374f16),_0x3ed79f=await withAppConfigApiBoundary(_0x38b344(0x80),{'appCode':_0x374f16[_0x38b344(0x87)],'key':_0x3aa516},()=>getAppConfigByKey(_0x374f16[_0x38b344(0x87)],_0x3aa516)),_0x2f57c5=_0x3ed79f?projectAppConfig(_0x3ed79f):null,_0x4bfdfe=_0x3ed79f?'update':'create',{value:_0x58a876,warnings:_0x2684c5}=await readAppConfigValue(_0x374f16),_0x2d6361={'appCode':_0x374f16[_0x38b344(0x87)],'key':_0x3aa516,'value':_0x58a876,'tags':_0x3f2372??_0x3ed79f?.[_0x38b344(0x8b)]??undefined};await withAppConfigApiBoundary(_0x4bfdfe,{'appCode':_0x374f16['appCode'],'key':_0x3aa516},async()=>{const _0xb91d92=_0x38b344;_0x3ed79f?await updateAppConfig({..._0x2d6361,'id':requireAppConfigId(_0x3ed79f,_0x3aa516,_0x374f16[_0xb91d92(0x87)])}):await createAppConfig(_0x2d6361);});const _0x21f01a=await withAppConfigApiBoundary(_0x38b344(0x80),{'appCode':_0x374f16['appCode'],'key':_0x3aa516},()=>getAppConfigByKey(_0x374f16['appCode'],_0x3aa516)),_0x34e28d=_0x21f01a?projectAppConfig(_0x21f01a):plannedAppConfig({'appCode':_0x374f16[_0x38b344(0x87)],'key':_0x3aa516,'tags':_0x2d6361[_0x38b344(0x8b)],'hasValue':_0x58a876!==''});return{'ok':!![],'data':buildMutationData({'operation':_0x4bfdfe,'appCode':_0x374f16[_0x38b344(0x87)],'key':_0x3aa516,'before':_0x2f57c5,'after':_0x34e28d,'dryRun':![],'warnings':_0x2684c5}),'message':(_0x4bfdfe==='update'?'Updated':_0x38b344(0x74))+_0x38b344(0x89)+_0x3aa516};}};function requireAppConfigId(_0x3d99c2,_0x26dac5,_0x294f0a){const _0x5816f2=a28_0x31a406;if(typeof _0x3d99c2['id']===_0x5816f2(0x79)&&Number['isFinite'](_0x3d99c2['id'])&&_0x3d99c2['id']>0x0)return _0x3d99c2['id'];throw CliErrors[_0x5816f2(0x81)](_0x5816f2(0x72)+_0x26dac5+_0x5816f2(0x85)+_0x294f0a);}function a28_0x141c(){const _0x3d6119=['update','app-config','8Hxqxld','write','create','get','apiError','391920JEMWcD','2794900RjDGmn','2159148YyqzXn',',\x20appCode=','6572153NWVTtV','appCode','/smartapi/app-config/create','\x20app\x20config\x20','3YxsGdX','tags','2346374lIvHBM','/smartapi/app-config/update','App\x20config\x20server\x20id\x20missing\x20for\x20key=','string','Created','16chYIAp','1092701SgaqGc','Create\x20or\x20update\x20one\x20runtime\x20app-config\x20key','12806874CcmAEV','number','POST'];a28_0x141c=function(){return _0x3d6119;};return a28_0x141c();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a29_0x46e815=a29_0xf71a;function a29_0x5eba(){const _0x29f776=['Read\x20config\x20value\x20from\x20stdin','length','reveal','Sensitive\x20config\x20value.\x20Prefer\x20--stdin,\x20--from-env,\x20or\x20--file\x20for\x20secrets.','utf8','Missing\x20app-config\x20value\x20source.','513552kSpbsz','Value\x20was\x20provided\x20as\x20a\x20command\x20argument;\x20prefer\x20--stdin,\x20--from-env,\x20or\x20--file\x20for\x20secrets.','Runtime\x20app-config\x20key','kind','Config\x20tags\x20for\x20filtering/display\x20metadata','push','Use\x20one\x20of:\x20positional\x20<value>,\x20--stdin,\x20--from-env\x20<NAME>,\x20or\x20--file\x20<path>.','Value\x20file\x20is\x20not\x20readable:\x20','data','779962GoONXW','tags','operation','join','boolean','Environment\x20variable\x20is\x20not\x20set:\x20','method','trim','name','file','error','env','from-env','valueRedacted','appCode:\x20','2050MZFkOv','901944LHFhZy','argument','slice','3436110TQnEuQ','Use\x20exactly\x20one\x20of:\x20positional\x20<value>,\x20--stdin,\x20--from-env\x20<NAME>,\x20or\x20--file\x20<path>.','35NwwneZ','dryRun','str','path','23967Duhhaq','url','gmtModified','Reveal\x20the\x20sensitive\x20value\x20for\x20this\x20single\x20key','once','value','string','args','key','gmtCreate','2880285reMkdd','stdin','31856RCcMYR','before','Read\x20config\x20value\x20from\x20the\x20named\x20environment\x20variable','bool','apiError','appCode','value\x20is\x20redacted','end','201rFEXXt','key:\x20','App\x20config\x20tags\x20length\x20cannot\x20exceed\x2032.','validation','flag','hasValue','Failed\x20to\x20','\x20app\x20config.'];a29_0x5eba=function(){return _0x29f776;};return a29_0x5eba();}(function(_0x1bd3a2,_0x5e4efe){const _0x277c1f=a29_0xf71a,_0x3c032e=_0x1bd3a2();while(!![]){try{const _0x5020e0=-parseInt(_0x277c1f(0x16a))/0x1+parseInt(_0x277c1f(0x173))/0x2+parseInt(_0x277c1f(0x1a0))/0x3*(parseInt(_0x277c1f(0x198))/0x4)+-parseInt(_0x277c1f(0x196))/0x5+-parseInt(_0x277c1f(0x186))/0x6+-parseInt(_0x277c1f(0x188))/0x7*(-parseInt(_0x277c1f(0x183))/0x8)+-parseInt(_0x277c1f(0x18c))/0x9*(-parseInt(_0x277c1f(0x182))/0xa);if(_0x5020e0===_0x5e4efe)break;else _0x3c032e['push'](_0x3c032e['shift']());}catch(_0x71cd1f){_0x3c032e['push'](_0x3c032e['shift']());}}}(a29_0x5eba,0x5a8d9));import{access,readFile}from'node:fs/promises';import{CliErrors}from'../../errors.js';export const KEY_ARG={'name':'key','description':a29_0x46e815(0x16c),'required':!![]};export const VALUE_ARG={'name':a29_0x46e815(0x191),'description':a29_0x46e815(0x167),'required':![]};export const TAGS_FLAG={'name':a29_0x46e815(0x174),'type':a29_0x46e815(0x192),'description':a29_0x46e815(0x16e)};export const STDIN_FLAG={'name':a29_0x46e815(0x197),'type':a29_0x46e815(0x177),'description':a29_0x46e815(0x164),'default':![]};export const FROM_ENV_FLAG={'name':a29_0x46e815(0x17f),'type':a29_0x46e815(0x192),'description':a29_0x46e815(0x19a)};export const REVEAL_FLAG={'name':a29_0x46e815(0x166),'type':a29_0x46e815(0x177),'description':a29_0x46e815(0x18f),'default':![]};export function readKeyArg(_0x1879a6){const _0x5d59a7=a29_0x46e815,_0x5b563f=_0x1879a6[_0x5d59a7(0x193)][0x0]?.[_0x5d59a7(0x17a)]()??'';return validateKey(_0x5b563f),_0x5b563f;}export function readOptionalTags(_0x2b8bf1){const _0x2ffe86=a29_0x46e815,_0x2e1d95=_0x2b8bf1[_0x2ffe86(0x18a)](_0x2ffe86(0x174))[_0x2ffe86(0x17a)]();if(!_0x2e1d95)return undefined;if(_0x2e1d95[_0x2ffe86(0x165)]>0x20)throw CliErrors['validation'](_0x2ffe86(0x1a2));return _0x2e1d95;}export function validateKey(_0xf2b480){const _0x323d8b=a29_0x46e815;if(!_0xf2b480)throw CliErrors[_0x323d8b(0x1a3)]('Missing\x20app-config\x20key.');if(_0xf2b480[_0x323d8b(0x165)]>0x100)throw CliErrors['validation']('App\x20config\x20key\x20length\x20cannot\x20exceed\x20256.');}export function projectAppConfig(_0x59a4ed,_0x11daf0){const _0x16f15e=a29_0x46e815,_0x441dc2=_0x59a4ed[_0x16f15e(0x191)]!==undefined&&_0x59a4ed[_0x16f15e(0x191)]!==null&&_0x59a4ed[_0x16f15e(0x191)]!=='',_0x2df14d={'appCode':_0x59a4ed['appCode'],'key':_0x59a4ed[_0x16f15e(0x194)],'tags':_0x59a4ed[_0x16f15e(0x174)]??undefined,'hasValue':_0x441dc2,'valueRedacted':_0x441dc2&&!_0x11daf0?.[_0x16f15e(0x166)],'gmtCreate':_0x59a4ed[_0x16f15e(0x195)],'gmtModified':_0x59a4ed[_0x16f15e(0x18e)]};return _0x11daf0?.[_0x16f15e(0x166)]&&(_0x2df14d['value']=_0x59a4ed[_0x16f15e(0x191)]??'',_0x2df14d[_0x16f15e(0x180)]=![]),_0x2df14d;}export function plannedAppConfig(_0x532600){const _0x5e3d9e=a29_0x46e815,_0x38b8d7=_0x532600[_0x5e3d9e(0x161)]??!![];return{'appCode':_0x532600['appCode'],'key':_0x532600[_0x5e3d9e(0x194)],'tags':_0x532600[_0x5e3d9e(0x174)]??undefined,'hasValue':_0x38b8d7,'valueRedacted':_0x38b8d7};}export function buildMutationData(_0x53169e){const _0x5f096b=a29_0x46e815;return{'operation':_0x53169e[_0x5f096b(0x175)],'selector':{'appCode':_0x53169e[_0x5f096b(0x19d)],'key':_0x53169e[_0x5f096b(0x194)]},'before':_0x53169e[_0x5f096b(0x199)],'after':_0x53169e['after'],'dryRun':_0x53169e[_0x5f096b(0x189)],'warnings':_0x53169e['warnings']??[]};}export async function withAppConfigApiBoundary(_0x1544dc,_0x1badb7,_0x4dac0e){const _0x428166=a29_0x46e815;try{return await _0x4dac0e();}catch{const _0x4fa6ff=[_0x428166(0x181)+_0x1badb7[_0x428166(0x19d)]];if(_0x1badb7[_0x428166(0x194)])_0x4fa6ff['push'](_0x428166(0x1a1)+_0x1badb7['key']);_0x4fa6ff[_0x428166(0x16f)](_0x428166(0x19e));throw CliErrors[_0x428166(0x19c)](_0x428166(0x162)+_0x1544dc+_0x428166(0x163),_0x4fa6ff['join'](';\x20')+'.');}}export function asAppConfigDryRunResult(_0x19935d,_0x4f47e4){const _0xdde049=a29_0x46e815;return Object['defineProperties'](_0x19935d,{'method':{'value':_0x4f47e4[_0xdde049(0x179)],'enumerable':![]},'url':{'value':_0x4f47e4[_0xdde049(0x18d)],'enumerable':![]}});}function a29_0xf71a(_0x174f34,_0x17cd1f){_0x174f34=_0x174f34-0x160;const _0x5ebaa0=a29_0x5eba();let _0xf71a01=_0x5ebaa0[_0x174f34];return _0xf71a01;}export function assertSingleValueSource(_0x568995){const _0x33a6f3=a29_0x46e815,_0x1f3272=[];_0x568995[_0x33a6f3(0x193)]['length']>0x1&&_0x1f3272[_0x33a6f3(0x16f)]({'kind':'argument','value':_0x568995['args'][_0x33a6f3(0x185)](0x1)[_0x33a6f3(0x176)]('\x20')});const _0x582e63=_0x568995[_0x33a6f3(0x160)](_0x33a6f3(0x191));_0x582e63!==undefined&&_0x582e63!==null&&_0x1f3272[_0x33a6f3(0x16f)]({'kind':_0x33a6f3(0x184),'value':String(_0x582e63)});_0x568995[_0x33a6f3(0x19b)](_0x33a6f3(0x197))&&_0x1f3272[_0x33a6f3(0x16f)]({'kind':'stdin'});const _0x32d209=_0x568995[_0x33a6f3(0x18a)]('from-env')['trim']();_0x32d209&&_0x1f3272[_0x33a6f3(0x16f)]({'kind':'env','name':_0x32d209});const _0x2b4119=_0x568995[_0x33a6f3(0x18a)](_0x33a6f3(0x17c))[_0x33a6f3(0x17a)]();_0x2b4119&&_0x1f3272[_0x33a6f3(0x16f)]({'kind':_0x33a6f3(0x17c),'path':_0x2b4119});if(_0x1f3272[_0x33a6f3(0x165)]===0x0)throw CliErrors[_0x33a6f3(0x1a3)](_0x33a6f3(0x169),_0x33a6f3(0x170));if(_0x1f3272[_0x33a6f3(0x165)]>0x1)throw CliErrors[_0x33a6f3(0x1a3)]('App\x20config\x20value\x20source\x20is\x20ambiguous.',_0x33a6f3(0x187));return _0x1f3272[0x0];}export async function assertValueSourceReadable(_0x713dc4){const _0x2182dc=a29_0x46e815;if(_0x713dc4[_0x2182dc(0x16d)]===_0x2182dc(0x17e)&&!(_0x713dc4[_0x2182dc(0x17b)]in process.env))throw CliErrors[_0x2182dc(0x1a3)](_0x2182dc(0x178)+_0x713dc4[_0x2182dc(0x17b)]);if(_0x713dc4['kind']===_0x2182dc(0x17c))try{await access(_0x713dc4[_0x2182dc(0x18b)]);}catch{throw CliErrors[_0x2182dc(0x1a3)](_0x2182dc(0x171)+_0x713dc4[_0x2182dc(0x18b)]);}}export async function readAppConfigValue(_0x4f241c){const _0x546ae2=a29_0x46e815,_0x203c7b=assertSingleValueSource(_0x4f241c),_0x2c3715=[];if(_0x203c7b[_0x546ae2(0x16d)]===_0x546ae2(0x184))return _0x2c3715[_0x546ae2(0x16f)](_0x546ae2(0x16b)),{'value':_0x203c7b[_0x546ae2(0x191)]??'','source':_0x203c7b['kind'],'warnings':_0x2c3715};if(_0x203c7b['kind']==='stdin')return{'value':await readStdin(),'source':_0x203c7b[_0x546ae2(0x16d)],'warnings':_0x2c3715};if(_0x203c7b[_0x546ae2(0x16d)]===_0x546ae2(0x17e)){if(!(_0x203c7b[_0x546ae2(0x17b)]in process.env))throw CliErrors[_0x546ae2(0x1a3)](_0x546ae2(0x178)+_0x203c7b['name']);return{'value':process.env[_0x203c7b.name]??'','source':_0x203c7b['kind'],'warnings':_0x2c3715};}return{'value':await readFile(_0x203c7b['path'],_0x546ae2(0x168)),'source':_0x203c7b[_0x546ae2(0x16d)],'warnings':_0x2c3715};}function readStdin(){return new Promise((_0x4171fd,_0x543860)=>{const _0xf1b3a=a29_0xf71a;let _0x1d5473='';process['stdin']['setEncoding'](_0xf1b3a(0x168)),process[_0xf1b3a(0x197)]['on'](_0xf1b3a(0x172),_0x2be7cf=>{_0x1d5473+=_0x2be7cf;}),process[_0xf1b3a(0x197)][_0xf1b3a(0x190)](_0xf1b3a(0x19f),()=>_0x4171fd(_0x1d5473)),process[_0xf1b3a(0x197)][_0xf1b3a(0x190)](_0xf1b3a(0x17d),_0x543860);});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a30_0x54f943=a30_0x3d90;(function(_0x4a2f81,_0x2d0833){const _0x4719e1=a30_0x3d90,_0x29efb5=_0x4a2f81();while(!![]){try{const _0x8554c9=-parseInt(_0x4719e1(0x98))/0x1*(-parseInt(_0x4719e1(0xa0))/0x2)+parseInt(_0x4719e1(0xa7))/0x3+-parseInt(_0x4719e1(0xa3))/0x4*(parseInt(_0x4719e1(0x9a))/0x5)+-parseInt(_0x4719e1(0x95))/0x6*(-parseInt(_0x4719e1(0x9b))/0x7)+parseInt(_0x4719e1(0xa5))/0x8*(parseInt(_0x4719e1(0x93))/0x9)+-parseInt(_0x4719e1(0x94))/0xa+-parseInt(_0x4719e1(0xa2))/0xb;if(_0x8554c9===_0x2d0833)break;else _0x29efb5['push'](_0x29efb5['shift']());}catch(_0x1500aa){_0x29efb5['push'](_0x29efb5['shift']());}}}(a30_0x5a44,0x97c7f));import{unlinkSync,existsSync}from'node:fs';function a30_0x3d90(_0x2a38a6,_0x48fb3e){_0x2a38a6=_0x2a38a6-0x91;const _0x5a4497=a30_0x5a44();let _0x3d90ce=_0x5a4497[_0x2a38a6];return _0x3d90ce;}function a30_0x5a44(){const _0x47c624=['5HJuqPg','13643gkaiEq','logout','boolean','log','nonInteractive','2yRnDQd','Clear\x20login\x20session','12767007hYnyCe','2168864FZFVSs','login','1375496aNJlKc','../../auth/auth-server-ui.js','2263575vpswQY','bool','yes','54rWJjgP','6136390KszkqV','2346jPNrxC','write','auth','389981IErwtt','Login\x20via\x20browser'];a30_0x5a44=function(){return _0x47c624;};return a30_0x5a44();}import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a30_0x54f943(0x97),'command':a30_0x54f943(0xa4),'description':a30_0x54f943(0x99),'risk':a30_0x54f943(0x96),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a30_0x54f943(0x92),'type':a30_0x54f943(0x9d),'description':'Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','default':![]}],async 'execute'(_0x1ed65a){const _0x47889b=a30_0x54f943,{runAuthServer:_0x169a64}=await import(_0x47889b(0xa6));return await _0x169a64({'autoYes':_0x1ed65a[_0x47889b(0x91)](_0x47889b(0x92)),'nonInteractive':_0x1ed65a[_0x47889b(0x9f)]}),{'ok':!![]};}},{'service':a30_0x54f943(0x97),'command':a30_0x54f943(0x9c),'description':a30_0x54f943(0xa1),'risk':a30_0x54f943(0x96),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x2c9ffc){const _0x5dfc5f=a30_0x54f943;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x5dfc5f(0x9e)]('✓\x20Logged\x20out')):console[_0x5dfc5f(0x9e)]('!\x20Not\x20logged\x20in'),{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a31_0xc5e9df=a31_0x5007;(function(_0x5b68b5,_0x16f99f){const _0x34d099=a31_0x5007,_0x7e912=_0x5b68b5();while(!![]){try{const _0x43964d=-parseInt(_0x34d099(0x18c))/0x1+parseInt(_0x34d099(0x1c1))/0x2*(-parseInt(_0x34d099(0x1b2))/0x3)+parseInt(_0x34d099(0x1c7))/0x4*(parseInt(_0x34d099(0x1a2))/0x5)+parseInt(_0x34d099(0x1cf))/0x6*(-parseInt(_0x34d099(0x171))/0x7)+-parseInt(_0x34d099(0x1b6))/0x8*(parseInt(_0x34d099(0x193))/0x9)+-parseInt(_0x34d099(0x1a6))/0xa*(parseInt(_0x34d099(0x1cc))/0xb)+parseInt(_0x34d099(0x1a4))/0xc*(parseInt(_0x34d099(0x1b7))/0xd);if(_0x43964d===_0x16f99f)break;else _0x7e912['push'](_0x7e912['shift']());}catch(_0x106768){_0x7e912['push'](_0x7e912['shift']());}}}(a31_0x439b,0x83c18));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';function a31_0x5007(_0x616c5f,_0x2e656f){_0x616c5f=_0x616c5f-0x168;const _0x439b1d=a31_0x439b();let _0x5007f3=_0x439b1d[_0x616c5f];return _0x5007f3;}import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';function a31_0x439b(){const _0x4a90d0=['str','datasetId','Script\x20description','\x20function:\x20','\x0a\x20*\x0a\x20*\x20[脚本类型]\x20ENDPOINT\x0a\x20*\x20[脚本名称]\x20','string','21fanbyy','stdin','nonInteractive','\x0a\x20*\x20@param\x20{Object}\x20context\x20平台注入的执行上下文\x0a\x20*\x20@returns\x20{Promise<Object>}\x20','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','Scaffold\x20a\x20new\x20Backend\x20Function\x20script\x20from\x20template','.js\x0a','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','Invalid\x20dataset\x20selection.','\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','ENDPOINT','validation','utf8','entries','map','question','after','operation-type','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','alias','/data/backend-function\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','tableName','scriptsRootDir','Script\x20type','code','\x22,\x20params\x20})\x0a','701007MssBMy','name','Select\x20operation\x20type:','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','Available\x20aliases:\x20','trim','9FEptZe','/data/dataset/','description','\x0a\x20*\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[脚本名称]\x20','function-node','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/','No\x20datasets\x20found\x20for\x20this\x20app.','#api-list\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/','type','/**\x0a\x20*\x20','create','before','当前响应结果','.js','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','88295DOJJgK','datasetcode','62052CBWhzN','\x22\x20not\x20found\x20for\x20dataset\x20','4670sYnMFA','length','Select\x20dataset:','UNKNOWN','operationType','/HOOK/','appCode','\x0a\x20*\x20[参数字段]\x20按实际输入为\x20params.<字段名>\x20补充\x20JSDoc\x20参数标签;无字段时仅保留根参数\x0a\x20*\x20[异常说明]\x20无;显式抛出异常时补充异常类型与触发条件\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20','join','COMMON','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.',']\x20(','30KewpGt','apiDir','Alias\x20\x22','isInteger','5048504GbjytH','7579FiaqLP','HOOK','datasetCode','No\x20operation\x20types\x20found\x20for\x20dataset\x20','Function\x20name\x20(valid\x20JS\x20identifier)','includes','\x0a\x20*\x20[平台配置]\x20','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','修改后的请求参数','\x20*\x20[依赖数据集]\x20无(如有依赖,DB_TABLE\x20填物理表名;METADATA\x20填数据集编码与用途)\x0a\x20*\x20[调用\x20BF]\x20无(如有调用,填写脚本名称与用途)\x0a\x20*\x20[执行\x20SQL]\x20无(如有执行,填写\x20SQL\x20名称与用途)\x0a\x20*\x20[副作用]\x20无(如有通知或外部调用,说明影响与失败策略)','15796VbQmFV','HOOK\x20requires\x20alias/operation/node\x20options.','Dataset\x20not\x20found\x20for\x20code\x20\x22','Operation\x20type\x20\x22','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','\x22\x20not\x20found.\x20','8ucRoHe','find','No\x20api.ts\x20found.\x20Run\x20`','stderr','functionNode','4796iBXZWS','/COMMON/','write','1791354JLBqez','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','Available:\x20','/ENDPOINT/','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','Invalid\x20function\x20name\x20\x22'];a31_0x439b=function(){return _0x4a90d0;};return a31_0x439b();}import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{DEFAULT_BFF_SCRIPT_DESCRIPTION,isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{getAppBaseUrl}from'../../constant/domain.js';export const bffCreate={'service':'bff','command':a31_0xc5e9df(0x19d),'description':a31_0xc5e9df(0x176),'risk':'read','flags':[{'name':a31_0xc5e9df(0x19b),'type':'string','required':!![],'enum':[a31_0xc5e9df(0x1af),a31_0xc5e9df(0x17b),a31_0xc5e9df(0x1b8)],'description':a31_0xc5e9df(0x189)},{'name':'name','type':'string','required':!![],'description':a31_0xc5e9df(0x1bb)},{'name':a31_0xc5e9df(0x195),'type':a31_0xc5e9df(0x170),'description':a31_0xc5e9df(0x16d)},{'name':a31_0xc5e9df(0x184),'type':a31_0xc5e9df(0x170),'description':a31_0xc5e9df(0x1be)},{'name':a31_0xc5e9df(0x1a3),'type':'string','description':'Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)'},{'name':'operation-type','type':a31_0xc5e9df(0x170),'description':'Operation\x20type\x20(HOOK\x20only)'},{'name':'function-node','type':a31_0xc5e9df(0x170),'description':'Trigger\x20node\x20(HOOK\x20only)','enum':[a31_0xc5e9df(0x19e),'after']}],async 'validate'(_0x734ec4){const _0x34d72a=a31_0xc5e9df,_0x460735=_0x734ec4[_0x34d72a(0x16b)](_0x34d72a(0x18d));if(!isValidBffFunctionName(_0x460735))throw CliErrors[_0x34d72a(0x17c)](_0x34d72a(0x16a)+_0x460735+_0x34d72a(0x1d0));},async 'execute'(_0x406e2c){const _0x3ff7c4=a31_0xc5e9df,_0xbd2826=loadBffProjectConfig(_0x406e2c[_0x3ff7c4(0x1ac)]),_0x33fd89=_0x406e2c[_0x3ff7c4(0x16b)](_0x3ff7c4(0x19b)),_0x454edc=_0x406e2c['str'](_0x3ff7c4(0x18d)),_0x201206=_0x406e2c[_0x3ff7c4(0x16b)](_0x3ff7c4(0x195))||undefined,_0x1a8f74=_0x33fd89===_0x3ff7c4(0x1b8)?await resolveHookOptions(_0xbd2826,_0x406e2c):undefined,_0x328690=buildFilePath(_0xbd2826,_0x33fd89,_0x454edc,_0x1a8f74);if(await fileExists(_0x328690))throw CliErrors[_0x3ff7c4(0x17c)]('File\x20already\x20exists:\x20'+_0x328690);await mkdir(dirname(_0x328690),{'recursive':!![]});const _0x31fc78=generateTemplate(_0x33fd89,_0x454edc,_0x406e2c[_0x3ff7c4(0x1ac)],_0x201206,_0x1a8f74);await writeFile(_0x328690,_0x31fc78,_0x3ff7c4(0x17d));const _0x101a61={'type':_0x33fd89,'name':_0x454edc,'path':_0x328690};if(_0x201206)_0x101a61['description']=_0x201206;if(_0x1a8f74){if(_0x1a8f74['alias'])_0x101a61[_0x3ff7c4(0x184)]=_0x1a8f74['alias'];_0x101a61['datasetCode']=_0x1a8f74[_0x3ff7c4(0x1b9)],_0x101a61['operationType']=_0x1a8f74[_0x3ff7c4(0x1aa)],_0x101a61['functionNode']=_0x1a8f74[_0x3ff7c4(0x1cb)];}return{'ok':!![],'data':_0x101a61,'message':'Created\x20'+_0x33fd89+_0x3ff7c4(0x16e)+_0x454edc};}};async function resolveHookOptions(_0x522aae,_0x34fb87){const _0x5e65ca=a31_0xc5e9df,_0x52f774=loadAliasMap(_0x34fb87[_0x5e65ca(0x1b3)],undefined,resolveApiFilePath(_0x34fb87[_0x5e65ca(0x1b3)],_0x34fb87[_0x5e65ca(0x1ac)])),_0x238d02=_0x52f774[_0x5e65ca(0x1a7)]>0x0;let _0x280de7,_0x3359b7,_0x52054f;const _0x48e061=_0x34fb87[_0x5e65ca(0x16b)](_0x5e65ca(0x184)),_0x31f08d=_0x34fb87['str'](_0x5e65ca(0x1a3));if(_0x48e061){const _0x23b86e=resolveAlias(_0x34fb87['apiDir'],_0x48e061,undefined,resolveApiFilePath(_0x34fb87[_0x5e65ca(0x1b3)],_0x34fb87[_0x5e65ca(0x1ac)]));if(!_0x23b86e){const _0xfdeda6=_0x238d02?_0x5e65ca(0x191)+_0x52f774[_0x5e65ca(0x17f)](_0xfde0cf=>_0xfde0cf['alias'])[_0x5e65ca(0x1ae)](',\x20'):_0x5e65ca(0x1c9)+CLI_BIN_NAME+_0x5e65ca(0x178);throw CliErrors[_0x5e65ca(0x17c)](_0x5e65ca(0x1b4)+_0x48e061+_0x5e65ca(0x1c6)+_0xfdeda6);}_0x280de7=_0x48e061,_0x3359b7=_0x23b86e;}else{if(_0x31f08d){_0x3359b7=_0x31f08d;const _0x472001=_0x52f774[_0x5e65ca(0x1c8)](_0x36561f=>_0x36561f[_0x5e65ca(0x1b9)]===_0x31f08d);_0x280de7=_0x472001?.['alias'];}else{if(_0x34fb87['nonInteractive'])throw CliErrors[_0x5e65ca(0x17c)](_0x5e65ca(0x1c5));else{if(_0x238d02){const _0x1e8252=_0x52f774[_0x5e65ca(0x17f)](_0x167b72=>_0x167b72[_0x5e65ca(0x184)]+'\x20('+_0x167b72[_0x5e65ca(0x187)]+')'),_0xbe5758=await promptSelect(_0x5e65ca(0x1a8),_0x1e8252),_0x218e9c=_0x52f774[_0xbe5758];if(!_0x218e9c)throw CliErrors[_0x5e65ca(0x17c)](_0x5e65ca(0x179));_0x280de7=_0x218e9c[_0x5e65ca(0x184)],_0x3359b7=_0x218e9c['datasetCode'];}else{const _0x1b17de=await listDatasets(_0x34fb87[_0x5e65ca(0x1ac)]);if(_0x1b17de['length']===0x0)throw CliErrors[_0x5e65ca(0x17c)](_0x5e65ca(0x199));const _0x2d482e=_0x1b17de[_0x5e65ca(0x17f)](_0x55492c=>_0x55492c[_0x5e65ca(0x18d)]+'\x20['+(_0x55492c['source']??_0x5e65ca(0x1a9))+_0x5e65ca(0x1b1)+_0x55492c[_0x5e65ca(0x18a)]+')'),_0x2eaba4=await promptSelect(_0x5e65ca(0x1a8),_0x2d482e),_0x37af5d=_0x1b17de[_0x2eaba4];if(!_0x37af5d)throw CliErrors[_0x5e65ca(0x17c)](_0x5e65ca(0x179));_0x3359b7=_0x37af5d[_0x5e65ca(0x18a)],_0x280de7=undefined;}}}}const _0x444056=await listDatasets(_0x34fb87[_0x5e65ca(0x1ac)]),_0x2e49d6=_0x444056[_0x5e65ca(0x1c8)](_0x45d4f5=>_0x45d4f5[_0x5e65ca(0x18a)]===_0x3359b7);if(!_0x2e49d6)throw CliErrors[_0x5e65ca(0x17c)](_0x5e65ca(0x1c3)+_0x3359b7+'\x22.\x20'+(_0x280de7?_0x5e65ca(0x183)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));_0x52054f=_0x2e49d6['id'];const _0x3f93ad=_0x280de7??_0x3359b7,_0x488640=await listBffDatasetOperations(_0x34fb87[_0x5e65ca(0x1ac)],_0x52054f),_0x174815=_0x488640?Object['keys'](_0x488640):[];if(_0x174815[_0x5e65ca(0x1a7)]===0x0)throw CliErrors['validation'](_0x5e65ca(0x1ba)+_0x3f93ad+'.');let _0x308a5a;const _0xc0694f=_0x34fb87[_0x5e65ca(0x16b)](_0x5e65ca(0x182));if(_0xc0694f){if(!_0x174815[_0x5e65ca(0x1bc)](_0xc0694f))throw CliErrors[_0x5e65ca(0x17c)](_0x5e65ca(0x1c4)+_0xc0694f+_0x5e65ca(0x1a5)+_0x3f93ad+'.\x20'+(_0x5e65ca(0x1d1)+_0x174815[_0x5e65ca(0x1ae)](',\x20')));_0x308a5a=_0xc0694f;}else{if(_0x34fb87[_0x5e65ca(0x173)])throw CliErrors[_0x5e65ca(0x17c)](_0x5e65ca(0x1a1));const _0x2c5133=await promptSelect(_0x5e65ca(0x18e),_0x174815);_0x308a5a=_0x174815[_0x2c5133]??_0x174815[0x0];}let _0x5497ef=normalizeHookFunctionNode(_0x34fb87[_0x5e65ca(0x16b)](_0x5e65ca(0x197)));if(!_0x5497ef){if(_0x34fb87['str'](_0x5e65ca(0x197)))throw CliErrors[_0x5e65ca(0x17c)](_0x5e65ca(0x1b0));if(_0x34fb87[_0x5e65ca(0x173)])throw CliErrors[_0x5e65ca(0x17c)](_0x5e65ca(0x175));const _0x17aac2=await promptSelect('Select\x20trigger\x20node:',['before',_0x5e65ca(0x181)]);_0x5497ef=[_0x5e65ca(0x19e),_0x5e65ca(0x181)][_0x17aac2]??_0x5e65ca(0x19e);}return{'alias':_0x280de7,'datasetCode':_0x3359b7,'datasetId':_0x52054f,'operationType':_0x308a5a,'functionNode':_0x5497ef};}async function promptSelect(_0x147dbf,_0x2a6cc6){const _0x2f2557=a31_0xc5e9df;if(_0x2a6cc6[_0x2f2557(0x1a7)]===0x1)return 0x0;for(const [_0x377c9b,_0x1fbca7]of _0x2a6cc6[_0x2f2557(0x17e)]()){process[_0x2f2557(0x1ca)][_0x2f2557(0x1ce)]('\x20\x20'+(_0x377c9b+0x1)+'.\x20'+_0x1fbca7+'\x0a');}const _0x5478c0=createInterface({'input':process[_0x2f2557(0x172)],'output':process['stderr']});while(!![]){const _0x2f7e22=await new Promise(_0x1e1300=>{const _0x4f5499=_0x2f2557;_0x5478c0[_0x4f5499(0x180)](_0x147dbf+'\x20',_0x1e1300);}),_0xba3d6f=Number['parseInt'](_0x2f7e22[_0x2f2557(0x192)](),0xa);if(Number[_0x2f2557(0x1b5)](_0xba3d6f)&&_0xba3d6f>=0x1&&_0xba3d6f<=_0x2a6cc6[_0x2f2557(0x1a7)])return _0x5478c0['close'](),_0xba3d6f-0x1;process[_0x2f2557(0x1ca)][_0x2f2557(0x1ce)](_0x2f2557(0x186)+_0x2a6cc6[_0x2f2557(0x1a7)]+'.\x0a');}}function buildFilePath(_0x5b6c70,_0x5bc081,_0x5abc5e,_0x2c2a49){const _0x323a7b=a31_0xc5e9df;if(_0x5bc081===_0x323a7b(0x1b8)){if(!_0x2c2a49)throw CliErrors[_0x323a7b(0x17c)](_0x323a7b(0x1c2));const _0x19580d=_0x2c2a49[_0x323a7b(0x184)]??_0x2c2a49[_0x323a7b(0x1b9)];return join(_0x5b6c70['scriptsRootDir'],'HOOK',_0x19580d,_0x2c2a49[_0x323a7b(0x1aa)],_0x2c2a49[_0x323a7b(0x1cb)],_0x5abc5e+_0x323a7b(0x1a0));}return join(_0x5b6c70[_0x323a7b(0x188)],_0x5bc081,_0x5abc5e+_0x323a7b(0x1a0));}export function generateTemplate(_0x332c5c,_0xa5a985,_0x510104,_0x23f39a,_0x4621ee){const _0x2eb562=a31_0xc5e9df,_0x3a43bf=_0x23f39a?.[_0x2eb562(0x192)]()||DEFAULT_BFF_SCRIPT_DESCRIPTION,_0x33e932=getAppBaseUrl(_0x510104),_0x49909b=_0x2eb562(0x1c0);if(_0x332c5c===_0x2eb562(0x1af))return _0x2eb562(0x19c)+_0x3a43bf+_0x2eb562(0x196)+_0xa5a985+_0x2eb562(0x1bd)+_0x33e932+_0x2eb562(0x185)+_0x510104+_0x2eb562(0x1cd)+_0xa5a985+'.js\x0a\x20*\x20[调用方式]\x20context.client.bff.execute({\x20scriptName:\x20\x22'+_0xa5a985+_0x2eb562(0x18b)+_0x49909b+'\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'+_0xa5a985+_0x2eb562(0x169);if(_0x332c5c===_0x2eb562(0x17b))return _0x2eb562(0x19c)+_0x3a43bf+_0x2eb562(0x16f)+_0xa5a985+_0x2eb562(0x198)+_0x510104+'/'+_0xa5a985+_0x2eb562(0x1bd)+_0x33e932+_0x2eb562(0x185)+_0x510104+_0x2eb562(0x168)+_0xa5a985+_0x2eb562(0x177)+_0x49909b+'\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'+_0xa5a985+_0x2eb562(0x169);if(!_0x4621ee)throw CliErrors[_0x2eb562(0x17c)](_0x2eb562(0x190));const _0x28c4c9=_0x4621ee['alias']??_0x4621ee['datasetCode'],_0x3bffc6=_0x4621ee[_0x2eb562(0x1cb)]===_0x2eb562(0x19e)?'当前请求参数':_0x2eb562(0x19f),_0x6c1c37=_0x4621ee[_0x2eb562(0x1cb)]==='before'?_0x2eb562(0x1bf):'修改后的响应结果';return'/**\x0a\x20*\x20'+_0x3a43bf+'\x0a\x20*\x0a\x20*\x20[脚本类型]\x20HOOK\x0a\x20*\x20[脚本名称]\x20'+_0xa5a985+_0x2eb562(0x18f)+_0x510104+'/'+_0x4621ee[_0x2eb562(0x1b9)]+'/'+_0x4621ee[_0x2eb562(0x1aa)]+_0x2eb562(0x1bd)+_0x33e932+_0x2eb562(0x194)+_0x4621ee[_0x2eb562(0x16c)]+_0x2eb562(0x19a)+_0x510104+_0x2eb562(0x1ab)+_0x28c4c9+'/'+_0x4621ee[_0x2eb562(0x1aa)]+'/'+_0x4621ee[_0x2eb562(0x1cb)]+'/'+_0xa5a985+'.js\x0a\x20*\x20[触发节点]\x20'+_0x4621ee[_0x2eb562(0x1cb)]+'\x0a'+_0x49909b+_0x2eb562(0x1ad)+_0x3bffc6+_0x2eb562(0x174)+_0x6c1c37+_0x2eb562(0x17a)+_0xa5a985+_0x2eb562(0x169);}
|
|
1
|
+
const a31_0x5d40a0=a31_0x29e0;(function(_0x9ec0a0,_0x155b22){const _0x2412c5=a31_0x29e0,_0x375895=_0x9ec0a0();while(!![]){try{const _0x142554=-parseInt(_0x2412c5(0x1d4))/0x1+parseInt(_0x2412c5(0x1e5))/0x2*(parseInt(_0x2412c5(0x1d0))/0x3)+parseInt(_0x2412c5(0x1bb))/0x4*(parseInt(_0x2412c5(0x1d1))/0x5)+parseInt(_0x2412c5(0x199))/0x6*(parseInt(_0x2412c5(0x195))/0x7)+-parseInt(_0x2412c5(0x1e8))/0x8*(-parseInt(_0x2412c5(0x1b2))/0x9)+parseInt(_0x2412c5(0x184))/0xa+parseInt(_0x2412c5(0x1c5))/0xb*(-parseInt(_0x2412c5(0x1c3))/0xc);if(_0x142554===_0x155b22)break;else _0x375895['push'](_0x375895['shift']());}catch(_0x3ce76f){_0x375895['push'](_0x375895['shift']());}}}(a31_0x50b2,0x9d2bf));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';function a31_0x50b2(){const _0x4c3d8d=['\x0a\x20*\x20[接口路径]\x20POST\x20/api/','alias','description','code','\x0a\x20*\x20[平台配置]\x20','functionNode','#api-list\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/','14kmpwpy','\x0a\x20*\x20@param\x20{Object}\x20context\x20平台注入的执行上下文\x0a\x20*\x20@returns\x20{Promise<Object>}\x20','\x22.\x20','function-node','1508838XLWrMN','COMMON','apiDir','.js\x0a\x20*\x20[触发节点]\x20','length',']\x20(','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','/data/dataset/','No\x20operation\x20types\x20found\x20for\x20dataset\x20','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','当前请求参数','/data/backend-function\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/','nonInteractive','.js','Invalid\x20dataset\x20selection.','修改后的响应结果','find','\x20function:\x20','File\x20already\x20exists:\x20','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','close','keys','\x0a\x20*\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[脚本名称]\x20','datasetId','3236526SzeFHa','write','name','operationType','Select\x20trigger\x20node:','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','ENDPOINT','\x22\x20not\x20found\x20for\x20dataset\x20','No\x20api.ts\x20found.\x20Run\x20`','4NxHsAA','join','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','after','source','datasetcode','/COMMON/','Operation\x20type\x20(HOOK\x20only)','1980AWHkpl','/**\x0a\x20*\x20','33429VblhaP','当前响应结果','tableName','validation','datasetCode','map','scriptsRootDir','trim','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','question','includes','152133hrVbZl','5310890AIaQTF','HOOK\x20requires\x20alias/operation/node\x20options.','/ENDPOINT/','938536UrZCZn','\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','\x0a\x20*\x0a\x20*\x20[脚本类型]\x20ENDPOINT\x0a\x20*\x20[脚本名称]\x20','Script\x20type','Function\x20name\x20(valid\x20JS\x20identifier)','entries','operation-type','bff','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','Dataset\x20not\x20found\x20for\x20code\x20\x22','\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','Created\x20','Alias\x20\x22','stdin','\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','修改后的请求参数','appCode','6nFgTDm','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/','before','8YEbBDH','str','\x20*\x20[依赖数据集]\x20无(如有依赖,DB_TABLE\x20填物理表名;METADATA\x20填数据集编码与用途)\x0a\x20*\x20[调用\x20BF]\x20无(如有调用,填写脚本名称与用途)\x0a\x20*\x20[执行\x20SQL]\x20无(如有执行,填写\x20SQL\x20名称与用途)\x0a\x20*\x20[副作用]\x20无(如有通知或外部调用,说明影响与失败策略)','\x22,\x20params\x20})\x0a','Scaffold\x20a\x20new\x20Backend\x20Function\x20script\x20from\x20template','Select\x20dataset:','parseInt','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','No\x20datasets\x20found\x20for\x20this\x20app.','\x0a\x20*\x20[参数字段]\x20按实际输入为\x20params.<字段名>\x20补充\x20JSDoc\x20参数标签;无字段时仅保留根参数\x0a\x20*\x20[异常说明]\x20无;显式抛出异常时补充异常类型与触发条件\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20','68750ZYrdPE','.js\x0a\x20*\x20[调用方式]\x20context.client.bff.execute({\x20scriptName:\x20\x22','\x20api\x20pull`\x20to\x20refresh.','Select\x20operation\x20type:','HOOK','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','string','Script\x20description','type','read'];a31_0x50b2=function(){return _0x4c3d8d;};return a31_0x50b2();}import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{DEFAULT_BFF_SCRIPT_DESCRIPTION,isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';function a31_0x29e0(_0x305d4a,_0x75b856){_0x305d4a=_0x305d4a-0x17d;const _0x50b2b0=a31_0x50b2();let _0x29e009=_0x50b2b0[_0x305d4a];return _0x29e009;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{getAppBaseUrl}from'../../constant/domain.js';export const bffCreate={'service':a31_0x5d40a0(0x1db),'command':'create','description':a31_0x5d40a0(0x17e),'risk':a31_0x5d40a0(0x18d),'flags':[{'name':a31_0x5d40a0(0x18c),'type':a31_0x5d40a0(0x18a),'required':!![],'enum':['COMMON','ENDPOINT',a31_0x5d40a0(0x188)],'description':a31_0x5d40a0(0x1d7)},{'name':a31_0x5d40a0(0x1b4),'type':a31_0x5d40a0(0x18a),'required':!![],'description':a31_0x5d40a0(0x1d8)},{'name':a31_0x5d40a0(0x190),'type':a31_0x5d40a0(0x18a),'description':a31_0x5d40a0(0x18b)},{'name':a31_0x5d40a0(0x18f),'type':a31_0x5d40a0(0x18a),'description':a31_0x5d40a0(0x1dc)},{'name':a31_0x5d40a0(0x1c0),'type':a31_0x5d40a0(0x18a),'description':a31_0x5d40a0(0x1b7)},{'name':a31_0x5d40a0(0x1da),'type':a31_0x5d40a0(0x18a),'description':a31_0x5d40a0(0x1c2)},{'name':a31_0x5d40a0(0x198),'type':a31_0x5d40a0(0x18a),'description':'Trigger\x20node\x20(HOOK\x20only)','enum':['before',a31_0x5d40a0(0x1be)]}],async 'validate'(_0x2ce1ea){const _0x3c1c47=a31_0x5d40a0,_0x51ebbc=_0x2ce1ea[_0x3c1c47(0x1e9)](_0x3c1c47(0x1b4));if(!isValidBffFunctionName(_0x51ebbc))throw CliErrors[_0x3c1c47(0x1c8)]('Invalid\x20function\x20name\x20\x22'+_0x51ebbc+_0x3c1c47(0x1ad));},async 'execute'(_0x51fb3d){const _0x3eb2ad=a31_0x5d40a0,_0x19c2c7=loadBffProjectConfig(_0x51fb3d[_0x3eb2ad(0x1e4)]),_0x21103b=_0x51fb3d[_0x3eb2ad(0x1e9)](_0x3eb2ad(0x18c)),_0x4e7f6e=_0x51fb3d[_0x3eb2ad(0x1e9)]('name'),_0x17ecd6=_0x51fb3d[_0x3eb2ad(0x1e9)](_0x3eb2ad(0x190))||undefined,_0x17148c=_0x21103b===_0x3eb2ad(0x188)?await resolveHookOptions(_0x19c2c7,_0x51fb3d):undefined,_0x44892e=buildFilePath(_0x19c2c7,_0x21103b,_0x4e7f6e,_0x17148c);if(await fileExists(_0x44892e))throw CliErrors[_0x3eb2ad(0x1c8)](_0x3eb2ad(0x1ac)+_0x44892e);await mkdir(dirname(_0x44892e),{'recursive':!![]});const _0x123fa0=generateTemplate(_0x21103b,_0x4e7f6e,_0x51fb3d['appCode'],_0x17ecd6,_0x17148c);await writeFile(_0x44892e,_0x123fa0,'utf8');const _0xc20af4={'type':_0x21103b,'name':_0x4e7f6e,'path':_0x44892e};if(_0x17ecd6)_0xc20af4['description']=_0x17ecd6;if(_0x17148c){if(_0x17148c[_0x3eb2ad(0x18f)])_0xc20af4[_0x3eb2ad(0x18f)]=_0x17148c[_0x3eb2ad(0x18f)];_0xc20af4[_0x3eb2ad(0x1c9)]=_0x17148c[_0x3eb2ad(0x1c9)],_0xc20af4[_0x3eb2ad(0x1b5)]=_0x17148c[_0x3eb2ad(0x1b5)],_0xc20af4[_0x3eb2ad(0x193)]=_0x17148c[_0x3eb2ad(0x193)];}return{'ok':!![],'data':_0xc20af4,'message':_0x3eb2ad(0x1df)+_0x21103b+_0x3eb2ad(0x1ab)+_0x4e7f6e};}};async function resolveHookOptions(_0x5e1ac8,_0x5920b1){const _0x2ae0da=a31_0x5d40a0,_0x150f8d=loadAliasMap(_0x5920b1[_0x2ae0da(0x19b)],undefined,resolveApiFilePath(_0x5920b1[_0x2ae0da(0x19b)],_0x5920b1['appCode'])),_0x1bea34=_0x150f8d['length']>0x0;let _0x58cddf,_0x900855,_0x35de6e;const _0x10e889=_0x5920b1['str'](_0x2ae0da(0x18f)),_0x2a3367=_0x5920b1[_0x2ae0da(0x1e9)](_0x2ae0da(0x1c0));if(_0x10e889){const _0x4c01ee=resolveAlias(_0x5920b1['apiDir'],_0x10e889,undefined,resolveApiFilePath(_0x5920b1[_0x2ae0da(0x19b)],_0x5920b1[_0x2ae0da(0x1e4)]));if(!_0x4c01ee){const _0x3247be=_0x1bea34?'Available\x20aliases:\x20'+_0x150f8d[_0x2ae0da(0x1ca)](_0x269c7b=>_0x269c7b[_0x2ae0da(0x18f)])['join'](',\x20'):_0x2ae0da(0x1ba)+CLI_BIN_NAME+_0x2ae0da(0x19f);throw CliErrors[_0x2ae0da(0x1c8)](_0x2ae0da(0x1e0)+_0x10e889+'\x22\x20not\x20found.\x20'+_0x3247be);}_0x58cddf=_0x10e889,_0x900855=_0x4c01ee;}else{if(_0x2a3367){_0x900855=_0x2a3367;const _0x53a306=_0x150f8d[_0x2ae0da(0x1aa)](_0x5ab16c=>_0x5ab16c['datasetCode']===_0x2a3367);_0x58cddf=_0x53a306?.[_0x2ae0da(0x18f)];}else{if(_0x5920b1[_0x2ae0da(0x1a6)])throw CliErrors[_0x2ae0da(0x1c8)]('--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');else{if(_0x1bea34){const _0x14d085=_0x150f8d[_0x2ae0da(0x1ca)](_0x46e2c6=>_0x46e2c6[_0x2ae0da(0x18f)]+'\x20('+_0x46e2c6[_0x2ae0da(0x1c7)]+')'),_0x535a7f=await promptSelect('Select\x20dataset:',_0x14d085),_0x2b3d2d=_0x150f8d[_0x535a7f];if(!_0x2b3d2d)throw CliErrors[_0x2ae0da(0x1c8)](_0x2ae0da(0x1a8));_0x58cddf=_0x2b3d2d[_0x2ae0da(0x18f)],_0x900855=_0x2b3d2d['datasetCode'];}else{const _0x384b2a=await listDatasets(_0x5920b1[_0x2ae0da(0x1e4)]);if(_0x384b2a[_0x2ae0da(0x19d)]===0x0)throw CliErrors['validation'](_0x2ae0da(0x182));const _0x7ff0d5=_0x384b2a[_0x2ae0da(0x1ca)](_0x5305c1=>_0x5305c1[_0x2ae0da(0x1b4)]+'\x20['+(_0x5305c1[_0x2ae0da(0x1bf)]??'UNKNOWN')+_0x2ae0da(0x19e)+_0x5305c1[_0x2ae0da(0x191)]+')'),_0x33d31f=await promptSelect(_0x2ae0da(0x17f),_0x7ff0d5),_0xee183f=_0x384b2a[_0x33d31f];if(!_0xee183f)throw CliErrors[_0x2ae0da(0x1c8)]('Invalid\x20dataset\x20selection.');_0x900855=_0xee183f['code'],_0x58cddf=undefined;}}}}const _0x54e1b8=await listDatasets(_0x5920b1['appCode']),_0xba40e7=_0x54e1b8[_0x2ae0da(0x1aa)](_0x150834=>_0x150834['code']===_0x900855);if(!_0xba40e7)throw CliErrors[_0x2ae0da(0x1c8)](_0x2ae0da(0x1dd)+_0x900855+_0x2ae0da(0x197)+(_0x58cddf?_0x2ae0da(0x1a3)+CLI_BIN_NAME+_0x2ae0da(0x186):''));_0x35de6e=_0xba40e7['id'];const _0x36d69b=_0x58cddf??_0x900855,_0x57abdc=await listBffDatasetOperations(_0x5920b1['appCode'],_0x35de6e),_0x55a681=_0x57abdc?Object[_0x2ae0da(0x1af)](_0x57abdc):[];if(_0x55a681['length']===0x0)throw CliErrors[_0x2ae0da(0x1c8)](_0x2ae0da(0x1a1)+_0x36d69b+'.');let _0x1b048b;const _0x2fd9db=_0x5920b1[_0x2ae0da(0x1e9)](_0x2ae0da(0x1da));if(_0x2fd9db){if(!_0x55a681[_0x2ae0da(0x1cf)](_0x2fd9db))throw CliErrors[_0x2ae0da(0x1c8)]('Operation\x20type\x20\x22'+_0x2fd9db+_0x2ae0da(0x1b9)+_0x36d69b+'.\x20'+('Available:\x20'+_0x55a681[_0x2ae0da(0x1bc)](',\x20')));_0x1b048b=_0x2fd9db;}else{if(_0x5920b1[_0x2ae0da(0x1a6)])throw CliErrors[_0x2ae0da(0x1c8)](_0x2ae0da(0x1a2));const _0x1c4a45=await promptSelect(_0x2ae0da(0x187),_0x55a681);_0x1b048b=_0x55a681[_0x1c4a45]??_0x55a681[0x0];}let _0xf87548=normalizeHookFunctionNode(_0x5920b1[_0x2ae0da(0x1e9)](_0x2ae0da(0x198)));if(!_0xf87548){if(_0x5920b1[_0x2ae0da(0x1e9)]('function-node'))throw CliErrors['validation'](_0x2ae0da(0x1cd));if(_0x5920b1['nonInteractive'])throw CliErrors[_0x2ae0da(0x1c8)]('--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');const _0x2a4339=await promptSelect(_0x2ae0da(0x1b6),['before','after']);_0xf87548=['before',_0x2ae0da(0x1be)][_0x2a4339]??_0x2ae0da(0x1e7);}return{'alias':_0x58cddf,'datasetCode':_0x900855,'datasetId':_0x35de6e,'operationType':_0x1b048b,'functionNode':_0xf87548};}async function promptSelect(_0x165f23,_0x3932ae){const _0x46b1ee=a31_0x5d40a0;if(_0x3932ae[_0x46b1ee(0x19d)]===0x1)return 0x0;for(const [_0x41e8d5,_0xceb16c]of _0x3932ae[_0x46b1ee(0x1d9)]()){process['stderr'][_0x46b1ee(0x1b3)]('\x20\x20'+(_0x41e8d5+0x1)+'.\x20'+_0xceb16c+'\x0a');}const _0xf560a8=createInterface({'input':process[_0x46b1ee(0x1e1)],'output':process['stderr']});while(!![]){const _0xa74060=await new Promise(_0x5c3394=>{const _0x34f85e=_0x46b1ee;_0xf560a8[_0x34f85e(0x1ce)](_0x165f23+'\x20',_0x5c3394);}),_0x868b2f=Number[_0x46b1ee(0x180)](_0xa74060['trim'](),0xa);if(Number['isInteger'](_0x868b2f)&&_0x868b2f>=0x1&&_0x868b2f<=_0x3932ae[_0x46b1ee(0x19d)])return _0xf560a8[_0x46b1ee(0x1ae)](),_0x868b2f-0x1;process['stderr']['write'](_0x46b1ee(0x189)+_0x3932ae[_0x46b1ee(0x19d)]+'.\x0a');}}function buildFilePath(_0x422639,_0x17c51e,_0x188020,_0x901aa8){const _0x15d410=a31_0x5d40a0;if(_0x17c51e===_0x15d410(0x188)){if(!_0x901aa8)throw CliErrors[_0x15d410(0x1c8)](_0x15d410(0x1d2));const _0x923418=_0x901aa8['alias']??_0x901aa8[_0x15d410(0x1c9)];return join(_0x422639[_0x15d410(0x1cb)],_0x15d410(0x188),_0x923418,_0x901aa8[_0x15d410(0x1b5)],_0x901aa8['functionNode'],_0x188020+_0x15d410(0x1a7));}return join(_0x422639[_0x15d410(0x1cb)],_0x17c51e,_0x188020+_0x15d410(0x1a7));}export function generateTemplate(_0x5af3d7,_0x2c4e66,_0x5912ea,_0x20fb55,_0xcfc1f9){const _0x19c62e=a31_0x5d40a0,_0x1f4d20=_0x20fb55?.[_0x19c62e(0x1cc)]()||DEFAULT_BFF_SCRIPT_DESCRIPTION,_0x51bde4=getAppBaseUrl(_0x5912ea),_0x33171f=_0x19c62e(0x1ea);if(_0x5af3d7===_0x19c62e(0x19a))return _0x19c62e(0x1c4)+_0x1f4d20+_0x19c62e(0x1b0)+_0x2c4e66+_0x19c62e(0x192)+_0x51bde4+_0x19c62e(0x1a5)+_0x5912ea+_0x19c62e(0x1c1)+_0x2c4e66+_0x19c62e(0x185)+_0x2c4e66+_0x19c62e(0x17d)+_0x33171f+_0x19c62e(0x1d5)+_0x2c4e66+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(_0x5af3d7===_0x19c62e(0x1b8))return'/**\x0a\x20*\x20'+_0x1f4d20+_0x19c62e(0x1d6)+_0x2c4e66+_0x19c62e(0x1e6)+_0x5912ea+'/'+_0x2c4e66+'\x0a\x20*\x20[平台配置]\x20'+_0x51bde4+_0x19c62e(0x1a5)+_0x5912ea+_0x19c62e(0x1d3)+_0x2c4e66+'.js\x0a'+_0x33171f+_0x19c62e(0x1e2)+_0x2c4e66+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(!_0xcfc1f9)throw CliErrors[_0x19c62e(0x1c8)](_0x19c62e(0x1bd));const _0x9aa8bd=_0xcfc1f9[_0x19c62e(0x18f)]??_0xcfc1f9[_0x19c62e(0x1c9)],_0x2fd09c=_0xcfc1f9['functionNode']===_0x19c62e(0x1e7)?_0x19c62e(0x1a4):_0x19c62e(0x1c6),_0x53f891=_0xcfc1f9[_0x19c62e(0x193)]===_0x19c62e(0x1e7)?_0x19c62e(0x1e3):_0x19c62e(0x1a9);return _0x19c62e(0x1c4)+_0x1f4d20+'\x0a\x20*\x0a\x20*\x20[脚本类型]\x20HOOK\x0a\x20*\x20[脚本名称]\x20'+_0x2c4e66+_0x19c62e(0x18e)+_0x5912ea+'/'+_0xcfc1f9[_0x19c62e(0x1c9)]+'/'+_0xcfc1f9[_0x19c62e(0x1b5)]+_0x19c62e(0x192)+_0x51bde4+_0x19c62e(0x1a0)+_0xcfc1f9[_0x19c62e(0x1b1)]+_0x19c62e(0x194)+_0x5912ea+'/HOOK/'+_0x9aa8bd+'/'+_0xcfc1f9[_0x19c62e(0x1b5)]+'/'+_0xcfc1f9['functionNode']+'/'+_0x2c4e66+_0x19c62e(0x19c)+_0xcfc1f9[_0x19c62e(0x193)]+'\x0a'+_0x33171f+_0x19c62e(0x183)+_0x2fd09c+_0x19c62e(0x196)+_0x53f891+_0x19c62e(0x1de)+_0x2c4e66+_0x19c62e(0x181);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a32_0xe560c6=a32_0x5d44;(function(_0x197f70,_0x18636a){const _0x4a5f4b=a32_0x5d44,_0x773c04=_0x197f70();while(!![]){try{const _0x18b483=parseInt(_0x4a5f4b(0x1f6))/0x1+parseInt(_0x4a5f4b(0x20b))/0x2*(-parseInt(_0x4a5f4b(0x218))/0x3)+parseInt(_0x4a5f4b(0x204))/0x4*(parseInt(_0x4a5f4b(0x21c))/0x5)+-parseInt(_0x4a5f4b(0x1f8))/0x6+parseInt(_0x4a5f4b(0x201))/0x7*(-parseInt(_0x4a5f4b(0x209))/0x8)+-parseInt(_0x4a5f4b(0x21d))/0x9*(-parseInt(_0x4a5f4b(0x1ee))/0xa)+-parseInt(_0x4a5f4b(0x21e))/0xb*(parseInt(_0x4a5f4b(0x210))/0xc);if(_0x18b483===_0x18636a)break;else _0x773c04['push'](_0x773c04['shift']());}catch(_0x53b09b){_0x773c04['push'](_0x773c04['shift']());}}}(a32_0x1a01,0x307d6));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';function a32_0x5d44(_0x59f2c2,_0x1e80ed){_0x59f2c2=_0x59f2c2-0x1eb;const _0x1a0172=a32_0x1a01();let _0x5d4448=_0x1a0172[_0x59f2c2];return _0x5d4448;}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_0xe560c6(0x1ef),'description':a32_0xe560c6(0x200),'risk':'high-risk-write','flags':[{'name':a32_0xe560c6(0x1ff),'type':a32_0xe560c6(0x213),'required':!![],'description':a32_0xe560c6(0x21a)}],async 'validate'(_0x138fd8){const _0x36b8ed=a32_0xe560c6,_0x54f7f1=loadBffProjectConfig(_0x138fd8[_0x36b8ed(0x20a)]),_0x10977b=await readBffLockFile(_0x54f7f1[_0x36b8ed(0x212)]);if(!_0x10977b)throw CliErrors[_0x36b8ed(0x207)]('Backend\x20Function\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.');},async 'dryRun'(_0x294376){const _0x34c693=a32_0xe560c6,_0x32c40d=loadBffProjectConfig(_0x294376[_0x34c693(0x20a)]),_0x582046=await readBffLockFile(_0x32c40d[_0x34c693(0x212)]);if(!_0x582046)throw CliErrors[_0x34c693(0x207)](_0x34c693(0x1fb));const {appLock:_0x3db430}=ensureLockScope(_0x582046,_0x294376[_0x34c693(0x20a)],_0x32c40d['scriptsRoot'],_0x34c693(0x1ef)),_0x5a00c6=_0x294376[_0x34c693(0x1fc)](_0x34c693(0x1ff)),_0x1a5991=Object[_0x34c693(0x205)](_0x3db430[_0x34c693(0x1f0)]),_0x3c41d7=resolveDeleteTarget(_0x5a00c6,_0x1a5991),_0x34db88=_0x3db430[_0x34c693(0x1f0)][_0x3c41d7];if(!_0x34db88)throw CliErrors['validation']('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x3c41d7+'\x22.');const _0x5438c9=resolveLocalFilePathFromLockKey(_0x32c40d,_0x3c41d7),_0x2e6bc0=relative(_0x32c40d[_0x34c693(0x1f7)],_0x5438c9),_0x11126b=join(_0x32c40d[_0x34c693(0x214)],'<timestamp>',_0x2e6bc0);return{'method':'POST','url':_0x34c693(0x216),'body':{'appCode':_0x294376[_0x34c693(0x20a)],'target':_0x3c41d7,'remoteId':_0x34db88[_0x34c693(0x203)],'localFilePath':_0x5438c9,'trashedPath':_0x11126b},'description':_0x34c693(0x20f)+_0x3c41d7+_0x34c693(0x202)};},async 'execute'(_0x50b160){const _0x241637=a32_0xe560c6,_0x187cb4=loadBffProjectConfig(_0x50b160['appCode']),_0x329fbc=await readBffLockFile(_0x187cb4[_0x241637(0x212)]);if(!_0x329fbc)throw CliErrors[_0x241637(0x207)]('Backend\x20Function\x20lock\x20file\x20not\x20found.');const {lockData:_0x3347b6,appLock:_0x4e1dc}=ensureLockScope(_0x329fbc,_0x50b160[_0x241637(0x20a)],_0x187cb4[_0x241637(0x1f9)],_0x241637(0x1ef)),_0x114990=JSON[_0x241637(0x219)](JSON[_0x241637(0x1ed)](_0x3347b6)),_0x13fb61=_0x114990[_0x241637(0x211)][_0x50b160[_0x241637(0x20a)]];if(!_0x13fb61)throw new Error(_0x241637(0x206)+_0x50b160[_0x241637(0x20a)]+'\x22\x20not\x20found\x20after\x20ensureLockScope.');const _0x11d438=_0x50b160['str'](_0x241637(0x1ff)),_0x494dbd=Object[_0x241637(0x205)](_0x13fb61['functions']),_0x53ee19=resolveDeleteTarget(_0x11d438,_0x494dbd),_0x1e5fad=_0x13fb61['functions'][_0x53ee19];if(!_0x1e5fad)throw CliErrors['validation']('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x53ee19+'\x22.');await deleteBffScript(_0x1e5fad[_0x241637(0x203)]),delete _0x13fb61[_0x241637(0x1f0)][_0x53ee19],_0x13fb61['lastSync']=new Date()[_0x241637(0x20e)](),await writeBffLockFile(_0x187cb4[_0x241637(0x212)],_0x114990);const _0x50456d=resolveLocalFilePathFromLockKey(_0x187cb4,_0x53ee19);let _0x391de5;await fileExists(_0x50456d)&&(_0x391de5=await moveToTrash(_0x187cb4['projectRoot'],_0x187cb4[_0x241637(0x214)],_0x50456d),await cleanupEmptyDirectories(dirname(_0x50456d),_0x187cb4['scriptsRootDir']));await waitForDeleteSettlement(_0x187cb4[_0x241637(0x212)],_0x50b160['appCode'],_0x53ee19,_0x50456d),await sleep(0x96);const _0x215984={'deleted':_0x53ee19,'remoteId':_0x1e5fad['remoteId']};if(_0x391de5)_0x215984[_0x241637(0x1f1)]=_0x391de5;return{'ok':!![],'data':_0x215984,'message':_0x241637(0x21b)+_0x53ee19+(_0x391de5?_0x241637(0x20d):'')};}};function resolveDeleteTarget(_0x5b82af,_0x3d2ee6){const _0xfe2e5=a32_0xe560c6;if(_0x5b82af[_0xfe2e5(0x1f4)]('/')){const _0x2382bc=_0x3d2ee6[_0xfe2e5(0x1f3)](_0x3639ca=>_0x3639ca===_0x5b82af);if(!_0x2382bc)throw CliErrors['validation'](_0xfe2e5(0x1eb)+_0x5b82af);return _0x2382bc;}const _0x4fc507=_0x3d2ee6[_0xfe2e5(0x1f5)](_0x2897c5=>_0x2897c5[_0xfe2e5(0x1ec)]('/')['at'](-0x1)===_0x5b82af);if(_0x4fc507[_0xfe2e5(0x1fa)]===0x0)throw CliErrors[_0xfe2e5(0x207)]('Function\x20not\x20found:\x20'+_0x5b82af);if(_0x4fc507[_0xfe2e5(0x1fa)]>0x1)throw CliErrors[_0xfe2e5(0x207)](_0xfe2e5(0x1fd)+_0x5b82af+'\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a'+_0x4fc507[_0xfe2e5(0x1fe)](_0x4cf50d=>_0xfe2e5(0x1f2)+_0x4cf50d)[_0xfe2e5(0x217)]('\x0a'));return _0x4fc507[0x0];}async function moveToTrash(_0x5bc530,_0x1282b6,_0x23b5da){const _0x94a42b=a32_0xe560c6,_0x2bf245=new Date()[_0x94a42b(0x20e)]()[_0x94a42b(0x215)](/[:.]/g,'-'),_0x344c23=relative(_0x5bc530,_0x23b5da),_0x3dd313=join(_0x1282b6,_0x2bf245,_0x344c23);return await mkdir(dirname(_0x3dd313),{'recursive':!![]}),await rename(_0x23b5da,_0x3dd313),_0x3dd313;}async function cleanupEmptyDirectories(_0x1ce9c9,_0x537d5f){const _0x308cd6=a32_0xe560c6;let _0xd880f3=resolve(_0x1ce9c9);const _0x2a87a6=resolve(_0x537d5f);while(_0xd880f3[_0x308cd6(0x208)](''+_0x2a87a6+sep)||_0xd880f3===_0x2a87a6){if(_0xd880f3===_0x2a87a6)return;try{const _0x1f9cca=await readdir(_0xd880f3);if(_0x1f9cca[_0x308cd6(0x1fa)]>0x0)return;await rmdir(_0xd880f3);}catch{return;}_0xd880f3=dirname(_0xd880f3);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;function a32_0x1a01(){const _0x165124=['validation','startsWith','26152BTDlex','appCode','22etraTs','Local\x20delete\x20not\x20settled\x20for\x20','\x20(local\x20file\x20moved\x20to\x20trash)','toISOString','Would\x20delete\x20','24puhlmb','apps','lockFilePath','string','trashDir','replace','/api/management/library/scripts/delete','join','39147FrJEop','parse','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','Deleted\x20','15GZuSNg','267876fEpOqO','477862fLMCFM','Function\x20not\x20found:\x20','split','stringify','120sjLRow','delete','functions','trashedTo','\x20\x20-\x20','find','includes','filter','281461KTsDrG','projectRoot','2270904TqlCgY','scriptsRoot','length','Backend\x20Function\x20lock\x20file\x20not\x20found.','str','Multiple\x20functions\x20match\x20\x22','map','target','Delete\x20a\x20Backend\x20Function\x20script\x20from\x20remote\x20and\x20local','91nfQlJw','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','remoteId','281852VNZCTq','keys','Lock\x20scope\x20for\x20app\x20\x22'];a32_0x1a01=function(){return _0x165124;};return a32_0x1a01();}async function waitForDeleteSettlement(_0x47fd9c,_0xc3b47,_0x14fe97,_0x257e3e){const _0xfbe71a=a32_0xe560c6;for(let _0x17cc53=0x0;_0x17cc53<DELETE_SETTLE_RETRY_COUNT;_0x17cc53+=0x1){const _0x18da1c=await readBffLockFile(_0x47fd9c),_0x45bec9=!!_0x18da1c?.[_0xfbe71a(0x211)]?.[_0xc3b47]?.['functions']?.[_0x14fe97],_0x114a26=await fileExists(_0x257e3e);if(!_0x45bec9&&!_0x114a26)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0xfbe71a(0x20c)+_0x14fe97+'.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a33_0x6be0(){const _0x483cff=['21OWDGLU','48sSBkoP','Return\x20full\x20raw\x20script\x20object','7788348reKYiS','appCode','boolean','245946reRhzZ','2719706nMJfnC','170jiWXwy','num','8muILoj','10313EqDEff','scriptContent','description','detail','version','(none)','Get\x20Backend\x20Function\x20script\x20details\x20by\x20ID','49122xhLmkL','number','createdTime','55029duTTkL','updatedTime','updateUserName','86128gbYsiS','scriptType','verbose','15hXgvDG'];a33_0x6be0=function(){return _0x483cff;};return a33_0x6be0();}const a33_0x10e092=a33_0x2871;function a33_0x2871(_0x4abcdc,_0x19dcd0){_0x4abcdc=_0x4abcdc-0x8a;const _0x6be0a4=a33_0x6be0();let _0x2871ce=_0x6be0a4[_0x4abcdc];return _0x2871ce;}(function(_0x53885c,_0x3a5015){const _0x2f9775=a33_0x2871,_0x1f28bc=_0x53885c();while(!![]){try{const _0xdf27f2=parseInt(_0x2f9775(0x97))/0x1*(-parseInt(_0x2f9775(0x8d))/0x2)+parseInt(_0x2f9775(0xa1))/0x3*(parseInt(_0x2f9775(0x96))/0x4)+parseInt(_0x2f9775(0x8b))/0x5*(-parseInt(_0x2f9775(0x92))/0x6)+-parseInt(_0x2f9775(0x8c))/0x7*(parseInt(_0x2f9775(0xa4))/0x8)+-parseInt(_0x2f9775(0x9e))/0x9*(-parseInt(_0x2f9775(0x94))/0xa)+-parseInt(_0x2f9775(0x93))/0xb+parseInt(_0x2f9775(0x8f))/0xc;if(_0xdf27f2===_0x3a5015)break;else _0x1f28bc['push'](_0x1f28bc['shift']());}catch(_0x888043){_0x1f28bc['push'](_0x1f28bc['shift']());}}}(a33_0x6be0,0x1f5d8));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':'bff','command':a33_0x10e092(0x9a),'description':a33_0x10e092(0x9d),'risk':'read','flags':[{'name':'id','type':a33_0x10e092(0x9f),'required':!![],'description':'Script\x20ID'},{'name':a33_0x10e092(0x8a),'type':a33_0x10e092(0x91),'description':a33_0x10e092(0x8e)}],async 'execute'(_0x5805b2){const _0x161ad2=a33_0x10e092,_0x15c721=await getBffScriptInfo(_0x5805b2[_0x161ad2(0x95)]('id')),_0xe12b88=_0x5805b2['bool'](_0x161ad2(0x8a));if(_0xe12b88)return{'ok':!![],'data':_0x15c721};return{'ok':!![],'data':{'id':_0x15c721['id'],'functionName':_0x15c721['functionName']??'','version':_0x15c721[_0x161ad2(0x9b)]??'','updateUserName':_0x15c721[_0x161ad2(0xa3)]??'','appCode':_0x15c721[_0x161ad2(0x90)],'scriptType':_0x15c721[_0x161ad2(0xa5)],'description':_0x15c721[_0x161ad2(0x99)]||_0x161ad2(0x9c),'createdTime':_0x15c721[_0x161ad2(0xa0)]??'','updatedTime':_0x15c721[_0x161ad2(0xa2)]??'','scriptContent':_0x15c721[_0x161ad2(0x98)]??''}};}};
|