@lovrabet/rabetbase-cli 2.5.4-beta.3 → 2.5.4-beta.5
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 +8 -2
- 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/detail.d.ts +2 -0
- package/lib/commands/app/detail.js +1 -0
- 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.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.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.d.ts +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.d.ts +3 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/path.d.ts +2 -0
- package/lib/commands/menu/shared/path.js +1 -0
- package/lib/commands/menu/shared/service.d.ts +6 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/subapp-assets.d.ts +28 -0
- package/lib/commands/menu/shared/subapp-assets.js +1 -0
- package/lib/commands/menu/shared/sync-core.d.ts +2 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/types.d.ts +14 -4
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/subapp-assets-status.d.ts +2 -0
- package/lib/commands/menu/subapp-assets-status.js +1 -0
- package/lib/commands/menu/subapp-assets-update.d.ts +2 -0
- package/lib/commands/menu/subapp-assets-update.js +1 -0
- 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/feishu-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/project-domain-routing.js +1 -1
- package/lib/config/region-config.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/routing-profile.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +16 -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.js +1 -1
- package/lib/core/instant-api-policy/config.js +1 -1
- package/lib/core/kb-search-client.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/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.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/supported-flags.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/generated/official-routing.js +1 -1
- package/lib/generated/routing-contract.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/rabetbase/SKILL.md +22 -13
- package/skills/rabetbase/guides/backend-function.md +2 -7
- package/skills/rabetbase/guides/bff-creation-workflow.md +24 -23
- package/skills/rabetbase/guides/host-frontend-integration.md +62 -0
- package/skills/rabetbase/guides/independent-deployment.md +45 -0
- package/skills/rabetbase/guides/troubleshooting.md +9 -1
- package/skills/rabetbase/references/rabetbase-app-detail.md +31 -0
- package/skills/rabetbase/references/rabetbase-bff-detail.md +1 -1
- package/skills/rabetbase/references/rabetbase-bff-push.md +2 -2
- package/skills/rabetbase/references/rabetbase-data-list-status.md +1 -0
- package/skills/rabetbase/references/rabetbase-deployment-sync-all.md +5 -1
- package/skills/rabetbase/references/rabetbase-menu-asset-update.md +9 -7
- package/skills/rabetbase/references/rabetbase-menu-list.md +2 -2
- package/skills/rabetbase/references/rabetbase-menu-subapp-assets-status.md +19 -0
- package/skills/rabetbase/references/rabetbase-menu-subapp-assets-update.md +27 -0
- package/skills/rabetbase/references/rabetbase-menu-sync.md +40 -14
- package/skills/rabetbase/references/rabetbase-page-create.md +1 -1
- package/skills/rabetbase/references/rabetbase-page-generate-start.md +5 -3
- package/skills/rabetbase/references/rabetbase-page-generate-status.md +1 -0
- package/skills/rabetbase/references/rabetbase-user-account.md +8 -8
- package/skills/rabetbase.manifest.json +8 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
function a152_0x3304(){const _0x1ebbf7=['menu_sort_invalid','Recovered\x20created\x20external\x20menu\x20','verification','type','str','plan','username','Would\x20create\x20external\x20website\x20link\x20menu\x20','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','link','menu_parent_not_folder','Menu\x20','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','causemessage','parent-id','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','Create\x20an\x20external\x20website\x20link\x20menu','trim','Provide\x20an\x20HTTPS\x20URL.','menu_permission_denied','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','URL','open-mode','menu_create_response_invalid','\x20has\x20an\x20unexpected\x20','selector','POST','length','2196770RYkmwM','Created\x20external\x20menu\x20','Created\x20menu\x20','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','cause','menus','https:','hash','expectedPath','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','isSafeInteger','isArray','write','url','add','22MnPQXm','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','9zYihsZ','menu_open_mode_invalid','call','bool','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','External\x20menu\x20creation\x20failed.','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','map','Recovered\x20menu\x20','<redacted>','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','create','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','External\x20HTTPS\x20URL','How\x20to\x20open\x20the\x20external\x20website','fromEntries','toLowerCase','parentId','appCode','pre-write-recheck','plannedActions','\x20--format\x20compress','create-menu','rawFlags','object','478359CFGfGF','iframe','replace','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','body','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','byId','boolean','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','after','visible','Menu\x20label','menu_url_https_required','string','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','menu_create_recovery_required','expectedSnapshotHash','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','menu_not_found','168yyyjaS','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','215470KYqvAt','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','currentSnapshotHash','menu_mutation_failed','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','menu_url_invalid','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','sort','has','includes','\x20has\x20an\x20unexpected\x20generated\x20path.','rawerror','create\x20external\x20menu','Run\x20','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','menu_state_drift','\x20failed\x20final\x20verification.','code','3523iWZVoU','create-response-validation','515460NifvrG','8237262SyxXru','new-window','embedded','<platform-generated>','\x27\x5c\x27\x27','snapshot','fact','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','menu_verification_failed','failed','cookie','flagMissing','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','12VVwaZU','label','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','49624mWRROw','/smartapi/menu/create','menu_sort_overflow','createdId','afterPlan','entries','data','filter','path','\x20after\x20response\x20loss.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','lookupCommand','succeeded','rabetbase\x20menu\x20list\x20--appcode\x20','protocol'];a152_0x3304=function(){return _0x1ebbf7;};return a152_0x3304();}const a152_0x407a25=a152_0x491b;(function(_0x625a9d,_0x5d3799){const _0x413461=a152_0x491b,_0x46cf49=_0x625a9d();while(!![]){try{const _0x3338a1=parseInt(_0x413461(0x146))/0x1*(-parseInt(_0x413461(0x100))/0x2)+-parseInt(_0x413461(0x11d))/0x3+parseInt(_0x413461(0x157))/0x4*(-parseInt(_0x413461(0x134))/0x5)+parseInt(_0x413461(0x148))/0x6+-parseInt(_0x413461(0x132))/0x7*(parseInt(_0x413461(0xc5))/0x8)+-parseInt(_0x413461(0x102))/0x9*(parseInt(_0x413461(0xf0))/0xa)+parseInt(_0x413461(0x149))/0xb;if(_0x3338a1===_0x5d3799)break;else _0x46cf49['push'](_0x46cf49['shift']());}catch(_0xc964d6){_0x46cf49['push'](_0x46cf49['shift']());}}}(a152_0x3304,0x21ddb));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a152_0x407a25(0x11e),'new-window':a152_0x407a25(0xdd)};export function validateExternalMenuUrl(_0x451b44){const _0x1d227c=a152_0x407a25,_0x522f6e=_0x451b44[_0x1d227c(0xe5)]();let _0x4c5422;try{_0x4c5422=new URL(_0x522f6e);}catch{throw menuError(_0x1d227c(0x139),_0x1d227c(0x110),_0x1d227c(0x135));}if(_0x4c5422[_0x1d227c(0xd3)]!==_0x1d227c(0xf7))throw menuError(_0x1d227c(0x12b),_0x1d227c(0x122),_0x1d227c(0xe6));if(_0x4c5422[_0x1d227c(0xda)]||_0x4c5422['password'])throw menuError('menu_url_credentials_forbidden',_0x1d227c(0xe3),'Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x522f6e;}export const menuExternalLinkCreate={'service':'menu','command':'external-link-create','description':a152_0x407a25(0xe4),'risk':a152_0x407a25(0xfd),'structuredErrors':!![],'flags':[{'name':a152_0x407a25(0xc3),'type':a152_0x407a25(0x12c),'required':!![],'description':a152_0x407a25(0x12a)},{'name':'open-mode','type':a152_0x407a25(0x12c),'required':!![],'enum':[a152_0x407a25(0x14b),a152_0x407a25(0x14a)],'description':a152_0x407a25(0x112)},{'name':a152_0x407a25(0xfe),'type':'string','required':!![],'description':a152_0x407a25(0x111)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':'visible','type':a152_0x407a25(0x124),'default':!![],'description':'Whether\x20the\x20menu\x20is\x20visible'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x18721d){validateAddInput(_0x18721d);},async 'dryRun'(_0x1b07fe){const _0x2a8505=a152_0x407a25;validateAddInput(_0x1b07fe);const {plan:_0x3cef13}=await buildSafeAddPlan(_0x1b07fe,!![]),_0x233ccf=_0x3cef13[_0x2a8505(0x128)],_0x931887=createBody(_0x233ccf);return menuDryRunResult(_0x3cef13,{'method':_0x2a8505(0xee),'url':_0x2a8505(0xc6),'body':_0x931887,'description':_0x2a8505(0xdb)+JSON['stringify'](_0x233ccf[_0x2a8505(0xc3)])+'\x20with\x20'+_0x1b07fe[_0x2a8505(0xd8)](_0x2a8505(0xea))+_0x2a8505(0xf3)});},async 'execute'(_0x4ac9df){const _0x456f68=a152_0x407a25;validateAddInput(_0x4ac9df);const _0x2c6938=await buildSafeAddPlan(_0x4ac9df,![]),{plan:_0x2d8102,snapshot:_0x4112e8}=_0x2c6938,_0x592653=_0x2d8102[_0x456f68(0x128)],_0x54aa05=buildMenuLookupCommand(_0x4ac9df['appCode']);await recheckAddSnapshot(_0x4ac9df,_0x2d8102);let _0x1d1d08;try{_0x1d1d08=await createMenuEntity(_0x4ac9df['appCode'],_0x4ac9df[_0x456f68(0x154)],createBody(_0x592653));}catch(_0x390520){const _0x450eb8=mapMenuApiError(_0x390520,_0x456f68(0x140));if(!isMenuResponseLoss(_0x390520)||_0x450eb8[_0x456f68(0x145)]===_0x456f68(0xe7))throw externalLinkCreateFailure(_0x450eb8,_0x2d8102,{'stage':_0x456f68(0x10f),'failed':{},'verification':{'status':_0x456f68(0x153),'lookupCommand':_0x54aa05}});return recoverAfterResponseLoss(_0x4ac9df,_0x2c6938,_0x54aa05);}const _0x4c3386=Number(_0x1d1d08?.['id']),_0x57a525=typeof _0x1d1d08?.[_0x456f68(0xcd)]==='string'?_0x1d1d08[_0x456f68(0xcd)]:'';if(!Number[_0x456f68(0xfb)](_0x4c3386)||_0x4c3386<=0x0||!_0x57a525['trim']()){const _0x2cbba1=menuError(_0x456f68(0xeb),_0x456f68(0xf4),_0x456f68(0x141)+_0x54aa05+_0x456f68(0x108));throw externalLinkCreateFailure(_0x2cbba1,_0x2d8102,{'stage':_0x456f68(0x147),'succeeded':Number['isSafeInteger'](_0x4c3386)&&_0x4c3386>0x0?[{'id':_0x4c3386,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x4c3386)?_0x4c3386:null,'generatedPathConfirmed':Boolean(_0x57a525[_0x456f68(0xe5)]())},'warnings':[_0x456f68(0xe8)],'after':Number[_0x456f68(0xfb)](_0x4c3386)&&_0x4c3386>0x0?{..._0x592653,'id':_0x4c3386,'path':_0x57a525}:_0x592653,'verification':{'status':_0x456f68(0x153),'lookupCommand':_0x54aa05,...Number[_0x456f68(0xfb)](_0x4c3386)&&_0x4c3386>0x0?{'targetId':_0x4c3386}:{}}});}const _0x2e08dc=await readAndVerifyCreatedMenu({'appCode':_0x4ac9df[_0x456f68(0x116)],'cookie':_0x4ac9df[_0x456f68(0x154)],'plan':_0x2d8102,'afterPlan':_0x592653,'createdId':_0x4c3386,'expectedPath':_0x57a525,'lookupCommand':_0x54aa05,'recovered':![]});return creationSuccess(_0x2d8102,_0x2e08dc[_0x456f68(0x14e)],_0x2e08dc[_0x456f68(0x14f)],![]);}};function validateAddInput(_0x33e537){const _0x87e476=a152_0x407a25;if(!_0x33e537[_0x87e476(0xd8)]('label')[_0x87e476(0xe5)]())throw CliErrors[_0x87e476(0x155)](_0x87e476(0xc3));resolveExternalMenuType(_0x33e537),validateExternalMenuUrl(_0x33e537['str'](_0x87e476(0xfe))),parseParentId(_0x33e537,'parent-id'),validateSort(_0x33e537);}function resolveExternalMenuType(_0x5e251b){const _0x4aad67=a152_0x407a25,_0x2dba82=_0x5e251b['str']('open-mode')[_0x4aad67(0xe5)]();if(!_0x2dba82)throw CliErrors['flagMissing'](_0x4aad67(0xea));const _0x47093e=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x2dba82];if(!_0x47093e)throw menuError(_0x4aad67(0x103),_0x4aad67(0x125),_0x4aad67(0x138));return _0x47093e;}async function buildAddPlan(_0x259500,_0x3f0692){const _0x33500b=a152_0x407a25,_0x3c330d=await fetchMutationSnapshot(_0x259500,_0x33500b(0x140)),_0x26da27=parseParentId(_0x259500,_0x33500b(0xe2))??null;if(_0x26da27!=null)requireFolder(_0x3c330d,_0x26da27);const _0x1bc1bb=validateSort(_0x259500),_0x31c5b9=_0x1bc1bb??nextSiblingSort(_0x3c330d,_0x26da27,'menu'),_0x3b9016=_0x259500[_0x33500b(0xd8)](_0x33500b(0xc3))[_0x33500b(0xe5)](),_0x51003e=resolveExternalMenuType(_0x259500),_0x572d65=validateExternalMenuUrl(_0x259500[_0x33500b(0xd8)](_0x33500b(0xfe))),_0x38b701=Object['prototype']['hasOwnProperty'][_0x33500b(0x104)](_0x259500[_0x33500b(0x11b)],_0x33500b(0x129))?_0x259500[_0x33500b(0x105)](_0x33500b(0x129)):!![],_0x1f12b9={'id':null,'parentId':_0x26da27,'label':_0x3b9016,'path':_0x33500b(0x14c),'url':_0x572d65,'type':_0x51003e,'visible':_0x38b701,'sort':_0x31c5b9},_0x417e9c=buildMenuLookupCommand(_0x259500[_0x33500b(0x116)]),_0x2eb4a1=mutationResult({'operation':_0x33500b(0xff),'selector':{'parentId':_0x26da27,'type':_0x51003e,'label':_0x3b9016,'url':_0x572d65},'before':null,'after':_0x1f12b9,'dryRun':_0x3f0692,'backend':[{'method':'POST','path':_0x33500b(0xc6)}],'plannedActions':[{'stage':_0x33500b(0x11a),'method':_0x33500b(0xee),'path':_0x33500b(0xc6),'body':createBody(_0x1f12b9)}],'snapshotHash':_0x3c330d[_0x33500b(0xf8)],'warnings':[_0x33500b(0x101)],'verification':{'lookupCommand':_0x417e9c}});return{'plan':_0x2eb4a1,'snapshot':_0x3c330d};}function a152_0x491b(_0x2c5b3c,_0x236d21){_0x2c5b3c=_0x2c5b3c-0xc3;const _0x330403=a152_0x3304();let _0x491ba5=_0x330403[_0x2c5b3c];return _0x491ba5;}async function buildSafeAddPlan(_0x433ab5,_0x2b2fe1){try{return await buildAddPlan(_0x433ab5,_0x2b2fe1);}catch(_0x59a187){throw safeMenuAddError(_0x59a187);}}async function recheckAddSnapshot(_0x524c05,_0x4eabe9){const _0x2caf10=a152_0x407a25;try{await recheckMutationSnapshot(_0x524c05,_0x4eabe9,_0x2caf10(0x140));}catch(_0x266298){const _0x534d42=getFailureRecord(_0x266298);throw externalLinkCreateFailure(_0x266298,_0x4eabe9,{'stage':_0x2caf10(0x117),'failed':{..._0x534d42?.[_0x2caf10(0x12f)]?{'expectedSnapshotHash':_0x534d42[_0x2caf10(0x12f)]}:{},..._0x534d42?.[_0x2caf10(0x136)]?{'currentSnapshotHash':_0x534d42[_0x2caf10(0x136)]}:{}}});}}function createBody(_0x556770){const _0x450124=a152_0x407a25;return{'parentId':toApiParentId(_0x556770[_0x450124(0x115)]),'label':String(_0x556770[_0x450124(0xc3)]),'type':String(_0x556770[_0x450124(0xd7)]),'url':String(_0x556770[_0x450124(0xfe)]),'visible':Boolean(_0x556770[_0x450124(0x129)]),'sort':Number(_0x556770['sort']),'extend':{}};}function buildMenuLookupCommand(_0x391342){const _0x55c3bf=a152_0x407a25,_0x1705ef='\x27'+_0x391342[_0x55c3bf(0x11f)](/'/g,_0x55c3bf(0x14d))+'\x27';return _0x55c3bf(0xd2)+_0x1705ef+_0x55c3bf(0x119);}async function recoverAfterResponseLoss(_0x194b1e,_0x41bc55,_0x1693ea){const _0x5d58f2=a152_0x407a25,{plan:_0x429a22,snapshot:_0x4d54fb}=_0x41bc55,_0x3e1cdf=_0x429a22['after'];let _0x5f126c;try{_0x5f126c=await fetchMenuSnapshot(_0x194b1e[_0x5d58f2(0x116)],_0x194b1e[_0x5d58f2(0x154)]);}catch(_0x2b4e00){throw recoveryRequiredFailure(_0x429a22,_0x1693ea,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x77342c=_0x5f126c[_0x5d58f2(0xf6)][_0x5d58f2(0xcc)](_0x56a277=>_0x56a277[_0x5d58f2(0x115)]===_0x3e1cdf[_0x5d58f2(0x115)]&&_0x56a277['type']===_0x3e1cdf[_0x5d58f2(0xd7)]&&_0x56a277['label']===_0x3e1cdf[_0x5d58f2(0xc3)]&&_0x56a277['url']===_0x3e1cdf[_0x5d58f2(0xfe)]),_0x511730=_0x77342c[_0x5d58f2(0xcc)](_0x5495c5=>!_0x4d54fb[_0x5d58f2(0x123)][_0x5d58f2(0x13c)](_0x5495c5['id'])),_0xa6e618=_0x77342c['filter'](_0x35e577=>_0x4d54fb[_0x5d58f2(0x123)][_0x5d58f2(0x13c)](_0x35e577['id']));if(_0x77342c['length']!==0x1||_0x511730[_0x5d58f2(0xef)]!==0x1)throw recoveryRequiredFailure(_0x429a22,_0x1693ea,{'matchCount':_0x77342c['length'],'newMatchCount':_0x511730[_0x5d58f2(0xef)],'preexistingMatchCount':_0xa6e618[_0x5d58f2(0xef)]});const _0x37108f=_0x511730[0x0];try{verifyCreatedFact(_0x37108f,_0x37108f['id'],_0x3e1cdf,null);}catch(_0x2902f5){const _0x25cd56=_0x2902f5 instanceof Error&&_0x5d58f2(0x145)in _0x2902f5?_0x2902f5:menuError(_0x5d58f2(0x152),_0x5d58f2(0x10b)+_0x37108f['id']+'\x20could\x20not\x20be\x20verified.',_0x5d58f2(0x141)+_0x1693ea+_0x5d58f2(0x150));throw externalLinkCreateFailure(_0x25cd56,_0x429a22,{'stage':_0x5d58f2(0xd6),'succeeded':[{'id':_0x37108f['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x37108f['id'],'finalFactsConfirmed':![]},'after':_0x37108f,'warnings':[_0x5d58f2(0xdf)+_0x37108f['id']+_0x5d58f2(0x156)],'verification':{'status':_0x5d58f2(0x153),'targetId':_0x37108f['id'],'recovered':!![],'lookupCommand':_0x1693ea}});}return creationSuccess(_0x429a22,_0x5f126c,_0x37108f,!![]);}function recoveryRequiredFailure(_0x8aaae6,_0x21fa34,_0x516416){const _0x17c62d=a152_0x407a25,_0x3db30a=menuError(_0x17c62d(0x12e),_0x17c62d(0x10d),_0x17c62d(0x141)+_0x21fa34+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x3db30a,_0x8aaae6,{'stage':'create-recovery','failed':_0x516416,'warnings':[_0x17c62d(0xc4)],'verification':{'status':'failed',..._0x516416,'lookupCommand':_0x21fa34}});}async function readAndVerifyCreatedMenu(_0x19d028){const _0x4f6ae0=a152_0x407a25;let _0x5256bc;try{_0x5256bc=await fetchMenuSnapshot(_0x19d028['appCode'],_0x19d028['cookie']);}catch(_0x781385){const _0x48e015=menuError(_0x4f6ae0(0x152),_0x4f6ae0(0xdf)+_0x19d028['createdId']+_0x4f6ae0(0x130),'Run\x20'+_0x19d028['lookupCommand']+_0x4f6ae0(0xe0));throw externalLinkCreateFailure(_0x48e015,_0x19d028[_0x4f6ae0(0xd9)],{'stage':_0x4f6ae0(0xd6),'succeeded':[{'id':_0x19d028[_0x4f6ae0(0xc8)],'created':!![]}],'failed':{'id':_0x19d028[_0x4f6ae0(0xc8)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x19d028['afterPlan'],'id':_0x19d028[_0x4f6ae0(0xc8)],'path':_0x19d028[_0x4f6ae0(0xf9)]},'warnings':['Menu\x20'+_0x19d028[_0x4f6ae0(0xc8)]+_0x4f6ae0(0x13a)],'verification':{'status':_0x4f6ae0(0x153),'targetId':_0x19d028[_0x4f6ae0(0xc8)],'lookupCommand':_0x19d028['lookupCommand']}});}const _0x10ec29=_0x5256bc[_0x4f6ae0(0x123)]['get'](_0x19d028[_0x4f6ae0(0xc8)]);try{if(!_0x10ec29)throw menuError(_0x4f6ae0(0x152),_0x4f6ae0(0xf2)+_0x19d028[_0x4f6ae0(0xc8)]+_0x4f6ae0(0x12d),_0x4f6ae0(0x141)+_0x19d028[_0x4f6ae0(0xd0)]+_0x4f6ae0(0xe0));verifyCreatedFact(_0x10ec29,_0x19d028[_0x4f6ae0(0xc8)],_0x19d028[_0x4f6ae0(0xc9)],_0x19d028['expectedPath']);}catch(_0x1939e2){const _0x3c27f9=_0x1939e2 instanceof Error&&'code'in _0x1939e2?_0x1939e2:menuError(_0x4f6ae0(0x152),_0x4f6ae0(0xf2)+_0x19d028[_0x4f6ae0(0xc8)]+_0x4f6ae0(0x144),_0x4f6ae0(0x141)+_0x19d028[_0x4f6ae0(0xd0)]+_0x4f6ae0(0xe0));throw externalLinkCreateFailure(_0x3c27f9,_0x19d028[_0x4f6ae0(0xd9)],{'stage':'verification','succeeded':[{'id':_0x19d028[_0x4f6ae0(0xc8)],'created':!![]}],'failed':{'id':_0x19d028[_0x4f6ae0(0xc8)],'finalFactsConfirmed':![]},'after':_0x10ec29??{..._0x19d028['afterPlan'],'id':_0x19d028[_0x4f6ae0(0xc8)],'path':_0x19d028[_0x4f6ae0(0xf9)]},'warnings':[_0x4f6ae0(0xdf)+_0x19d028[_0x4f6ae0(0xc8)]+_0x4f6ae0(0x133)],'verification':{'status':_0x4f6ae0(0x153),'targetId':_0x19d028[_0x4f6ae0(0xc8)],'recovered':_0x19d028['recovered'],'lookupCommand':_0x19d028[_0x4f6ae0(0xd0)]}});}return{'snapshot':_0x5256bc,'fact':_0x10ec29};}function verifyCreatedFact(_0x4e87fa,_0x49046e,_0x3392b5,_0x2cdbd4){const _0x12f0f1=a152_0x407a25;if(!Number['isSafeInteger'](_0x4e87fa['id'])||_0x4e87fa['id']<=0x0||_0x4e87fa['id']!==_0x49046e)throw menuError(_0x12f0f1(0x152),_0x12f0f1(0x151),_0x12f0f1(0x109));const _0x50501c=[['parent',_0x4e87fa[_0x12f0f1(0x115)],_0x3392b5[_0x12f0f1(0x115)]],[_0x12f0f1(0xd7),_0x4e87fa[_0x12f0f1(0xd7)],_0x3392b5[_0x12f0f1(0xd7)]],['label',_0x4e87fa['label'],_0x3392b5[_0x12f0f1(0xc3)]],[_0x12f0f1(0xe9),_0x4e87fa[_0x12f0f1(0xfe)],_0x3392b5[_0x12f0f1(0xfe)]],['visibility',_0x4e87fa[_0x12f0f1(0x129)],_0x3392b5[_0x12f0f1(0x129)]],['sort',_0x4e87fa[_0x12f0f1(0x13b)],_0x3392b5[_0x12f0f1(0x13b)]]];for(const [_0x4204fd,_0x3f20ed,_0x509e56]of _0x50501c){if(_0x3f20ed!==_0x509e56)throw menuError(_0x12f0f1(0x152),_0x12f0f1(0xf2)+_0x4e87fa['id']+_0x12f0f1(0xec)+_0x4204fd+'.',_0x12f0f1(0x120));}if(!_0x4e87fa[_0x12f0f1(0xcd)]['trim']()||_0x2cdbd4!==null&&_0x4e87fa[_0x12f0f1(0xcd)]!==_0x2cdbd4)throw menuError(_0x12f0f1(0x152),'Created\x20menu\x20'+_0x4e87fa['id']+_0x12f0f1(0x13e),_0x12f0f1(0x120));}function creationSuccess(_0x35236e,_0x29a10b,_0x1baf1e,_0x5b4dfb){const _0x58b456=a152_0x407a25,_0x2bf4a3=mutationResult({..._0x35236e,'after':_0x1baf1e,'dryRun':![],'succeeded':[{'id':_0x1baf1e['id'],'created':!![],'recovered':_0x5b4dfb}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x29a10b[_0x58b456(0xf8)],'targetId':_0x1baf1e['id'],'recovered':_0x5b4dfb,'path':_0x1baf1e[_0x58b456(0xcd)]}});return{'ok':!![],'message':_0x5b4dfb?_0x58b456(0xd5)+_0x1baf1e['id']+_0x58b456(0xce):_0x58b456(0xf1)+_0x1baf1e['id']+'.','data':{..._0x2bf4a3,'recovered':_0x5b4dfb}};}function externalLinkCreateFailure(_0x16da75,_0x5d05f1,_0x509741){const _0x520d1c=a152_0x407a25;return menuFailure(safeMenuAddError(_0x16da75),redactFailurePlan(_0x5d05f1),{..._0x509741,'succeeded':_0x509741['succeeded']?.[_0x520d1c(0x10a)](redactFailureRecord),'failed':_0x509741['failed']?redactFailureRecord(_0x509741[_0x520d1c(0x153)]):undefined,'verification':_0x509741['verification']?redactFailureRecord(_0x509741[_0x520d1c(0xd6)]):undefined,'after':_0x509741['after']===undefined?undefined:redactFailureValue(_0x509741[_0x520d1c(0x128)])});}function redactFailurePlan(_0x3719f5){const _0x5b9564=a152_0x407a25;return{..._0x3719f5,'selector':redactFailureRecord(_0x3719f5[_0x5b9564(0xed)]),'before':redactFailureValue(_0x3719f5['before']),'after':redactFailureValue(_0x3719f5[_0x5b9564(0x128)]),'plannedActions':_0x3719f5[_0x5b9564(0x118)]?.[_0x5b9564(0x10a)](_0x160dd8=>({..._0x160dd8,'body':redactFailureRecord(_0x160dd8[_0x5b9564(0x121)])})),'succeeded':_0x3719f5[_0x5b9564(0xd1)]['map'](redactFailureRecord),'failed':_0x3719f5[_0x5b9564(0x153)][_0x5b9564(0x10a)](redactFailureRecord),'verification':_0x3719f5[_0x5b9564(0xd6)]?redactFailureRecord(_0x3719f5[_0x5b9564(0xd6)]):undefined};}function redactFailureRecord(_0x3046dc){return redactFailureValue(_0x3046dc);}function redactFailureValue(_0x5ef2b4,_0x14b907=''){const _0x146c73=a152_0x407a25,_0x12c23e=_0x14b907[_0x146c73(0x114)]()[_0x146c73(0x11f)](/[^a-z0-9]/g,'');if([_0x146c73(0xf5),_0x146c73(0xe1),'readbackerror',_0x146c73(0x13f)][_0x146c73(0x13d)](_0x12c23e))return _0x146c73(0x10c);if(Array[_0x146c73(0xfc)](_0x5ef2b4))return _0x5ef2b4[_0x146c73(0x10a)](_0x505d29=>redactFailureValue(_0x505d29));if(_0x5ef2b4&&typeof _0x5ef2b4==='object')return Object[_0x146c73(0x113)](Object[_0x146c73(0xca)](_0x5ef2b4)[_0x146c73(0x10a)](([_0x5fcb5d,_0x171526])=>[_0x5fcb5d,redactFailureValue(_0x171526,_0x5fcb5d)]));return _0x5ef2b4;}function safeMenuAddError(_0x2cd4d1){const _0x36db76=a152_0x407a25,_0x3e4e24=_0x2cd4d1 instanceof CliError?_0x2cd4d1[_0x36db76(0x145)]:_0x36db76(0x137);switch(_0x3e4e24){case _0x36db76(0x143):return menuError(_0x3e4e24,_0x36db76(0x142),_0x36db76(0xfa));case _0x36db76(0xe7):return menuError(_0x3e4e24,_0x36db76(0xdc),'Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x36db76(0xeb):return menuError(_0x3e4e24,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.',_0x36db76(0x10e));case _0x36db76(0x152):return menuError(_0x3e4e24,_0x36db76(0x106),_0x36db76(0x10e));case _0x36db76(0x12e):return menuError(_0x3e4e24,_0x36db76(0x126),_0x36db76(0xcf));case _0x36db76(0x137):case _0x36db76(0x131):case _0x36db76(0xde):case _0x36db76(0xd4):case _0x36db76(0xc7):return menuError(_0x3e4e24,'External\x20menu\x20creation\x20failed.',_0x36db76(0x127));default:return menuError(_0x36db76(0x137),_0x36db76(0x107),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x5ac253){const _0x1e8c5f=a152_0x407a25;if(!(_0x5ac253 instanceof Error)||!(_0x1e8c5f(0xcb)in _0x5ac253))return undefined;const _0x20deea=_0x5ac253[_0x1e8c5f(0xcb)];if(!_0x20deea||typeof _0x20deea!==_0x1e8c5f(0x11c))return undefined;const _0x4ddd07=_0x20deea[_0x1e8c5f(0x153)];if(!Array['isArray'](_0x4ddd07)||!_0x4ddd07[0x0]||typeof _0x4ddd07[0x0]!==_0x1e8c5f(0x11c))return undefined;return _0x4ddd07[0x0];}
|
|
1
|
+
const a153_0x47a633=a153_0x2648;(function(_0x417138,_0x10fd66){const _0x586ccc=a153_0x2648,_0x20cc62=_0x417138();while(!![]){try{const _0x117e52=parseInt(_0x586ccc(0x164))/0x1+parseInt(_0x586ccc(0x1a1))/0x2+parseInt(_0x586ccc(0x13e))/0x3*(parseInt(_0x586ccc(0x14d))/0x4)+-parseInt(_0x586ccc(0x138))/0x5+-parseInt(_0x586ccc(0x15a))/0x6+parseInt(_0x586ccc(0x173))/0x7+-parseInt(_0x586ccc(0x1a5))/0x8;if(_0x117e52===_0x10fd66)break;else _0x20cc62['push'](_0x20cc62['shift']());}catch(_0x23ee7a){_0x20cc62['push'](_0x20cc62['shift']());}}}(a153_0x4bac,0x4dec7));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':'iframe','new-window':a153_0x47a633(0x1ae)};export function validateExternalMenuUrl(_0x3f3cf4){const _0x2ff33d=a153_0x47a633,_0x4bcf94=_0x3f3cf4[_0x2ff33d(0x16a)]();let _0x389a00;try{_0x389a00=new URL(_0x4bcf94);}catch{throw menuError('menu_url_invalid',_0x2ff33d(0x135),_0x2ff33d(0x148));}if(_0x389a00[_0x2ff33d(0x12d)]!==_0x2ff33d(0x1af))throw menuError(_0x2ff33d(0x1ab),_0x2ff33d(0x154),_0x2ff33d(0x142));if(_0x389a00['username']||_0x389a00[_0x2ff33d(0x193)])throw menuError(_0x2ff33d(0x16d),_0x2ff33d(0x1a3),'Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x4bcf94;}export const menuExternalLinkCreate={'service':a153_0x47a633(0x194),'command':a153_0x47a633(0x15d),'description':a153_0x47a633(0x18c),'risk':a153_0x47a633(0x152),'structuredErrors':!![],'flags':[{'name':'label','type':a153_0x47a633(0x136),'required':!![],'description':a153_0x47a633(0x183)},{'name':a153_0x47a633(0x162),'type':a153_0x47a633(0x136),'required':!![],'enum':[a153_0x47a633(0x149),a153_0x47a633(0x1a0)],'description':a153_0x47a633(0x191)},{'name':a153_0x47a633(0x188),'type':a153_0x47a633(0x136),'required':!![],'description':a153_0x47a633(0x18b)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a153_0x47a633(0x180),'type':a153_0x47a633(0x156),'default':!![],'description':a153_0x47a633(0x161)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x27eb98){validateAddInput(_0x27eb98);},async 'dryRun'(_0x2b6e4d){const _0x4331aa=a153_0x47a633;validateAddInput(_0x2b6e4d);const {plan:_0x440788}=await buildSafeAddPlan(_0x2b6e4d,!![]),_0x2dcd79=_0x440788['after'],_0x1f4640=createBody(_0x2dcd79);return menuDryRunResult(_0x440788,{'method':_0x4331aa(0x196),'url':_0x4331aa(0x15e),'body':_0x1f4640,'description':_0x4331aa(0x18a)+JSON[_0x4331aa(0x171)](_0x2dcd79[_0x4331aa(0x165)])+_0x4331aa(0x17a)+_0x2b6e4d[_0x4331aa(0x141)](_0x4331aa(0x162))+_0x4331aa(0x1a2)});},async 'execute'(_0x5e9c2b){const _0x3e2563=a153_0x47a633;validateAddInput(_0x5e9c2b);const _0x1d9a44=await buildSafeAddPlan(_0x5e9c2b,![]),{plan:_0x3ddde9,snapshot:_0x549991}=_0x1d9a44,_0x18699d=_0x3ddde9[_0x3e2563(0x1b1)],_0x58a135=buildMenuLookupCommand(_0x5e9c2b[_0x3e2563(0x182)]);await recheckAddSnapshot(_0x5e9c2b,_0x3ddde9);let _0x49bb89;try{_0x49bb89=await createMenuEntity(_0x5e9c2b[_0x3e2563(0x182)],_0x5e9c2b[_0x3e2563(0x179)],createBody(_0x18699d));}catch(_0x291a5c){const _0x513ce7=mapMenuApiError(_0x291a5c,_0x3e2563(0x187));if(!isMenuResponseLoss(_0x291a5c)||_0x513ce7[_0x3e2563(0x13d)]==='menu_permission_denied')throw externalLinkCreateFailure(_0x513ce7,_0x3ddde9,{'stage':_0x3e2563(0x163),'failed':{},'verification':{'status':'failed','lookupCommand':_0x58a135}});return recoverAfterResponseLoss(_0x5e9c2b,_0x1d9a44,_0x58a135);}const _0x1275b2=Number(_0x49bb89?.['id']),_0x578cde=typeof _0x49bb89?.[_0x3e2563(0x1a7)]===_0x3e2563(0x136)?_0x49bb89[_0x3e2563(0x1a7)]:'';if(!Number[_0x3e2563(0x18e)](_0x1275b2)||_0x1275b2<=0x0||!_0x578cde[_0x3e2563(0x16a)]()){const _0x4aba18=menuError('menu_create_response_invalid','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','Run\x20'+_0x58a135+_0x3e2563(0x139));throw externalLinkCreateFailure(_0x4aba18,_0x3ddde9,{'stage':'create-response-validation','succeeded':Number[_0x3e2563(0x18e)](_0x1275b2)&&_0x1275b2>0x0?[{'id':_0x1275b2,'created':!![]}]:[],'failed':{'createdId':Number[_0x3e2563(0x18e)](_0x1275b2)?_0x1275b2:null,'generatedPathConfirmed':Boolean(_0x578cde[_0x3e2563(0x16a)]())},'warnings':[_0x3e2563(0x155)],'after':Number['isSafeInteger'](_0x1275b2)&&_0x1275b2>0x0?{..._0x18699d,'id':_0x1275b2,'path':_0x578cde}:_0x18699d,'verification':{'status':_0x3e2563(0x167),'lookupCommand':_0x58a135,...Number[_0x3e2563(0x18e)](_0x1275b2)&&_0x1275b2>0x0?{'targetId':_0x1275b2}:{}}});}const _0x5523a3=await readAndVerifyCreatedMenu({'appCode':_0x5e9c2b[_0x3e2563(0x182)],'cookie':_0x5e9c2b[_0x3e2563(0x179)],'plan':_0x3ddde9,'afterPlan':_0x18699d,'createdId':_0x1275b2,'expectedPath':_0x578cde,'lookupCommand':_0x58a135,'recovered':![]});return creationSuccess(_0x3ddde9,_0x5523a3['snapshot'],_0x5523a3[_0x3e2563(0x150)],![]);}};function validateAddInput(_0x593c06){const _0x5cce1d=a153_0x47a633;if(!_0x593c06[_0x5cce1d(0x141)]('label')[_0x5cce1d(0x16a)]())throw CliErrors[_0x5cce1d(0x176)](_0x5cce1d(0x165));resolveExternalMenuType(_0x593c06),validateExternalMenuUrl(_0x593c06[_0x5cce1d(0x141)](_0x5cce1d(0x188))),parseParentId(_0x593c06,_0x5cce1d(0x195)),validateSort(_0x593c06);}function a153_0x4bac(){const _0x44d06c=['Whether\x20the\x20menu\x20is\x20visible','open-mode','create','482113nBmQct','label','map','failed','afterPlan','menu_verification_failed','trim','Created\x20menu\x20','menu_parent_not_folder','menu_url_credentials_forbidden','body','includes','menu_open_mode_invalid','stringify','toLowerCase','2240147QsfNVH','call','parentId','flagMissing','hasOwnProperty','verification','cookie','\x20with\x20','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','pre-write-recheck','rabetbase\x20menu\x20list\x20--appcode\x20','hash','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','visible','parent','appCode','Menu\x20label','\x20--format\x20compress','currentSnapshotHash','succeeded','create\x20external\x20menu','url','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Would\x20create\x20external\x20website\x20link\x20menu\x20','External\x20HTTPS\x20URL','Create\x20an\x20external\x20website\x20link\x20menu','readbackerror','isSafeInteger','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','Recovered\x20created\x20external\x20menu\x20','How\x20to\x20open\x20the\x20external\x20website','plan','password','menu','parent-id','POST','get','Recovered\x20menu\x20','Created\x20external\x20menu\x20','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','URL','<platform-generated>','object','sort','prototype','new-window','751002mdVGxG','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','274848ZMyiTT','filter','path','length','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','menu_sort_overflow','menu_url_https_required','type','Run\x20','link','https:','menu_mutation_failed','after','menus','Menu\x20','protocol','expectedPath','before','\x20has\x20an\x20unexpected\x20','menu_create_response_invalid','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','byId','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','string','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','2897765KomItR','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','selector','menu_not_found','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','code','6sXStoC','createdId','lookupCommand','str','Provide\x20an\x20HTTPS\x20URL.','expectedSnapshotHash','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','create-menu','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','recovered','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','embedded','entries','menu_sort_invalid','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','82696KunWhr','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','replace','fact','rawFlags','write','has','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','boolean','External\x20menu\x20creation\x20failed.','menu_create_recovery_required','fromEntries','1715394dKsXCU','rawerror','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','external-link-create','/smartapi/menu/create','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','\x27\x5c\x27\x27'];a153_0x4bac=function(){return _0x44d06c;};return a153_0x4bac();}function resolveExternalMenuType(_0xfd0045){const _0x3477df=a153_0x47a633,_0x1a9a71=_0xfd0045['str']('open-mode')[_0x3477df(0x16a)]();if(!_0x1a9a71)throw CliErrors['flagMissing'](_0x3477df(0x162));const _0x3b68a0=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x1a9a71];if(!_0x3b68a0)throw menuError(_0x3477df(0x170),_0x3477df(0x14c),_0x3477df(0x1a9));return _0x3b68a0;}async function buildAddPlan(_0x2e5789,_0x3854b6){const _0x2a4038=a153_0x47a633,_0x1fe88c=await fetchMutationSnapshot(_0x2e5789,'create\x20external\x20menu'),_0x16eaf4=parseParentId(_0x2e5789,_0x2a4038(0x195))??null;if(_0x16eaf4!=null)requireFolder(_0x1fe88c,_0x16eaf4);const _0x36adff=validateSort(_0x2e5789),_0xdcaad3=_0x36adff??nextSiblingSort(_0x1fe88c,_0x16eaf4,_0x2a4038(0x194)),_0x211438=_0x2e5789[_0x2a4038(0x141)]('label')[_0x2a4038(0x16a)](),_0x589b61=resolveExternalMenuType(_0x2e5789),_0x21a915=validateExternalMenuUrl(_0x2e5789[_0x2a4038(0x141)](_0x2a4038(0x188))),_0x3e2abf=Object[_0x2a4038(0x19f)][_0x2a4038(0x177)][_0x2a4038(0x174)](_0x2e5789[_0x2a4038(0x151)],_0x2a4038(0x180))?_0x2e5789['bool'](_0x2a4038(0x180)):!![],_0x1ec8fd={'id':null,'parentId':_0x16eaf4,'label':_0x211438,'path':_0x2a4038(0x19c),'url':_0x21a915,'type':_0x589b61,'visible':_0x3e2abf,'sort':_0xdcaad3},_0x53c50b=buildMenuLookupCommand(_0x2e5789[_0x2a4038(0x182)]),_0xff1e51=mutationResult({'operation':'add','selector':{'parentId':_0x16eaf4,'type':_0x589b61,'label':_0x211438,'url':_0x21a915},'before':null,'after':_0x1ec8fd,'dryRun':_0x3854b6,'backend':[{'method':_0x2a4038(0x196),'path':_0x2a4038(0x15e)}],'plannedActions':[{'stage':_0x2a4038(0x145),'method':_0x2a4038(0x196),'path':'/smartapi/menu/create','body':createBody(_0x1ec8fd)}],'snapshotHash':_0x1fe88c[_0x2a4038(0x17e)],'warnings':[_0x2a4038(0x137)],'verification':{'lookupCommand':_0x53c50b}});return{'plan':_0xff1e51,'snapshot':_0x1fe88c};}async function buildSafeAddPlan(_0x25745e,_0x51b1a2){try{return await buildAddPlan(_0x25745e,_0x51b1a2);}catch(_0x1d31ad){throw safeMenuAddError(_0x1d31ad);}}function a153_0x2648(_0x15512f,_0x89f2ae){_0x15512f=_0x15512f-0x12d;const _0x4bacab=a153_0x4bac();let _0x26484d=_0x4bacab[_0x15512f];return _0x26484d;}async function recheckAddSnapshot(_0x35473f,_0x4490a7){const _0x484250=a153_0x47a633;try{await recheckMutationSnapshot(_0x35473f,_0x4490a7,_0x484250(0x187));}catch(_0x1477f8){const _0x5daf5a=getFailureRecord(_0x1477f8);throw externalLinkCreateFailure(_0x1477f8,_0x4490a7,{'stage':_0x484250(0x17c),'failed':{..._0x5daf5a?.[_0x484250(0x143)]?{'expectedSnapshotHash':_0x5daf5a[_0x484250(0x143)]}:{},..._0x5daf5a?.[_0x484250(0x185)]?{'currentSnapshotHash':_0x5daf5a[_0x484250(0x185)]}:{}}});}}function createBody(_0x1ad4dd){const _0x29ebbf=a153_0x47a633;return{'parentId':toApiParentId(_0x1ad4dd[_0x29ebbf(0x175)]),'label':String(_0x1ad4dd[_0x29ebbf(0x165)]),'type':String(_0x1ad4dd[_0x29ebbf(0x1ac)]),'url':String(_0x1ad4dd['url']),'visible':Boolean(_0x1ad4dd[_0x29ebbf(0x180)]),'sort':Number(_0x1ad4dd['sort']),'extend':{}};}function buildMenuLookupCommand(_0x5602a3){const _0x3f08b1=a153_0x47a633,_0x4ea06b='\x27'+_0x5602a3[_0x3f08b1(0x14f)](/'/g,_0x3f08b1(0x160))+'\x27';return _0x3f08b1(0x17d)+_0x4ea06b+_0x3f08b1(0x184);}async function recoverAfterResponseLoss(_0x537e13,_0x3d71ac,_0x1b7444){const _0x2c8cdd=a153_0x47a633,{plan:_0x3c5d56,snapshot:_0x379587}=_0x3d71ac,_0x145ed9=_0x3c5d56[_0x2c8cdd(0x1b1)];let _0xc6c9ad;try{_0xc6c9ad=await fetchMenuSnapshot(_0x537e13['appCode'],_0x537e13['cookie']);}catch(_0x33acc1){throw recoveryRequiredFailure(_0x3c5d56,_0x1b7444,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x1acea9=_0xc6c9ad[_0x2c8cdd(0x1b2)][_0x2c8cdd(0x1a6)](_0x4cde52=>_0x4cde52['parentId']===_0x145ed9['parentId']&&_0x4cde52['type']===_0x145ed9[_0x2c8cdd(0x1ac)]&&_0x4cde52['label']===_0x145ed9['label']&&_0x4cde52[_0x2c8cdd(0x188)]===_0x145ed9['url']),_0x14b24c=_0x1acea9[_0x2c8cdd(0x1a6)](_0x26c907=>!_0x379587[_0x2c8cdd(0x134)][_0x2c8cdd(0x153)](_0x26c907['id'])),_0x3d6993=_0x1acea9[_0x2c8cdd(0x1a6)](_0x277a4e=>_0x379587['byId'][_0x2c8cdd(0x153)](_0x277a4e['id']));if(_0x1acea9[_0x2c8cdd(0x1a8)]!==0x1||_0x14b24c[_0x2c8cdd(0x1a8)]!==0x1)throw recoveryRequiredFailure(_0x3c5d56,_0x1b7444,{'matchCount':_0x1acea9[_0x2c8cdd(0x1a8)],'newMatchCount':_0x14b24c[_0x2c8cdd(0x1a8)],'preexistingMatchCount':_0x3d6993[_0x2c8cdd(0x1a8)]});const _0x2cfeeb=_0x14b24c[0x0];try{verifyCreatedFact(_0x2cfeeb,_0x2cfeeb['id'],_0x145ed9,null);}catch(_0x591cfe){const _0x27dfde=_0x591cfe instanceof Error&&_0x2c8cdd(0x13d)in _0x591cfe?_0x591cfe:menuError(_0x2c8cdd(0x169),_0x2c8cdd(0x198)+_0x2cfeeb['id']+'\x20could\x20not\x20be\x20verified.',_0x2c8cdd(0x1ad)+_0x1b7444+'\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x27dfde,_0x3c5d56,{'stage':'verification','succeeded':[{'id':_0x2cfeeb['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x2cfeeb['id'],'finalFactsConfirmed':![]},'after':_0x2cfeeb,'warnings':[_0x2c8cdd(0x1b3)+_0x2cfeeb['id']+'\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x2c8cdd(0x167),'targetId':_0x2cfeeb['id'],'recovered':!![],'lookupCommand':_0x1b7444}});}return creationSuccess(_0x3c5d56,_0xc6c9ad,_0x2cfeeb,!![]);}function recoveryRequiredFailure(_0x584e1c,_0x10a2de,_0x572c27){const _0x337220=a153_0x47a633,_0x50224b=menuError(_0x337220(0x158),_0x337220(0x18f),_0x337220(0x1ad)+_0x10a2de+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x50224b,_0x584e1c,{'stage':'create-recovery','failed':_0x572c27,'warnings':[_0x337220(0x144)],'verification':{'status':_0x337220(0x167),..._0x572c27,'lookupCommand':_0x10a2de}});}async function readAndVerifyCreatedMenu(_0x43dd88){const _0x3ac8d4=a153_0x47a633;let _0x291119;try{_0x291119=await fetchMenuSnapshot(_0x43dd88[_0x3ac8d4(0x182)],_0x43dd88['cookie']);}catch(_0x1259fb){const _0x26796a=menuError('menu_verification_failed',_0x3ac8d4(0x1b3)+_0x43dd88[_0x3ac8d4(0x13f)]+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x3ac8d4(0x1ad)+_0x43dd88[_0x3ac8d4(0x140)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x26796a,_0x43dd88[_0x3ac8d4(0x192)],{'stage':_0x3ac8d4(0x178),'succeeded':[{'id':_0x43dd88[_0x3ac8d4(0x13f)],'created':!![]}],'failed':{'id':_0x43dd88[_0x3ac8d4(0x13f)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x43dd88[_0x3ac8d4(0x168)],'id':_0x43dd88[_0x3ac8d4(0x13f)],'path':_0x43dd88[_0x3ac8d4(0x12e)]},'warnings':[_0x3ac8d4(0x1b3)+_0x43dd88[_0x3ac8d4(0x13f)]+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':'failed','targetId':_0x43dd88[_0x3ac8d4(0x13f)],'lookupCommand':_0x43dd88[_0x3ac8d4(0x140)]}});}const _0x2d8300=_0x291119[_0x3ac8d4(0x134)][_0x3ac8d4(0x197)](_0x43dd88[_0x3ac8d4(0x13f)]);try{if(!_0x2d8300)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x43dd88[_0x3ac8d4(0x13f)]+_0x3ac8d4(0x15f),_0x3ac8d4(0x1ad)+_0x43dd88[_0x3ac8d4(0x140)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x2d8300,_0x43dd88[_0x3ac8d4(0x13f)],_0x43dd88[_0x3ac8d4(0x168)],_0x43dd88[_0x3ac8d4(0x12e)]);}catch(_0x6f943c){const _0x338ed2=_0x6f943c instanceof Error&&_0x3ac8d4(0x13d)in _0x6f943c?_0x6f943c:menuError(_0x3ac8d4(0x169),_0x3ac8d4(0x16b)+_0x43dd88[_0x3ac8d4(0x13f)]+'\x20failed\x20final\x20verification.',_0x3ac8d4(0x1ad)+_0x43dd88[_0x3ac8d4(0x140)]+_0x3ac8d4(0x1a4));throw externalLinkCreateFailure(_0x338ed2,_0x43dd88[_0x3ac8d4(0x192)],{'stage':_0x3ac8d4(0x178),'succeeded':[{'id':_0x43dd88['createdId'],'created':!![]}],'failed':{'id':_0x43dd88[_0x3ac8d4(0x13f)],'finalFactsConfirmed':![]},'after':_0x2d8300??{..._0x43dd88['afterPlan'],'id':_0x43dd88[_0x3ac8d4(0x13f)],'path':_0x43dd88[_0x3ac8d4(0x12e)]},'warnings':[_0x3ac8d4(0x1b3)+_0x43dd88['createdId']+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':_0x3ac8d4(0x167),'targetId':_0x43dd88[_0x3ac8d4(0x13f)],'recovered':_0x43dd88[_0x3ac8d4(0x147)],'lookupCommand':_0x43dd88[_0x3ac8d4(0x140)]}});}return{'snapshot':_0x291119,'fact':_0x2d8300};}function verifyCreatedFact(_0x593b3c,_0x448951,_0x2b43c2,_0x3d7168){const _0x45563d=a153_0x47a633;if(!Number['isSafeInteger'](_0x593b3c['id'])||_0x593b3c['id']<=0x0||_0x593b3c['id']!==_0x448951)throw menuError('menu_verification_failed','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.',_0x45563d(0x133));const _0x3df5d4=[[_0x45563d(0x181),_0x593b3c[_0x45563d(0x175)],_0x2b43c2[_0x45563d(0x175)]],['type',_0x593b3c['type'],_0x2b43c2[_0x45563d(0x1ac)]],[_0x45563d(0x165),_0x593b3c[_0x45563d(0x165)],_0x2b43c2['label']],[_0x45563d(0x19b),_0x593b3c[_0x45563d(0x188)],_0x2b43c2[_0x45563d(0x188)]],['visibility',_0x593b3c[_0x45563d(0x180)],_0x2b43c2[_0x45563d(0x180)]],['sort',_0x593b3c[_0x45563d(0x19e)],_0x2b43c2[_0x45563d(0x19e)]]];for(const [_0x510cb9,_0x8d4109,_0x216454]of _0x3df5d4){if(_0x8d4109!==_0x216454)throw menuError(_0x45563d(0x169),_0x45563d(0x16b)+_0x593b3c['id']+_0x45563d(0x130)+_0x510cb9+'.',_0x45563d(0x15c));}if(!_0x593b3c[_0x45563d(0x1a7)]['trim']()||_0x3d7168!==null&&_0x593b3c[_0x45563d(0x1a7)]!==_0x3d7168)throw menuError(_0x45563d(0x169),_0x45563d(0x16b)+_0x593b3c['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x45563d(0x15c));}function creationSuccess(_0x548d18,_0x428634,_0x9ec4c,_0x3847f8){const _0x5771f4=a153_0x47a633,_0x1b018d=mutationResult({..._0x548d18,'after':_0x9ec4c,'dryRun':![],'succeeded':[{'id':_0x9ec4c['id'],'created':!![],'recovered':_0x3847f8}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x428634[_0x5771f4(0x17e)],'targetId':_0x9ec4c['id'],'recovered':_0x3847f8,'path':_0x9ec4c[_0x5771f4(0x1a7)]}});return{'ok':!![],'message':_0x3847f8?_0x5771f4(0x190)+_0x9ec4c['id']+'\x20after\x20response\x20loss.':_0x5771f4(0x199)+_0x9ec4c['id']+'.','data':{..._0x1b018d,'recovered':_0x3847f8}};}function externalLinkCreateFailure(_0x17d00d,_0x1fb827,_0x13b97b){const _0x5b1619=a153_0x47a633;return menuFailure(safeMenuAddError(_0x17d00d),redactFailurePlan(_0x1fb827),{..._0x13b97b,'succeeded':_0x13b97b[_0x5b1619(0x186)]?.[_0x5b1619(0x166)](redactFailureRecord),'failed':_0x13b97b[_0x5b1619(0x167)]?redactFailureRecord(_0x13b97b[_0x5b1619(0x167)]):undefined,'verification':_0x13b97b['verification']?redactFailureRecord(_0x13b97b[_0x5b1619(0x178)]):undefined,'after':_0x13b97b[_0x5b1619(0x1b1)]===undefined?undefined:redactFailureValue(_0x13b97b[_0x5b1619(0x1b1)])});}function redactFailurePlan(_0x5e649e){const _0x28de81=a153_0x47a633;return{..._0x5e649e,'selector':redactFailureRecord(_0x5e649e[_0x28de81(0x13a)]),'before':redactFailureValue(_0x5e649e[_0x28de81(0x12f)]),'after':redactFailureValue(_0x5e649e[_0x28de81(0x1b1)]),'plannedActions':_0x5e649e['plannedActions']?.[_0x28de81(0x166)](_0x557ba0=>({..._0x557ba0,'body':redactFailureRecord(_0x557ba0[_0x28de81(0x16e)])})),'succeeded':_0x5e649e[_0x28de81(0x186)][_0x28de81(0x166)](redactFailureRecord),'failed':_0x5e649e['failed']['map'](redactFailureRecord),'verification':_0x5e649e[_0x28de81(0x178)]?redactFailureRecord(_0x5e649e[_0x28de81(0x178)]):undefined};}function redactFailureRecord(_0x429e21){return redactFailureValue(_0x429e21);}function redactFailureValue(_0x431a48,_0x5bdc17=''){const _0x39b186=a153_0x47a633,_0x176115=_0x5bdc17[_0x39b186(0x172)]()[_0x39b186(0x14f)](/[^a-z0-9]/g,'');if(['cause','causemessage',_0x39b186(0x18d),_0x39b186(0x15b)][_0x39b186(0x16f)](_0x176115))return'<redacted>';if(Array['isArray'](_0x431a48))return _0x431a48[_0x39b186(0x166)](_0x2b6bf9=>redactFailureValue(_0x2b6bf9));if(_0x431a48&&typeof _0x431a48===_0x39b186(0x19d))return Object[_0x39b186(0x159)](Object[_0x39b186(0x14a)](_0x431a48)[_0x39b186(0x166)](([_0x293226,_0x35c403])=>[_0x293226,redactFailureValue(_0x35c403,_0x293226)]));return _0x431a48;}function safeMenuAddError(_0x397a64){const _0x1e5019=a153_0x47a633,_0x94c493=_0x397a64 instanceof CliError?_0x397a64[_0x1e5019(0x13d)]:_0x1e5019(0x1b0);switch(_0x94c493){case'menu_state_drift':return menuError(_0x94c493,_0x1e5019(0x17f),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.');case'menu_permission_denied':return menuError(_0x94c493,_0x1e5019(0x146),'Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x1e5019(0x131):return menuError(_0x94c493,_0x1e5019(0x13c),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x1e5019(0x169):return menuError(_0x94c493,_0x1e5019(0x19a),_0x1e5019(0x17b));case'menu_create_recovery_required':return menuError(_0x94c493,_0x1e5019(0x189),_0x1e5019(0x14e));case _0x1e5019(0x1b0):case _0x1e5019(0x13b):case _0x1e5019(0x16c):case _0x1e5019(0x14b):case _0x1e5019(0x1aa):return menuError(_0x94c493,_0x1e5019(0x157),_0x1e5019(0x132));default:return menuError(_0x1e5019(0x1b0),_0x1e5019(0x157),_0x1e5019(0x132));}}function getFailureRecord(_0x286cc8){const _0x2b2a4f=a153_0x47a633;if(!(_0x286cc8 instanceof Error)||!('data'in _0x286cc8))return undefined;const _0x189ed4=_0x286cc8['data'];if(!_0x189ed4||typeof _0x189ed4!==_0x2b2a4f(0x19d))return undefined;const _0x388fd8=_0x189ed4['failed'];if(!Array['isArray'](_0x388fd8)||!_0x388fd8[0x0]||typeof _0x388fd8[0x0]!==_0x2b2a4f(0x19d))return undefined;return _0x388fd8[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a153_0x478954=a153_0x4028;(function(_0xf92220,_0x1c4163){const _0xc97f44=a153_0x4028,_0x1b39d2=_0xf92220();while(!![]){try{const _0x12b371=parseInt(_0xc97f44(0x116))/0x1+-parseInt(_0xc97f44(0x142))/0x2+parseInt(_0xc97f44(0x11d))/0x3+-parseInt(_0xc97f44(0x117))/0x4*(-parseInt(_0xc97f44(0x147))/0x5)+parseInt(_0xc97f44(0x109))/0x6*(-parseInt(_0xc97f44(0x12e))/0x7)+parseInt(_0xc97f44(0x14e))/0x8+-parseInt(_0xc97f44(0x12a))/0x9;if(_0x12b371===_0x1c4163)break;else _0x1b39d2['push'](_0x1b39d2['shift']());}catch(_0x5812c5){_0x1b39d2['push'](_0x1b39d2['shift']());}}}(a153_0x2762,0xd0b3f));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_0x2762(){const _0x34973a=['Run\x20','menu\x20list','plan','parentId','\x20is\x20type\x20\x22','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','snapshot','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','path','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','128292NRfHnt','/smartapi/menu/update','menu_update_recovery_required','\x20has\x20','body','type','\x20URL\x20update\x20did\x20not\x20take\x20effect.','failed','iframe','update\x20external\x20menu\x20URL','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','visible','expect-url','969679puDCpz','68716vputzD','label','sort','appCode','str','replace','3807867NfpJyf','Updated\x20external\x20URL\x20for\x20menu\x20','Menu\x20','menu','external-link-update','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','\x20already\x20matches\x20the\x20requested\x20URL.','write','update-recovery','update-external-link-url','readbackFailed','rabetbase\x20menu\x20list\x20--appcode\x20','26739054uZUxcj','string','menu_external_link_not_leaf','expect-parent-id','301yWogYt','Response\x20was\x20lost\x20and\x20menu\x20','code','menu_external_link_path_missing','\x20direct\x20child\x20menu(s).','after','menu_permission_denied','menu_external_link_type_required','flagMissing','hash','Update\x20request\x20for\x20menu\x20','\x20has\x20an\x20empty\x20platform\x20path.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','get','verification','url','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','verify\x20external\x20menu\x20URL\x20update','menu_state_drift','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','121748EUYZqj','unknown','childrenCount','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.',',\x20current\x20','385AFrwgg','\x27\x5c\x27\x27','\x22,\x20not\x20iframe\x20or\x20link.','cookie','\x20changed\x20during\x20the\x20URL-only\x20update.','trim','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','9955216rgZJPn','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','POST','requestedUrlObserved'];a153_0x2762=function(){return _0x34973a;};return a153_0x2762();}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_0x478954(0xfd),'path':a153_0x478954(0x10a)}];export const menuExternalLinkUpdate={'service':a153_0x478954(0x120),'command':a153_0x478954(0x121),'description':a153_0x478954(0x122),'risk':a153_0x478954(0x125),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a153_0x478954(0x13d),'type':'string','required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':'expect-url','type':a153_0x478954(0x12b),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x744558){validateInput(_0x744558);},async 'dryRun'(_0x4a4d6f){const _0x506430=a153_0x478954;validateInput(_0x4a4d6f);const _0x24f1f4=await buildPlan(_0x4a4d6f,!![]);return menuDryRunResult(_0x24f1f4[_0x506430(0x101)],{'method':'POST','url':_0x506430(0x10a),'body':_0x24f1f4[_0x506430(0x10d)],'description':_0x506430(0x106)+_0x24f1f4[_0x506430(0x10d)]['id']+'.'});},async 'execute'(_0x362c57){const _0x55bf74=a153_0x478954;validateInput(_0x362c57);const _0x2716cb=await buildPlan(_0x362c57,![]),{plan:_0xe2c1cd,body:_0x489a32,before:_0x28a92e,noChanges:_0x344129}=_0x2716cb,_0x84b669=_0x489a32['id'];if(_0x344129)return updateSuccess(_0xe2c1cd,_0x2716cb[_0x55bf74(0x105)],_0x28a92e,!![],![]);await recheckMutationSnapshot(_0x362c57,_0xe2c1cd,_0x55bf74(0x112),_0x84b669);try{await updateMenuEntity(_0x362c57[_0x55bf74(0x11a)],_0x362c57['cookie'],{'id':_0x489a32['id'],'url':_0x489a32['url']});}catch(_0x482722){const _0x5061f4=mapMenuApiError(_0x482722,_0x55bf74(0x112),_0x84b669);if(isMenuResponseLoss(_0x482722)&&_0x5061f4[_0x55bf74(0x130)]!==_0x55bf74(0x134))return recoverAfterResponseLoss(_0x362c57,_0x2716cb);throw menuFailure(_0x5061f4,_0xe2c1cd,{'stage':'update','failed':{'id':_0x84b669},'warnings':[_0x55bf74(0x145)],'verification':{'status':_0x55bf74(0x110),'targetId':_0x84b669,'lookupCommand':buildLookupCommand(_0x362c57[_0x55bf74(0x11a)])}});}let _0x5049c3,_0x14e475;try{_0x5049c3=await fetchMenuSnapshot(_0x362c57['appCode'],_0x362c57['cookie']),_0x14e475=requireMenu(_0x5049c3,_0x84b669),verifyUpdatedFact(_0x28a92e,_0x14e475,_0x489a32[_0x55bf74(0x13d)]);}catch(_0x2dfb88){const _0x588035=describeMenuErrorCause(_0x2dfb88,_0x55bf74(0x13f),_0x84b669),_0x52727b=asVerificationError(_0x2dfb88,_0x55bf74(0x138)+_0x84b669+_0x55bf74(0x123));throw menuFailure(_0x52727b,_0xe2c1cd,{'stage':_0x55bf74(0x13c),'succeeded':[{'id':_0x84b669,'updateRequested':!![]}],'failed':{'id':_0x84b669,'requestedStateConfirmed':![],..._0x588035},'warnings':[_0x55bf74(0x14d)],'verification':{'status':_0x55bf74(0x110),'targetId':_0x84b669,'lookupCommand':buildLookupCommand(_0x362c57[_0x55bf74(0x11a)])}});}return updateSuccess(_0xe2c1cd,_0x5049c3,_0x14e475,![],![]);}};function validateInput(_0x275bbd){const _0x5b1ab5=a153_0x478954;validateExactId(_0x275bbd),requiredUrl(_0x275bbd,_0x5b1ab5(0x13d)),requiredExpectedUrl(_0x275bbd),parseParentId(_0x275bbd,_0x5b1ab5(0x12d),{'required':!![]});}function requiredUrl(_0x1c7a25,_0x2eccbd){const _0x2804ed=a153_0x478954;if(!hasFlag(_0x1c7a25,_0x2eccbd)||!_0x1c7a25[_0x2804ed(0x11b)](_0x2eccbd)[_0x2804ed(0x14c)]())throw CliErrors['flagMissing'](_0x2eccbd);return validateExternalMenuUrl(_0x1c7a25[_0x2804ed(0x11b)](_0x2eccbd));}function requiredExpectedUrl(_0x26e92d){const _0x23950f=a153_0x478954;if(!hasFlag(_0x26e92d,'expect-url')||!_0x26e92d['str'](_0x23950f(0x115))[_0x23950f(0x14c)]())throw CliErrors[_0x23950f(0x136)](_0x23950f(0x115));return _0x26e92d[_0x23950f(0x11b)](_0x23950f(0x115))[_0x23950f(0x14c)]();}async function buildPlan(_0x9ffb71,_0x2515c9){const _0x5962ec=a153_0x478954,_0x3af32b=validateExactId(_0x9ffb71),_0x221192=requiredUrl(_0x9ffb71,'url'),_0x44fc4b=requiredExpectedUrl(_0x9ffb71),_0x19061e=parseParentId(_0x9ffb71,'expect-parent-id',{'required':!![]}),_0x75d19f=await fetchMutationSnapshot(_0x9ffb71,_0x5962ec(0x112),_0x3af32b),_0x5a0422=requireMenu(_0x75d19f,_0x3af32b);assertExternalLinkLeaf(_0x5a0422);if(_0x5a0422[_0x5962ec(0x102)]!==_0x19061e)throw menuError(_0x5962ec(0x140),_0x5962ec(0x11f)+_0x3af32b+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x19061e)+_0x5962ec(0x146)+formatParent(_0x5a0422[_0x5962ec(0x102)])+'.',_0x5962ec(0x13a));const _0x24df6a=_0x5a0422[_0x5962ec(0x13d)]===_0x221192;if(!_0x24df6a&&_0x5a0422[_0x5962ec(0x13d)]!==_0x44fc4b)throw menuError(_0x5962ec(0x140),_0x5962ec(0x11f)+_0x3af32b+_0x5962ec(0x104),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x4193a2={'id':_0x3af32b,'appCode':_0x9ffb71[_0x5962ec(0x11a)],'url':_0x221192},_0x4a901e={..._0x5a0422,'url':_0x221192};return{'body':_0x4193a2,'before':_0x5a0422,'noChanges':_0x24df6a,'snapshot':_0x75d19f,'plan':mutationResult({'operation':_0x5962ec(0x121),'selector':{'id':_0x3af32b},'before':_0x5a0422,'after':_0x4a901e,'dryRun':_0x2515c9,'backend':[...BACKEND],'plannedActions':_0x24df6a?[]:[{'stage':_0x5962ec(0x127),'method':_0x5962ec(0xfd),'path':'/smartapi/menu/update','body':_0x4193a2}],'snapshotHash':_0x75d19f[_0x5962ec(0x137)],'warnings':_0x24df6a?[_0x5962ec(0x13e)]:[]})};}function assertExternalLinkLeaf(_0x5b12e1){const _0x4e6b4f=a153_0x478954;if(_0x5b12e1[_0x4e6b4f(0x10e)]!==_0x4e6b4f(0x111)&&_0x5b12e1[_0x4e6b4f(0x10e)]!=='link')throw menuError(_0x4e6b4f(0x135),_0x4e6b4f(0x11f)+_0x5b12e1['id']+_0x4e6b4f(0x103)+(_0x5b12e1[_0x4e6b4f(0x10e)]||_0x4e6b4f(0x143))+_0x4e6b4f(0x149),_0x4e6b4f(0x108));if(_0x5b12e1[_0x4e6b4f(0x144)]!==0x0)throw menuError(_0x4e6b4f(0x12c),_0x4e6b4f(0x11f)+_0x5b12e1['id']+_0x4e6b4f(0x10c)+_0x5b12e1[_0x4e6b4f(0x144)]+_0x4e6b4f(0x132),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x5b12e1[_0x4e6b4f(0x107)][_0x4e6b4f(0x14c)]())throw menuError(_0x4e6b4f(0x131),_0x4e6b4f(0x11f)+_0x5b12e1['id']+_0x4e6b4f(0x139),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x4edf9f,_0x38f601,_0x51d243){const _0x580203=a153_0x478954;assertExternalLinkLeaf(_0x38f601);const _0x217488=[['id',_0x38f601['id'],_0x4edf9f['id']],['label',_0x38f601[_0x580203(0x118)],_0x4edf9f[_0x580203(0x118)]],['type',_0x38f601['type'],_0x4edf9f[_0x580203(0x10e)]],[_0x580203(0x107),_0x38f601[_0x580203(0x107)],_0x4edf9f['path']],[_0x580203(0x102),_0x38f601[_0x580203(0x102)],_0x4edf9f['parentId']],['sort',_0x38f601[_0x580203(0x119)],_0x4edf9f[_0x580203(0x119)]],[_0x580203(0x114),_0x38f601[_0x580203(0x114)],_0x4edf9f[_0x580203(0x114)]]];for(const [_0x329971,_0x653998,_0x3af6c7]of _0x217488){assertVerified(_0x653998===_0x3af6c7,_0x580203(0x11f)+_0x4edf9f['id']+'\x20'+_0x329971+_0x580203(0x14b));}assertVerified(_0x38f601[_0x580203(0x13d)]===_0x51d243,'Menu\x20'+_0x4edf9f['id']+_0x580203(0x10f));}function a153_0x4028(_0x5354a3,_0x591bfe){_0x5354a3=_0x5354a3-0xfc;const _0x276256=a153_0x2762();let _0x402839=_0x276256[_0x5354a3];return _0x402839;}function updateSuccess(_0x5b2b59,_0x49cdf1,_0x2c112c,_0x3566c5,_0x2d7bfc){const _0xafc0e1=a153_0x478954,_0x448362=_0x2c112c['id'],_0x16aee9=mutationResult({..._0x5b2b59,'after':_0x2c112c,'dryRun':![],'succeeded':[{'id':_0x448362,'updated':!_0x3566c5,'skipped':_0x3566c5,'recovered':_0x2d7bfc}],'verification':{'checkedBy':_0xafc0e1(0x100),'snapshotHash':_0x49cdf1['hash'],'targetId':_0x448362,'matchesRequestedState':!![],'recovered':_0x2d7bfc}});return{'ok':!![],'message':_0x2d7bfc?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x448362+'.':_0x3566c5?_0xafc0e1(0x11f)+_0x448362+_0xafc0e1(0x124):_0xafc0e1(0x11e)+_0x448362+'.','data':{..._0x16aee9,'recovered':_0x2d7bfc}};}async function recoverAfterResponseLoss(_0x5088e7,_0x392db3){const _0x2c6302=a153_0x478954,{plan:_0x797004,before:_0x590431,body:_0x5ec6bb}=_0x392db3;let _0x2e41ac;try{_0x2e41ac=await fetchMenuSnapshot(_0x5088e7[_0x2c6302(0x11a)],_0x5088e7[_0x2c6302(0x14a)]);}catch{throw recoveryRequired(_0x797004,_0x5088e7[_0x2c6302(0x11a)],{'id':_0x5ec6bb['id'],'readbackFailed':!![]});}const _0x3a780b=_0x2e41ac['byId'][_0x2c6302(0x13b)](_0x5ec6bb['id']);if(!_0x3a780b||_0x3a780b[_0x2c6302(0x13d)]!==_0x5ec6bb[_0x2c6302(0x13d)])throw recoveryRequired(_0x797004,_0x5088e7[_0x2c6302(0x11a)],{'id':_0x5ec6bb['id'],'requestedUrlObserved':![],'after':_0x3a780b??null});try{verifyUpdatedFact(_0x590431,_0x3a780b,_0x5ec6bb[_0x2c6302(0x13d)]);}catch(_0xee5e45){const _0x416077=asVerificationError(_0xee5e45,_0x2c6302(0x12f)+_0x5ec6bb['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0x416077,_0x797004,{'stage':_0x2c6302(0x126),'succeeded':[{'id':_0x5ec6bb['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x5ec6bb['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x3a780b,'warnings':[_0x2c6302(0xfc)],'verification':{'status':_0x2c6302(0x110),'targetId':_0x5ec6bb['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5088e7[_0x2c6302(0x11a)])}});}return updateSuccess(_0x797004,_0x2e41ac,_0x3a780b,![],!![]);}function recoveryRequired(_0x2acbca,_0x2af1f6,_0x264135){const _0x4f1ada=a153_0x478954,_0x201c91=menuError(_0x4f1ada(0x10b),_0x4f1ada(0x141),_0x4f1ada(0xff)+buildLookupCommand(_0x2af1f6)+_0x4f1ada(0x113));return menuFailure(_0x201c91,_0x2acbca,{'stage':'update-recovery','failed':{'id':_0x264135['id'],..._0x264135[_0x4f1ada(0xfe)]===undefined?{}:{'requestedUrlObserved':_0x264135['requestedUrlObserved']},..._0x264135[_0x4f1ada(0x128)]?{'readbackFailed':!![]}:{}},'after':_0x264135[_0x4f1ada(0x133)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x4f1ada(0x110),'targetId':_0x264135['id'],..._0x264135[_0x4f1ada(0xfe)]===undefined?{}:{'requestedUrlObserved':_0x264135[_0x4f1ada(0xfe)]},..._0x264135[_0x4f1ada(0x128)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x2af1f6)}});}function buildLookupCommand(_0x258797){const _0x100378=a153_0x478954,_0x5822b9='\x27'+_0x258797[_0x100378(0x11c)](/'/g,_0x100378(0x148))+'\x27';return _0x100378(0x129)+_0x5822b9+'\x20--format\x20compress';}
|
|
1
|
+
const a154_0x35308d=a154_0x5712;(function(_0xf0aed7,_0x28d200){const _0x4c5a3c=a154_0x5712,_0x1242e0=_0xf0aed7();while(!![]){try{const _0x3c2622=-parseInt(_0x4c5a3c(0x1fc))/0x1*(parseInt(_0x4c5a3c(0x217))/0x2)+-parseInt(_0x4c5a3c(0x222))/0x3+-parseInt(_0x4c5a3c(0x226))/0x4*(parseInt(_0x4c5a3c(0x21c))/0x5)+parseInt(_0x4c5a3c(0x1f2))/0x6*(parseInt(_0x4c5a3c(0x1f0))/0x7)+-parseInt(_0x4c5a3c(0x1f4))/0x8*(-parseInt(_0x4c5a3c(0x229))/0x9)+parseInt(_0x4c5a3c(0x211))/0xa*(-parseInt(_0x4c5a3c(0x21e))/0xb)+parseInt(_0x4c5a3c(0x227))/0xc;if(_0x3c2622===_0x28d200)break;else _0x1242e0['push'](_0x1242e0['shift']());}catch(_0x3cee0f){_0x1242e0['push'](_0x1242e0['shift']());}}}(a154_0x49fe,0x25414));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':a154_0x35308d(0x212),'path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':'menu','command':'external-link-update','description':a154_0x35308d(0x1f3),'risk':a154_0x35308d(0x232),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a154_0x35308d(0x20d),'type':a154_0x35308d(0x208),'required':!![],'description':a154_0x35308d(0x205)},{'name':a154_0x35308d(0x216),'type':a154_0x35308d(0x208),'required':!![],'description':a154_0x35308d(0x22d)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x556b3e){validateInput(_0x556b3e);},async 'dryRun'(_0x26dcad){const _0x5d07d0=a154_0x35308d;validateInput(_0x26dcad);const _0x12fd8e=await buildPlan(_0x26dcad,!![]);return menuDryRunResult(_0x12fd8e[_0x5d07d0(0x22e)],{'method':_0x5d07d0(0x212),'url':_0x5d07d0(0x20c),'body':_0x12fd8e[_0x5d07d0(0x1f5)],'description':_0x5d07d0(0x235)+_0x12fd8e[_0x5d07d0(0x1f5)]['id']+'.'});},async 'execute'(_0x4bf066){const _0x760779=a154_0x35308d;validateInput(_0x4bf066);const _0xfc8fea=await buildPlan(_0x4bf066,![]),{plan:_0x5a7f11,body:_0x2fbe89,before:_0x39c6de,noChanges:_0x117959}=_0xfc8fea,_0x37e0c2=_0x2fbe89['id'];if(_0x117959)return updateSuccess(_0x5a7f11,_0xfc8fea[_0x760779(0x20a)],_0x39c6de,!![],![]);await recheckMutationSnapshot(_0x4bf066,_0x5a7f11,'update\x20external\x20menu\x20URL',_0x37e0c2);try{await updateMenuEntity(_0x4bf066[_0x760779(0x231)],_0x4bf066[_0x760779(0x22c)],{'id':_0x2fbe89['id'],'url':_0x2fbe89[_0x760779(0x20d)]});}catch(_0xa272d7){const _0x19d648=mapMenuApiError(_0xa272d7,_0x760779(0x1fa),_0x37e0c2);if(isMenuResponseLoss(_0xa272d7)&&_0x19d648[_0x760779(0x215)]!==_0x760779(0x1fd))return recoverAfterResponseLoss(_0x4bf066,_0xfc8fea);throw menuFailure(_0x19d648,_0x5a7f11,{'stage':_0x760779(0x22b),'failed':{'id':_0x37e0c2},'warnings':['The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x760779(0x1f8),'targetId':_0x37e0c2,'lookupCommand':buildLookupCommand(_0x4bf066[_0x760779(0x231)])}});}let _0x23fcb1,_0x1fcd30;try{_0x23fcb1=await fetchMenuSnapshot(_0x4bf066['appCode'],_0x4bf066[_0x760779(0x22c)]),_0x1fcd30=requireMenu(_0x23fcb1,_0x37e0c2),verifyUpdatedFact(_0x39c6de,_0x1fcd30,_0x2fbe89[_0x760779(0x20d)]);}catch(_0x2ac8a4){const _0x52d73c=describeMenuErrorCause(_0x2ac8a4,_0x760779(0x1f9),_0x37e0c2),_0x2a5bce=asVerificationError(_0x2ac8a4,'Update\x20request\x20for\x20menu\x20'+_0x37e0c2+_0x760779(0x224));throw menuFailure(_0x2a5bce,_0x5a7f11,{'stage':_0x760779(0x237),'succeeded':[{'id':_0x37e0c2,'updateRequested':!![]}],'failed':{'id':_0x37e0c2,'requestedStateConfirmed':![],..._0x52d73c},'warnings':['The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x760779(0x1f8),'targetId':_0x37e0c2,'lookupCommand':buildLookupCommand(_0x4bf066[_0x760779(0x231)])}});}return updateSuccess(_0x5a7f11,_0x23fcb1,_0x1fcd30,![],![]);}};function a154_0x5712(_0x25022d,_0x46accf){_0x25022d=_0x25022d-0x1ef;const _0x49fe38=a154_0x49fe();let _0x571237=_0x49fe38[_0x25022d];return _0x571237;}function validateInput(_0x4e33aa){const _0x151510=a154_0x35308d;validateExactId(_0x4e33aa),requiredUrl(_0x4e33aa,'url'),requiredExpectedUrl(_0x4e33aa),parseParentId(_0x4e33aa,_0x151510(0x20f),{'required':!![]});}function a154_0x49fe(){const _0x58d81c=['str','\x20direct\x20child\x20menu(s).','trim','Response\x20was\x20lost\x20and\x20menu\x20','\x20has\x20an\x20empty\x20platform\x20path.','New\x20external\x20HTTPS\x20URL','menu_update_recovery_required','unknown','string','visible','snapshot','flagMissing','/smartapi/menu/update','url','\x20could\x20not\x20be\x20verified\x20safely','expect-parent-id','readbackFailed','30hiBiKc','POST','external-link-update','replace','code','expect-url','8dKRhjQ','Menu\x20','type','menu\x20list','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','162505PRGTjw','label','572363lpoQVq','sort','parentId','rabetbase\x20menu\x20list\x20--appcode\x20','439854zspZFk','\x22,\x20not\x20iframe\x20or\x20link.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','28pxyKmR','8376396TTKdxi','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','150057iqPeNn','path','update','cookie','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','plan','byId','childrenCount','appCode','write','iframe','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','menu_external_link_path_missing','verification','menu_state_drift','update-recovery','Updated\x20external\x20URL\x20for\x20menu\x20','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','Run\x20','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','\x20has\x20','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','13230dEPZOH','\x20changed\x20during\x20the\x20URL-only\x20update.','474kuMiFs','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','40MSnzFs','body','menu_external_link_not_leaf','\x27\x5c\x27\x27','failed','verify\x20external\x20menu\x20URL\x20update','update\x20external\x20menu\x20URL','\x20is\x20type\x20\x22','61972nOeret','menu_permission_denied','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','requestedUrlObserved'];a154_0x49fe=function(){return _0x58d81c;};return a154_0x49fe();}function requiredUrl(_0x505752,_0x3277d7){const _0x2e8b94=a154_0x35308d;if(!hasFlag(_0x505752,_0x3277d7)||!_0x505752['str'](_0x3277d7)['trim']())throw CliErrors[_0x2e8b94(0x20b)](_0x3277d7);return validateExternalMenuUrl(_0x505752[_0x2e8b94(0x200)](_0x3277d7));}function requiredExpectedUrl(_0x7b7b68){const _0x5bea85=a154_0x35308d;if(!hasFlag(_0x7b7b68,'expect-url')||!_0x7b7b68[_0x5bea85(0x200)]('expect-url')['trim']())throw CliErrors[_0x5bea85(0x20b)]('expect-url');return _0x7b7b68[_0x5bea85(0x200)]('expect-url')[_0x5bea85(0x202)]();}async function buildPlan(_0x4d3e96,_0x1e772e){const _0x34805c=a154_0x35308d,_0x120b26=validateExactId(_0x4d3e96),_0x63ab43=requiredUrl(_0x4d3e96,_0x34805c(0x20d)),_0x4fb1f0=requiredExpectedUrl(_0x4d3e96),_0x48da0d=parseParentId(_0x4d3e96,_0x34805c(0x20f),{'required':!![]}),_0x2001a4=await fetchMutationSnapshot(_0x4d3e96,'update\x20external\x20menu\x20URL',_0x120b26),_0x384c8f=requireMenu(_0x2001a4,_0x120b26);assertExternalLinkLeaf(_0x384c8f);if(_0x384c8f[_0x34805c(0x220)]!==_0x48da0d)throw menuError(_0x34805c(0x238),'Menu\x20'+_0x120b26+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x48da0d)+',\x20current\x20'+formatParent(_0x384c8f['parentId'])+'.',_0x34805c(0x234));const _0x20c311=_0x384c8f[_0x34805c(0x20d)]===_0x63ab43;if(!_0x20c311&&_0x384c8f[_0x34805c(0x20d)]!==_0x4fb1f0)throw menuError(_0x34805c(0x238),'Menu\x20'+_0x120b26+_0x34805c(0x21b),_0x34805c(0x228));const _0x33b59f={'id':_0x120b26,'appCode':_0x4d3e96[_0x34805c(0x231)],'url':_0x63ab43},_0x7437e6={..._0x384c8f,'url':_0x63ab43};return{'body':_0x33b59f,'before':_0x384c8f,'noChanges':_0x20c311,'snapshot':_0x2001a4,'plan':mutationResult({'operation':_0x34805c(0x213),'selector':{'id':_0x120b26},'before':_0x384c8f,'after':_0x7437e6,'dryRun':_0x1e772e,'backend':[...BACKEND],'plannedActions':_0x20c311?[]:[{'stage':'update-external-link-url','method':_0x34805c(0x212),'path':'/smartapi/menu/update','body':_0x33b59f}],'snapshotHash':_0x2001a4['hash'],'warnings':_0x20c311?[_0x34805c(0x1fe)]:[]})};}function assertExternalLinkLeaf(_0x28e60b){const _0x63fbd0=a154_0x35308d;if(_0x28e60b['type']!==_0x63fbd0(0x233)&&_0x28e60b[_0x63fbd0(0x219)]!=='link')throw menuError('menu_external_link_type_required',_0x63fbd0(0x218)+_0x28e60b['id']+_0x63fbd0(0x1fb)+(_0x28e60b[_0x63fbd0(0x219)]||_0x63fbd0(0x207))+_0x63fbd0(0x223),'Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.');if(_0x28e60b['childrenCount']!==0x0)throw menuError(_0x63fbd0(0x1f6),_0x63fbd0(0x218)+_0x28e60b['id']+_0x63fbd0(0x23e)+_0x28e60b[_0x63fbd0(0x230)]+_0x63fbd0(0x201),_0x63fbd0(0x23b));if(!_0x28e60b[_0x63fbd0(0x22a)][_0x63fbd0(0x202)]())throw menuError(_0x63fbd0(0x236),_0x63fbd0(0x218)+_0x28e60b['id']+_0x63fbd0(0x204),_0x63fbd0(0x225));}function verifyUpdatedFact(_0x1e6789,_0x1e1455,_0x3c8fb0){const _0x4b6718=a154_0x35308d;assertExternalLinkLeaf(_0x1e1455);const _0x496683=[['id',_0x1e1455['id'],_0x1e6789['id']],[_0x4b6718(0x21d),_0x1e1455[_0x4b6718(0x21d)],_0x1e6789[_0x4b6718(0x21d)]],[_0x4b6718(0x219),_0x1e1455[_0x4b6718(0x219)],_0x1e6789[_0x4b6718(0x219)]],['path',_0x1e1455[_0x4b6718(0x22a)],_0x1e6789[_0x4b6718(0x22a)]],[_0x4b6718(0x220),_0x1e1455[_0x4b6718(0x220)],_0x1e6789[_0x4b6718(0x220)]],[_0x4b6718(0x21f),_0x1e1455[_0x4b6718(0x21f)],_0x1e6789['sort']],[_0x4b6718(0x209),_0x1e1455[_0x4b6718(0x209)],_0x1e6789[_0x4b6718(0x209)]]];for(const [_0x4897ea,_0x3af6f6,_0x5e6f6a]of _0x496683){assertVerified(_0x3af6f6===_0x5e6f6a,_0x4b6718(0x218)+_0x1e6789['id']+'\x20'+_0x4897ea+_0x4b6718(0x1f1));}assertVerified(_0x1e1455[_0x4b6718(0x20d)]===_0x3c8fb0,_0x4b6718(0x218)+_0x1e6789['id']+'\x20URL\x20update\x20did\x20not\x20take\x20effect.');}function updateSuccess(_0x4d3896,_0x4048f6,_0xa0e5e,_0xc6a80a,_0x2f7ef9){const _0xb56c03=a154_0x35308d,_0xd1add2=_0xa0e5e['id'],_0x221514=mutationResult({..._0x4d3896,'after':_0xa0e5e,'dryRun':![],'succeeded':[{'id':_0xd1add2,'updated':!_0xc6a80a,'skipped':_0xc6a80a,'recovered':_0x2f7ef9}],'verification':{'checkedBy':_0xb56c03(0x21a),'snapshotHash':_0x4048f6['hash'],'targetId':_0xd1add2,'matchesRequestedState':!![],'recovered':_0x2f7ef9}});return{'ok':!![],'message':_0x2f7ef9?_0xb56c03(0x23d)+_0xd1add2+'.':_0xc6a80a?_0xb56c03(0x218)+_0xd1add2+'\x20already\x20matches\x20the\x20requested\x20URL.':_0xb56c03(0x23a)+_0xd1add2+'.','data':{..._0x221514,'recovered':_0x2f7ef9}};}async function recoverAfterResponseLoss(_0x5026b1,_0x255b76){const _0x5829cf=a154_0x35308d,{plan:_0x2acec9,before:_0x316baa,body:_0x2ba234}=_0x255b76;let _0x3eede8;try{_0x3eede8=await fetchMenuSnapshot(_0x5026b1['appCode'],_0x5026b1[_0x5829cf(0x22c)]);}catch{throw recoveryRequired(_0x2acec9,_0x5026b1[_0x5829cf(0x231)],{'id':_0x2ba234['id'],'readbackFailed':!![]});}const _0x3720af=_0x3eede8[_0x5829cf(0x22f)]['get'](_0x2ba234['id']);if(!_0x3720af||_0x3720af[_0x5829cf(0x20d)]!==_0x2ba234[_0x5829cf(0x20d)])throw recoveryRequired(_0x2acec9,_0x5026b1[_0x5829cf(0x231)],{'id':_0x2ba234['id'],'requestedUrlObserved':![],'after':_0x3720af??null});try{verifyUpdatedFact(_0x316baa,_0x3720af,_0x2ba234[_0x5829cf(0x20d)]);}catch(_0x14d834){const _0x5b9223=asVerificationError(_0x14d834,_0x5829cf(0x203)+_0x2ba234['id']+_0x5829cf(0x20e));throw menuFailure(_0x5b9223,_0x2acec9,{'stage':_0x5829cf(0x239),'succeeded':[{'id':_0x2ba234['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x2ba234['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x3720af,'warnings':[_0x5829cf(0x1ef)],'verification':{'status':_0x5829cf(0x1f8),'targetId':_0x2ba234['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5026b1[_0x5829cf(0x231)])}});}return updateSuccess(_0x2acec9,_0x3eede8,_0x3720af,![],!![]);}function recoveryRequired(_0x285037,_0x259870,_0x2462e7){const _0x550daf=a154_0x35308d,_0x2cc4de=menuError(_0x550daf(0x206),'The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0x550daf(0x23c)+buildLookupCommand(_0x259870)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x2cc4de,_0x285037,{'stage':_0x550daf(0x239),'failed':{'id':_0x2462e7['id'],..._0x2462e7[_0x550daf(0x1ff)]===undefined?{}:{'requestedUrlObserved':_0x2462e7[_0x550daf(0x1ff)]},..._0x2462e7[_0x550daf(0x210)]?{'readbackFailed':!![]}:{}},'after':_0x2462e7['after'],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x550daf(0x1f8),'targetId':_0x2462e7['id'],..._0x2462e7[_0x550daf(0x1ff)]===undefined?{}:{'requestedUrlObserved':_0x2462e7[_0x550daf(0x1ff)]},..._0x2462e7[_0x550daf(0x210)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x259870)}});}function buildLookupCommand(_0x1189f8){const _0x3c7d8d=a154_0x35308d,_0x10b867='\x27'+_0x1189f8[_0x3c7d8d(0x214)](/'/g,_0x3c7d8d(0x1f7))+'\x27';return _0x3c7d8d(0x221)+_0x10b867+'\x20--format\x20compress';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a154_0x5ccc77=a154_0x5128;function a154_0x5128(_0x5eeae4,_0x14da4f){_0x5eeae4=_0x5eeae4-0x103;const _0x51d2ff=a154_0x51d2();let _0x5128de=_0x51d2ff[_0x5eeae4];return _0x5128de;}(function(_0x553ecd,_0x3b3b98){const _0x2800c2=a154_0x5128,_0x719ea9=_0x553ecd();while(!![]){try{const _0x59d7f4=parseInt(_0x2800c2(0x12c))/0x1+parseInt(_0x2800c2(0x148))/0x2+parseInt(_0x2800c2(0x130))/0x3+-parseInt(_0x2800c2(0x126))/0x4*(parseInt(_0x2800c2(0x10c))/0x5)+-parseInt(_0x2800c2(0x118))/0x6+parseInt(_0x2800c2(0x135))/0x7+-parseInt(_0x2800c2(0x12f))/0x8*(-parseInt(_0x2800c2(0x10d))/0x9);if(_0x59d7f4===_0x3b3b98)break;else _0x719ea9['push'](_0x719ea9['shift']());}catch(_0x10dcd3){_0x719ea9['push'](_0x719ea9['shift']());}}}(a154_0x51d2,0x99ff3));function a154_0x51d2(){const _0x4b4008=['Created\x20menu\x20folder\x20','\x20has\x20resources.','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','after','\x20has\x20unexpected\x20parent\x20','sort','\x22\x20with\x20a\x20platform-generated\x20path.','stringify','failed','childrenCount','group-create','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','length','77768PJyChN','\x20is\x20not\x20empty.','label','hash','\x20has\x20an\x20unexpected\x20sort.','trim','369452wOwvPs','parent-id','\x20unexpectedly\x20owns\x20a\x20page.','11640rkAmkn','3329739CexHUf','Created\x20menu\x20','appCode','<platform-generated>','rabetbase\x20menu\x20list\x20--format\x20json','3853388WLCMiY','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','resources','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','pageId','parentId','\x20has\x20an\x20unexpected\x20label.','create','/smartapi/menu/create','verify\x20folder\x20creation','\x20is\x20not\x20visible.',';\x20verify\x20it\x20before\x20retrying.','folder','write','verification','Folder\x20','str','type','isSafeInteger','194918OaTHsW','create\x20folder','flagMissing','POST','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','Would\x20create\x20empty\x20folder\x20\x22','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','\x20is\x20missing\x20from\x20menu\x20list.','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','Created\x20folder\x20','cookie','menu\x20list','\x20is\x20not\x20type\x20folder.','280UhVkkT','1053bQorJe','menu_create_response_invalid','visible','menu','string','get','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','create-response-validation','path','\x20may\x20exist\x20online\x20at\x20path\x20','Menu\x20create\x20response\x20for\x20folder\x20','3468120bKBWCH'];a154_0x51d2=function(){return _0x4b4008;};return a154_0x51d2();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a154_0x5ccc77(0x14b),'path':a154_0x5ccc77(0x13d)}];export const menuGroupCreate={'service':a154_0x5ccc77(0x110),'command':a154_0x5ccc77(0x123),'description':a154_0x5ccc77(0x138),'risk':a154_0x5ccc77(0x142),'structuredErrors':!![],'flags':[{'name':'label','type':'string','required':!![],'description':'Folder\x20label'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2c6fe0){validateCreateInput(_0x2c6fe0);},async 'dryRun'(_0x5e2acd){const _0x27b08c=a154_0x5ccc77,_0xb6b371=await buildCreatePlan(_0x5e2acd,!![]),_0x4ba33f=_0xb6b371[_0x27b08c(0x11c)];return menuDryRunResult(_0xb6b371,{'method':_0x27b08c(0x14b),'url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x4ba33f['parentId']),'label':_0x4ba33f[_0x27b08c(0x128)],'type':_0x27b08c(0x141),'visible':!![],'sort':_0x4ba33f[_0x27b08c(0x11e)],'extend':{}},'description':_0x27b08c(0x104)+String(_0x4ba33f[_0x27b08c(0x128)])+_0x27b08c(0x11f)});},async 'execute'(_0x27e893){const _0x277549=a154_0x5ccc77;validateCreateInput(_0x27e893);const _0x5bc299=await buildCreatePlan(_0x27e893,![]),_0x2c9bcd=_0x5bc299['after'];await recheckMutationSnapshot(_0x27e893,_0x5bc299,'create\x20folder');let _0x222153;try{_0x222153=await createMenuEntity(_0x27e893[_0x277549(0x132)],_0x27e893[_0x277549(0x109)],{'parentId':toApiParentId(_0x2c9bcd[_0x277549(0x13a)]),'label':String(_0x2c9bcd['label']),'type':_0x277549(0x141),'visible':!![],'sort':Number(_0x2c9bcd[_0x277549(0x11e)]),'extend':{}});}catch(_0x38b238){const _0x4d5c9a=mapMenuApiError(_0x38b238,_0x277549(0x149));throw menuFailure(_0x4d5c9a,_0x5bc299,{'stage':_0x277549(0x13c),'failed':{}});}const _0x5ba283=Number(_0x222153['id']);if(!Number[_0x277549(0x147)](_0x5ba283)||_0x5ba283<=0x0){const _0x3c1854=menuError(_0x277549(0x10e),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.',_0x277549(0x124));throw menuFailure(_0x3c1854,_0x5bc299,{'stage':_0x277549(0x114),'failed':{'createdId':_0x222153['id']??null},'warnings':[_0x277549(0x113)],'verification':{'status':_0x277549(0x121),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json'}});}const _0xc72ec3=typeof _0x222153[_0x277549(0x115)]===_0x277549(0x111)?_0x222153[_0x277549(0x115)]:'';if(!_0xc72ec3[_0x277549(0x12b)]()){const _0x450005=menuError(_0x277549(0x10e),_0x277549(0x117)+_0x5ba283+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.',_0x277549(0x103));throw menuFailure(_0x450005,_0x5bc299,{'stage':_0x277549(0x114),'succeeded':[{'id':_0x5ba283,'created':!![]}],'failed':{'id':_0x5ba283,'generatedPathConfirmed':![]},'warnings':[_0x277549(0x144)+_0x5ba283+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x2c9bcd,'id':_0x5ba283,'path':_0xc72ec3},'verification':{'status':_0x277549(0x121),'lookupCommand':_0x277549(0x134),'targetId':_0x5ba283}});}let _0x397a12;try{_0x397a12=await fetchMenuSnapshot(_0x27e893[_0x277549(0x132)],_0x27e893[_0x277549(0x109)]);}catch(_0x14a251){const _0x587bd5=describeMenuErrorCause(_0x14a251,_0x277549(0x13e),_0x5ba283),_0x4d0c8c=asVerificationError(_0x14a251,_0x277549(0x144)+_0x5ba283+'\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts');throw menuFailure(_0x4d0c8c,_0x5bc299,{'stage':'verification','succeeded':[{'id':_0x5ba283,'created':!![],'path':_0xc72ec3}],'failed':{'id':_0x5ba283,'finalFactsConfirmed':![],..._0x587bd5},'warnings':[_0x277549(0x144)+_0x5ba283+_0x277549(0x116)+JSON[_0x277549(0x120)](_0xc72ec3)+_0x277549(0x140)],'after':{..._0x2c9bcd,'id':_0x5ba283,'path':_0xc72ec3},'verification':{'status':_0x277549(0x121),'lookupCommand':_0x277549(0x134),'targetId':_0x5ba283}});}const _0x1fde1b=_0x397a12['byId'][_0x277549(0x112)](_0x5ba283);let _0x15f986;try{assertVerified(Boolean(_0x1fde1b),'Created\x20folder\x20'+_0x5ba283+_0x277549(0x106)),_0x15f986=_0x1fde1b,assertVerified(_0x15f986[_0x277549(0x146)]===_0x277549(0x141),_0x277549(0x131)+_0x5ba283+_0x277549(0x10b)),assertVerified(_0x15f986['label']===_0x2c9bcd[_0x277549(0x128)],'Created\x20folder\x20'+_0x5ba283+_0x277549(0x13b)),assertVerified(_0x15f986[_0x277549(0x115)]===_0xc72ec3&&Boolean(_0x15f986[_0x277549(0x115)][_0x277549(0x12b)]()),_0x277549(0x108)+_0x5ba283+_0x277549(0x11b)),assertVerified(_0x15f986[_0x277549(0x10f)]===!![],_0x277549(0x108)+_0x5ba283+_0x277549(0x13f)),assertVerified(_0x15f986[_0x277549(0x137)][_0x277549(0x125)]===0x0,_0x277549(0x108)+_0x5ba283+_0x277549(0x11a)),assertVerified(_0x15f986[_0x277549(0x122)]===0x0,'Created\x20folder\x20'+_0x5ba283+_0x277549(0x127)),assertVerified(_0x15f986[_0x277549(0x11e)]===_0x2c9bcd[_0x277549(0x11e)],_0x277549(0x108)+_0x5ba283+_0x277549(0x12a)),assertVerified(_0x15f986[_0x277549(0x13a)]===_0x2c9bcd['parentId'],_0x277549(0x108)+_0x5ba283+_0x277549(0x11d)+(_0x15f986[_0x277549(0x13a)]??'root')+'.'),assertVerified(_0x15f986[_0x277549(0x139)]==null,_0x277549(0x108)+_0x5ba283+_0x277549(0x12e));const _0x3ca332=_0x15f986[_0x277549(0x13a)]==null?undefined:requireFolder(_0x397a12,_0x15f986['parentId']);assertVerified(_0x15f986['depth']===(_0x3ca332?_0x3ca332['depth']+0x1:0x0),_0x277549(0x108)+_0x5ba283+_0x277549(0x107));}catch(_0x45f500){const _0x75a2f=describeMenuErrorCause(_0x45f500,'verify\x20folder\x20creation',_0x5ba283),_0x21c0b8=asVerificationError(_0x45f500,_0x277549(0x144)+_0x5ba283+_0x277549(0x136));throw menuFailure(_0x21c0b8,_0x5bc299,{'stage':_0x277549(0x143),'succeeded':[{'id':_0x5ba283,'created':!![],'path':_0xc72ec3}],'failed':{'id':_0x5ba283,'finalFactsConfirmed':![],..._0x75a2f},'warnings':[_0x277549(0x144)+_0x5ba283+_0x277549(0x105)],'after':_0x1fde1b??{..._0x2c9bcd,'id':_0x5ba283,'path':_0xc72ec3},'verification':{'status':'failed','lookupCommand':_0x277549(0x134),'targetId':_0x5ba283}});}const _0x3addbf=mutationResult({..._0x5bc299,'after':_0x15f986,'dryRun':![],'succeeded':[{'id':_0x5ba283,'type':_0x277549(0x141),'path':_0xc72ec3}],'verification':{'checkedBy':_0x277549(0x10a),'snapshotHash':_0x397a12[_0x277549(0x129)],'folder':!![],'path':_0xc72ec3,'emptyResources':!![]}});return{'ok':!![],'data':_0x3addbf,'message':_0x277549(0x119)+_0x5ba283+'.'};}};function validateCreateInput(_0x339613){const _0x11a3d9=a154_0x5ccc77,_0x2c87f8=_0x339613['str']('label')[_0x11a3d9(0x12b)]();if(!_0x2c87f8)throw CliErrors[_0x11a3d9(0x14a)]('label');parseParentId(_0x339613,_0x11a3d9(0x12d)),validateSort(_0x339613);}async function buildCreatePlan(_0xeab3,_0xd5ab44){const _0x4ef724=a154_0x5ccc77,_0x49d46f=await fetchMutationSnapshot(_0xeab3,_0x4ef724(0x149)),_0x627873=parseParentId(_0xeab3,_0x4ef724(0x12d))??null;if(_0x627873!=null)requireFolder(_0x49d46f,_0x627873);const _0x55f8c8=validateSort(_0xeab3),_0x5724c7=_0x55f8c8??nextSiblingSort(_0x49d46f,_0x627873,_0x4ef724(0x141)),_0x50a128=_0xeab3[_0x4ef724(0x145)](_0x4ef724(0x128))[_0x4ef724(0x12b)]();return mutationResult({'operation':'group-create','selector':{'label':_0x50a128,'parentId':_0x627873},'before':null,'after':{'id':null,'parentId':_0x627873,'label':_0x50a128,'path':_0x4ef724(0x133),'type':_0x4ef724(0x141),'visible':!![],'sort':_0x5724c7,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0xd5ab44,'backend':[...BACKEND],'plannedActions':[{'stage':'create-folder','method':'POST','path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x627873),'label':_0x50a128,'type':_0x4ef724(0x141),'visible':!![],'sort':_0x5724c7,'extend':{}}}],'snapshotHash':_0x49d46f['hash'],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
|
|
1
|
+
const a155_0x274cb6=a155_0x55cd;(function(_0x39623b,_0xd333c2){const _0x202b27=a155_0x55cd,_0x28ef9d=_0x39623b();while(!![]){try{const _0x233c2d=parseInt(_0x202b27(0x219))/0x1*(parseInt(_0x202b27(0x20d))/0x2)+-parseInt(_0x202b27(0x1ed))/0x3*(parseInt(_0x202b27(0x1f4))/0x4)+parseInt(_0x202b27(0x1e7))/0x5+parseInt(_0x202b27(0x1d8))/0x6*(parseInt(_0x202b27(0x21a))/0x7)+-parseInt(_0x202b27(0x211))/0x8*(parseInt(_0x202b27(0x1fa))/0x9)+parseInt(_0x202b27(0x20f))/0xa+-parseInt(_0x202b27(0x1fd))/0xb*(parseInt(_0x202b27(0x205))/0xc);if(_0x233c2d===_0xd333c2)break;else _0x28ef9d['push'](_0x28ef9d['shift']());}catch(_0x5d7559){_0x28ef9d['push'](_0x28ef9d['shift']());}}}(a155_0x22db,0xdd6c4));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a155_0x274cb6(0x1e5),'path':'/smartapi/menu/create'}];function a155_0x55cd(_0x2cb7a2,_0x5320f7){_0x2cb7a2=_0x2cb7a2-0x1d8;const _0x22db1d=a155_0x22db();let _0x55cd64=_0x22db1d[_0x2cb7a2];return _0x55cd64;}export const menuGroupCreate={'service':a155_0x274cb6(0x1ec),'command':'group-create','description':a155_0x274cb6(0x1f5),'risk':a155_0x274cb6(0x1f8),'structuredErrors':!![],'flags':[{'name':a155_0x274cb6(0x215),'type':a155_0x274cb6(0x200),'required':!![],'description':a155_0x274cb6(0x217)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2893d7){validateCreateInput(_0x2893d7);},async 'dryRun'(_0x1ece61){const _0x54447f=a155_0x274cb6,_0x2cb855=await buildCreatePlan(_0x1ece61,!![]),_0x248e67=_0x2cb855[_0x54447f(0x202)];return menuDryRunResult(_0x2cb855,{'method':_0x54447f(0x1e5),'url':_0x54447f(0x1dc),'body':{'parentId':toApiParentId(_0x248e67[_0x54447f(0x1db)]),'label':_0x248e67[_0x54447f(0x215)],'type':_0x54447f(0x1f3),'visible':!![],'sort':_0x248e67[_0x54447f(0x1fe)],'extend':{}},'description':_0x54447f(0x1f2)+String(_0x248e67[_0x54447f(0x215)])+'\x22\x20with\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x23df9b){const _0x3de5b0=a155_0x274cb6;validateCreateInput(_0x23df9b);const _0x74c4fb=await buildCreatePlan(_0x23df9b,![]),_0x6ba41d=_0x74c4fb['after'];await recheckMutationSnapshot(_0x23df9b,_0x74c4fb,_0x3de5b0(0x1ff));let _0x33d55f;try{_0x33d55f=await createMenuEntity(_0x23df9b[_0x3de5b0(0x1eb)],_0x23df9b[_0x3de5b0(0x1ef)],{'parentId':toApiParentId(_0x6ba41d['parentId']),'label':String(_0x6ba41d[_0x3de5b0(0x215)]),'type':_0x3de5b0(0x1f3),'visible':!![],'sort':Number(_0x6ba41d[_0x3de5b0(0x1fe)]),'extend':{}});}catch(_0x11da3b){const _0x5b7136=mapMenuApiError(_0x11da3b,_0x3de5b0(0x1ff));throw menuFailure(_0x5b7136,_0x74c4fb,{'stage':_0x3de5b0(0x21b),'failed':{}});}const _0x5b7acb=Number(_0x33d55f['id']);if(!Number[_0x3de5b0(0x1e1)](_0x5b7acb)||_0x5b7acb<=0x0){const _0x4dea72=menuError('menu_create_response_invalid','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.',_0x3de5b0(0x1dd));throw menuFailure(_0x4dea72,_0x74c4fb,{'stage':_0x3de5b0(0x1e3),'failed':{'createdId':_0x33d55f['id']??null},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.'],'verification':{'status':_0x3de5b0(0x21d),'lookupCommand':_0x3de5b0(0x218)}});}const _0xaf8452=typeof _0x33d55f['path']===_0x3de5b0(0x200)?_0x33d55f[_0x3de5b0(0x21c)]:'';if(!_0xaf8452[_0x3de5b0(0x20c)]()){const _0x1c5e47=menuError('menu_create_response_invalid',_0x3de5b0(0x216)+_0x5b7acb+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.',_0x3de5b0(0x214));throw menuFailure(_0x1c5e47,_0x74c4fb,{'stage':'create-response-validation','succeeded':[{'id':_0x5b7acb,'created':!![]}],'failed':{'id':_0x5b7acb,'generatedPathConfirmed':![]},'warnings':['Folder\x20'+_0x5b7acb+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x6ba41d,'id':_0x5b7acb,'path':_0xaf8452},'verification':{'status':_0x3de5b0(0x21d),'lookupCommand':_0x3de5b0(0x218),'targetId':_0x5b7acb}});}let _0x301e86;try{_0x301e86=await fetchMenuSnapshot(_0x23df9b['appCode'],_0x23df9b['cookie']);}catch(_0x12e047){const _0x1a4592=describeMenuErrorCause(_0x12e047,_0x3de5b0(0x1e0),_0x5b7acb),_0x4dc517=asVerificationError(_0x12e047,_0x3de5b0(0x208)+_0x5b7acb+_0x3de5b0(0x1f1));throw menuFailure(_0x4dc517,_0x74c4fb,{'stage':_0x3de5b0(0x213),'succeeded':[{'id':_0x5b7acb,'created':!![],'path':_0xaf8452}],'failed':{'id':_0x5b7acb,'finalFactsConfirmed':![],..._0x1a4592},'warnings':['Folder\x20'+_0x5b7acb+_0x3de5b0(0x21e)+JSON[_0x3de5b0(0x20a)](_0xaf8452)+_0x3de5b0(0x1ee)],'after':{..._0x6ba41d,'id':_0x5b7acb,'path':_0xaf8452},'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x5b7acb}});}const _0x598a56=_0x301e86[_0x3de5b0(0x207)][_0x3de5b0(0x1fb)](_0x5b7acb);let _0x233719;try{assertVerified(Boolean(_0x598a56),_0x3de5b0(0x204)+_0x5b7acb+'\x20is\x20missing\x20from\x20menu\x20list.'),_0x233719=_0x598a56,assertVerified(_0x233719[_0x3de5b0(0x1e2)]===_0x3de5b0(0x1f3),_0x3de5b0(0x1fc)+_0x5b7acb+'\x20is\x20not\x20type\x20folder.'),assertVerified(_0x233719[_0x3de5b0(0x215)]===_0x6ba41d[_0x3de5b0(0x215)],_0x3de5b0(0x204)+_0x5b7acb+_0x3de5b0(0x1da)),assertVerified(_0x233719['path']===_0xaf8452&&Boolean(_0x233719['path']['trim']()),_0x3de5b0(0x204)+_0x5b7acb+'\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.'),assertVerified(_0x233719[_0x3de5b0(0x1e8)]===!![],_0x3de5b0(0x204)+_0x5b7acb+_0x3de5b0(0x1df)),assertVerified(_0x233719[_0x3de5b0(0x212)][_0x3de5b0(0x1e4)]===0x0,_0x3de5b0(0x204)+_0x5b7acb+'\x20has\x20resources.'),assertVerified(_0x233719[_0x3de5b0(0x1de)]===0x0,_0x3de5b0(0x204)+_0x5b7acb+'\x20is\x20not\x20empty.'),assertVerified(_0x233719[_0x3de5b0(0x1fe)]===_0x6ba41d[_0x3de5b0(0x1fe)],_0x3de5b0(0x204)+_0x5b7acb+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0x233719['parentId']===_0x6ba41d[_0x3de5b0(0x1db)],_0x3de5b0(0x204)+_0x5b7acb+_0x3de5b0(0x20b)+(_0x233719[_0x3de5b0(0x1db)]??_0x3de5b0(0x1ea))+'.'),assertVerified(_0x233719[_0x3de5b0(0x1f6)]==null,_0x3de5b0(0x204)+_0x5b7acb+_0x3de5b0(0x201));const _0x1a2ed8=_0x233719['parentId']==null?undefined:requireFolder(_0x301e86,_0x233719[_0x3de5b0(0x1db)]);assertVerified(_0x233719[_0x3de5b0(0x1f7)]===(_0x1a2ed8?_0x1a2ed8['depth']+0x1:0x0),_0x3de5b0(0x204)+_0x5b7acb+'\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.');}catch(_0x1b0e1e){const _0x1931b6=describeMenuErrorCause(_0x1b0e1e,_0x3de5b0(0x1e0),_0x5b7acb),_0x4a26ca=asVerificationError(_0x1b0e1e,_0x3de5b0(0x208)+_0x5b7acb+_0x3de5b0(0x1e9));throw menuFailure(_0x4a26ca,_0x74c4fb,{'stage':_0x3de5b0(0x213),'succeeded':[{'id':_0x5b7acb,'created':!![],'path':_0xaf8452}],'failed':{'id':_0x5b7acb,'finalFactsConfirmed':![],..._0x1931b6},'warnings':['Folder\x20'+_0x5b7acb+_0x3de5b0(0x209)],'after':_0x598a56??{..._0x6ba41d,'id':_0x5b7acb,'path':_0xaf8452},'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x5b7acb}});}const _0x197867=mutationResult({..._0x74c4fb,'after':_0x233719,'dryRun':![],'succeeded':[{'id':_0x5b7acb,'type':'folder','path':_0xaf8452}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x301e86['hash'],'folder':!![],'path':_0xaf8452,'emptyResources':!![]}});return{'ok':!![],'data':_0x197867,'message':'Created\x20menu\x20folder\x20'+_0x5b7acb+'.'};}};function a155_0x22db(){const _0x3b7285=['Folder\x20label','rabetbase\x20menu\x20list\x20--format\x20json','1103892umTBLm','28WKriNd','create','path','failed','\x20may\x20exist\x20online\x20at\x20path\x20','1333938HizpAd','group-create','\x20has\x20an\x20unexpected\x20label.','parentId','/smartapi/menu/create','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','childrenCount','\x20is\x20not\x20visible.','verify\x20folder\x20creation','isSafeInteger','type','create-response-validation','length','POST','hash','8387950cagSuW','visible','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','root','appCode','menu','9597SzrnCg',';\x20verify\x20it\x20before\x20retrying.','cookie','flagMissing','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','Would\x20create\x20empty\x20folder\x20\x22','folder','1908eiUNuL','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','pageId','depth','write','<platform-generated>','473193ffTVVU','get','Created\x20menu\x20','23007083WNtlzZ','sort','create\x20folder','string','\x20unexpectedly\x20owns\x20a\x20page.','after','create-folder','Created\x20folder\x20','12jLwtUK','str','byId','Folder\x20','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','stringify','\x20has\x20unexpected\x20parent\x20','trim','2bxtYSx','parent-id','14319970FypjAf','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','88dDnbFM','resources','verification','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','label','Menu\x20create\x20response\x20for\x20folder\x20'];a155_0x22db=function(){return _0x3b7285;};return a155_0x22db();}function validateCreateInput(_0x3ce802){const _0x484299=a155_0x274cb6,_0x4e8fad=_0x3ce802[_0x484299(0x206)](_0x484299(0x215))[_0x484299(0x20c)]();if(!_0x4e8fad)throw CliErrors[_0x484299(0x1f0)](_0x484299(0x215));parseParentId(_0x3ce802,_0x484299(0x20e)),validateSort(_0x3ce802);}async function buildCreatePlan(_0x456364,_0x193a61){const _0x14cd3f=a155_0x274cb6,_0x2cb42a=await fetchMutationSnapshot(_0x456364,_0x14cd3f(0x1ff)),_0x208da4=parseParentId(_0x456364,_0x14cd3f(0x20e))??null;if(_0x208da4!=null)requireFolder(_0x2cb42a,_0x208da4);const _0x3a1709=validateSort(_0x456364),_0x1fd707=_0x3a1709??nextSiblingSort(_0x2cb42a,_0x208da4,_0x14cd3f(0x1f3)),_0x7174e4=_0x456364[_0x14cd3f(0x206)](_0x14cd3f(0x215))['trim']();return mutationResult({'operation':_0x14cd3f(0x1d9),'selector':{'label':_0x7174e4,'parentId':_0x208da4},'before':null,'after':{'id':null,'parentId':_0x208da4,'label':_0x7174e4,'path':_0x14cd3f(0x1f9),'type':_0x14cd3f(0x1f3),'visible':!![],'sort':_0x1fd707,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x193a61,'backend':[...BACKEND],'plannedActions':[{'stage':_0x14cd3f(0x203),'method':_0x14cd3f(0x1e5),'path':_0x14cd3f(0x1dc),'body':{'parentId':toApiParentId(_0x208da4),'label':_0x7174e4,'type':_0x14cd3f(0x1f3),'visible':!![],'sort':_0x1fd707,'extend':{}}}],'snapshotHash':_0x2cb42a[_0x14cd3f(0x1e6)],'warnings':[_0x14cd3f(0x210)]});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a156_0xfe809a=a156_0x4335;(function(_0x677009,_0x214c0c){const _0xdba4ef=a156_0x4335,_0x118887=_0x677009();while(!![]){try{const _0x4b8a6c=parseInt(_0xdba4ef(0xff))/0x1+-parseInt(_0xdba4ef(0xfa))/0x2+-parseInt(_0xdba4ef(0x114))/0x3+-parseInt(_0xdba4ef(0xf3))/0x4+parseInt(_0xdba4ef(0x10b))/0x5*(-parseInt(_0xdba4ef(0xfb))/0x6)+parseInt(_0xdba4ef(0x115))/0x7+parseInt(_0xdba4ef(0x100))/0x8*(parseInt(_0xdba4ef(0x104))/0x9);if(_0x4b8a6c===_0x214c0c)break;else _0x118887['push'](_0x118887['shift']());}catch(_0x51c7e7){_0x118887['push'](_0x118887['shift']());}}}(a156_0x4971,0x71f88));function a156_0x4971(){const _0x4ecb65=['9456YDfRov','New\x20folder\x20label','trim','\x20is\x20type\x20\x22','397247ShbuaI','6064VsPGpt','label','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','Menu\x20','12681JLtCfK','Would\x20update\x20folder\x20','parent-id','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','cookie','Folder\x20','menu_not_folder','195AtiamT','update\x20folder','write','folder','verification','verify\x20folder\x20update','string','parentId','failed','2593890yeiNYP','3577119klltXl','\x20already\x20matches\x20the\x20requested\x20state.','hash','type','\x20label\x20update\x20did\x20not\x20take\x20effect.','str','\x20sort\x20update\x20did\x20not\x20take\x20effect.','group-update','Updated\x20folder\x20','sort','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','POST','selector','validation','update','Update\x20request\x20for\x20folder\x20','774328cyZewY','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','menu','unknown','/smartapi/menu/update','appCode','\x20is\x20no\x20longer\x20type\x20folder.','779572sHjWcY'];a156_0x4971=function(){return _0x4ecb65;};return a156_0x4971();}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';function a156_0x4335(_0x42a079,_0x1844f1){_0x42a079=_0x42a079-0xf3;const _0x4971dc=a156_0x4971();let _0x4335c1=_0x4971dc[_0x42a079];return _0x4335c1;}import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a156_0xfe809a(0xf7)}];export const menuGroupUpdate={'service':a156_0xfe809a(0xf5),'command':a156_0xfe809a(0x11c),'description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a156_0xfe809a(0x10d),'structuredErrors':!![],'rejectedFlags':[{'name':a156_0xfe809a(0x106),'message':a156_0xfe809a(0xf4),'hint':a156_0xfe809a(0x11f)}],'flags':[MENU_ID_FLAG,{'name':a156_0xfe809a(0x101),'type':a156_0xfe809a(0x111),'description':a156_0xfe809a(0xfc)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3f9e31){validateUpdateInput(_0x3f9e31);},async 'dryRun'(_0x1bbeec){const _0x2e43db=a156_0xfe809a;validateUpdateInput(_0x1bbeec);const {plan:_0x35af96,patch:_0x23ec07}=await buildUpdatePlan(_0x1bbeec,!![]);return menuDryRunResult(_0x35af96,{'method':_0x2e43db(0x120),'url':_0x2e43db(0xf7),'body':_0x23ec07,'description':_0x2e43db(0x105)+_0x35af96[_0x2e43db(0x121)]['id']+'.'});},async 'execute'(_0x5810b4){const _0x2486bc=a156_0xfe809a;validateUpdateInput(_0x5810b4);const {plan:_0xe6706d,patch:_0x39b11e,noChanges:_0x4f82dc}=await buildUpdatePlan(_0x5810b4,![]),_0x2c10ec=Number(_0xe6706d['selector']['id']),_0x575bcf=await recheckMutationSnapshot(_0x5810b4,_0xe6706d,_0x2486bc(0x10c),_0x2c10ec);if(!_0x4f82dc)try{await updateMenuEntity(_0x5810b4['appCode'],_0x5810b4[_0x2486bc(0x108)],_0x39b11e);}catch(_0x3cca78){const _0x424aa2=mapMenuApiError(_0x3cca78,'update\x20folder',_0x2c10ec);throw menuFailure(_0x424aa2,_0xe6706d,{'stage':_0x2486bc(0x123),'failed':{'id':_0x2c10ec}});}let _0x58adcc=_0x575bcf,_0xfe0e26;try{!_0x4f82dc&&(_0x58adcc=await fetchMenuSnapshot(_0x5810b4[_0x2486bc(0xf8)],_0x5810b4[_0x2486bc(0x108)])),_0xfe0e26=requireMenu(_0x58adcc,_0x2c10ec),verifyPatch(_0xfe0e26,_0x39b11e),_0xfe0e26['parentId']!=null&&requireFolder(_0x58adcc,_0xfe0e26[_0x2486bc(0x112)]);}catch(_0x522f86){const _0x2841d0=describeMenuErrorCause(_0x522f86,_0x2486bc(0x110),_0x2c10ec),_0x3e3365=asVerificationError(_0x522f86,_0x2486bc(0x124)+_0x2c10ec+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x3e3365,_0xe6706d,{'stage':_0x2486bc(0x10f),'succeeded':[{'id':_0x2c10ec,'updateRequested':!_0x4f82dc,'skipped':_0x4f82dc}],'failed':{'id':_0x2c10ec,'requestedStateConfirmed':![],..._0x2841d0},'warnings':['The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':_0x2486bc(0x113),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x2c10ec}});}const _0x3cde39=mutationResult({..._0xe6706d,'after':_0xfe0e26,'dryRun':![],'succeeded':[{'id':_0x2c10ec,'updated':!_0x4f82dc,'skipped':_0x4f82dc}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x58adcc[_0x2486bc(0x117)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x3cde39,'message':_0x4f82dc?_0x2486bc(0x109)+_0x2c10ec+_0x2486bc(0x116):_0x2486bc(0x11d)+_0x2c10ec+'.'};}};function validateUpdateInput(_0x3360e2){const _0x42173c=a156_0xfe809a;validateExactId(_0x3360e2);if(hasFlag(_0x3360e2,_0x42173c(0x106)))throw CliErrors[_0x42173c(0x122)]('Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.');if(!hasFlag(_0x3360e2,_0x42173c(0x101))&&!hasFlag(_0x3360e2,_0x42173c(0x11e)))throw CliErrors['validation'](_0x42173c(0x107));if(hasFlag(_0x3360e2,_0x42173c(0x101))&&!_0x3360e2['str']('label')[_0x42173c(0xfd)]())throw CliErrors['validation']('--label\x20cannot\x20be\x20empty.');validateSort(_0x3360e2);}async function buildUpdatePlan(_0x7f5b68,_0x13d4d2){const _0x8201b5=a156_0xfe809a,_0x1a9851=validateExactId(_0x7f5b68),_0x1fa59f=await fetchMutationSnapshot(_0x7f5b68,_0x8201b5(0x10c),_0x1a9851),_0x398f46=requireMenu(_0x1fa59f,_0x1a9851);if(_0x398f46[_0x8201b5(0x118)]!==_0x8201b5(0x10e))throw menuError(_0x8201b5(0x10a),_0x8201b5(0x103)+_0x1a9851+_0x8201b5(0xfe)+(_0x398f46['type']||_0x8201b5(0xf6))+'\x22,\x20not\x20folder.',_0x8201b5(0x102));assertExpectedState(_0x7f5b68,_0x398f46);const _0x224abd={'id':_0x1a9851},_0x476320={..._0x398f46};if(hasFlag(_0x7f5b68,_0x8201b5(0x101))){const _0x57d00a=_0x7f5b68[_0x8201b5(0x11a)](_0x8201b5(0x101))[_0x8201b5(0xfd)]();_0x224abd[_0x8201b5(0x101)]=_0x57d00a,_0x476320[_0x8201b5(0x101)]=_0x57d00a;}if(hasFlag(_0x7f5b68,_0x8201b5(0x11e))){const _0x4394aa=validateSort(_0x7f5b68);_0x224abd[_0x8201b5(0x11e)]=_0x4394aa,_0x476320['sort']=_0x4394aa;}const _0x1f5b47=sameRequestedState(_0x398f46,_0x476320),_0x3eb13a=_0x1f5b47?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0x224abd,'noChanges':_0x1f5b47,'plan':mutationResult({'operation':'group-update','selector':{'id':_0x1a9851},'before':_0x398f46,'after':_0x476320,'dryRun':_0x13d4d2,'backend':[...BACKEND],'snapshotHash':_0x1fa59f[_0x8201b5(0x117)],'warnings':_0x3eb13a})};}function sameRequestedState(_0x1e768d,_0x6997d0){const _0xd6b7d1=a156_0xfe809a;return _0x1e768d['label']===_0x6997d0[_0xd6b7d1(0x101)]&&_0x1e768d[_0xd6b7d1(0x11e)]===_0x6997d0[_0xd6b7d1(0x11e)];}function verifyPatch(_0xee9f91,_0x4fead2){const _0x11b64a=a156_0xfe809a;assertVerified(_0xee9f91[_0x11b64a(0x118)]==='folder','Menu\x20'+_0xee9f91['id']+_0x11b64a(0xf9)),_0x4fead2[_0x11b64a(0x101)]!==undefined&&assertVerified(_0xee9f91[_0x11b64a(0x101)]===_0x4fead2[_0x11b64a(0x101)],'Folder\x20'+_0xee9f91['id']+_0x11b64a(0x119)),_0x4fead2[_0x11b64a(0x11e)]!==undefined&&assertVerified(_0xee9f91[_0x11b64a(0x11e)]===_0x4fead2[_0x11b64a(0x11e)],_0x11b64a(0x109)+_0xee9f91['id']+_0x11b64a(0x11b));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a157_0x166c(){const _0x210091=['258570XMiifK','22945YmqOhI','588zTYMId','175pIlMzX','119742eLawrT','1506tfHZtD','92pszMtw','3779487ekdEWw','2641630dccwTC','104792KUYkUs'];a157_0x166c=function(){return _0x210091;};return a157_0x166c();}(function(_0xd542b,_0x52b1fc){const _0x169e0f=a157_0x3cab,_0x338990=_0xd542b();while(!![]){try{const _0x383651=parseInt(_0x169e0f(0xaa))/0x1+parseInt(_0x169e0f(0xae))/0x2+-parseInt(_0x169e0f(0xaf))/0x3*(-parseInt(_0x169e0f(0xa6))/0x4)+-parseInt(_0x169e0f(0xab))/0x5*(parseInt(_0x169e0f(0xac))/0x6)+-parseInt(_0x169e0f(0xad))/0x7*(parseInt(_0x169e0f(0xa9))/0x8)+parseInt(_0x169e0f(0xa7))/0x9+parseInt(_0x169e0f(0xa8))/0xa;if(_0x383651===_0x52b1fc)break;else _0x338990['push'](_0x338990['shift']());}catch(_0xc72ee2){_0x338990['push'](_0x338990['shift']());}}}(a157_0x166c,0x39d60));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';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';import{menuSubappAssetsStatus}from'../../commands/menu/subapp-assets-status.js';import{menuSubappAssetsUpdate}from'../../commands/menu/subapp-assets-update.js';function a157_0x3cab(_0x28f2af,_0x8fec37){_0x28f2af=_0x28f2af-0xa6;const _0x166c2a=a157_0x166c();let _0x3cabcc=_0x166c2a[_0x28f2af];return _0x3cabcc;}export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuSubappAssetsStatus,menuSubappAssetsUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a158_0x16ff(_0x218d12,_0x46183d){_0x218d12=_0x218d12-0x10d;const _0x5e2864=a158_0x5e28();let _0x16ffe0=_0x5e2864[_0x218d12];return _0x16ffe0;}const a158_0x38e107=a158_0x16ff;function a158_0x5e28(){const _0x44b8da=['total','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','536379mJBIjA','cookie','boolean','8193064aoVWJm','hash','appCode','menu','menus','23132691neFCQa','read','2WgWMig','bool','13926FnllQx','35jyVzNN','859860HSHYDh','4320498YYAKIE','203004JVSVaX','map','No\x20menus\x20found.','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing'];a158_0x5e28=function(){return _0x44b8da;};return a158_0x5e28();}(function(_0x8fb921,_0x43c194){const _0x49be7e=a158_0x16ff,_0x28fd7c=_0x8fb921();while(!![]){try{const _0x570c5a=parseInt(_0x49be7e(0x116))/0x1+-parseInt(_0x49be7e(0x110))/0x2*(parseInt(_0x49be7e(0x11c))/0x3)+-parseInt(_0x49be7e(0x114))/0x4+parseInt(_0x49be7e(0x113))/0x5*(parseInt(_0x49be7e(0x112))/0x6)+-parseInt(_0x49be7e(0x115))/0x7+-parseInt(_0x49be7e(0x11f))/0x8+parseInt(_0x49be7e(0x10e))/0x9;if(_0x570c5a===_0x43c194)break;else _0x28fd7c['push'](_0x28fd7c['shift']());}catch(_0x27aeeb){_0x28fd7c['push'](_0x28fd7c['shift']());}}}(a158_0x5e28,0xb830d));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a158_0x38e107(0x122),'command':'list','description':a158_0x38e107(0x11b),'risk':a158_0x38e107(0x10f),'flags':[APPCODE_FLAG_OPTIONAL,{'name':'verbose','type':a158_0x38e107(0x11e),'description':a158_0x38e107(0x119)}],async 'execute'(_0x2ba7bd){const _0x53502e=a158_0x38e107,_0x9ce7f4=_0x2ba7bd[_0x53502e(0x111)]('verbose'),_0x178dd4=await fetchMenuSnapshot(_0x2ba7bd[_0x53502e(0x121)],_0x2ba7bd[_0x53502e(0x11d)],{'verbose':_0x9ce7f4});return{'ok':!![],'data':{'total':_0x178dd4[_0x53502e(0x11a)],'snapshotHash':_0x178dd4[_0x53502e(0x120)],'menus':_0x178dd4[_0x53502e(0x10d)][_0x53502e(0x117)](toMenuListItem)},'message':_0x178dd4[_0x53502e(0x11a)]===0x0?_0x53502e(0x118):'Found\x20'+_0x178dd4[_0x53502e(0x11a)]+'\x20menu(s)'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a159_0x4fbbc7=a159_0x3567;(function(_0x588cd9,_0x358d8d){const _0x3a4057=a159_0x3567,_0x1c9385=_0x588cd9();while(!![]){try{const _0x14b1cb=-parseInt(_0x3a4057(0x1e7))/0x1*(-parseInt(_0x3a4057(0x1f2))/0x2)+-parseInt(_0x3a4057(0x1ca))/0x3*(-parseInt(_0x3a4057(0x1c6))/0x4)+parseInt(_0x3a4057(0x1d3))/0x5+parseInt(_0x3a4057(0x1cd))/0x6*(parseInt(_0x3a4057(0x1c9))/0x7)+-parseInt(_0x3a4057(0x1de))/0x8*(parseInt(_0x3a4057(0x1d5))/0x9)+-parseInt(_0x3a4057(0x1c5))/0xa+-parseInt(_0x3a4057(0x1c4))/0xb;if(_0x14b1cb===_0x358d8d)break;else _0x1c9385['push'](_0x1c9385['shift']());}catch(_0x29d7e0){_0x1c9385['push'](_0x1c9385['shift']());}}}(a159_0x2f68,0x1c6c4));function a159_0x3567(_0x65e5d1,_0x5cb64d){_0x65e5d1=_0x65e5d1-0x1c4;const _0x2f6873=a159_0x2f68();let _0x35677f=_0x2f6873[_0x65e5d1];return _0x35677f;}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':a159_0x4fbbc7(0x1f4),'path':a159_0x4fbbc7(0x1e0)}];export const menuMove={'service':a159_0x4fbbc7(0x1ee),'command':a159_0x4fbbc7(0x1f1),'description':a159_0x4fbbc7(0x1df),'risk':a159_0x4fbbc7(0x1e4),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x83c228){validateMoveInput(_0x83c228);},async 'dryRun'(_0x2b6990){const _0x3e8648=a159_0x4fbbc7,{plan:_0x530b17,patch:_0x291a62}=await buildMovePlan(_0x2b6990,!![]);return menuDryRunResult(_0x530b17,{'method':_0x3e8648(0x1f4),'url':'/smartapi/menu/update','body':{..._0x291a62,'appCode':_0x2b6990[_0x3e8648(0x1d9)]},'description':_0x3e8648(0x1d2)+_0x291a62['id']+'.'});},async 'execute'(_0x5a4d55){const _0x1fb82a=a159_0x4fbbc7;validateMoveInput(_0x5a4d55);const {plan:_0x308eb1,patch:_0x2262c7,noChanges:_0x20d384,snapshot:_0x5becda}=await buildMovePlan(_0x5a4d55,![]),_0x5df78e=_0x2262c7['id'];if(!_0x20d384)try{await updateMenuEntity(_0x5a4d55[_0x1fb82a(0x1d9)],_0x5a4d55[_0x1fb82a(0x1eb)],_0x2262c7);}catch(_0x498eb3){const _0x56381d=mapMenuApiError(_0x498eb3,_0x1fb82a(0x1f1),_0x5df78e);throw menuFailure(_0x56381d,_0x308eb1,{'stage':_0x1fb82a(0x1e5),'failed':{'id':_0x5df78e},'warnings':[_0x1fb82a(0x1cc)],'verification':{'status':_0x1fb82a(0x1e1),'targetId':_0x5df78e,'lookupCommand':_0x1fb82a(0x1f0)}});}let _0x56317c,_0x5c9271;try{_0x56317c=_0x20d384?_0x5becda:await fetchMenuSnapshot(_0x5a4d55[_0x1fb82a(0x1d9)],_0x5a4d55['cookie']),_0x5c9271=requireMenu(_0x56317c,_0x5df78e),verifyMove(_0x5c9271,_0x308eb1[_0x1fb82a(0x1dc)]),_0x5c9271[_0x1fb82a(0x1d6)]!==null&&requireFolder(_0x56317c,_0x5c9271[_0x1fb82a(0x1d6)]);}catch(_0x52629e){const _0x2fc819=describeMenuErrorCause(_0x52629e,_0x1fb82a(0x1ec),_0x5df78e),_0x1b3acb=asVerificationError(_0x52629e,_0x1fb82a(0x1cf)+_0x5df78e+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x1b3acb,_0x308eb1,{'stage':_0x1fb82a(0x1d4),'succeeded':[{'id':_0x5df78e,'updateRequested':!_0x20d384,'skipped':_0x20d384}],'failed':{'id':_0x5df78e,'requestedStateConfirmed':![],..._0x2fc819},'warnings':[_0x1fb82a(0x1e2)],'verification':{'status':_0x1fb82a(0x1e1),'targetId':_0x5df78e,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}const _0x77b3b2=mutationResult({..._0x308eb1,'after':_0x5c9271,'dryRun':![],'succeeded':[{'id':_0x5df78e,'updated':!_0x20d384,'skipped':_0x20d384}],'verification':{'checkedBy':_0x1fb82a(0x1d0),'snapshotHash':_0x56317c[_0x1fb82a(0x1ed)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x77b3b2,'message':_0x20d384?'Menu\x20'+_0x5df78e+_0x1fb82a(0x1d1):_0x1fb82a(0x1ce)+_0x5df78e+'.'};}};function validateMoveInput(_0x4c8df1){const _0x54abfe=a159_0x4fbbc7;validateExactId(_0x4c8df1),parseParentId(_0x4c8df1,_0x54abfe(0x1ea),{'required':!![]}),parseParentId(_0x4c8df1,_0x54abfe(0x1e6),{'required':!![]}),validateSort(_0x4c8df1);}function a159_0x2f68(){const _0x463b7b=['74530laKoFg','24NcBteM','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','7TjCAJY','98247SVGmVV','\x20parent\x20changed:\x20expected\x20','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','291234mzbnYA','Moved\x20menu\x20','Move\x20request\x20for\x20menu\x20','menu\x20list','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','Would\x20move\x20menu\x20','530840oGHYQs','verification','9btaUFl','parentId','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','Menu\x20','appCode','folder','\x20is\x20no\x20longer\x20a\x20leaf.','after',',\x20current\x20','1167928etPCtx','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','/smartapi/menu/update','failed','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','sort','write','update','expect-parent-id','1DEZigJ','type','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','parent-id','cookie','verify\x20menu\x20move','hash','menu','move-menu','rabetbase\x20menu\x20list\x20--format\x20compress','move','180024fnaYIA','childrenCount','POST','1884839eMiMAg'];a159_0x2f68=function(){return _0x463b7b;};return a159_0x2f68();}async function buildMovePlan(_0x44afec,_0x4a0d17){const _0x3d8f0e=a159_0x4fbbc7,_0x2219a8=validateExactId(_0x44afec),_0x118135=parseParentId(_0x44afec,'parent-id',{'required':!![]}),_0x14716a=parseParentId(_0x44afec,'expect-parent-id',{'required':!![]}),_0x16efd6=validateSort(_0x44afec),_0x170c43=await fetchMutationSnapshot(_0x44afec,'move\x20menu',_0x2219a8),_0x5cbaea=requireMenu(_0x170c43,_0x2219a8);if(_0x5cbaea[_0x3d8f0e(0x1e8)]==='folder'||_0x5cbaea[_0x3d8f0e(0x1f3)]!==0x0)throw menuError('menu_move_source_not_leaf',_0x3d8f0e(0x1d8)+_0x2219a8+'\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.',_0x3d8f0e(0x1c7));if(_0x5cbaea[_0x3d8f0e(0x1d6)]!==_0x14716a)throw menuError('menu_state_drift',_0x3d8f0e(0x1d8)+_0x2219a8+_0x3d8f0e(0x1cb)+formatParent(_0x14716a)+_0x3d8f0e(0x1dd)+formatParent(_0x5cbaea['parentId'])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');_0x118135!==null&&requireFolder(_0x170c43,_0x118135);const _0x972555=_0x16efd6??(_0x5cbaea['parentId']===_0x118135?_0x5cbaea[_0x3d8f0e(0x1e3)]??0x0:nextSiblingSort(_0x170c43,_0x118135,'menu')),_0x36fbfa={..._0x5cbaea,'parentId':_0x118135,'sort':_0x972555},_0x12f4d9={'id':_0x2219a8,'parentId':toApiParentId(_0x118135),'sort':_0x972555},_0x34dba8=_0x5cbaea[_0x3d8f0e(0x1d6)]===_0x118135&&_0x5cbaea[_0x3d8f0e(0x1e3)]===_0x972555;return{'patch':_0x12f4d9,'noChanges':_0x34dba8,'snapshot':_0x170c43,'plan':mutationResult({'operation':_0x3d8f0e(0x1f1),'selector':{'id':_0x2219a8,'parentId':_0x118135},'before':_0x5cbaea,'after':_0x36fbfa,'dryRun':_0x4a0d17,'backend':[...BACKEND],'plannedActions':[{'stage':_0x3d8f0e(0x1ef),'method':_0x3d8f0e(0x1f4),'path':_0x3d8f0e(0x1e0),'body':{..._0x12f4d9,'appCode':_0x44afec[_0x3d8f0e(0x1d9)]}}],'snapshotHash':_0x170c43[_0x3d8f0e(0x1ed)],'warnings':_0x34dba8?[_0x3d8f0e(0x1c8)]:[]})};}function verifyMove(_0x21d745,_0x1f2876){const _0x2b6908=a159_0x4fbbc7;assertVerified(_0x21d745[_0x2b6908(0x1e8)]!==_0x2b6908(0x1da),_0x2b6908(0x1d8)+_0x21d745['id']+'\x20is\x20now\x20type\x20folder.'),assertVerified(_0x21d745['childrenCount']===0x0,_0x2b6908(0x1d8)+_0x21d745['id']+_0x2b6908(0x1db)),assertVerified(_0x21d745[_0x2b6908(0x1d6)]===_0x1f2876[_0x2b6908(0x1d6)],_0x2b6908(0x1d8)+_0x21d745['id']+_0x2b6908(0x1d7)),assertVerified(_0x21d745['sort']===_0x1f2876[_0x2b6908(0x1e3)],_0x2b6908(0x1d8)+_0x21d745['id']+_0x2b6908(0x1e9));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a159_0x18727b=a159_0x41b0;(function(_0x2b49e0,_0x5e2a30){const _0x59602a=a159_0x41b0,_0x3cf02d=_0x2b49e0();while(!![]){try{const _0x2a4222=-parseInt(_0x59602a(0x120))/0x1*(parseInt(_0x59602a(0x129))/0x2)+parseInt(_0x59602a(0x132))/0x3*(parseInt(_0x59602a(0x109))/0x4)+parseInt(_0x59602a(0x11a))/0x5*(-parseInt(_0x59602a(0x10b))/0x6)+parseInt(_0x59602a(0x100))/0x7+parseInt(_0x59602a(0xdc))/0x8+-parseInt(_0x59602a(0x102))/0x9*(-parseInt(_0x59602a(0x112))/0xa)+-parseInt(_0x59602a(0x124))/0xb;if(_0x2a4222===_0x5e2a30)break;else _0x3cf02d['push'](_0x3cf02d['shift']());}catch(_0xe37bb9){_0x3cf02d['push'](_0x3cf02d['shift']());}}}(a159_0x2e14,0x74513));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';function a159_0x41b0(_0x363931,_0x31e2e1){_0x363931=_0x363931-0xd8;const _0x2e148e=a159_0x2e14();let _0x41b0cb=_0x2e148e[_0x363931];return _0x41b0cb;}const BACKEND=[{'method':a159_0x18727b(0xef),'path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a159_0x18727b(0x10a),'command':'regroup-start','description':a159_0x18727b(0x12c),'risk':a159_0x18727b(0x128),'structuredErrors':!![],'flags':[{'name':'label','type':a159_0x18727b(0x119),'required':!![],'description':a159_0x18727b(0x10d)},{'name':a159_0x18727b(0x121),'type':'string','required':!![],'description':a159_0x18727b(0xe5)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x463760){validateRegroupInput(_0x463760);},async 'dryRun'(_0x2573aa){const _0x2726c8=a159_0x18727b;validateRegroupInput(_0x2573aa);const _0x30ab38=await buildRegroupPlan(_0x2573aa,!![]);return menuDryRunResult(_0x30ab38[_0x2726c8(0xe6)],{'method':_0x2726c8(0xef),'url':_0x2726c8(0x12a),'body':_0x30ab38[_0x2726c8(0xe7)],'description':'Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20'+JSON[_0x2726c8(0xf3)](_0x30ab38['label'])+'\x20and\x20regroup\x20menu\x20ids\x20'+_0x30ab38[_0x2726c8(0xf6)][_0x2726c8(0x10f)](',\x20')+_0x2726c8(0xdd)});},async 'execute'(_0x3ebb09){const _0x253709=a159_0x18727b;validateRegroupInput(_0x3ebb09);const _0x346e24=await buildRegroupPlan(_0x3ebb09,![]);await recheckMutationSnapshot(_0x3ebb09,_0x346e24[_0x253709(0xe6)],_0x253709(0x127));const _0x1800ad=buildMenuLookupCommand(_0x3ebb09[_0x253709(0x110)]);let _0x289151,_0x221524;try{_0x289151=await startMenuRegroup(_0x3ebb09[_0x253709(0xf9)],_0x346e24[_0x253709(0xe7)]),_0x221524=normalizeAsyncTask(_0x289151);}catch(_0x5630ed){const _0x1918df=await inspectRegroupAfterFailure(_0x3ebb09['appCode'],_0x3ebb09[_0x253709(0xf9)],_0x346e24[_0x253709(0x111)],_0x346e24['menuIds']),_0x2074d9=typeof _0x289151?.[_0x253709(0x126)]==='string'&&_0x289151['taskId'][_0x253709(0x103)]()?_0x289151['taskId']['trim']():null,_0x39e493=_0x2074d9?{'command':buildAsyncTaskStatusCommand(_0x2074d9,_0x3ebb09[_0x253709(0x110)])}:null,_0x3ea78d=mapMenuApiError(_0x5630ed,'start\x20menu\x20regroup');throw menuFailure(_0x3ea78d,_0x346e24['plan'],{'stage':_0x253709(0xf5),'failed':{'menuIds':_0x346e24['menuIds'],'taskId':_0x2074d9,'groupingApplied':_0x1918df['applied']?!![]:'unconfirmed'},'after':_0x1918df[_0x253709(0xfe)]??null,'warnings':['The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.',..._0x1918df['readbackError']?['Regroup\x20readback\x20also\x20failed:\x20'+_0x1918df[_0x253709(0xe0)]]:[],..._0x2074d9?[_0x253709(0xd8)]:[]],'verification':{'status':_0x253709(0x134),'groupingApplied':_0x1918df[_0x253709(0xfe)]?!![]:_0x253709(0xf8),'taskId':_0x2074d9,'query':_0x39e493,'lookupCommand':_0x1800ad}});}const _0x286fd1=buildAsyncTaskStatusCommand(_0x221524[_0x253709(0x126)],_0x3ebb09[_0x253709(0x110)]);let _0x40c264=null,_0x376f99=null,_0x311302=null;try{_0x40c264=await fetchMenuSnapshot(_0x3ebb09['appCode'],_0x3ebb09[_0x253709(0xf9)]),_0x376f99=findAppliedRegroup(_0x40c264,_0x346e24[_0x253709(0x111)],_0x346e24[_0x253709(0xf6)]);}catch(_0x1a3ef2){_0x311302=_0x1a3ef2 instanceof Error?_0x1a3ef2[_0x253709(0xfb)]:String(_0x1a3ef2);}const _0x3249db=mutationResult({..._0x346e24[_0x253709(0xe6)],'after':_0x376f99??null,'dryRun':![],'succeeded':[{'groupId':_0x376f99?.[_0x253709(0xeb)]['id']??null,'menuIds':_0x346e24[_0x253709(0xf6)],'taskId':_0x221524['taskId'],'status':_0x221524[_0x253709(0x123)],'groupingApplied':_0x376f99?!![]:_0x253709(0xf8)}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x40c264?.[_0x253709(0xf0)]??null,'groupId':_0x376f99?.[_0x253709(0xeb)]['id']??null,'groupingApplied':_0x376f99?!![]:_0x253709(0xf8),'readbackError':_0x311302,'lookupCommand':_0x1800ad},'warnings':[..._0x346e24[_0x253709(0xe6)][_0x253709(0x12e)],...!_0x376f99?[unconfirmedRegroupWarning(_0x221524)]:[],..._0x311302?[_0x253709(0xfc)+_0x311302]:[]]}),_0x39efae=_0x221524['status']==='SUCCESS'&&!_0x376f99?_0x253709(0x10e)+_0x221524[_0x253709(0x126)]+_0x253709(0x122):'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0x221524);return{'ok':!![],'message':_0x39efae,'data':{..._0x3249db,'task':_0x221524,'query':_0x221524[_0x253709(0x101)]?null:{'command':_0x286fd1}}};}};function validateRegroupInput(_0x5e53c3){const _0x4a05a4=a159_0x18727b;if(!_0x5e53c3[_0x4a05a4(0x11e)](_0x4a05a4(0x111))[_0x4a05a4(0x103)]())throw CliErrors[_0x4a05a4(0x10c)](_0x4a05a4(0x111));parseMenuIds(_0x5e53c3[_0x4a05a4(0x11e)](_0x4a05a4(0x121)));}function parseMenuIds(_0x47a7f3){const _0x25f264=a159_0x18727b,_0x1445ea=_0x47a7f3[_0x25f264(0xd9)](',')[_0x25f264(0x11b)](_0x178f0f=>_0x178f0f['trim']());if(_0x1445ea[_0x25f264(0xe8)]===0x0||_0x1445ea[_0x25f264(0x133)](_0x518800=>!_0x518800))throw CliErrors[_0x25f264(0xee)](_0x25f264(0x137));const _0x425bd0=_0x1445ea['map'](_0x12ed16=>{const _0x3fef0b=_0x25f264;if(!/^\d+$/['test'](_0x12ed16))throw CliErrors[_0x3fef0b(0xee)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x5075f6=Number(_0x12ed16);if(!Number[_0x3fef0b(0xfd)](_0x5075f6)||_0x5075f6<=0x0)throw CliErrors[_0x3fef0b(0xee)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');return _0x5075f6;});if(new Set(_0x425bd0)[_0x25f264(0x12b)]!==_0x425bd0['length'])throw CliErrors['validation'](_0x25f264(0x131));if(_0x425bd0[_0x25f264(0xe8)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x25f264(0xee)](_0x25f264(0xdf)+MAX_REGROUP_MENU_COUNT+'\x20menus\x20per\x20regroup\x20request.');return _0x425bd0;}function buildMenuLookupCommand(_0x389327){const _0x536764=a159_0x18727b,_0x22da5a='\x27'+_0x389327[_0x536764(0xda)](/'/g,'\x27\x5c\x27\x27')+'\x27';return CLI_BIN_NAME+'\x20menu\x20list\x20--appcode\x20'+_0x22da5a+'\x20--format\x20compress';}function unconfirmedRegroupWarning(_0x38450c){const _0x420920=a159_0x18727b;if(_0x38450c[_0x420920(0x123)]===_0x420920(0x135))return _0x420920(0x105);if(_0x38450c[_0x420920(0x123)]===_0x420920(0x12f))return'The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x38450c['knownStatus'])return'The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';return _0x420920(0xea);}function a159_0x2e14(){const _0x1d4303=['taskId','start\x20regroup','write','548DdPmbq','/smartapi/menu/regroup','size','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','parentId','warnings','FAILED','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','375933stBgkf','some','failed','SUCCESS','Root\x20folder\x20label\x20','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','split','replace','plan\x20regroup','3520504UKQHNW',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','Menu\x20','--menu-ids\x20supports\x20at\x20most\x20','readbackError','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','<platform-generated>','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','plan','input','length','sort','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','group','toLowerCase','menu_regroup_target_not_leaf','validation','POST','hash','childrenCount','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','stringify','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','regroup-submit','menuIds','byId','unconfirmed','cookie','menu_regroup_label_conflict','message','Regroup\x20readback\x20failed:\x20','isSafeInteger','applied','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','3521455igYdFH','isTerminal','103698yYmfIE','trim','Menus\x20','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','<new-group-id>','submit-regroup-task','menus','20eWKmEq','menu','168690LtWZss','flagMissing','Label\x20of\x20the\x20new\x20root\x20folder','Regroup\x20task\x20','join','appCode','label','140IxJows','childrenIds','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','regroup-start','filter','string','60mJpIgR','map','type','menu_regroup_target_label_missing','str','get','973hQIJaO','menu-ids','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','status','7156314rxddla','folder'];a159_0x2e14=function(){return _0x1d4303;};return a159_0x2e14();}async function buildRegroupPlan(_0x12fde5,_0x20001e){const _0x323f32=a159_0x18727b,_0x319386=_0x12fde5['str'](_0x323f32(0x111))[_0x323f32(0x103)](),_0x56b260=parseMenuIds(_0x12fde5[_0x323f32(0x11e)](_0x323f32(0x121))),_0x3ffc5f=await fetchMutationSnapshot(_0x12fde5,_0x323f32(0xdb)),_0x45c045=_0x56b260['map'](_0x53d02f=>requireMenu(_0x3ffc5f,_0x53d02f));for(const _0x1a68f6 of _0x45c045){if(_0x1a68f6[_0x323f32(0x11c)][_0x323f32(0x103)]()[_0x323f32(0xec)]()===_0x323f32(0x125)||_0x1a68f6[_0x323f32(0xf1)]>0x0)throw menuError(_0x323f32(0xed),'Menu\x20'+_0x1a68f6['id']+_0x323f32(0x116),_0x323f32(0x115));if(!_0x1a68f6[_0x323f32(0x111)]['trim']())throw menuError(_0x323f32(0x11d),_0x323f32(0xde)+_0x1a68f6['id']+_0x323f32(0xe3),_0x323f32(0x130));}const _0x5ef35a=findAppliedRegroup(_0x3ffc5f,_0x319386,_0x56b260);if(_0x5ef35a)throw menuError('menu_regroup_already_applied',_0x323f32(0x104)+_0x56b260[_0x323f32(0x10f)](',\x20')+_0x323f32(0xe2)+_0x5ef35a['group']['id']+'\x20('+JSON['stringify'](_0x319386)+').',_0x323f32(0xf4));const _0xc40fa3=_0x3ffc5f[_0x323f32(0x108)]['filter'](_0x42f43e=>_0x42f43e[_0x323f32(0x12d)]==null&&_0x42f43e[_0x323f32(0x11c)][_0x323f32(0x103)]()['toLowerCase']()===_0x323f32(0x125)&&_0x42f43e[_0x323f32(0x111)]===_0x319386);if(_0xc40fa3[_0x323f32(0xe8)]>0x0)throw menuError(_0x323f32(0xfa),_0x323f32(0x136)+JSON[_0x323f32(0xf3)](_0x319386)+_0x323f32(0xe1)+_0xc40fa3[_0x323f32(0x11b)](_0x10563a=>_0x10563a['id'])['join'](',\x20')+'.',_0x323f32(0xff));const _0x5b4789={'appCode':_0x12fde5[_0x323f32(0x110)],'menuGroups':[{'label':_0x319386,'type':'folder','children':_0x45c045[_0x323f32(0x11b)](_0x248d03=>({'id':_0x248d03['id'],'label':_0x248d03[_0x323f32(0x111)]}))}]},_0x14118d=mutationResult({'operation':_0x323f32(0x117),'selector':{'label':_0x319386,'menuIds':_0x56b260},'before':{'menus':_0x45c045},'after':{'group':{'id':null,'parentId':null,'label':_0x319386,'path':_0x323f32(0xe4),'type':_0x323f32(0x125),'childrenIds':_0x56b260},'children':_0x45c045[_0x323f32(0x11b)](_0x258f7e=>({'id':_0x258f7e['id'],'label':_0x258f7e['label'],'beforeParentId':_0x258f7e[_0x323f32(0x12d)],'afterParentId':_0x323f32(0x106)}))},'dryRun':_0x20001e,'backend':[...BACKEND],'plannedActions':[{'stage':_0x323f32(0x107),'method':'POST','path':_0x323f32(0x12a),'body':_0x5b4789}],'snapshotHash':_0x3ffc5f[_0x323f32(0xf0)],'warnings':[_0x323f32(0xf2),_0x323f32(0x114)]});return{'label':_0x319386,'menuIds':_0x56b260,'input':_0x5b4789,'plan':_0x14118d};}function findAppliedRegroup(_0x2f8cb8,_0x20f69c,_0x2b882a){const _0x900a0b=a159_0x18727b,_0x3335e3=_0x2b882a['map'](_0x3382f1=>_0x2f8cb8[_0x900a0b(0xf7)]['get'](_0x3382f1))[_0x900a0b(0x118)](_0x65ba88=>Boolean(_0x65ba88));if(_0x3335e3[_0x900a0b(0xe8)]!==_0x2b882a['length'])return null;const _0x496e58=_0x3335e3[0x0]?.[_0x900a0b(0x12d)];if(_0x496e58==null||_0x3335e3[_0x900a0b(0x133)](_0x52cecd=>_0x52cecd[_0x900a0b(0x12d)]!==_0x496e58))return null;const _0x22f4d0=_0x2f8cb8[_0x900a0b(0xf7)][_0x900a0b(0x11f)](_0x496e58);if(!_0x22f4d0||_0x22f4d0['parentId']!=null||_0x22f4d0[_0x900a0b(0x11c)][_0x900a0b(0x103)]()[_0x900a0b(0xec)]()!=='folder'||_0x22f4d0[_0x900a0b(0x111)]!==_0x20f69c)return null;const _0x37b406=[..._0x2b882a][_0x900a0b(0xe9)]((_0x1e86b5,_0x46a8ca)=>_0x1e86b5-_0x46a8ca),_0x6f7cca=[..._0x22f4d0[_0x900a0b(0x113)]][_0x900a0b(0xe9)]((_0x2a6aab,_0x32de8c)=>_0x2a6aab-_0x32de8c);if(JSON[_0x900a0b(0xf3)](_0x6f7cca)!==JSON[_0x900a0b(0xf3)](_0x37b406))return null;return{'group':_0x22f4d0,'children':_0x3335e3};}async function inspectRegroupAfterFailure(_0x4474c9,_0x1ab510,_0x3bc013,_0x2bd355){try{const _0x43853a=await fetchMenuSnapshot(_0x4474c9,_0x1ab510);return{'applied':findAppliedRegroup(_0x43853a,_0x3bc013,_0x2bd355),'readbackError':null};}catch(_0x38eded){return{'applied':null,'readbackError':_0x38eded instanceof Error?_0x38eded['message']:String(_0x38eded)};}}
|
|
1
|
+
const a160_0xb68fb7=a160_0x510b;(function(_0x55544b,_0x653f5a){const _0x595e9d=a160_0x510b,_0x4e2579=_0x55544b();while(!![]){try{const _0x4a82a0=parseInt(_0x595e9d(0x1e6))/0x1+-parseInt(_0x595e9d(0x1f4))/0x2+parseInt(_0x595e9d(0x200))/0x3*(-parseInt(_0x595e9d(0x20e))/0x4)+parseInt(_0x595e9d(0x211))/0x5+parseInt(_0x595e9d(0x1bd))/0x6+parseInt(_0x595e9d(0x1cb))/0x7+-parseInt(_0x595e9d(0x1de))/0x8*(-parseInt(_0x595e9d(0x1fc))/0x9);if(_0x4a82a0===_0x653f5a)break;else _0x4e2579['push'](_0x4e2579['shift']());}catch(_0x25d98a){_0x4e2579['push'](_0x4e2579['shift']());}}}(a160_0x54c6,0x8dd66));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';function a160_0x510b(_0xc88ef2,_0x1cc330){_0xc88ef2=_0xc88ef2-0x1b9;const _0x54c667=a160_0x54c6();let _0x510b60=_0x54c667[_0xc88ef2];return _0x510b60;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a160_0xb68fb7(0x1ca),'path':a160_0xb68fb7(0x1d8)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a160_0xb68fb7(0x1d9),'command':a160_0xb68fb7(0x1d0),'description':a160_0xb68fb7(0x1da),'risk':a160_0xb68fb7(0x1dd),'structuredErrors':!![],'flags':[{'name':a160_0xb68fb7(0x1e7),'type':a160_0xb68fb7(0x203),'required':!![],'description':a160_0xb68fb7(0x1e0)},{'name':a160_0xb68fb7(0x1f0),'type':a160_0xb68fb7(0x203),'required':!![],'description':a160_0xb68fb7(0x210)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1c22a5){validateRegroupInput(_0x1c22a5);},async 'dryRun'(_0x2649ef){const _0x2f40ba=a160_0xb68fb7;validateRegroupInput(_0x2649ef);const _0x27d7fb=await buildRegroupPlan(_0x2649ef,!![]);return menuDryRunResult(_0x27d7fb['plan'],{'method':_0x2f40ba(0x1ca),'url':_0x2f40ba(0x1d8),'body':_0x27d7fb[_0x2f40ba(0x1db)],'description':'Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20'+JSON['stringify'](_0x27d7fb['label'])+_0x2f40ba(0x204)+_0x27d7fb[_0x2f40ba(0x1c7)][_0x2f40ba(0x1c4)](',\x20')+_0x2f40ba(0x1bf)});},async 'execute'(_0x493b00){const _0x1ae46c=a160_0xb68fb7;validateRegroupInput(_0x493b00);const _0x11d965=await buildRegroupPlan(_0x493b00,![]);await recheckMutationSnapshot(_0x493b00,_0x11d965[_0x1ae46c(0x1f1)],'start\x20regroup');const _0x5f5cdd=buildMenuLookupCommand(_0x493b00[_0x1ae46c(0x1f6)]);let _0x2c994a,_0x10f58e;try{_0x2c994a=await startMenuRegroup(_0x493b00[_0x1ae46c(0x20a)],_0x11d965[_0x1ae46c(0x1db)]),_0x10f58e=normalizeAsyncTask(_0x2c994a);}catch(_0x91297c){const _0x1c2089=await inspectRegroupAfterFailure(_0x493b00[_0x1ae46c(0x1f6)],_0x493b00[_0x1ae46c(0x20a)],_0x11d965[_0x1ae46c(0x1e7)],_0x11d965[_0x1ae46c(0x1c7)]),_0x358130=typeof _0x2c994a?.[_0x1ae46c(0x1e4)]===_0x1ae46c(0x203)&&_0x2c994a[_0x1ae46c(0x1e4)][_0x1ae46c(0x218)]()?_0x2c994a['taskId'][_0x1ae46c(0x218)]():null,_0x1014e2=_0x358130?{'command':buildAsyncTaskStatusCommand(_0x358130,_0x493b00[_0x1ae46c(0x1f6)])}:null,_0x2c1723=mapMenuApiError(_0x91297c,_0x1ae46c(0x1c2));throw menuFailure(_0x2c1723,_0x11d965[_0x1ae46c(0x1f1)],{'stage':_0x1ae46c(0x209),'failed':{'menuIds':_0x11d965[_0x1ae46c(0x1c7)],'taskId':_0x358130,'groupingApplied':_0x1c2089[_0x1ae46c(0x1ef)]?!![]:'unconfirmed'},'after':_0x1c2089[_0x1ae46c(0x1ef)]??null,'warnings':[_0x1ae46c(0x20f),..._0x1c2089[_0x1ae46c(0x1e3)]?[_0x1ae46c(0x1eb)+_0x1c2089[_0x1ae46c(0x1e3)]]:[],..._0x358130?[_0x1ae46c(0x1ba)]:[]],'verification':{'status':_0x1ae46c(0x207),'groupingApplied':_0x1c2089['applied']?!![]:_0x1ae46c(0x20b),'taskId':_0x358130,'query':_0x1014e2,'lookupCommand':_0x5f5cdd}});}const _0x2577f5=buildAsyncTaskStatusCommand(_0x10f58e[_0x1ae46c(0x1e4)],_0x493b00['appCode']);let _0x524c28=null,_0x20ee92=null,_0x1f703c=null;try{_0x524c28=await fetchMenuSnapshot(_0x493b00[_0x1ae46c(0x1f6)],_0x493b00[_0x1ae46c(0x20a)]),_0x20ee92=findAppliedRegroup(_0x524c28,_0x11d965['label'],_0x11d965[_0x1ae46c(0x1c7)]);}catch(_0x5eedcf){_0x1f703c=_0x5eedcf instanceof Error?_0x5eedcf['message']:String(_0x5eedcf);}const _0x53e16a=mutationResult({..._0x11d965['plan'],'after':_0x20ee92??null,'dryRun':![],'succeeded':[{'groupId':_0x20ee92?.[_0x1ae46c(0x1c6)]['id']??null,'menuIds':_0x11d965[_0x1ae46c(0x1c7)],'taskId':_0x10f58e['taskId'],'status':_0x10f58e[_0x1ae46c(0x1ce)],'groupingApplied':_0x20ee92?!![]:'unconfirmed'}],'verification':{'checkedBy':_0x1ae46c(0x1ff),'snapshotHash':_0x524c28?.[_0x1ae46c(0x216)]??null,'groupId':_0x20ee92?.[_0x1ae46c(0x1c6)]['id']??null,'groupingApplied':_0x20ee92?!![]:'unconfirmed','readbackError':_0x1f703c,'lookupCommand':_0x5f5cdd},'warnings':[..._0x11d965[_0x1ae46c(0x1f1)][_0x1ae46c(0x1cf)],...!_0x20ee92?[unconfirmedRegroupWarning(_0x10f58e)]:[],..._0x1f703c?[_0x1ae46c(0x1bc)+_0x1f703c]:[]]}),_0x3829fc=_0x10f58e[_0x1ae46c(0x1ce)]==='SUCCESS'&&!_0x20ee92?_0x1ae46c(0x1bb)+_0x10f58e[_0x1ae46c(0x1e4)]+'\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.':_0x1ae46c(0x1c5)+asyncTaskMessage(_0x10f58e);return{'ok':!![],'message':_0x3829fc,'data':{..._0x53e16a,'task':_0x10f58e,'query':_0x10f58e[_0x1ae46c(0x1ea)]?null:{'command':_0x2577f5}}};}};function validateRegroupInput(_0x1fb405){const _0x34f067=a160_0xb68fb7;if(!_0x1fb405[_0x34f067(0x21a)](_0x34f067(0x1e7))[_0x34f067(0x218)]())throw CliErrors[_0x34f067(0x1c1)](_0x34f067(0x1e7));parseMenuIds(_0x1fb405['str'](_0x34f067(0x1f0)));}function parseMenuIds(_0x20623c){const _0x4ed920=a160_0xb68fb7,_0x4bd73e=_0x20623c['split'](',')[_0x4ed920(0x1ec)](_0x38ee25=>_0x38ee25[_0x4ed920(0x218)]());if(_0x4bd73e[_0x4ed920(0x1d1)]===0x0||_0x4bd73e[_0x4ed920(0x1e1)](_0x1f3919=>!_0x1f3919))throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x3957a6=_0x4bd73e[_0x4ed920(0x1ec)](_0x417246=>{const _0xe42979=_0x4ed920;if(!/^\d+$/[_0xe42979(0x1d7)](_0x417246))throw CliErrors[_0xe42979(0x1d6)](_0xe42979(0x1e8));const _0x3ede83=Number(_0x417246);if(!Number['isSafeInteger'](_0x3ede83)||_0x3ede83<=0x0)throw CliErrors['validation'](_0xe42979(0x1e8));return _0x3ede83;});if(new Set(_0x3957a6)[_0x4ed920(0x1d2)]!==_0x3957a6[_0x4ed920(0x1d1)])throw CliErrors[_0x4ed920(0x1d6)](_0x4ed920(0x1d5));if(_0x3957a6[_0x4ed920(0x1d1)]>MAX_REGROUP_MENU_COUNT)throw CliErrors['validation'](_0x4ed920(0x202)+MAX_REGROUP_MENU_COUNT+_0x4ed920(0x20c));return _0x3957a6;}function buildMenuLookupCommand(_0x5bff0c){const _0x31bf3d=a160_0xb68fb7,_0x51b869='\x27'+_0x5bff0c[_0x31bf3d(0x1e5)](/'/g,'\x27\x5c\x27\x27')+'\x27';return CLI_BIN_NAME+'\x20menu\x20list\x20--appcode\x20'+_0x51b869+'\x20--format\x20compress';}function unconfirmedRegroupWarning(_0x1b9ff7){const _0x5b2e60=a160_0xb68fb7;if(_0x1b9ff7[_0x5b2e60(0x1ce)]===_0x5b2e60(0x1e9))return _0x5b2e60(0x1f8);if(_0x1b9ff7[_0x5b2e60(0x1ce)]===_0x5b2e60(0x1fe))return _0x5b2e60(0x1df);if(_0x1b9ff7[_0x5b2e60(0x214)])return'The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';return _0x5b2e60(0x1dc);}async function buildRegroupPlan(_0x596010,_0x1cd359){const _0xa971ce=a160_0xb68fb7,_0x2cf40f=_0x596010[_0xa971ce(0x21a)](_0xa971ce(0x1e7))[_0xa971ce(0x218)](),_0xa78e74=parseMenuIds(_0x596010[_0xa971ce(0x21a)]('menu-ids')),_0x68d102=await fetchMutationSnapshot(_0x596010,_0xa971ce(0x215)),_0x375b8a=_0xa78e74['map'](_0x108ee6=>requireMenu(_0x68d102,_0x108ee6));for(const _0x15c75e of _0x375b8a){if(_0x15c75e[_0xa971ce(0x1c0)][_0xa971ce(0x218)]()['toLowerCase']()==='folder'||_0x15c75e['childrenCount']>0x0)throw menuError(_0xa971ce(0x213),_0xa971ce(0x219)+_0x15c75e['id']+_0xa971ce(0x1be),_0xa971ce(0x1fd));if(!_0x15c75e[_0xa971ce(0x1e7)][_0xa971ce(0x218)]())throw menuError(_0xa971ce(0x1d4),_0xa971ce(0x219)+_0x15c75e['id']+_0xa971ce(0x201),_0xa971ce(0x1b9));}const _0x345645=findAppliedRegroup(_0x68d102,_0x2cf40f,_0xa78e74);if(_0x345645)throw menuError(_0xa971ce(0x1ed),_0xa971ce(0x1c9)+_0xa78e74[_0xa971ce(0x1c4)](',\x20')+'\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20'+_0x345645[_0xa971ce(0x1c6)]['id']+'\x20('+JSON[_0xa971ce(0x1f3)](_0x2cf40f)+').',_0xa971ce(0x1f7));const _0x4551ca=_0x68d102[_0xa971ce(0x1ee)][_0xa971ce(0x1fa)](_0x54bde0=>_0x54bde0[_0xa971ce(0x1fb)]==null&&_0x54bde0[_0xa971ce(0x1c0)][_0xa971ce(0x218)]()['toLowerCase']()===_0xa971ce(0x1c3)&&_0x54bde0[_0xa971ce(0x1e7)]===_0x2cf40f);if(_0x4551ca[_0xa971ce(0x1d1)]>0x0)throw menuError(_0xa971ce(0x20d),_0xa971ce(0x206)+JSON[_0xa971ce(0x1f3)](_0x2cf40f)+_0xa971ce(0x1f5)+_0x4551ca[_0xa971ce(0x1ec)](_0x2eea4d=>_0x2eea4d['id'])[_0xa971ce(0x1c4)](',\x20')+'.',_0xa971ce(0x208));const _0x34f929={'appCode':_0x596010[_0xa971ce(0x1f6)],'menuGroups':[{'label':_0x2cf40f,'type':_0xa971ce(0x1c3),'children':_0x375b8a[_0xa971ce(0x1ec)](_0x1e451f=>({'id':_0x1e451f['id'],'label':_0x1e451f[_0xa971ce(0x1e7)]}))}]},_0x5bf345=mutationResult({'operation':_0xa971ce(0x1d0),'selector':{'label':_0x2cf40f,'menuIds':_0xa78e74},'before':{'menus':_0x375b8a},'after':{'group':{'id':null,'parentId':null,'label':_0x2cf40f,'path':_0xa971ce(0x1f9),'type':_0xa971ce(0x1c3),'childrenIds':_0xa78e74},'children':_0x375b8a['map'](_0x40c1ea=>({'id':_0x40c1ea['id'],'label':_0x40c1ea['label'],'beforeParentId':_0x40c1ea[_0xa971ce(0x1fb)],'afterParentId':_0xa971ce(0x1cc)}))},'dryRun':_0x1cd359,'backend':[...BACKEND],'plannedActions':[{'stage':_0xa971ce(0x1d3),'method':_0xa971ce(0x1ca),'path':_0xa971ce(0x1d8),'body':_0x34f929}],'snapshotHash':_0x68d102[_0xa971ce(0x216)],'warnings':[_0xa971ce(0x212),_0xa971ce(0x1f2)]});return{'label':_0x2cf40f,'menuIds':_0xa78e74,'input':_0x34f929,'plan':_0x5bf345};}function findAppliedRegroup(_0x8e3805,_0xea65ac,_0x2e9325){const _0x5a950a=a160_0xb68fb7,_0x9bea3b=_0x2e9325['map'](_0x27fb9b=>_0x8e3805['byId']['get'](_0x27fb9b))[_0x5a950a(0x1fa)](_0x4bbcd4=>Boolean(_0x4bbcd4));if(_0x9bea3b[_0x5a950a(0x1d1)]!==_0x2e9325[_0x5a950a(0x1d1)])return null;const _0x5b53bd=_0x9bea3b[0x0]?.[_0x5a950a(0x1fb)];if(_0x5b53bd==null||_0x9bea3b['some'](_0x6e110e=>_0x6e110e[_0x5a950a(0x1fb)]!==_0x5b53bd))return null;const _0xfce614=_0x8e3805[_0x5a950a(0x1c8)]['get'](_0x5b53bd);if(!_0xfce614||_0xfce614[_0x5a950a(0x1fb)]!=null||_0xfce614[_0x5a950a(0x1c0)]['trim']()[_0x5a950a(0x217)]()!==_0x5a950a(0x1c3)||_0xfce614[_0x5a950a(0x1e7)]!==_0xea65ac)return null;const _0x470e32=[..._0x2e9325]['sort']((_0x592434,_0x58a42c)=>_0x592434-_0x58a42c),_0x5c63ab=[..._0xfce614[_0x5a950a(0x1e2)]][_0x5a950a(0x1cd)]((_0x4d4f83,_0x5e8fad)=>_0x4d4f83-_0x5e8fad);if(JSON[_0x5a950a(0x1f3)](_0x5c63ab)!==JSON[_0x5a950a(0x1f3)](_0x470e32))return null;return{'group':_0xfce614,'children':_0x9bea3b};}function a160_0x54c6(){const _0x5ee1e3=['childrenIds','readbackError','taskId','replace','43240pRKRpm','label','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','SUCCESS','isTerminal','Regroup\x20readback\x20also\x20failed:\x20','map','menu_regroup_already_applied','menus','applied','menu-ids','plan','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','stringify','645544fXTfNq','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','appCode','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','<platform-generated>','filter','parentId','1854GQppQl','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','FAILED','menu\x20list','3CNUmgS','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','--menu-ids\x20supports\x20at\x20most\x20','string','\x20and\x20regroup\x20menu\x20ids\x20','message','Root\x20folder\x20label\x20','failed','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','regroup-submit','cookie','unconfirmed','\x20menus\x20per\x20regroup\x20request.','menu_regroup_label_conflict','4191848qPMVqu','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','1943965ZKfYSx','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','menu_regroup_target_not_leaf','knownStatus','plan\x20regroup','hash','toLowerCase','trim','Menu\x20','str','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','Regroup\x20task\x20','Regroup\x20readback\x20failed:\x20','1422150lODFJO','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','type','flagMissing','start\x20menu\x20regroup','folder','join','Regroup\x20task\x20accepted.\x20','group','menuIds','byId','Menus\x20','POST','7160132ncxGtg','<new-group-id>','sort','status','warnings','regroup-start','length','size','submit-regroup-task','menu_regroup_target_label_missing','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','validation','test','/smartapi/menu/regroup','menu','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','input','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','write','10088QtOXhR','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','Label\x20of\x20the\x20new\x20root\x20folder','some'];a160_0x54c6=function(){return _0x5ee1e3;};return a160_0x54c6();}async function inspectRegroupAfterFailure(_0x56703b,_0x4d3803,_0x41219e,_0x46c2bf){const _0x37d041=a160_0xb68fb7;try{const _0xe8f1f3=await fetchMenuSnapshot(_0x56703b,_0x4d3803);return{'applied':findAppliedRegroup(_0xe8f1f3,_0x41219e,_0x46c2bf),'readbackError':null};}catch(_0x1843a0){return{'applied':null,'readbackError':_0x1843a0 instanceof Error?_0x1843a0[_0x37d041(0x205)]:String(_0x1843a0)};}}
|