@lovrabet/rabetbase-cli 2.5.1 → 2.5.2-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-restore.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/dataset/user-deleted-field-list.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/table-diff-shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/deployment/auto-sync.d.ts +3 -11
- package/lib/commands/deployment/auto-sync.js +1 -1
- package/lib/commands/deployment/index.js +1 -1
- package/lib/commands/deployment/sync-all.d.ts +2 -0
- package/lib/commands/deployment/sync-all.js +1 -0
- package/lib/commands/deployment/sync-jobs.d.ts +2 -0
- package/lib/commands/deployment/sync-jobs.js +1 -0
- package/lib/commands/deployment/sync-status.d.ts +2 -0
- package/lib/commands/deployment/sync-status.js +1 -0
- package/lib/commands/deployment/sync.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/instant-api-policy/current.d.ts +2 -0
- package/lib/commands/instant-api-policy/current.js +1 -0
- package/lib/commands/instant-api-policy/index.d.ts +2 -0
- package/lib/commands/instant-api-policy/index.js +1 -0
- package/lib/commands/instant-api-policy/init.d.ts +2 -0
- package/lib/commands/instant-api-policy/init.js +1 -0
- package/lib/commands/instant-api-policy/publish.d.ts +2 -0
- package/lib/commands/instant-api-policy/publish.js +1 -0
- package/lib/commands/instant-api-policy/pull.d.ts +2 -0
- package/lib/commands/instant-api-policy/pull.js +1 -0
- package/lib/commands/instant-api-policy/revision.d.ts +2 -0
- package/lib/commands/instant-api-policy/revision.js +1 -0
- package/lib/commands/instant-api-policy/revisions.d.ts +2 -0
- package/lib/commands/instant-api-policy/revisions.js +1 -0
- package/lib/commands/instant-api-policy/rollback.d.ts +2 -0
- package/lib/commands/instant-api-policy/rollback.js +1 -0
- package/lib/commands/instant-api-policy/shared.d.ts +82 -0
- package/lib/commands/instant-api-policy/shared.js +1 -0
- package/lib/commands/instant-api-policy/validate.d.ts +2 -0
- package/lib/commands/instant-api-policy/validate.js +1 -0
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/domain-routing-sync.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/rule/get.js +1 -1
- package/lib/commands/rule/index.js +1 -1
- package/lib/commands/rule/list.js +1 -1
- package/lib/commands/rule/set.js +1 -1
- package/lib/commands/rule/shared.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/project-domain-routing.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/routing-profile.js +1 -1
- package/lib/context/app-resolver.d.ts +0 -2
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +113 -2
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/instant-api-policy/config.d.ts +23 -0
- package/lib/core/instant-api-policy/config.js +1 -0
- package/lib/core/kb-search-client.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/supported-flags.d.ts +2 -0
- package/lib/framework/supported-flags.js +1 -0
- package/lib/framework/types.d.ts +2 -4
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/generated/official-routing.js +1 -1
- package/lib/generated/routing-contract.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/rabetbase/SKILL.md +12 -6
- package/skills/rabetbase/references/rabetbase-deployment-sync.md +51 -43
- package/skills/rabetbase/references/rabetbase-instant-api-policy.md +92 -0
- package/skills/rabetbase.manifest.json +4 -3
- package/lib/config/deployment-sync.d.ts +0 -10
- package/lib/config/deployment-sync.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a116_0x545d9e=a116_0x4f13;(function(_0x5a0061,_0x59a481){const _0x169f61=a116_0x4f13,_0x234188=_0x5a0061();while(!![]){try{const _0x9b7ac0=parseInt(_0x169f61(0x15f))/0x1*(parseInt(_0x169f61(0x197))/0x2)+-parseInt(_0x169f61(0x1d1))/0x3+-parseInt(_0x169f61(0x190))/0x4+-parseInt(_0x169f61(0x180))/0x5+parseInt(_0x169f61(0x196))/0x6+-parseInt(_0x169f61(0x1c7))/0x7*(-parseInt(_0x169f61(0x160))/0x8)+-parseInt(_0x169f61(0x16e))/0x9*(-parseInt(_0x169f61(0x164))/0xa);if(_0x9b7ac0===_0x59a481)break;else _0x234188['push'](_0x234188['shift']());}catch(_0x2cb4e){_0x234188['push'](_0x234188['shift']());}}}(a116_0x2416,0xba29b));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a116_0x545d9e(0x1ca)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a116_0x545d9e(0x174)},MENU_DELETE_RECURSIVE_FLAG={'name':a116_0x545d9e(0x1a4),'type':a116_0x545d9e(0x163),'description':a116_0x545d9e(0x1cc)},MENU_DELETE_PLAN_OUT_FLAG={'name':a116_0x545d9e(0x1dc),'type':a116_0x545d9e(0x182),'description':a116_0x545d9e(0x1b1)},MENU_DELETE_PLAN_FLAG={'name':a116_0x545d9e(0x1d8),'type':a116_0x545d9e(0x182),'description':a116_0x545d9e(0x1b0)};export const menuDelete={'service':a116_0x545d9e(0x16d),'command':'delete','description':a116_0x545d9e(0x17c),'risk':'high-risk-write','structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1d27ad){_0x1d27ad['bool']('dry-run')?validateDeleteDryRunInput(_0x1d27ad):validateDeleteExecuteInput(_0x1d27ad),requireExplicitYes(_0x1d27ad);},async 'dryRun'(_0x31fd32){const _0x56a227=a116_0x545d9e;validateDeleteDryRunInput(_0x31fd32);const _0x38eac6=await buildDeletePlan(_0x31fd32),_0x89d068=createMenuDeletePlanFile(_0x31fd32[_0x56a227(0x1c0)],_0x38eac6),_0x336340=await writeMenuDeletePlan(_0x31fd32[_0x56a227(0x1c4)](_0x56a227(0x1dc)),_0x89d068),_0x5eec00=mutationResult({..._0x38eac6,'planFile':{'path':_0x336340,'createdAt':_0x89d068['createdAt'],'expiresAt':_0x89d068[_0x56a227(0x19f)]}});return menuDryRunResult(_0x5eec00,{'method':_0x56a227(0x1ac),'url':_0x56a227(0x1ca),'body':{'idList':_0x5eec00['deleteOrder']},'description':'Would\x20batch\x20delete\x20'+(_0x5eec00['deleteOrder']?.[_0x56a227(0x19b)]??0x1)+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x5eec00[_0x56a227(0x1bc)]['id']+_0x56a227(0x1d7)+_0x336340+'.'});},async 'execute'(_0x4d82b8){const _0x2a7332=a116_0x545d9e;requireExplicitYes(_0x4d82b8),validateDeleteExecuteInput(_0x4d82b8);const _0x52faa5=await readMenuDeletePlan(_0x4d82b8['str'](_0x2a7332(0x1d8))),_0x5200fb=mutationPlanFromDeleteFile(_0x52faa5[_0x2a7332(0x1d8)],_0x52faa5[_0x2a7332(0x167)]),_0x412a0c=_0x52faa5['plan'][_0x2a7332(0x16b)]['id'];try{assertMenuDeletePlanExecutable(_0x52faa5['plan'],_0x4d82b8[_0x2a7332(0x1c0)]);}catch(_0x4858c8){throw menuFailure(asMenuError(_0x4858c8),_0x5200fb,{'stage':'plan-validation','failed':{'id':_0x412a0c}});}let _0x1198fe,_0x17ec26;try{_0x1198fe=await fetchMutationSnapshot(_0x4d82b8,_0x2a7332(0x15e),_0x412a0c),_0x17ec26=assertMenuDeletePlanCurrent(_0x52faa5[_0x2a7332(0x1d8)],_0x4d82b8['appCode'],_0x1198fe),assertDeleteTargetsComplete(_0x52faa5[_0x2a7332(0x1d8)],_0x1198fe),_0x17ec26[_0x2a7332(0x1cd)](_0x5f2f5b=>assertDeleteSafety(_0x5f2f5b,_0x52faa5[_0x2a7332(0x1d8)][_0x2a7332(0x1a4)])),assertNoSharedPages(_0x1198fe,_0x17ec26),assertCascadeMatchesPlan(_0x5200fb,_0x17ec26);}catch(_0xf543c5){throw menuFailure(asMenuError(_0xf543c5),_0x5200fb,{'stage':'pre-write-plan-validation','failed':{'id':_0x412a0c}});}const _0x197282=_0x52faa5[_0x2a7332(0x1d8)][_0x2a7332(0x1b5)];let _0x23dae5;try{_0x23dae5=await batchDeleteMenuEntities(_0x4d82b8['cookie'],_0x197282);}catch(_0x45d0a3){const _0x104d24=mapMenuApiError(_0x45d0a3,_0x2a7332(0x178)),_0x2f0ab1=[_0x2a7332(0x191)];let _0x28b4f4;try{_0x28b4f4=await readDeleteOutcome(_0x4d82b8,_0x197282);}catch(_0x533e60){const _0x5aa72d=describeMenuErrorCause(_0x533e60,_0x2a7332(0x1a1),_0x412a0c);_0x2f0ab1[_0x2a7332(0x1de)](_0x2a7332(0x162)+_0x5aa72d[_0x2a7332(0x166)]+'):\x20'+_0x5aa72d[_0x2a7332(0x184)]);throw menuFailure(_0x104d24,_0x5200fb,{'stage':_0x2a7332(0x173),'failed':{'targetIds':_0x197282,'targetIdsAbsent':_0x2a7332(0x198),..._0x5aa72d},'warnings':_0x2f0ab1,'verification':{'status':_0x2a7332(0x1c6),'lookupCommand':_0x2a7332(0x1a2),'targetIds':_0x197282}});}throw menuFailure(_0x104d24,_0x5200fb,{'stage':_0x2a7332(0x173),'succeeded':_0x28b4f4[_0x2a7332(0x185)][_0x2a7332(0x1c5)](_0x37a4c6=>({'id':_0x37a4c6,'deleted':!![]})),'failed':{'targetIds':_0x197282,'absentIds':_0x28b4f4[_0x2a7332(0x185)],'remainingIds':_0x28b4f4[_0x2a7332(0x176)]},'warnings':_0x2f0ab1,'verification':verificationFromOutcome(_0x28b4f4)});}if(_0x23dae5!==_0x197282[_0x2a7332(0x19b)]){const _0x58c646=menuError(_0x2a7332(0x1b3),'Backend\x20reported\x20'+_0x23dae5+_0x2a7332(0x1d5)+_0x197282[_0x2a7332(0x19b)]+'.',_0x2a7332(0x18b)),_0x58e24=[_0x2a7332(0x17a)];let _0x3b1756;try{_0x3b1756=await readDeleteOutcome(_0x4d82b8,_0x197282);}catch(_0x2b5f70){const _0x217bc9=describeMenuErrorCause(_0x2b5f70,_0x2a7332(0x179),_0x412a0c);_0x58e24[_0x2a7332(0x1de)](_0x2a7332(0x19c)+_0x217bc9['causeCode']+_0x2a7332(0x188)+_0x217bc9[_0x2a7332(0x184)]);throw menuFailure(_0x58c646,_0x5200fb,{'stage':_0x2a7332(0x173),'failed':{'targetIds':_0x197282,'expectedCount':_0x197282['length'],'reportedDeletedCount':_0x23dae5,'targetIdsAbsent':'unconfirmed',..._0x217bc9},'warnings':_0x58e24,'verification':{'status':'failed','lookupCommand':_0x2a7332(0x1a2),'targetIds':_0x197282}});}throw menuFailure(_0x58c646,_0x5200fb,{'stage':_0x2a7332(0x173),'succeeded':_0x3b1756[_0x2a7332(0x185)][_0x2a7332(0x1c5)](_0x37b03e=>({'id':_0x37b03e,'deleted':!![]})),'failed':{'targetIds':_0x197282,'expectedCount':_0x197282[_0x2a7332(0x19b)],'reportedDeletedCount':_0x23dae5,'absentIds':_0x3b1756['absentIds'],'remainingIds':_0x3b1756['remainingIds']},'warnings':_0x58e24,'verification':verificationFromOutcome(_0x3b1756)});}let _0x1352bd;try{_0x1352bd=await readDeleteOutcome(_0x4d82b8,_0x197282);}catch(_0x57498b){const _0x50533f=describeMenuErrorCause(_0x57498b,_0x2a7332(0x1c3),_0x412a0c),_0x1bd91a=asVerificationError(_0x57498b,_0x2a7332(0x16a)+_0x412a0c+_0x2a7332(0x16f));throw menuFailure(_0x1bd91a,_0x5200fb,{'stage':_0x2a7332(0x195),'succeeded':_0x197282[_0x2a7332(0x1c5)](_0x439222=>({'id':_0x439222,'deleteRequested':!![]})),'failed':{'id':_0x412a0c,'targetIds':_0x197282,'targetIdsAbsent':_0x2a7332(0x198),..._0x50533f},'warnings':[_0x2a7332(0x175)],'verification':{'status':_0x2a7332(0x1c6),'lookupCommand':_0x2a7332(0x1a2),'targetIds':_0x197282}});}if(_0x1352bd[_0x2a7332(0x176)]['length']>0x0){const _0xb1ea54=menuError(_0x2a7332(0x189),_0x2a7332(0x170)+_0x1352bd[_0x2a7332(0x176)][_0x2a7332(0x1dd)](',\x20')+'.',_0x2a7332(0x18b));throw menuFailure(_0xb1ea54,_0x5200fb,{'stage':_0x2a7332(0x195),'succeeded':_0x197282[_0x2a7332(0x1c5)](_0x342a00=>({'id':_0x342a00,'deleteRequested':!![]})),'failed':{'id':_0x412a0c,'targetIds':_0x197282,'absentIds':_0x1352bd[_0x2a7332(0x185)],'remainingIds':_0x1352bd[_0x2a7332(0x176)]},'warnings':['The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.'],'verification':verificationFromOutcome(_0x1352bd)});}const _0x2ba780=_0x197282[_0x2a7332(0x1c5)](_0x562e77=>({'id':_0x562e77,'deleted':!![]})),_0x5e667=mutationResult({..._0x5200fb,'dryRun':![],'succeeded':_0x2ba780,'verification':{'checkedBy':'menu\x20list','plannedSnapshotHash':_0x5200fb[_0x2a7332(0x1a8)],'finalSnapshotHash':_0x1352bd[_0x2a7332(0x18c)][_0x2a7332(0x18f)],'reportedDeletedCount':_0x23dae5,'targetAbsent':!_0x1352bd[_0x2a7332(0x18c)][_0x2a7332(0x192)][_0x2a7332(0x1ba)](_0x412a0c),'allTargetsAbsent':!![],'targetIds':_0x197282}});return{'ok':!![],'data':_0x5e667,'message':_0x2a7332(0x1b6)+_0x2ba780[_0x2a7332(0x19b)]+_0x2a7332(0x1d4)+_0x412a0c+'.'};}};async function readDeleteOutcome(_0x5a6733,_0x4ea1a8){const _0x526934=a116_0x545d9e,_0x21daf0=await fetchMenuSnapshot(_0x5a6733['appCode'],_0x5a6733[_0x526934(0x1d2)]);return{'snapshot':_0x21daf0,'absentIds':_0x4ea1a8[_0x526934(0x1be)](_0x1bce7c=>!_0x21daf0[_0x526934(0x192)][_0x526934(0x1ba)](_0x1bce7c)),'remainingIds':_0x4ea1a8[_0x526934(0x1be)](_0x1b6b86=>_0x21daf0[_0x526934(0x192)][_0x526934(0x1ba)](_0x1b6b86))};}function verificationFromOutcome(_0x8aca55){const _0x5a4ae9=a116_0x545d9e;return{'checkedBy':_0x5a4ae9(0x1b7),'absentIds':_0x8aca55['absentIds'],'remainingIds':_0x8aca55['remainingIds']};}function validateDeleteDryRunInput(_0x6c1d54){const _0x25ced2=a116_0x545d9e;validateExactId(_0x6c1d54);if(!hasFlag(_0x6c1d54,'plan-out')||!_0x6c1d54[_0x25ced2(0x1c4)](_0x25ced2(0x1dc))['trim']())throw CliErrors[_0x25ced2(0x1b2)](_0x25ced2(0x1dc),'--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.');if(hasFlag(_0x6c1d54,'plan'))throw CliErrors['validation'](_0x25ced2(0x168));}function validateDeleteExecuteInput(_0x359849){const _0x1f9d9c=a116_0x545d9e;if(!hasFlag(_0x359849,_0x1f9d9c(0x1d8))||!_0x359849[_0x1f9d9c(0x1c4)](_0x1f9d9c(0x1d8))[_0x1f9d9c(0x1d0)]())throw CliErrors[_0x1f9d9c(0x1b2)](_0x1f9d9c(0x1d8),_0x1f9d9c(0x1af));const _0xf8a1ad=['id',_0x1f9d9c(0x1a4),'plan-out',_0x1f9d9c(0x1a6),_0x1f9d9c(0x1d3),_0x1f9d9c(0x1c9)]['filter'](_0x19956b=>hasFlag(_0x359849,_0x19956b));if(_0xf8a1ad['length']>0x0)throw CliErrors[_0x1f9d9c(0x16c)](_0x1f9d9c(0x161)+_0xf8a1ad['map'](_0x5d9f5b=>'--'+_0x5d9f5b)[_0x1f9d9c(0x1dd)](',\x20')+'.');}async function buildDeletePlan(_0xf59816){const _0x183c4f=a116_0x545d9e,_0x57b012=validateExactId(_0xf59816),_0x163380=await fetchMutationSnapshot(_0xf59816,_0x183c4f(0x172),_0x57b012),_0x2370a2=requireMenu(_0x163380,_0x57b012);assertExpectedState(_0xf59816,_0x2370a2);const _0x41450e=_0xf59816[_0x183c4f(0x183)](_0x183c4f(0x1a4));let _0xc79a03;if(_0x41450e){if(_0x2370a2[_0x183c4f(0x1a7)][_0x183c4f(0x1d0)]()[_0x183c4f(0x1ad)]()!==_0x183c4f(0x1a9))throw menuError(_0x183c4f(0x1c1),'Menu\x20'+_0x2370a2['id']+_0x183c4f(0x15d)+(_0x2370a2['type']||_0x183c4f(0x171))+_0x183c4f(0x18d));_0xc79a03=collectDeleteTargets(_0x163380,_0x2370a2),_0xc79a03[_0x183c4f(0x1cd)](_0x388763=>assertDeleteSafety(_0x388763,!![]));}else assertDeleteSafety(_0x2370a2),_0xc79a03=[_0x2370a2];assertNoSharedPages(_0x163380,_0xc79a03);const _0x4cba2b=_0xc79a03['map'](_0x457b69=>_0x457b69['id']),_0x1b2ed7=cascadeForTargets(_0xc79a03),_0x1a8a58=_0x1b2ed7[_0x183c4f(0x1cf)][_0x183c4f(0x19b)]>0x0?[_0x183c4f(0x1bf)]:[];return mutationResult({'operation':_0x183c4f(0x193),'selector':{'id':_0x57b012,'recursive':_0x41450e},'before':_0x2370a2,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x183c4f(0x19a),'method':'POST','path':_0x183c4f(0x1ca),'body':{'idList':_0x4cba2b}}],'targets':_0xc79a03,'deleteOrder':_0x4cba2b,'snapshotHash':_0x163380[_0x183c4f(0x18f)],'cascade':_0x1b2ed7,'warnings':_0x1a8a58});}function assertDeleteSafety(_0x346ded,_0x47fecd=![]){const _0x4dd22d=a116_0x545d9e,_0x25b5fd=_0x346ded[_0x4dd22d(0x1a7)][_0x4dd22d(0x1d0)]()[_0x4dd22d(0x1ad)]()===_0x4dd22d(0x1a9);if(_0x346ded[_0x4dd22d(0x1bd)]>0x0&&(!_0x47fecd||!_0x25b5fd))throw menuError(_0x4dd22d(0x1a5),'Menu\x20'+_0x346ded['id']+'\x20has\x20'+_0x346ded['childrenCount']+_0x4dd22d(0x1ce),_0x4dd22d(0x1db)+_0x346ded[_0x4dd22d(0x1d9)][_0x4dd22d(0x1dd)](',\x20'));if(_0x25b5fd&&_0x346ded[_0x4dd22d(0x169)]!=null)throw menuError(_0x4dd22d(0x19e),_0x4dd22d(0x1b8)+_0x346ded['id']+_0x4dd22d(0x165)+_0x346ded['pageId']+_0x4dd22d(0x187),_0x4dd22d(0x1ae));if(!_0x25b5fd)return;if(!_0x346ded[_0x4dd22d(0x181)])throw menuError(_0x4dd22d(0x1df),'Folder\x20'+_0x346ded['id']+_0x4dd22d(0x17d),_0x4dd22d(0x199));if(_0x346ded[_0x4dd22d(0x177)][_0x4dd22d(0x19b)]>0x0)throw menuError(_0x4dd22d(0x1bb),'Folder\x20'+_0x346ded['id']+_0x4dd22d(0x18e)+_0x346ded[_0x4dd22d(0x177)][_0x4dd22d(0x19b)]+_0x4dd22d(0x1c8),'Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.');}function collectDeleteTargets(_0x29011a,_0x744911){const _0x3ee6c3=[],_0x460ee8=new Set(),_0x4b8883=new Set(),_0x4db1e0=_0x43b43e=>{const _0x5bb103=a116_0x4f13;if(_0x460ee8['has'](_0x43b43e['id']))throw menuError(_0x5bb103(0x17b),_0x5bb103(0x1da)+_0x43b43e['id']+'.');if(_0x4b8883[_0x5bb103(0x1ba)](_0x43b43e['id']))return;_0x460ee8['add'](_0x43b43e['id']);for(const _0x287f94 of _0x43b43e['childrenIds']){const _0x31a14c=_0x29011a['byId'][_0x5bb103(0x1a0)](_0x287f94);if(!_0x31a14c)throw menuError(_0x5bb103(0x17b),_0x5bb103(0x18a)+_0x43b43e['id']+_0x5bb103(0x186)+_0x287f94+'.');_0x4db1e0(_0x31a14c);}_0x460ee8[_0x5bb103(0x193)](_0x43b43e['id']),_0x4b8883[_0x5bb103(0x1d6)](_0x43b43e['id']),_0x3ee6c3[_0x5bb103(0x1de)](_0x43b43e);};return _0x4db1e0(_0x744911),_0x3ee6c3;}function assertDeleteTargetsComplete(_0x42bc1c,_0x731653){const _0x20a77c=a116_0x545d9e,_0x525836=requireMenu(_0x731653,_0x42bc1c[_0x20a77c(0x16b)]['id']);if(_0x42bc1c[_0x20a77c(0x1a4)]&&_0x525836[_0x20a77c(0x1a7)][_0x20a77c(0x1d0)]()[_0x20a77c(0x1ad)]()!==_0x20a77c(0x1a9))throw menuError(_0x20a77c(0x1ab),'Recursive\x20menu\x20delete\x20plan\x20root\x20'+_0x525836['id']+_0x20a77c(0x1cb));const _0x5450cd=_0x42bc1c['recursive']?collectDeleteTargets(_0x731653,_0x525836)[_0x20a77c(0x1c5)](_0x200944=>_0x200944['id']):[_0x525836['id']];if(JSON[_0x20a77c(0x1b9)](_0x42bc1c[_0x20a77c(0x1b5)])!==JSON[_0x20a77c(0x1b9)](_0x5450cd))throw menuError(_0x20a77c(0x1ab),_0x20a77c(0x194),_0x20a77c(0x1aa));}function assertNoSharedPages(_0x34b09c,_0x1468de){const _0x31146c=a116_0x545d9e,_0x37ca04=new Set(_0x1468de[_0x31146c(0x1c5)](_0x289385=>_0x289385['id'])),_0x20b8cf=new Set(_0x1468de[_0x31146c(0x1c5)](_0x44cced=>_0x44cced[_0x31146c(0x169)])[_0x31146c(0x1be)](_0x513016=>_0x513016!=null));if(_0x20b8cf[_0x31146c(0x1e0)]===0x0)return;const _0x315283=_0x34b09c[_0x31146c(0x17e)][_0x31146c(0x1be)](_0x109d12=>!_0x37ca04[_0x31146c(0x1ba)](_0x109d12['id'])&&_0x109d12[_0x31146c(0x169)]!=null&&_0x20b8cf[_0x31146c(0x1ba)](_0x109d12['pageId']));if(_0x315283['length']===0x0)return;const _0x2a8a7f=_0x315283[_0x31146c(0x1c5)](_0x2aab70=>_0x31146c(0x17f)+_0x2aab70[_0x31146c(0x169)]+_0x31146c(0x1c2)+_0x2aab70['id'])['join'](',\x20');throw menuError(_0x31146c(0x1a3),'Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'+_0x2a8a7f+'.','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.');}function assertCascadeMatchesPlan(_0x28b02d,_0x363bb0){const _0x24b303=a116_0x545d9e,_0x158033=cascadeForTargets(_0x363bb0);if(JSON[_0x24b303(0x1b9)](_0x28b02d['cascade'])!==JSON['stringify'](_0x158033))throw menuError(_0x24b303(0x1ab),_0x24b303(0x1b4));}function cascadeForTargets(_0x4ac919){const _0x372f58=a116_0x545d9e,_0x3e58c6=_0x4ac919[_0x372f58(0x1c5)](_0x26197d=>_0x26197d['pageId'])['filter'](_0x4f2b91=>_0x4f2b91!=null)['filter']((_0x1e8567,_0x298f45,_0x43ec5b)=>_0x43ec5b['indexOf'](_0x1e8567)===_0x298f45);return{'pages':_0x3e58c6,'pageSchemaAffected':_0x3e58c6[_0x372f58(0x19b)]>0x0};}function asMenuError(_0x374539){const _0x349e5c=a116_0x545d9e;return _0x374539 instanceof CliError?_0x374539:menuError(_0x349e5c(0x1ab),_0x374539 instanceof Error?_0x374539[_0x349e5c(0x19d)]:String(_0x374539));}function a116_0x4f13(_0xfb5825,_0x5b4515){_0xfb5825=_0xfb5825-0x15d;const _0x2416f4=a116_0x2416();let _0x4f132a=_0x2416f4[_0xfb5825];return _0x4f132a;}function a116_0x2416(){const _0x48b7f6=['expect-parent-id','type','snapshotHash','folder','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','menu_plan_invalid','POST','toLowerCase','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','flagMissing','menu_batch_delete_count_mismatch','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','deleteOrder','Deleted\x20','menu\x20list','Folder\x20','stringify','has','menu_folder_has_resources','selector','childrenCount','filter','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','appCode','menu_recursive_requires_folder','\x20->\x20menu\x20','verify\x20batch\x20delete','str','map','failed','5593VobKWN','\x20resource\x20URL(s).','expected-children-count','/smartapi/menu/batchDelete','\x20is\x20not\x20a\x20folder.','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','forEach','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','pages','trim','2045070ZFupEe','cookie','expect-path','\x20menu(s)\x20under\x20exact\x20id\x20','\x20deleted\x20menus;\x20expected\x20','add',';\x20execution\x20must\x20consume\x20','plan','childrenIds','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','plan-out','join','push','menu_folder_resources_invalid','size','\x20is\x20type\x20\x22','execute\x20reviewed\x20delete\x20plan','2REUSwz','1928pNFCTB','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','Post-failure\x20menu\x20readback\x20failed\x20(','boolean','310qVQgLF','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','causeCode','path','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','pageId','Batch\x20delete\x20request\x20for\x20menu\x20','target','validation','menu','595026FwzrQR','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','unknown','plan\x20delete','batch-delete','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','remainingIds','resources','batch\x20delete','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','menu_tree_invalid','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','menus','page\x20','5638700uveSps','resourcesValid','string','bool','causeMessage','absentIds','\x20references\x20missing\x20child\x20','\x20and\x20cannot\x20be\x20deleted\x20safely.','):\x20','menu_verification_failed','Menu\x20','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','snapshot','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','\x20still\x20references\x20','hash','69976hNrgfv','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','byId','delete','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','verification','782172fJwJDS','216992vXgPEB','unconfirmed','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','batch-delete-menu','length','Post-mismatch\x20menu\x20readback\x20failed\x20(','message','menu_delete_page_bound','expiresAt','get','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','rabetbase\x20menu\x20list\x20--format\x20json','menu_page_shared','recursive','menu_non_empty'];a116_0x2416=function(){return _0x48b7f6;};return a116_0x2416();}
|
|
1
|
+
const a129_0x190cbc=a129_0x328e;(function(_0x47dc56,_0x468a93){const _0x24f2e7=a129_0x328e,_0xe54401=_0x47dc56();while(!![]){try{const _0x3671dd=-parseInt(_0x24f2e7(0x1c7))/0x1*(parseInt(_0x24f2e7(0x1ea))/0x2)+parseInt(_0x24f2e7(0x179))/0x3+parseInt(_0x24f2e7(0x17d))/0x4*(-parseInt(_0x24f2e7(0x18f))/0x5)+parseInt(_0x24f2e7(0x1c0))/0x6+-parseInt(_0x24f2e7(0x16f))/0x7+parseInt(_0x24f2e7(0x1b8))/0x8*(-parseInt(_0x24f2e7(0x1e2))/0x9)+-parseInt(_0x24f2e7(0x1b0))/0xa*(-parseInt(_0x24f2e7(0x1ab))/0xb);if(_0x3671dd===_0x468a93)break;else _0xe54401['push'](_0xe54401['shift']());}catch(_0x562c65){_0xe54401['push'](_0xe54401['shift']());}}}(a129_0x45c4,0x81d52));function a129_0x45c4(){const _0x1b7865=['Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','18704660BXShPK','causeCode','Batch\x20delete\x20request\x20for\x20menu\x20','has','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','cascade','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','32632fPlyUP','menu_plan_invalid','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','menu_delete_page_bound','delete','menu_folder_has_resources','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','\x20->\x20menu\x20','6378234cQNSZb','trim','verification','menu_folder_resources_invalid','absentIds','filter','POST','789jySIkf','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','failed',';\x20execution\x20must\x20consume\x20','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','expect-path','\x20still\x20references\x20','string','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','\x20deleted\x20menus;\x20expected\x20','stringify','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','resourcesValid','boolean','unknown','\x20references\x20missing\x20child\x20','page\x20','\x20and\x20cannot\x20be\x20deleted\x20safely.','batch-delete','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','createdAt','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','resources','message','appCode','batch\x20delete','1179QwfGuN','target','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','byId','plan','\x20is\x20type\x20\x22','unconfirmed','2254utidse','plan-out','pageId','2448355VSkmId','expect-parent-id','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','Post-failure\x20menu\x20readback\x20failed\x20(','Post-mismatch\x20menu\x20readback\x20failed\x20(','\x20menu(s)\x20under\x20exact\x20id\x20','add','flagMissing','push','remainingIds','588033UVmTkZ','folder','menu','Backend\x20reported\x20','20aXYYLr','selector','plan-validation','childrenIds','str','menu_verification_failed','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','Folder\x20','map','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','rabetbase\x20menu\x20list\x20--format\x20json','hash','):\x20','childrenCount','causeMessage','size','path','validation','824405mmpNTp','get','toLowerCase','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','menu_tree_invalid','menu_batch_delete_count_mismatch','expected-children-count','menu_non_empty','menus','indexOf','snapshot','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','length','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','recursive','cookie','/smartapi/menu/batchDelete','type','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','menu\x20list','\x20has\x20','snapshotHash','deleteOrder','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','execute\x20reviewed\x20delete\x20plan','Menu\x20','verify\x20batch\x20delete','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','11NKMgNe','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','forEach','join'];a129_0x45c4=function(){return _0x1b7865;};return a129_0x45c4();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';function a129_0x328e(_0x10a209,_0x4bc021){_0x10a209=_0x10a209-0x16f;const _0x45c422=a129_0x45c4();let _0x328e32=_0x45c422[_0x10a209];return _0x328e32;}import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a129_0x190cbc(0x1c6),'path':a129_0x190cbc(0x19f)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':'Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)'},MENU_DELETE_RECURSIVE_FLAG={'name':'recursive','type':a129_0x190cbc(0x1d4),'description':a129_0x190cbc(0x1e5)},MENU_DELETE_PLAN_OUT_FLAG={'name':a129_0x190cbc(0x1eb),'type':'string','description':'Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file'},MENU_DELETE_PLAN_FLAG={'name':'plan','type':a129_0x190cbc(0x1ce),'description':'Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out'};export const menuDelete={'service':a129_0x190cbc(0x17b),'command':a129_0x190cbc(0x1bc),'description':a129_0x190cbc(0x1da),'risk':'high-risk-write','structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x40abd7){_0x40abd7['bool']('dry-run')?validateDeleteDryRunInput(_0x40abd7):validateDeleteExecuteInput(_0x40abd7),requireExplicitYes(_0x40abd7);},async 'dryRun'(_0x16d2e1){const _0x5b87a2=a129_0x190cbc;validateDeleteDryRunInput(_0x16d2e1);const _0x1a1047=await buildDeletePlan(_0x16d2e1),_0x2a396a=createMenuDeletePlanFile(_0x16d2e1[_0x5b87a2(0x1e0)],_0x1a1047),_0x222c20=await writeMenuDeletePlan(_0x16d2e1[_0x5b87a2(0x181)](_0x5b87a2(0x1eb)),_0x2a396a),_0x1eae0a=mutationResult({..._0x1a1047,'planFile':{'path':_0x222c20,'createdAt':_0x2a396a[_0x5b87a2(0x1db)],'expiresAt':_0x2a396a['expiresAt']}});return menuDryRunResult(_0x1eae0a,{'method':_0x5b87a2(0x1c6),'url':'/smartapi/menu/batchDelete','body':{'idList':_0x1eae0a[_0x5b87a2(0x1a5)]},'description':'Would\x20batch\x20delete\x20'+(_0x1eae0a[_0x5b87a2(0x1a5)]?.[_0x5b87a2(0x19b)]??0x1)+_0x5b87a2(0x174)+_0x1eae0a[_0x5b87a2(0x17e)]['id']+_0x5b87a2(0x1ca)+_0x222c20+'.'});},async 'execute'(_0x40f2a3){const _0x2658f0=a129_0x190cbc;requireExplicitYes(_0x40f2a3),validateDeleteExecuteInput(_0x40f2a3);const _0x5839a5=await readMenuDeletePlan(_0x40f2a3[_0x2658f0(0x181)](_0x2658f0(0x1e7))),_0x5ed467=mutationPlanFromDeleteFile(_0x5839a5[_0x2658f0(0x1e7)],_0x5839a5[_0x2658f0(0x18d)]),_0x37ea52=_0x5839a5['plan'][_0x2658f0(0x1e3)]['id'];try{assertMenuDeletePlanExecutable(_0x5839a5[_0x2658f0(0x1e7)],_0x40f2a3[_0x2658f0(0x1e0)]);}catch(_0x2ace1c){throw menuFailure(asMenuError(_0x2ace1c),_0x5ed467,{'stage':_0x2658f0(0x17f),'failed':{'id':_0x37ea52}});}let _0x303f19,_0x538b57;try{_0x303f19=await fetchMutationSnapshot(_0x40f2a3,_0x2658f0(0x1a7),_0x37ea52),_0x538b57=assertMenuDeletePlanCurrent(_0x5839a5[_0x2658f0(0x1e7)],_0x40f2a3[_0x2658f0(0x1e0)],_0x303f19),assertDeleteTargetsComplete(_0x5839a5[_0x2658f0(0x1e7)],_0x303f19),_0x538b57[_0x2658f0(0x1ad)](_0x4f8235=>assertDeleteSafety(_0x4f8235,_0x5839a5[_0x2658f0(0x1e7)][_0x2658f0(0x19d)])),assertNoSharedPages(_0x303f19,_0x538b57),assertCascadeMatchesPlan(_0x5ed467,_0x538b57);}catch(_0x169daa){throw menuFailure(asMenuError(_0x169daa),_0x5ed467,{'stage':'pre-write-plan-validation','failed':{'id':_0x37ea52}});}const _0x295973=_0x5839a5[_0x2658f0(0x1e7)][_0x2658f0(0x1a5)];let _0x3d4c44;try{_0x3d4c44=await batchDeleteMenuEntities(_0x40f2a3[_0x2658f0(0x19e)],_0x295973);}catch(_0x106ce0){const _0x1ec087=mapMenuApiError(_0x106ce0,_0x2658f0(0x1e1)),_0x425c29=[_0x2658f0(0x1cb)];let _0x34c3d1;try{_0x34c3d1=await readDeleteOutcome(_0x40f2a3,_0x295973);}catch(_0x401cd2){const _0x182e0f=describeMenuErrorCause(_0x401cd2,_0x2658f0(0x1ac),_0x37ea52);_0x425c29['push'](_0x2658f0(0x172)+_0x182e0f['causeCode']+_0x2658f0(0x189)+_0x182e0f[_0x2658f0(0x18b)]);throw menuFailure(_0x1ec087,_0x5ed467,{'stage':_0x2658f0(0x1d9),'failed':{'targetIds':_0x295973,'targetIdsAbsent':_0x2658f0(0x1e9),..._0x182e0f},'warnings':_0x425c29,'verification':{'status':'failed','lookupCommand':_0x2658f0(0x187),'targetIds':_0x295973}});}throw menuFailure(_0x1ec087,_0x5ed467,{'stage':'batch-delete','succeeded':_0x34c3d1['absentIds'][_0x2658f0(0x185)](_0x570d81=>({'id':_0x570d81,'deleted':!![]})),'failed':{'targetIds':_0x295973,'absentIds':_0x34c3d1[_0x2658f0(0x1c4)],'remainingIds':_0x34c3d1[_0x2658f0(0x178)]},'warnings':_0x425c29,'verification':verificationFromOutcome(_0x34c3d1)});}if(_0x3d4c44!==_0x295973['length']){const _0x2bb599=menuError(_0x2658f0(0x194),_0x2658f0(0x17c)+_0x3d4c44+_0x2658f0(0x1d0)+_0x295973[_0x2658f0(0x19b)]+'.',_0x2658f0(0x171)),_0x5cb57b=[_0x2658f0(0x19a)];let _0xb61486;try{_0xb61486=await readDeleteOutcome(_0x40f2a3,_0x295973);}catch(_0x394421){const _0x440706=describeMenuErrorCause(_0x394421,_0x2658f0(0x183),_0x37ea52);_0x5cb57b['push'](_0x2658f0(0x173)+_0x440706[_0x2658f0(0x1b1)]+_0x2658f0(0x189)+_0x440706[_0x2658f0(0x18b)]);throw menuFailure(_0x2bb599,_0x5ed467,{'stage':'batch-delete','failed':{'targetIds':_0x295973,'expectedCount':_0x295973[_0x2658f0(0x19b)],'reportedDeletedCount':_0x3d4c44,'targetIdsAbsent':_0x2658f0(0x1e9),..._0x440706},'warnings':_0x5cb57b,'verification':{'status':_0x2658f0(0x1c9),'lookupCommand':_0x2658f0(0x187),'targetIds':_0x295973}});}throw menuFailure(_0x2bb599,_0x5ed467,{'stage':_0x2658f0(0x1d9),'succeeded':_0xb61486[_0x2658f0(0x1c4)][_0x2658f0(0x185)](_0x1e6b1f=>({'id':_0x1e6b1f,'deleted':!![]})),'failed':{'targetIds':_0x295973,'expectedCount':_0x295973['length'],'reportedDeletedCount':_0x3d4c44,'absentIds':_0xb61486[_0x2658f0(0x1c4)],'remainingIds':_0xb61486[_0x2658f0(0x178)]},'warnings':_0x5cb57b,'verification':verificationFromOutcome(_0xb61486)});}let _0x2cf7d4;try{_0x2cf7d4=await readDeleteOutcome(_0x40f2a3,_0x295973);}catch(_0x14a48a){const _0x3da11b=describeMenuErrorCause(_0x14a48a,_0x2658f0(0x1a9),_0x37ea52),_0x58d4bc=asVerificationError(_0x14a48a,_0x2658f0(0x1b2)+_0x37ea52+_0x2658f0(0x1dd));throw menuFailure(_0x58d4bc,_0x5ed467,{'stage':_0x2658f0(0x1c2),'succeeded':_0x295973['map'](_0x34f362=>({'id':_0x34f362,'deleteRequested':!![]})),'failed':{'id':_0x37ea52,'targetIds':_0x295973,'targetIdsAbsent':_0x2658f0(0x1e9),..._0x3da11b},'warnings':['The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':_0x2658f0(0x1c9),'lookupCommand':_0x2658f0(0x187),'targetIds':_0x295973}});}if(_0x2cf7d4[_0x2658f0(0x178)]['length']>0x0){const _0x4f85cc=menuError(_0x2658f0(0x182),_0x2658f0(0x1ba)+_0x2cf7d4[_0x2658f0(0x178)][_0x2658f0(0x1ae)](',\x20')+'.',_0x2658f0(0x171));throw menuFailure(_0x4f85cc,_0x5ed467,{'stage':'verification','succeeded':_0x295973[_0x2658f0(0x185)](_0x1928ef=>({'id':_0x1928ef,'deleteRequested':!![]})),'failed':{'id':_0x37ea52,'targetIds':_0x295973,'absentIds':_0x2cf7d4[_0x2658f0(0x1c4)],'remainingIds':_0x2cf7d4[_0x2658f0(0x178)]},'warnings':[_0x2658f0(0x19c)],'verification':verificationFromOutcome(_0x2cf7d4)});}const _0x5cb3b2=_0x295973[_0x2658f0(0x185)](_0x277b9f=>({'id':_0x277b9f,'deleted':!![]})),_0x24e13c=mutationResult({..._0x5ed467,'dryRun':![],'succeeded':_0x5cb3b2,'verification':{'checkedBy':'menu\x20list','plannedSnapshotHash':_0x5ed467[_0x2658f0(0x1a4)],'finalSnapshotHash':_0x2cf7d4[_0x2658f0(0x199)][_0x2658f0(0x188)],'reportedDeletedCount':_0x3d4c44,'targetAbsent':!_0x2cf7d4[_0x2658f0(0x199)][_0x2658f0(0x1e6)][_0x2658f0(0x1b3)](_0x37ea52),'allTargetsAbsent':!![],'targetIds':_0x295973}});return{'ok':!![],'data':_0x24e13c,'message':'Deleted\x20'+_0x5cb3b2[_0x2658f0(0x19b)]+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x37ea52+'.'};}};async function readDeleteOutcome(_0x31084f,_0x246b55){const _0x116e21=a129_0x190cbc,_0x179c20=await fetchMenuSnapshot(_0x31084f[_0x116e21(0x1e0)],_0x31084f['cookie']);return{'snapshot':_0x179c20,'absentIds':_0x246b55['filter'](_0x50096a=>!_0x179c20['byId'][_0x116e21(0x1b3)](_0x50096a)),'remainingIds':_0x246b55[_0x116e21(0x1c5)](_0x513d3c=>_0x179c20[_0x116e21(0x1e6)][_0x116e21(0x1b3)](_0x513d3c))};}function verificationFromOutcome(_0x36321c){const _0x104398=a129_0x190cbc;return{'checkedBy':_0x104398(0x1a2),'absentIds':_0x36321c[_0x104398(0x1c4)],'remainingIds':_0x36321c['remainingIds']};}function validateDeleteDryRunInput(_0x292313){const _0x4085fd=a129_0x190cbc;validateExactId(_0x292313);if(!hasFlag(_0x292313,_0x4085fd(0x1eb))||!_0x292313[_0x4085fd(0x181)](_0x4085fd(0x1eb))[_0x4085fd(0x1c1)]())throw CliErrors[_0x4085fd(0x176)](_0x4085fd(0x1eb),_0x4085fd(0x1b7));if(hasFlag(_0x292313,'plan'))throw CliErrors[_0x4085fd(0x18e)](_0x4085fd(0x1b4));}function validateDeleteExecuteInput(_0x52e6a2){const _0x2de6b8=a129_0x190cbc;if(!hasFlag(_0x52e6a2,_0x2de6b8(0x1e7))||!_0x52e6a2[_0x2de6b8(0x181)](_0x2de6b8(0x1e7))[_0x2de6b8(0x1c1)]())throw CliErrors[_0x2de6b8(0x176)](_0x2de6b8(0x1e7),'--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.');const _0x330a08=['id',_0x2de6b8(0x19d),'plan-out',_0x2de6b8(0x170),_0x2de6b8(0x1cc),_0x2de6b8(0x195)][_0x2de6b8(0x1c5)](_0x21937f=>hasFlag(_0x52e6a2,_0x21937f));if(_0x330a08[_0x2de6b8(0x19b)]>0x0)throw CliErrors[_0x2de6b8(0x18e)]('Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20'+_0x330a08['map'](_0x2350fd=>'--'+_0x2350fd)[_0x2de6b8(0x1ae)](',\x20')+'.');}async function buildDeletePlan(_0x14c320){const _0x5192b3=a129_0x190cbc,_0x2afabc=validateExactId(_0x14c320),_0x1e4f1d=await fetchMutationSnapshot(_0x14c320,'plan\x20delete',_0x2afabc),_0x11086c=requireMenu(_0x1e4f1d,_0x2afabc);assertExpectedState(_0x14c320,_0x11086c);const _0x1399c9=_0x14c320['bool'](_0x5192b3(0x19d));let _0x325502;if(_0x1399c9){if(_0x11086c['type'][_0x5192b3(0x1c1)]()[_0x5192b3(0x191)]()!=='folder')throw menuError('menu_recursive_requires_folder',_0x5192b3(0x1a8)+_0x11086c['id']+_0x5192b3(0x1e8)+(_0x11086c[_0x5192b3(0x1a0)]||_0x5192b3(0x1d5))+_0x5192b3(0x192));_0x325502=collectDeleteTargets(_0x1e4f1d,_0x11086c),_0x325502[_0x5192b3(0x1ad)](_0x3b6262=>assertDeleteSafety(_0x3b6262,!![]));}else assertDeleteSafety(_0x11086c),_0x325502=[_0x11086c];assertNoSharedPages(_0x1e4f1d,_0x325502);const _0x5d2188=_0x325502[_0x5192b3(0x185)](_0x179cc0=>_0x179cc0['id']),_0xc13387=cascadeForTargets(_0x325502),_0xf4c727=_0xc13387['pages'][_0x5192b3(0x19b)]>0x0?[_0x5192b3(0x1b5)]:[];return mutationResult({'operation':'delete','selector':{'id':_0x2afabc,'recursive':_0x1399c9},'before':_0x11086c,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':'batch-delete-menu','method':_0x5192b3(0x1c6),'path':_0x5192b3(0x19f),'body':{'idList':_0x5d2188}}],'targets':_0x325502,'deleteOrder':_0x5d2188,'snapshotHash':_0x1e4f1d['hash'],'cascade':_0xc13387,'warnings':_0xf4c727});}function assertDeleteSafety(_0x115b3a,_0x4db145=![]){const _0x2a9748=a129_0x190cbc,_0x4fcdfd=_0x115b3a[_0x2a9748(0x1a0)][_0x2a9748(0x1c1)]()[_0x2a9748(0x191)]()===_0x2a9748(0x17a);if(_0x115b3a[_0x2a9748(0x18a)]>0x0&&(!_0x4db145||!_0x4fcdfd))throw menuError(_0x2a9748(0x196),'Menu\x20'+_0x115b3a['id']+_0x2a9748(0x1a3)+_0x115b3a[_0x2a9748(0x18a)]+_0x2a9748(0x1c8),_0x2a9748(0x1cf)+_0x115b3a[_0x2a9748(0x180)]['join'](',\x20'));if(_0x4fcdfd&&_0x115b3a[_0x2a9748(0x1ec)]!=null)throw menuError(_0x2a9748(0x1bb),_0x2a9748(0x184)+_0x115b3a['id']+_0x2a9748(0x1be)+_0x115b3a[_0x2a9748(0x1ec)]+_0x2a9748(0x1d8),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x4fcdfd)return;if(!_0x115b3a[_0x2a9748(0x1d3)])throw menuError(_0x2a9748(0x1c3),'Folder\x20'+_0x115b3a['id']+_0x2a9748(0x1e4),'Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(_0x115b3a[_0x2a9748(0x1de)]['length']>0x0)throw menuError(_0x2a9748(0x1bd),_0x2a9748(0x184)+_0x115b3a['id']+_0x2a9748(0x1cd)+_0x115b3a[_0x2a9748(0x1de)][_0x2a9748(0x19b)]+'\x20resource\x20URL(s).',_0x2a9748(0x1aa));}function collectDeleteTargets(_0x23ca39,_0x540e8e){const _0x8ab73f=[],_0x2b08ef=new Set(),_0x1c384d=new Set(),_0x1d844f=_0x4ecf31=>{const _0x2e11fe=a129_0x328e;if(_0x2b08ef[_0x2e11fe(0x1b3)](_0x4ecf31['id']))throw menuError(_0x2e11fe(0x193),_0x2e11fe(0x1a1)+_0x4ecf31['id']+'.');if(_0x1c384d['has'](_0x4ecf31['id']))return;_0x2b08ef[_0x2e11fe(0x175)](_0x4ecf31['id']);for(const _0x533d11 of _0x4ecf31['childrenIds']){const _0x4bf7e8=_0x23ca39['byId'][_0x2e11fe(0x190)](_0x533d11);if(!_0x4bf7e8)throw menuError(_0x2e11fe(0x193),_0x2e11fe(0x1a8)+_0x4ecf31['id']+_0x2e11fe(0x1d6)+_0x533d11+'.');_0x1d844f(_0x4bf7e8);}_0x2b08ef['delete'](_0x4ecf31['id']),_0x1c384d[_0x2e11fe(0x175)](_0x4ecf31['id']),_0x8ab73f[_0x2e11fe(0x177)](_0x4ecf31);};return _0x1d844f(_0x540e8e),_0x8ab73f;}function assertDeleteTargetsComplete(_0x44e5f4,_0x140816){const _0x1c4a73=a129_0x190cbc,_0x56eb9d=requireMenu(_0x140816,_0x44e5f4[_0x1c4a73(0x1e3)]['id']);if(_0x44e5f4[_0x1c4a73(0x19d)]&&_0x56eb9d[_0x1c4a73(0x1a0)]['trim']()[_0x1c4a73(0x191)]()!==_0x1c4a73(0x17a))throw menuError(_0x1c4a73(0x1b9),'Recursive\x20menu\x20delete\x20plan\x20root\x20'+_0x56eb9d['id']+'\x20is\x20not\x20a\x20folder.');const _0x48384b=_0x44e5f4[_0x1c4a73(0x19d)]?collectDeleteTargets(_0x140816,_0x56eb9d)['map'](_0x547f66=>_0x547f66['id']):[_0x56eb9d['id']];if(JSON[_0x1c4a73(0x1d1)](_0x44e5f4[_0x1c4a73(0x1a5)])!==JSON[_0x1c4a73(0x1d1)](_0x48384b))throw menuError(_0x1c4a73(0x1b9),_0x1c4a73(0x1d2),_0x1c4a73(0x1dc));}function assertNoSharedPages(_0x4eb9dc,_0x3fca90){const _0x39b0f1=a129_0x190cbc,_0x39e9aa=new Set(_0x3fca90[_0x39b0f1(0x185)](_0xed8302=>_0xed8302['id'])),_0x5a9841=new Set(_0x3fca90[_0x39b0f1(0x185)](_0x5bcb93=>_0x5bcb93[_0x39b0f1(0x1ec)])[_0x39b0f1(0x1c5)](_0x59e750=>_0x59e750!=null));if(_0x5a9841[_0x39b0f1(0x18c)]===0x0)return;const _0x2cd3ed=_0x4eb9dc[_0x39b0f1(0x197)]['filter'](_0x2c0482=>!_0x39e9aa[_0x39b0f1(0x1b3)](_0x2c0482['id'])&&_0x2c0482[_0x39b0f1(0x1ec)]!=null&&_0x5a9841['has'](_0x2c0482['pageId']));if(_0x2cd3ed['length']===0x0)return;const _0x157ca2=_0x2cd3ed[_0x39b0f1(0x185)](_0x288a93=>_0x39b0f1(0x1d7)+_0x288a93[_0x39b0f1(0x1ec)]+_0x39b0f1(0x1bf)+_0x288a93['id'])[_0x39b0f1(0x1ae)](',\x20');throw menuError('menu_page_shared',_0x39b0f1(0x186)+_0x157ca2+'.',_0x39b0f1(0x1af));}function assertCascadeMatchesPlan(_0x275690,_0x1f00ff){const _0x436adb=a129_0x190cbc,_0x227364=cascadeForTargets(_0x1f00ff);if(JSON[_0x436adb(0x1d1)](_0x275690[_0x436adb(0x1b6)])!==JSON[_0x436adb(0x1d1)](_0x227364))throw menuError(_0x436adb(0x1b9),_0x436adb(0x1a6));}function cascadeForTargets(_0x3b6602){const _0x2d5e26=a129_0x190cbc,_0x461b65=_0x3b6602[_0x2d5e26(0x185)](_0x180e5f=>_0x180e5f[_0x2d5e26(0x1ec)])[_0x2d5e26(0x1c5)](_0x4e0acc=>_0x4e0acc!=null)[_0x2d5e26(0x1c5)]((_0x48cfe8,_0x425714,_0xf56018)=>_0xf56018[_0x2d5e26(0x198)](_0x48cfe8)===_0x425714);return{'pages':_0x461b65,'pageSchemaAffected':_0x461b65[_0x2d5e26(0x19b)]>0x0};}function asMenuError(_0x2014e4){const _0x2a0d00=a129_0x190cbc;return _0x2014e4 instanceof CliError?_0x2014e4:menuError(_0x2a0d00(0x1b9),_0x2014e4 instanceof Error?_0x2014e4[_0x2a0d00(0x1df)]:String(_0x2014e4));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a117_0x3ecd53=a117_0x314e;(function(_0x5514cd,_0x4878ee){const _0x43d6b4=a117_0x314e,_0x4469b8=_0x5514cd();while(!![]){try{const _0x521a7d=parseInt(_0x43d6b4(0x12d))/0x1+-parseInt(_0x43d6b4(0x135))/0x2+parseInt(_0x43d6b4(0xd0))/0x3*(parseInt(_0x43d6b4(0xb6))/0x4)+parseInt(_0x43d6b4(0x110))/0x5*(parseInt(_0x43d6b4(0x12b))/0x6)+parseInt(_0x43d6b4(0xf8))/0x7*(parseInt(_0x43d6b4(0x11e))/0x8)+parseInt(_0x43d6b4(0xe6))/0x9*(parseInt(_0x43d6b4(0xb2))/0xa)+-parseInt(_0x43d6b4(0xdb))/0xb;if(_0x521a7d===_0x4878ee)break;else _0x4469b8['push'](_0x4469b8['shift']());}catch(_0x54495a){_0x4469b8['push'](_0x4469b8['shift']());}}}(a117_0x2c84,0xc16f7));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';function a117_0x314e(_0x9599f3,_0x366620){_0x9599f3=_0x9599f3-0xae;const _0x2c8499=a117_0x2c84();let _0x314ee7=_0x2c8499[_0x9599f3];return _0x314ee7;}function a117_0x2c84(){const _0x5a86ca=['Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','data','\x20has\x20an\x20unexpected\x20generated\x20path.','readbackerror','code','Recovered\x20menu\x20','menu_create_recovery_required','menu_url_credentials_forbidden','parentId','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','rabetbase\x20menu\x20list\x20--appcode\x20','Create\x20an\x20external\x20website\x20link\x20menu','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','\x20with\x20','get','boolean','expectedPath','16285FcoWvq','parent-id','menu_create_response_invalid','type','has','password','link','stringify','url','visible','length','Run\x20','menu_sort_overflow','isArray','9666376VPqPcU','menu_parent_not_folder','menu_sort_invalid','sort','appCode','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','call','afterPlan','trim','map','currentSnapshotHash','string','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','210jTigOt','label','938735oMlWNk','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','snapshot','/smartapi/menu/create','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','create-menu','menu_open_mode_invalid','Whether\x20the\x20menu\x20is\x20visible','2824272QRyiHq','Menu\x20label','menu_state_drift','expectedSnapshotHash','hasOwnProperty','createdId','replace','menu_verification_failed','\x20failed\x20final\x20verification.','\x27\x5c\x27\x27','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','2480BJHknk','succeeded','menu_permission_denied','Provide\x20an\x20HTTPS\x20URL.','116mhHQXn','selector','POST','External\x20HTTPS\x20URL','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','URL','filter','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','hash','rawFlags','username','open-mode','fromEntries','pre-write-recheck','recovered','new-window','embedded','path','<redacted>','isSafeInteger','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','lookupCommand','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','visibility','add','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','163623ShGljz','verification','<platform-generated>','External\x20menu\x20creation\x20failed.','menu','plannedActions','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','failed','menu_url_invalid','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','31434535wrgDEW','fact','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','Would\x20create\x20external\x20website\x20link\x20menu\x20','before','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','create\x20external\x20menu','str','object','after','44253mGMsYz','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','create','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','body','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','byId','Menu\x20','How\x20to\x20open\x20the\x20external\x20website','\x20has\x20an\x20unexpected\x20','menu_mutation_failed','bool','flagMissing','includes','\x20could\x20not\x20be\x20verified.','Created\x20menu\x20','toLowerCase','7LfZklX','plan','parent','cookie','external-link-create'];a117_0x2c84=function(){return _0x5a86ca;};return a117_0x2c84();}import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':'iframe','new-window':a117_0x3ecd53(0x116)};export function validateExternalMenuUrl(_0x1a80e4){const _0x105390=a117_0x3ecd53,_0x5a5948=_0x1a80e4[_0x105390(0x126)]();let _0x4c67c4;try{_0x4c67c4=new URL(_0x5a5948);}catch{throw menuError(_0x105390(0xd8),_0x105390(0xd9),_0x105390(0xcf));}if(_0x4c67c4['protocol']!=='https:')throw menuError('menu_url_https_required','External\x20menu\x20URL\x20must\x20use\x20HTTPS.',_0x105390(0xb5));if(_0x4c67c4[_0x105390(0xc0)]||_0x4c67c4[_0x105390(0x115)])throw menuError(_0x105390(0x105),_0x105390(0x131),_0x105390(0xd6));return _0x5a5948;}export const menuExternalLinkCreate={'service':a117_0x3ecd53(0xd4),'command':a117_0x3ecd53(0xfc),'description':a117_0x3ecd53(0x109),'risk':'write','structuredErrors':!![],'flags':[{'name':a117_0x3ecd53(0x12c),'type':a117_0x3ecd53(0x129),'required':!![],'description':a117_0x3ecd53(0x136)},{'name':a117_0x3ecd53(0xc1),'type':a117_0x3ecd53(0x129),'required':!![],'enum':[a117_0x3ecd53(0xc6),a117_0x3ecd53(0xc5)],'description':a117_0x3ecd53(0xef)},{'name':a117_0x3ecd53(0x118),'type':a117_0x3ecd53(0x129),'required':!![],'description':a117_0x3ecd53(0xb9)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a117_0x3ecd53(0x119),'type':a117_0x3ecd53(0x10e),'default':!![],'description':a117_0x3ecd53(0x134)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x571d9d){validateAddInput(_0x571d9d);},async 'dryRun'(_0x1fd005){const _0x357812=a117_0x3ecd53;validateAddInput(_0x1fd005);const {plan:_0x6b301b}=await buildSafeAddPlan(_0x1fd005,!![]),_0x57342a=_0x6b301b[_0x357812(0xe5)],_0x5444b5=createBody(_0x57342a);return menuDryRunResult(_0x6b301b,{'method':_0x357812(0xb8),'url':_0x357812(0x130),'body':_0x5444b5,'description':_0x357812(0xdf)+JSON[_0x357812(0x117)](_0x57342a[_0x357812(0x12c)])+_0x357812(0x10c)+_0x1fd005['str'](_0x357812(0xc1))+_0x357812(0x12e)});},async 'execute'(_0x33b394){const _0x58be3f=a117_0x3ecd53;validateAddInput(_0x33b394);const _0x18d2b1=await buildSafeAddPlan(_0x33b394,![]),{plan:_0x44bbc8,snapshot:_0x2bc29d}=_0x18d2b1,_0x42f265=_0x44bbc8['after'],_0x31887c=buildMenuLookupCommand(_0x33b394['appCode']);await recheckAddSnapshot(_0x33b394,_0x44bbc8);let _0x54e8e3;try{_0x54e8e3=await createMenuEntity(_0x33b394[_0x58be3f(0x122)],_0x33b394[_0x58be3f(0xfb)],createBody(_0x42f265));}catch(_0x5cfa17){const _0x24baae=mapMenuApiError(_0x5cfa17,_0x58be3f(0xe2));if(!isMenuResponseLoss(_0x5cfa17)||_0x24baae['code']==='menu_permission_denied')throw externalLinkCreateFailure(_0x24baae,_0x44bbc8,{'stage':_0x58be3f(0xe8),'failed':{},'verification':{'status':'failed','lookupCommand':_0x31887c}});return recoverAfterResponseLoss(_0x33b394,_0x18d2b1,_0x31887c);}const _0x443a89=Number(_0x54e8e3?.['id']),_0x3ddf12=typeof _0x54e8e3?.[_0x58be3f(0xc7)]==='string'?_0x54e8e3[_0x58be3f(0xc7)]:'';if(!Number[_0x58be3f(0xc9)](_0x443a89)||_0x443a89<=0x0||!_0x3ddf12['trim']()){const _0x25880c=menuError('menu_create_response_invalid',_0x58be3f(0xba),'Run\x20'+_0x31887c+_0x58be3f(0x107));throw externalLinkCreateFailure(_0x25880c,_0x44bbc8,{'stage':'create-response-validation','succeeded':Number[_0x58be3f(0xc9)](_0x443a89)&&_0x443a89>0x0?[{'id':_0x443a89,'created':!![]}]:[],'failed':{'createdId':Number[_0x58be3f(0xc9)](_0x443a89)?_0x443a89:null,'generatedPathConfirmed':Boolean(_0x3ddf12[_0x58be3f(0x126)]())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number[_0x58be3f(0xc9)](_0x443a89)&&_0x443a89>0x0?{..._0x42f265,'id':_0x443a89,'path':_0x3ddf12}:_0x42f265,'verification':{'status':_0x58be3f(0xd7),'lookupCommand':_0x31887c,...Number['isSafeInteger'](_0x443a89)&&_0x443a89>0x0?{'targetId':_0x443a89}:{}}});}const _0x5531f4=await readAndVerifyCreatedMenu({'appCode':_0x33b394[_0x58be3f(0x122)],'cookie':_0x33b394[_0x58be3f(0xfb)],'plan':_0x44bbc8,'afterPlan':_0x42f265,'createdId':_0x443a89,'expectedPath':_0x3ddf12,'lookupCommand':_0x31887c,'recovered':![]});return creationSuccess(_0x44bbc8,_0x5531f4[_0x58be3f(0x12f)],_0x5531f4[_0x58be3f(0xdc)],![]);}};function validateAddInput(_0x30189c){const _0x1f76fc=a117_0x3ecd53;if(!_0x30189c[_0x1f76fc(0xe3)]('label')[_0x1f76fc(0x126)]())throw CliErrors[_0x1f76fc(0xf3)]('label');resolveExternalMenuType(_0x30189c),validateExternalMenuUrl(_0x30189c[_0x1f76fc(0xe3)](_0x1f76fc(0x118))),parseParentId(_0x30189c,_0x1f76fc(0x111)),validateSort(_0x30189c);}function resolveExternalMenuType(_0x2d9100){const _0x1fe056=a117_0x3ecd53,_0x362042=_0x2d9100['str'](_0x1fe056(0xc1))[_0x1fe056(0x126)]();if(!_0x362042)throw CliErrors[_0x1fe056(0xf3)](_0x1fe056(0xc1));const _0x19d0aa=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x362042];if(!_0x19d0aa)throw menuError(_0x1fe056(0x133),_0x1fe056(0x10b),_0x1fe056(0xaf));return _0x19d0aa;}async function buildAddPlan(_0x199a6a,_0x3028d1){const _0x5a4d51=a117_0x3ecd53,_0x33d6b2=await fetchMutationSnapshot(_0x199a6a,_0x5a4d51(0xe2)),_0x472468=parseParentId(_0x199a6a,_0x5a4d51(0x111))??null;if(_0x472468!=null)requireFolder(_0x33d6b2,_0x472468);const _0x3b3875=validateSort(_0x199a6a),_0x32d59b=_0x3b3875??nextSiblingSort(_0x33d6b2,_0x472468,_0x5a4d51(0xd4)),_0x1b500f=_0x199a6a[_0x5a4d51(0xe3)](_0x5a4d51(0x12c))[_0x5a4d51(0x126)](),_0x3e9a9a=resolveExternalMenuType(_0x199a6a),_0xad5334=validateExternalMenuUrl(_0x199a6a[_0x5a4d51(0xe3)]('url')),_0x1c5bc5=Object['prototype'][_0x5a4d51(0x139)][_0x5a4d51(0x124)](_0x199a6a[_0x5a4d51(0xbf)],_0x5a4d51(0x119))?_0x199a6a[_0x5a4d51(0xf2)](_0x5a4d51(0x119)):!![],_0x1798a8={'id':null,'parentId':_0x472468,'label':_0x1b500f,'path':_0x5a4d51(0xd2),'url':_0xad5334,'type':_0x3e9a9a,'visible':_0x1c5bc5,'sort':_0x32d59b},_0x18c8e0=buildMenuLookupCommand(_0x199a6a[_0x5a4d51(0x122)]),_0x502627=mutationResult({'operation':_0x5a4d51(0xce),'selector':{'parentId':_0x472468,'type':_0x3e9a9a,'label':_0x1b500f,'url':_0xad5334},'before':null,'after':_0x1798a8,'dryRun':_0x3028d1,'backend':[{'method':_0x5a4d51(0xb8),'path':_0x5a4d51(0x130)}],'plannedActions':[{'stage':_0x5a4d51(0x132),'method':_0x5a4d51(0xb8),'path':_0x5a4d51(0x130),'body':createBody(_0x1798a8)}],'snapshotHash':_0x33d6b2[_0x5a4d51(0xbe)],'warnings':[_0x5a4d51(0xdd)],'verification':{'lookupCommand':_0x18c8e0}});return{'plan':_0x502627,'snapshot':_0x33d6b2};}async function buildSafeAddPlan(_0x1be1f9,_0x314949){try{return await buildAddPlan(_0x1be1f9,_0x314949);}catch(_0x234e72){throw safeMenuAddError(_0x234e72);}}async function recheckAddSnapshot(_0x1d6178,_0xb1ad3d){const _0x2f3c99=a117_0x3ecd53;try{await recheckMutationSnapshot(_0x1d6178,_0xb1ad3d,_0x2f3c99(0xe2));}catch(_0xeeddcb){const _0x3e6d11=getFailureRecord(_0xeeddcb);throw externalLinkCreateFailure(_0xeeddcb,_0xb1ad3d,{'stage':_0x2f3c99(0xc3),'failed':{..._0x3e6d11?.[_0x2f3c99(0x138)]?{'expectedSnapshotHash':_0x3e6d11[_0x2f3c99(0x138)]}:{},..._0x3e6d11?.[_0x2f3c99(0x128)]?{'currentSnapshotHash':_0x3e6d11[_0x2f3c99(0x128)]}:{}}});}}function createBody(_0x23519b){const _0x5c6048=a117_0x3ecd53;return{'parentId':toApiParentId(_0x23519b[_0x5c6048(0x106)]),'label':String(_0x23519b[_0x5c6048(0x12c)]),'type':String(_0x23519b[_0x5c6048(0x113)]),'url':String(_0x23519b[_0x5c6048(0x118)]),'visible':Boolean(_0x23519b[_0x5c6048(0x119)]),'sort':Number(_0x23519b[_0x5c6048(0x121)]),'extend':{}};}function buildMenuLookupCommand(_0x179fb5){const _0x47940f=a117_0x3ecd53,_0x2fc2e4='\x27'+_0x179fb5['replace'](/'/g,_0x47940f(0x13e))+'\x27';return _0x47940f(0x108)+_0x2fc2e4+'\x20--format\x20compress';}async function recoverAfterResponseLoss(_0x5b80dc,_0x40120c,_0x7ce69b){const _0x2da4af=a117_0x3ecd53,{plan:_0x5f2af4,snapshot:_0x3a3942}=_0x40120c,_0x588bc3=_0x5f2af4[_0x2da4af(0xe5)];let _0x2e0f50;try{_0x2e0f50=await fetchMenuSnapshot(_0x5b80dc[_0x2da4af(0x122)],_0x5b80dc[_0x2da4af(0xfb)]);}catch(_0x15382e){throw recoveryRequiredFailure(_0x5f2af4,_0x7ce69b,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x1cc4f9=_0x2e0f50['menus'][_0x2da4af(0xbc)](_0x23b7b2=>_0x23b7b2['parentId']===_0x588bc3[_0x2da4af(0x106)]&&_0x23b7b2[_0x2da4af(0x113)]===_0x588bc3['type']&&_0x23b7b2['label']===_0x588bc3[_0x2da4af(0x12c)]&&_0x23b7b2['url']===_0x588bc3[_0x2da4af(0x118)]),_0x36af3c=_0x1cc4f9[_0x2da4af(0xbc)](_0x4143fa=>!_0x3a3942[_0x2da4af(0xed)][_0x2da4af(0x114)](_0x4143fa['id'])),_0x51fcd9=_0x1cc4f9[_0x2da4af(0xbc)](_0x41e208=>_0x3a3942[_0x2da4af(0xed)]['has'](_0x41e208['id']));if(_0x1cc4f9[_0x2da4af(0x11a)]!==0x1||_0x36af3c[_0x2da4af(0x11a)]!==0x1)throw recoveryRequiredFailure(_0x5f2af4,_0x7ce69b,{'matchCount':_0x1cc4f9['length'],'newMatchCount':_0x36af3c[_0x2da4af(0x11a)],'preexistingMatchCount':_0x51fcd9[_0x2da4af(0x11a)]});const _0x3bdd17=_0x36af3c[0x0];try{verifyCreatedFact(_0x3bdd17,_0x3bdd17['id'],_0x588bc3,null);}catch(_0x30175c){const _0x7ce071=_0x30175c instanceof Error&&_0x2da4af(0x102)in _0x30175c?_0x30175c:menuError(_0x2da4af(0x13c),_0x2da4af(0x103)+_0x3bdd17['id']+_0x2da4af(0xf5),_0x2da4af(0x11b)+_0x7ce69b+'\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x7ce071,_0x5f2af4,{'stage':'verification','succeeded':[{'id':_0x3bdd17['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x3bdd17['id'],'finalFactsConfirmed':![]},'after':_0x3bdd17,'warnings':[_0x2da4af(0xee)+_0x3bdd17['id']+_0x2da4af(0xfe)],'verification':{'status':_0x2da4af(0xd7),'targetId':_0x3bdd17['id'],'recovered':!![],'lookupCommand':_0x7ce69b}});}return creationSuccess(_0x5f2af4,_0x2e0f50,_0x3bdd17,!![]);}function recoveryRequiredFailure(_0x34ac5c,_0xb332e2,_0x5a98c6){const _0x18568c=a117_0x3ecd53,_0x38ec09=menuError(_0x18568c(0x104),_0x18568c(0xec),'Run\x20'+_0xb332e2+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x38ec09,_0x34ac5c,{'stage':'create-recovery','failed':_0x5a98c6,'warnings':[_0x18568c(0xae)],'verification':{'status':_0x18568c(0xd7),..._0x5a98c6,'lookupCommand':_0xb332e2}});}async function readAndVerifyCreatedMenu(_0x56358d){const _0x5ed5e2=a117_0x3ecd53;let _0x140a2f;try{_0x140a2f=await fetchMenuSnapshot(_0x56358d[_0x5ed5e2(0x122)],_0x56358d[_0x5ed5e2(0xfb)]);}catch(_0x2cd567){const _0x28bd69=menuError(_0x5ed5e2(0x13c),_0x5ed5e2(0xee)+_0x56358d[_0x5ed5e2(0x13a)]+_0x5ed5e2(0xe1),_0x5ed5e2(0x11b)+_0x56358d[_0x5ed5e2(0xcb)]+_0x5ed5e2(0xca));throw externalLinkCreateFailure(_0x28bd69,_0x56358d[_0x5ed5e2(0xf9)],{'stage':_0x5ed5e2(0xd1),'succeeded':[{'id':_0x56358d[_0x5ed5e2(0x13a)],'created':!![]}],'failed':{'id':_0x56358d[_0x5ed5e2(0x13a)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x56358d['afterPlan'],'id':_0x56358d[_0x5ed5e2(0x13a)],'path':_0x56358d[_0x5ed5e2(0x10f)]},'warnings':[_0x5ed5e2(0xee)+_0x56358d[_0x5ed5e2(0x13a)]+_0x5ed5e2(0x10a)],'verification':{'status':'failed','targetId':_0x56358d[_0x5ed5e2(0x13a)],'lookupCommand':_0x56358d[_0x5ed5e2(0xcb)]}});}const _0xe4c62c=_0x140a2f[_0x5ed5e2(0xed)][_0x5ed5e2(0x10d)](_0x56358d['createdId']);try{if(!_0xe4c62c)throw menuError(_0x5ed5e2(0x13c),_0x5ed5e2(0xf6)+_0x56358d['createdId']+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x5ed5e2(0x11b)+_0x56358d[_0x5ed5e2(0xcb)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0xe4c62c,_0x56358d[_0x5ed5e2(0x13a)],_0x56358d[_0x5ed5e2(0x125)],_0x56358d[_0x5ed5e2(0x10f)]);}catch(_0x12adc8){const _0xb92d74=_0x12adc8 instanceof Error&&_0x5ed5e2(0x102)in _0x12adc8?_0x12adc8:menuError(_0x5ed5e2(0x13c),_0x5ed5e2(0xf6)+_0x56358d[_0x5ed5e2(0x13a)]+_0x5ed5e2(0x13d),'Run\x20'+_0x56358d[_0x5ed5e2(0xcb)]+_0x5ed5e2(0xca));throw externalLinkCreateFailure(_0xb92d74,_0x56358d[_0x5ed5e2(0xf9)],{'stage':_0x5ed5e2(0xd1),'succeeded':[{'id':_0x56358d[_0x5ed5e2(0x13a)],'created':!![]}],'failed':{'id':_0x56358d[_0x5ed5e2(0x13a)],'finalFactsConfirmed':![]},'after':_0xe4c62c??{..._0x56358d[_0x5ed5e2(0x125)],'id':_0x56358d[_0x5ed5e2(0x13a)],'path':_0x56358d['expectedPath']},'warnings':[_0x5ed5e2(0xee)+_0x56358d[_0x5ed5e2(0x13a)]+_0x5ed5e2(0xcc)],'verification':{'status':_0x5ed5e2(0xd7),'targetId':_0x56358d[_0x5ed5e2(0x13a)],'recovered':_0x56358d[_0x5ed5e2(0xc4)],'lookupCommand':_0x56358d[_0x5ed5e2(0xcb)]}});}return{'snapshot':_0x140a2f,'fact':_0xe4c62c};}function verifyCreatedFact(_0x12bf45,_0x463a07,_0x4ba363,_0x11a4ec){const _0x13d465=a117_0x3ecd53;if(!Number[_0x13d465(0xc9)](_0x12bf45['id'])||_0x12bf45['id']<=0x0||_0x12bf45['id']!==_0x463a07)throw menuError(_0x13d465(0x13c),_0x13d465(0xeb),_0x13d465(0x123));const _0x454548=[[_0x13d465(0xfa),_0x12bf45['parentId'],_0x4ba363[_0x13d465(0x106)]],[_0x13d465(0x113),_0x12bf45['type'],_0x4ba363[_0x13d465(0x113)]],['label',_0x12bf45['label'],_0x4ba363[_0x13d465(0x12c)]],[_0x13d465(0xbb),_0x12bf45[_0x13d465(0x118)],_0x4ba363[_0x13d465(0x118)]],[_0x13d465(0xcd),_0x12bf45[_0x13d465(0x119)],_0x4ba363[_0x13d465(0x119)]],[_0x13d465(0x121),_0x12bf45[_0x13d465(0x121)],_0x4ba363['sort']]];for(const [_0xcd0529,_0x32a0a7,_0x553571]of _0x454548){if(_0x32a0a7!==_0x553571)throw menuError(_0x13d465(0x13c),_0x13d465(0xf6)+_0x12bf45['id']+_0x13d465(0xf0)+_0xcd0529+'.',_0x13d465(0xda));}if(!_0x12bf45[_0x13d465(0xc7)][_0x13d465(0x126)]()||_0x11a4ec!==null&&_0x12bf45[_0x13d465(0xc7)]!==_0x11a4ec)throw menuError(_0x13d465(0x13c),_0x13d465(0xf6)+_0x12bf45['id']+_0x13d465(0x100),_0x13d465(0xda));}function creationSuccess(_0x4b91da,_0x16b9a9,_0x182f70,_0xc57134){const _0x1a2582=a117_0x3ecd53,_0x1c166e=mutationResult({..._0x4b91da,'after':_0x182f70,'dryRun':![],'succeeded':[{'id':_0x182f70['id'],'created':!![],'recovered':_0xc57134}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x16b9a9[_0x1a2582(0xbe)],'targetId':_0x182f70['id'],'recovered':_0xc57134,'path':_0x182f70[_0x1a2582(0xc7)]}});return{'ok':!![],'message':_0xc57134?'Recovered\x20created\x20external\x20menu\x20'+_0x182f70['id']+'\x20after\x20response\x20loss.':'Created\x20external\x20menu\x20'+_0x182f70['id']+'.','data':{..._0x1c166e,'recovered':_0xc57134}};}function externalLinkCreateFailure(_0x5877d2,_0x1b597a,_0x54ceea){const _0x348798=a117_0x3ecd53;return menuFailure(safeMenuAddError(_0x5877d2),redactFailurePlan(_0x1b597a),{..._0x54ceea,'succeeded':_0x54ceea[_0x348798(0xb3)]?.[_0x348798(0x127)](redactFailureRecord),'failed':_0x54ceea[_0x348798(0xd7)]?redactFailureRecord(_0x54ceea[_0x348798(0xd7)]):undefined,'verification':_0x54ceea[_0x348798(0xd1)]?redactFailureRecord(_0x54ceea['verification']):undefined,'after':_0x54ceea[_0x348798(0xe5)]===undefined?undefined:redactFailureValue(_0x54ceea[_0x348798(0xe5)])});}function redactFailurePlan(_0xb2519e){const _0x2d26c9=a117_0x3ecd53;return{..._0xb2519e,'selector':redactFailureRecord(_0xb2519e[_0x2d26c9(0xb7)]),'before':redactFailureValue(_0xb2519e[_0x2d26c9(0xe0)]),'after':redactFailureValue(_0xb2519e[_0x2d26c9(0xe5)]),'plannedActions':_0xb2519e[_0x2d26c9(0xd5)]?.[_0x2d26c9(0x127)](_0x3e5c2e=>({..._0x3e5c2e,'body':redactFailureRecord(_0x3e5c2e[_0x2d26c9(0xea)])})),'succeeded':_0xb2519e['succeeded'][_0x2d26c9(0x127)](redactFailureRecord),'failed':_0xb2519e[_0x2d26c9(0xd7)][_0x2d26c9(0x127)](redactFailureRecord),'verification':_0xb2519e[_0x2d26c9(0xd1)]?redactFailureRecord(_0xb2519e[_0x2d26c9(0xd1)]):undefined};}function redactFailureRecord(_0x1d27f2){return redactFailureValue(_0x1d27f2);}function redactFailureValue(_0x1b662e,_0x44df3c=''){const _0x1dcb72=a117_0x3ecd53,_0x6ec1f9=_0x44df3c[_0x1dcb72(0xf7)]()[_0x1dcb72(0x13b)](/[^a-z0-9]/g,'');if(['cause','causemessage',_0x1dcb72(0x101),'rawerror'][_0x1dcb72(0xf4)](_0x6ec1f9))return _0x1dcb72(0xc8);if(Array[_0x1dcb72(0x11d)](_0x1b662e))return _0x1b662e[_0x1dcb72(0x127)](_0x2ccf49=>redactFailureValue(_0x2ccf49));if(_0x1b662e&&typeof _0x1b662e===_0x1dcb72(0xe4))return Object[_0x1dcb72(0xc2)](Object['entries'](_0x1b662e)[_0x1dcb72(0x127)](([_0x522594,_0x12255e])=>[_0x522594,redactFailureValue(_0x12255e,_0x522594)]));return _0x1b662e;}function safeMenuAddError(_0x449429){const _0x66e569=a117_0x3ecd53,_0xd0222e=_0x449429 instanceof CliError?_0x449429['code']:_0x66e569(0xf1);switch(_0xd0222e){case _0x66e569(0x137):return menuError(_0xd0222e,'Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.',_0x66e569(0xfd));case _0x66e569(0xb4):return menuError(_0xd0222e,_0x66e569(0xde),_0x66e569(0xb0));case _0x66e569(0x112):return menuError(_0xd0222e,_0x66e569(0xbd),_0x66e569(0xb1));case _0x66e569(0x13c):return menuError(_0xd0222e,_0x66e569(0xe7),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case'menu_create_recovery_required':return menuError(_0xd0222e,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.',_0x66e569(0xe9));case _0x66e569(0xf1):case'menu_not_found':case _0x66e569(0x11f):case _0x66e569(0x120):case _0x66e569(0x11c):return menuError(_0xd0222e,_0x66e569(0xd3),_0x66e569(0x12a));default:return menuError(_0x66e569(0xf1),_0x66e569(0xd3),_0x66e569(0x12a));}}function getFailureRecord(_0x1c502c){const _0x149315=a117_0x3ecd53;if(!(_0x1c502c instanceof Error)||!(_0x149315(0xff)in _0x1c502c))return undefined;const _0x1d3906=_0x1c502c[_0x149315(0xff)];if(!_0x1d3906||typeof _0x1d3906!=='object')return undefined;const _0x83b5b8=_0x1d3906['failed'];if(!Array['isArray'](_0x83b5b8)||!_0x83b5b8[0x0]||typeof _0x83b5b8[0x0]!=='object')return undefined;return _0x83b5b8[0x0];}
|
|
1
|
+
const a130_0x173092=a130_0x5060;(function(_0x4b1faf,_0x1ba768){const _0x22cc70=a130_0x5060,_0x283a51=_0x4b1faf();while(!![]){try{const _0x48b4da=parseInt(_0x22cc70(0x157))/0x1*(-parseInt(_0x22cc70(0x18f))/0x2)+-parseInt(_0x22cc70(0x152))/0x3+-parseInt(_0x22cc70(0x19e))/0x4+-parseInt(_0x22cc70(0x13a))/0x5+-parseInt(_0x22cc70(0x190))/0x6*(parseInt(_0x22cc70(0x19a))/0x7)+-parseInt(_0x22cc70(0x15c))/0x8*(-parseInt(_0x22cc70(0x179))/0x9)+-parseInt(_0x22cc70(0x186))/0xa*(-parseInt(_0x22cc70(0x162))/0xb);if(_0x48b4da===_0x1ba768)break;else _0x283a51['push'](_0x283a51['shift']());}catch(_0x1f6b64){_0x283a51['push'](_0x283a51['shift']());}}}(a130_0x399a,0x8717f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a130_0x5060(_0x2e9343,_0x22de31){_0x2e9343=_0x2e9343-0x136;const _0x399a26=a130_0x399a();let _0x5060e7=_0x399a26[_0x2e9343];return _0x5060e7;}import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a130_0x173092(0x1ac),'new-window':a130_0x173092(0x1a7)};export function validateExternalMenuUrl(_0x2682a1){const _0x58b054=a130_0x173092,_0x461ac5=_0x2682a1['trim']();let _0x3d768a;try{_0x3d768a=new URL(_0x461ac5);}catch{throw menuError('menu_url_invalid','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.',_0x58b054(0x159));}if(_0x3d768a[_0x58b054(0x139)]!=='https:')throw menuError(_0x58b054(0x160),_0x58b054(0x197),_0x58b054(0x181));if(_0x3d768a[_0x58b054(0x16e)]||_0x3d768a[_0x58b054(0x1c0)])throw menuError(_0x58b054(0x16f),_0x58b054(0x1b7),_0x58b054(0x1bd));return _0x461ac5;}export const menuExternalLinkCreate={'service':a130_0x173092(0x161),'command':a130_0x173092(0x1a2),'description':a130_0x173092(0x17d),'risk':a130_0x173092(0x192),'structuredErrors':!![],'flags':[{'name':a130_0x173092(0x1a9),'type':a130_0x173092(0x1b4),'required':!![],'description':a130_0x173092(0x1b6)},{'name':a130_0x173092(0x19c),'type':a130_0x173092(0x1b4),'required':!![],'enum':[a130_0x173092(0x1a4),'new-window'],'description':a130_0x173092(0x147)},{'name':a130_0x173092(0x1c3),'type':a130_0x173092(0x1b4),'required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a130_0x173092(0x175),'type':a130_0x173092(0x1b1),'default':!![],'description':'Whether\x20the\x20menu\x20is\x20visible'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x56aa37){validateAddInput(_0x56aa37);},async 'dryRun'(_0x426fca){const _0x4acf04=a130_0x173092;validateAddInput(_0x426fca);const {plan:_0x36231c}=await buildSafeAddPlan(_0x426fca,!![]),_0x504755=_0x36231c[_0x4acf04(0x136)],_0x383925=createBody(_0x504755);return menuDryRunResult(_0x36231c,{'method':_0x4acf04(0x195),'url':_0x4acf04(0x169),'body':_0x383925,'description':_0x4acf04(0x196)+JSON[_0x4acf04(0x1ba)](_0x504755[_0x4acf04(0x1a9)])+_0x4acf04(0x167)+_0x426fca['str']('open-mode')+_0x4acf04(0x1a5)});},async 'execute'(_0xe8f6f){const _0x3f533c=a130_0x173092;validateAddInput(_0xe8f6f);const _0x477806=await buildSafeAddPlan(_0xe8f6f,![]),{plan:_0x175f1e,snapshot:_0x5d365a}=_0x477806,_0x3cb8ee=_0x175f1e['after'],_0x55e2c6=buildMenuLookupCommand(_0xe8f6f[_0x3f533c(0x146)]);await recheckAddSnapshot(_0xe8f6f,_0x175f1e);let _0xa828f9;try{_0xa828f9=await createMenuEntity(_0xe8f6f['appCode'],_0xe8f6f[_0x3f533c(0x1b8)],createBody(_0x3cb8ee));}catch(_0x4c2b23){const _0x4edc43=mapMenuApiError(_0x4c2b23,_0x3f533c(0x193));if(!isMenuResponseLoss(_0x4c2b23)||_0x4edc43['code']===_0x3f533c(0x15b))throw externalLinkCreateFailure(_0x4edc43,_0x175f1e,{'stage':_0x3f533c(0x1bf),'failed':{},'verification':{'status':_0x3f533c(0x16b),'lookupCommand':_0x55e2c6}});return recoverAfterResponseLoss(_0xe8f6f,_0x477806,_0x55e2c6);}const _0x5729f0=Number(_0xa828f9?.['id']),_0x13a36c=typeof _0xa828f9?.['path']===_0x3f533c(0x1b4)?_0xa828f9[_0x3f533c(0x17c)]:'';if(!Number[_0x3f533c(0x194)](_0x5729f0)||_0x5729f0<=0x0||!_0x13a36c[_0x3f533c(0x165)]()){const _0x4f3c8f=menuError(_0x3f533c(0x176),_0x3f533c(0x14a),'Run\x20'+_0x55e2c6+_0x3f533c(0x1ad));throw externalLinkCreateFailure(_0x4f3c8f,_0x175f1e,{'stage':_0x3f533c(0x17a),'succeeded':Number[_0x3f533c(0x194)](_0x5729f0)&&_0x5729f0>0x0?[{'id':_0x5729f0,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x5729f0)?_0x5729f0:null,'generatedPathConfirmed':Boolean(_0x13a36c[_0x3f533c(0x165)]())},'warnings':[_0x3f533c(0x17e)],'after':Number[_0x3f533c(0x194)](_0x5729f0)&&_0x5729f0>0x0?{..._0x3cb8ee,'id':_0x5729f0,'path':_0x13a36c}:_0x3cb8ee,'verification':{'status':_0x3f533c(0x16b),'lookupCommand':_0x55e2c6,...Number[_0x3f533c(0x194)](_0x5729f0)&&_0x5729f0>0x0?{'targetId':_0x5729f0}:{}}});}const _0x5e2932=await readAndVerifyCreatedMenu({'appCode':_0xe8f6f[_0x3f533c(0x146)],'cookie':_0xe8f6f[_0x3f533c(0x1b8)],'plan':_0x175f1e,'afterPlan':_0x3cb8ee,'createdId':_0x5729f0,'expectedPath':_0x13a36c,'lookupCommand':_0x55e2c6,'recovered':![]});return creationSuccess(_0x175f1e,_0x5e2932['snapshot'],_0x5e2932[_0x3f533c(0x13e)],![]);}};function validateAddInput(_0x2b8560){const _0x3eab78=a130_0x173092;if(!_0x2b8560[_0x3eab78(0x185)](_0x3eab78(0x1a9))['trim']())throw CliErrors['flagMissing'](_0x3eab78(0x1a9));resolveExternalMenuType(_0x2b8560),validateExternalMenuUrl(_0x2b8560[_0x3eab78(0x185)](_0x3eab78(0x1c3))),parseParentId(_0x2b8560,_0x3eab78(0x16a)),validateSort(_0x2b8560);}function resolveExternalMenuType(_0x35b547){const _0x2d39d3=a130_0x173092,_0x2e3fe5=_0x35b547[_0x2d39d3(0x185)](_0x2d39d3(0x19c))[_0x2d39d3(0x165)]();if(!_0x2e3fe5)throw CliErrors[_0x2d39d3(0x184)](_0x2d39d3(0x19c));const _0x3ab22a=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x2e3fe5];if(!_0x3ab22a)throw menuError(_0x2d39d3(0x1b9),_0x2d39d3(0x155),_0x2d39d3(0x180));return _0x3ab22a;}async function buildAddPlan(_0x5689b8,_0xb4537c){const _0x5289f2=a130_0x173092,_0x235af9=await fetchMutationSnapshot(_0x5689b8,_0x5289f2(0x193)),_0x5ea3ec=parseParentId(_0x5689b8,'parent-id')??null;if(_0x5ea3ec!=null)requireFolder(_0x235af9,_0x5ea3ec);const _0x940c5=validateSort(_0x5689b8),_0x177040=_0x940c5??nextSiblingSort(_0x235af9,_0x5ea3ec,_0x5289f2(0x161)),_0x833a19=_0x5689b8[_0x5289f2(0x185)](_0x5289f2(0x1a9))['trim'](),_0x294827=resolveExternalMenuType(_0x5689b8),_0x382168=validateExternalMenuUrl(_0x5689b8['str'](_0x5289f2(0x1c3))),_0x43dac7=Object['prototype'][_0x5289f2(0x142)]['call'](_0x5689b8[_0x5289f2(0x15f)],_0x5289f2(0x175))?_0x5689b8['bool'](_0x5289f2(0x175)):!![],_0x27f26c={'id':null,'parentId':_0x5ea3ec,'label':_0x833a19,'path':_0x5289f2(0x154),'url':_0x382168,'type':_0x294827,'visible':_0x43dac7,'sort':_0x177040},_0x2ff23b=buildMenuLookupCommand(_0x5689b8[_0x5289f2(0x146)]),_0x4faa63=mutationResult({'operation':_0x5289f2(0x18d),'selector':{'parentId':_0x5ea3ec,'type':_0x294827,'label':_0x833a19,'url':_0x382168},'before':null,'after':_0x27f26c,'dryRun':_0xb4537c,'backend':[{'method':_0x5289f2(0x195),'path':'/smartapi/menu/create'}],'plannedActions':[{'stage':_0x5289f2(0x189),'method':'POST','path':'/smartapi/menu/create','body':createBody(_0x27f26c)}],'snapshotHash':_0x235af9['hash'],'warnings':[_0x5289f2(0x14e)],'verification':{'lookupCommand':_0x2ff23b}});return{'plan':_0x4faa63,'snapshot':_0x235af9};}async function buildSafeAddPlan(_0x5b2ee2,_0x106f5c){try{return await buildAddPlan(_0x5b2ee2,_0x106f5c);}catch(_0x48e916){throw safeMenuAddError(_0x48e916);}}async function recheckAddSnapshot(_0x247b7d,_0x209b51){const _0x1f5ca8=a130_0x173092;try{await recheckMutationSnapshot(_0x247b7d,_0x209b51,_0x1f5ca8(0x193));}catch(_0x1b205d){const _0x334650=getFailureRecord(_0x1b205d);throw externalLinkCreateFailure(_0x1b205d,_0x209b51,{'stage':_0x1f5ca8(0x1be),'failed':{..._0x334650?.[_0x1f5ca8(0x16c)]?{'expectedSnapshotHash':_0x334650['expectedSnapshotHash']}:{},..._0x334650?.[_0x1f5ca8(0x13f)]?{'currentSnapshotHash':_0x334650[_0x1f5ca8(0x13f)]}:{}}});}}function createBody(_0x57b96b){const _0x2a4c6a=a130_0x173092;return{'parentId':toApiParentId(_0x57b96b[_0x2a4c6a(0x18a)]),'label':String(_0x57b96b[_0x2a4c6a(0x1a9)]),'type':String(_0x57b96b[_0x2a4c6a(0x13c)]),'url':String(_0x57b96b['url']),'visible':Boolean(_0x57b96b[_0x2a4c6a(0x175)]),'sort':Number(_0x57b96b[_0x2a4c6a(0x141)]),'extend':{}};}function buildMenuLookupCommand(_0x45ca07){const _0x50d7d4=a130_0x173092,_0x17f342='\x27'+_0x45ca07['replace'](/'/g,_0x50d7d4(0x19d))+'\x27';return _0x50d7d4(0x14c)+_0x17f342+_0x50d7d4(0x164);}async function recoverAfterResponseLoss(_0x4c6205,_0x1b343,_0x20c405){const _0x211937=a130_0x173092,{plan:_0x2596d5,snapshot:_0x577cf0}=_0x1b343,_0x5c9309=_0x2596d5[_0x211937(0x136)];let _0x5da93a;try{_0x5da93a=await fetchMenuSnapshot(_0x4c6205['appCode'],_0x4c6205[_0x211937(0x1b8)]);}catch(_0x43c71f){throw recoveryRequiredFailure(_0x2596d5,_0x20c405,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x116b35=_0x5da93a['menus']['filter'](_0x4178e0=>_0x4178e0[_0x211937(0x18a)]===_0x5c9309[_0x211937(0x18a)]&&_0x4178e0['type']===_0x5c9309[_0x211937(0x13c)]&&_0x4178e0[_0x211937(0x1a9)]===_0x5c9309[_0x211937(0x1a9)]&&_0x4178e0['url']===_0x5c9309['url']),_0x105bcb=_0x116b35[_0x211937(0x177)](_0x2171ec=>!_0x577cf0['byId'][_0x211937(0x1ab)](_0x2171ec['id'])),_0x548702=_0x116b35['filter'](_0x9c12d4=>_0x577cf0[_0x211937(0x13b)][_0x211937(0x1ab)](_0x9c12d4['id']));if(_0x116b35[_0x211937(0x144)]!==0x1||_0x105bcb[_0x211937(0x144)]!==0x1)throw recoveryRequiredFailure(_0x2596d5,_0x20c405,{'matchCount':_0x116b35['length'],'newMatchCount':_0x105bcb['length'],'preexistingMatchCount':_0x548702[_0x211937(0x144)]});const _0x4cb595=_0x105bcb[0x0];try{verifyCreatedFact(_0x4cb595,_0x4cb595['id'],_0x5c9309,null);}catch(_0x12d184){const _0x59d14a=_0x12d184 instanceof Error&&'code'in _0x12d184?_0x12d184:menuError('menu_verification_failed',_0x211937(0x17f)+_0x4cb595['id']+'\x20could\x20not\x20be\x20verified.',_0x211937(0x148)+_0x20c405+'\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x59d14a,_0x2596d5,{'stage':'verification','succeeded':[{'id':_0x4cb595['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x4cb595['id'],'finalFactsConfirmed':![]},'after':_0x4cb595,'warnings':[_0x211937(0x1a8)+_0x4cb595['id']+_0x211937(0x182)],'verification':{'status':_0x211937(0x16b),'targetId':_0x4cb595['id'],'recovered':!![],'lookupCommand':_0x20c405}});}return creationSuccess(_0x2596d5,_0x5da93a,_0x4cb595,!![]);}function recoveryRequiredFailure(_0x38d355,_0x22c3f1,_0x5dcee7){const _0x637876=a130_0x173092,_0x59ddbe=menuError(_0x637876(0x174),'The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','Run\x20'+_0x22c3f1+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x59ddbe,_0x38d355,{'stage':'create-recovery','failed':_0x5dcee7,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':_0x637876(0x16b),..._0x5dcee7,'lookupCommand':_0x22c3f1}});}async function readAndVerifyCreatedMenu(_0x3131b){const _0x406360=a130_0x173092;let _0x570b53;try{_0x570b53=await fetchMenuSnapshot(_0x3131b[_0x406360(0x146)],_0x3131b[_0x406360(0x1b8)]);}catch(_0x3ac09f){const _0x93d0f4=menuError(_0x406360(0x1b3),_0x406360(0x1a8)+_0x3131b['createdId']+_0x406360(0x15a),_0x406360(0x148)+_0x3131b['lookupCommand']+_0x406360(0x191));throw externalLinkCreateFailure(_0x93d0f4,_0x3131b[_0x406360(0x171)],{'stage':_0x406360(0x178),'succeeded':[{'id':_0x3131b[_0x406360(0x19b)],'created':!![]}],'failed':{'id':_0x3131b[_0x406360(0x19b)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x3131b[_0x406360(0x18c)],'id':_0x3131b['createdId'],'path':_0x3131b[_0x406360(0x1ae)]},'warnings':[_0x406360(0x1a8)+_0x3131b[_0x406360(0x19b)]+_0x406360(0x153)],'verification':{'status':'failed','targetId':_0x3131b[_0x406360(0x19b)],'lookupCommand':_0x3131b[_0x406360(0x166)]}});}const _0x8d4fa0=_0x570b53[_0x406360(0x13b)][_0x406360(0x138)](_0x3131b['createdId']);try{if(!_0x8d4fa0)throw menuError('menu_verification_failed',_0x406360(0x1c1)+_0x3131b[_0x406360(0x19b)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x406360(0x148)+_0x3131b[_0x406360(0x166)]+_0x406360(0x191));verifyCreatedFact(_0x8d4fa0,_0x3131b[_0x406360(0x19b)],_0x3131b['afterPlan'],_0x3131b[_0x406360(0x1ae)]);}catch(_0x2a4ff8){const _0x50248d=_0x2a4ff8 instanceof Error&&'code'in _0x2a4ff8?_0x2a4ff8:menuError(_0x406360(0x1b3),_0x406360(0x1c1)+_0x3131b['createdId']+_0x406360(0x14b),_0x406360(0x148)+_0x3131b[_0x406360(0x166)]+_0x406360(0x191));throw externalLinkCreateFailure(_0x50248d,_0x3131b[_0x406360(0x171)],{'stage':_0x406360(0x178),'succeeded':[{'id':_0x3131b['createdId'],'created':!![]}],'failed':{'id':_0x3131b[_0x406360(0x19b)],'finalFactsConfirmed':![]},'after':_0x8d4fa0??{..._0x3131b['afterPlan'],'id':_0x3131b[_0x406360(0x19b)],'path':_0x3131b[_0x406360(0x1ae)]},'warnings':[_0x406360(0x1a8)+_0x3131b[_0x406360(0x19b)]+_0x406360(0x183)],'verification':{'status':_0x406360(0x16b),'targetId':_0x3131b['createdId'],'recovered':_0x3131b['recovered'],'lookupCommand':_0x3131b[_0x406360(0x166)]}});}return{'snapshot':_0x570b53,'fact':_0x8d4fa0};}function verifyCreatedFact(_0x520471,_0x14c262,_0x10744e,_0x55550f){const _0x23a084=a130_0x173092;if(!Number[_0x23a084(0x194)](_0x520471['id'])||_0x520471['id']<=0x0||_0x520471['id']!==_0x14c262)throw menuError(_0x23a084(0x1b3),'Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.',_0x23a084(0x199));const _0x5d8ca7=[[_0x23a084(0x143),_0x520471[_0x23a084(0x18a)],_0x10744e[_0x23a084(0x18a)]],[_0x23a084(0x13c),_0x520471[_0x23a084(0x13c)],_0x10744e[_0x23a084(0x13c)]],[_0x23a084(0x1a9),_0x520471[_0x23a084(0x1a9)],_0x10744e[_0x23a084(0x1a9)]],[_0x23a084(0x163),_0x520471[_0x23a084(0x1c3)],_0x10744e[_0x23a084(0x1c3)]],[_0x23a084(0x1af),_0x520471['visible'],_0x10744e[_0x23a084(0x175)]],[_0x23a084(0x141),_0x520471[_0x23a084(0x141)],_0x10744e[_0x23a084(0x141)]]];for(const [_0x2fb3a2,_0x231776,_0x188f97]of _0x5d8ca7){if(_0x231776!==_0x188f97)throw menuError(_0x23a084(0x1b3),'Created\x20menu\x20'+_0x520471['id']+_0x23a084(0x1bb)+_0x2fb3a2+'.',_0x23a084(0x18b));}if(!_0x520471[_0x23a084(0x17c)][_0x23a084(0x165)]()||_0x55550f!==null&&_0x520471['path']!==_0x55550f)throw menuError(_0x23a084(0x1b3),_0x23a084(0x1c1)+_0x520471['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x23a084(0x18b));}function creationSuccess(_0x454f55,_0x1cc37e,_0x52aa82,_0x181a8f){const _0xde9e45=a130_0x173092,_0x41809b=mutationResult({..._0x454f55,'after':_0x52aa82,'dryRun':![],'succeeded':[{'id':_0x52aa82['id'],'created':!![],'recovered':_0x181a8f}],'verification':{'checkedBy':_0xde9e45(0x1a0),'snapshotHash':_0x1cc37e[_0xde9e45(0x1a3)],'targetId':_0x52aa82['id'],'recovered':_0x181a8f,'path':_0x52aa82[_0xde9e45(0x17c)]}});return{'ok':!![],'message':_0x181a8f?_0xde9e45(0x16d)+_0x52aa82['id']+_0xde9e45(0x15d):'Created\x20external\x20menu\x20'+_0x52aa82['id']+'.','data':{..._0x41809b,'recovered':_0x181a8f}};}function externalLinkCreateFailure(_0x329e0c,_0x3db2f4,_0x32617d){const _0x3e8d93=a130_0x173092;return menuFailure(safeMenuAddError(_0x329e0c),redactFailurePlan(_0x3db2f4),{..._0x32617d,'succeeded':_0x32617d[_0x3e8d93(0x18e)]?.['map'](redactFailureRecord),'failed':_0x32617d['failed']?redactFailureRecord(_0x32617d[_0x3e8d93(0x16b)]):undefined,'verification':_0x32617d[_0x3e8d93(0x178)]?redactFailureRecord(_0x32617d[_0x3e8d93(0x178)]):undefined,'after':_0x32617d[_0x3e8d93(0x136)]===undefined?undefined:redactFailureValue(_0x32617d[_0x3e8d93(0x136)])});}function redactFailurePlan(_0x130b62){const _0x2ea830=a130_0x173092;return{..._0x130b62,'selector':redactFailureRecord(_0x130b62[_0x2ea830(0x150)]),'before':redactFailureValue(_0x130b62[_0x2ea830(0x15e)]),'after':redactFailureValue(_0x130b62[_0x2ea830(0x136)]),'plannedActions':_0x130b62['plannedActions']?.['map'](_0x5a6e6a=>({..._0x5a6e6a,'body':redactFailureRecord(_0x5a6e6a[_0x2ea830(0x145)])})),'succeeded':_0x130b62[_0x2ea830(0x18e)][_0x2ea830(0x137)](redactFailureRecord),'failed':_0x130b62[_0x2ea830(0x16b)]['map'](redactFailureRecord),'verification':_0x130b62[_0x2ea830(0x178)]?redactFailureRecord(_0x130b62['verification']):undefined};}function redactFailureRecord(_0x2a4004){return redactFailureValue(_0x2a4004);}function redactFailureValue(_0x400ab5,_0x5d071d=''){const _0x13bb3a=a130_0x173092,_0x189988=_0x5d071d[_0x13bb3a(0x188)]()[_0x13bb3a(0x156)](/[^a-z0-9]/g,'');if([_0x13bb3a(0x1b0),_0x13bb3a(0x1b5),_0x13bb3a(0x198),_0x13bb3a(0x149)]['includes'](_0x189988))return _0x13bb3a(0x187);if(Array[_0x13bb3a(0x1aa)](_0x400ab5))return _0x400ab5[_0x13bb3a(0x137)](_0x3d9862=>redactFailureValue(_0x3d9862));if(_0x400ab5&&typeof _0x400ab5===_0x13bb3a(0x13d))return Object[_0x13bb3a(0x151)](Object['entries'](_0x400ab5)[_0x13bb3a(0x137)](([_0xd89be9,_0x145c62])=>[_0xd89be9,redactFailureValue(_0x145c62,_0xd89be9)]));return _0x400ab5;}function a130_0x399a(){const _0x14ab30=['2111285wAgLCI','byId','type','object','fact','currentSnapshotHash','data','sort','hasOwnProperty','parent','length','body','appCode','How\x20to\x20open\x20the\x20external\x20website','Run\x20','rawerror','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','\x20failed\x20final\x20verification.','rabetbase\x20menu\x20list\x20--appcode\x20','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','selector','fromEntries','1288041LhVqjY','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','<platform-generated>','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','replace','4Rpgkxj','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','menu_permission_denied','16vowusB','\x20after\x20response\x20loss.','before','rawFlags','menu_url_https_required','menu','11TenKpp','URL','\x20--format\x20compress','trim','lookupCommand','\x20with\x20','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','/smartapi/menu/create','parent-id','failed','expectedSnapshotHash','Recovered\x20created\x20external\x20menu\x20','username','menu_url_credentials_forbidden','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','plan','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','menu_sort_overflow','menu_create_recovery_required','visible','menu_create_response_invalid','filter','verification','1420308gKzAGG','create-response-validation','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','path','Create\x20an\x20external\x20website\x20link\x20menu','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','Recovered\x20menu\x20','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','Provide\x20an\x20HTTPS\x20URL.','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','flagMissing','str','28030020XkiQVi','<redacted>','toLowerCase','create-menu','parentId','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','afterPlan','add','succeeded','303592hCziiQ','539190jYCznt','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','write','create\x20external\x20menu','isSafeInteger','POST','Would\x20create\x20external\x20website\x20link\x20menu\x20','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','readbackerror','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','77etwPAp','createdId','open-mode','\x27\x5c\x27\x27','471920zGbwXQ','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','menu\x20list','menu_mutation_failed','external-link-create','hash','embedded','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','menu_not_found','link','Menu\x20','label','isArray','has','iframe','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','expectedPath','visibility','cause','boolean','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','menu_verification_failed','string','causemessage','Menu\x20label','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','cookie','menu_open_mode_invalid','stringify','\x20has\x20an\x20unexpected\x20','code','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','pre-write-recheck','create','password','Created\x20menu\x20','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','url','after','map','get','protocol'];a130_0x399a=function(){return _0x14ab30;};return a130_0x399a();}function safeMenuAddError(_0x4e2a03){const _0x141bea=a130_0x173092,_0x2766be=_0x4e2a03 instanceof CliError?_0x4e2a03[_0x141bea(0x1bc)]:_0x141bea(0x1a1);switch(_0x2766be){case'menu_state_drift':return menuError(_0x2766be,_0x141bea(0x1c2),_0x141bea(0x158));case _0x141bea(0x15b):return menuError(_0x2766be,_0x141bea(0x14f),_0x141bea(0x19f));case _0x141bea(0x176):return menuError(_0x2766be,_0x141bea(0x1b2),_0x141bea(0x17b));case'menu_verification_failed':return menuError(_0x2766be,_0x141bea(0x168),_0x141bea(0x17b));case _0x141bea(0x174):return menuError(_0x2766be,_0x141bea(0x172),_0x141bea(0x14d));case _0x141bea(0x1a1):case _0x141bea(0x1a6):case'menu_parent_not_folder':case'menu_sort_invalid':case _0x141bea(0x173):return menuError(_0x2766be,'External\x20menu\x20creation\x20failed.',_0x141bea(0x170));default:return menuError('menu_mutation_failed','External\x20menu\x20creation\x20failed.',_0x141bea(0x170));}}function getFailureRecord(_0x19eda4){const _0x17eccd=a130_0x173092;if(!(_0x19eda4 instanceof Error)||!(_0x17eccd(0x140)in _0x19eda4))return undefined;const _0x370729=_0x19eda4[_0x17eccd(0x140)];if(!_0x370729||typeof _0x370729!=='object')return undefined;const _0x138af3=_0x370729[_0x17eccd(0x16b)];if(!Array[_0x17eccd(0x1aa)](_0x138af3)||!_0x138af3[0x0]||typeof _0x138af3[0x0]!==_0x17eccd(0x13d))return undefined;return _0x138af3[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a118_0x4de305=a118_0x8cfa;(function(_0x411311,_0x517cc0){const _0x43e48c=a118_0x8cfa,_0x7fae70=_0x411311();while(!![]){try{const _0x1964fc=-parseInt(_0x43e48c(0x113))/0x1*(-parseInt(_0x43e48c(0x11b))/0x2)+-parseInt(_0x43e48c(0x12e))/0x3*(parseInt(_0x43e48c(0x14f))/0x4)+-parseInt(_0x43e48c(0x122))/0x5*(-parseInt(_0x43e48c(0x134))/0x6)+parseInt(_0x43e48c(0x120))/0x7*(-parseInt(_0x43e48c(0x155))/0x8)+parseInt(_0x43e48c(0x13a))/0x9+parseInt(_0x43e48c(0x127))/0xa+-parseInt(_0x43e48c(0x11e))/0xb;if(_0x1964fc===_0x517cc0)break;else _0x7fae70['push'](_0x7fae70['shift']());}catch(_0x338404){_0x7fae70['push'](_0x7fae70['shift']());}}}(a118_0x1dd8,0xc5c77));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a118_0x4de305(0x140),'path':a118_0x4de305(0x138)}];export const menuExternalLinkUpdate={'service':a118_0x4de305(0x11d),'command':a118_0x4de305(0x156),'description':'Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','risk':a118_0x4de305(0x128),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a118_0x4de305(0x116),'type':'string','required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a118_0x4de305(0x141),'type':a118_0x4de305(0x13f),'required':!![],'description':a118_0x4de305(0x14e)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x175cf3){validateInput(_0x175cf3);},async 'dryRun'(_0x5207bd){const _0x3869eb=a118_0x4de305;validateInput(_0x5207bd);const _0x4ad3d0=await buildPlan(_0x5207bd,!![]);return menuDryRunResult(_0x4ad3d0[_0x3869eb(0x136)],{'method':_0x3869eb(0x140),'url':_0x3869eb(0x138),'body':_0x4ad3d0[_0x3869eb(0x132)],'description':'Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20'+_0x4ad3d0['body']['id']+'.'});},async 'execute'(_0x13bb42){const _0x2c6213=a118_0x4de305;validateInput(_0x13bb42);const _0x23e9a3=await buildPlan(_0x13bb42,![]),{plan:_0x44c158,body:_0x5d4c1e,before:_0x23d867,noChanges:_0x2486fd}=_0x23e9a3,_0x2035e1=_0x5d4c1e['id'];if(_0x2486fd)return updateSuccess(_0x44c158,_0x23e9a3['snapshot'],_0x23d867,!![],![]);await recheckMutationSnapshot(_0x13bb42,_0x44c158,'update\x20external\x20menu\x20URL',_0x2035e1);try{await updateMenuEntity(_0x13bb42[_0x2c6213(0x157)],_0x13bb42[_0x2c6213(0x151)],{'id':_0x5d4c1e['id'],'url':_0x5d4c1e[_0x2c6213(0x116)]});}catch(_0x13c3ba){const _0x286639=mapMenuApiError(_0x13c3ba,_0x2c6213(0x15c),_0x2035e1);if(isMenuResponseLoss(_0x13c3ba)&&_0x286639[_0x2c6213(0x160)]!==_0x2c6213(0x133))return recoverAfterResponseLoss(_0x13bb42,_0x23e9a3);throw menuFailure(_0x286639,_0x44c158,{'stage':_0x2c6213(0x15a),'failed':{'id':_0x2035e1},'warnings':[_0x2c6213(0x14a)],'verification':{'status':_0x2c6213(0x143),'targetId':_0x2035e1,'lookupCommand':buildLookupCommand(_0x13bb42[_0x2c6213(0x157)])}});}let _0x5f3612,_0x56029f;try{_0x5f3612=await fetchMenuSnapshot(_0x13bb42['appCode'],_0x13bb42['cookie']),_0x56029f=requireMenu(_0x5f3612,_0x2035e1),verifyUpdatedFact(_0x23d867,_0x56029f,_0x5d4c1e['url']);}catch(_0x3c85bf){const _0x28ca25=describeMenuErrorCause(_0x3c85bf,_0x2c6213(0x15f),_0x2035e1),_0x1863fd=asVerificationError(_0x3c85bf,_0x2c6213(0x115)+_0x2035e1+_0x2c6213(0x13c));throw menuFailure(_0x1863fd,_0x44c158,{'stage':_0x2c6213(0x131),'succeeded':[{'id':_0x2035e1,'updateRequested':!![]}],'failed':{'id':_0x2035e1,'requestedStateConfirmed':![],..._0x28ca25},'warnings':['The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x2c6213(0x143),'targetId':_0x2035e1,'lookupCommand':buildLookupCommand(_0x13bb42[_0x2c6213(0x157)])}});}return updateSuccess(_0x44c158,_0x5f3612,_0x56029f,![],![]);}};function validateInput(_0x5308ab){const _0x4dd7fd=a118_0x4de305;validateExactId(_0x5308ab),requiredUrl(_0x5308ab,'url'),requiredExpectedUrl(_0x5308ab),parseParentId(_0x5308ab,_0x4dd7fd(0x121),{'required':!![]});}function requiredUrl(_0x2fe32d,_0x17af25){const _0x310172=a118_0x4de305;if(!hasFlag(_0x2fe32d,_0x17af25)||!_0x2fe32d[_0x310172(0x12a)](_0x17af25)[_0x310172(0x13d)]())throw CliErrors[_0x310172(0x139)](_0x17af25);return validateExternalMenuUrl(_0x2fe32d[_0x310172(0x12a)](_0x17af25));}function requiredExpectedUrl(_0x3fd572){const _0x42c81c=a118_0x4de305;if(!hasFlag(_0x3fd572,_0x42c81c(0x141))||!_0x3fd572[_0x42c81c(0x12a)](_0x42c81c(0x141))[_0x42c81c(0x13d)]())throw CliErrors[_0x42c81c(0x139)]('expect-url');return _0x3fd572[_0x42c81c(0x12a)](_0x42c81c(0x141))['trim']();}async function buildPlan(_0x4d00e2,_0x3d477b){const _0x4dc329=a118_0x4de305,_0x13987b=validateExactId(_0x4d00e2),_0x1724f5=requiredUrl(_0x4d00e2,_0x4dc329(0x116)),_0x548c87=requiredExpectedUrl(_0x4d00e2),_0x2af919=parseParentId(_0x4d00e2,_0x4dc329(0x121),{'required':!![]}),_0x654bd7=await fetchMutationSnapshot(_0x4d00e2,_0x4dc329(0x15c),_0x13987b),_0x185384=requireMenu(_0x654bd7,_0x13987b);assertExternalLinkLeaf(_0x185384);if(_0x185384[_0x4dc329(0x14b)]!==_0x2af919)throw menuError(_0x4dc329(0x146),_0x4dc329(0x145)+_0x13987b+_0x4dc329(0x119)+formatParent(_0x2af919)+_0x4dc329(0x144)+formatParent(_0x185384['parentId'])+'.',_0x4dc329(0x15b));const _0x333e72=_0x185384[_0x4dc329(0x116)]===_0x1724f5;if(!_0x333e72&&_0x185384[_0x4dc329(0x116)]!==_0x548c87)throw menuError(_0x4dc329(0x146),_0x4dc329(0x145)+_0x13987b+_0x4dc329(0x11f),_0x4dc329(0x11c));const _0x56f238={'id':_0x13987b,'appCode':_0x4d00e2[_0x4dc329(0x157)],'url':_0x1724f5},_0x539b31={..._0x185384,'url':_0x1724f5};return{'body':_0x56f238,'before':_0x185384,'noChanges':_0x333e72,'snapshot':_0x654bd7,'plan':mutationResult({'operation':_0x4dc329(0x156),'selector':{'id':_0x13987b},'before':_0x185384,'after':_0x539b31,'dryRun':_0x3d477b,'backend':[...BACKEND],'plannedActions':_0x333e72?[]:[{'stage':_0x4dc329(0x15e),'method':_0x4dc329(0x140),'path':_0x4dc329(0x138),'body':_0x56f238}],'snapshotHash':_0x654bd7[_0x4dc329(0x12f)],'warnings':_0x333e72?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function a118_0x8cfa(_0x10d022,_0x5a1dc1){_0x10d022=_0x10d022-0x112;const _0x1dd8ef=a118_0x1dd8();let _0x8cfa3c=_0x1dd8ef[_0x10d022];return _0x8cfa3c;}function assertExternalLinkLeaf(_0xbb860){const _0x3a1f0d=a118_0x4de305;if(_0xbb860[_0x3a1f0d(0x114)]!=='iframe'&&_0xbb860[_0x3a1f0d(0x114)]!==_0x3a1f0d(0x13b))throw menuError(_0x3a1f0d(0x112),_0x3a1f0d(0x145)+_0xbb860['id']+'\x20is\x20type\x20\x22'+(_0xbb860['type']||_0x3a1f0d(0x14c))+_0x3a1f0d(0x135),_0x3a1f0d(0x125));if(_0xbb860[_0x3a1f0d(0x12c)]!==0x0)throw menuError(_0x3a1f0d(0x149),'Menu\x20'+_0xbb860['id']+'\x20has\x20'+_0xbb860[_0x3a1f0d(0x12c)]+_0x3a1f0d(0x152),_0x3a1f0d(0x150));if(!_0xbb860['path'][_0x3a1f0d(0x13d)]())throw menuError(_0x3a1f0d(0x161),_0x3a1f0d(0x145)+_0xbb860['id']+'\x20has\x20an\x20empty\x20platform\x20path.','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x3f399e,_0x498ec4,_0x18d509){const _0x2ab2b2=a118_0x4de305;assertExternalLinkLeaf(_0x498ec4);const _0x31dbdf=[['id',_0x498ec4['id'],_0x3f399e['id']],[_0x2ab2b2(0x159),_0x498ec4[_0x2ab2b2(0x159)],_0x3f399e['label']],[_0x2ab2b2(0x114),_0x498ec4[_0x2ab2b2(0x114)],_0x3f399e['type']],[_0x2ab2b2(0x153),_0x498ec4['path'],_0x3f399e[_0x2ab2b2(0x153)]],[_0x2ab2b2(0x14b),_0x498ec4[_0x2ab2b2(0x14b)],_0x3f399e['parentId']],[_0x2ab2b2(0x11a),_0x498ec4['sort'],_0x3f399e[_0x2ab2b2(0x11a)]],[_0x2ab2b2(0x117),_0x498ec4[_0x2ab2b2(0x117)],_0x3f399e['visible']]];for(const [_0x85cdfe,_0x14be98,_0x3813fc]of _0x31dbdf){assertVerified(_0x14be98===_0x3813fc,_0x2ab2b2(0x145)+_0x3f399e['id']+'\x20'+_0x85cdfe+_0x2ab2b2(0x15d));}assertVerified(_0x498ec4[_0x2ab2b2(0x116)]===_0x18d509,'Menu\x20'+_0x3f399e['id']+_0x2ab2b2(0x137));}function updateSuccess(_0x5b7d83,_0x196b39,_0x1fedeb,_0x434ccc,_0x2e24e2){const _0x444284=a118_0x4de305,_0xcd94ac=_0x1fedeb['id'],_0x7670=mutationResult({..._0x5b7d83,'after':_0x1fedeb,'dryRun':![],'succeeded':[{'id':_0xcd94ac,'updated':!_0x434ccc,'skipped':_0x434ccc,'recovered':_0x2e24e2}],'verification':{'checkedBy':_0x444284(0x148),'snapshotHash':_0x196b39['hash'],'targetId':_0xcd94ac,'matchesRequestedState':!![],'recovered':_0x2e24e2}});return{'ok':!![],'message':_0x2e24e2?_0x444284(0x130)+_0xcd94ac+'.':_0x434ccc?_0x444284(0x145)+_0xcd94ac+_0x444284(0x129):'Updated\x20external\x20URL\x20for\x20menu\x20'+_0xcd94ac+'.','data':{..._0x7670,'recovered':_0x2e24e2}};}function a118_0x1dd8(){const _0x313f04=['\x20could\x20not\x20be\x20verified\x20safely','string','POST','expect-url','update-recovery','failed',',\x20current\x20','Menu\x20','menu_state_drift','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','menu\x20list','menu_external_link_not_leaf','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','parentId','unknown','Run\x20','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','180376xrrZHN','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','cookie','\x20direct\x20child\x20menu(s).','path','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','8QwFLHs','external-link-update','appCode','Response\x20was\x20lost\x20and\x20menu\x20','label','update','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','update\x20external\x20menu\x20URL','\x20changed\x20during\x20the\x20URL-only\x20update.','update-external-link-url','verify\x20external\x20menu\x20URL\x20update','code','menu_external_link_path_missing','menu_external_link_type_required','106558oiqzql','type','Update\x20request\x20for\x20menu\x20','url','visible','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','\x20parent\x20changed:\x20expected\x20','sort','28QfTfBg','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','menu','25239687PAExJx','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','9036860Vdjxpl','expect-parent-id','5CdVjAO','readbackFailed','requestedUrlObserved','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','byId','9306430fIXGdq','write','\x20already\x20matches\x20the\x20requested\x20URL.','str','rabetbase\x20menu\x20list\x20--appcode\x20','childrenCount','menu_update_recovery_required','3DUJLZF','hash','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','verification','body','menu_permission_denied','7802442XIewHD','\x22,\x20not\x20iframe\x20or\x20link.','plan','\x20URL\x20update\x20did\x20not\x20take\x20effect.','/smartapi/menu/update','flagMissing','6460488ybcVXF','link','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','trim'];a118_0x1dd8=function(){return _0x313f04;};return a118_0x1dd8();}async function recoverAfterResponseLoss(_0x4a4f49,_0x34cbac){const _0x12e8da=a118_0x4de305,{plan:_0x1747d8,before:_0x2b306b,body:_0x5a1304}=_0x34cbac;let _0x94a73e;try{_0x94a73e=await fetchMenuSnapshot(_0x4a4f49['appCode'],_0x4a4f49['cookie']);}catch{throw recoveryRequired(_0x1747d8,_0x4a4f49[_0x12e8da(0x157)],{'id':_0x5a1304['id'],'readbackFailed':!![]});}const _0x386f1e=_0x94a73e[_0x12e8da(0x126)]['get'](_0x5a1304['id']);if(!_0x386f1e||_0x386f1e[_0x12e8da(0x116)]!==_0x5a1304[_0x12e8da(0x116)])throw recoveryRequired(_0x1747d8,_0x4a4f49['appCode'],{'id':_0x5a1304['id'],'requestedUrlObserved':![],'after':_0x386f1e??null});try{verifyUpdatedFact(_0x2b306b,_0x386f1e,_0x5a1304[_0x12e8da(0x116)]);}catch(_0x4f8361){const _0x4bc446=asVerificationError(_0x4f8361,_0x12e8da(0x158)+_0x5a1304['id']+_0x12e8da(0x13e));throw menuFailure(_0x4bc446,_0x1747d8,{'stage':_0x12e8da(0x142),'succeeded':[{'id':_0x5a1304['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x5a1304['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x386f1e,'warnings':[_0x12e8da(0x154)],'verification':{'status':_0x12e8da(0x143),'targetId':_0x5a1304['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x4a4f49[_0x12e8da(0x157)])}});}return updateSuccess(_0x1747d8,_0x94a73e,_0x386f1e,![],!![]);}function recoveryRequired(_0x43cd71,_0x4d7084,_0x40d7c4){const _0xe58d16=a118_0x4de305,_0x29aba5=menuError(_0xe58d16(0x12d),'The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0xe58d16(0x14d)+buildLookupCommand(_0x4d7084)+_0xe58d16(0x118));return menuFailure(_0x29aba5,_0x43cd71,{'stage':_0xe58d16(0x142),'failed':{'id':_0x40d7c4['id'],..._0x40d7c4[_0xe58d16(0x124)]===undefined?{}:{'requestedUrlObserved':_0x40d7c4['requestedUrlObserved']},..._0x40d7c4[_0xe58d16(0x123)]?{'readbackFailed':!![]}:{}},'after':_0x40d7c4['after'],'warnings':[_0xe58d16(0x147)],'verification':{'status':_0xe58d16(0x143),'targetId':_0x40d7c4['id'],..._0x40d7c4[_0xe58d16(0x124)]===undefined?{}:{'requestedUrlObserved':_0x40d7c4[_0xe58d16(0x124)]},..._0x40d7c4['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x4d7084)}});}function buildLookupCommand(_0x357426){const _0x3cfede=a118_0x4de305,_0x2adfb6='\x27'+_0x357426['replace'](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x3cfede(0x12b)+_0x2adfb6+'\x20--format\x20compress';}
|
|
1
|
+
function a131_0x34b0(){const _0x599ccf=['743401LBLJjd','code','\x27\x5c\x27\x27','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','sort','menu_update_recovery_required','\x20already\x20matches\x20the\x20requested\x20URL.','\x20has\x20an\x20empty\x20platform\x20path.','Updated\x20external\x20URL\x20for\x20menu\x20','string','POST','iframe','\x20URL\x20update\x20did\x20not\x20take\x20effect.','update\x20external\x20menu\x20URL','update-external-link-url','Menu\x20','visible','label','8467380OodUGB','trim','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','link','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','cookie','childrenCount','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','688GGMPAG','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','parentId','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','write','verify\x20external\x20menu\x20URL\x20update','menu_state_drift','menu_external_link_not_leaf','hash','verification','\x22,\x20not\x20iframe\x20or\x20link.','\x20has\x20','failed','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','/smartapi/menu/update','605124hlzQMr','unknown','Response\x20was\x20lost\x20and\x20menu\x20','external-link-update','update-recovery','3213055pUrmeU','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','\x20direct\x20child\x20menu(s).','2020476adDnLt','update','expect-url','7427AJvoqy','expect-parent-id','url','path','flagMissing','menu_external_link_type_required','type','str','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','menu','4jOyDVy','2308482ScpuTt',',\x20current\x20','appCode','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','2XJdDSy','Run\x20','\x20changed\x20during\x20the\x20URL-only\x20update.','byId','plan','after','New\x20external\x20HTTPS\x20URL','body','replace','rabetbase\x20menu\x20list\x20--appcode\x20','menu_permission_denied'];a131_0x34b0=function(){return _0x599ccf;};return a131_0x34b0();}const a131_0xcfc2e0=a131_0x15d6;(function(_0x154eb2,_0x2107b3){const _0x4f14f8=a131_0x15d6,_0x2e7924=_0x154eb2();while(!![]){try{const _0x22bfbe=-parseInt(_0x4f14f8(0x1d3))/0x1*(parseInt(_0x4f14f8(0x217))/0x2)+-parseInt(_0x4f14f8(0x205))/0x3*(-parseInt(_0x4f14f8(0x212))/0x4)+-parseInt(_0x4f14f8(0x202))/0x5+parseInt(_0x4f14f8(0x213))/0x6+-parseInt(_0x4f14f8(0x208))/0x7*(-parseInt(_0x4f14f8(0x1ed))/0x8)+parseInt(_0x4f14f8(0x1fd))/0x9+parseInt(_0x4f14f8(0x1e5))/0xa;if(_0x22bfbe===_0x2107b3)break;else _0x2e7924['push'](_0x2e7924['shift']());}catch(_0x371a95){_0x2e7924['push'](_0x2e7924['shift']());}}}(a131_0x34b0,0xa5647));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a131_0xcfc2e0(0x1dd),'path':a131_0xcfc2e0(0x1fc)}];export const menuExternalLinkUpdate={'service':a131_0xcfc2e0(0x211),'command':a131_0xcfc2e0(0x200),'description':a131_0xcfc2e0(0x1e7),'risk':a131_0xcfc2e0(0x1f2),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'url','type':a131_0xcfc2e0(0x1dc),'required':!![],'description':a131_0xcfc2e0(0x21d)},{'name':a131_0xcfc2e0(0x207),'type':a131_0xcfc2e0(0x1dc),'required':!![],'description':a131_0xcfc2e0(0x203)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0xc30e27){validateInput(_0xc30e27);},async 'dryRun'(_0x5739ae){const _0x114c2a=a131_0xcfc2e0;validateInput(_0x5739ae);const _0x364b33=await buildPlan(_0x5739ae,!![]);return menuDryRunResult(_0x364b33[_0x114c2a(0x21b)],{'method':_0x114c2a(0x1dd),'url':'/smartapi/menu/update','body':_0x364b33[_0x114c2a(0x21e)],'description':'Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20'+_0x364b33[_0x114c2a(0x21e)]['id']+'.'});},async 'execute'(_0x168fe1){const _0x3827c8=a131_0xcfc2e0;validateInput(_0x168fe1);const _0x2352b9=await buildPlan(_0x168fe1,![]),{plan:_0x3d1c8b,body:_0x279ec1,before:_0x7f2949,noChanges:_0x3ae83c}=_0x2352b9,_0xdb54c6=_0x279ec1['id'];if(_0x3ae83c)return updateSuccess(_0x3d1c8b,_0x2352b9['snapshot'],_0x7f2949,!![],![]);await recheckMutationSnapshot(_0x168fe1,_0x3d1c8b,_0x3827c8(0x1e0),_0xdb54c6);try{await updateMenuEntity(_0x168fe1[_0x3827c8(0x215)],_0x168fe1['cookie'],{'id':_0x279ec1['id'],'url':_0x279ec1[_0x3827c8(0x20a)]});}catch(_0x306f27){const _0x7159bf=mapMenuApiError(_0x306f27,'update\x20external\x20menu\x20URL',_0xdb54c6);if(isMenuResponseLoss(_0x306f27)&&_0x7159bf[_0x3827c8(0x1d4)]!==_0x3827c8(0x1d2))return recoverAfterResponseLoss(_0x168fe1,_0x2352b9);throw menuFailure(_0x7159bf,_0x3d1c8b,{'stage':_0x3827c8(0x206),'failed':{'id':_0xdb54c6},'warnings':[_0x3827c8(0x1e9)],'verification':{'status':_0x3827c8(0x1fa),'targetId':_0xdb54c6,'lookupCommand':buildLookupCommand(_0x168fe1[_0x3827c8(0x215)])}});}let _0x157350,_0xcc791a;try{_0x157350=await fetchMenuSnapshot(_0x168fe1[_0x3827c8(0x215)],_0x168fe1['cookie']),_0xcc791a=requireMenu(_0x157350,_0xdb54c6),verifyUpdatedFact(_0x7f2949,_0xcc791a,_0x279ec1[_0x3827c8(0x20a)]);}catch(_0x45dd5b){const _0x2bde91=describeMenuErrorCause(_0x45dd5b,_0x3827c8(0x1f3),_0xdb54c6),_0x3c57ef=asVerificationError(_0x45dd5b,'Update\x20request\x20for\x20menu\x20'+_0xdb54c6+_0x3827c8(0x1d6));throw menuFailure(_0x3c57ef,_0x3d1c8b,{'stage':_0x3827c8(0x1f7),'succeeded':[{'id':_0xdb54c6,'updateRequested':!![]}],'failed':{'id':_0xdb54c6,'requestedStateConfirmed':![],..._0x2bde91},'warnings':['The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x3827c8(0x1fa),'targetId':_0xdb54c6,'lookupCommand':buildLookupCommand(_0x168fe1[_0x3827c8(0x215)])}});}return updateSuccess(_0x3d1c8b,_0x157350,_0xcc791a,![],![]);}};function validateInput(_0x5b4ed9){const _0x2a1d10=a131_0xcfc2e0;validateExactId(_0x5b4ed9),requiredUrl(_0x5b4ed9,_0x2a1d10(0x20a)),requiredExpectedUrl(_0x5b4ed9),parseParentId(_0x5b4ed9,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x48d6aa,_0x2ab3f5){const _0x168d6b=a131_0xcfc2e0;if(!hasFlag(_0x48d6aa,_0x2ab3f5)||!_0x48d6aa[_0x168d6b(0x20f)](_0x2ab3f5)['trim']())throw CliErrors[_0x168d6b(0x20c)](_0x2ab3f5);return validateExternalMenuUrl(_0x48d6aa['str'](_0x2ab3f5));}function a131_0x15d6(_0x575bc0,_0x3c1531){_0x575bc0=_0x575bc0-0x1d0;const _0x34b0f2=a131_0x34b0();let _0x15d622=_0x34b0f2[_0x575bc0];return _0x15d622;}function requiredExpectedUrl(_0x15798d){const _0x3da9d8=a131_0xcfc2e0;if(!hasFlag(_0x15798d,_0x3da9d8(0x207))||!_0x15798d[_0x3da9d8(0x20f)]('expect-url')[_0x3da9d8(0x1e6)]())throw CliErrors[_0x3da9d8(0x20c)](_0x3da9d8(0x207));return _0x15798d[_0x3da9d8(0x20f)]('expect-url')[_0x3da9d8(0x1e6)]();}async function buildPlan(_0x1517ab,_0xd2bc29){const _0x34adeb=a131_0xcfc2e0,_0x3bef6e=validateExactId(_0x1517ab),_0x491c6c=requiredUrl(_0x1517ab,_0x34adeb(0x20a)),_0x5dab5e=requiredExpectedUrl(_0x1517ab),_0x4c4704=parseParentId(_0x1517ab,_0x34adeb(0x209),{'required':!![]}),_0x774316=await fetchMutationSnapshot(_0x1517ab,_0x34adeb(0x1e0),_0x3bef6e),_0xcd8b03=requireMenu(_0x774316,_0x3bef6e);assertExternalLinkLeaf(_0xcd8b03);if(_0xcd8b03[_0x34adeb(0x1f0)]!==_0x4c4704)throw menuError(_0x34adeb(0x1f4),_0x34adeb(0x1e2)+_0x3bef6e+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x4c4704)+_0x34adeb(0x214)+formatParent(_0xcd8b03[_0x34adeb(0x1f0)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x5ccfab=_0xcd8b03['url']===_0x491c6c;if(!_0x5ccfab&&_0xcd8b03[_0x34adeb(0x20a)]!==_0x5dab5e)throw menuError(_0x34adeb(0x1f4),_0x34adeb(0x1e2)+_0x3bef6e+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.',_0x34adeb(0x1fb));const _0x179b9a={'id':_0x3bef6e,'appCode':_0x1517ab[_0x34adeb(0x215)],'url':_0x491c6c},_0x1f555e={..._0xcd8b03,'url':_0x491c6c};return{'body':_0x179b9a,'before':_0xcd8b03,'noChanges':_0x5ccfab,'snapshot':_0x774316,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0x3bef6e},'before':_0xcd8b03,'after':_0x1f555e,'dryRun':_0xd2bc29,'backend':[...BACKEND],'plannedActions':_0x5ccfab?[]:[{'stage':_0x34adeb(0x1e1),'method':_0x34adeb(0x1dd),'path':'/smartapi/menu/update','body':_0x179b9a}],'snapshotHash':_0x774316[_0x34adeb(0x1f6)],'warnings':_0x5ccfab?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function assertExternalLinkLeaf(_0x5ccc56){const _0x1a9b6a=a131_0xcfc2e0;if(_0x5ccc56['type']!==_0x1a9b6a(0x1de)&&_0x5ccc56[_0x1a9b6a(0x20e)]!==_0x1a9b6a(0x1e8))throw menuError(_0x1a9b6a(0x20d),'Menu\x20'+_0x5ccc56['id']+'\x20is\x20type\x20\x22'+(_0x5ccc56['type']||_0x1a9b6a(0x1fe))+_0x1a9b6a(0x1f8),'Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.');if(_0x5ccc56[_0x1a9b6a(0x1eb)]!==0x0)throw menuError(_0x1a9b6a(0x1f5),_0x1a9b6a(0x1e2)+_0x5ccc56['id']+_0x1a9b6a(0x1f9)+_0x5ccc56[_0x1a9b6a(0x1eb)]+_0x1a9b6a(0x204),_0x1a9b6a(0x1f1));if(!_0x5ccc56[_0x1a9b6a(0x20b)][_0x1a9b6a(0x1e6)]())throw menuError('menu_external_link_path_missing',_0x1a9b6a(0x1e2)+_0x5ccc56['id']+_0x1a9b6a(0x1da),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x4631b8,_0x387e00,_0xf6d307){const _0x2ff0d2=a131_0xcfc2e0;assertExternalLinkLeaf(_0x387e00);const _0x194a98=[['id',_0x387e00['id'],_0x4631b8['id']],['label',_0x387e00[_0x2ff0d2(0x1e4)],_0x4631b8[_0x2ff0d2(0x1e4)]],[_0x2ff0d2(0x20e),_0x387e00[_0x2ff0d2(0x20e)],_0x4631b8[_0x2ff0d2(0x20e)]],[_0x2ff0d2(0x20b),_0x387e00[_0x2ff0d2(0x20b)],_0x4631b8[_0x2ff0d2(0x20b)]],[_0x2ff0d2(0x1f0),_0x387e00[_0x2ff0d2(0x1f0)],_0x4631b8[_0x2ff0d2(0x1f0)]],[_0x2ff0d2(0x1d7),_0x387e00['sort'],_0x4631b8[_0x2ff0d2(0x1d7)]],[_0x2ff0d2(0x1e3),_0x387e00[_0x2ff0d2(0x1e3)],_0x4631b8[_0x2ff0d2(0x1e3)]]];for(const [_0x4e9ac7,_0x5b7d92,_0x4a4a91]of _0x194a98){assertVerified(_0x5b7d92===_0x4a4a91,_0x2ff0d2(0x1e2)+_0x4631b8['id']+'\x20'+_0x4e9ac7+_0x2ff0d2(0x219));}assertVerified(_0x387e00[_0x2ff0d2(0x20a)]===_0xf6d307,'Menu\x20'+_0x4631b8['id']+_0x2ff0d2(0x1df));}function updateSuccess(_0x51bec1,_0x26f1d0,_0x2f9864,_0xdbe128,_0x30bf8d){const _0x2c388d=a131_0xcfc2e0,_0x442636=_0x2f9864['id'],_0x5f183e=mutationResult({..._0x51bec1,'after':_0x2f9864,'dryRun':![],'succeeded':[{'id':_0x442636,'updated':!_0xdbe128,'skipped':_0xdbe128,'recovered':_0x30bf8d}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x26f1d0[_0x2c388d(0x1f6)],'targetId':_0x442636,'matchesRequestedState':!![],'recovered':_0x30bf8d}});return{'ok':!![],'message':_0x30bf8d?_0x2c388d(0x1ef)+_0x442636+'.':_0xdbe128?_0x2c388d(0x1e2)+_0x442636+_0x2c388d(0x1d9):_0x2c388d(0x1db)+_0x442636+'.','data':{..._0x5f183e,'recovered':_0x30bf8d}};}async function recoverAfterResponseLoss(_0x4e6553,_0x407540){const _0x487529=a131_0xcfc2e0,{plan:_0x125d3e,before:_0x57ced9,body:_0x1a166d}=_0x407540;let _0x1f3961;try{_0x1f3961=await fetchMenuSnapshot(_0x4e6553[_0x487529(0x215)],_0x4e6553[_0x487529(0x1ea)]);}catch{throw recoveryRequired(_0x125d3e,_0x4e6553[_0x487529(0x215)],{'id':_0x1a166d['id'],'readbackFailed':!![]});}const _0x3d7300=_0x1f3961[_0x487529(0x21a)]['get'](_0x1a166d['id']);if(!_0x3d7300||_0x3d7300[_0x487529(0x20a)]!==_0x1a166d[_0x487529(0x20a)])throw recoveryRequired(_0x125d3e,_0x4e6553[_0x487529(0x215)],{'id':_0x1a166d['id'],'requestedUrlObserved':![],'after':_0x3d7300??null});try{verifyUpdatedFact(_0x57ced9,_0x3d7300,_0x1a166d[_0x487529(0x20a)]);}catch(_0xcf4033){const _0x563a9d=asVerificationError(_0xcf4033,_0x487529(0x1ff)+_0x1a166d['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0x563a9d,_0x125d3e,{'stage':'update-recovery','succeeded':[{'id':_0x1a166d['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x1a166d['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x3d7300,'warnings':[_0x487529(0x1ec)],'verification':{'status':'failed','targetId':_0x1a166d['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x4e6553[_0x487529(0x215)])}});}return updateSuccess(_0x125d3e,_0x1f3961,_0x3d7300,![],!![]);}function recoveryRequired(_0x14badd,_0x555389,_0x1bd160){const _0x174635=a131_0xcfc2e0,_0x5b7fac=menuError(_0x174635(0x1d8),_0x174635(0x210),_0x174635(0x218)+buildLookupCommand(_0x555389)+_0x174635(0x1ee));return menuFailure(_0x5b7fac,_0x14badd,{'stage':_0x174635(0x201),'failed':{'id':_0x1bd160['id'],..._0x1bd160['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x1bd160['requestedUrlObserved']},..._0x1bd160['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x1bd160[_0x174635(0x21c)],'warnings':[_0x174635(0x216)],'verification':{'status':_0x174635(0x1fa),'targetId':_0x1bd160['id'],..._0x1bd160['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x1bd160['requestedUrlObserved']},..._0x1bd160['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x555389)}});}function buildLookupCommand(_0x5bb932){const _0x133060=a131_0xcfc2e0,_0x298d4c='\x27'+_0x5bb932[_0x133060(0x1d0)](/'/g,_0x133060(0x1d5))+'\x27';return _0x133060(0x1d1)+_0x298d4c+'\x20--format\x20compress';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a119_0x362c04=a119_0x48f0;(function(_0x482511,_0x122b6f){const _0x5ad306=a119_0x48f0,_0x2e5e16=_0x482511();while(!![]){try{const _0x4a4824=parseInt(_0x5ad306(0x171))/0x1*(-parseInt(_0x5ad306(0x186))/0x2)+parseInt(_0x5ad306(0x14a))/0x3*(parseInt(_0x5ad306(0x180))/0x4)+parseInt(_0x5ad306(0x165))/0x5+-parseInt(_0x5ad306(0x169))/0x6*(parseInt(_0x5ad306(0x142))/0x7)+-parseInt(_0x5ad306(0x17f))/0x8+-parseInt(_0x5ad306(0x159))/0x9*(-parseInt(_0x5ad306(0x163))/0xa)+-parseInt(_0x5ad306(0x147))/0xb*(-parseInt(_0x5ad306(0x144))/0xc);if(_0x4a4824===_0x122b6f)break;else _0x2e5e16['push'](_0x2e5e16['shift']());}catch(_0x32739b){_0x2e5e16['push'](_0x2e5e16['shift']());}}}(a119_0x48f3,0x538ed));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';function a119_0x48f0(_0x31c21a,_0xbb9987){_0x31c21a=_0x31c21a-0x13d;const _0x48f3e6=a119_0x48f3();let _0x48f0a2=_0x48f3e6[_0x31c21a];return _0x48f0a2;}import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a119_0x362c04(0x16a)}];export const menuGroupCreate={'service':a119_0x362c04(0x16d),'command':'group-create','description':a119_0x362c04(0x15f),'risk':'write','structuredErrors':!![],'flags':[{'name':a119_0x362c04(0x178),'type':'string','required':!![],'description':a119_0x362c04(0x149)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x52859){validateCreateInput(_0x52859);},async 'dryRun'(_0x2933ed){const _0xe3a670=a119_0x362c04,_0x17a5b3=await buildCreatePlan(_0x2933ed,!![]),_0x9ea056=_0x17a5b3[_0xe3a670(0x143)];return menuDryRunResult(_0x17a5b3,{'method':_0xe3a670(0x152),'url':_0xe3a670(0x16a),'body':{'parentId':toApiParentId(_0x9ea056[_0xe3a670(0x15c)]),'label':_0x9ea056['label'],'type':'folder','visible':!![],'sort':_0x9ea056[_0xe3a670(0x14c)],'extend':{}},'description':_0xe3a670(0x15b)+String(_0x9ea056['label'])+_0xe3a670(0x14e)});},async 'execute'(_0x16928a){const _0x4cf240=a119_0x362c04;validateCreateInput(_0x16928a);const _0x464001=await buildCreatePlan(_0x16928a,![]),_0x206889=_0x464001[_0x4cf240(0x143)];await recheckMutationSnapshot(_0x16928a,_0x464001,_0x4cf240(0x158));let _0xf6a01b;try{_0xf6a01b=await createMenuEntity(_0x16928a[_0x4cf240(0x160)],_0x16928a[_0x4cf240(0x184)],{'parentId':toApiParentId(_0x206889[_0x4cf240(0x15c)]),'label':String(_0x206889['label']),'type':_0x4cf240(0x17b),'visible':!![],'sort':Number(_0x206889[_0x4cf240(0x14c)]),'extend':{}});}catch(_0x1c7f70){const _0x506762=mapMenuApiError(_0x1c7f70,_0x4cf240(0x158));throw menuFailure(_0x506762,_0x464001,{'stage':_0x4cf240(0x176),'failed':{}});}const _0x31c107=Number(_0xf6a01b['id']);if(!Number[_0x4cf240(0x166)](_0x31c107)||_0x31c107<=0x0){const _0x5ba5d6=menuError(_0x4cf240(0x146),_0x4cf240(0x164),_0x4cf240(0x14d));throw menuFailure(_0x5ba5d6,_0x464001,{'stage':_0x4cf240(0x168),'failed':{'createdId':_0xf6a01b['id']??null},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.'],'verification':{'status':_0x4cf240(0x150),'lookupCommand':_0x4cf240(0x167)}});}const _0x4a67f7=typeof _0xf6a01b[_0x4cf240(0x155)]===_0x4cf240(0x16b)?_0xf6a01b[_0x4cf240(0x155)]:'';if(!_0x4a67f7[_0x4cf240(0x16e)]()){const _0x1e35ea=menuError('menu_create_response_invalid',_0x4cf240(0x156)+_0x31c107+_0x4cf240(0x17d),_0x4cf240(0x153));throw menuFailure(_0x1e35ea,_0x464001,{'stage':_0x4cf240(0x168),'succeeded':[{'id':_0x31c107,'created':!![]}],'failed':{'id':_0x31c107,'generatedPathConfirmed':![]},'warnings':[_0x4cf240(0x145)+_0x31c107+_0x4cf240(0x187)],'after':{..._0x206889,'id':_0x31c107,'path':_0x4a67f7},'verification':{'status':_0x4cf240(0x150),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x31c107}});}let _0x4fa636;try{_0x4fa636=await fetchMenuSnapshot(_0x16928a[_0x4cf240(0x160)],_0x16928a[_0x4cf240(0x184)]);}catch(_0x3f0d89){const _0x3e6797=describeMenuErrorCause(_0x3f0d89,'verify\x20folder\x20creation',_0x31c107),_0xc56538=asVerificationError(_0x3f0d89,_0x4cf240(0x145)+_0x31c107+_0x4cf240(0x16f));throw menuFailure(_0xc56538,_0x464001,{'stage':_0x4cf240(0x13d),'succeeded':[{'id':_0x31c107,'created':!![],'path':_0x4a67f7}],'failed':{'id':_0x31c107,'finalFactsConfirmed':![],..._0x3e6797},'warnings':[_0x4cf240(0x145)+_0x31c107+_0x4cf240(0x189)+JSON[_0x4cf240(0x16c)](_0x4a67f7)+_0x4cf240(0x161)],'after':{..._0x206889,'id':_0x31c107,'path':_0x4a67f7},'verification':{'status':_0x4cf240(0x150),'lookupCommand':_0x4cf240(0x167),'targetId':_0x31c107}});}const _0x30fc72=_0x4fa636[_0x4cf240(0x174)][_0x4cf240(0x148)](_0x31c107);let _0x2fd955;try{assertVerified(Boolean(_0x30fc72),_0x4cf240(0x17c)+_0x31c107+_0x4cf240(0x182)),_0x2fd955=_0x30fc72,assertVerified(_0x2fd955[_0x4cf240(0x173)]===_0x4cf240(0x17b),_0x4cf240(0x181)+_0x31c107+'\x20is\x20not\x20type\x20folder.'),assertVerified(_0x2fd955['label']===_0x206889['label'],_0x4cf240(0x17c)+_0x31c107+_0x4cf240(0x170)),assertVerified(_0x2fd955[_0x4cf240(0x155)]===_0x4a67f7&&Boolean(_0x2fd955[_0x4cf240(0x155)][_0x4cf240(0x16e)]()),'Created\x20folder\x20'+_0x31c107+_0x4cf240(0x154)),assertVerified(_0x2fd955[_0x4cf240(0x172)]===!![],_0x4cf240(0x17c)+_0x31c107+'\x20is\x20not\x20visible.'),assertVerified(_0x2fd955['resources']['length']===0x0,_0x4cf240(0x17c)+_0x31c107+_0x4cf240(0x15e)),assertVerified(_0x2fd955[_0x4cf240(0x141)]===0x0,'Created\x20folder\x20'+_0x31c107+_0x4cf240(0x188)),assertVerified(_0x2fd955[_0x4cf240(0x14c)]===_0x206889[_0x4cf240(0x14c)],_0x4cf240(0x17c)+_0x31c107+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0x2fd955[_0x4cf240(0x15c)]===_0x206889[_0x4cf240(0x15c)],'Created\x20folder\x20'+_0x31c107+_0x4cf240(0x15d)+(_0x2fd955['parentId']??_0x4cf240(0x15a))+'.'),assertVerified(_0x2fd955[_0x4cf240(0x140)]==null,_0x4cf240(0x17c)+_0x31c107+_0x4cf240(0x17e));const _0x2e90c8=_0x2fd955[_0x4cf240(0x15c)]==null?undefined:requireFolder(_0x4fa636,_0x2fd955[_0x4cf240(0x15c)]);assertVerified(_0x2fd955[_0x4cf240(0x13f)]===(_0x2e90c8?_0x2e90c8[_0x4cf240(0x13f)]+0x1:0x0),_0x4cf240(0x17c)+_0x31c107+_0x4cf240(0x151));}catch(_0x57f33c){const _0x5cd9b9=describeMenuErrorCause(_0x57f33c,'verify\x20folder\x20creation',_0x31c107),_0x5cd0b2=asVerificationError(_0x57f33c,_0x4cf240(0x145)+_0x31c107+_0x4cf240(0x14b));throw menuFailure(_0x5cd0b2,_0x464001,{'stage':_0x4cf240(0x13d),'succeeded':[{'id':_0x31c107,'created':!![],'path':_0x4a67f7}],'failed':{'id':_0x31c107,'finalFactsConfirmed':![],..._0x5cd9b9},'warnings':[_0x4cf240(0x145)+_0x31c107+_0x4cf240(0x177)],'after':_0x30fc72??{..._0x206889,'id':_0x31c107,'path':_0x4a67f7},'verification':{'status':'failed','lookupCommand':_0x4cf240(0x167),'targetId':_0x31c107}});}const _0x20117c=mutationResult({..._0x464001,'after':_0x2fd955,'dryRun':![],'succeeded':[{'id':_0x31c107,'type':_0x4cf240(0x17b),'path':_0x4a67f7}],'verification':{'checkedBy':_0x4cf240(0x179),'snapshotHash':_0x4fa636['hash'],'folder':!![],'path':_0x4a67f7,'emptyResources':!![]}});return{'ok':!![],'data':_0x20117c,'message':_0x4cf240(0x157)+_0x31c107+'.'};}};function validateCreateInput(_0x3cd7ca){const _0x2fcc52=a119_0x362c04,_0x236dd0=_0x3cd7ca[_0x2fcc52(0x162)](_0x2fcc52(0x178))[_0x2fcc52(0x16e)]();if(!_0x236dd0)throw CliErrors[_0x2fcc52(0x185)](_0x2fcc52(0x178));parseParentId(_0x3cd7ca,_0x2fcc52(0x14f)),validateSort(_0x3cd7ca);}async function buildCreatePlan(_0xfb0464,_0x2b897c){const _0x4a227a=a119_0x362c04,_0x2afcfe=await fetchMutationSnapshot(_0xfb0464,'create\x20folder'),_0x53ac32=parseParentId(_0xfb0464,_0x4a227a(0x14f))??null;if(_0x53ac32!=null)requireFolder(_0x2afcfe,_0x53ac32);const _0x1afc3b=validateSort(_0xfb0464),_0x2a832b=_0x1afc3b??nextSiblingSort(_0x2afcfe,_0x53ac32,_0x4a227a(0x17b)),_0x142ee7=_0xfb0464[_0x4a227a(0x162)](_0x4a227a(0x178))[_0x4a227a(0x16e)]();return mutationResult({'operation':'group-create','selector':{'label':_0x142ee7,'parentId':_0x53ac32},'before':null,'after':{'id':null,'parentId':_0x53ac32,'label':_0x142ee7,'path':_0x4a227a(0x183),'type':_0x4a227a(0x17b),'visible':!![],'sort':_0x2a832b,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x2b897c,'backend':[...BACKEND],'plannedActions':[{'stage':_0x4a227a(0x13e),'method':_0x4a227a(0x152),'path':_0x4a227a(0x16a),'body':{'parentId':toApiParentId(_0x53ac32),'label':_0x142ee7,'type':_0x4a227a(0x17b),'visible':!![],'sort':_0x2a832b,'extend':{}}}],'snapshotHash':_0x2afcfe[_0x4a227a(0x175)],'warnings':[_0x4a227a(0x17a)]});}function a119_0x48f3(){const _0x361d21=['create','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','label','menu\x20list','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','folder','Created\x20folder\x20','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','\x20unexpectedly\x20owns\x20a\x20page.','4336560cCdahz','4196VLHhVc','Created\x20menu\x20','\x20is\x20missing\x20from\x20menu\x20list.','<platform-generated>','cookie','flagMissing','544086CBxwKM','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','\x20is\x20not\x20empty.','\x20may\x20exist\x20online\x20at\x20path\x20','verification','create-folder','depth','pageId','childrenCount','14EhiZcr','after','5158128UNOjzQ','Folder\x20','menu_create_response_invalid','11dwtfkO','get','Folder\x20label','813ZHDYsD','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','sort','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x22\x20with\x20a\x20platform-generated\x20path.','parent-id','failed','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','POST','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','path','Menu\x20create\x20response\x20for\x20folder\x20','Created\x20menu\x20folder\x20','create\x20folder','29979XOSHZZ','root','Would\x20create\x20empty\x20folder\x20\x22','parentId','\x20has\x20unexpected\x20parent\x20','\x20has\x20resources.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','appCode',';\x20verify\x20it\x20before\x20retrying.','str','290uHhmOi','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','1818560LiAWPo','isSafeInteger','rabetbase\x20menu\x20list\x20--format\x20json','create-response-validation','54204owGNfG','/smartapi/menu/create','string','stringify','menu','trim','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','\x20has\x20an\x20unexpected\x20label.','1FihhrZ','visible','type','byId','hash'];a119_0x48f3=function(){return _0x361d21;};return a119_0x48f3();}
|
|
1
|
+
const a132_0x62770a=a132_0x514e;(function(_0x522c0e,_0x1c5dc8){const _0x4c0406=a132_0x514e,_0x25acb4=_0x522c0e();while(!![]){try{const _0x3b44bb=-parseInt(_0x4c0406(0x170))/0x1+-parseInt(_0x4c0406(0x156))/0x2+-parseInt(_0x4c0406(0x148))/0x3+-parseInt(_0x4c0406(0x14b))/0x4*(-parseInt(_0x4c0406(0x15b))/0x5)+parseInt(_0x4c0406(0x16c))/0x6*(-parseInt(_0x4c0406(0x17d))/0x7)+-parseInt(_0x4c0406(0x161))/0x8+parseInt(_0x4c0406(0x14d))/0x9;if(_0x3b44bb===_0x1c5dc8)break;else _0x25acb4['push'](_0x25acb4['shift']());}catch(_0x2a2459){_0x25acb4['push'](_0x25acb4['shift']());}}}(a132_0xd429,0x8e30b));function a132_0x514e(_0x3dcf63,_0x2cd80f){_0x3dcf63=_0x3dcf63-0x136;const _0xd429cf=a132_0xd429();let _0x514e79=_0xd429cf[_0x3dcf63];return _0x514e79;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a132_0x62770a(0x17b),'path':'/smartapi/menu/create'}];export const menuGroupCreate={'service':a132_0x62770a(0x153),'command':a132_0x62770a(0x17f),'description':a132_0x62770a(0x140),'risk':'write','structuredErrors':!![],'flags':[{'name':a132_0x62770a(0x16a),'type':a132_0x62770a(0x15e),'required':!![],'description':a132_0x62770a(0x167)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4314ad){validateCreateInput(_0x4314ad);},async 'dryRun'(_0x5acad1){const _0x167362=a132_0x62770a,_0x480323=await buildCreatePlan(_0x5acad1,!![]),_0x1de6b3=_0x480323[_0x167362(0x16d)];return menuDryRunResult(_0x480323,{'method':_0x167362(0x17b),'url':_0x167362(0x152),'body':{'parentId':toApiParentId(_0x1de6b3[_0x167362(0x176)]),'label':_0x1de6b3[_0x167362(0x16a)],'type':'folder','visible':!![],'sort':_0x1de6b3['sort'],'extend':{}},'description':_0x167362(0x175)+String(_0x1de6b3[_0x167362(0x16a)])+_0x167362(0x13c)});},async 'execute'(_0x2a708e){const _0x32b362=a132_0x62770a;validateCreateInput(_0x2a708e);const _0x401e53=await buildCreatePlan(_0x2a708e,![]),_0x16c2c0=_0x401e53[_0x32b362(0x16d)];await recheckMutationSnapshot(_0x2a708e,_0x401e53,_0x32b362(0x162));let _0x144c72;try{_0x144c72=await createMenuEntity(_0x2a708e[_0x32b362(0x16b)],_0x2a708e[_0x32b362(0x151)],{'parentId':toApiParentId(_0x16c2c0[_0x32b362(0x176)]),'label':String(_0x16c2c0[_0x32b362(0x16a)]),'type':'folder','visible':!![],'sort':Number(_0x16c2c0[_0x32b362(0x171)]),'extend':{}});}catch(_0x5535d0){const _0x281a99=mapMenuApiError(_0x5535d0,_0x32b362(0x162));throw menuFailure(_0x281a99,_0x401e53,{'stage':_0x32b362(0x17a),'failed':{}});}const _0x5b6de8=Number(_0x144c72['id']);if(!Number[_0x32b362(0x150)](_0x5b6de8)||_0x5b6de8<=0x0){const _0x1a2ab6=menuError(_0x32b362(0x177),_0x32b362(0x141),_0x32b362(0x173));throw menuFailure(_0x1a2ab6,_0x401e53,{'stage':'create-response-validation','failed':{'createdId':_0x144c72['id']??null},'warnings':[_0x32b362(0x144)],'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json'}});}const _0x1bd3df=typeof _0x144c72[_0x32b362(0x13a)]===_0x32b362(0x15e)?_0x144c72[_0x32b362(0x13a)]:'';if(!_0x1bd3df[_0x32b362(0x13b)]()){const _0x336bf7=menuError('menu_create_response_invalid',_0x32b362(0x155)+_0x5b6de8+_0x32b362(0x158),_0x32b362(0x164));throw menuFailure(_0x336bf7,_0x401e53,{'stage':_0x32b362(0x15f),'succeeded':[{'id':_0x5b6de8,'created':!![]}],'failed':{'id':_0x5b6de8,'generatedPathConfirmed':![]},'warnings':[_0x32b362(0x15d)+_0x5b6de8+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x16c2c0,'id':_0x5b6de8,'path':_0x1bd3df},'verification':{'status':_0x32b362(0x136),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x5b6de8}});}let _0x5147c2;try{_0x5147c2=await fetchMenuSnapshot(_0x2a708e[_0x32b362(0x16b)],_0x2a708e[_0x32b362(0x151)]);}catch(_0x45e9b4){const _0x4b503e=describeMenuErrorCause(_0x45e9b4,_0x32b362(0x149),_0x5b6de8),_0x4ff99d=asVerificationError(_0x45e9b4,'Folder\x20'+_0x5b6de8+_0x32b362(0x138));throw menuFailure(_0x4ff99d,_0x401e53,{'stage':_0x32b362(0x179),'succeeded':[{'id':_0x5b6de8,'created':!![],'path':_0x1bd3df}],'failed':{'id':_0x5b6de8,'finalFactsConfirmed':![],..._0x4b503e},'warnings':[_0x32b362(0x15d)+_0x5b6de8+'\x20may\x20exist\x20online\x20at\x20path\x20'+JSON[_0x32b362(0x14e)](_0x1bd3df)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x16c2c0,'id':_0x5b6de8,'path':_0x1bd3df},'verification':{'status':_0x32b362(0x136),'lookupCommand':_0x32b362(0x15c),'targetId':_0x5b6de8}});}const _0x51f146=_0x5147c2[_0x32b362(0x17c)][_0x32b362(0x157)](_0x5b6de8);let _0xbfdb8a;try{assertVerified(Boolean(_0x51f146),'Created\x20folder\x20'+_0x5b6de8+_0x32b362(0x178)),_0xbfdb8a=_0x51f146,assertVerified(_0xbfdb8a[_0x32b362(0x143)]===_0x32b362(0x16f),'Created\x20menu\x20'+_0x5b6de8+'\x20is\x20not\x20type\x20folder.'),assertVerified(_0xbfdb8a[_0x32b362(0x16a)]===_0x16c2c0[_0x32b362(0x16a)],_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x169)),assertVerified(_0xbfdb8a[_0x32b362(0x13a)]===_0x1bd3df&&Boolean(_0xbfdb8a['path']['trim']()),_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x147)),assertVerified(_0xbfdb8a['visible']===!![],_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x174)),assertVerified(_0xbfdb8a[_0x32b362(0x137)][_0x32b362(0x13f)]===0x0,_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x13d)),assertVerified(_0xbfdb8a[_0x32b362(0x166)]===0x0,_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x14f)),assertVerified(_0xbfdb8a['sort']===_0x16c2c0[_0x32b362(0x171)],_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x13e)),assertVerified(_0xbfdb8a[_0x32b362(0x176)]===_0x16c2c0['parentId'],_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x172)+(_0xbfdb8a['parentId']??_0x32b362(0x145))+'.'),assertVerified(_0xbfdb8a[_0x32b362(0x163)]==null,_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x160));const _0x24bdeb=_0xbfdb8a[_0x32b362(0x176)]==null?undefined:requireFolder(_0x5147c2,_0xbfdb8a[_0x32b362(0x176)]);assertVerified(_0xbfdb8a['depth']===(_0x24bdeb?_0x24bdeb[_0x32b362(0x154)]+0x1:0x0),_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x159));}catch(_0x2a6bb9){const _0x182333=describeMenuErrorCause(_0x2a6bb9,_0x32b362(0x149),_0x5b6de8),_0x5b4fae=asVerificationError(_0x2a6bb9,_0x32b362(0x15d)+_0x5b6de8+_0x32b362(0x15a));throw menuFailure(_0x5b4fae,_0x401e53,{'stage':_0x32b362(0x179),'succeeded':[{'id':_0x5b6de8,'created':!![],'path':_0x1bd3df}],'failed':{'id':_0x5b6de8,'finalFactsConfirmed':![],..._0x182333},'warnings':[_0x32b362(0x15d)+_0x5b6de8+_0x32b362(0x168)],'after':_0x51f146??{..._0x16c2c0,'id':_0x5b6de8,'path':_0x1bd3df},'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x5b6de8}});}const _0x554f74=mutationResult({..._0x401e53,'after':_0xbfdb8a,'dryRun':![],'succeeded':[{'id':_0x5b6de8,'type':_0x32b362(0x16f),'path':_0x1bd3df}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x5147c2['hash'],'folder':!![],'path':_0x1bd3df,'emptyResources':!![]}});return{'ok':!![],'data':_0x554f74,'message':_0x32b362(0x146)+_0x5b6de8+'.'};}};function validateCreateInput(_0x475175){const _0x3c9fc5=a132_0x62770a,_0x1a2375=_0x475175['str']('label')[_0x3c9fc5(0x13b)]();if(!_0x1a2375)throw CliErrors[_0x3c9fc5(0x14a)](_0x3c9fc5(0x16a));parseParentId(_0x475175,_0x3c9fc5(0x139)),validateSort(_0x475175);}function a132_0xd429(){const _0x2ddbd4=['\x20unexpectedly\x20owns\x20a\x20page.','3274960NeBxWh','create\x20folder','pageId','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','create-folder','childrenCount','Folder\x20label','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','\x20has\x20an\x20unexpected\x20label.','label','appCode','42PeZdLj','after','<platform-generated>','folder','485439mzFIrH','sort','\x20has\x20unexpected\x20parent\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20is\x20not\x20visible.','Would\x20create\x20empty\x20folder\x20\x22','parentId','menu_create_response_invalid','\x20is\x20missing\x20from\x20menu\x20list.','verification','create','POST','byId','645442YTZmus','hash','group-create','failed','resources','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','parent-id','path','trim','\x22\x20with\x20a\x20platform-generated\x20path.','\x20has\x20resources.','\x20has\x20an\x20unexpected\x20sort.','length','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','str','type','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','root','Created\x20menu\x20folder\x20','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','2276502bLXTWj','verify\x20folder\x20creation','flagMissing','4QZIKSg','Created\x20folder\x20','32045355ydjZEk','stringify','\x20is\x20not\x20empty.','isSafeInteger','cookie','/smartapi/menu/create','menu','depth','Menu\x20create\x20response\x20for\x20folder\x20','2277160GZMODZ','get','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','2297405tlwrfm','rabetbase\x20menu\x20list\x20--format\x20json','Folder\x20','string','create-response-validation'];a132_0xd429=function(){return _0x2ddbd4;};return a132_0xd429();}async function buildCreatePlan(_0x1b3496,_0x27bd49){const _0x50de65=a132_0x62770a,_0x23873a=await fetchMutationSnapshot(_0x1b3496,_0x50de65(0x162)),_0x3507ab=parseParentId(_0x1b3496,_0x50de65(0x139))??null;if(_0x3507ab!=null)requireFolder(_0x23873a,_0x3507ab);const _0x5691f5=validateSort(_0x1b3496),_0x1b01a5=_0x5691f5??nextSiblingSort(_0x23873a,_0x3507ab,_0x50de65(0x16f)),_0x24874f=_0x1b3496[_0x50de65(0x142)](_0x50de65(0x16a))[_0x50de65(0x13b)]();return mutationResult({'operation':'group-create','selector':{'label':_0x24874f,'parentId':_0x3507ab},'before':null,'after':{'id':null,'parentId':_0x3507ab,'label':_0x24874f,'path':_0x50de65(0x16e),'type':_0x50de65(0x16f),'visible':!![],'sort':_0x1b01a5,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x27bd49,'backend':[...BACKEND],'plannedActions':[{'stage':_0x50de65(0x165),'method':_0x50de65(0x17b),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x3507ab),'label':_0x24874f,'type':_0x50de65(0x16f),'visible':!![],'sort':_0x1b01a5,'extend':{}}}],'snapshotHash':_0x23873a[_0x50de65(0x17e)],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a133_0x55f3(_0x3e8007,_0x518494){_0x3e8007=_0x3e8007-0xc4;const _0xf7a5=a133_0xf7a5();let _0x55f3fc=_0xf7a5[_0x3e8007];return _0x55f3fc;}const a133_0x7dfd11=a133_0x55f3;(function(_0x2bee0e,_0x2cd5c5){const _0x46c48b=a133_0x55f3,_0x26f351=_0x2bee0e();while(!![]){try{const _0x3e866c=parseInt(_0x46c48b(0xe3))/0x1*(-parseInt(_0x46c48b(0xf8))/0x2)+parseInt(_0x46c48b(0xd9))/0x3*(-parseInt(_0x46c48b(0xcc))/0x4)+parseInt(_0x46c48b(0xc9))/0x5*(-parseInt(_0x46c48b(0xee))/0x6)+-parseInt(_0x46c48b(0xf0))/0x7*(-parseInt(_0x46c48b(0xf6))/0x8)+parseInt(_0x46c48b(0xe8))/0x9+-parseInt(_0x46c48b(0xd2))/0xa+parseInt(_0x46c48b(0xd6))/0xb;if(_0x3e866c===_0x2cd5c5)break;else _0x26f351['push'](_0x26f351['shift']());}catch(_0x5bb455){_0x26f351['push'](_0x26f351['shift']());}}}(a133_0xf7a5,0xe41d0));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a133_0x7dfd11(0xdb),'path':a133_0x7dfd11(0xe6)}];export const menuGroupUpdate={'service':'menu','command':a133_0x7dfd11(0xcf),'description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a133_0x7dfd11(0xec),'structuredErrors':!![],'rejectedFlags':[{'name':a133_0x7dfd11(0xd8),'message':a133_0x7dfd11(0xe5),'hint':'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.'}],'flags':[MENU_ID_FLAG,{'name':a133_0x7dfd11(0xc8),'type':a133_0x7dfd11(0xe2),'description':'New\x20folder\x20label'},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2d79c0){validateUpdateInput(_0x2d79c0);},async 'dryRun'(_0xcd6c75){const _0x4f88db=a133_0x7dfd11;validateUpdateInput(_0xcd6c75);const {plan:_0x1ca603,patch:_0x11f765}=await buildUpdatePlan(_0xcd6c75,!![]);return menuDryRunResult(_0x1ca603,{'method':'POST','url':_0x4f88db(0xe6),'body':_0x11f765,'description':_0x4f88db(0xe7)+_0x1ca603['selector']['id']+'.'});},async 'execute'(_0x44d6d5){const _0x1ba32f=a133_0x7dfd11;validateUpdateInput(_0x44d6d5);const {plan:_0x54108f,patch:_0x1deb76,noChanges:_0x4de1a9}=await buildUpdatePlan(_0x44d6d5,![]),_0x2f781f=Number(_0x54108f[_0x1ba32f(0xe9)]['id']),_0x3d06c1=await recheckMutationSnapshot(_0x44d6d5,_0x54108f,_0x1ba32f(0xdc),_0x2f781f);if(!_0x4de1a9)try{await updateMenuEntity(_0x44d6d5[_0x1ba32f(0xc6)],_0x44d6d5[_0x1ba32f(0xf1)],_0x1deb76);}catch(_0x2846a9){const _0x320940=mapMenuApiError(_0x2846a9,_0x1ba32f(0xdc),_0x2f781f);throw menuFailure(_0x320940,_0x54108f,{'stage':_0x1ba32f(0xd1),'failed':{'id':_0x2f781f}});}let _0x3bf210=_0x3d06c1,_0xe69dd2;try{!_0x4de1a9&&(_0x3bf210=await fetchMenuSnapshot(_0x44d6d5[_0x1ba32f(0xc6)],_0x44d6d5[_0x1ba32f(0xf1)])),_0xe69dd2=requireMenu(_0x3bf210,_0x2f781f),verifyPatch(_0xe69dd2,_0x1deb76),_0xe69dd2[_0x1ba32f(0xe0)]!=null&&requireFolder(_0x3bf210,_0xe69dd2[_0x1ba32f(0xe0)]);}catch(_0x5e2ccf){const _0x2a8d9c=describeMenuErrorCause(_0x5e2ccf,_0x1ba32f(0xed),_0x2f781f),_0x2a8517=asVerificationError(_0x5e2ccf,'Update\x20request\x20for\x20folder\x20'+_0x2f781f+_0x1ba32f(0xea));throw menuFailure(_0x2a8517,_0x54108f,{'stage':_0x1ba32f(0xdf),'succeeded':[{'id':_0x2f781f,'updateRequested':!_0x4de1a9,'skipped':_0x4de1a9}],'failed':{'id':_0x2f781f,'requestedStateConfirmed':![],..._0x2a8d9c},'warnings':[_0x1ba32f(0xeb)],'verification':{'status':_0x1ba32f(0xcd),'lookupCommand':_0x1ba32f(0xd5),'targetId':_0x2f781f}});}const _0x255f49=mutationResult({..._0x54108f,'after':_0xe69dd2,'dryRun':![],'succeeded':[{'id':_0x2f781f,'updated':!_0x4de1a9,'skipped':_0x4de1a9}],'verification':{'checkedBy':_0x1ba32f(0xdd),'snapshotHash':_0x3bf210[_0x1ba32f(0xf7)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x255f49,'message':_0x4de1a9?_0x1ba32f(0xde)+_0x2f781f+_0x1ba32f(0xf3):_0x1ba32f(0xca)+_0x2f781f+'.'};}};function validateUpdateInput(_0xebbbbd){const _0x171dd6=a133_0x7dfd11;validateExactId(_0xebbbbd);if(hasFlag(_0xebbbbd,_0x171dd6(0xd8)))throw CliErrors[_0x171dd6(0xd7)](_0x171dd6(0xe5),_0x171dd6(0xc4));if(!hasFlag(_0xebbbbd,_0x171dd6(0xc8))&&!hasFlag(_0xebbbbd,_0x171dd6(0xd3)))throw CliErrors[_0x171dd6(0xd7)]('At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.');if(hasFlag(_0xebbbbd,'label')&&!_0xebbbbd[_0x171dd6(0xef)](_0x171dd6(0xc8))[_0x171dd6(0xf2)]())throw CliErrors['validation'](_0x171dd6(0xda));validateSort(_0xebbbbd);}async function buildUpdatePlan(_0x51c9cb,_0x15aead){const _0x392298=a133_0x7dfd11,_0xeed3e8=validateExactId(_0x51c9cb),_0x1b95e5=await fetchMutationSnapshot(_0x51c9cb,_0x392298(0xdc),_0xeed3e8),_0x4ad0b9=requireMenu(_0x1b95e5,_0xeed3e8);if(_0x4ad0b9[_0x392298(0xe1)]!==_0x392298(0xd4))throw menuError(_0x392298(0xc7),_0x392298(0xcb)+_0xeed3e8+_0x392298(0xc5)+(_0x4ad0b9[_0x392298(0xe1)]||_0x392298(0xd0))+'\x22,\x20not\x20folder.',_0x392298(0xce));assertExpectedState(_0x51c9cb,_0x4ad0b9);const _0x12648f={'id':_0xeed3e8},_0x3bb3a3={..._0x4ad0b9};if(hasFlag(_0x51c9cb,_0x392298(0xc8))){const _0x379eb3=_0x51c9cb[_0x392298(0xef)](_0x392298(0xc8))['trim']();_0x12648f[_0x392298(0xc8)]=_0x379eb3,_0x3bb3a3[_0x392298(0xc8)]=_0x379eb3;}if(hasFlag(_0x51c9cb,_0x392298(0xd3))){const _0x19ccab=validateSort(_0x51c9cb);_0x12648f[_0x392298(0xd3)]=_0x19ccab,_0x3bb3a3['sort']=_0x19ccab;}const _0x1207fe=sameRequestedState(_0x4ad0b9,_0x3bb3a3),_0x568ac3=_0x1207fe?[_0x392298(0xf4)]:[];return{'patch':_0x12648f,'noChanges':_0x1207fe,'plan':mutationResult({'operation':'group-update','selector':{'id':_0xeed3e8},'before':_0x4ad0b9,'after':_0x3bb3a3,'dryRun':_0x15aead,'backend':[...BACKEND],'snapshotHash':_0x1b95e5[_0x392298(0xf7)],'warnings':_0x568ac3})};}function sameRequestedState(_0x259789,_0x282694){const _0x4c5c00=a133_0x7dfd11;return _0x259789[_0x4c5c00(0xc8)]===_0x282694[_0x4c5c00(0xc8)]&&_0x259789['sort']===_0x282694[_0x4c5c00(0xd3)];}function verifyPatch(_0x296eca,_0x42eed4){const _0x4cf1a=a133_0x7dfd11;assertVerified(_0x296eca[_0x4cf1a(0xe1)]==='folder',_0x4cf1a(0xcb)+_0x296eca['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x42eed4['label']!==undefined&&assertVerified(_0x296eca[_0x4cf1a(0xc8)]===_0x42eed4[_0x4cf1a(0xc8)],_0x4cf1a(0xde)+_0x296eca['id']+_0x4cf1a(0xe4)),_0x42eed4[_0x4cf1a(0xd3)]!==undefined&&assertVerified(_0x296eca['sort']===_0x42eed4['sort'],_0x4cf1a(0xde)+_0x296eca['id']+_0x4cf1a(0xf5));}function a133_0xf7a5(){const _0x59e667=['Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','group-update','unknown','update','12873470wOSNUF','sort','folder','rabetbase\x20menu\x20list\x20--format\x20json','29446846RAPQHV','validation','parent-id','5159505HdszDp','--label\x20cannot\x20be\x20empty.','POST','update\x20folder','menu\x20list','Folder\x20','verification','parentId','type','string','54LEMMnv','\x20label\x20update\x20did\x20not\x20take\x20effect.','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','/smartapi/menu/update','Would\x20update\x20folder\x20','11442492fzmMHR','selector','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','write','verify\x20folder\x20update','114LkwzLZ','str','175777jNGbTV','cookie','trim','\x20already\x20matches\x20the\x20requested\x20state.','No\x20online\x20fields\x20would\x20change.','\x20sort\x20update\x20did\x20not\x20take\x20effect.','208oilZNw','hash','22364DbZUwF','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','\x20is\x20type\x20\x22','appCode','menu_not_folder','label','14710BhMiki','Updated\x20folder\x20','Menu\x20','4xSFSTs','failed'];a133_0xf7a5=function(){return _0x59e667;};return a133_0xf7a5();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2e1b6c,_0x107e4e){const _0x55aa45=a134_0x165b,_0x239ee2=_0x2e1b6c();while(!![]){try{const _0x3d4822=-parseInt(_0x55aa45(0x12a))/0x1+-parseInt(_0x55aa45(0x123))/0x2*(parseInt(_0x55aa45(0x129))/0x3)+-parseInt(_0x55aa45(0x122))/0x4*(-parseInt(_0x55aa45(0x125))/0x5)+-parseInt(_0x55aa45(0x121))/0x6*(parseInt(_0x55aa45(0x124))/0x7)+parseInt(_0x55aa45(0x11f))/0x8*(parseInt(_0x55aa45(0x128))/0x9)+parseInt(_0x55aa45(0x127))/0xa*(-parseInt(_0x55aa45(0x126))/0xb)+parseInt(_0x55aa45(0x120))/0xc*(parseInt(_0x55aa45(0x11e))/0xd);if(_0x3d4822===_0x107e4e)break;else _0x239ee2['push'](_0x239ee2['shift']());}catch(_0x5b1b2e){_0x239ee2['push'](_0x239ee2['shift']());}}}(a134_0x94ff,0xa8b58));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';function a134_0x165b(_0xff218d,_0x2cc5e7){_0xff218d=_0xff218d-0x11e;const _0x94ff62=a134_0x94ff();let _0x165bbf=_0x94ff62[_0xff218d];return _0x165bbf;}import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';function a134_0x94ff(){const _0x1178da=['70pykcvU','40ciYEJH','11IsXNgn','2560060WMgwiH','3632463OOYwxw','3GGmZon','1292342bqtuRV','39ALpmBG','8LuJgdq','12320892GwdzIb','488172kLjZoA','406160iGhHMA','2486300wCTRrY'];a134_0x94ff=function(){return _0x1178da;};return a134_0x94ff();}import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a135_0x29ef(_0x23cb03,_0x1ae5e1){_0x23cb03=_0x23cb03-0x125;const _0x54dfc2=a135_0x54df();let _0x29efd0=_0x54dfc2[_0x23cb03];return _0x29efd0;}const a135_0x181b89=a135_0x29ef;(function(_0x5a4b7e,_0x3d2641){const _0x24604e=a135_0x29ef,_0x4ce86a=_0x5a4b7e();while(!![]){try{const _0xdb42bf=parseInt(_0x24604e(0x13a))/0x1+-parseInt(_0x24604e(0x12c))/0x2+-parseInt(_0x24604e(0x138))/0x3*(parseInt(_0x24604e(0x136))/0x4)+parseInt(_0x24604e(0x129))/0x5*(-parseInt(_0x24604e(0x13b))/0x6)+-parseInt(_0x24604e(0x130))/0x7+parseInt(_0x24604e(0x12e))/0x8+parseInt(_0x24604e(0x12a))/0x9;if(_0xdb42bf===_0x3d2641)break;else _0x4ce86a['push'](_0x4ce86a['shift']());}catch(_0x43c27e){_0x4ce86a['push'](_0x4ce86a['shift']());}}}(a135_0x54df,0xde025));function a135_0x54df(){const _0x58c4a6=['bool','4052531fdXOZH','menus','menu','verbose','\x20menu(s)','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','10068jjrdOO','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','531fVzrQV','hash','1744529OGFvTX','204dHPKYF','No\x20menus\x20found.','total','map','appCode','189435erDeoE','5969133hbGCDn','list','146354XMgeUL','Found\x20','7098880NzHtNF'];a135_0x54df=function(){return _0x58c4a6;};return a135_0x54df();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a135_0x181b89(0x132),'command':a135_0x181b89(0x12b),'description':a135_0x181b89(0x135),'risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':a135_0x181b89(0x133),'type':'boolean','description':a135_0x181b89(0x137)}],async 'execute'(_0x3a0fde){const _0x15bc43=a135_0x181b89,_0x4d23e4=_0x3a0fde[_0x15bc43(0x12f)](_0x15bc43(0x133)),_0x14812a=await fetchMenuSnapshot(_0x3a0fde[_0x15bc43(0x128)],_0x3a0fde['cookie'],{'verbose':_0x4d23e4});return{'ok':!![],'data':{'total':_0x14812a['total'],'snapshotHash':_0x14812a[_0x15bc43(0x139)],'menus':_0x14812a[_0x15bc43(0x131)][_0x15bc43(0x127)](toMenuListItem)},'message':_0x14812a[_0x15bc43(0x126)]===0x0?_0x15bc43(0x125):_0x15bc43(0x12d)+_0x14812a[_0x15bc43(0x126)]+_0x15bc43(0x134)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a136_0x136123=a136_0x4f0a;(function(_0x38231b,_0x291245){const _0x5f344f=a136_0x4f0a,_0x3fdf34=_0x38231b();while(!![]){try{const _0x1b7d77=-parseInt(_0x5f344f(0x1c5))/0x1*(-parseInt(_0x5f344f(0x1ae))/0x2)+parseInt(_0x5f344f(0x1b8))/0x3*(-parseInt(_0x5f344f(0x1bc))/0x4)+-parseInt(_0x5f344f(0x1ba))/0x5+-parseInt(_0x5f344f(0x1c4))/0x6*(-parseInt(_0x5f344f(0x1c8))/0x7)+-parseInt(_0x5f344f(0x1be))/0x8+parseInt(_0x5f344f(0x1c6))/0x9*(parseInt(_0x5f344f(0x1c1))/0xa)+-parseInt(_0x5f344f(0x1c7))/0xb*(-parseInt(_0x5f344f(0x1cb))/0xc);if(_0x1b7d77===_0x291245)break;else _0x3fdf34['push'](_0x3fdf34['shift']());}catch(_0x3e3c15){_0x3fdf34['push'](_0x3fdf34['shift']());}}}(a136_0x45a7,0xad890));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':'POST','path':a136_0x136123(0x1a4)}];export const menuMove={'service':'menu','command':'move','description':'Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','risk':a136_0x136123(0x1cc),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x42be05){validateMoveInput(_0x42be05);},async 'dryRun'(_0x2157c4){const _0x403ce1=a136_0x136123,{plan:_0x184a0c,patch:_0x4d7433}=await buildMovePlan(_0x2157c4,!![]);return menuDryRunResult(_0x184a0c,{'method':_0x403ce1(0x1ca),'url':'/smartapi/menu/update','body':{..._0x4d7433,'appCode':_0x2157c4[_0x403ce1(0x1ce)]},'description':_0x403ce1(0x1c3)+_0x4d7433['id']+'.'});},async 'execute'(_0x136ca1){const _0x2e5b44=a136_0x136123;validateMoveInput(_0x136ca1);const {plan:_0x49b712,patch:_0x1929a6,noChanges:_0x547f2b,snapshot:_0x22281c}=await buildMovePlan(_0x136ca1,![]),_0x39e3fa=_0x1929a6['id'];if(!_0x547f2b)try{await updateMenuEntity(_0x136ca1['appCode'],_0x136ca1[_0x2e5b44(0x1b5)],_0x1929a6);}catch(_0x56926e){const _0x25ba50=mapMenuApiError(_0x56926e,'move',_0x39e3fa);throw menuFailure(_0x25ba50,_0x49b712,{'stage':_0x2e5b44(0x1a5),'failed':{'id':_0x39e3fa},'warnings':[_0x2e5b44(0x1a2)],'verification':{'status':'failed','targetId':_0x39e3fa,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}let _0x1b6c79,_0x3a4ef1;try{_0x1b6c79=_0x547f2b?_0x22281c:await fetchMenuSnapshot(_0x136ca1['appCode'],_0x136ca1[_0x2e5b44(0x1b5)]),_0x3a4ef1=requireMenu(_0x1b6c79,_0x39e3fa),verifyMove(_0x3a4ef1,_0x49b712[_0x2e5b44(0x1b2)]),_0x3a4ef1['parentId']!==null&&requireFolder(_0x1b6c79,_0x3a4ef1[_0x2e5b44(0x1b0)]);}catch(_0x5b7aaa){const _0x143367=describeMenuErrorCause(_0x5b7aaa,'verify\x20menu\x20move',_0x39e3fa),_0xffa0c5=asVerificationError(_0x5b7aaa,'Move\x20request\x20for\x20menu\x20'+_0x39e3fa+_0x2e5b44(0x1a9));throw menuFailure(_0xffa0c5,_0x49b712,{'stage':_0x2e5b44(0x1b7),'succeeded':[{'id':_0x39e3fa,'updateRequested':!_0x547f2b,'skipped':_0x547f2b}],'failed':{'id':_0x39e3fa,'requestedStateConfirmed':![],..._0x143367},'warnings':['The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x2e5b44(0x1b3),'targetId':_0x39e3fa,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}const _0x391882=mutationResult({..._0x49b712,'after':_0x3a4ef1,'dryRun':![],'succeeded':[{'id':_0x39e3fa,'updated':!_0x547f2b,'skipped':_0x547f2b}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x1b6c79['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x391882,'message':_0x547f2b?_0x2e5b44(0x1c9)+_0x39e3fa+_0x2e5b44(0x1cd):'Moved\x20menu\x20'+_0x39e3fa+'.'};}};function validateMoveInput(_0x316dbd){const _0x29117d=a136_0x136123;validateExactId(_0x316dbd),parseParentId(_0x316dbd,_0x29117d(0x1a7),{'required':!![]}),parseParentId(_0x316dbd,_0x29117d(0x1ad),{'required':!![]}),validateSort(_0x316dbd);}async function buildMovePlan(_0x599364,_0x1214b5){const _0x10b20a=a136_0x136123,_0xe055c2=validateExactId(_0x599364),_0x54c30c=parseParentId(_0x599364,'parent-id',{'required':!![]}),_0x5625cd=parseParentId(_0x599364,_0x10b20a(0x1ad),{'required':!![]}),_0x383290=validateSort(_0x599364),_0x3c0610=await fetchMutationSnapshot(_0x599364,_0x10b20a(0x1b6),_0xe055c2),_0x50189c=requireMenu(_0x3c0610,_0xe055c2);if(_0x50189c[_0x10b20a(0x1a8)]===_0x10b20a(0x1bd)||_0x50189c['childrenCount']!==0x0)throw menuError('menu_move_source_not_leaf',_0x10b20a(0x1c9)+_0xe055c2+_0x10b20a(0x1b1),'Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.');if(_0x50189c['parentId']!==_0x5625cd)throw menuError(_0x10b20a(0x1c0),_0x10b20a(0x1c9)+_0xe055c2+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x5625cd)+_0x10b20a(0x1ab)+formatParent(_0x50189c[_0x10b20a(0x1b0)])+'.',_0x10b20a(0x1a6));_0x54c30c!==null&&requireFolder(_0x3c0610,_0x54c30c);const _0x3b22d0=_0x383290??(_0x50189c[_0x10b20a(0x1b0)]===_0x54c30c?_0x50189c[_0x10b20a(0x1aa)]??0x0:nextSiblingSort(_0x3c0610,_0x54c30c,_0x10b20a(0x1c2))),_0x3033ec={..._0x50189c,'parentId':_0x54c30c,'sort':_0x3b22d0},_0xb725ca={'id':_0xe055c2,'parentId':toApiParentId(_0x54c30c),'sort':_0x3b22d0},_0xe9ff35=_0x50189c[_0x10b20a(0x1b0)]===_0x54c30c&&_0x50189c['sort']===_0x3b22d0;return{'patch':_0xb725ca,'noChanges':_0xe9ff35,'snapshot':_0x3c0610,'plan':mutationResult({'operation':_0x10b20a(0x1ac),'selector':{'id':_0xe055c2,'parentId':_0x54c30c},'before':_0x50189c,'after':_0x3033ec,'dryRun':_0x1214b5,'backend':[...BACKEND],'plannedActions':[{'stage':_0x10b20a(0x1af),'method':_0x10b20a(0x1ca),'path':_0x10b20a(0x1a4),'body':{..._0xb725ca,'appCode':_0x599364[_0x10b20a(0x1ce)]}}],'snapshotHash':_0x3c0610[_0x10b20a(0x1bb)],'warnings':_0xe9ff35?[_0x10b20a(0x1a1)]:[]})};}function a136_0x4f0a(_0x4752c0,_0x3ca829){_0x4752c0=_0x4752c0-0x1a1;const _0x45a733=a136_0x45a7();let _0x4f0a78=_0x45a733[_0x4752c0];return _0x4f0a78;}function a136_0x45a7(){const _0x21c527=['/smartapi/menu/update','update','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','parent-id','type','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','sort',',\x20current\x20','move','expect-parent-id','206YKaZTM','move-menu','parentId','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','after','failed','childrenCount','cookie','move\x20menu','verification','1806486LMFLTN','\x20is\x20now\x20type\x20folder.','6843530AiWXpp','hash','4qrcIPz','folder','8985816bffUpx','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','menu_state_drift','20kmXlvC','menu','Would\x20move\x20menu\x20','3143688AwSRQj','11355VPczOd','446895dUEiOA','1364dJZbCy','14REWnJO','Menu\x20','POST','144012oaQmhz','write','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','appCode','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20is\x20no\x20longer\x20a\x20leaf.'];a136_0x45a7=function(){return _0x21c527;};return a136_0x45a7();}function verifyMove(_0x1bb2a8,_0x593a85){const _0x5434e8=a136_0x136123;assertVerified(_0x1bb2a8[_0x5434e8(0x1a8)]!==_0x5434e8(0x1bd),_0x5434e8(0x1c9)+_0x1bb2a8['id']+_0x5434e8(0x1b9)),assertVerified(_0x1bb2a8[_0x5434e8(0x1b4)]===0x0,_0x5434e8(0x1c9)+_0x1bb2a8['id']+_0x5434e8(0x1a3)),assertVerified(_0x1bb2a8[_0x5434e8(0x1b0)]===_0x593a85['parentId'],'Menu\x20'+_0x1bb2a8['id']+_0x5434e8(0x1bf)),assertVerified(_0x1bb2a8[_0x5434e8(0x1aa)]===_0x593a85[_0x5434e8(0x1aa)],_0x5434e8(0x1c9)+_0x1bb2a8['id']+'\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.');}
|