@lovrabet/rabetbase-cli 2.5.3 → 2.5.4-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/README.md +11 -0
- package/lib/api/api-doc.js +1 -1
- package/lib/api/api-group.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.js +1 -1
- package/lib/api/legacy-api-file.js +1 -1
- package/lib/api/model-registry-file.js +1 -1
- package/lib/api/model-registry-scaffold.js +1 -1
- package/lib/api/model-source.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/logs.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.d.ts +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/batch-design.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/cross-relation-create.js +1 -1
- package/lib/commands/dataset/cross-relation-delete.js +1 -1
- package/lib/commands/dataset/cross-relation-list.js +1 -1
- package/lib/commands/dataset/cross-relation-shared.js +1 -1
- package/lib/commands/dataset/cross-relation-update.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-restore.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/dataset/user-deleted-field-list.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/table-diff-shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/deployment/index.js +1 -1
- package/lib/commands/deployment/sync-all.js +1 -1
- package/lib/commands/deployment/sync-jobs.js +1 -1
- package/lib/commands/deployment/sync-status.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/flow/create.js +1 -1
- package/lib/commands/flow/detail.js +1 -1
- package/lib/commands/flow/index.js +1 -1
- package/lib/commands/flow/list.js +1 -1
- package/lib/commands/flow/publish.js +1 -1
- package/lib/commands/flow/runtime-resources-shared.js +1 -1
- package/lib/commands/flow/runtime-role-list.js +1 -1
- package/lib/commands/flow/runtime-role-user-list.js +1 -1
- package/lib/commands/flow/runtime-user-search.js +1 -1
- package/lib/commands/flow/shared.d.ts +2 -0
- package/lib/commands/flow/shared.js +1 -1
- package/lib/commands/flow/update.js +1 -1
- package/lib/commands/flow/validate.js +1 -1
- package/lib/commands/instant-api-policy/current.js +1 -1
- package/lib/commands/instant-api-policy/index.js +1 -1
- package/lib/commands/instant-api-policy/init.js +1 -1
- package/lib/commands/instant-api-policy/publish.js +1 -1
- package/lib/commands/instant-api-policy/pull.js +1 -1
- package/lib/commands/instant-api-policy/revision.js +1 -1
- package/lib/commands/instant-api-policy/revisions.js +1 -1
- package/lib/commands/instant-api-policy/rollback.js +1 -1
- package/lib/commands/instant-api-policy/shared.js +1 -1
- package/lib/commands/instant-api-policy/validate.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/api-architecture-upgrade.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/domain-routing-sync.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/rule/get.js +1 -1
- package/lib/commands/rule/index.js +1 -1
- package/lib/commands/rule/list.js +1 -1
- package/lib/commands/rule/set.js +1 -1
- package/lib/commands/rule/shared.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/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.d.ts +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/project-domain-routing.js +1 -1
- package/lib/config/region-config.js +1 -1
- package/lib/config/schema.d.ts +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.d.ts +4 -0
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.d.ts +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/routing-profile.d.ts +14 -1
- package/lib/constant/routing-profile.js +1 -1
- package/lib/context/app-resolver.d.ts +1 -0
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/hook-directory.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/cross-db-relation.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/flow-config.d.ts +11 -10
- package/lib/core/flow-config.js +1 -1
- package/lib/core/instant-api-policy/config.js +1 -1
- package/lib/core/kb-search-client.d.ts +7 -1
- package/lib/core/kb-search-client.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/page/lr-smart-jsx.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.d.ts +5 -2
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/supported-flags.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/generated/official-routing.d.ts +15 -3
- package/lib/generated/official-routing.js +1 -1
- package/lib/generated/routing-contract.d.ts +2 -2
- 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.d.ts +5 -0
- 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 +31 -17
- package/skills/rabetbase/guides/approval-flow-development-workflow.md +33 -11
- package/skills/rabetbase/guides/best-practices.md +1 -1
- package/skills/rabetbase/guides/conflict-detection.md +44 -92
- package/skills/rabetbase/guides/custom-page-flow-sdk.md +642 -0
- package/skills/rabetbase/guides/custom-page-flow-timeline-display.md +289 -0
- package/skills/rabetbase/guides/custom-page-workflow.md +12 -3
- package/skills/rabetbase/guides/sql-creation-workflow.md +44 -26
- package/skills/rabetbase/guides/sql-mybatis.md +18 -49
- package/skills/rabetbase/guides/typescript-sdk.md +18 -0
- package/skills/rabetbase/knowledge/approval-flow/config-json-schema.md +22 -6
- package/skills/rabetbase/knowledge/components.md +34 -28
- package/skills/rabetbase/knowledge/custom-page/generation-standards.md +2 -0
- package/skills/rabetbase/references/rabetbase-config.md +6 -4
- package/skills/rabetbase/references/rabetbase-flow-commands.md +8 -4
- package/skills/rabetbase/references/rabetbase-flow-resources.md +3 -3
- package/skills/rabetbase/references/rabetbase-flow-runtime-boundary.md +2 -0
- package/skills/rabetbase/references/rabetbase-init.md +7 -5
- package/skills/rabetbase/references/rabetbase-kb.md +14 -4
- package/skills/rabetbase/references/rabetbase-page-custom-detail.md +3 -1
- package/skills/rabetbase/references/rabetbase-page-custom-list.md +3 -0
- package/skills/rabetbase/references/rabetbase-sql-push.md +5 -0
- package/skills/rabetbase/references/rabetbase-sql-validate.md +12 -6
- package/skills/rabetbase.manifest.json +5 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
function a151_0x3f02(_0x34fa5c,_0x2322ca){_0x34fa5c=_0x34fa5c-0xbf;const _0x17479e=a151_0x1747();let _0x3f0245=_0x17479e[_0x34fa5c];return _0x3f0245;}const a151_0x3cdc98=a151_0x3f02;(function(_0x653300,_0x3455ba){const _0x2e48b8=a151_0x3f02,_0x1e1de7=_0x653300();while(!![]){try{const _0x194d87=parseInt(_0x2e48b8(0xdc))/0x1*(-parseInt(_0x2e48b8(0xd7))/0x2)+-parseInt(_0x2e48b8(0xc5))/0x3*(-parseInt(_0x2e48b8(0xfe))/0x4)+-parseInt(_0x2e48b8(0x122))/0x5*(-parseInt(_0x2e48b8(0xe7))/0x6)+parseInt(_0x2e48b8(0xc0))/0x7+parseInt(_0x2e48b8(0xcf))/0x8+parseInt(_0x2e48b8(0xeb))/0x9*(parseInt(_0x2e48b8(0xef))/0xa)+-parseInt(_0x2e48b8(0x10c))/0xb;if(_0x194d87===_0x3455ba)break;else _0x1e1de7['push'](_0x1e1de7['shift']());}catch(_0x2a51e7){_0x1e1de7['push'](_0x1e1de7['shift']());}}}(a151_0x1747,0x85ab7));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':a151_0x3cdc98(0x133),'path':a151_0x3cdc98(0xdf)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':'Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)'},MENU_DELETE_RECURSIVE_FLAG={'name':a151_0x3cdc98(0x109),'type':a151_0x3cdc98(0xc7),'description':a151_0x3cdc98(0xfa)},MENU_DELETE_PLAN_OUT_FLAG={'name':'plan-out','type':'string','description':a151_0x3cdc98(0x139)},MENU_DELETE_PLAN_FLAG={'name':a151_0x3cdc98(0xc6),'type':'string','description':a151_0x3cdc98(0xd4)};export const menuDelete={'service':'menu','command':a151_0x3cdc98(0xe4),'description':a151_0x3cdc98(0xca),'risk':a151_0x3cdc98(0x101),'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'(_0x490fd0){const _0x1fcd36=a151_0x3cdc98;_0x490fd0[_0x1fcd36(0x10d)](_0x1fcd36(0xd1))?validateDeleteDryRunInput(_0x490fd0):validateDeleteExecuteInput(_0x490fd0),requireExplicitYes(_0x490fd0);},async 'dryRun'(_0x2bef3f){const _0x1a8ad5=a151_0x3cdc98;validateDeleteDryRunInput(_0x2bef3f);const _0x32bd26=await buildDeletePlan(_0x2bef3f),_0x2dafc2=createMenuDeletePlanFile(_0x2bef3f[_0x1a8ad5(0xe2)],_0x32bd26),_0x1d5d82=await writeMenuDeletePlan(_0x2bef3f[_0x1a8ad5(0x127)](_0x1a8ad5(0x112)),_0x2dafc2),_0x2903ef=mutationResult({..._0x32bd26,'planFile':{'path':_0x1d5d82,'createdAt':_0x2dafc2[_0x1a8ad5(0xff)],'expiresAt':_0x2dafc2[_0x1a8ad5(0xe0)]}});return menuDryRunResult(_0x2903ef,{'method':'POST','url':'/smartapi/menu/batchDelete','body':{'idList':_0x2903ef[_0x1a8ad5(0xe1)]},'description':_0x1a8ad5(0x11e)+(_0x2903ef[_0x1a8ad5(0xe1)]?.[_0x1a8ad5(0xf0)]??0x1)+_0x1a8ad5(0x100)+_0x2903ef[_0x1a8ad5(0x108)]['id']+_0x1a8ad5(0x107)+_0x1d5d82+'.'});},async 'execute'(_0x5b83bd){const _0x1a4420=a151_0x3cdc98;requireExplicitYes(_0x5b83bd),validateDeleteExecuteInput(_0x5b83bd);const _0x4bbf66=await readMenuDeletePlan(_0x5b83bd[_0x1a4420(0x127)]('plan')),_0x38ab03=mutationPlanFromDeleteFile(_0x4bbf66[_0x1a4420(0xc6)],_0x4bbf66[_0x1a4420(0x125)]),_0x282e33=_0x4bbf66[_0x1a4420(0xc6)][_0x1a4420(0x114)]['id'];try{assertMenuDeletePlanExecutable(_0x4bbf66['plan'],_0x5b83bd[_0x1a4420(0xe2)]);}catch(_0x532cb3){throw menuFailure(asMenuError(_0x532cb3),_0x38ab03,{'stage':_0x1a4420(0x130),'failed':{'id':_0x282e33}});}let _0x19e9df,_0x41c956;try{_0x19e9df=await fetchMutationSnapshot(_0x5b83bd,'execute\x20reviewed\x20delete\x20plan',_0x282e33),_0x41c956=assertMenuDeletePlanCurrent(_0x4bbf66['plan'],_0x5b83bd[_0x1a4420(0xe2)],_0x19e9df),assertDeleteTargetsComplete(_0x4bbf66['plan'],_0x19e9df),_0x41c956['forEach'](_0x5a1e86=>assertDeleteSafety(_0x5a1e86,_0x4bbf66[_0x1a4420(0xc6)]['recursive'])),assertNoSharedPages(_0x19e9df,_0x41c956),assertCascadeMatchesPlan(_0x38ab03,_0x41c956);}catch(_0x254ef7){throw menuFailure(asMenuError(_0x254ef7),_0x38ab03,{'stage':_0x1a4420(0x119),'failed':{'id':_0x282e33}});}const _0x36fdec=_0x4bbf66[_0x1a4420(0xc6)]['deleteOrder'];let _0x4b1ef7;try{_0x4b1ef7=await batchDeleteMenuEntities(_0x5b83bd['cookie'],_0x36fdec);}catch(_0x339f47){const _0xc31d74=mapMenuApiError(_0x339f47,_0x1a4420(0xc4)),_0x5d5f40=[_0x1a4420(0x106)];let _0x3f23e6;try{_0x3f23e6=await readDeleteOutcome(_0x5b83bd,_0x36fdec);}catch(_0xb9b87b){const _0x2db1ca=describeMenuErrorCause(_0xb9b87b,_0x1a4420(0x115),_0x282e33);_0x5d5f40['push'](_0x1a4420(0xd3)+_0x2db1ca['causeCode']+_0x1a4420(0x11c)+_0x2db1ca['causeMessage']);throw menuFailure(_0xc31d74,_0x38ab03,{'stage':_0x1a4420(0x10b),'failed':{'targetIds':_0x36fdec,'targetIdsAbsent':_0x1a4420(0x12e),..._0x2db1ca},'warnings':_0x5d5f40,'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x36fdec}});}throw menuFailure(_0xc31d74,_0x38ab03,{'stage':_0x1a4420(0x10b),'succeeded':_0x3f23e6[_0x1a4420(0x126)]['map'](_0x30b29d=>({'id':_0x30b29d,'deleted':!![]})),'failed':{'targetIds':_0x36fdec,'absentIds':_0x3f23e6[_0x1a4420(0x126)],'remainingIds':_0x3f23e6[_0x1a4420(0xf5)]},'warnings':_0x5d5f40,'verification':verificationFromOutcome(_0x3f23e6)});}if(_0x4b1ef7!==_0x36fdec['length']){const _0x237901=menuError(_0x1a4420(0xd2),'Backend\x20reported\x20'+_0x4b1ef7+_0x1a4420(0xf9)+_0x36fdec[_0x1a4420(0xf0)]+'.',_0x1a4420(0x124)),_0x55bf3a=[_0x1a4420(0xfc)];let _0x3fefa9;try{_0x3fefa9=await readDeleteOutcome(_0x5b83bd,_0x36fdec);}catch(_0x3ef6d){const _0x1d9ac=describeMenuErrorCause(_0x3ef6d,_0x1a4420(0x129),_0x282e33);_0x55bf3a[_0x1a4420(0x120)]('Post-mismatch\x20menu\x20readback\x20failed\x20('+_0x1d9ac['causeCode']+_0x1a4420(0x11c)+_0x1d9ac[_0x1a4420(0x11f)]);throw menuFailure(_0x237901,_0x38ab03,{'stage':_0x1a4420(0x10b),'failed':{'targetIds':_0x36fdec,'expectedCount':_0x36fdec[_0x1a4420(0xf0)],'reportedDeletedCount':_0x4b1ef7,'targetIdsAbsent':_0x1a4420(0x12e),..._0x1d9ac},'warnings':_0x55bf3a,'verification':{'status':_0x1a4420(0xfd),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x36fdec}});}throw menuFailure(_0x237901,_0x38ab03,{'stage':_0x1a4420(0x10b),'succeeded':_0x3fefa9[_0x1a4420(0x126)]['map'](_0x570c60=>({'id':_0x570c60,'deleted':!![]})),'failed':{'targetIds':_0x36fdec,'expectedCount':_0x36fdec['length'],'reportedDeletedCount':_0x4b1ef7,'absentIds':_0x3fefa9['absentIds'],'remainingIds':_0x3fefa9['remainingIds']},'warnings':_0x55bf3a,'verification':verificationFromOutcome(_0x3fefa9)});}let _0xb6e286;try{_0xb6e286=await readDeleteOutcome(_0x5b83bd,_0x36fdec);}catch(_0x7c7821){const _0x5c6487=describeMenuErrorCause(_0x7c7821,'verify\x20batch\x20delete',_0x282e33),_0x5bcb0d=asVerificationError(_0x7c7821,_0x1a4420(0xcb)+_0x282e33+_0x1a4420(0xde));throw menuFailure(_0x5bcb0d,_0x38ab03,{'stage':_0x1a4420(0x128),'succeeded':_0x36fdec[_0x1a4420(0xf7)](_0x4a5e30=>({'id':_0x4a5e30,'deleteRequested':!![]})),'failed':{'id':_0x282e33,'targetIds':_0x36fdec,'targetIdsAbsent':_0x1a4420(0x12e),..._0x5c6487},'warnings':[_0x1a4420(0xea)],'verification':{'status':_0x1a4420(0xfd),'lookupCommand':_0x1a4420(0x10f),'targetIds':_0x36fdec}});}if(_0xb6e286['remainingIds'][_0x1a4420(0xf0)]>0x0){const _0x373ad7=menuError('menu_verification_failed',_0x1a4420(0x103)+_0xb6e286[_0x1a4420(0xf5)]['join'](',\x20')+'.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.');throw menuFailure(_0x373ad7,_0x38ab03,{'stage':_0x1a4420(0x128),'succeeded':_0x36fdec[_0x1a4420(0xf7)](_0x680af0=>({'id':_0x680af0,'deleteRequested':!![]})),'failed':{'id':_0x282e33,'targetIds':_0x36fdec,'absentIds':_0xb6e286[_0x1a4420(0x126)],'remainingIds':_0xb6e286['remainingIds']},'warnings':[_0x1a4420(0x135)],'verification':verificationFromOutcome(_0xb6e286)});}const _0x1c55a1=_0x36fdec[_0x1a4420(0xf7)](_0x27f616=>({'id':_0x27f616,'deleted':!![]})),_0x31a995=mutationResult({..._0x38ab03,'dryRun':![],'succeeded':_0x1c55a1,'verification':{'checkedBy':'menu\x20list','plannedSnapshotHash':_0x38ab03[_0x1a4420(0xec)],'finalSnapshotHash':_0xb6e286[_0x1a4420(0x10e)][_0x1a4420(0xc2)],'reportedDeletedCount':_0x4b1ef7,'targetAbsent':!_0xb6e286[_0x1a4420(0x10e)][_0x1a4420(0xfb)][_0x1a4420(0xce)](_0x282e33),'allTargetsAbsent':!![],'targetIds':_0x36fdec}});return{'ok':!![],'data':_0x31a995,'message':_0x1a4420(0xc1)+_0x1c55a1[_0x1a4420(0xf0)]+_0x1a4420(0x100)+_0x282e33+'.'};}};async function readDeleteOutcome(_0x9f6528,_0x181aa2){const _0x58c0b0=a151_0x3cdc98,_0x111dee=await fetchMenuSnapshot(_0x9f6528['appCode'],_0x9f6528[_0x58c0b0(0xf3)]);return{'snapshot':_0x111dee,'absentIds':_0x181aa2[_0x58c0b0(0x105)](_0x434ca2=>!_0x111dee[_0x58c0b0(0xfb)][_0x58c0b0(0xce)](_0x434ca2)),'remainingIds':_0x181aa2[_0x58c0b0(0x105)](_0x1da127=>_0x111dee[_0x58c0b0(0xfb)][_0x58c0b0(0xce)](_0x1da127))};}function verificationFromOutcome(_0x1f8050){const _0x14ac84=a151_0x3cdc98;return{'checkedBy':_0x14ac84(0xcc),'absentIds':_0x1f8050[_0x14ac84(0x126)],'remainingIds':_0x1f8050['remainingIds']};}function validateDeleteDryRunInput(_0x3eb614){const _0x4e66af=a151_0x3cdc98;validateExactId(_0x3eb614);if(!hasFlag(_0x3eb614,_0x4e66af(0x112))||!_0x3eb614[_0x4e66af(0x127)](_0x4e66af(0x112))['trim']())throw CliErrors[_0x4e66af(0xee)](_0x4e66af(0x112),_0x4e66af(0x123));if(hasFlag(_0x3eb614,_0x4e66af(0xc6)))throw CliErrors[_0x4e66af(0x113)](_0x4e66af(0x116));}function validateDeleteExecuteInput(_0x2c624a){const _0x4fcf96=a151_0x3cdc98;if(!hasFlag(_0x2c624a,_0x4fcf96(0xc6))||!_0x2c624a['str']('plan')[_0x4fcf96(0x11d)]())throw CliErrors['flagMissing'](_0x4fcf96(0xc6),'--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.');const _0x4b70ba=['id',_0x4fcf96(0x109),'plan-out',_0x4fcf96(0x136),_0x4fcf96(0x10a),_0x4fcf96(0x118)][_0x4fcf96(0x105)](_0x18cb61=>hasFlag(_0x2c624a,_0x18cb61));if(_0x4b70ba['length']>0x0)throw CliErrors[_0x4fcf96(0x113)]('Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20'+_0x4b70ba['map'](_0x447ab8=>'--'+_0x447ab8)[_0x4fcf96(0xc9)](',\x20')+'.');}async function buildDeletePlan(_0x43b1a8){const _0x29b804=a151_0x3cdc98,_0x287414=validateExactId(_0x43b1a8),_0x88123e=await fetchMutationSnapshot(_0x43b1a8,_0x29b804(0xf2),_0x287414),_0x2289e1=requireMenu(_0x88123e,_0x287414);assertExpectedState(_0x43b1a8,_0x2289e1);const _0x418e85=_0x43b1a8['bool'](_0x29b804(0x109));let _0x16b958;if(_0x418e85){if(_0x2289e1[_0x29b804(0x12c)]['trim']()[_0x29b804(0xdd)]()!==_0x29b804(0x11b))throw menuError(_0x29b804(0x138),_0x29b804(0xf8)+_0x2289e1['id']+_0x29b804(0xe8)+(_0x2289e1['type']||'unknown')+_0x29b804(0xed));_0x16b958=collectDeleteTargets(_0x88123e,_0x2289e1),_0x16b958[_0x29b804(0x131)](_0xd1dc36=>assertDeleteSafety(_0xd1dc36,!![]));}else assertDeleteSafety(_0x2289e1),_0x16b958=[_0x2289e1];assertNoSharedPages(_0x88123e,_0x16b958);const _0x2ad5c3=_0x16b958[_0x29b804(0xf7)](_0x1e1810=>_0x1e1810['id']),_0x438711=cascadeForTargets(_0x16b958),_0x4a5a5d=_0x438711['pages'][_0x29b804(0xf0)]>0x0?[_0x29b804(0xe5)]:[];return mutationResult({'operation':_0x29b804(0xe4),'selector':{'id':_0x287414,'recursive':_0x418e85},'before':_0x2289e1,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x29b804(0x117),'method':_0x29b804(0x133),'path':_0x29b804(0xdf),'body':{'idList':_0x2ad5c3}}],'targets':_0x16b958,'deleteOrder':_0x2ad5c3,'snapshotHash':_0x88123e['hash'],'cascade':_0x438711,'warnings':_0x4a5a5d});}function assertDeleteSafety(_0x2c90b6,_0x3d3c83=![]){const _0x1bec8b=a151_0x3cdc98,_0x2261e9=_0x2c90b6['type']['trim']()[_0x1bec8b(0xdd)]()===_0x1bec8b(0x11b);if(_0x2c90b6['childrenCount']>0x0&&(!_0x3d3c83||!_0x2261e9))throw menuError(_0x1bec8b(0x134),_0x1bec8b(0xf8)+_0x2c90b6['id']+'\x20has\x20'+_0x2c90b6[_0x1bec8b(0xd0)]+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.',_0x1bec8b(0xd6)+_0x2c90b6['childrenIds'][_0x1bec8b(0xc9)](',\x20'));if(_0x2261e9&&_0x2c90b6[_0x1bec8b(0x137)]!=null)throw menuError(_0x1bec8b(0xbf),'Folder\x20'+_0x2c90b6['id']+_0x1bec8b(0x104)+_0x2c90b6[_0x1bec8b(0x137)]+_0x1bec8b(0xd8),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x2261e9)return;if(!_0x2c90b6[_0x1bec8b(0xd5)])throw menuError('menu_folder_resources_invalid','Folder\x20'+_0x2c90b6['id']+_0x1bec8b(0x110),_0x1bec8b(0x132));if(_0x2c90b6[_0x1bec8b(0x12d)][_0x1bec8b(0xf0)]>0x0)throw menuError(_0x1bec8b(0xdb),_0x1bec8b(0xf1)+_0x2c90b6['id']+'\x20still\x20references\x20'+_0x2c90b6[_0x1bec8b(0x12d)][_0x1bec8b(0xf0)]+'\x20resource\x20URL(s).','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.');}function collectDeleteTargets(_0x37eb6f,_0x276663){const _0x33744b=[],_0x4101ff=new Set(),_0x5a906c=new Set(),_0x43579e=_0x2d2293=>{const _0x4e6e54=a151_0x3f02;if(_0x4101ff[_0x4e6e54(0xce)](_0x2d2293['id']))throw menuError(_0x4e6e54(0x11a),_0x4e6e54(0x12b)+_0x2d2293['id']+'.');if(_0x5a906c[_0x4e6e54(0xce)](_0x2d2293['id']))return;_0x4101ff[_0x4e6e54(0xf4)](_0x2d2293['id']);for(const _0x6177ef of _0x2d2293[_0x4e6e54(0xc3)]){const _0x54bf18=_0x37eb6f['byId']['get'](_0x6177ef);if(!_0x54bf18)throw menuError(_0x4e6e54(0x11a),_0x4e6e54(0xf8)+_0x2d2293['id']+'\x20references\x20missing\x20child\x20'+_0x6177ef+'.');_0x43579e(_0x54bf18);}_0x4101ff[_0x4e6e54(0xe4)](_0x2d2293['id']),_0x5a906c[_0x4e6e54(0xf4)](_0x2d2293['id']),_0x33744b[_0x4e6e54(0x120)](_0x2d2293);};return _0x43579e(_0x276663),_0x33744b;}function assertDeleteTargetsComplete(_0xe3b60a,_0x399021){const _0x2b1d04=a151_0x3cdc98,_0x31d1b4=requireMenu(_0x399021,_0xe3b60a[_0x2b1d04(0x114)]['id']);if(_0xe3b60a['recursive']&&_0x31d1b4[_0x2b1d04(0x12c)]['trim']()[_0x2b1d04(0xdd)]()!=='folder')throw menuError(_0x2b1d04(0xd9),_0x2b1d04(0x102)+_0x31d1b4['id']+_0x2b1d04(0xe6));const _0x3a2501=_0xe3b60a[_0x2b1d04(0x109)]?collectDeleteTargets(_0x399021,_0x31d1b4)[_0x2b1d04(0xf7)](_0x1cdf74=>_0x1cdf74['id']):[_0x31d1b4['id']];if(JSON[_0x2b1d04(0x111)](_0xe3b60a[_0x2b1d04(0xe1)])!==JSON[_0x2b1d04(0x111)](_0x3a2501))throw menuError(_0x2b1d04(0xd9),_0x2b1d04(0xda),_0x2b1d04(0x12a));}function assertNoSharedPages(_0x3e7b04,_0x515868){const _0x1c8fb9=a151_0x3cdc98,_0x570787=new Set(_0x515868['map'](_0x3d7e66=>_0x3d7e66['id'])),_0x200857=new Set(_0x515868['map'](_0x5377b1=>_0x5377b1[_0x1c8fb9(0x137)])[_0x1c8fb9(0x105)](_0x5f48ac=>_0x5f48ac!=null));if(_0x200857['size']===0x0)return;const _0x2af99f=_0x3e7b04['menus']['filter'](_0x27b9f5=>!_0x570787[_0x1c8fb9(0xce)](_0x27b9f5['id'])&&_0x27b9f5['pageId']!=null&&_0x200857[_0x1c8fb9(0xce)](_0x27b9f5['pageId']));if(_0x2af99f[_0x1c8fb9(0xf0)]===0x0)return;const _0x35d194=_0x2af99f['map'](_0x52d8e6=>'page\x20'+_0x52d8e6[_0x1c8fb9(0x137)]+_0x1c8fb9(0x12f)+_0x52d8e6['id'])[_0x1c8fb9(0xc9)](',\x20');throw menuError(_0x1c8fb9(0x121),_0x1c8fb9(0xcd)+_0x35d194+'.',_0x1c8fb9(0xf6));}function assertCascadeMatchesPlan(_0x8faa6c,_0x4e2455){const _0x12beab=a151_0x3cdc98,_0x3b22c2=cascadeForTargets(_0x4e2455);if(JSON[_0x12beab(0x111)](_0x8faa6c['cascade'])!==JSON[_0x12beab(0x111)](_0x3b22c2))throw menuError(_0x12beab(0xd9),_0x12beab(0xc8));}function cascadeForTargets(_0x47dbea){const _0x122c66=a151_0x3cdc98,_0x3fe024=_0x47dbea['map'](_0x42e153=>_0x42e153[_0x122c66(0x137)])[_0x122c66(0x105)](_0x4f113a=>_0x4f113a!=null)[_0x122c66(0x105)]((_0x327ab9,_0x39ffe4,_0xaa411b)=>_0xaa411b[_0x122c66(0xe9)](_0x327ab9)===_0x39ffe4);return{'pages':_0x3fe024,'pageSchemaAffected':_0x3fe024[_0x122c66(0xf0)]>0x0};}function asMenuError(_0x5f31f4){const _0x65f55b=a151_0x3cdc98;return _0x5f31f4 instanceof CliError?_0x5f31f4:menuError(_0x65f55b(0xd9),_0x5f31f4 instanceof Error?_0x5f31f4[_0x65f55b(0xe3)]:String(_0x5f31f4));}function a151_0x1747(){const _0x6da1db=['map','Menu\x20','\x20deleted\x20menus;\x20expected\x20','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','byId','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','failed','139976nNdepM','createdAt','\x20menu(s)\x20under\x20exact\x20id\x20','high-risk-write','Recursive\x20menu\x20delete\x20plan\x20root\x20','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','filter','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.',';\x20execution\x20must\x20consume\x20','selector','recursive','expect-path','batch-delete','31686974FglZuH','bool','snapshot','rabetbase\x20menu\x20list\x20--format\x20json','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','stringify','plan-out','validation','target','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','batch-delete-menu','expected-children-count','pre-write-plan-validation','menu_tree_invalid','folder','):\x20','trim','Would\x20batch\x20delete\x20','causeMessage','push','menu_page_shared','25oeWlNE','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','path','absentIds','str','verification','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','type','resources','unconfirmed','\x20->\x20menu\x20','plan-validation','forEach','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','POST','menu_non_empty','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','expect-parent-id','pageId','menu_recursive_requires_folder','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','menu_delete_page_bound','4736018ENvWNi','Deleted\x20','hash','childrenIds','batch\x20delete','90kViFJU','plan','boolean','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','join','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','Batch\x20delete\x20request\x20for\x20menu\x20','menu\x20list','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','has','5804424hvWhAN','childrenCount','dry-run','menu_batch_delete_count_mismatch','Post-failure\x20menu\x20readback\x20failed\x20(','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','resourcesValid','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','2Ejxfcy','\x20and\x20cannot\x20be\x20deleted\x20safely.','menu_plan_invalid','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','menu_folder_has_resources','706439BhwLbG','toLowerCase','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','/smartapi/menu/batchDelete','expiresAt','deleteOrder','appCode','message','delete','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','\x20is\x20not\x20a\x20folder.','810234ryYBhG','\x20is\x20type\x20\x22','indexOf','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','3022326WluCOg','snapshotHash','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','flagMissing','30QcMBta','length','Folder\x20','plan\x20delete','cookie','add','remainingIds','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.'];a151_0x1747=function(){return _0x6da1db;};return a151_0x1747();}
|
|
1
|
+
const a151_0x9e9958=a151_0x5636;(function(_0x355768,_0x35dcb0){const _0x5e1563=a151_0x5636,_0x423d68=_0x355768();while(!![]){try{const _0x12de4e=-parseInt(_0x5e1563(0x21b))/0x1*(-parseInt(_0x5e1563(0x1f0))/0x2)+parseInt(_0x5e1563(0x1cf))/0x3+parseInt(_0x5e1563(0x23d))/0x4*(parseInt(_0x5e1563(0x228))/0x5)+parseInt(_0x5e1563(0x1f7))/0x6*(parseInt(_0x5e1563(0x20e))/0x7)+parseInt(_0x5e1563(0x222))/0x8+parseInt(_0x5e1563(0x1f8))/0x9+parseInt(_0x5e1563(0x20c))/0xa*(-parseInt(_0x5e1563(0x1ee))/0xb);if(_0x12de4e===_0x35dcb0)break;else _0x423d68['push'](_0x423d68['shift']());}catch(_0x1590ec){_0x423d68['push'](_0x423d68['shift']());}}}(a151_0x192a,0x449cd));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':a151_0x9e9958(0x22a),'path':a151_0x9e9958(0x237)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a151_0x9e9958(0x20a)},MENU_DELETE_RECURSIVE_FLAG={'name':'recursive','type':a151_0x9e9958(0x232),'description':a151_0x9e9958(0x204)},MENU_DELETE_PLAN_OUT_FLAG={'name':'plan-out','type':a151_0x9e9958(0x1fa),'description':a151_0x9e9958(0x238)},MENU_DELETE_PLAN_FLAG={'name':'plan','type':a151_0x9e9958(0x1fa),'description':a151_0x9e9958(0x218)};export const menuDelete={'service':'menu','command':a151_0x9e9958(0x1d4),'description':'Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','risk':a151_0x9e9958(0x1de),'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'(_0x2c68e1){_0x2c68e1['bool']('dry-run')?validateDeleteDryRunInput(_0x2c68e1):validateDeleteExecuteInput(_0x2c68e1),requireExplicitYes(_0x2c68e1);},async 'dryRun'(_0x21eb6d){const _0x4f3dd8=a151_0x9e9958;validateDeleteDryRunInput(_0x21eb6d);const _0xa89dbf=await buildDeletePlan(_0x21eb6d),_0x35bc73=createMenuDeletePlanFile(_0x21eb6d[_0x4f3dd8(0x205)],_0xa89dbf),_0x3e38fd=await writeMenuDeletePlan(_0x21eb6d['str'](_0x4f3dd8(0x203)),_0x35bc73),_0x504748=mutationResult({..._0xa89dbf,'planFile':{'path':_0x3e38fd,'createdAt':_0x35bc73[_0x4f3dd8(0x1e7)],'expiresAt':_0x35bc73[_0x4f3dd8(0x230)]}});return menuDryRunResult(_0x504748,{'method':'POST','url':_0x4f3dd8(0x237),'body':{'idList':_0x504748['deleteOrder']},'description':_0x4f3dd8(0x233)+(_0x504748['deleteOrder']?.[_0x4f3dd8(0x1df)]??0x1)+_0x4f3dd8(0x215)+_0x504748[_0x4f3dd8(0x1e3)]['id']+_0x4f3dd8(0x1d2)+_0x3e38fd+'.'});},async 'execute'(_0x21f959){const _0x52a9c7=a151_0x9e9958;requireExplicitYes(_0x21f959),validateDeleteExecuteInput(_0x21f959);const _0x3a9107=await readMenuDeletePlan(_0x21f959['str']('plan')),_0x4f1541=mutationPlanFromDeleteFile(_0x3a9107['plan'],_0x3a9107[_0x52a9c7(0x1c8)]),_0x1d87be=_0x3a9107[_0x52a9c7(0x207)][_0x52a9c7(0x1ef)]['id'];try{assertMenuDeletePlanExecutable(_0x3a9107[_0x52a9c7(0x207)],_0x21f959['appCode']);}catch(_0x236bd8){throw menuFailure(asMenuError(_0x236bd8),_0x4f1541,{'stage':'plan-validation','failed':{'id':_0x1d87be}});}let _0x1f7e4b,_0x30cf3f;try{_0x1f7e4b=await fetchMutationSnapshot(_0x21f959,_0x52a9c7(0x206),_0x1d87be),_0x30cf3f=assertMenuDeletePlanCurrent(_0x3a9107[_0x52a9c7(0x207)],_0x21f959[_0x52a9c7(0x205)],_0x1f7e4b),assertDeleteTargetsComplete(_0x3a9107[_0x52a9c7(0x207)],_0x1f7e4b),_0x30cf3f[_0x52a9c7(0x1e0)](_0x5119a3=>assertDeleteSafety(_0x5119a3,_0x3a9107['plan']['recursive'])),assertNoSharedPages(_0x1f7e4b,_0x30cf3f),assertCascadeMatchesPlan(_0x4f1541,_0x30cf3f);}catch(_0x46796a){throw menuFailure(asMenuError(_0x46796a),_0x4f1541,{'stage':'pre-write-plan-validation','failed':{'id':_0x1d87be}});}const _0x377d02=_0x3a9107['plan'][_0x52a9c7(0x210)];let _0x1231ed;try{_0x1231ed=await batchDeleteMenuEntities(_0x21f959['cookie'],_0x377d02);}catch(_0x4a84cb){const _0x1b0020=mapMenuApiError(_0x4a84cb,_0x52a9c7(0x1e4)),_0x1e47b9=[_0x52a9c7(0x23a)];let _0x4dfde7;try{_0x4dfde7=await readDeleteOutcome(_0x21f959,_0x377d02);}catch(_0x1d4939){const _0x4b5c40=describeMenuErrorCause(_0x1d4939,_0x52a9c7(0x1fe),_0x1d87be);_0x1e47b9['push']('Post-failure\x20menu\x20readback\x20failed\x20('+_0x4b5c40[_0x52a9c7(0x21d)]+_0x52a9c7(0x1f6)+_0x4b5c40['causeMessage']);throw menuFailure(_0x1b0020,_0x4f1541,{'stage':_0x52a9c7(0x1e9),'failed':{'targetIds':_0x377d02,'targetIdsAbsent':_0x52a9c7(0x1e2),..._0x4b5c40},'warnings':_0x1e47b9,'verification':{'status':_0x52a9c7(0x21c),'lookupCommand':_0x52a9c7(0x1ea),'targetIds':_0x377d02}});}throw menuFailure(_0x1b0020,_0x4f1541,{'stage':'batch-delete','succeeded':_0x4dfde7[_0x52a9c7(0x200)][_0x52a9c7(0x216)](_0x59c6e1=>({'id':_0x59c6e1,'deleted':!![]})),'failed':{'targetIds':_0x377d02,'absentIds':_0x4dfde7[_0x52a9c7(0x200)],'remainingIds':_0x4dfde7[_0x52a9c7(0x1d0)]},'warnings':_0x1e47b9,'verification':verificationFromOutcome(_0x4dfde7)});}if(_0x1231ed!==_0x377d02[_0x52a9c7(0x1df)]){const _0x375ebe=menuError('menu_batch_delete_count_mismatch',_0x52a9c7(0x1e1)+_0x1231ed+'\x20deleted\x20menus;\x20expected\x20'+_0x377d02[_0x52a9c7(0x1df)]+'.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.'),_0x52720c=[_0x52a9c7(0x227)];let _0x3af664;try{_0x3af664=await readDeleteOutcome(_0x21f959,_0x377d02);}catch(_0x3e8a18){const _0x342263=describeMenuErrorCause(_0x3e8a18,_0x52a9c7(0x1ce),_0x1d87be);_0x52720c[_0x52a9c7(0x20d)](_0x52a9c7(0x1e8)+_0x342263[_0x52a9c7(0x21d)]+_0x52a9c7(0x1f6)+_0x342263['causeMessage']);throw menuFailure(_0x375ebe,_0x4f1541,{'stage':_0x52a9c7(0x1e9),'failed':{'targetIds':_0x377d02,'expectedCount':_0x377d02[_0x52a9c7(0x1df)],'reportedDeletedCount':_0x1231ed,'targetIdsAbsent':_0x52a9c7(0x1e2),..._0x342263},'warnings':_0x52720c,'verification':{'status':'failed','lookupCommand':_0x52a9c7(0x1ea),'targetIds':_0x377d02}});}throw menuFailure(_0x375ebe,_0x4f1541,{'stage':'batch-delete','succeeded':_0x3af664[_0x52a9c7(0x200)][_0x52a9c7(0x216)](_0x19cec4=>({'id':_0x19cec4,'deleted':!![]})),'failed':{'targetIds':_0x377d02,'expectedCount':_0x377d02['length'],'reportedDeletedCount':_0x1231ed,'absentIds':_0x3af664[_0x52a9c7(0x200)],'remainingIds':_0x3af664[_0x52a9c7(0x1d0)]},'warnings':_0x52720c,'verification':verificationFromOutcome(_0x3af664)});}let _0x589a6e;try{_0x589a6e=await readDeleteOutcome(_0x21f959,_0x377d02);}catch(_0x1e2642){const _0x281c67=describeMenuErrorCause(_0x1e2642,_0x52a9c7(0x223),_0x1d87be),_0x47edde=asVerificationError(_0x1e2642,_0x52a9c7(0x219)+_0x1d87be+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence');throw menuFailure(_0x47edde,_0x4f1541,{'stage':'verification','succeeded':_0x377d02['map'](_0x932047=>({'id':_0x932047,'deleteRequested':!![]})),'failed':{'id':_0x1d87be,'targetIds':_0x377d02,'targetIdsAbsent':_0x52a9c7(0x1e2),..._0x281c67},'warnings':[_0x52a9c7(0x1ec)],'verification':{'status':_0x52a9c7(0x21c),'lookupCommand':_0x52a9c7(0x1ea),'targetIds':_0x377d02}});}if(_0x589a6e[_0x52a9c7(0x1d0)]['length']>0x0){const _0x241acb=menuError('menu_verification_failed',_0x52a9c7(0x234)+_0x589a6e[_0x52a9c7(0x1d0)][_0x52a9c7(0x20b)](',\x20')+'.',_0x52a9c7(0x22c));throw menuFailure(_0x241acb,_0x4f1541,{'stage':_0x52a9c7(0x23c),'succeeded':_0x377d02[_0x52a9c7(0x216)](_0x5091d0=>({'id':_0x5091d0,'deleteRequested':!![]})),'failed':{'id':_0x1d87be,'targetIds':_0x377d02,'absentIds':_0x589a6e['absentIds'],'remainingIds':_0x589a6e[_0x52a9c7(0x1d0)]},'warnings':[_0x52a9c7(0x1f1)],'verification':verificationFromOutcome(_0x589a6e)});}const _0x326083=_0x377d02[_0x52a9c7(0x216)](_0x27d1f4=>({'id':_0x27d1f4,'deleted':!![]})),_0x52e5ce=mutationResult({..._0x4f1541,'dryRun':![],'succeeded':_0x326083,'verification':{'checkedBy':_0x52a9c7(0x1c5),'plannedSnapshotHash':_0x4f1541['snapshotHash'],'finalSnapshotHash':_0x589a6e[_0x52a9c7(0x202)]['hash'],'reportedDeletedCount':_0x1231ed,'targetAbsent':!_0x589a6e[_0x52a9c7(0x202)][_0x52a9c7(0x23e)][_0x52a9c7(0x1cb)](_0x1d87be),'allTargetsAbsent':!![],'targetIds':_0x377d02}});return{'ok':!![],'data':_0x52e5ce,'message':_0x52a9c7(0x1d7)+_0x326083[_0x52a9c7(0x1df)]+_0x52a9c7(0x215)+_0x1d87be+'.'};}};async function readDeleteOutcome(_0xd5376a,_0x15badb){const _0x22894c=a151_0x9e9958,_0x161119=await fetchMenuSnapshot(_0xd5376a[_0x22894c(0x205)],_0xd5376a[_0x22894c(0x22f)]);return{'snapshot':_0x161119,'absentIds':_0x15badb[_0x22894c(0x21f)](_0x319101=>!_0x161119[_0x22894c(0x23e)][_0x22894c(0x1cb)](_0x319101)),'remainingIds':_0x15badb[_0x22894c(0x21f)](_0x3c806e=>_0x161119[_0x22894c(0x23e)]['has'](_0x3c806e))};}function verificationFromOutcome(_0x3b9e13){const _0x464db4=a151_0x9e9958;return{'checkedBy':_0x464db4(0x1c5),'absentIds':_0x3b9e13[_0x464db4(0x200)],'remainingIds':_0x3b9e13[_0x464db4(0x1d0)]};}function validateDeleteDryRunInput(_0x2b20ee){const _0x5efbef=a151_0x9e9958;validateExactId(_0x2b20ee);if(!hasFlag(_0x2b20ee,_0x5efbef(0x203))||!_0x2b20ee[_0x5efbef(0x231)](_0x5efbef(0x203))['trim']())throw CliErrors['flagMissing'](_0x5efbef(0x203),'--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.');if(hasFlag(_0x2b20ee,_0x5efbef(0x207)))throw CliErrors[_0x5efbef(0x1fd)](_0x5efbef(0x1e6));}function validateDeleteExecuteInput(_0x54c01a){const _0x17ce0e=a151_0x9e9958;if(!hasFlag(_0x54c01a,'plan')||!_0x54c01a['str'](_0x17ce0e(0x207))[_0x17ce0e(0x1d8)]())throw CliErrors[_0x17ce0e(0x220)]('plan',_0x17ce0e(0x1c4));const _0xb567f4=['id',_0x17ce0e(0x22b),_0x17ce0e(0x203),_0x17ce0e(0x1cc),_0x17ce0e(0x239),_0x17ce0e(0x1f5)]['filter'](_0x85dd70=>hasFlag(_0x54c01a,_0x85dd70));if(_0xb567f4[_0x17ce0e(0x1df)]>0x0)throw CliErrors[_0x17ce0e(0x1fd)](_0x17ce0e(0x1f9)+_0xb567f4[_0x17ce0e(0x216)](_0x4213f3=>'--'+_0x4213f3)[_0x17ce0e(0x20b)](',\x20')+'.');}async function buildDeletePlan(_0x2f54c3){const _0x258b4d=a151_0x9e9958,_0x1471f1=validateExactId(_0x2f54c3),_0x170b34=await fetchMutationSnapshot(_0x2f54c3,_0x258b4d(0x1d5),_0x1471f1),_0x4fdc2e=requireMenu(_0x170b34,_0x1471f1);assertExpectedState(_0x2f54c3,_0x4fdc2e);const _0x5bac1b=_0x2f54c3[_0x258b4d(0x221)](_0x258b4d(0x22b));let _0x3f5c5c;if(_0x5bac1b){if(_0x4fdc2e[_0x258b4d(0x1db)][_0x258b4d(0x1d8)]()[_0x258b4d(0x211)]()!==_0x258b4d(0x1f2))throw menuError(_0x258b4d(0x22d),_0x258b4d(0x1ed)+_0x4fdc2e['id']+'\x20is\x20type\x20\x22'+(_0x4fdc2e[_0x258b4d(0x1db)]||'unknown')+'\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.');_0x3f5c5c=collectDeleteTargets(_0x170b34,_0x4fdc2e),_0x3f5c5c[_0x258b4d(0x1e0)](_0x5a5aca=>assertDeleteSafety(_0x5a5aca,!![]));}else assertDeleteSafety(_0x4fdc2e),_0x3f5c5c=[_0x4fdc2e];assertNoSharedPages(_0x170b34,_0x3f5c5c);const _0x3df852=_0x3f5c5c[_0x258b4d(0x216)](_0x52c1fe=>_0x52c1fe['id']),_0x501387=cascadeForTargets(_0x3f5c5c),_0x2613b4=_0x501387[_0x258b4d(0x225)][_0x258b4d(0x1df)]>0x0?[_0x258b4d(0x1d3)]:[];return mutationResult({'operation':_0x258b4d(0x1d4),'selector':{'id':_0x1471f1,'recursive':_0x5bac1b},'before':_0x4fdc2e,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':'batch-delete-menu','method':_0x258b4d(0x22a),'path':_0x258b4d(0x237),'body':{'idList':_0x3df852}}],'targets':_0x3f5c5c,'deleteOrder':_0x3df852,'snapshotHash':_0x170b34[_0x258b4d(0x1fc)],'cascade':_0x501387,'warnings':_0x2613b4});}function assertDeleteSafety(_0x1fe304,_0x395c5b=![]){const _0x2c8095=a151_0x9e9958,_0x4302a6=_0x1fe304['type'][_0x2c8095(0x1d8)]()[_0x2c8095(0x211)]()===_0x2c8095(0x1f2);if(_0x1fe304[_0x2c8095(0x209)]>0x0&&(!_0x395c5b||!_0x4302a6))throw menuError(_0x2c8095(0x224),_0x2c8095(0x1ed)+_0x1fe304['id']+_0x2c8095(0x1dd)+_0x1fe304[_0x2c8095(0x209)]+_0x2c8095(0x1ff),'Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20'+_0x1fe304[_0x2c8095(0x214)]['join'](',\x20'));if(_0x4302a6&&_0x1fe304[_0x2c8095(0x235)]!=null)throw menuError(_0x2c8095(0x226),'Folder\x20'+_0x1fe304['id']+_0x2c8095(0x1d9)+_0x1fe304['pageId']+_0x2c8095(0x217),_0x2c8095(0x1d1));if(!_0x4302a6)return;if(!_0x1fe304['resourcesValid'])throw menuError(_0x2c8095(0x1c9),_0x2c8095(0x1d6)+_0x1fe304['id']+_0x2c8095(0x1eb),_0x2c8095(0x1cd));if(_0x1fe304[_0x2c8095(0x1f3)][_0x2c8095(0x1df)]>0x0)throw menuError('menu_folder_has_resources','Folder\x20'+_0x1fe304['id']+_0x2c8095(0x201)+_0x1fe304[_0x2c8095(0x1f3)][_0x2c8095(0x1df)]+'\x20resource\x20URL(s).',_0x2c8095(0x23f));}function collectDeleteTargets(_0x57e83b,_0x38d2f8){const _0xf89b66=[],_0x330bdc=new Set(),_0x3311a8=new Set(),_0x4a4c78=_0x3feb50=>{const _0x5fdaaf=a151_0x5636;if(_0x330bdc['has'](_0x3feb50['id']))throw menuError(_0x5fdaaf(0x212),_0x5fdaaf(0x1fb)+_0x3feb50['id']+'.');if(_0x3311a8['has'](_0x3feb50['id']))return;_0x330bdc[_0x5fdaaf(0x20f)](_0x3feb50['id']);for(const _0x48f8ba of _0x3feb50[_0x5fdaaf(0x214)]){const _0x392bfb=_0x57e83b[_0x5fdaaf(0x23e)]['get'](_0x48f8ba);if(!_0x392bfb)throw menuError(_0x5fdaaf(0x212),_0x5fdaaf(0x1ed)+_0x3feb50['id']+'\x20references\x20missing\x20child\x20'+_0x48f8ba+'.');_0x4a4c78(_0x392bfb);}_0x330bdc[_0x5fdaaf(0x1d4)](_0x3feb50['id']),_0x3311a8['add'](_0x3feb50['id']),_0xf89b66['push'](_0x3feb50);};return _0x4a4c78(_0x38d2f8),_0xf89b66;}function assertDeleteTargetsComplete(_0x266af4,_0x546733){const _0x313c4b=a151_0x9e9958,_0xcc88d4=requireMenu(_0x546733,_0x266af4[_0x313c4b(0x1ef)]['id']);if(_0x266af4[_0x313c4b(0x22b)]&&_0xcc88d4[_0x313c4b(0x1db)][_0x313c4b(0x1d8)]()['toLowerCase']()!==_0x313c4b(0x1f2))throw menuError(_0x313c4b(0x23b),_0x313c4b(0x1e5)+_0xcc88d4['id']+'\x20is\x20not\x20a\x20folder.');const _0x4d57af=_0x266af4[_0x313c4b(0x22b)]?collectDeleteTargets(_0x546733,_0xcc88d4)['map'](_0x4dd2b6=>_0x4dd2b6['id']):[_0xcc88d4['id']];if(JSON['stringify'](_0x266af4[_0x313c4b(0x210)])!==JSON[_0x313c4b(0x22e)](_0x4d57af))throw menuError(_0x313c4b(0x23b),_0x313c4b(0x208),_0x313c4b(0x236));}function a151_0x5636(_0x22aa0d,_0x239d15){_0x22aa0d=_0x22aa0d-0x1c4;const _0x192a55=a151_0x192a();let _0x5636ea=_0x192a55[_0x22aa0d];return _0x5636ea;}function assertNoSharedPages(_0x2f08c6,_0x449f8b){const _0x5ce9dc=a151_0x9e9958,_0x1f462f=new Set(_0x449f8b[_0x5ce9dc(0x216)](_0x1e1b76=>_0x1e1b76['id'])),_0x3f8e0a=new Set(_0x449f8b['map'](_0x412f1e=>_0x412f1e[_0x5ce9dc(0x235)])[_0x5ce9dc(0x21f)](_0x3ce5f8=>_0x3ce5f8!=null));if(_0x3f8e0a[_0x5ce9dc(0x1ca)]===0x0)return;const _0x38056a=_0x2f08c6[_0x5ce9dc(0x213)]['filter'](_0x50a095=>!_0x1f462f[_0x5ce9dc(0x1cb)](_0x50a095['id'])&&_0x50a095[_0x5ce9dc(0x235)]!=null&&_0x3f8e0a[_0x5ce9dc(0x1cb)](_0x50a095[_0x5ce9dc(0x235)]));if(_0x38056a[_0x5ce9dc(0x1df)]===0x0)return;const _0x3c2e01=_0x38056a[_0x5ce9dc(0x216)](_0x476155=>_0x5ce9dc(0x1c7)+_0x476155['pageId']+_0x5ce9dc(0x1f4)+_0x476155['id'])[_0x5ce9dc(0x20b)](',\x20');throw menuError('menu_page_shared',_0x5ce9dc(0x229)+_0x3c2e01+'.',_0x5ce9dc(0x1c6));}function assertCascadeMatchesPlan(_0x34063a,_0x32f15f){const _0x1f66bf=a151_0x9e9958,_0x174a63=cascadeForTargets(_0x32f15f);if(JSON['stringify'](_0x34063a[_0x1f66bf(0x21a)])!==JSON['stringify'](_0x174a63))throw menuError(_0x1f66bf(0x23b),_0x1f66bf(0x21e));}function cascadeForTargets(_0x33f888){const _0x4a4187=a151_0x9e9958,_0x473f8=_0x33f888[_0x4a4187(0x216)](_0x1b03de=>_0x1b03de['pageId'])[_0x4a4187(0x21f)](_0x1b3840=>_0x1b3840!=null)[_0x4a4187(0x21f)]((_0xf777dc,_0x5b2dc2,_0x47b731)=>_0x47b731[_0x4a4187(0x1da)](_0xf777dc)===_0x5b2dc2);return{'pages':_0x473f8,'pageSchemaAffected':_0x473f8[_0x4a4187(0x1df)]>0x0};}function asMenuError(_0x564daf){const _0x15e845=a151_0x9e9958;return _0x564daf instanceof CliError?_0x564daf:menuError(_0x15e845(0x23b),_0x564daf instanceof Error?_0x564daf[_0x15e845(0x1dc)]:String(_0x564daf));}function a151_0x192a(){const _0x3d05b7=['Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','hash','validation','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','absentIds','\x20still\x20references\x20','snapshot','plan-out','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','appCode','execute\x20reviewed\x20delete\x20plan','plan','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','childrenCount','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','join','1370990QhFood','push','3371746XkFMzY','add','deleteOrder','toLowerCase','menu_tree_invalid','menus','childrenIds','\x20menu(s)\x20under\x20exact\x20id\x20','map','\x20and\x20cannot\x20be\x20deleted\x20safely.','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','Batch\x20delete\x20request\x20for\x20menu\x20','cascade','405mrbAOR','failed','causeCode','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','filter','flagMissing','bool','629408bzxWGc','verify\x20batch\x20delete','menu_non_empty','pages','menu_delete_page_bound','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','10kItzcQ','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','POST','recursive','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','menu_recursive_requires_folder','stringify','cookie','expiresAt','str','boolean','Would\x20batch\x20delete\x20','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','pageId','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','/smartapi/menu/batchDelete','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','expect-path','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','menu_plan_invalid','verification','286508lnDbgL','byId','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','menu\x20list','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','page\x20','path','menu_folder_resources_invalid','size','has','expect-parent-id','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','179001eHaWkP','remainingIds','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.',';\x20execution\x20must\x20consume\x20','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','delete','plan\x20delete','Folder\x20','Deleted\x20','trim','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','indexOf','type','message','\x20has\x20','high-risk-write','length','forEach','Backend\x20reported\x20','unconfirmed','selector','batch\x20delete','Recursive\x20menu\x20delete\x20plan\x20root\x20','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','createdAt','Post-mismatch\x20menu\x20readback\x20failed\x20(','batch-delete','rabetbase\x20menu\x20list\x20--format\x20json','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','Menu\x20','55BpmYtq','target','954HnAxZt','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','folder','resources','\x20->\x20menu\x20','expected-children-count','):\x20','6wvIdht','90648bIOMSm','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','string'];a151_0x192a=function(){return _0x3d05b7;};return a151_0x192a();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a152_0x424fdc=a152_0x3a4b;(function(_0x2fc0d2,_0x376498){const _0x278b4e=a152_0x3a4b,_0xd38bf7=_0x2fc0d2();while(!![]){try{const _0x4f7275=-parseInt(_0x278b4e(0x1cd))/0x1+parseInt(_0x278b4e(0x199))/0x2+parseInt(_0x278b4e(0x1c3))/0x3+-parseInt(_0x278b4e(0x192))/0x4+parseInt(_0x278b4e(0x19e))/0x5+-parseInt(_0x278b4e(0x151))/0x6*(parseInt(_0x278b4e(0x1b4))/0x7)+-parseInt(_0x278b4e(0x1a6))/0x8*(-parseInt(_0x278b4e(0x19b))/0x9);if(_0x4f7275===_0x376498)break;else _0xd38bf7['push'](_0xd38bf7['shift']());}catch(_0x16f78e){_0xd38bf7['push'](_0xd38bf7['shift']());}}}(a152_0x3c90,0xaf61a));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a152_0x3c90(){const _0x1162e5=['menu_mutation_failed','add','isSafeInteger','data','https:','pre-write-recheck','Recovered\x20menu\x20','replace','external-link-create','hasOwnProperty','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','menu_permission_denied','<platform-generated>','afterPlan','menu_create_recovery_required','string','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','Would\x20create\x20external\x20website\x20link\x20menu\x20','\x20has\x20an\x20unexpected\x20','\x20has\x20an\x20unexpected\x20generated\x20path.','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','expectedPath','Recovered\x20created\x20external\x20menu\x20','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','menu_open_mode_invalid','Provide\x20an\x20HTTPS\x20URL.','Whether\x20the\x20menu\x20is\x20visible','menu_url_invalid','parentId','object','cookie','has','new-window','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','create\x20external\x20menu','stringify','includes','\x27\x5c\x27\x27','3540480ppXfbH','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','\x20--format\x20compress','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','<redacted>','bool','1308410HgUzVH','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','9098091hDIPXc','verification','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','408040QQomuM','plan','visible','prototype','Menu\x20label','after','External\x20menu\x20creation\x20failed.','Run\x20','8FzMSfc','menu_create_response_invalid','cause','label','menu','str','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','flagMissing','trim','failed','succeeded','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','35oMaJQN','create','body','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','Created\x20external\x20menu\x20','Created\x20menu\x20','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','menu_sort_invalid','map','POST','rabetbase\x20menu\x20list\x20--appcode\x20','create-recovery','menu_url_credentials_forbidden','byId','External\x20HTTPS\x20URL','3484641bxrsDk','username','menu_sort_overflow','menu_verification_failed','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','appCode','lookupCommand','\x20after\x20response\x20loss.','password','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','144617OaCTMo','url','rawerror','boolean','Menu\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','\x20failed\x20final\x20verification.','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','open-mode','Create\x20an\x20external\x20website\x20link\x20menu','\x20with\x20','embedded','path','selector','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','fact','/smartapi/menu/create','causemessage','1392192wcIugR','createdId','isArray','parent','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','toLowerCase','expectedSnapshotHash','plannedActions','type','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','parent-id','hash','length','protocol','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','code','create-response-validation','readbackerror','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','call','get','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','sort','menu_url_https_required','recovered','currentSnapshotHash'];a152_0x3c90=function(){return _0x1162e5;};return a152_0x3c90();}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';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':'iframe','new-window':'link'};export function validateExternalMenuUrl(_0x2e2356){const _0xeef973=a152_0x3a4b,_0x6f7272=_0x2e2356[_0xeef973(0x1ae)]();let _0x42a647;try{_0x42a647=new URL(_0x6f7272);}catch{throw menuError(_0xeef973(0x187),_0xeef973(0x1b3),_0xeef973(0x1b1));}if(_0x42a647[_0xeef973(0x15e)]!==_0xeef973(0x16f))throw menuError(_0xeef973(0x168),_0xeef973(0x180),_0xeef973(0x185));if(_0x42a647[_0xeef973(0x1c4)]||_0x42a647[_0xeef973(0x1cb)])throw menuError(_0xeef973(0x1c0),_0xeef973(0x1ac),_0xeef973(0x19d));return _0x6f7272;}export const menuExternalLinkCreate={'service':'menu','command':a152_0x424fdc(0x173),'description':a152_0x424fdc(0x1d6),'risk':'write','structuredErrors':!![],'flags':[{'name':a152_0x424fdc(0x1a9),'type':a152_0x424fdc(0x17a),'required':!![],'description':a152_0x424fdc(0x1a2)},{'name':a152_0x424fdc(0x1d5),'type':'string','required':!![],'enum':[a152_0x424fdc(0x1d8),a152_0x424fdc(0x18c)],'description':'How\x20to\x20open\x20the\x20external\x20website'},{'name':a152_0x424fdc(0x1ce),'type':a152_0x424fdc(0x17a),'required':!![],'description':a152_0x424fdc(0x1c2)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':'visible','type':a152_0x424fdc(0x1d0),'default':!![],'description':a152_0x424fdc(0x186)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4622b4){validateAddInput(_0x4622b4);},async 'dryRun'(_0x22d7af){const _0x2a0667=a152_0x424fdc;validateAddInput(_0x22d7af);const {plan:_0x51bd0d}=await buildSafeAddPlan(_0x22d7af,!![]),_0x43d427=_0x51bd0d[_0x2a0667(0x1a3)],_0x2bdbb1=createBody(_0x43d427);return menuDryRunResult(_0x51bd0d,{'method':'POST','url':_0x2a0667(0x14f),'body':_0x2bdbb1,'description':_0x2a0667(0x17c)+JSON[_0x2a0667(0x18f)](_0x43d427[_0x2a0667(0x1a9)])+_0x2a0667(0x1d7)+_0x22d7af['str'](_0x2a0667(0x1d5))+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x3ffb30){const _0x5b89af=a152_0x424fdc;validateAddInput(_0x3ffb30);const _0x3b143d=await buildSafeAddPlan(_0x3ffb30,![]),{plan:_0x3bef26,snapshot:_0x345d40}=_0x3b143d,_0x155f25=_0x3bef26[_0x5b89af(0x1a3)],_0x4a58dc=buildMenuLookupCommand(_0x3ffb30[_0x5b89af(0x1c8)]);await recheckAddSnapshot(_0x3ffb30,_0x3bef26);let _0x4a5f55;try{_0x4a5f55=await createMenuEntity(_0x3ffb30[_0x5b89af(0x1c8)],_0x3ffb30[_0x5b89af(0x18a)],createBody(_0x155f25));}catch(_0x249fea){const _0xd090e4=mapMenuApiError(_0x249fea,_0x5b89af(0x18e));if(!isMenuResponseLoss(_0x249fea)||_0xd090e4[_0x5b89af(0x160)]===_0x5b89af(0x176))throw externalLinkCreateFailure(_0xd090e4,_0x3bef26,{'stage':_0x5b89af(0x1b5),'failed':{},'verification':{'status':_0x5b89af(0x1af),'lookupCommand':_0x4a58dc}});return recoverAfterResponseLoss(_0x3ffb30,_0x3b143d,_0x4a58dc);}const _0x4e154a=Number(_0x4a5f55?.['id']),_0x5cd3d6=typeof _0x4a5f55?.['path']==='string'?_0x4a5f55[_0x5b89af(0x1d9)]:'';if(!Number[_0x5b89af(0x16d)](_0x4e154a)||_0x4e154a<=0x0||!_0x5cd3d6[_0x5b89af(0x1ae)]()){const _0x2ccd11=menuError('menu_create_response_invalid',_0x5b89af(0x195),_0x5b89af(0x1a5)+_0x4a58dc+_0x5b89af(0x163));throw externalLinkCreateFailure(_0x2ccd11,_0x3bef26,{'stage':_0x5b89af(0x161),'succeeded':Number[_0x5b89af(0x16d)](_0x4e154a)&&_0x4e154a>0x0?[{'id':_0x4e154a,'created':!![]}]:[],'failed':{'createdId':Number[_0x5b89af(0x16d)](_0x4e154a)?_0x4e154a:null,'generatedPathConfirmed':Boolean(_0x5cd3d6[_0x5b89af(0x1ae)]())},'warnings':[_0x5b89af(0x175)],'after':Number[_0x5b89af(0x16d)](_0x4e154a)&&_0x4e154a>0x0?{..._0x155f25,'id':_0x4e154a,'path':_0x5cd3d6}:_0x155f25,'verification':{'status':_0x5b89af(0x1af),'lookupCommand':_0x4a58dc,...Number['isSafeInteger'](_0x4e154a)&&_0x4e154a>0x0?{'targetId':_0x4e154a}:{}}});}const _0x41ff5e=await readAndVerifyCreatedMenu({'appCode':_0x3ffb30[_0x5b89af(0x1c8)],'cookie':_0x3ffb30[_0x5b89af(0x18a)],'plan':_0x3bef26,'afterPlan':_0x155f25,'createdId':_0x4e154a,'expectedPath':_0x5cd3d6,'lookupCommand':_0x4a58dc,'recovered':![]});return creationSuccess(_0x3bef26,_0x41ff5e['snapshot'],_0x41ff5e[_0x5b89af(0x14e)],![]);}};function validateAddInput(_0x5a4e57){const _0xbfe4a7=a152_0x424fdc;if(!_0x5a4e57[_0xbfe4a7(0x1ab)]('label')[_0xbfe4a7(0x1ae)]())throw CliErrors[_0xbfe4a7(0x1ad)]('label');resolveExternalMenuType(_0x5a4e57),validateExternalMenuUrl(_0x5a4e57[_0xbfe4a7(0x1ab)](_0xbfe4a7(0x1ce))),parseParentId(_0x5a4e57,'parent-id'),validateSort(_0x5a4e57);}function resolveExternalMenuType(_0x5be6ee){const _0x2b8ed2=a152_0x424fdc,_0x6813ef=_0x5be6ee[_0x2b8ed2(0x1ab)](_0x2b8ed2(0x1d5))[_0x2b8ed2(0x1ae)]();if(!_0x6813ef)throw CliErrors[_0x2b8ed2(0x1ad)](_0x2b8ed2(0x1d5));const _0x198196=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x6813ef];if(!_0x198196)throw menuError(_0x2b8ed2(0x184),_0x2b8ed2(0x17f),_0x2b8ed2(0x196));return _0x198196;}async function buildAddPlan(_0x133b1c,_0x5716e7){const _0x2dc0a3=a152_0x424fdc,_0x3550d7=await fetchMutationSnapshot(_0x133b1c,'create\x20external\x20menu'),_0x29e185=parseParentId(_0x133b1c,_0x2dc0a3(0x15b))??null;if(_0x29e185!=null)requireFolder(_0x3550d7,_0x29e185);const _0x2aaf58=validateSort(_0x133b1c),_0x45fb94=_0x2aaf58??nextSiblingSort(_0x3550d7,_0x29e185,_0x2dc0a3(0x1aa)),_0x4cf27f=_0x133b1c[_0x2dc0a3(0x1ab)](_0x2dc0a3(0x1a9))['trim'](),_0x2dce5f=resolveExternalMenuType(_0x133b1c),_0x112790=validateExternalMenuUrl(_0x133b1c[_0x2dc0a3(0x1ab)](_0x2dc0a3(0x1ce))),_0xb0c803=Object[_0x2dc0a3(0x1a1)][_0x2dc0a3(0x174)][_0x2dc0a3(0x164)](_0x133b1c['rawFlags'],_0x2dc0a3(0x1a0))?_0x133b1c[_0x2dc0a3(0x198)](_0x2dc0a3(0x1a0)):!![],_0x53600c={'id':null,'parentId':_0x29e185,'label':_0x4cf27f,'path':_0x2dc0a3(0x177),'url':_0x112790,'type':_0x2dce5f,'visible':_0xb0c803,'sort':_0x45fb94},_0x5d46eb=buildMenuLookupCommand(_0x133b1c[_0x2dc0a3(0x1c8)]),_0x3391e1=mutationResult({'operation':_0x2dc0a3(0x16c),'selector':{'parentId':_0x29e185,'type':_0x2dce5f,'label':_0x4cf27f,'url':_0x112790},'before':null,'after':_0x53600c,'dryRun':_0x5716e7,'backend':[{'method':_0x2dc0a3(0x1bd),'path':_0x2dc0a3(0x14f)}],'plannedActions':[{'stage':'create-menu','method':'POST','path':_0x2dc0a3(0x14f),'body':createBody(_0x53600c)}],'snapshotHash':_0x3550d7[_0x2dc0a3(0x15c)],'warnings':[_0x2dc0a3(0x1b2)],'verification':{'lookupCommand':_0x5d46eb}});return{'plan':_0x3391e1,'snapshot':_0x3550d7};}async function buildSafeAddPlan(_0x226237,_0x11f435){try{return await buildAddPlan(_0x226237,_0x11f435);}catch(_0x235d33){throw safeMenuAddError(_0x235d33);}}async function recheckAddSnapshot(_0x15f4b6,_0x49dcab){const _0x774548=a152_0x424fdc;try{await recheckMutationSnapshot(_0x15f4b6,_0x49dcab,_0x774548(0x18e));}catch(_0x568b2e){const _0x18f107=getFailureRecord(_0x568b2e);throw externalLinkCreateFailure(_0x568b2e,_0x49dcab,{'stage':_0x774548(0x170),'failed':{..._0x18f107?.[_0x774548(0x157)]?{'expectedSnapshotHash':_0x18f107[_0x774548(0x157)]}:{},..._0x18f107?.['currentSnapshotHash']?{'currentSnapshotHash':_0x18f107[_0x774548(0x16a)]}:{}}});}}function createBody(_0x77aaad){const _0x4ce2cc=a152_0x424fdc;return{'parentId':toApiParentId(_0x77aaad['parentId']),'label':String(_0x77aaad[_0x4ce2cc(0x1a9)]),'type':String(_0x77aaad[_0x4ce2cc(0x159)]),'url':String(_0x77aaad[_0x4ce2cc(0x1ce)]),'visible':Boolean(_0x77aaad['visible']),'sort':Number(_0x77aaad[_0x4ce2cc(0x167)]),'extend':{}};}function buildMenuLookupCommand(_0x6d59f0){const _0x1649ae=a152_0x424fdc,_0x3ced89='\x27'+_0x6d59f0[_0x1649ae(0x172)](/'/g,_0x1649ae(0x191))+'\x27';return _0x1649ae(0x1be)+_0x3ced89+_0x1649ae(0x194);}async function recoverAfterResponseLoss(_0x47dc31,_0x55c23b,_0x1e3eef){const _0x43c576=a152_0x424fdc,{plan:_0x187193,snapshot:_0x2f8012}=_0x55c23b,_0x5f0200=_0x187193[_0x43c576(0x1a3)];let _0x2505c2;try{_0x2505c2=await fetchMenuSnapshot(_0x47dc31['appCode'],_0x47dc31[_0x43c576(0x18a)]);}catch(_0x1ba9f7){throw recoveryRequiredFailure(_0x187193,_0x1e3eef,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x326155=_0x2505c2['menus']['filter'](_0x134dbe=>_0x134dbe[_0x43c576(0x188)]===_0x5f0200[_0x43c576(0x188)]&&_0x134dbe['type']===_0x5f0200['type']&&_0x134dbe[_0x43c576(0x1a9)]===_0x5f0200[_0x43c576(0x1a9)]&&_0x134dbe[_0x43c576(0x1ce)]===_0x5f0200[_0x43c576(0x1ce)]),_0x2df123=_0x326155['filter'](_0x274da8=>!_0x2f8012[_0x43c576(0x1c1)][_0x43c576(0x18b)](_0x274da8['id'])),_0x7cdcbb=_0x326155['filter'](_0xf0db09=>_0x2f8012[_0x43c576(0x1c1)][_0x43c576(0x18b)](_0xf0db09['id']));if(_0x326155[_0x43c576(0x15d)]!==0x1||_0x2df123[_0x43c576(0x15d)]!==0x1)throw recoveryRequiredFailure(_0x187193,_0x1e3eef,{'matchCount':_0x326155[_0x43c576(0x15d)],'newMatchCount':_0x2df123[_0x43c576(0x15d)],'preexistingMatchCount':_0x7cdcbb[_0x43c576(0x15d)]});const _0x216b93=_0x2df123[0x0];try{verifyCreatedFact(_0x216b93,_0x216b93['id'],_0x5f0200,null);}catch(_0x4a82ff){const _0x420433=_0x4a82ff instanceof Error&&_0x43c576(0x160)in _0x4a82ff?_0x4a82ff:menuError(_0x43c576(0x1c6),_0x43c576(0x171)+_0x216b93['id']+'\x20could\x20not\x20be\x20verified.',_0x43c576(0x1a5)+_0x1e3eef+_0x43c576(0x166));throw externalLinkCreateFailure(_0x420433,_0x187193,{'stage':_0x43c576(0x19c),'succeeded':[{'id':_0x216b93['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x216b93['id'],'finalFactsConfirmed':![]},'after':_0x216b93,'warnings':['Menu\x20'+_0x216b93['id']+'\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':'failed','targetId':_0x216b93['id'],'recovered':!![],'lookupCommand':_0x1e3eef}});}return creationSuccess(_0x187193,_0x2505c2,_0x216b93,!![]);}function recoveryRequiredFailure(_0x4cae31,_0x2c1511,_0x2ab4d0){const _0x471e61=a152_0x424fdc,_0x351a01=menuError(_0x471e61(0x179),'The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','Run\x20'+_0x2c1511+_0x471e61(0x155));return externalLinkCreateFailure(_0x351a01,_0x4cae31,{'stage':_0x471e61(0x1bf),'failed':_0x2ab4d0,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':_0x471e61(0x1af),..._0x2ab4d0,'lookupCommand':_0x2c1511}});}function a152_0x3a4b(_0xbc6063,_0x406437){_0xbc6063=_0xbc6063-0x14d;const _0x3c90e0=a152_0x3c90();let _0x3a4b1d=_0x3c90e0[_0xbc6063];return _0x3a4b1d;}async function readAndVerifyCreatedMenu(_0x4b7594){const _0x34762b=a152_0x424fdc;let _0x52a377;try{_0x52a377=await fetchMenuSnapshot(_0x4b7594['appCode'],_0x4b7594[_0x34762b(0x18a)]);}catch(_0x14fbd2){const _0x18b56=menuError('menu_verification_failed',_0x34762b(0x1d1)+_0x4b7594[_0x34762b(0x152)]+_0x34762b(0x1cc),_0x34762b(0x1a5)+_0x4b7594[_0x34762b(0x1c9)]+_0x34762b(0x15a));throw externalLinkCreateFailure(_0x18b56,_0x4b7594[_0x34762b(0x19f)],{'stage':'verification','succeeded':[{'id':_0x4b7594[_0x34762b(0x152)],'created':!![]}],'failed':{'id':_0x4b7594[_0x34762b(0x152)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x4b7594['afterPlan'],'id':_0x4b7594[_0x34762b(0x152)],'path':_0x4b7594[_0x34762b(0x181)]},'warnings':[_0x34762b(0x1d1)+_0x4b7594[_0x34762b(0x152)]+_0x34762b(0x1c7)],'verification':{'status':_0x34762b(0x1af),'targetId':_0x4b7594['createdId'],'lookupCommand':_0x4b7594['lookupCommand']}});}const _0x2ccbf8=_0x52a377[_0x34762b(0x1c1)][_0x34762b(0x165)](_0x4b7594[_0x34762b(0x152)]);try{if(!_0x2ccbf8)throw menuError(_0x34762b(0x1c6),_0x34762b(0x1b9)+_0x4b7594[_0x34762b(0x152)]+_0x34762b(0x15f),_0x34762b(0x1a5)+_0x4b7594[_0x34762b(0x1c9)]+_0x34762b(0x15a));verifyCreatedFact(_0x2ccbf8,_0x4b7594[_0x34762b(0x152)],_0x4b7594[_0x34762b(0x178)],_0x4b7594[_0x34762b(0x181)]);}catch(_0x209769){const _0x1ed572=_0x209769 instanceof Error&&'code'in _0x209769?_0x209769:menuError('menu_verification_failed','Created\x20menu\x20'+_0x4b7594[_0x34762b(0x152)]+_0x34762b(0x1d3),_0x34762b(0x1a5)+_0x4b7594[_0x34762b(0x1c9)]+_0x34762b(0x15a));throw externalLinkCreateFailure(_0x1ed572,_0x4b7594['plan'],{'stage':_0x34762b(0x19c),'succeeded':[{'id':_0x4b7594[_0x34762b(0x152)],'created':!![]}],'failed':{'id':_0x4b7594[_0x34762b(0x152)],'finalFactsConfirmed':![]},'after':_0x2ccbf8??{..._0x4b7594['afterPlan'],'id':_0x4b7594[_0x34762b(0x152)],'path':_0x4b7594[_0x34762b(0x181)]},'warnings':[_0x34762b(0x1d1)+_0x4b7594[_0x34762b(0x152)]+_0x34762b(0x17b)],'verification':{'status':_0x34762b(0x1af),'targetId':_0x4b7594[_0x34762b(0x152)],'recovered':_0x4b7594[_0x34762b(0x169)],'lookupCommand':_0x4b7594[_0x34762b(0x1c9)]}});}return{'snapshot':_0x52a377,'fact':_0x2ccbf8};}function verifyCreatedFact(_0x496b56,_0x52c14b,_0x42abbe,_0x286586){const _0x32e97d=a152_0x424fdc;if(!Number['isSafeInteger'](_0x496b56['id'])||_0x496b56['id']<=0x0||_0x496b56['id']!==_0x52c14b)throw menuError('menu_verification_failed',_0x32e97d(0x193),_0x32e97d(0x18d));const _0x5a164d=[[_0x32e97d(0x154),_0x496b56[_0x32e97d(0x188)],_0x42abbe[_0x32e97d(0x188)]],[_0x32e97d(0x159),_0x496b56[_0x32e97d(0x159)],_0x42abbe[_0x32e97d(0x159)]],['label',_0x496b56['label'],_0x42abbe[_0x32e97d(0x1a9)]],['URL',_0x496b56[_0x32e97d(0x1ce)],_0x42abbe[_0x32e97d(0x1ce)]],['visibility',_0x496b56[_0x32e97d(0x1a0)],_0x42abbe[_0x32e97d(0x1a0)]],[_0x32e97d(0x167),_0x496b56[_0x32e97d(0x167)],_0x42abbe[_0x32e97d(0x167)]]];for(const [_0x4d67ba,_0x1ff160,_0x2b7c86]of _0x5a164d){if(_0x1ff160!==_0x2b7c86)throw menuError(_0x32e97d(0x1c6),_0x32e97d(0x1b9)+_0x496b56['id']+_0x32e97d(0x17d)+_0x4d67ba+'.',_0x32e97d(0x19a));}if(!_0x496b56['path'][_0x32e97d(0x1ae)]()||_0x286586!==null&&_0x496b56[_0x32e97d(0x1d9)]!==_0x286586)throw menuError('menu_verification_failed',_0x32e97d(0x1b9)+_0x496b56['id']+_0x32e97d(0x17e),_0x32e97d(0x19a));}function creationSuccess(_0x608a0a,_0x26857f,_0x52f468,_0x2f86be){const _0x6f2389=a152_0x424fdc,_0x1a03b1=mutationResult({..._0x608a0a,'after':_0x52f468,'dryRun':![],'succeeded':[{'id':_0x52f468['id'],'created':!![],'recovered':_0x2f86be}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x26857f[_0x6f2389(0x15c)],'targetId':_0x52f468['id'],'recovered':_0x2f86be,'path':_0x52f468[_0x6f2389(0x1d9)]}});return{'ok':!![],'message':_0x2f86be?_0x6f2389(0x182)+_0x52f468['id']+_0x6f2389(0x1ca):_0x6f2389(0x1b8)+_0x52f468['id']+'.','data':{..._0x1a03b1,'recovered':_0x2f86be}};}function externalLinkCreateFailure(_0x7815c6,_0x213054,_0x19e236){const _0x36a7ad=a152_0x424fdc;return menuFailure(safeMenuAddError(_0x7815c6),redactFailurePlan(_0x213054),{..._0x19e236,'succeeded':_0x19e236[_0x36a7ad(0x1b0)]?.[_0x36a7ad(0x1bc)](redactFailureRecord),'failed':_0x19e236[_0x36a7ad(0x1af)]?redactFailureRecord(_0x19e236[_0x36a7ad(0x1af)]):undefined,'verification':_0x19e236[_0x36a7ad(0x19c)]?redactFailureRecord(_0x19e236[_0x36a7ad(0x19c)]):undefined,'after':_0x19e236['after']===undefined?undefined:redactFailureValue(_0x19e236[_0x36a7ad(0x1a3)])});}function redactFailurePlan(_0x209325){const _0x3e8b17=a152_0x424fdc;return{..._0x209325,'selector':redactFailureRecord(_0x209325[_0x3e8b17(0x1da)]),'before':redactFailureValue(_0x209325['before']),'after':redactFailureValue(_0x209325[_0x3e8b17(0x1a3)]),'plannedActions':_0x209325[_0x3e8b17(0x158)]?.['map'](_0x325056=>({..._0x325056,'body':redactFailureRecord(_0x325056[_0x3e8b17(0x1b6)])})),'succeeded':_0x209325['succeeded'][_0x3e8b17(0x1bc)](redactFailureRecord),'failed':_0x209325['failed']['map'](redactFailureRecord),'verification':_0x209325['verification']?redactFailureRecord(_0x209325[_0x3e8b17(0x19c)]):undefined};}function redactFailureRecord(_0x1177b6){return redactFailureValue(_0x1177b6);}function redactFailureValue(_0x34331d,_0x2526db=''){const _0x18ad5b=a152_0x424fdc,_0x353cc9=_0x2526db[_0x18ad5b(0x156)]()[_0x18ad5b(0x172)](/[^a-z0-9]/g,'');if([_0x18ad5b(0x1a8),_0x18ad5b(0x150),_0x18ad5b(0x162),_0x18ad5b(0x1cf)][_0x18ad5b(0x190)](_0x353cc9))return _0x18ad5b(0x197);if(Array[_0x18ad5b(0x153)](_0x34331d))return _0x34331d[_0x18ad5b(0x1bc)](_0x43d978=>redactFailureValue(_0x43d978));if(_0x34331d&&typeof _0x34331d===_0x18ad5b(0x189))return Object['fromEntries'](Object['entries'](_0x34331d)[_0x18ad5b(0x1bc)](([_0x595339,_0xc67ac1])=>[_0x595339,redactFailureValue(_0xc67ac1,_0x595339)]));return _0x34331d;}function safeMenuAddError(_0x492320){const _0x5d5c48=a152_0x424fdc,_0x18ff64=_0x492320 instanceof CliError?_0x492320[_0x5d5c48(0x160)]:_0x5d5c48(0x16b);switch(_0x18ff64){case'menu_state_drift':return menuError(_0x18ff64,_0x5d5c48(0x14d),_0x5d5c48(0x1d2));case _0x5d5c48(0x176):return menuError(_0x18ff64,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.',_0x5d5c48(0x1ba));case _0x5d5c48(0x1a7):return menuError(_0x18ff64,_0x5d5c48(0x183),_0x5d5c48(0x1b7));case'menu_verification_failed':return menuError(_0x18ff64,_0x5d5c48(0x1d4),_0x5d5c48(0x1b7));case'menu_create_recovery_required':return menuError(_0x18ff64,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x5d5c48(0x16b):case'menu_not_found':case'menu_parent_not_folder':case _0x5d5c48(0x1bb):case _0x5d5c48(0x1c5):return menuError(_0x18ff64,_0x5d5c48(0x1a4),_0x5d5c48(0x1db));default:return menuError('menu_mutation_failed',_0x5d5c48(0x1a4),_0x5d5c48(0x1db));}}function getFailureRecord(_0x1517b0){const _0x2f2dde=a152_0x424fdc;if(!(_0x1517b0 instanceof Error)||!(_0x2f2dde(0x16e)in _0x1517b0))return undefined;const _0x14012e=_0x1517b0[_0x2f2dde(0x16e)];if(!_0x14012e||typeof _0x14012e!==_0x2f2dde(0x189))return undefined;const _0x4f5a48=_0x14012e['failed'];if(!Array['isArray'](_0x4f5a48)||!_0x4f5a48[0x0]||typeof _0x4f5a48[0x0]!==_0x2f2dde(0x189))return undefined;return _0x4f5a48[0x0];}
|
|
1
|
+
const a152_0x137939=a152_0x3742;(function(_0x58bea4,_0x267ac4){const _0x46e717=a152_0x3742,_0x243f59=_0x58bea4();while(!![]){try{const _0x47c380=parseInt(_0x46e717(0x99))/0x1+-parseInt(_0x46e717(0xf4))/0x2*(parseInt(_0x46e717(0xa6))/0x3)+-parseInt(_0x46e717(0xfc))/0x4+parseInt(_0x46e717(0x88))/0x5*(parseInt(_0x46e717(0xd9))/0x6)+parseInt(_0x46e717(0xf7))/0x7*(parseInt(_0x46e717(0xd4))/0x8)+-parseInt(_0x46e717(0x9d))/0x9*(-parseInt(_0x46e717(0xb0))/0xa)+-parseInt(_0x46e717(0xd8))/0xb;if(_0x47c380===_0x267ac4)break;else _0x243f59['push'](_0x243f59['shift']());}catch(_0x17c691){_0x243f59['push'](_0x243f59['shift']());}}}(a152_0x5a05,0x8d9fe));function a152_0x3742(_0x41319b,_0x43e8b4){_0x41319b=_0x41319b-0x83;const _0x5a05c5=a152_0x5a05();let _0x3742cf=_0x5a05c5[_0x41319b];return _0x3742cf;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a152_0x5a05(){const _0x194794=['menu_create_recovery_required','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','has','menu_sort_invalid','before','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','currentSnapshotHash','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','trim','Menu\x20','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','parentId','after','https:','map','entries','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','rabetbase\x20menu\x20list\x20--appcode\x20','replace','prototype','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','causemessage','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','stringify','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','pre-write-recheck','isSafeInteger','menu_create_response_invalid','2968pmFzVH','username','string','sort','5678244IyVjhT','6TGuSQD','verification','expectedPath','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','hasOwnProperty','parent-id','Created\x20menu\x20','Whether\x20the\x20menu\x20is\x20visible','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','embedded','cookie','failed','<platform-generated>','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','fact','fromEntries','data','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','appCode','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','menu_permission_denied','label','Would\x20create\x20external\x20website\x20link\x20menu\x20','<redacted>','createdId','byId','hash','1977186YKLGXF','\x20could\x20not\x20be\x20verified.','External\x20HTTPS\x20URL','13482SIaauc','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','menu_url_invalid','menu_mutation_failed','menu_not_found','1828004PnLMDh','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','URL','filter','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','create\x20external\x20menu','external-link-create','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','readbackerror','\x20--format\x20compress','Create\x20an\x20external\x20website\x20link\x20menu','Created\x20external\x20menu\x20','url','snapshot','Provide\x20an\x20HTTPS\x20URL.','write','afterPlan','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','cause','POST','1907975yCQhtF','visible','menu_url_credentials_forbidden','selector','flagMissing','menu','lookupCommand','iframe','create-response-validation','succeeded','str','open-mode','boolean','create-menu','plan','get','length','1034692CGORWo','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','path','336321bvAzkM','menus','body','add','password','object','visibility','\x20failed\x20final\x20verification.','Run\x20','3jcpDpv','\x27\x5c\x27\x27','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','code','External\x20menu\x20creation\x20failed.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','menu_verification_failed','menu_parent_not_folder','expectedSnapshotHash','isArray','110WaRPKP','/smartapi/menu/create','type'];a152_0x5a05=function(){return _0x194794;};return a152_0x5a05();}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':a152_0x137939(0x8f),'new-window':'link'};export function validateExternalMenuUrl(_0x2ea2ad){const _0x7d6402=a152_0x137939,_0x18e8e6=_0x2ea2ad[_0x7d6402(0xbd)]();let _0x57bf09;try{_0x57bf09=new URL(_0x18e8e6);}catch{throw menuError(_0x7d6402(0xf9),_0x7d6402(0x100),_0x7d6402(0xc7));}if(_0x57bf09['protocol']!==_0x7d6402(0xc4))throw menuError('menu_url_https_required',_0x7d6402(0xc1),_0x7d6402(0x10b));if(_0x57bf09[_0x7d6402(0xd5)]||_0x57bf09[_0x7d6402(0xa1)])throw menuError(_0x7d6402(0x8a),_0x7d6402(0xab),_0x7d6402(0x85));return _0x18e8e6;}export const menuExternalLinkCreate={'service':a152_0x137939(0x8d),'command':a152_0x137939(0x102),'description':a152_0x137939(0x107),'risk':a152_0x137939(0x83),'structuredErrors':!![],'flags':[{'name':a152_0x137939(0xee),'type':'string','required':!![],'description':'Menu\x20label'},{'name':a152_0x137939(0x93),'type':a152_0x137939(0xd6),'required':!![],'enum':[a152_0x137939(0xe2),'new-window'],'description':'How\x20to\x20open\x20the\x20external\x20website'},{'name':a152_0x137939(0x109),'type':a152_0x137939(0xd6),'required':!![],'description':a152_0x137939(0xf6)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a152_0x137939(0x89),'type':a152_0x137939(0x94),'default':!![],'description':a152_0x137939(0xe0)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4200d2){validateAddInput(_0x4200d2);},async 'dryRun'(_0x119402){const _0x3c04c7=a152_0x137939;validateAddInput(_0x119402);const {plan:_0x1f0ae6}=await buildSafeAddPlan(_0x119402,!![]),_0x2dfb4d=_0x1f0ae6['after'],_0x1d385a=createBody(_0x2dfb4d);return menuDryRunResult(_0x1f0ae6,{'method':_0x3c04c7(0x87),'url':_0x3c04c7(0xb1),'body':_0x1d385a,'description':_0x3c04c7(0xef)+JSON[_0x3c04c7(0xcf)](_0x2dfb4d[_0x3c04c7(0xee)])+'\x20with\x20'+_0x119402[_0x3c04c7(0x92)]('open-mode')+_0x3c04c7(0xb8)});},async 'execute'(_0x2c5f02){const _0x685a48=a152_0x137939;validateAddInput(_0x2c5f02);const _0x6cbb79=await buildSafeAddPlan(_0x2c5f02,![]),{plan:_0x43ee5d,snapshot:_0x4731c4}=_0x6cbb79,_0x1b25fa=_0x43ee5d[_0x685a48(0xc3)],_0x1f4701=buildMenuLookupCommand(_0x2c5f02[_0x685a48(0xeb)]);await recheckAddSnapshot(_0x2c5f02,_0x43ee5d);let _0x5ed522;try{_0x5ed522=await createMenuEntity(_0x2c5f02['appCode'],_0x2c5f02['cookie'],createBody(_0x1b25fa));}catch(_0x343f42){const _0x22af81=mapMenuApiError(_0x343f42,_0x685a48(0x101));if(!isMenuResponseLoss(_0x343f42)||_0x22af81[_0x685a48(0xa9)]===_0x685a48(0xed))throw externalLinkCreateFailure(_0x22af81,_0x43ee5d,{'stage':'create','failed':{},'verification':{'status':_0x685a48(0xe4),'lookupCommand':_0x1f4701}});return recoverAfterResponseLoss(_0x2c5f02,_0x6cbb79,_0x1f4701);}const _0x5d59af=Number(_0x5ed522?.['id']),_0x1495d=typeof _0x5ed522?.[_0x685a48(0x9c)]===_0x685a48(0xd6)?_0x5ed522[_0x685a48(0x9c)]:'';if(!Number[_0x685a48(0xd2)](_0x5d59af)||_0x5d59af<=0x0||!_0x1495d[_0x685a48(0xbd)]()){const _0x1f80f7=menuError(_0x685a48(0xd3),_0x685a48(0xbc),_0x685a48(0xa5)+_0x1f4701+_0x685a48(0xfd));throw externalLinkCreateFailure(_0x1f80f7,_0x43ee5d,{'stage':_0x685a48(0x90),'succeeded':Number[_0x685a48(0xd2)](_0x5d59af)&&_0x5d59af>0x0?[{'id':_0x5d59af,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x5d59af)?_0x5d59af:null,'generatedPathConfirmed':Boolean(_0x1495d[_0x685a48(0xbd)]())},'warnings':[_0x685a48(0xec)],'after':Number[_0x685a48(0xd2)](_0x5d59af)&&_0x5d59af>0x0?{..._0x1b25fa,'id':_0x5d59af,'path':_0x1495d}:_0x1b25fa,'verification':{'status':_0x685a48(0xe4),'lookupCommand':_0x1f4701,...Number[_0x685a48(0xd2)](_0x5d59af)&&_0x5d59af>0x0?{'targetId':_0x5d59af}:{}}});}const _0x28f593=await readAndVerifyCreatedMenu({'appCode':_0x2c5f02[_0x685a48(0xeb)],'cookie':_0x2c5f02[_0x685a48(0xe3)],'plan':_0x43ee5d,'afterPlan':_0x1b25fa,'createdId':_0x5d59af,'expectedPath':_0x1495d,'lookupCommand':_0x1f4701,'recovered':![]});return creationSuccess(_0x43ee5d,_0x28f593[_0x685a48(0x10a)],_0x28f593[_0x685a48(0xe7)],![]);}};function validateAddInput(_0xb9c18a){const _0x4facdd=a152_0x137939;if(!_0xb9c18a['str']('label')[_0x4facdd(0xbd)]())throw CliErrors[_0x4facdd(0x8c)](_0x4facdd(0xee));resolveExternalMenuType(_0xb9c18a),validateExternalMenuUrl(_0xb9c18a[_0x4facdd(0x92)](_0x4facdd(0x109))),parseParentId(_0xb9c18a,_0x4facdd(0xde)),validateSort(_0xb9c18a);}function resolveExternalMenuType(_0x18b75b){const _0x4b2345=a152_0x137939,_0x3e5463=_0x18b75b[_0x4b2345(0x92)](_0x4b2345(0x93))['trim']();if(!_0x3e5463)throw CliErrors['flagMissing'](_0x4b2345(0x93));const _0x4cf2eb=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x3e5463];if(!_0x4cf2eb)throw menuError('menu_open_mode_invalid',_0x4b2345(0xbb),_0x4b2345(0x9a));return _0x4cf2eb;}async function buildAddPlan(_0x3a5d47,_0x480bbe){const _0x52adb7=a152_0x137939,_0xe0f923=await fetchMutationSnapshot(_0x3a5d47,'create\x20external\x20menu'),_0x2c3840=parseParentId(_0x3a5d47,_0x52adb7(0xde))??null;if(_0x2c3840!=null)requireFolder(_0xe0f923,_0x2c3840);const _0x2fd217=validateSort(_0x3a5d47),_0x30699d=_0x2fd217??nextSiblingSort(_0xe0f923,_0x2c3840,_0x52adb7(0x8d)),_0x92d944=_0x3a5d47[_0x52adb7(0x92)](_0x52adb7(0xee))['trim'](),_0x3903f6=resolveExternalMenuType(_0x3a5d47),_0x21702f=validateExternalMenuUrl(_0x3a5d47[_0x52adb7(0x92)]('url')),_0x5ba0a9=Object[_0x52adb7(0xca)][_0x52adb7(0xdd)]['call'](_0x3a5d47['rawFlags'],_0x52adb7(0x89))?_0x3a5d47['bool'](_0x52adb7(0x89)):!![],_0x253741={'id':null,'parentId':_0x2c3840,'label':_0x92d944,'path':_0x52adb7(0xe5),'url':_0x21702f,'type':_0x3903f6,'visible':_0x5ba0a9,'sort':_0x30699d},_0x433724=buildMenuLookupCommand(_0x3a5d47['appCode']),_0x39400c=mutationResult({'operation':_0x52adb7(0xa0),'selector':{'parentId':_0x2c3840,'type':_0x3903f6,'label':_0x92d944,'url':_0x21702f},'before':null,'after':_0x253741,'dryRun':_0x480bbe,'backend':[{'method':_0x52adb7(0x87),'path':_0x52adb7(0xb1)}],'plannedActions':[{'stage':_0x52adb7(0x95),'method':'POST','path':_0x52adb7(0xb1),'body':createBody(_0x253741)}],'snapshotHash':_0xe0f923[_0x52adb7(0xf3)],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x433724}});return{'plan':_0x39400c,'snapshot':_0xe0f923};}async function buildSafeAddPlan(_0x2309c0,_0x301065){try{return await buildAddPlan(_0x2309c0,_0x301065);}catch(_0x36cc9e){throw safeMenuAddError(_0x36cc9e);}}async function recheckAddSnapshot(_0x403209,_0x598e68){const _0x1e5265=a152_0x137939;try{await recheckMutationSnapshot(_0x403209,_0x598e68,_0x1e5265(0x101));}catch(_0x43cfcb){const _0x5ef78e=getFailureRecord(_0x43cfcb);throw externalLinkCreateFailure(_0x43cfcb,_0x598e68,{'stage':_0x1e5265(0xd1),'failed':{..._0x5ef78e?.[_0x1e5265(0xae)]?{'expectedSnapshotHash':_0x5ef78e[_0x1e5265(0xae)]}:{},..._0x5ef78e?.['currentSnapshotHash']?{'currentSnapshotHash':_0x5ef78e[_0x1e5265(0xb9)]}:{}}});}}function createBody(_0x4a2f6e){const _0x1c3940=a152_0x137939;return{'parentId':toApiParentId(_0x4a2f6e[_0x1c3940(0xc2)]),'label':String(_0x4a2f6e[_0x1c3940(0xee)]),'type':String(_0x4a2f6e[_0x1c3940(0xb2)]),'url':String(_0x4a2f6e[_0x1c3940(0x109)]),'visible':Boolean(_0x4a2f6e['visible']),'sort':Number(_0x4a2f6e[_0x1c3940(0xd7)]),'extend':{}};}function buildMenuLookupCommand(_0x45f89e){const _0xb86da3=a152_0x137939,_0x5499b9='\x27'+_0x45f89e[_0xb86da3(0xc9)](/'/g,_0xb86da3(0xa7))+'\x27';return _0xb86da3(0xc8)+_0x5499b9+_0xb86da3(0x106);}async function recoverAfterResponseLoss(_0x107c52,_0x4e2f18,_0x4014ed){const _0x36a1bf=a152_0x137939,{plan:_0x4d8dd9,snapshot:_0x29184b}=_0x4e2f18,_0x2062fa=_0x4d8dd9[_0x36a1bf(0xc3)];let _0x2a93ae;try{_0x2a93ae=await fetchMenuSnapshot(_0x107c52['appCode'],_0x107c52[_0x36a1bf(0xe3)]);}catch(_0x55dc96){throw recoveryRequiredFailure(_0x4d8dd9,_0x4014ed,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x1cbe6c=_0x2a93ae[_0x36a1bf(0x9e)]['filter'](_0x58b398=>_0x58b398[_0x36a1bf(0xc2)]===_0x2062fa[_0x36a1bf(0xc2)]&&_0x58b398[_0x36a1bf(0xb2)]===_0x2062fa[_0x36a1bf(0xb2)]&&_0x58b398[_0x36a1bf(0xee)]===_0x2062fa[_0x36a1bf(0xee)]&&_0x58b398[_0x36a1bf(0x109)]===_0x2062fa[_0x36a1bf(0x109)]),_0x36f8f3=_0x1cbe6c[_0x36a1bf(0xff)](_0x12359f=>!_0x29184b['byId'][_0x36a1bf(0xb5)](_0x12359f['id'])),_0x5983c3=_0x1cbe6c[_0x36a1bf(0xff)](_0x26f3a3=>_0x29184b[_0x36a1bf(0xf2)][_0x36a1bf(0xb5)](_0x26f3a3['id']));if(_0x1cbe6c['length']!==0x1||_0x36f8f3[_0x36a1bf(0x98)]!==0x1)throw recoveryRequiredFailure(_0x4d8dd9,_0x4014ed,{'matchCount':_0x1cbe6c['length'],'newMatchCount':_0x36f8f3[_0x36a1bf(0x98)],'preexistingMatchCount':_0x5983c3[_0x36a1bf(0x98)]});const _0xc48102=_0x36f8f3[0x0];try{verifyCreatedFact(_0xc48102,_0xc48102['id'],_0x2062fa,null);}catch(_0x5c2bbc){const _0xb40646=_0x5c2bbc instanceof Error&&_0x36a1bf(0xa9)in _0x5c2bbc?_0x5c2bbc:menuError('menu_verification_failed','Recovered\x20menu\x20'+_0xc48102['id']+_0x36a1bf(0xf5),_0x36a1bf(0xa5)+_0x4014ed+_0x36a1bf(0xf8));throw externalLinkCreateFailure(_0xb40646,_0x4d8dd9,{'stage':_0x36a1bf(0xda),'succeeded':[{'id':_0xc48102['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0xc48102['id'],'finalFactsConfirmed':![]},'after':_0xc48102,'warnings':['Menu\x20'+_0xc48102['id']+_0x36a1bf(0xcb)],'verification':{'status':_0x36a1bf(0xe4),'targetId':_0xc48102['id'],'recovered':!![],'lookupCommand':_0x4014ed}});}return creationSuccess(_0x4d8dd9,_0x2a93ae,_0xc48102,!![]);}function recoveryRequiredFailure(_0x5427ce,_0x6eabb0,_0x2d3078){const _0x5222f4=a152_0x137939,_0xc54488=menuError(_0x5222f4(0xb3),_0x5222f4(0x9b),_0x5222f4(0xa5)+_0x6eabb0+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0xc54488,_0x5427ce,{'stage':'create-recovery','failed':_0x2d3078,'warnings':[_0x5222f4(0xb4)],'verification':{'status':_0x5222f4(0xe4),..._0x2d3078,'lookupCommand':_0x6eabb0}});}async function readAndVerifyCreatedMenu(_0x587466){const _0x49df89=a152_0x137939;let _0x1c932b;try{_0x1c932b=await fetchMenuSnapshot(_0x587466['appCode'],_0x587466[_0x49df89(0xe3)]);}catch(_0x383807){const _0xfe753a=menuError('menu_verification_failed','Menu\x20'+_0x587466[_0x49df89(0xf1)]+_0x49df89(0xea),_0x49df89(0xa5)+_0x587466['lookupCommand']+_0x49df89(0xe1));throw externalLinkCreateFailure(_0xfe753a,_0x587466[_0x49df89(0x96)],{'stage':_0x49df89(0xda),'succeeded':[{'id':_0x587466['createdId'],'created':!![]}],'failed':{'id':_0x587466[_0x49df89(0xf1)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x587466[_0x49df89(0x84)],'id':_0x587466['createdId'],'path':_0x587466['expectedPath']},'warnings':[_0x49df89(0xbe)+_0x587466[_0x49df89(0xf1)]+_0x49df89(0xe6)],'verification':{'status':_0x49df89(0xe4),'targetId':_0x587466['createdId'],'lookupCommand':_0x587466[_0x49df89(0x8e)]}});}const _0x26a3ac=_0x1c932b[_0x49df89(0xf2)][_0x49df89(0x97)](_0x587466['createdId']);try{if(!_0x26a3ac)throw menuError(_0x49df89(0xac),_0x49df89(0xdf)+_0x587466[_0x49df89(0xf1)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x49df89(0xa5)+_0x587466[_0x49df89(0x8e)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x26a3ac,_0x587466[_0x49df89(0xf1)],_0x587466[_0x49df89(0x84)],_0x587466[_0x49df89(0xdb)]);}catch(_0x4ab6ff){const _0x522c69=_0x4ab6ff instanceof Error&&_0x49df89(0xa9)in _0x4ab6ff?_0x4ab6ff:menuError(_0x49df89(0xac),'Created\x20menu\x20'+_0x587466['createdId']+_0x49df89(0xa4),_0x49df89(0xa5)+_0x587466[_0x49df89(0x8e)]+_0x49df89(0xe1));throw externalLinkCreateFailure(_0x522c69,_0x587466[_0x49df89(0x96)],{'stage':_0x49df89(0xda),'succeeded':[{'id':_0x587466[_0x49df89(0xf1)],'created':!![]}],'failed':{'id':_0x587466[_0x49df89(0xf1)],'finalFactsConfirmed':![]},'after':_0x26a3ac??{..._0x587466[_0x49df89(0x84)],'id':_0x587466[_0x49df89(0xf1)],'path':_0x587466[_0x49df89(0xdb)]},'warnings':[_0x49df89(0xbe)+_0x587466[_0x49df89(0xf1)]+_0x49df89(0x103)],'verification':{'status':_0x49df89(0xe4),'targetId':_0x587466[_0x49df89(0xf1)],'recovered':_0x587466['recovered'],'lookupCommand':_0x587466[_0x49df89(0x8e)]}});}return{'snapshot':_0x1c932b,'fact':_0x26a3ac};}function verifyCreatedFact(_0x1bfc79,_0x6f1de9,_0x227ba3,_0x4e7361){const _0x42e8cd=a152_0x137939;if(!Number['isSafeInteger'](_0x1bfc79['id'])||_0x1bfc79['id']<=0x0||_0x1bfc79['id']!==_0x6f1de9)throw menuError('menu_verification_failed',_0x42e8cd(0xdc),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x4e3b9d=[['parent',_0x1bfc79['parentId'],_0x227ba3[_0x42e8cd(0xc2)]],[_0x42e8cd(0xb2),_0x1bfc79[_0x42e8cd(0xb2)],_0x227ba3[_0x42e8cd(0xb2)]],[_0x42e8cd(0xee),_0x1bfc79['label'],_0x227ba3[_0x42e8cd(0xee)]],[_0x42e8cd(0xfe),_0x1bfc79['url'],_0x227ba3[_0x42e8cd(0x109)]],[_0x42e8cd(0xa3),_0x1bfc79['visible'],_0x227ba3[_0x42e8cd(0x89)]],[_0x42e8cd(0xd7),_0x1bfc79['sort'],_0x227ba3[_0x42e8cd(0xd7)]]];for(const [_0x2032bd,_0x5e7229,_0x4eaff7]of _0x4e3b9d){if(_0x5e7229!==_0x4eaff7)throw menuError('menu_verification_failed',_0x42e8cd(0xdf)+_0x1bfc79['id']+'\x20has\x20an\x20unexpected\x20'+_0x2032bd+'.',_0x42e8cd(0xc0));}if(!_0x1bfc79['path'][_0x42e8cd(0xbd)]()||_0x4e7361!==null&&_0x1bfc79[_0x42e8cd(0x9c)]!==_0x4e7361)throw menuError(_0x42e8cd(0xac),_0x42e8cd(0xdf)+_0x1bfc79['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}function creationSuccess(_0x313156,_0x228ed8,_0x288d78,_0x49aa05){const _0x37bccd=a152_0x137939,_0x379156=mutationResult({..._0x313156,'after':_0x288d78,'dryRun':![],'succeeded':[{'id':_0x288d78['id'],'created':!![],'recovered':_0x49aa05}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x228ed8[_0x37bccd(0xf3)],'targetId':_0x288d78['id'],'recovered':_0x49aa05,'path':_0x288d78[_0x37bccd(0x9c)]}});return{'ok':!![],'message':_0x49aa05?'Recovered\x20created\x20external\x20menu\x20'+_0x288d78['id']+'\x20after\x20response\x20loss.':_0x37bccd(0x108)+_0x288d78['id']+'.','data':{..._0x379156,'recovered':_0x49aa05}};}function externalLinkCreateFailure(_0x586ce9,_0x37855e,_0x5cecd2){const _0x2f7560=a152_0x137939;return menuFailure(safeMenuAddError(_0x586ce9),redactFailurePlan(_0x37855e),{..._0x5cecd2,'succeeded':_0x5cecd2[_0x2f7560(0x91)]?.['map'](redactFailureRecord),'failed':_0x5cecd2[_0x2f7560(0xe4)]?redactFailureRecord(_0x5cecd2[_0x2f7560(0xe4)]):undefined,'verification':_0x5cecd2[_0x2f7560(0xda)]?redactFailureRecord(_0x5cecd2[_0x2f7560(0xda)]):undefined,'after':_0x5cecd2[_0x2f7560(0xc3)]===undefined?undefined:redactFailureValue(_0x5cecd2[_0x2f7560(0xc3)])});}function redactFailurePlan(_0x39f491){const _0x3ba6f0=a152_0x137939;return{..._0x39f491,'selector':redactFailureRecord(_0x39f491[_0x3ba6f0(0x8b)]),'before':redactFailureValue(_0x39f491[_0x3ba6f0(0xb7)]),'after':redactFailureValue(_0x39f491['after']),'plannedActions':_0x39f491['plannedActions']?.[_0x3ba6f0(0xc5)](_0x5003b5=>({..._0x5003b5,'body':redactFailureRecord(_0x5003b5[_0x3ba6f0(0x9f)])})),'succeeded':_0x39f491['succeeded']['map'](redactFailureRecord),'failed':_0x39f491[_0x3ba6f0(0xe4)][_0x3ba6f0(0xc5)](redactFailureRecord),'verification':_0x39f491[_0x3ba6f0(0xda)]?redactFailureRecord(_0x39f491[_0x3ba6f0(0xda)]):undefined};}function redactFailureRecord(_0x364811){return redactFailureValue(_0x364811);}function redactFailureValue(_0x52f9e3,_0x4846c8=''){const _0x38150b=a152_0x137939,_0x40a60a=_0x4846c8['toLowerCase']()['replace'](/[^a-z0-9]/g,'');if([_0x38150b(0x86),_0x38150b(0xcc),_0x38150b(0x105),'rawerror']['includes'](_0x40a60a))return _0x38150b(0xf0);if(Array[_0x38150b(0xaf)](_0x52f9e3))return _0x52f9e3[_0x38150b(0xc5)](_0x491680=>redactFailureValue(_0x491680));if(_0x52f9e3&&typeof _0x52f9e3==='object')return Object[_0x38150b(0xe8)](Object[_0x38150b(0xc6)](_0x52f9e3)[_0x38150b(0xc5)](([_0x1464b4,_0x5c6e2d])=>[_0x1464b4,redactFailureValue(_0x5c6e2d,_0x1464b4)]));return _0x52f9e3;}function safeMenuAddError(_0x1dc30f){const _0x1374e8=a152_0x137939,_0x3faab3=_0x1dc30f instanceof CliError?_0x1dc30f['code']:'menu_mutation_failed';switch(_0x3faab3){case'menu_state_drift':return menuError(_0x3faab3,_0x1374e8(0xcd),_0x1374e8(0xce));case _0x1374e8(0xed):return menuError(_0x3faab3,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x1374e8(0xd3):return menuError(_0x3faab3,_0x1374e8(0xd0),_0x1374e8(0xbf));case _0x1374e8(0xac):return menuError(_0x3faab3,'Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.',_0x1374e8(0xbf));case _0x1374e8(0xb3):return menuError(_0x3faab3,_0x1374e8(0xba),_0x1374e8(0x104));case _0x1374e8(0xfa):case _0x1374e8(0xfb):case _0x1374e8(0xad):case _0x1374e8(0xb6):case'menu_sort_overflow':return menuError(_0x3faab3,_0x1374e8(0xaa),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError('menu_mutation_failed',_0x1374e8(0xaa),_0x1374e8(0xa8));}}function getFailureRecord(_0x833def){const _0x564eb3=a152_0x137939;if(!(_0x833def instanceof Error)||!(_0x564eb3(0xe9)in _0x833def))return undefined;const _0x54d436=_0x833def[_0x564eb3(0xe9)];if(!_0x54d436||typeof _0x54d436!=='object')return undefined;const _0x5f0bcc=_0x54d436[_0x564eb3(0xe4)];if(!Array[_0x564eb3(0xaf)](_0x5f0bcc)||!_0x5f0bcc[0x0]||typeof _0x5f0bcc[0x0]!==_0x564eb3(0xa2))return undefined;return _0x5f0bcc[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a153_0x14da30=a153_0x31d6;(function(_0x500da3,_0x18022a){const _0x1387c1=a153_0x31d6,_0x3e12cf=_0x500da3();while(!![]){try{const _0x480dd6=parseInt(_0x1387c1(0xf2))/0x1*(parseInt(_0x1387c1(0xe1))/0x2)+-parseInt(_0x1387c1(0xee))/0x3+-parseInt(_0x1387c1(0xc4))/0x4+parseInt(_0x1387c1(0xf8))/0x5*(parseInt(_0x1387c1(0xcf))/0x6)+-parseInt(_0x1387c1(0xc2))/0x7*(-parseInt(_0x1387c1(0xf3))/0x8)+-parseInt(_0x1387c1(0xed))/0x9*(parseInt(_0x1387c1(0x103))/0xa)+parseInt(_0x1387c1(0xc6))/0xb*(parseInt(_0x1387c1(0xca))/0xc);if(_0x480dd6===_0x18022a)break;else _0x3e12cf['push'](_0x3e12cf['shift']());}catch(_0x6db3d){_0x3e12cf['push'](_0x3e12cf['shift']());}}}(a153_0x501c,0xb79c0));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';function a153_0x501c(){const _0x1f5d59=['parentId','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','menu','iframe','New\x20external\x20HTTPS\x20URL','appCode','expect-url','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','expect-parent-id','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','2540587CUKAZp','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','5390736OqbwcY','\x27\x5c\x27\x27','2024ZTivsp','cookie','\x20changed\x20during\x20the\x20URL-only\x20update.','menu_permission_denied','123960ZqssTm','Updated\x20external\x20URL\x20for\x20menu\x20','menu_external_link_path_missing','str','get','1194xMJawV','\x20has\x20','visible','hash','snapshot','path','plan','label','verify\x20external\x20menu\x20URL\x20update','requestedUrlObserved','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','menu\x20list','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','string','menu_external_link_not_leaf','\x20URL\x20update\x20did\x20not\x20take\x20effect.','unknown','POST','1114684vFpAUe','verification','body','menu_update_recovery_required','update-recovery','\x22,\x20not\x20iframe\x20or\x20link.','menu_external_link_type_required','update-external-link-url','\x20--format\x20compress','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','failed','trim','5510637ShsCHx','912462esejFL','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','\x20direct\x20child\x20menu(s).','readbackFailed','2XzEoof','8lgyEVT','/smartapi/menu/update','url','\x20is\x20type\x20\x22','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','6285dZtPBB','sort','\x20could\x20not\x20be\x20verified\x20safely','type','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','byId','link','menu_state_drift','flagMissing','Menu\x20','Update\x20request\x20for\x20menu\x20','20CtJAxJ','code','Run\x20','\x20already\x20matches\x20the\x20requested\x20URL.','external-link-update'];a153_0x501c=function(){return _0x1f5d59;};return a153_0x501c();}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':a153_0x14da30(0xe0),'path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':a153_0x14da30(0xba),'command':a153_0x14da30(0xb7),'description':'Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a153_0x14da30(0xf5),'type':a153_0x14da30(0xdc),'required':!![],'description':a153_0x14da30(0xbc)},{'name':a153_0x14da30(0xbe),'type':a153_0x14da30(0xdc),'required':!![],'description':a153_0x14da30(0xdb)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x368c8f){validateInput(_0x368c8f);},async 'dryRun'(_0x3a0491){const _0x25bd50=a153_0x14da30;validateInput(_0x3a0491);const _0xd670a0=await buildPlan(_0x3a0491,!![]);return menuDryRunResult(_0xd670a0[_0x25bd50(0xd5)],{'method':_0x25bd50(0xe0),'url':_0x25bd50(0xf4),'body':_0xd670a0[_0x25bd50(0xe3)],'description':_0x25bd50(0xc3)+_0xd670a0[_0x25bd50(0xe3)]['id']+'.'});},async 'execute'(_0x13e602){const _0x3b65fa=a153_0x14da30;validateInput(_0x13e602);const _0x197bd8=await buildPlan(_0x13e602,![]),{plan:_0x268a6c,body:_0x43fb48,before:_0x377acd,noChanges:_0xf997a8}=_0x197bd8,_0x268c1e=_0x43fb48['id'];if(_0xf997a8)return updateSuccess(_0x268a6c,_0x197bd8[_0x3b65fa(0xd3)],_0x377acd,!![],![]);await recheckMutationSnapshot(_0x13e602,_0x268a6c,'update\x20external\x20menu\x20URL',_0x268c1e);try{await updateMenuEntity(_0x13e602[_0x3b65fa(0xbd)],_0x13e602[_0x3b65fa(0xc7)],{'id':_0x43fb48['id'],'url':_0x43fb48['url']});}catch(_0x311c6){const _0x3336f5=mapMenuApiError(_0x311c6,'update\x20external\x20menu\x20URL',_0x268c1e);if(isMenuResponseLoss(_0x311c6)&&_0x3336f5[_0x3b65fa(0xb4)]!==_0x3b65fa(0xc9))return recoverAfterResponseLoss(_0x13e602,_0x197bd8);throw menuFailure(_0x3336f5,_0x268a6c,{'stage':'update','failed':{'id':_0x268c1e},'warnings':[_0x3b65fa(0xea)],'verification':{'status':'failed','targetId':_0x268c1e,'lookupCommand':buildLookupCommand(_0x13e602['appCode'])}});}let _0x2fdb85,_0x362c51;try{_0x2fdb85=await fetchMenuSnapshot(_0x13e602[_0x3b65fa(0xbd)],_0x13e602[_0x3b65fa(0xc7)]),_0x362c51=requireMenu(_0x2fdb85,_0x268c1e),verifyUpdatedFact(_0x377acd,_0x362c51,_0x43fb48['url']);}catch(_0x251142){const _0x17a6fe=describeMenuErrorCause(_0x251142,_0x3b65fa(0xd7),_0x268c1e),_0x48677a=asVerificationError(_0x251142,_0x3b65fa(0x102)+_0x268c1e+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x48677a,_0x268a6c,{'stage':_0x3b65fa(0xe2),'succeeded':[{'id':_0x268c1e,'updateRequested':!![]}],'failed':{'id':_0x268c1e,'requestedStateConfirmed':![],..._0x17a6fe},'warnings':['The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x3b65fa(0xeb),'targetId':_0x268c1e,'lookupCommand':buildLookupCommand(_0x13e602[_0x3b65fa(0xbd)])}});}return updateSuccess(_0x268a6c,_0x2fdb85,_0x362c51,![],![]);}};function validateInput(_0xa0e087){const _0x10ea31=a153_0x14da30;validateExactId(_0xa0e087),requiredUrl(_0xa0e087,_0x10ea31(0xf5)),requiredExpectedUrl(_0xa0e087),parseParentId(_0xa0e087,_0x10ea31(0xc0),{'required':!![]});}function requiredUrl(_0x4da506,_0x50c2b3){const _0x4ddc12=a153_0x14da30;if(!hasFlag(_0x4da506,_0x50c2b3)||!_0x4da506[_0x4ddc12(0xcd)](_0x50c2b3)[_0x4ddc12(0xec)]())throw CliErrors[_0x4ddc12(0x100)](_0x50c2b3);return validateExternalMenuUrl(_0x4da506['str'](_0x50c2b3));}function requiredExpectedUrl(_0x5db6da){const _0x401a4f=a153_0x14da30;if(!hasFlag(_0x5db6da,'expect-url')||!_0x5db6da[_0x401a4f(0xcd)]('expect-url')['trim']())throw CliErrors[_0x401a4f(0x100)](_0x401a4f(0xbe));return _0x5db6da[_0x401a4f(0xcd)](_0x401a4f(0xbe))[_0x401a4f(0xec)]();}async function buildPlan(_0x1fbe8a,_0x590b0d){const _0xdfc9b6=a153_0x14da30,_0x478db9=validateExactId(_0x1fbe8a),_0x555854=requiredUrl(_0x1fbe8a,_0xdfc9b6(0xf5)),_0x466c85=requiredExpectedUrl(_0x1fbe8a),_0x1d77f4=parseParentId(_0x1fbe8a,'expect-parent-id',{'required':!![]}),_0xd03153=await fetchMutationSnapshot(_0x1fbe8a,'update\x20external\x20menu\x20URL',_0x478db9),_0x4a46fb=requireMenu(_0xd03153,_0x478db9);assertExternalLinkLeaf(_0x4a46fb);if(_0x4a46fb[_0xdfc9b6(0xb8)]!==_0x1d77f4)throw menuError(_0xdfc9b6(0xff),'Menu\x20'+_0x478db9+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x1d77f4)+',\x20current\x20'+formatParent(_0x4a46fb[_0xdfc9b6(0xb8)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x377c27=_0x4a46fb[_0xdfc9b6(0xf5)]===_0x555854;if(!_0x377c27&&_0x4a46fb[_0xdfc9b6(0xf5)]!==_0x466c85)throw menuError(_0xdfc9b6(0xff),_0xdfc9b6(0x101)+_0x478db9+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.',_0xdfc9b6(0xb9));const _0x2d2c13={'id':_0x478db9,'appCode':_0x1fbe8a[_0xdfc9b6(0xbd)],'url':_0x555854},_0x3b5b79={..._0x4a46fb,'url':_0x555854};return{'body':_0x2d2c13,'before':_0x4a46fb,'noChanges':_0x377c27,'snapshot':_0xd03153,'plan':mutationResult({'operation':_0xdfc9b6(0xb7),'selector':{'id':_0x478db9},'before':_0x4a46fb,'after':_0x3b5b79,'dryRun':_0x590b0d,'backend':[...BACKEND],'plannedActions':_0x377c27?[]:[{'stage':_0xdfc9b6(0xe8),'method':_0xdfc9b6(0xe0),'path':'/smartapi/menu/update','body':_0x2d2c13}],'snapshotHash':_0xd03153[_0xdfc9b6(0xd2)],'warnings':_0x377c27?[_0xdfc9b6(0xc1)]:[]})};}function assertExternalLinkLeaf(_0x4c913e){const _0x71db1c=a153_0x14da30;if(_0x4c913e['type']!==_0x71db1c(0xbb)&&_0x4c913e[_0x71db1c(0xfb)]!==_0x71db1c(0xfe))throw menuError(_0x71db1c(0xe7),_0x71db1c(0x101)+_0x4c913e['id']+_0x71db1c(0xf6)+(_0x4c913e[_0x71db1c(0xfb)]||_0x71db1c(0xdf))+_0x71db1c(0xe6),'Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.');if(_0x4c913e['childrenCount']!==0x0)throw menuError(_0x71db1c(0xdd),_0x71db1c(0x101)+_0x4c913e['id']+_0x71db1c(0xd0)+_0x4c913e['childrenCount']+_0x71db1c(0xf0),_0x71db1c(0xd9));if(!_0x4c913e[_0x71db1c(0xd4)][_0x71db1c(0xec)]())throw menuError(_0x71db1c(0xcc),_0x71db1c(0x101)+_0x4c913e['id']+'\x20has\x20an\x20empty\x20platform\x20path.',_0x71db1c(0xfc));}function verifyUpdatedFact(_0x53deba,_0x5eafde,_0x2f766a){const _0x4d2d1b=a153_0x14da30;assertExternalLinkLeaf(_0x5eafde);const _0x2dcef6=[['id',_0x5eafde['id'],_0x53deba['id']],['label',_0x5eafde[_0x4d2d1b(0xd6)],_0x53deba[_0x4d2d1b(0xd6)]],['type',_0x5eafde[_0x4d2d1b(0xfb)],_0x53deba[_0x4d2d1b(0xfb)]],[_0x4d2d1b(0xd4),_0x5eafde[_0x4d2d1b(0xd4)],_0x53deba[_0x4d2d1b(0xd4)]],[_0x4d2d1b(0xb8),_0x5eafde[_0x4d2d1b(0xb8)],_0x53deba['parentId']],[_0x4d2d1b(0xf9),_0x5eafde[_0x4d2d1b(0xf9)],_0x53deba[_0x4d2d1b(0xf9)]],['visible',_0x5eafde[_0x4d2d1b(0xd1)],_0x53deba['visible']]];for(const [_0x107f14,_0x546834,_0x328769]of _0x2dcef6){assertVerified(_0x546834===_0x328769,_0x4d2d1b(0x101)+_0x53deba['id']+'\x20'+_0x107f14+_0x4d2d1b(0xc8));}assertVerified(_0x5eafde['url']===_0x2f766a,'Menu\x20'+_0x53deba['id']+_0x4d2d1b(0xde));}function updateSuccess(_0x51c85f,_0xa99e61,_0x18a8f8,_0xb9f236,_0x22ce6e){const _0x4a464b=a153_0x14da30,_0x5686b7=_0x18a8f8['id'],_0x5095c3=mutationResult({..._0x51c85f,'after':_0x18a8f8,'dryRun':![],'succeeded':[{'id':_0x5686b7,'updated':!_0xb9f236,'skipped':_0xb9f236,'recovered':_0x22ce6e}],'verification':{'checkedBy':_0x4a464b(0xda),'snapshotHash':_0xa99e61[_0x4a464b(0xd2)],'targetId':_0x5686b7,'matchesRequestedState':!![],'recovered':_0x22ce6e}});return{'ok':!![],'message':_0x22ce6e?_0x4a464b(0xf7)+_0x5686b7+'.':_0xb9f236?_0x4a464b(0x101)+_0x5686b7+_0x4a464b(0xb6):_0x4a464b(0xcb)+_0x5686b7+'.','data':{..._0x5095c3,'recovered':_0x22ce6e}};}function a153_0x31d6(_0xb67330,_0x194826){_0xb67330=_0xb67330-0xb4;const _0x501c9b=a153_0x501c();let _0x31d6ef=_0x501c9b[_0xb67330];return _0x31d6ef;}async function recoverAfterResponseLoss(_0x254c1f,_0x3404f5){const _0x34c045=a153_0x14da30,{plan:_0x1639cb,before:_0x3f3b7c,body:_0x187f2b}=_0x3404f5;let _0x4a68c0;try{_0x4a68c0=await fetchMenuSnapshot(_0x254c1f[_0x34c045(0xbd)],_0x254c1f['cookie']);}catch{throw recoveryRequired(_0x1639cb,_0x254c1f[_0x34c045(0xbd)],{'id':_0x187f2b['id'],'readbackFailed':!![]});}const _0x48119b=_0x4a68c0[_0x34c045(0xfd)][_0x34c045(0xce)](_0x187f2b['id']);if(!_0x48119b||_0x48119b[_0x34c045(0xf5)]!==_0x187f2b[_0x34c045(0xf5)])throw recoveryRequired(_0x1639cb,_0x254c1f[_0x34c045(0xbd)],{'id':_0x187f2b['id'],'requestedUrlObserved':![],'after':_0x48119b??null});try{verifyUpdatedFact(_0x3f3b7c,_0x48119b,_0x187f2b[_0x34c045(0xf5)]);}catch(_0x32114f){const _0x13a3ca=asVerificationError(_0x32114f,'Response\x20was\x20lost\x20and\x20menu\x20'+_0x187f2b['id']+_0x34c045(0xfa));throw menuFailure(_0x13a3ca,_0x1639cb,{'stage':_0x34c045(0xe5),'succeeded':[{'id':_0x187f2b['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x187f2b['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x48119b,'warnings':[_0x34c045(0xef)],'verification':{'status':_0x34c045(0xeb),'targetId':_0x187f2b['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x254c1f['appCode'])}});}return updateSuccess(_0x1639cb,_0x4a68c0,_0x48119b,![],!![]);}function recoveryRequired(_0xc584be,_0x1696d5,_0x3c4ad0){const _0x34d3d2=a153_0x14da30,_0x5f4bc9=menuError(_0x34d3d2(0xe4),'The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0x34d3d2(0xb5)+buildLookupCommand(_0x1696d5)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x5f4bc9,_0xc584be,{'stage':'update-recovery','failed':{'id':_0x3c4ad0['id'],..._0x3c4ad0[_0x34d3d2(0xd8)]===undefined?{}:{'requestedUrlObserved':_0x3c4ad0[_0x34d3d2(0xd8)]},..._0x3c4ad0[_0x34d3d2(0xf1)]?{'readbackFailed':!![]}:{}},'after':_0x3c4ad0['after'],'warnings':[_0x34d3d2(0xbf)],'verification':{'status':'failed','targetId':_0x3c4ad0['id'],..._0x3c4ad0['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x3c4ad0['requestedUrlObserved']},..._0x3c4ad0[_0x34d3d2(0xf1)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x1696d5)}});}function buildLookupCommand(_0x564971){const _0x49411f=a153_0x14da30,_0x24d329='\x27'+_0x564971['replace'](/'/g,_0x49411f(0xc5))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x24d329+_0x49411f(0xe9);}
|
|
1
|
+
const a153_0x360b96=a153_0x2c1d;(function(_0x2b9491,_0x56e92c){const _0x40873b=a153_0x2c1d,_0x279bd6=_0x2b9491();while(!![]){try{const _0xbc2830=-parseInt(_0x40873b(0x124))/0x1+parseInt(_0x40873b(0x157))/0x2+parseInt(_0x40873b(0x133))/0x3+-parseInt(_0x40873b(0x152))/0x4+-parseInt(_0x40873b(0x13d))/0x5*(parseInt(_0x40873b(0x15d))/0x6)+-parseInt(_0x40873b(0x135))/0x7+parseInt(_0x40873b(0x142))/0x8;if(_0xbc2830===_0x56e92c)break;else _0x279bd6['push'](_0x279bd6['shift']());}catch(_0x38bfd6){_0x279bd6['push'](_0x279bd6['shift']());}}}(a153_0xd279,0xa4a36));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':a153_0x360b96(0x140),'path':a153_0x360b96(0x13e)}];function a153_0x2c1d(_0x19fe98,_0x209563){_0x19fe98=_0x19fe98-0x11f;const _0xd279ea=a153_0xd279();let _0x2c1d7c=_0xd279ea[_0x19fe98];return _0x2c1d7c;}export const menuExternalLinkUpdate={'service':'menu','command':a153_0x360b96(0x162),'description':a153_0x360b96(0x134),'risk':a153_0x360b96(0x127),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a153_0x360b96(0x11f),'type':a153_0x360b96(0x12e),'required':!![],'description':a153_0x360b96(0x169)},{'name':a153_0x360b96(0x15a),'type':a153_0x360b96(0x12e),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x31f86f){validateInput(_0x31f86f);},async 'dryRun'(_0x1b4e26){const _0x19a683=a153_0x360b96;validateInput(_0x1b4e26);const _0x54c0b3=await buildPlan(_0x1b4e26,!![]);return menuDryRunResult(_0x54c0b3[_0x19a683(0x14e)],{'method':'POST','url':_0x19a683(0x13e),'body':_0x54c0b3['body'],'description':_0x19a683(0x136)+_0x54c0b3[_0x19a683(0x155)]['id']+'.'});},async 'execute'(_0x192991){const _0x2a54c5=a153_0x360b96;validateInput(_0x192991);const _0x5ed671=await buildPlan(_0x192991,![]),{plan:_0x3659b5,body:_0x59ff2d,before:_0x2b4d00,noChanges:_0x4574d9}=_0x5ed671,_0x5ec24a=_0x59ff2d['id'];if(_0x4574d9)return updateSuccess(_0x3659b5,_0x5ed671[_0x2a54c5(0x13f)],_0x2b4d00,!![],![]);await recheckMutationSnapshot(_0x192991,_0x3659b5,_0x2a54c5(0x154),_0x5ec24a);try{await updateMenuEntity(_0x192991[_0x2a54c5(0x13c)],_0x192991[_0x2a54c5(0x14c)],{'id':_0x59ff2d['id'],'url':_0x59ff2d[_0x2a54c5(0x11f)]});}catch(_0x2d8f8f){const _0x2bdd92=mapMenuApiError(_0x2d8f8f,_0x2a54c5(0x154),_0x5ec24a);if(isMenuResponseLoss(_0x2d8f8f)&&_0x2bdd92[_0x2a54c5(0x141)]!==_0x2a54c5(0x144))return recoverAfterResponseLoss(_0x192991,_0x5ed671);throw menuFailure(_0x2bdd92,_0x3659b5,{'stage':_0x2a54c5(0x121),'failed':{'id':_0x5ec24a},'warnings':[_0x2a54c5(0x12c)],'verification':{'status':_0x2a54c5(0x148),'targetId':_0x5ec24a,'lookupCommand':buildLookupCommand(_0x192991['appCode'])}});}let _0x37dfda,_0x50ae24;try{_0x37dfda=await fetchMenuSnapshot(_0x192991[_0x2a54c5(0x13c)],_0x192991['cookie']),_0x50ae24=requireMenu(_0x37dfda,_0x5ec24a),verifyUpdatedFact(_0x2b4d00,_0x50ae24,_0x59ff2d[_0x2a54c5(0x11f)]);}catch(_0x5a5f6b){const _0x483592=describeMenuErrorCause(_0x5a5f6b,_0x2a54c5(0x129),_0x5ec24a),_0x21ebdb=asVerificationError(_0x5a5f6b,_0x2a54c5(0x15b)+_0x5ec24a+_0x2a54c5(0x15e));throw menuFailure(_0x21ebdb,_0x3659b5,{'stage':'verification','succeeded':[{'id':_0x5ec24a,'updateRequested':!![]}],'failed':{'id':_0x5ec24a,'requestedStateConfirmed':![],..._0x483592},'warnings':[_0x2a54c5(0x166)],'verification':{'status':_0x2a54c5(0x148),'targetId':_0x5ec24a,'lookupCommand':buildLookupCommand(_0x192991[_0x2a54c5(0x13c)])}});}return updateSuccess(_0x3659b5,_0x37dfda,_0x50ae24,![],![]);}};function validateInput(_0x160deb){const _0x5a943f=a153_0x360b96;validateExactId(_0x160deb),requiredUrl(_0x160deb,_0x5a943f(0x11f)),requiredExpectedUrl(_0x160deb),parseParentId(_0x160deb,_0x5a943f(0x167),{'required':!![]});}function requiredUrl(_0x51dddc,_0x526fd9){const _0x27b2f3=a153_0x360b96;if(!hasFlag(_0x51dddc,_0x526fd9)||!_0x51dddc[_0x27b2f3(0x123)](_0x526fd9)['trim']())throw CliErrors['flagMissing'](_0x526fd9);return validateExternalMenuUrl(_0x51dddc[_0x27b2f3(0x123)](_0x526fd9));}function a153_0xd279(){const _0x625585=['trim','\x20could\x20not\x20be\x20verified\x20safely','3379480xpzSgD','hash','update\x20external\x20menu\x20URL','body','menu_external_link_not_leaf','1735154SicFPd','menu_update_recovery_required','readbackFailed','expect-url','Update\x20request\x20for\x20menu\x20','iframe','650646GHEoaF','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','menu_external_link_type_required','menu_external_link_path_missing','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','external-link-update','Run\x20','\x27\x5c\x27\x27','\x22,\x20not\x20iframe\x20or\x20link.','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','expect-parent-id','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','New\x20external\x20HTTPS\x20URL','visible','url','\x20URL\x20update\x20did\x20not\x20take\x20effect.','update','byId','str','921320oGlbHY',',\x20current\x20','update-recovery','write','after','verify\x20external\x20menu\x20URL\x20update','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','\x20already\x20matches\x20the\x20requested\x20URL.','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Response\x20was\x20lost\x20and\x20menu\x20','string','unknown','requestedUrlObserved','parentId','type','2501196fljQaZ','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','1854538YXsAIH','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','\x20changed\x20during\x20the\x20URL-only\x20update.','\x20parent\x20changed:\x20expected\x20','childrenCount','link','menu\x20list','appCode','55teHnfk','/smartapi/menu/update','snapshot','POST','code','17576192ZCtqJr','\x20direct\x20child\x20menu(s).','menu_permission_denied','Menu\x20','path','sort','failed','\x20has\x20','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','\x20has\x20an\x20empty\x20platform\x20path.','cookie','label','plan','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.'];a153_0xd279=function(){return _0x625585;};return a153_0xd279();}function requiredExpectedUrl(_0x3b2db1){const _0x5963f9=a153_0x360b96;if(!hasFlag(_0x3b2db1,_0x5963f9(0x15a))||!_0x3b2db1['str'](_0x5963f9(0x15a))[_0x5963f9(0x150)]())throw CliErrors['flagMissing'](_0x5963f9(0x15a));return _0x3b2db1[_0x5963f9(0x123)](_0x5963f9(0x15a))[_0x5963f9(0x150)]();}async function buildPlan(_0x2edde3,_0x179e86){const _0x43e380=a153_0x360b96,_0x473177=validateExactId(_0x2edde3),_0x11b6f1=requiredUrl(_0x2edde3,_0x43e380(0x11f)),_0x4452b3=requiredExpectedUrl(_0x2edde3),_0x31f9c2=parseParentId(_0x2edde3,'expect-parent-id',{'required':!![]}),_0x4d3663=await fetchMutationSnapshot(_0x2edde3,_0x43e380(0x154),_0x473177),_0x391ef1=requireMenu(_0x4d3663,_0x473177);assertExternalLinkLeaf(_0x391ef1);if(_0x391ef1['parentId']!==_0x31f9c2)throw menuError('menu_state_drift',_0x43e380(0x145)+_0x473177+_0x43e380(0x138)+formatParent(_0x31f9c2)+_0x43e380(0x125)+formatParent(_0x391ef1[_0x43e380(0x131)])+'.',_0x43e380(0x161));const _0x3ac988=_0x391ef1['url']===_0x11b6f1;if(!_0x3ac988&&_0x391ef1['url']!==_0x4452b3)throw menuError('menu_state_drift','Menu\x20'+_0x473177+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x552848={'id':_0x473177,'appCode':_0x2edde3[_0x43e380(0x13c)],'url':_0x11b6f1},_0xbedd58={..._0x391ef1,'url':_0x11b6f1};return{'body':_0x552848,'before':_0x391ef1,'noChanges':_0x3ac988,'snapshot':_0x4d3663,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0x473177},'before':_0x391ef1,'after':_0xbedd58,'dryRun':_0x179e86,'backend':[...BACKEND],'plannedActions':_0x3ac988?[]:[{'stage':'update-external-link-url','method':_0x43e380(0x140),'path':_0x43e380(0x13e),'body':_0x552848}],'snapshotHash':_0x4d3663[_0x43e380(0x153)],'warnings':_0x3ac988?[_0x43e380(0x168)]:[]})};}function assertExternalLinkLeaf(_0x15c797){const _0x58df16=a153_0x360b96;if(_0x15c797[_0x58df16(0x132)]!==_0x58df16(0x15c)&&_0x15c797[_0x58df16(0x132)]!==_0x58df16(0x13a))throw menuError(_0x58df16(0x15f),'Menu\x20'+_0x15c797['id']+'\x20is\x20type\x20\x22'+(_0x15c797[_0x58df16(0x132)]||_0x58df16(0x12f))+_0x58df16(0x165),_0x58df16(0x14a));if(_0x15c797[_0x58df16(0x139)]!==0x0)throw menuError(_0x58df16(0x156),_0x58df16(0x145)+_0x15c797['id']+_0x58df16(0x149)+_0x15c797[_0x58df16(0x139)]+_0x58df16(0x143),_0x58df16(0x14f));if(!_0x15c797['path'][_0x58df16(0x150)]())throw menuError(_0x58df16(0x160),_0x58df16(0x145)+_0x15c797['id']+_0x58df16(0x14b),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x56e168,_0x368cce,_0x359085){const _0x63688f=a153_0x360b96;assertExternalLinkLeaf(_0x368cce);const _0x3dee96=[['id',_0x368cce['id'],_0x56e168['id']],['label',_0x368cce[_0x63688f(0x14d)],_0x56e168[_0x63688f(0x14d)]],[_0x63688f(0x132),_0x368cce[_0x63688f(0x132)],_0x56e168[_0x63688f(0x132)]],[_0x63688f(0x146),_0x368cce[_0x63688f(0x146)],_0x56e168[_0x63688f(0x146)]],[_0x63688f(0x131),_0x368cce[_0x63688f(0x131)],_0x56e168[_0x63688f(0x131)]],[_0x63688f(0x147),_0x368cce['sort'],_0x56e168[_0x63688f(0x147)]],['visible',_0x368cce[_0x63688f(0x16a)],_0x56e168[_0x63688f(0x16a)]]];for(const [_0x53a9dd,_0x18fc1b,_0x366027]of _0x3dee96){assertVerified(_0x18fc1b===_0x366027,_0x63688f(0x145)+_0x56e168['id']+'\x20'+_0x53a9dd+_0x63688f(0x137));}assertVerified(_0x368cce[_0x63688f(0x11f)]===_0x359085,_0x63688f(0x145)+_0x56e168['id']+_0x63688f(0x120));}function updateSuccess(_0x960413,_0x3ba72a,_0x5e8d5f,_0x3847f5,_0x5c5859){const _0x428448=a153_0x360b96,_0x4a0b03=_0x5e8d5f['id'],_0x3f14a6=mutationResult({..._0x960413,'after':_0x5e8d5f,'dryRun':![],'succeeded':[{'id':_0x4a0b03,'updated':!_0x3847f5,'skipped':_0x3847f5,'recovered':_0x5c5859}],'verification':{'checkedBy':_0x428448(0x13b),'snapshotHash':_0x3ba72a[_0x428448(0x153)],'targetId':_0x4a0b03,'matchesRequestedState':!![],'recovered':_0x5c5859}});return{'ok':!![],'message':_0x5c5859?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x4a0b03+'.':_0x3847f5?_0x428448(0x145)+_0x4a0b03+_0x428448(0x12b):'Updated\x20external\x20URL\x20for\x20menu\x20'+_0x4a0b03+'.','data':{..._0x3f14a6,'recovered':_0x5c5859}};}async function recoverAfterResponseLoss(_0x491185,_0x2ecdab){const _0x47530c=a153_0x360b96,{plan:_0x4e9522,before:_0x360ef5,body:_0x1ee629}=_0x2ecdab;let _0x588a11;try{_0x588a11=await fetchMenuSnapshot(_0x491185['appCode'],_0x491185[_0x47530c(0x14c)]);}catch{throw recoveryRequired(_0x4e9522,_0x491185['appCode'],{'id':_0x1ee629['id'],'readbackFailed':!![]});}const _0x39cf99=_0x588a11[_0x47530c(0x122)]['get'](_0x1ee629['id']);if(!_0x39cf99||_0x39cf99['url']!==_0x1ee629['url'])throw recoveryRequired(_0x4e9522,_0x491185['appCode'],{'id':_0x1ee629['id'],'requestedUrlObserved':![],'after':_0x39cf99??null});try{verifyUpdatedFact(_0x360ef5,_0x39cf99,_0x1ee629[_0x47530c(0x11f)]);}catch(_0x4222c7){const _0x6318a=asVerificationError(_0x4222c7,_0x47530c(0x12d)+_0x1ee629['id']+_0x47530c(0x151));throw menuFailure(_0x6318a,_0x4e9522,{'stage':_0x47530c(0x126),'succeeded':[{'id':_0x1ee629['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x1ee629['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x39cf99,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x47530c(0x148),'targetId':_0x1ee629['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x491185[_0x47530c(0x13c)])}});}return updateSuccess(_0x4e9522,_0x588a11,_0x39cf99,![],!![]);}function recoveryRequired(_0x26733f,_0x28108d,_0x1c3e3a){const _0x96e1f1=a153_0x360b96,_0x209f2e=menuError(_0x96e1f1(0x158),_0x96e1f1(0x12a),_0x96e1f1(0x163)+buildLookupCommand(_0x28108d)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x209f2e,_0x26733f,{'stage':_0x96e1f1(0x126),'failed':{'id':_0x1c3e3a['id'],..._0x1c3e3a[_0x96e1f1(0x130)]===undefined?{}:{'requestedUrlObserved':_0x1c3e3a[_0x96e1f1(0x130)]},..._0x1c3e3a[_0x96e1f1(0x159)]?{'readbackFailed':!![]}:{}},'after':_0x1c3e3a[_0x96e1f1(0x128)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':'failed','targetId':_0x1c3e3a['id'],..._0x1c3e3a[_0x96e1f1(0x130)]===undefined?{}:{'requestedUrlObserved':_0x1c3e3a[_0x96e1f1(0x130)]},..._0x1c3e3a[_0x96e1f1(0x159)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x28108d)}});}function buildLookupCommand(_0x4c97f8){const _0x146e97=a153_0x360b96,_0x3d6e6e='\x27'+_0x4c97f8['replace'](/'/g,_0x146e97(0x164))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x3d6e6e+'\x20--format\x20compress';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a154_0x3d48b9=a154_0xc17a;function a154_0xc17a(_0xa3899,_0x5122c5){_0xa3899=_0xa3899-0x11c;const _0x49169e=a154_0x4916();let _0xc17ae3=_0x49169e[_0xa3899];return _0xc17ae3;}(function(_0x57d2fb,_0x48cd58){const _0x4aa6a0=a154_0xc17a,_0x2364dd=_0x57d2fb();while(!![]){try{const _0x3ad881=-parseInt(_0x4aa6a0(0x14c))/0x1+-parseInt(_0x4aa6a0(0x11c))/0x2+parseInt(_0x4aa6a0(0x11d))/0x3+-parseInt(_0x4aa6a0(0x141))/0x4*(-parseInt(_0x4aa6a0(0x13a))/0x5)+parseInt(_0x4aa6a0(0x13d))/0x6*(-parseInt(_0x4aa6a0(0x137))/0x7)+parseInt(_0x4aa6a0(0x123))/0x8+parseInt(_0x4aa6a0(0x14f))/0x9;if(_0x3ad881===_0x48cd58)break;else _0x2364dd['push'](_0x2364dd['shift']());}catch(_0x5e8ae2){_0x2364dd['push'](_0x2364dd['shift']());}}}(a154_0x4916,0xc5a25));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 a154_0x4916(){const _0x4370cd=['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','sort','group-create','20OdnLWo','pageId','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','trim','folder','Created\x20menu\x20','label','create\x20folder','flagMissing','767499ybXjoB','byId','hash','6146802WVJzRM','Created\x20menu\x20folder\x20','verify\x20folder\x20creation','\x20has\x20resources.','\x20unexpectedly\x20owns\x20a\x20page.','create-response-validation','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','cookie','parent-id','Folder\x20label','rabetbase\x20menu\x20list\x20--format\x20json','length','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','childrenCount','create-folder','isSafeInteger','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','parentId','<platform-generated>','menu_create_response_invalid','appCode','depth','2956408haOcWB','4043394YtEyHp','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','\x20may\x20exist\x20online\x20at\x20path\x20','verification','stringify','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','11970792iEoAnb','\x20has\x20unexpected\x20parent\x20','after','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','str','string','\x20is\x20missing\x20from\x20menu\x20list.',';\x20verify\x20it\x20before\x20retrying.','\x20is\x20not\x20type\x20folder.','Folder\x20','failed','Menu\x20create\x20response\x20for\x20folder\x20','write','root','POST','resources','Created\x20folder\x20','Would\x20create\x20empty\x20folder\x20\x22','path','/smartapi/menu/create','21zvupvq','menu\x20list','menu','212315anwWSF','get','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','1368456BaFPSk'];a154_0x4916=function(){return _0x4370cd;};return a154_0x4916();}import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a154_0x3d48b9(0x131),'path':a154_0x3d48b9(0x136)}];export const menuGroupCreate={'service':a154_0x3d48b9(0x139),'command':a154_0x3d48b9(0x140),'description':a154_0x3d48b9(0x15b),'risk':a154_0x3d48b9(0x12f),'structuredErrors':!![],'flags':[{'name':'label','type':a154_0x3d48b9(0x128),'required':!![],'description':a154_0x3d48b9(0x158)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x484532){validateCreateInput(_0x484532);},async 'dryRun'(_0x36a753){const _0x21f488=a154_0x3d48b9,_0x7ac2a5=await buildCreatePlan(_0x36a753,!![]),_0x59be73=_0x7ac2a5['after'];return menuDryRunResult(_0x7ac2a5,{'method':_0x21f488(0x131),'url':_0x21f488(0x136),'body':{'parentId':toApiParentId(_0x59be73['parentId']),'label':_0x59be73[_0x21f488(0x149)],'type':_0x21f488(0x147),'visible':!![],'sort':_0x59be73[_0x21f488(0x13f)],'extend':{}},'description':_0x21f488(0x134)+String(_0x59be73['label'])+'\x22\x20with\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x199939){const _0x484d5f=a154_0x3d48b9;validateCreateInput(_0x199939);const _0x12c92c=await buildCreatePlan(_0x199939,![]),_0x38a251=_0x12c92c[_0x484d5f(0x125)];await recheckMutationSnapshot(_0x199939,_0x12c92c,_0x484d5f(0x14a));let _0x33c526;try{_0x33c526=await createMenuEntity(_0x199939[_0x484d5f(0x163)],_0x199939[_0x484d5f(0x156)],{'parentId':toApiParentId(_0x38a251[_0x484d5f(0x160)]),'label':String(_0x38a251['label']),'type':_0x484d5f(0x147),'visible':!![],'sort':Number(_0x38a251[_0x484d5f(0x13f)]),'extend':{}});}catch(_0x56be5d){const _0x55d6e3=mapMenuApiError(_0x56be5d,_0x484d5f(0x14a));throw menuFailure(_0x55d6e3,_0x12c92c,{'stage':'create','failed':{}});}const _0x25ce74=Number(_0x33c526['id']);if(!Number[_0x484d5f(0x15e)](_0x25ce74)||_0x25ce74<=0x0){const _0x529655=menuError(_0x484d5f(0x162),_0x484d5f(0x13c),_0x484d5f(0x15f));throw menuFailure(_0x529655,_0x12c92c,{'stage':_0x484d5f(0x154),'failed':{'createdId':_0x33c526['id']??null},'warnings':[_0x484d5f(0x13e)],'verification':{'status':_0x484d5f(0x12d),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json'}});}const _0x5a7d49=typeof _0x33c526['path']===_0x484d5f(0x128)?_0x33c526[_0x484d5f(0x135)]:'';if(!_0x5a7d49[_0x484d5f(0x146)]()){const _0x424074=menuError(_0x484d5f(0x162),_0x484d5f(0x12e)+_0x25ce74+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.',_0x484d5f(0x143));throw menuFailure(_0x424074,_0x12c92c,{'stage':'create-response-validation','succeeded':[{'id':_0x25ce74,'created':!![]}],'failed':{'id':_0x25ce74,'generatedPathConfirmed':![]},'warnings':[_0x484d5f(0x12c)+_0x25ce74+_0x484d5f(0x145)],'after':{..._0x38a251,'id':_0x25ce74,'path':_0x5a7d49},'verification':{'status':_0x484d5f(0x12d),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x25ce74}});}let _0x1cc03e;try{_0x1cc03e=await fetchMenuSnapshot(_0x199939[_0x484d5f(0x163)],_0x199939[_0x484d5f(0x156)]);}catch(_0x558183){const _0x436e5f=describeMenuErrorCause(_0x558183,_0x484d5f(0x151),_0x25ce74),_0x571305=asVerificationError(_0x558183,_0x484d5f(0x12c)+_0x25ce74+_0x484d5f(0x122));throw menuFailure(_0x571305,_0x12c92c,{'stage':_0x484d5f(0x120),'succeeded':[{'id':_0x25ce74,'created':!![],'path':_0x5a7d49}],'failed':{'id':_0x25ce74,'finalFactsConfirmed':![],..._0x436e5f},'warnings':['Folder\x20'+_0x25ce74+_0x484d5f(0x11f)+JSON[_0x484d5f(0x121)](_0x5a7d49)+_0x484d5f(0x12a)],'after':{..._0x38a251,'id':_0x25ce74,'path':_0x5a7d49},'verification':{'status':'failed','lookupCommand':_0x484d5f(0x159),'targetId':_0x25ce74}});}const _0x5b0cee=_0x1cc03e[_0x484d5f(0x14d)][_0x484d5f(0x13b)](_0x25ce74);let _0xdd8a9e;try{assertVerified(Boolean(_0x5b0cee),_0x484d5f(0x133)+_0x25ce74+_0x484d5f(0x129)),_0xdd8a9e=_0x5b0cee,assertVerified(_0xdd8a9e['type']===_0x484d5f(0x147),_0x484d5f(0x148)+_0x25ce74+_0x484d5f(0x12b)),assertVerified(_0xdd8a9e['label']===_0x38a251[_0x484d5f(0x149)],_0x484d5f(0x133)+_0x25ce74+'\x20has\x20an\x20unexpected\x20label.'),assertVerified(_0xdd8a9e[_0x484d5f(0x135)]===_0x5a7d49&&Boolean(_0xdd8a9e['path']['trim']()),_0x484d5f(0x133)+_0x25ce74+_0x484d5f(0x126)),assertVerified(_0xdd8a9e['visible']===!![],_0x484d5f(0x133)+_0x25ce74+'\x20is\x20not\x20visible.'),assertVerified(_0xdd8a9e[_0x484d5f(0x132)][_0x484d5f(0x15a)]===0x0,_0x484d5f(0x133)+_0x25ce74+_0x484d5f(0x152)),assertVerified(_0xdd8a9e[_0x484d5f(0x15c)]===0x0,_0x484d5f(0x133)+_0x25ce74+'\x20is\x20not\x20empty.'),assertVerified(_0xdd8a9e[_0x484d5f(0x13f)]===_0x38a251[_0x484d5f(0x13f)],_0x484d5f(0x133)+_0x25ce74+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0xdd8a9e['parentId']===_0x38a251[_0x484d5f(0x160)],_0x484d5f(0x133)+_0x25ce74+_0x484d5f(0x124)+(_0xdd8a9e['parentId']??_0x484d5f(0x130))+'.'),assertVerified(_0xdd8a9e[_0x484d5f(0x142)]==null,_0x484d5f(0x133)+_0x25ce74+_0x484d5f(0x153));const _0x1c75f8=_0xdd8a9e[_0x484d5f(0x160)]==null?undefined:requireFolder(_0x1cc03e,_0xdd8a9e[_0x484d5f(0x160)]);assertVerified(_0xdd8a9e['depth']===(_0x1c75f8?_0x1c75f8[_0x484d5f(0x164)]+0x1:0x0),_0x484d5f(0x133)+_0x25ce74+_0x484d5f(0x144));}catch(_0x3ad84a){const _0x5aa65c=describeMenuErrorCause(_0x3ad84a,_0x484d5f(0x151),_0x25ce74),_0x26dc89=asVerificationError(_0x3ad84a,_0x484d5f(0x12c)+_0x25ce74+_0x484d5f(0x11e));throw menuFailure(_0x26dc89,_0x12c92c,{'stage':'verification','succeeded':[{'id':_0x25ce74,'created':!![],'path':_0x5a7d49}],'failed':{'id':_0x25ce74,'finalFactsConfirmed':![],..._0x5aa65c},'warnings':[_0x484d5f(0x12c)+_0x25ce74+_0x484d5f(0x155)],'after':_0x5b0cee??{..._0x38a251,'id':_0x25ce74,'path':_0x5a7d49},'verification':{'status':_0x484d5f(0x12d),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x25ce74}});}const _0x4f0943=mutationResult({..._0x12c92c,'after':_0xdd8a9e,'dryRun':![],'succeeded':[{'id':_0x25ce74,'type':'folder','path':_0x5a7d49}],'verification':{'checkedBy':_0x484d5f(0x138),'snapshotHash':_0x1cc03e[_0x484d5f(0x14e)],'folder':!![],'path':_0x5a7d49,'emptyResources':!![]}});return{'ok':!![],'data':_0x4f0943,'message':_0x484d5f(0x150)+_0x25ce74+'.'};}};function validateCreateInput(_0x15b37e){const _0x422e37=a154_0x3d48b9,_0x5b7ee3=_0x15b37e[_0x422e37(0x127)](_0x422e37(0x149))[_0x422e37(0x146)]();if(!_0x5b7ee3)throw CliErrors[_0x422e37(0x14b)](_0x422e37(0x149));parseParentId(_0x15b37e,'parent-id'),validateSort(_0x15b37e);}async function buildCreatePlan(_0x680f32,_0x33bef4){const _0x4936dd=a154_0x3d48b9,_0x34ba47=await fetchMutationSnapshot(_0x680f32,_0x4936dd(0x14a)),_0x3c62cf=parseParentId(_0x680f32,_0x4936dd(0x157))??null;if(_0x3c62cf!=null)requireFolder(_0x34ba47,_0x3c62cf);const _0x3c916f=validateSort(_0x680f32),_0x16cd18=_0x3c916f??nextSiblingSort(_0x34ba47,_0x3c62cf,_0x4936dd(0x147)),_0x27bec0=_0x680f32[_0x4936dd(0x127)](_0x4936dd(0x149))['trim']();return mutationResult({'operation':_0x4936dd(0x140),'selector':{'label':_0x27bec0,'parentId':_0x3c62cf},'before':null,'after':{'id':null,'parentId':_0x3c62cf,'label':_0x27bec0,'path':_0x4936dd(0x161),'type':'folder','visible':!![],'sort':_0x16cd18,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x33bef4,'backend':[...BACKEND],'plannedActions':[{'stage':_0x4936dd(0x15d),'method':_0x4936dd(0x131),'path':_0x4936dd(0x136),'body':{'parentId':toApiParentId(_0x3c62cf),'label':_0x27bec0,'type':_0x4936dd(0x147),'visible':!![],'sort':_0x16cd18,'extend':{}}}],'snapshotHash':_0x34ba47[_0x4936dd(0x14e)],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
|
|
1
|
+
const a154_0x37f8ca=a154_0x7631;(function(_0x3d7bc6,_0x305266){const _0x4a6343=a154_0x7631,_0x10bae0=_0x3d7bc6();while(!![]){try{const _0x3536f9=parseInt(_0x4a6343(0x18d))/0x1*(parseInt(_0x4a6343(0x18f))/0x2)+-parseInt(_0x4a6343(0x1a0))/0x3*(-parseInt(_0x4a6343(0x1ac))/0x4)+parseInt(_0x4a6343(0x185))/0x5*(-parseInt(_0x4a6343(0x1bb))/0x6)+parseInt(_0x4a6343(0x1bd))/0x7*(-parseInt(_0x4a6343(0x190))/0x8)+-parseInt(_0x4a6343(0x1b6))/0x9*(parseInt(_0x4a6343(0x192))/0xa)+-parseInt(_0x4a6343(0x1be))/0xb+parseInt(_0x4a6343(0x198))/0xc;if(_0x3536f9===_0x305266)break;else _0x10bae0['push'](_0x10bae0['shift']());}catch(_0x2b626d){_0x10bae0['push'](_0x10bae0['shift']());}}}(a154_0x528e,0x986af));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a154_0x7631(_0x2b45e7,_0x5d72d2){_0x2b45e7=_0x2b45e7-0x17a;const _0x528e4d=a154_0x528e();let _0x76318d=_0x528e4d[_0x2b45e7];return _0x76318d;}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';function a154_0x528e(){const _0x303556=['create-folder','/smartapi/menu/create','type','6vxXKMO','trim','23401RArdiu','8035742xmWgxl','Created\x20menu\x20','create-response-validation','depth','sort','Would\x20create\x20empty\x20folder\x20\x22','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','<platform-generated>','isSafeInteger','\x20is\x20not\x20visible.','Folder\x20label','Created\x20menu\x20folder\x20','create\x20folder','after','Created\x20folder\x20','get','212430eLiNrN','parent-id','label','hash','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20is\x20not\x20empty.','\x20has\x20an\x20unexpected\x20sort.','verify\x20folder\x20creation','222685WjVrbe','menu_create_response_invalid','4etleZs','592PRSrGR','byId','514760XQPomo','\x20has\x20an\x20unexpected\x20label.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','Folder\x20','rabetbase\x20menu\x20list\x20--format\x20json','pageId','11827536DnVgHq','\x20has\x20unexpected\x20parent\x20','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','path','\x20may\x20exist\x20online\x20at\x20path\x20','write','create','resources','903niAhhO','failed','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','verification','folder','\x20unexpectedly\x20owns\x20a\x20page.','\x20is\x20not\x20type\x20folder.','stringify','appCode','string','menu','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','4892PcNzkz','parentId','childrenCount','str','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','visible','\x20is\x20missing\x20from\x20menu\x20list.','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','cookie','POST','27iAPjlJ','group-create'];a154_0x528e=function(){return _0x303556;};return a154_0x528e();}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a154_0x37f8ca(0x1b5),'path':a154_0x37f8ca(0x1b9)}];export const menuGroupCreate={'service':a154_0x37f8ca(0x1aa),'command':a154_0x37f8ca(0x1b7),'description':a154_0x37f8ca(0x1a2),'risk':a154_0x37f8ca(0x19d),'structuredErrors':!![],'flags':[{'name':'label','type':a154_0x37f8ca(0x1a9),'required':!![],'description':a154_0x37f8ca(0x17f)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2f8b7){validateCreateInput(_0x2f8b7);},async 'dryRun'(_0x395971){const _0x4eb6bd=a154_0x37f8ca,_0x4edb50=await buildCreatePlan(_0x395971,!![]),_0x2d11a6=_0x4edb50['after'];return menuDryRunResult(_0x4edb50,{'method':_0x4eb6bd(0x1b5),'url':_0x4eb6bd(0x1b9),'body':{'parentId':toApiParentId(_0x2d11a6['parentId']),'label':_0x2d11a6[_0x4eb6bd(0x187)],'type':_0x4eb6bd(0x1a4),'visible':!![],'sort':_0x2d11a6[_0x4eb6bd(0x1c2)],'extend':{}},'description':_0x4eb6bd(0x17a)+String(_0x2d11a6['label'])+'\x22\x20with\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x4f254d){const _0xd549c2=a154_0x37f8ca;validateCreateInput(_0x4f254d);const _0x481900=await buildCreatePlan(_0x4f254d,![]),_0x5c7e86=_0x481900[_0xd549c2(0x182)];await recheckMutationSnapshot(_0x4f254d,_0x481900,_0xd549c2(0x181));let _0x25dba6;try{_0x25dba6=await createMenuEntity(_0x4f254d[_0xd549c2(0x1a8)],_0x4f254d[_0xd549c2(0x1b4)],{'parentId':toApiParentId(_0x5c7e86[_0xd549c2(0x1ad)]),'label':String(_0x5c7e86[_0xd549c2(0x187)]),'type':_0xd549c2(0x1a4),'visible':!![],'sort':Number(_0x5c7e86[_0xd549c2(0x1c2)]),'extend':{}});}catch(_0x5cbe1f){const _0x2042cf=mapMenuApiError(_0x5cbe1f,_0xd549c2(0x181));throw menuFailure(_0x2042cf,_0x481900,{'stage':_0xd549c2(0x19e),'failed':{}});}const _0xb797b0=Number(_0x25dba6['id']);if(!Number[_0xd549c2(0x17d)](_0xb797b0)||_0xb797b0<=0x0){const _0x20b0f1=menuError(_0xd549c2(0x18e),_0xd549c2(0x194),_0xd549c2(0x189));throw menuFailure(_0x20b0f1,_0x481900,{'stage':_0xd549c2(0x1c0),'failed':{'createdId':_0x25dba6['id']??null},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.'],'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json'}});}const _0x5c2cb2=typeof _0x25dba6[_0xd549c2(0x19b)]===_0xd549c2(0x1a9)?_0x25dba6[_0xd549c2(0x19b)]:'';if(!_0x5c2cb2[_0xd549c2(0x1bc)]()){const _0x40fe75=menuError(_0xd549c2(0x18e),'Menu\x20create\x20response\x20for\x20folder\x20'+_0xb797b0+_0xd549c2(0x17b),'Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x40fe75,_0x481900,{'stage':'create-response-validation','succeeded':[{'id':_0xb797b0,'created':!![]}],'failed':{'id':_0xb797b0,'generatedPathConfirmed':![]},'warnings':[_0xd549c2(0x195)+_0xb797b0+_0xd549c2(0x1b3)],'after':{..._0x5c7e86,'id':_0xb797b0,'path':_0x5c2cb2},'verification':{'status':_0xd549c2(0x1a1),'lookupCommand':_0xd549c2(0x196),'targetId':_0xb797b0}});}let _0x3b1ac4;try{_0x3b1ac4=await fetchMenuSnapshot(_0x4f254d['appCode'],_0x4f254d[_0xd549c2(0x1b4)]);}catch(_0x3044fa){const _0x49abc6=describeMenuErrorCause(_0x3044fa,_0xd549c2(0x18c),_0xb797b0),_0x4c379a=asVerificationError(_0x3044fa,'Folder\x20'+_0xb797b0+_0xd549c2(0x1b0));throw menuFailure(_0x4c379a,_0x481900,{'stage':_0xd549c2(0x1a3),'succeeded':[{'id':_0xb797b0,'created':!![],'path':_0x5c2cb2}],'failed':{'id':_0xb797b0,'finalFactsConfirmed':![],..._0x49abc6},'warnings':['Folder\x20'+_0xb797b0+_0xd549c2(0x19c)+JSON[_0xd549c2(0x1a7)](_0x5c2cb2)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x5c7e86,'id':_0xb797b0,'path':_0x5c2cb2},'verification':{'status':_0xd549c2(0x1a1),'lookupCommand':_0xd549c2(0x196),'targetId':_0xb797b0}});}const _0x1077b2=_0x3b1ac4[_0xd549c2(0x191)][_0xd549c2(0x184)](_0xb797b0);let _0x43e136;try{assertVerified(Boolean(_0x1077b2),_0xd549c2(0x183)+_0xb797b0+_0xd549c2(0x1b2)),_0x43e136=_0x1077b2,assertVerified(_0x43e136[_0xd549c2(0x1ba)]===_0xd549c2(0x1a4),_0xd549c2(0x1bf)+_0xb797b0+_0xd549c2(0x1a6)),assertVerified(_0x43e136[_0xd549c2(0x187)]===_0x5c7e86[_0xd549c2(0x187)],_0xd549c2(0x183)+_0xb797b0+_0xd549c2(0x193)),assertVerified(_0x43e136[_0xd549c2(0x19b)]===_0x5c2cb2&&Boolean(_0x43e136[_0xd549c2(0x19b)]['trim']()),_0xd549c2(0x183)+_0xb797b0+'\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.'),assertVerified(_0x43e136[_0xd549c2(0x1b1)]===!![],'Created\x20folder\x20'+_0xb797b0+_0xd549c2(0x17e)),assertVerified(_0x43e136[_0xd549c2(0x19f)]['length']===0x0,'Created\x20folder\x20'+_0xb797b0+'\x20has\x20resources.'),assertVerified(_0x43e136[_0xd549c2(0x1ae)]===0x0,'Created\x20folder\x20'+_0xb797b0+_0xd549c2(0x18a)),assertVerified(_0x43e136[_0xd549c2(0x1c2)]===_0x5c7e86[_0xd549c2(0x1c2)],_0xd549c2(0x183)+_0xb797b0+_0xd549c2(0x18b)),assertVerified(_0x43e136['parentId']===_0x5c7e86[_0xd549c2(0x1ad)],_0xd549c2(0x183)+_0xb797b0+_0xd549c2(0x199)+(_0x43e136[_0xd549c2(0x1ad)]??'root')+'.'),assertVerified(_0x43e136[_0xd549c2(0x197)]==null,'Created\x20folder\x20'+_0xb797b0+_0xd549c2(0x1a5));const _0x256aa2=_0x43e136[_0xd549c2(0x1ad)]==null?undefined:requireFolder(_0x3b1ac4,_0x43e136[_0xd549c2(0x1ad)]);assertVerified(_0x43e136['depth']===(_0x256aa2?_0x256aa2[_0xd549c2(0x1c1)]+0x1:0x0),_0xd549c2(0x183)+_0xb797b0+'\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.');}catch(_0x283267){const _0x3a6199=describeMenuErrorCause(_0x283267,'verify\x20folder\x20creation',_0xb797b0),_0x5e1172=asVerificationError(_0x283267,_0xd549c2(0x195)+_0xb797b0+_0xd549c2(0x19a));throw menuFailure(_0x5e1172,_0x481900,{'stage':'verification','succeeded':[{'id':_0xb797b0,'created':!![],'path':_0x5c2cb2}],'failed':{'id':_0xb797b0,'finalFactsConfirmed':![],..._0x3a6199},'warnings':[_0xd549c2(0x195)+_0xb797b0+'\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.'],'after':_0x1077b2??{..._0x5c7e86,'id':_0xb797b0,'path':_0x5c2cb2},'verification':{'status':_0xd549c2(0x1a1),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0xb797b0}});}const _0x327cee=mutationResult({..._0x481900,'after':_0x43e136,'dryRun':![],'succeeded':[{'id':_0xb797b0,'type':_0xd549c2(0x1a4),'path':_0x5c2cb2}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x3b1ac4[_0xd549c2(0x188)],'folder':!![],'path':_0x5c2cb2,'emptyResources':!![]}});return{'ok':!![],'data':_0x327cee,'message':_0xd549c2(0x180)+_0xb797b0+'.'};}};function validateCreateInput(_0x93205){const _0x4f0f0f=a154_0x37f8ca,_0x1c755b=_0x93205[_0x4f0f0f(0x1af)](_0x4f0f0f(0x187))['trim']();if(!_0x1c755b)throw CliErrors['flagMissing'](_0x4f0f0f(0x187));parseParentId(_0x93205,_0x4f0f0f(0x186)),validateSort(_0x93205);}async function buildCreatePlan(_0x13fe65,_0x8e7a4e){const _0x318d11=a154_0x37f8ca,_0xb029f6=await fetchMutationSnapshot(_0x13fe65,_0x318d11(0x181)),_0x277e04=parseParentId(_0x13fe65,_0x318d11(0x186))??null;if(_0x277e04!=null)requireFolder(_0xb029f6,_0x277e04);const _0x5ce259=validateSort(_0x13fe65),_0xec5711=_0x5ce259??nextSiblingSort(_0xb029f6,_0x277e04,_0x318d11(0x1a4)),_0x1e7b1f=_0x13fe65[_0x318d11(0x1af)](_0x318d11(0x187))[_0x318d11(0x1bc)]();return mutationResult({'operation':_0x318d11(0x1b7),'selector':{'label':_0x1e7b1f,'parentId':_0x277e04},'before':null,'after':{'id':null,'parentId':_0x277e04,'label':_0x1e7b1f,'path':_0x318d11(0x17c),'type':_0x318d11(0x1a4),'visible':!![],'sort':_0xec5711,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x8e7a4e,'backend':[...BACKEND],'plannedActions':[{'stage':_0x318d11(0x1b8),'method':_0x318d11(0x1b5),'path':_0x318d11(0x1b9),'body':{'parentId':toApiParentId(_0x277e04),'label':_0x1e7b1f,'type':_0x318d11(0x1a4),'visible':!![],'sort':_0xec5711,'extend':{}}}],'snapshotHash':_0xb029f6[_0x318d11(0x188)],'warnings':[_0x318d11(0x1ab)]});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a155_0x55bad0=a155_0x4dd3;(function(_0x520279,_0x5df350){const _0x5c5d0b=a155_0x4dd3,_0x301a91=_0x520279();while(!![]){try{const _0x1db81e=parseInt(_0x5c5d0b(0x11c))/0x1*(parseInt(_0x5c5d0b(0x11e))/0x2)+parseInt(_0x5c5d0b(0xf9))/0x3+parseInt(_0x5c5d0b(0x10b))/0x4*(parseInt(_0x5c5d0b(0xf3))/0x5)+parseInt(_0x5c5d0b(0x10a))/0x6+parseInt(_0x5c5d0b(0x103))/0x7+-parseInt(_0x5c5d0b(0x104))/0x8*(-parseInt(_0x5c5d0b(0x10d))/0x9)+-parseInt(_0x5c5d0b(0x11a))/0xa*(parseInt(_0x5c5d0b(0x105))/0xb);if(_0x1db81e===_0x5df350)break;else _0x301a91['push'](_0x301a91['shift']());}catch(_0x47586a){_0x301a91['push'](_0x301a91['shift']());}}}(a155_0x1194,0x22fdf));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':'POST','path':a155_0x55bad0(0xfa)}];export const menuGroupUpdate={'service':'menu','command':'group-update','description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a155_0x55bad0(0x11d),'structuredErrors':!![],'rejectedFlags':[{'name':a155_0x55bad0(0x115),'message':a155_0x55bad0(0x110),'hint':a155_0x55bad0(0xff)}],'flags':[MENU_ID_FLAG,{'name':a155_0x55bad0(0x100),'type':a155_0x55bad0(0xf8),'description':a155_0x55bad0(0x10c)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x488268){validateUpdateInput(_0x488268);},async 'dryRun'(_0x6468f8){const _0x256944=a155_0x55bad0;validateUpdateInput(_0x6468f8);const {plan:_0x3c3586,patch:_0xf5ab77}=await buildUpdatePlan(_0x6468f8,!![]);return menuDryRunResult(_0x3c3586,{'method':_0x256944(0xfc),'url':_0x256944(0xfa),'body':_0xf5ab77,'description':_0x256944(0x112)+_0x3c3586[_0x256944(0x108)]['id']+'.'});},async 'execute'(_0x3bd13c){const _0x3aa41a=a155_0x55bad0;validateUpdateInput(_0x3bd13c);const {plan:_0x1aaa18,patch:_0x554455,noChanges:_0x58d041}=await buildUpdatePlan(_0x3bd13c,![]),_0x1285d5=Number(_0x1aaa18[_0x3aa41a(0x108)]['id']),_0x3bc455=await recheckMutationSnapshot(_0x3bd13c,_0x1aaa18,'update\x20folder',_0x1285d5);if(!_0x58d041)try{await updateMenuEntity(_0x3bd13c[_0x3aa41a(0xef)],_0x3bd13c['cookie'],_0x554455);}catch(_0x25a511){const _0x81486a=mapMenuApiError(_0x25a511,'update\x20folder',_0x1285d5);throw menuFailure(_0x81486a,_0x1aaa18,{'stage':_0x3aa41a(0x118),'failed':{'id':_0x1285d5}});}let _0x161b5f=_0x3bc455,_0x19b3d5;try{!_0x58d041&&(_0x161b5f=await fetchMenuSnapshot(_0x3bd13c[_0x3aa41a(0xef)],_0x3bd13c['cookie'])),_0x19b3d5=requireMenu(_0x161b5f,_0x1285d5),verifyPatch(_0x19b3d5,_0x554455),_0x19b3d5[_0x3aa41a(0x101)]!=null&&requireFolder(_0x161b5f,_0x19b3d5[_0x3aa41a(0x101)]);}catch(_0x337637){const _0x592399=describeMenuErrorCause(_0x337637,_0x3aa41a(0x111),_0x1285d5),_0x4c8a54=asVerificationError(_0x337637,'Update\x20request\x20for\x20folder\x20'+_0x1285d5+_0x3aa41a(0x11f));throw menuFailure(_0x4c8a54,_0x1aaa18,{'stage':_0x3aa41a(0x116),'succeeded':[{'id':_0x1285d5,'updateRequested':!_0x58d041,'skipped':_0x58d041}],'failed':{'id':_0x1285d5,'requestedStateConfirmed':![],..._0x592399},'warnings':[_0x3aa41a(0x106)],'verification':{'status':_0x3aa41a(0x113),'lookupCommand':_0x3aa41a(0x10e),'targetId':_0x1285d5}});}const _0x107b04=mutationResult({..._0x1aaa18,'after':_0x19b3d5,'dryRun':![],'succeeded':[{'id':_0x1285d5,'updated':!_0x58d041,'skipped':_0x58d041}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x161b5f[_0x3aa41a(0x117)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x107b04,'message':_0x58d041?_0x3aa41a(0xfb)+_0x1285d5+_0x3aa41a(0x122):_0x3aa41a(0x11b)+_0x1285d5+'.'};}};function validateUpdateInput(_0x2aa49b){const _0x41cff0=a155_0x55bad0;validateExactId(_0x2aa49b);if(hasFlag(_0x2aa49b,_0x41cff0(0x115)))throw CliErrors[_0x41cff0(0x109)](_0x41cff0(0x110),_0x41cff0(0xff));if(!hasFlag(_0x2aa49b,'label')&&!hasFlag(_0x2aa49b,_0x41cff0(0xf0)))throw CliErrors[_0x41cff0(0x109)](_0x41cff0(0xf5));if(hasFlag(_0x2aa49b,_0x41cff0(0x100))&&!_0x2aa49b[_0x41cff0(0x121)](_0x41cff0(0x100))[_0x41cff0(0x107)]())throw CliErrors[_0x41cff0(0x109)](_0x41cff0(0xfe));validateSort(_0x2aa49b);}function a155_0x4dd3(_0x290e2f,_0x579ce6){_0x290e2f=_0x290e2f-0xef;const _0x1194fa=a155_0x1194();let _0x4dd3aa=_0x1194fa[_0x290e2f];return _0x4dd3aa;}async function buildUpdatePlan(_0x45d12b,_0x231dd7){const _0x5cbfe1=a155_0x55bad0,_0x4571eb=validateExactId(_0x45d12b),_0x26cf08=await fetchMutationSnapshot(_0x45d12b,_0x5cbfe1(0x119),_0x4571eb),_0xeb3ab7=requireMenu(_0x26cf08,_0x4571eb);if(_0xeb3ab7[_0x5cbfe1(0xfd)]!==_0x5cbfe1(0xf6))throw menuError('menu_not_folder',_0x5cbfe1(0x10f)+_0x4571eb+_0x5cbfe1(0xf4)+(_0xeb3ab7[_0x5cbfe1(0xfd)]||_0x5cbfe1(0x120))+_0x5cbfe1(0x114),_0x5cbfe1(0xf1));assertExpectedState(_0x45d12b,_0xeb3ab7);const _0x438e31={'id':_0x4571eb},_0x56dd32={..._0xeb3ab7};if(hasFlag(_0x45d12b,'label')){const _0x270c6c=_0x45d12b[_0x5cbfe1(0x121)](_0x5cbfe1(0x100))[_0x5cbfe1(0x107)]();_0x438e31[_0x5cbfe1(0x100)]=_0x270c6c,_0x56dd32[_0x5cbfe1(0x100)]=_0x270c6c;}if(hasFlag(_0x45d12b,_0x5cbfe1(0xf0))){const _0xd2c9b5=validateSort(_0x45d12b);_0x438e31['sort']=_0xd2c9b5,_0x56dd32[_0x5cbfe1(0xf0)]=_0xd2c9b5;}const _0x437f84=sameRequestedState(_0xeb3ab7,_0x56dd32),_0x28b956=_0x437f84?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0x438e31,'noChanges':_0x437f84,'plan':mutationResult({'operation':_0x5cbfe1(0xf7),'selector':{'id':_0x4571eb},'before':_0xeb3ab7,'after':_0x56dd32,'dryRun':_0x231dd7,'backend':[...BACKEND],'snapshotHash':_0x26cf08[_0x5cbfe1(0x117)],'warnings':_0x28b956})};}function sameRequestedState(_0x440825,_0x4f433e){const _0x5c1371=a155_0x55bad0;return _0x440825[_0x5c1371(0x100)]===_0x4f433e[_0x5c1371(0x100)]&&_0x440825['sort']===_0x4f433e[_0x5c1371(0xf0)];}function verifyPatch(_0x4c6c14,_0x48eb42){const _0x1df9c9=a155_0x55bad0;assertVerified(_0x4c6c14[_0x1df9c9(0xfd)]===_0x1df9c9(0xf6),_0x1df9c9(0x10f)+_0x4c6c14['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x48eb42[_0x1df9c9(0x100)]!==undefined&&assertVerified(_0x4c6c14['label']===_0x48eb42['label'],_0x1df9c9(0xfb)+_0x4c6c14['id']+_0x1df9c9(0x102)),_0x48eb42[_0x1df9c9(0xf0)]!==undefined&&assertVerified(_0x4c6c14[_0x1df9c9(0xf0)]===_0x48eb42[_0x1df9c9(0xf0)],_0x1df9c9(0xfb)+_0x4c6c14['id']+_0x1df9c9(0xf2));}function a155_0x1194(){const _0x56f32d=['2YPYDyh','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','unknown','str','\x20already\x20matches\x20the\x20requested\x20state.','appCode','sort','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','\x20sort\x20update\x20did\x20not\x20take\x20effect.','40hVTKOh','\x20is\x20type\x20\x22','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','folder','group-update','string','802344QwwrUM','/smartapi/menu/update','Folder\x20','POST','type','--label\x20cannot\x20be\x20empty.','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','label','parentId','\x20label\x20update\x20did\x20not\x20take\x20effect.','44275MbGawL','270896ZCchOQ','429LbhEKa','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','trim','selector','validation','1555704glCCMH','72964vqkUVq','New\x20folder\x20label','45TbCqFI','rabetbase\x20menu\x20list\x20--format\x20json','Menu\x20','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','verify\x20folder\x20update','Would\x20update\x20folder\x20','failed','\x22,\x20not\x20folder.','parent-id','verification','hash','update','update\x20folder','203510BUOjnd','Updated\x20folder\x20','88721DRokag','write'];a155_0x1194=function(){return _0x56f32d;};return a155_0x1194();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3ddff0,_0x123038){const _0x55f73d=a156_0x5966,_0x354e02=_0x3ddff0();while(!![]){try{const _0x54ab3e=parseInt(_0x55f73d(0x103))/0x1+-parseInt(_0x55f73d(0x108))/0x2*(-parseInt(_0x55f73d(0x102))/0x3)+parseInt(_0x55f73d(0x105))/0x4*(parseInt(_0x55f73d(0x107))/0x5)+parseInt(_0x55f73d(0x10b))/0x6+-parseInt(_0x55f73d(0x106))/0x7*(parseInt(_0x55f73d(0x109))/0x8)+-parseInt(_0x55f73d(0x10a))/0x9+-parseInt(_0x55f73d(0x104))/0xa;if(_0x54ab3e===_0x123038)break;else _0x354e02['push'](_0x354e02['shift']());}catch(_0x24edfc){_0x354e02['push'](_0x354e02['shift']());}}}(a156_0x1719,0xdd6ba));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';function a156_0x5966(_0x3fd752,_0x160d5c){_0x3fd752=_0x3fd752-0x102;const _0x17197d=a156_0x1719();let _0x596683=_0x17197d[_0x3fd752];return _0x596683;}function a156_0x1719(){const _0x311464=['33332CVmyMX','45544EvQebL','6608907vTWlgy','4211064qxwSMx','45xCXFsv','1106964zuKLib','7229100GkxtfL','244WVePsH','1428HtdvLX','120225FBMAXw'];a156_0x1719=function(){return _0x311464;};return a156_0x1719();}import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';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
|
+
const a157_0xae9cb7=a157_0x2a5f;(function(_0x1391b3,_0x456efc){const _0xbaa6b8=a157_0x2a5f,_0x32d3a3=_0x1391b3();while(!![]){try{const _0x4fb492=-parseInt(_0xbaa6b8(0xc5))/0x1*(-parseInt(_0xbaa6b8(0xdc))/0x2)+-parseInt(_0xbaa6b8(0xd6))/0x3*(parseInt(_0xbaa6b8(0xd7))/0x4)+-parseInt(_0xbaa6b8(0xc6))/0x5*(parseInt(_0xbaa6b8(0xd8))/0x6)+-parseInt(_0xbaa6b8(0xcb))/0x7*(parseInt(_0xbaa6b8(0xc8))/0x8)+-parseInt(_0xbaa6b8(0xd9))/0x9+-parseInt(_0xbaa6b8(0xda))/0xa+parseInt(_0xbaa6b8(0xd4))/0xb*(parseInt(_0xbaa6b8(0xdb))/0xc);if(_0x4fb492===_0x456efc)break;else _0x32d3a3['push'](_0x32d3a3['shift']());}catch(_0x474956){_0x32d3a3['push'](_0x32d3a3['shift']());}}}(a157_0x2ac1,0xcfe42));function a157_0x2ac1(){const _0x440b4c=['1191lWmSBz','3820745SzDkDx','read','165080mSTmBS','hash','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','217WERxJh','cookie','total','bool','menu','verbose','Found\x20','appCode','No\x20menus\x20found.','473IGpcJJ','map','28548lgPCXD','4FehkJr','12SFmmVv','5491350XchRgo','5843970ukLLpB','1151748EvwgFy','162lCrjFr'];a157_0x2ac1=function(){return _0x440b4c;};return a157_0x2ac1();}function a157_0x2a5f(_0x96dc4c,_0x5599ee){_0x96dc4c=_0x96dc4c-0xc5;const _0x2ac137=a157_0x2ac1();let _0x2a5fed=_0x2ac137[_0x96dc4c];return _0x2a5fed;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a157_0xae9cb7(0xcf),'command':'list','description':a157_0xae9cb7(0xca),'risk':a157_0xae9cb7(0xc7),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a157_0xae9cb7(0xd0),'type':'boolean','description':'Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing'}],async 'execute'(_0x1bf76f){const _0xe60791=a157_0xae9cb7,_0x4463c6=_0x1bf76f[_0xe60791(0xce)](_0xe60791(0xd0)),_0x5b2bb3=await fetchMenuSnapshot(_0x1bf76f[_0xe60791(0xd2)],_0x1bf76f[_0xe60791(0xcc)],{'verbose':_0x4463c6});return{'ok':!![],'data':{'total':_0x5b2bb3['total'],'snapshotHash':_0x5b2bb3[_0xe60791(0xc9)],'menus':_0x5b2bb3['menus'][_0xe60791(0xd5)](toMenuListItem)},'message':_0x5b2bb3[_0xe60791(0xcd)]===0x0?_0xe60791(0xd3):_0xe60791(0xd1)+_0x5b2bb3[_0xe60791(0xcd)]+'\x20menu(s)'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a158_0x426fd6=a158_0x54c5;(function(_0x16eb16,_0x375056){const _0x407e2e=a158_0x54c5,_0x149f1f=_0x16eb16();while(!![]){try{const _0x29e18f=parseInt(_0x407e2e(0xd5))/0x1+parseInt(_0x407e2e(0xdb))/0x2*(parseInt(_0x407e2e(0xcc))/0x3)+-parseInt(_0x407e2e(0xde))/0x4*(parseInt(_0x407e2e(0xdf))/0x5)+parseInt(_0x407e2e(0xe6))/0x6*(parseInt(_0x407e2e(0xeb))/0x7)+parseInt(_0x407e2e(0xe9))/0x8+-parseInt(_0x407e2e(0xdd))/0x9*(parseInt(_0x407e2e(0xe8))/0xa)+-parseInt(_0x407e2e(0xda))/0xb;if(_0x29e18f===_0x375056)break;else _0x149f1f['push'](_0x149f1f['shift']());}catch(_0x37703a){_0x149f1f['push'](_0x149f1f['shift']());}}}(a158_0x2d01,0x6a93b));function a158_0x54c5(_0x2fc634,_0x32ddbb){_0x2fc634=_0x2fc634-0xcb;const _0x2d01d1=a158_0x2d01();let _0x54c5f5=_0x2d01d1[_0x2fc634];return _0x54c5f5;}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':a158_0x426fd6(0xd9),'path':'/smartapi/menu/update'}];export const menuMove={'service':a158_0x426fd6(0xd0),'command':a158_0x426fd6(0xce),'description':a158_0x426fd6(0xed),'risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x30ae87){validateMoveInput(_0x30ae87);},async 'dryRun'(_0x224eae){const _0x1e3c2e=a158_0x426fd6,{plan:_0x26f63c,patch:_0x43a853}=await buildMovePlan(_0x224eae,!![]);return menuDryRunResult(_0x26f63c,{'method':_0x1e3c2e(0xd9),'url':_0x1e3c2e(0xef),'body':{..._0x43a853,'appCode':_0x224eae[_0x1e3c2e(0xe0)]},'description':'Would\x20move\x20menu\x20'+_0x43a853['id']+'.'});},async 'execute'(_0x48289c){const _0x4bb6cc=a158_0x426fd6;validateMoveInput(_0x48289c);const {plan:_0x15c28b,patch:_0x5477e3,noChanges:_0x487bb1,snapshot:_0x260c01}=await buildMovePlan(_0x48289c,![]),_0x7de33d=_0x5477e3['id'];if(!_0x487bb1)try{await updateMenuEntity(_0x48289c[_0x4bb6cc(0xe0)],_0x48289c[_0x4bb6cc(0xf9)],_0x5477e3);}catch(_0x3bee9c){const _0x3623f2=mapMenuApiError(_0x3bee9c,_0x4bb6cc(0xce),_0x7de33d);throw menuFailure(_0x3623f2,_0x15c28b,{'stage':_0x4bb6cc(0xd2),'failed':{'id':_0x7de33d},'warnings':[_0x4bb6cc(0xcf)],'verification':{'status':_0x4bb6cc(0xcb),'targetId':_0x7de33d,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}let _0x43cecf,_0xc3a7f;try{_0x43cecf=_0x487bb1?_0x260c01:await fetchMenuSnapshot(_0x48289c[_0x4bb6cc(0xe0)],_0x48289c[_0x4bb6cc(0xf9)]),_0xc3a7f=requireMenu(_0x43cecf,_0x7de33d),verifyMove(_0xc3a7f,_0x15c28b['after']),_0xc3a7f[_0x4bb6cc(0xe4)]!==null&&requireFolder(_0x43cecf,_0xc3a7f[_0x4bb6cc(0xe4)]);}catch(_0x53a7f6){const _0x4844ed=describeMenuErrorCause(_0x53a7f6,_0x4bb6cc(0xd6),_0x7de33d),_0x4bee35=asVerificationError(_0x53a7f6,_0x4bb6cc(0xf6)+_0x7de33d+_0x4bb6cc(0xcd));throw menuFailure(_0x4bee35,_0x15c28b,{'stage':'verification','succeeded':[{'id':_0x7de33d,'updateRequested':!_0x487bb1,'skipped':_0x487bb1}],'failed':{'id':_0x7de33d,'requestedStateConfirmed':![],..._0x4844ed},'warnings':['The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x4bb6cc(0xcb),'targetId':_0x7de33d,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}const _0x24d6be=mutationResult({..._0x15c28b,'after':_0xc3a7f,'dryRun':![],'succeeded':[{'id':_0x7de33d,'updated':!_0x487bb1,'skipped':_0x487bb1}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x43cecf[_0x4bb6cc(0xe5)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x24d6be,'message':_0x487bb1?_0x4bb6cc(0xec)+_0x7de33d+_0x4bb6cc(0xf3):'Moved\x20menu\x20'+_0x7de33d+'.'};}};function validateMoveInput(_0x503a14){const _0x1ad381=a158_0x426fd6;validateExactId(_0x503a14),parseParentId(_0x503a14,_0x1ad381(0xf7),{'required':!![]}),parseParentId(_0x503a14,'expect-parent-id',{'required':!![]}),validateSort(_0x503a14);}async function buildMovePlan(_0x232f8e,_0x2626ef){const _0x18eb6c=a158_0x426fd6,_0x3de615=validateExactId(_0x232f8e),_0x2dce17=parseParentId(_0x232f8e,_0x18eb6c(0xf7),{'required':!![]}),_0x3208ae=parseParentId(_0x232f8e,_0x18eb6c(0xe1),{'required':!![]}),_0x88fac7=validateSort(_0x232f8e),_0x514a5e=await fetchMutationSnapshot(_0x232f8e,_0x18eb6c(0xea),_0x3de615),_0x304cdc=requireMenu(_0x514a5e,_0x3de615);if(_0x304cdc[_0x18eb6c(0xf8)]===_0x18eb6c(0xd4)||_0x304cdc[_0x18eb6c(0xe3)]!==0x0)throw menuError(_0x18eb6c(0xe7),'Menu\x20'+_0x3de615+_0x18eb6c(0xf4),_0x18eb6c(0xf1));if(_0x304cdc['parentId']!==_0x3208ae)throw menuError('menu_state_drift',_0x18eb6c(0xec)+_0x3de615+_0x18eb6c(0xd7)+formatParent(_0x3208ae)+_0x18eb6c(0xf2)+formatParent(_0x304cdc[_0x18eb6c(0xe4)])+'.',_0x18eb6c(0xf5));_0x2dce17!==null&&requireFolder(_0x514a5e,_0x2dce17);const _0x21730e=_0x88fac7??(_0x304cdc[_0x18eb6c(0xe4)]===_0x2dce17?_0x304cdc[_0x18eb6c(0xd1)]??0x0:nextSiblingSort(_0x514a5e,_0x2dce17,_0x18eb6c(0xd0))),_0x4965f4={..._0x304cdc,'parentId':_0x2dce17,'sort':_0x21730e},_0x27167a={'id':_0x3de615,'parentId':toApiParentId(_0x2dce17),'sort':_0x21730e},_0x192642=_0x304cdc[_0x18eb6c(0xe4)]===_0x2dce17&&_0x304cdc[_0x18eb6c(0xd1)]===_0x21730e;return{'patch':_0x27167a,'noChanges':_0x192642,'snapshot':_0x514a5e,'plan':mutationResult({'operation':_0x18eb6c(0xce),'selector':{'id':_0x3de615,'parentId':_0x2dce17},'before':_0x304cdc,'after':_0x4965f4,'dryRun':_0x2626ef,'backend':[...BACKEND],'plannedActions':[{'stage':_0x18eb6c(0xf0),'method':_0x18eb6c(0xd9),'path':_0x18eb6c(0xef),'body':{..._0x27167a,'appCode':_0x232f8e[_0x18eb6c(0xe0)]}}],'snapshotHash':_0x514a5e[_0x18eb6c(0xe5)],'warnings':_0x192642?[_0x18eb6c(0xdc)]:[]})};}function a158_0x2d01(){const _0x25c40c=['sort','update','\x20is\x20no\x20longer\x20a\x20leaf.','folder','695952srAvdd','verify\x20menu\x20move','\x20parent\x20changed:\x20expected\x20','\x20is\x20now\x20type\x20folder.','POST','4902117qLxLrJ','176844hjQFWm','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','27eAJymp','4iEQdxP','1607885LQLeNZ','appCode','expect-parent-id','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','childrenCount','parentId','hash','2916366okjcBu','menu_move_source_not_leaf','2346250ffKJzf','3682872OhDsxY','move\x20menu','7WAdVlF','Menu\x20','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','/smartapi/menu/update','move-menu','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.',',\x20current\x20','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','Move\x20request\x20for\x20menu\x20','parent-id','type','cookie','failed','9JAWmhz','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','move','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','menu'];a158_0x2d01=function(){return _0x25c40c;};return a158_0x2d01();}function verifyMove(_0x1179f7,_0x52265c){const _0x49423f=a158_0x426fd6;assertVerified(_0x1179f7[_0x49423f(0xf8)]!=='folder',_0x49423f(0xec)+_0x1179f7['id']+_0x49423f(0xd8)),assertVerified(_0x1179f7[_0x49423f(0xe3)]===0x0,_0x49423f(0xec)+_0x1179f7['id']+_0x49423f(0xd3)),assertVerified(_0x1179f7[_0x49423f(0xe4)]===_0x52265c[_0x49423f(0xe4)],_0x49423f(0xec)+_0x1179f7['id']+_0x49423f(0xe2)),assertVerified(_0x1179f7[_0x49423f(0xd1)]===_0x52265c[_0x49423f(0xd1)],'Menu\x20'+_0x1179f7['id']+_0x49423f(0xee));}
|