@lovrabet/rabetbase-cli 2.3.16-beta.4 → 2.3.16-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/lib/api/api-doc.d.ts +9 -0
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.d.ts +2 -0
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.d.ts +8 -0
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.d.ts +13 -0
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.d.ts +25 -0
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.d.ts +2 -0
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.d.ts +1 -0
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.d.ts +51 -0
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.d.ts +1 -0
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.d.ts +5 -0
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.d.ts +1 -0
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.d.ts +12 -0
- package/lib/cli-flags.js +1 -1
- package/lib/cli.d.ts +2 -0
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.d.ts +2 -0
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.d.ts +2 -0
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.d.ts +2 -0
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.d.ts +2 -0
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.d.ts +18 -0
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.d.ts +5 -0
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.d.ts +10 -0
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.d.ts +2 -0
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.d.ts +11 -0
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.d.ts +46 -0
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.d.ts +2 -0
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.d.ts +2 -0
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.d.ts +2 -0
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.d.ts +2 -0
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.d.ts +2 -0
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.d.ts +105 -0
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.d.ts +2 -0
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.d.ts +4 -0
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.d.ts +2 -0
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.d.ts +2 -0
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.d.ts +5 -0
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.d.ts +2 -0
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.d.ts +2 -0
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.d.ts +2 -0
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.d.ts +2 -0
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.d.ts +8 -0
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.d.ts +2 -0
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.d.ts +2 -0
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.d.ts +2 -0
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.d.ts +2 -0
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.d.ts +17 -0
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.d.ts +17 -0
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.d.ts +11 -0
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.d.ts +12 -0
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.d.ts +26 -0
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.d.ts +6 -0
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.d.ts +13 -0
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.d.ts +5 -0
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.d.ts +5 -0
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.d.ts +5 -0
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.d.ts +5 -0
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.d.ts +16 -0
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.d.ts +7 -0
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.d.ts +7 -0
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.d.ts +8 -0
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.d.ts +33 -0
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.d.ts +18 -0
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/capability.d.ts +11 -0
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.d.ts +2 -0
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.d.ts +2 -0
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.d.ts +26 -0
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.d.ts +27 -0
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.d.ts +3 -0
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.d.ts +2 -0
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.d.ts +2 -0
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.d.ts +2 -0
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.d.ts +2 -0
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.d.ts +2 -0
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.d.ts +2 -0
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.d.ts +128 -0
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.d.ts +2 -0
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.d.ts +53 -0
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.d.ts +17 -0
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.d.ts +2 -0
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.d.ts +30 -0
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.d.ts +2 -0
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.d.ts +2 -0
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.d.ts +2 -0
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.d.ts +2 -0
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.d.ts +2 -0
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.d.ts +2 -0
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.d.ts +2 -0
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff.d.ts +2 -0
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.d.ts +5 -0
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.d.ts +2 -0
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.d.ts +15 -0
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.d.ts +2 -0
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.d.ts +2 -0
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.d.ts +2 -0
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.d.ts +2 -0
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.d.ts +2 -0
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init/index.d.ts +11 -0
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.d.ts +2 -0
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.d.ts +23 -0
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.d.ts +2 -0
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.d.ts +32 -0
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.d.ts +2 -0
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.d.ts +2 -0
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.d.ts +2 -0
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.d.ts +2 -0
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.d.ts +2 -0
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/shared.d.ts +33 -0
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.d.ts +2 -0
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.d.ts +5 -0
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.d.ts +2 -0
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.d.ts +2 -0
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.d.ts +3 -0
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.d.ts +2 -0
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.d.ts +2 -0
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.d.ts +2 -0
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.d.ts +17 -0
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.d.ts +2 -0
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.d.ts +2 -0
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.d.ts +2 -0
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.d.ts +2 -0
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.d.ts +27 -0
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.d.ts +51 -0
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.d.ts +12 -0
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.d.ts +12 -0
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.d.ts +10 -0
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.d.ts +12 -0
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.d.ts +28 -0
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.d.ts +69 -0
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.d.ts +17 -0
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.d.ts +7 -0
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/types.d.ts +162 -0
- package/lib/commands/menu/shared/update-core.d.ts +11 -0
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.d.ts +6 -0
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.d.ts +2 -0
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/notification/config-list.d.ts +2 -0
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/index.d.ts +2 -0
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/ocr/index.d.ts +2 -0
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/generate-start.d.ts +2 -0
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.d.ts +2 -0
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.d.ts +2 -0
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.d.ts +2 -0
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.d.ts +2 -0
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.d.ts +2 -0
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.d.ts +2 -0
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.d.ts +105 -0
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/standard-page-status.d.ts +2 -0
- package/lib/commands/page/standard-page-status.js +1 -1
- package/lib/commands/page/sync.d.ts +2 -0
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/permit/index.d.ts +2 -0
- package/lib/commands/permit/index.js +1 -1
- package/lib/commands/permit/page-get.d.ts +2 -0
- package/lib/commands/permit/page-get.js +1 -1
- package/lib/commands/permit/page-set.d.ts +2 -0
- package/lib/commands/permit/page-set.js +1 -1
- package/lib/commands/permit/role-apis-set.d.ts +2 -0
- package/lib/commands/permit/role-apis-set.js +1 -1
- package/lib/commands/permit/role-menus-set.d.ts +2 -0
- package/lib/commands/permit/role-menus-set.js +1 -1
- package/lib/commands/permit/role-menus.d.ts +2 -0
- package/lib/commands/permit/role-menus.js +1 -1
- package/lib/commands/permit/shared.d.ts +74 -0
- package/lib/commands/permit/shared.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.d.ts +7 -0
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.d.ts +1 -0
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.d.ts +6 -0
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/non-interactive.d.ts +9 -0
- package/lib/commands/project/create/non-interactive.js +1 -1
- package/lib/commands/project/create/project-template-path.d.ts +4 -0
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.d.ts +1 -0
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.d.ts +1 -0
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.d.ts +1 -0
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.d.ts +2 -0
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.d.ts +1 -0
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.d.ts +66 -0
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/create.d.ts +2 -0
- package/lib/commands/role/create.js +1 -1
- package/lib/commands/role/delete.d.ts +2 -0
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.d.ts +2 -0
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.d.ts +2 -0
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.d.ts +2 -0
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.d.ts +107 -0
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.d.ts +2 -0
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.d.ts +2 -0
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.d.ts +2 -0
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.d.ts +2 -0
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.d.ts +2 -0
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.d.ts +5 -0
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.d.ts +10 -0
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.d.ts +5 -0
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.d.ts +2 -0
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.d.ts +2 -0
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.d.ts +5 -0
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.d.ts +2 -0
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.d.ts +5 -0
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.d.ts +5 -0
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.d.ts +23 -0
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.d.ts +5 -0
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.d.ts +2 -0
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.d.ts +2 -0
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.d.ts +2 -0
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.d.ts +2 -0
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.d.ts +2 -0
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.d.ts +10 -0
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/workspace/add.d.ts +6 -0
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.d.ts +11 -0
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.d.ts +6 -0
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.d.ts +50 -0
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.d.ts +1 -0
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.d.ts +34 -0
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.d.ts +10 -0
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.d.ts +14 -0
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.d.ts +11 -0
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.d.ts +1 -0
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.d.ts +5 -0
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.d.ts +1 -0
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.d.ts +36 -0
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.d.ts +5 -0
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.d.ts +61 -0
- package/lib/context/config-loader.js +1 -1
- package/lib/context.d.ts +102 -0
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.d.ts +31 -0
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +1018 -0
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.d.ts +8 -0
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.d.ts +28 -0
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.d.ts +7 -0
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.d.ts +25 -0
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/types.d.ts +92 -0
- package/lib/core/bff/utils.d.ts +25 -0
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.d.ts +43 -0
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.d.ts +6 -0
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.d.ts +4 -0
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.d.ts +8 -0
- package/lib/core/page/lock.js +1 -1
- package/lib/core/page/types.d.ts +22 -0
- package/lib/core/sql-index-auditor.d.ts +33 -0
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.d.ts +7 -0
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.d.ts +7 -0
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.d.ts +5 -0
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.d.ts +14 -0
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/types.d.ts +43 -0
- package/lib/core/sql-sync/utils.d.ts +10 -0
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.d.ts +34 -0
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.d.ts +3 -0
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.d.ts +2 -0
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.d.ts +9 -0
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.d.ts +3 -0
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.d.ts +3 -0
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.d.ts +4 -0
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.d.ts +11 -0
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.d.ts +15 -0
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.d.ts +2 -0
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.d.ts +14 -0
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.d.ts +36 -0
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.d.ts +3 -0
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.d.ts +63 -0
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -0
- package/lib/generated/build-info.js +1 -1
- package/lib/help.d.ts +1 -0
- package/lib/help.js +1 -1
- package/lib/runtime/confirmation.d.ts +4 -0
- package/lib/runtime/confirmation.js +1 -0
- package/lib/runtime/event.d.ts +5 -0
- package/lib/runtime/event.js +1 -0
- package/lib/runtime/index.d.ts +7 -0
- package/lib/runtime/index.js +1 -0
- package/lib/runtime/queue.d.ts +5 -0
- package/lib/runtime/queue.js +1 -0
- package/lib/runtime/resolve.d.ts +8 -0
- package/lib/runtime/resolve.js +1 -0
- package/lib/runtime/types.d.ts +50 -0
- package/lib/runtime/types.js +1 -0
- package/lib/skills/main.d.ts +41 -0
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.d.ts +99 -0
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.d.ts +44 -0
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.d.ts +12 -0
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.d.ts +8 -0
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.d.ts +6 -0
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.d.ts +3 -0
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.d.ts +17 -0
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.d.ts +26 -0
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/types/index.d.ts +93 -0
- package/lib/utils/ai_config.d.ts +47 -0
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.d.ts +1 -0
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.d.ts +42 -0
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.d.ts +23 -0
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.d.ts +37 -0
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.d.ts +9 -0
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.d.ts +42 -0
- package/lib/utils/config.js +1 -1
- package/lib/utils/copy-directory.d.ts +1 -0
- package/lib/utils/copy-directory.js +1 -1
- package/lib/utils/entity-with-id.d.ts +30 -0
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.d.ts +25 -0
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.d.ts +80 -0
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.d.ts +30 -0
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.d.ts +7 -0
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.d.ts +62 -0
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.d.ts +15 -0
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.d.ts +21 -0
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.d.ts +38 -0
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.d.ts +1 -0
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.d.ts +55 -0
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.d.ts +10 -0
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.d.ts +1 -0
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.d.ts +1 -0
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.d.ts +6 -0
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +9 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a110_0x4e0331=a110_0x5a2c;(function(_0x268864,_0x2e0304){const _0x5d145e=a110_0x5a2c,_0xae043=_0x268864();while(!![]){try{const _0xe8758=-parseInt(_0x5d145e(0x14d))/0x1*(-parseInt(_0x5d145e(0x159))/0x2)+-parseInt(_0x5d145e(0x14e))/0x3*(parseInt(_0x5d145e(0x125))/0x4)+parseInt(_0x5d145e(0x134))/0x5+-parseInt(_0x5d145e(0x142))/0x6+-parseInt(_0x5d145e(0x169))/0x7*(-parseInt(_0x5d145e(0x164))/0x8)+parseInt(_0x5d145e(0x121))/0x9*(-parseInt(_0x5d145e(0x13c))/0xa)+parseInt(_0x5d145e(0x139))/0xb;if(_0xe8758===_0x2e0304)break;else _0xae043['push'](_0xae043['shift']());}catch(_0x150336){_0xae043['push'](_0xae043['shift']());}}}(a110_0x5bc2,0x5a7db));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,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';function a110_0x5bc2(){const _0x59637c=['Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','verify\x20external\x20menu\x20URL\x20update','appCode','319670fZYnoD','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','POST','body','\x20already\x20matches\x20the\x20requested\x20URL.','8490097CkoAdn','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','parentId','10oSMHQI','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','cookie','childrenCount','\x20parent\x20changed:\x20expected\x20','high-risk-write','2921136EkBwiE','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','menu_permission_denied','visible','type','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','update-recovery','\x20has\x20an\x20empty\x20platform\x20path.','New\x20external\x20HTTPS\x20URL','plan','link','1zQZpoi','79551jAQFfX','iframe','str','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','\x20is\x20type\x20\x22','Response\x20was\x20lost\x20and\x20menu\x20','menu_update_recovery_required','sort','verification','menu_external_link_type_required','byId','702198YEvWrF','after','label','menu\x20list','failed','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','\x20could\x20not\x20be\x20verified\x20safely','flagMissing','Menu\x20','Update\x20request\x20for\x20menu\x20','8408HEdqMc','\x20changed\x20during\x20the\x20URL-only\x20update.','string','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','expect-parent-id','1218mIetIG','\x20--format\x20compress','replace','\x20direct\x20child\x20menu(s).','\x20has\x20','menu_state_drift',',\x20current\x20','Updated\x20external\x20URL\x20for\x20menu\x20','readbackFailed','external-link-update','url','code','1268901PbRdwV','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','requestedUrlObserved','update\x20external\x20menu\x20URL','56nGUNRt','expect-url','path','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','hash','trim','menu_external_link_path_missing','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','menu_external_link_not_leaf','update','\x27\x5c\x27\x27'];a110_0x5bc2=function(){return _0x59637c;};return a110_0x5bc2();}import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':'menu','command':'external-link-update','description':a110_0x4e0331(0x151),'risk':a110_0x4e0331(0x141),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'url','type':a110_0x4e0331(0x166),'required':!![],'description':a110_0x4e0331(0x14a)},{'name':'expect-url','type':a110_0x4e0331(0x166),'required':!![],'description':a110_0x4e0331(0x135)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1d6db6){validateInput(_0x1d6db6),requireExplicitYes(_0x1d6db6);},async 'dryRun'(_0x1758b1){const _0x59e1ec=a110_0x4e0331;validateInput(_0x1758b1);const _0x2e62a6=await buildPlan(_0x1758b1,!![]);return menuDryRunResult(_0x2e62a6[_0x59e1ec(0x14b)],{'method':'POST','url':'/smartapi/menu/update','body':_0x2e62a6[_0x59e1ec(0x137)],'description':_0x59e1ec(0x131)+_0x2e62a6[_0x59e1ec(0x137)]['id']+'.'});},async 'execute'(_0x3a9734){const _0x140a76=a110_0x4e0331;validateInput(_0x3a9734),requireExplicitYes(_0x3a9734);const _0x4c7103=await buildPlan(_0x3a9734,![]),{plan:_0x31da21,body:_0x5a17e6,before:_0x3b2154,noChanges:_0x543643}=_0x4c7103,_0xc7b17a=_0x5a17e6['id'];if(_0x543643)return updateSuccess(_0x31da21,_0x4c7103['snapshot'],_0x3b2154,!![],![]);await recheckMutationSnapshot(_0x3a9734,_0x31da21,_0x140a76(0x124),_0xc7b17a);try{await updateMenuEntity(_0x3a9734[_0x140a76(0x133)],_0x3a9734[_0x140a76(0x13e)],{'id':_0x5a17e6['id'],'url':_0x5a17e6[_0x140a76(0x11f)]});}catch(_0x3c168f){const _0x52359e=mapMenuApiError(_0x3c168f,_0x140a76(0x124),_0xc7b17a);if(isMenuResponseLoss(_0x3c168f)&&_0x52359e[_0x140a76(0x120)]!==_0x140a76(0x144))return recoverAfterResponseLoss(_0x3a9734,_0x4c7103);throw menuFailure(_0x52359e,_0x31da21,{'stage':_0x140a76(0x12f),'failed':{'id':_0xc7b17a},'warnings':[_0x140a76(0x13d)],'verification':{'status':_0x140a76(0x15d),'targetId':_0xc7b17a,'lookupCommand':buildLookupCommand(_0x3a9734[_0x140a76(0x133)])}});}let _0x574503,_0x15aff6;try{_0x574503=await fetchMenuSnapshot(_0x3a9734['appCode'],_0x3a9734[_0x140a76(0x13e)]),_0x15aff6=requireMenu(_0x574503,_0xc7b17a),verifyUpdatedFact(_0x3b2154,_0x15aff6,_0x5a17e6['url']);}catch(_0x3f3202){const _0x13a5c8=describeMenuErrorCause(_0x3f3202,_0x140a76(0x132),_0xc7b17a),_0x48c631=asVerificationError(_0x3f3202,_0x140a76(0x163)+_0xc7b17a+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x48c631,_0x31da21,{'stage':_0x140a76(0x156),'succeeded':[{'id':_0xc7b17a,'updateRequested':!![]}],'failed':{'id':_0xc7b17a,'requestedStateConfirmed':![],..._0x13a5c8},'warnings':[_0x140a76(0x15e)],'verification':{'status':'failed','targetId':_0xc7b17a,'lookupCommand':buildLookupCommand(_0x3a9734[_0x140a76(0x133)])}});}return updateSuccess(_0x31da21,_0x574503,_0x15aff6,![],![]);}};function validateInput(_0x45b035){const _0x1ea7ef=a110_0x4e0331;validateExactId(_0x45b035),requiredUrl(_0x45b035,'url'),requiredExpectedUrl(_0x45b035),parseParentId(_0x45b035,_0x1ea7ef(0x168),{'required':!![]});}function requiredUrl(_0x2a89f1,_0x49957d){const _0x46a8c6=a110_0x4e0331;if(!hasFlag(_0x2a89f1,_0x49957d)||!_0x2a89f1[_0x46a8c6(0x150)](_0x49957d)[_0x46a8c6(0x12a)]())throw CliErrors[_0x46a8c6(0x161)](_0x49957d);return validateExternalMenuUrl(_0x2a89f1[_0x46a8c6(0x150)](_0x49957d));}function requiredExpectedUrl(_0x255dcd){const _0x148403=a110_0x4e0331;if(!hasFlag(_0x255dcd,_0x148403(0x126))||!_0x255dcd[_0x148403(0x150)](_0x148403(0x126))[_0x148403(0x12a)]())throw CliErrors['flagMissing']('expect-url');return _0x255dcd[_0x148403(0x150)]('expect-url')['trim']();}async function buildPlan(_0x346f0d,_0x1028ba){const _0x5b381f=a110_0x4e0331,_0x19dcd0=validateExactId(_0x346f0d),_0x41ebf7=requiredUrl(_0x346f0d,_0x5b381f(0x11f)),_0x436eb6=requiredExpectedUrl(_0x346f0d),_0x1de46f=parseParentId(_0x346f0d,'expect-parent-id',{'required':!![]}),_0xb0f5f4=await fetchMutationSnapshot(_0x346f0d,_0x5b381f(0x124),_0x19dcd0),_0x40b4d2=requireMenu(_0xb0f5f4,_0x19dcd0);assertExternalLinkLeaf(_0x40b4d2);if(_0x40b4d2[_0x5b381f(0x13b)]!==_0x1de46f)throw menuError(_0x5b381f(0x11a),_0x5b381f(0x162)+_0x19dcd0+_0x5b381f(0x140)+formatParent(_0x1de46f)+_0x5b381f(0x11b)+formatParent(_0x40b4d2['parentId'])+'.',_0x5b381f(0x167));const _0xe9f54=_0x40b4d2[_0x5b381f(0x11f)]===_0x41ebf7;if(!_0xe9f54&&_0x40b4d2[_0x5b381f(0x11f)]!==_0x436eb6)throw menuError('menu_state_drift','Menu\x20'+_0x19dcd0+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.',_0x5b381f(0x128));const _0x4aa680={'id':_0x19dcd0,'appCode':_0x346f0d[_0x5b381f(0x133)],'url':_0x41ebf7},_0x22af29={..._0x40b4d2,'url':_0x41ebf7};return{'body':_0x4aa680,'before':_0x40b4d2,'noChanges':_0xe9f54,'snapshot':_0xb0f5f4,'plan':mutationResult({'operation':_0x5b381f(0x11e),'selector':{'id':_0x19dcd0},'before':_0x40b4d2,'after':_0x22af29,'dryRun':_0x1028ba,'backend':[...BACKEND],'plannedActions':_0xe9f54?[]:[{'stage':'update-external-link-url','method':_0x5b381f(0x136),'path':'/smartapi/menu/update','body':_0x4aa680}],'snapshotHash':_0xb0f5f4[_0x5b381f(0x129)],'warnings':_0xe9f54?[_0x5b381f(0x12d)]:[]})};}function assertExternalLinkLeaf(_0x6ab52){const _0x88d98=a110_0x4e0331;if(_0x6ab52['type']!==_0x88d98(0x14f)&&_0x6ab52[_0x88d98(0x146)]!==_0x88d98(0x14c))throw menuError(_0x88d98(0x157),'Menu\x20'+_0x6ab52['id']+_0x88d98(0x152)+(_0x6ab52[_0x88d98(0x146)]||'unknown')+'\x22,\x20not\x20iframe\x20or\x20link.',_0x88d98(0x147));if(_0x6ab52[_0x88d98(0x13f)]!==0x0)throw menuError(_0x88d98(0x12e),_0x88d98(0x162)+_0x6ab52['id']+_0x88d98(0x119)+_0x6ab52[_0x88d98(0x13f)]+_0x88d98(0x16c),_0x88d98(0x12c));if(!_0x6ab52[_0x88d98(0x127)][_0x88d98(0x12a)]())throw menuError(_0x88d98(0x12b),_0x88d98(0x162)+_0x6ab52['id']+_0x88d98(0x149),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function a110_0x5a2c(_0x456d7f,_0x45cd24){_0x456d7f=_0x456d7f-0x119;const _0x5bc26d=a110_0x5bc2();let _0x5a2c2a=_0x5bc26d[_0x456d7f];return _0x5a2c2a;}function verifyUpdatedFact(_0x5ba128,_0x1f8d2e,_0x43141a){const _0x4420f3=a110_0x4e0331;assertExternalLinkLeaf(_0x1f8d2e);const _0x6ecb9f=[['id',_0x1f8d2e['id'],_0x5ba128['id']],[_0x4420f3(0x15b),_0x1f8d2e['label'],_0x5ba128[_0x4420f3(0x15b)]],[_0x4420f3(0x146),_0x1f8d2e['type'],_0x5ba128[_0x4420f3(0x146)]],[_0x4420f3(0x127),_0x1f8d2e[_0x4420f3(0x127)],_0x5ba128[_0x4420f3(0x127)]],[_0x4420f3(0x13b),_0x1f8d2e[_0x4420f3(0x13b)],_0x5ba128[_0x4420f3(0x13b)]],[_0x4420f3(0x155),_0x1f8d2e['sort'],_0x5ba128[_0x4420f3(0x155)]],['visible',_0x1f8d2e[_0x4420f3(0x145)],_0x5ba128['visible']]];for(const [_0xabedb1,_0x293f57,_0x1426ed]of _0x6ecb9f){assertVerified(_0x293f57===_0x1426ed,_0x4420f3(0x162)+_0x5ba128['id']+'\x20'+_0xabedb1+_0x4420f3(0x165));}assertVerified(_0x1f8d2e[_0x4420f3(0x11f)]===_0x43141a,_0x4420f3(0x162)+_0x5ba128['id']+'\x20URL\x20update\x20did\x20not\x20take\x20effect.');}function updateSuccess(_0x2ebe8a,_0x47feb9,_0x5619c5,_0x4fe58d,_0x40ab47){const _0x5f1f4c=a110_0x4e0331,_0x4c7734=_0x5619c5['id'],_0xb74b54=mutationResult({..._0x2ebe8a,'after':_0x5619c5,'dryRun':![],'succeeded':[{'id':_0x4c7734,'updated':!_0x4fe58d,'skipped':_0x4fe58d,'recovered':_0x40ab47}],'verification':{'checkedBy':_0x5f1f4c(0x15c),'snapshotHash':_0x47feb9[_0x5f1f4c(0x129)],'targetId':_0x4c7734,'matchesRequestedState':!![],'recovered':_0x40ab47}});return{'ok':!![],'message':_0x40ab47?_0x5f1f4c(0x13a)+_0x4c7734+'.':_0x4fe58d?'Menu\x20'+_0x4c7734+_0x5f1f4c(0x138):_0x5f1f4c(0x11c)+_0x4c7734+'.','data':{..._0xb74b54,'recovered':_0x40ab47}};}async function recoverAfterResponseLoss(_0x5b4bbb,_0x59744e){const _0x3d5029=a110_0x4e0331,{plan:_0x3cfa53,before:_0xf2921f,body:_0x4c2ad5}=_0x59744e;let _0x332515;try{_0x332515=await fetchMenuSnapshot(_0x5b4bbb[_0x3d5029(0x133)],_0x5b4bbb[_0x3d5029(0x13e)]);}catch{throw recoveryRequired(_0x3cfa53,_0x5b4bbb['appCode'],{'id':_0x4c2ad5['id'],'readbackFailed':!![]});}const _0x3bad90=_0x332515[_0x3d5029(0x158)]['get'](_0x4c2ad5['id']);if(!_0x3bad90||_0x3bad90[_0x3d5029(0x11f)]!==_0x4c2ad5[_0x3d5029(0x11f)])throw recoveryRequired(_0x3cfa53,_0x5b4bbb[_0x3d5029(0x133)],{'id':_0x4c2ad5['id'],'requestedUrlObserved':![],'after':_0x3bad90??null});try{verifyUpdatedFact(_0xf2921f,_0x3bad90,_0x4c2ad5[_0x3d5029(0x11f)]);}catch(_0x82cc0b){const _0x4895de=asVerificationError(_0x82cc0b,_0x3d5029(0x153)+_0x4c2ad5['id']+_0x3d5029(0x160));throw menuFailure(_0x4895de,_0x3cfa53,{'stage':_0x3d5029(0x148),'succeeded':[{'id':_0x4c2ad5['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x4c2ad5['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x3bad90,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':'failed','targetId':_0x4c2ad5['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5b4bbb[_0x3d5029(0x133)])}});}return updateSuccess(_0x3cfa53,_0x332515,_0x3bad90,![],!![]);}function recoveryRequired(_0x44ca22,_0x188cbd,_0x5d67e1){const _0x534b1a=a110_0x4e0331,_0x1daded=menuError(_0x534b1a(0x154),_0x534b1a(0x122),'Run\x20'+buildLookupCommand(_0x188cbd)+_0x534b1a(0x15f));return menuFailure(_0x1daded,_0x44ca22,{'stage':'update-recovery','failed':{'id':_0x5d67e1['id'],..._0x5d67e1[_0x534b1a(0x123)]===undefined?{}:{'requestedUrlObserved':_0x5d67e1[_0x534b1a(0x123)]},..._0x5d67e1[_0x534b1a(0x11d)]?{'readbackFailed':!![]}:{}},'after':_0x5d67e1[_0x534b1a(0x15a)],'warnings':[_0x534b1a(0x143)],'verification':{'status':_0x534b1a(0x15d),'targetId':_0x5d67e1['id'],..._0x5d67e1[_0x534b1a(0x123)]===undefined?{}:{'requestedUrlObserved':_0x5d67e1[_0x534b1a(0x123)]},..._0x5d67e1['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x188cbd)}});}function buildLookupCommand(_0x15d14a){const _0x497205=a110_0x4e0331,_0x2a51f3='\x27'+_0x15d14a[_0x497205(0x16b)](/'/g,_0x497205(0x130))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x2a51f3+_0x497205(0x16a);}
|
|
1
|
+
const a110_0x115f65=a110_0x521c;(function(_0x410cf5,_0x14a929){const _0xca5a75=a110_0x521c,_0x2a25e5=_0x410cf5();while(!![]){try{const _0x5c562b=-parseInt(_0xca5a75(0x1ec))/0x1+-parseInt(_0xca5a75(0x212))/0x2*(-parseInt(_0xca5a75(0x1f0))/0x3)+parseInt(_0xca5a75(0x1fc))/0x4*(parseInt(_0xca5a75(0x201))/0x5)+-parseInt(_0xca5a75(0x204))/0x6*(parseInt(_0xca5a75(0x1de))/0x7)+-parseInt(_0xca5a75(0x1f9))/0x8+-parseInt(_0xca5a75(0x1f1))/0x9+-parseInt(_0xca5a75(0x1c6))/0xa*(-parseInt(_0xca5a75(0x20f))/0xb);if(_0x5c562b===_0x14a929)break;else _0x2a25e5['push'](_0x2a25e5['shift']());}catch(_0x235746){_0x2a25e5['push'](_0x2a25e5['shift']());}}}(a110_0x593e,0x49840));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,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a110_0x115f65(0x1f3)}];export const menuExternalLinkUpdate={'service':a110_0x115f65(0x218),'command':a110_0x115f65(0x202),'description':a110_0x115f65(0x216),'risk':'high-risk-write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a110_0x115f65(0x1c8),'type':'string','required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a110_0x115f65(0x215),'type':'string','required':!![],'description':a110_0x115f65(0x1fa)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5d8e35){validateInput(_0x5d8e35),requireExplicitYes(_0x5d8e35);},async 'dryRun'(_0x5322ca){const _0x25848b=a110_0x115f65;validateInput(_0x5322ca);const _0x577e9c=await buildPlan(_0x5322ca,!![]);return menuDryRunResult(_0x577e9c[_0x25848b(0x1ea)],{'method':_0x25848b(0x207),'url':_0x25848b(0x1f3),'body':_0x577e9c[_0x25848b(0x1f5)],'description':_0x25848b(0x21a)+_0x577e9c[_0x25848b(0x1f5)]['id']+'.'});},async 'execute'(_0x3c12ae){const _0x1a53bb=a110_0x115f65;validateInput(_0x3c12ae),requireExplicitYes(_0x3c12ae);const _0x19f4c8=await buildPlan(_0x3c12ae,![]),{plan:_0x54591f,body:_0xbf9f14,before:_0x4d87e1,noChanges:_0x3b9946}=_0x19f4c8,_0x1cad74=_0xbf9f14['id'];if(_0x3b9946)return updateSuccess(_0x54591f,_0x19f4c8[_0x1a53bb(0x1fd)],_0x4d87e1,!![],![]);await recheckMutationSnapshot(_0x3c12ae,_0x54591f,_0x1a53bb(0x1e2),_0x1cad74);try{await updateMenuEntity(_0x3c12ae['appCode'],_0x3c12ae['cookie'],{'id':_0xbf9f14['id'],'url':_0xbf9f14[_0x1a53bb(0x1c8)]});}catch(_0xdacb98){const _0x51f55e=mapMenuApiError(_0xdacb98,_0x1a53bb(0x1e2),_0x1cad74);if(isMenuResponseLoss(_0xdacb98)&&_0x51f55e[_0x1a53bb(0x209)]!==_0x1a53bb(0x1cd))return recoverAfterResponseLoss(_0x3c12ae,_0x19f4c8);throw menuFailure(_0x51f55e,_0x54591f,{'stage':_0x1a53bb(0x210),'failed':{'id':_0x1cad74},'warnings':['The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':'failed','targetId':_0x1cad74,'lookupCommand':buildLookupCommand(_0x3c12ae[_0x1a53bb(0x1db)])}});}let _0x466d31,_0x166d69;try{_0x466d31=await fetchMenuSnapshot(_0x3c12ae[_0x1a53bb(0x1db)],_0x3c12ae[_0x1a53bb(0x1ed)]),_0x166d69=requireMenu(_0x466d31,_0x1cad74),verifyUpdatedFact(_0x4d87e1,_0x166d69,_0xbf9f14['url']);}catch(_0x16fb2a){const _0x121ec8=describeMenuErrorCause(_0x16fb2a,_0x1a53bb(0x1f6),_0x1cad74),_0x2253b1=asVerificationError(_0x16fb2a,_0x1a53bb(0x1eb)+_0x1cad74+_0x1a53bb(0x208));throw menuFailure(_0x2253b1,_0x54591f,{'stage':_0x1a53bb(0x1c5),'succeeded':[{'id':_0x1cad74,'updateRequested':!![]}],'failed':{'id':_0x1cad74,'requestedStateConfirmed':![],..._0x121ec8},'warnings':[_0x1a53bb(0x1cf)],'verification':{'status':_0x1a53bb(0x20e),'targetId':_0x1cad74,'lookupCommand':buildLookupCommand(_0x3c12ae[_0x1a53bb(0x1db)])}});}return updateSuccess(_0x54591f,_0x466d31,_0x166d69,![],![]);}};function validateInput(_0x5aa9e2){const _0x40d43f=a110_0x115f65;validateExactId(_0x5aa9e2),requiredUrl(_0x5aa9e2,'url'),requiredExpectedUrl(_0x5aa9e2),parseParentId(_0x5aa9e2,_0x40d43f(0x1ca),{'required':!![]});}function requiredUrl(_0x175fd1,_0x882b6c){const _0x28cbff=a110_0x115f65;if(!hasFlag(_0x175fd1,_0x882b6c)||!_0x175fd1[_0x28cbff(0x1e1)](_0x882b6c)['trim']())throw CliErrors[_0x28cbff(0x1d7)](_0x882b6c);return validateExternalMenuUrl(_0x175fd1['str'](_0x882b6c));}function requiredExpectedUrl(_0x15ceb2){const _0x4955e9=a110_0x115f65;if(!hasFlag(_0x15ceb2,_0x4955e9(0x215))||!_0x15ceb2[_0x4955e9(0x1e1)](_0x4955e9(0x215))[_0x4955e9(0x1f7)]())throw CliErrors['flagMissing'](_0x4955e9(0x215));return _0x15ceb2[_0x4955e9(0x1e1)](_0x4955e9(0x215))[_0x4955e9(0x1f7)]();}async function buildPlan(_0x9d7895,_0x556dc7){const _0x33547e=a110_0x115f65,_0x24171e=validateExactId(_0x9d7895),_0x5f3043=requiredUrl(_0x9d7895,_0x33547e(0x1c8)),_0x5ea8fc=requiredExpectedUrl(_0x9d7895),_0x2f7d06=parseParentId(_0x9d7895,_0x33547e(0x1ca),{'required':!![]}),_0x4cb978=await fetchMutationSnapshot(_0x9d7895,_0x33547e(0x1e2),_0x24171e),_0x24309f=requireMenu(_0x4cb978,_0x24171e);assertExternalLinkLeaf(_0x24309f);if(_0x24309f[_0x33547e(0x1e9)]!==_0x2f7d06)throw menuError(_0x33547e(0x1e0),_0x33547e(0x1c4)+_0x24171e+_0x33547e(0x217)+formatParent(_0x2f7d06)+_0x33547e(0x1d9)+formatParent(_0x24309f['parentId'])+'.',_0x33547e(0x1f4));const _0x402659=_0x24309f[_0x33547e(0x1c8)]===_0x5f3043;if(!_0x402659&&_0x24309f[_0x33547e(0x1c8)]!==_0x5ea8fc)throw menuError('menu_state_drift','Menu\x20'+_0x24171e+_0x33547e(0x1f2),_0x33547e(0x1e3));const _0x5d59a2={'id':_0x24171e,'appCode':_0x9d7895[_0x33547e(0x1db)],'url':_0x5f3043},_0x41fff3={..._0x24309f,'url':_0x5f3043};return{'body':_0x5d59a2,'before':_0x24309f,'noChanges':_0x402659,'snapshot':_0x4cb978,'plan':mutationResult({'operation':_0x33547e(0x202),'selector':{'id':_0x24171e},'before':_0x24309f,'after':_0x41fff3,'dryRun':_0x556dc7,'backend':[...BACKEND],'plannedActions':_0x402659?[]:[{'stage':'update-external-link-url','method':'POST','path':'/smartapi/menu/update','body':_0x5d59a2}],'snapshotHash':_0x4cb978['hash'],'warnings':_0x402659?[_0x33547e(0x20b)]:[]})};}function a110_0x521c(_0x179933,_0x4e35cc){_0x179933=_0x179933-0x1c4;const _0x593ecd=a110_0x593e();let _0x521cc8=_0x593ecd[_0x179933];return _0x521cc8;}function assertExternalLinkLeaf(_0x2b5674){const _0x2c05f7=a110_0x115f65;if(_0x2b5674['type']!==_0x2c05f7(0x205)&&_0x2b5674[_0x2c05f7(0x20c)]!==_0x2c05f7(0x1ce))throw menuError(_0x2c05f7(0x20a),_0x2c05f7(0x1c4)+_0x2b5674['id']+_0x2c05f7(0x1da)+(_0x2b5674[_0x2c05f7(0x20c)]||'unknown')+_0x2c05f7(0x1e4),_0x2c05f7(0x211));if(_0x2b5674[_0x2c05f7(0x1e7)]!==0x0)throw menuError(_0x2c05f7(0x206),_0x2c05f7(0x1c4)+_0x2b5674['id']+_0x2c05f7(0x1d1)+_0x2b5674[_0x2c05f7(0x1e7)]+_0x2c05f7(0x1cb),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x2b5674[_0x2c05f7(0x1fb)][_0x2c05f7(0x1f7)]())throw menuError(_0x2c05f7(0x1d2),'Menu\x20'+_0x2b5674['id']+'\x20has\x20an\x20empty\x20platform\x20path.',_0x2c05f7(0x1d0));}function a110_0x593e(){const _0x5ea509=['replace','menu_permission_denied','link','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','\x20has\x20','menu_external_link_path_missing','get','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','visible','Updated\x20external\x20URL\x20for\x20menu\x20','flagMissing','update-recovery',',\x20current\x20','\x20is\x20type\x20\x22','appCode','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','\x20already\x20matches\x20the\x20requested\x20URL.','62692NMnhQp','menu\x20list','menu_state_drift','str','update\x20external\x20menu\x20URL','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','\x22,\x20not\x20iframe\x20or\x20link.','\x20URL\x20update\x20did\x20not\x20take\x20effect.','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','childrenCount','after','parentId','plan','Update\x20request\x20for\x20menu\x20','212951JJGcmy','cookie','hash','sort','1190343chdrKF','3338082FJxyhh','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','/smartapi/menu/update','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','body','verify\x20external\x20menu\x20URL\x20update','trim','readbackFailed','805880McZZht','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','path','143036qBfhFz','snapshot','\x27\x5c\x27\x27','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','25afIBmM','external-link-update','\x20could\x20not\x20be\x20verified\x20safely','42mJwrte','iframe','menu_external_link_not_leaf','POST','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','code','menu_external_link_type_required','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','type','byId','failed','55NfJKnu','update','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','2IsKRuF','\x20changed\x20during\x20the\x20URL-only\x20update.','label','expect-url','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','\x20parent\x20changed:\x20expected\x20','menu','Response\x20was\x20lost\x20and\x20menu\x20','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','Menu\x20','verification','945640xyHzur','requestedUrlObserved','url','\x20--format\x20compress','expect-parent-id','\x20direct\x20child\x20menu(s).'];a110_0x593e=function(){return _0x5ea509;};return a110_0x593e();}function verifyUpdatedFact(_0x22e4c6,_0x26ae1e,_0x5a1abf){const _0x5e2248=a110_0x115f65;assertExternalLinkLeaf(_0x26ae1e);const _0x4615a0=[['id',_0x26ae1e['id'],_0x22e4c6['id']],[_0x5e2248(0x214),_0x26ae1e['label'],_0x22e4c6['label']],[_0x5e2248(0x20c),_0x26ae1e['type'],_0x22e4c6[_0x5e2248(0x20c)]],[_0x5e2248(0x1fb),_0x26ae1e[_0x5e2248(0x1fb)],_0x22e4c6[_0x5e2248(0x1fb)]],[_0x5e2248(0x1e9),_0x26ae1e[_0x5e2248(0x1e9)],_0x22e4c6[_0x5e2248(0x1e9)]],[_0x5e2248(0x1ef),_0x26ae1e[_0x5e2248(0x1ef)],_0x22e4c6[_0x5e2248(0x1ef)]],[_0x5e2248(0x1d5),_0x26ae1e[_0x5e2248(0x1d5)],_0x22e4c6['visible']]];for(const [_0x3aa723,_0x4ea22e,_0x22a0ae]of _0x4615a0){assertVerified(_0x4ea22e===_0x22a0ae,_0x5e2248(0x1c4)+_0x22e4c6['id']+'\x20'+_0x3aa723+_0x5e2248(0x213));}assertVerified(_0x26ae1e[_0x5e2248(0x1c8)]===_0x5a1abf,_0x5e2248(0x1c4)+_0x22e4c6['id']+_0x5e2248(0x1e5));}function updateSuccess(_0x315786,_0x3d26fd,_0x3bda49,_0x363f14,_0x1607bd){const _0x11722d=a110_0x115f65,_0x52c038=_0x3bda49['id'],_0x435ccb=mutationResult({..._0x315786,'after':_0x3bda49,'dryRun':![],'succeeded':[{'id':_0x52c038,'updated':!_0x363f14,'skipped':_0x363f14,'recovered':_0x1607bd}],'verification':{'checkedBy':_0x11722d(0x1df),'snapshotHash':_0x3d26fd[_0x11722d(0x1ee)],'targetId':_0x52c038,'matchesRequestedState':!![],'recovered':_0x1607bd}});return{'ok':!![],'message':_0x1607bd?_0x11722d(0x1ff)+_0x52c038+'.':_0x363f14?_0x11722d(0x1c4)+_0x52c038+_0x11722d(0x1dd):_0x11722d(0x1d6)+_0x52c038+'.','data':{..._0x435ccb,'recovered':_0x1607bd}};}async function recoverAfterResponseLoss(_0x7f2e95,_0x57ab21){const _0x276c24=a110_0x115f65,{plan:_0x18463c,before:_0x204246,body:_0x126f5c}=_0x57ab21;let _0x53c744;try{_0x53c744=await fetchMenuSnapshot(_0x7f2e95[_0x276c24(0x1db)],_0x7f2e95[_0x276c24(0x1ed)]);}catch{throw recoveryRequired(_0x18463c,_0x7f2e95['appCode'],{'id':_0x126f5c['id'],'readbackFailed':!![]});}const _0x581448=_0x53c744[_0x276c24(0x20d)][_0x276c24(0x1d3)](_0x126f5c['id']);if(!_0x581448||_0x581448['url']!==_0x126f5c[_0x276c24(0x1c8)])throw recoveryRequired(_0x18463c,_0x7f2e95[_0x276c24(0x1db)],{'id':_0x126f5c['id'],'requestedUrlObserved':![],'after':_0x581448??null});try{verifyUpdatedFact(_0x204246,_0x581448,_0x126f5c['url']);}catch(_0x28606a){const _0x132173=asVerificationError(_0x28606a,_0x276c24(0x219)+_0x126f5c['id']+_0x276c24(0x203));throw menuFailure(_0x132173,_0x18463c,{'stage':_0x276c24(0x1d8),'succeeded':[{'id':_0x126f5c['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x126f5c['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x581448,'warnings':[_0x276c24(0x1dc)],'verification':{'status':_0x276c24(0x20e),'targetId':_0x126f5c['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x7f2e95[_0x276c24(0x1db)])}});}return updateSuccess(_0x18463c,_0x53c744,_0x581448,![],!![]);}function recoveryRequired(_0x3028a3,_0x30582b,_0x2cf49a){const _0x94ee7=a110_0x115f65,_0x4ea55e=menuError('menu_update_recovery_required',_0x94ee7(0x1e6),'Run\x20'+buildLookupCommand(_0x30582b)+_0x94ee7(0x200));return menuFailure(_0x4ea55e,_0x3028a3,{'stage':_0x94ee7(0x1d8),'failed':{'id':_0x2cf49a['id'],..._0x2cf49a[_0x94ee7(0x1c7)]===undefined?{}:{'requestedUrlObserved':_0x2cf49a[_0x94ee7(0x1c7)]},..._0x2cf49a['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x2cf49a[_0x94ee7(0x1e8)],'warnings':[_0x94ee7(0x1d4)],'verification':{'status':_0x94ee7(0x20e),'targetId':_0x2cf49a['id'],..._0x2cf49a[_0x94ee7(0x1c7)]===undefined?{}:{'requestedUrlObserved':_0x2cf49a['requestedUrlObserved']},..._0x2cf49a[_0x94ee7(0x1f8)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x30582b)}});}function buildLookupCommand(_0x1c526a){const _0x2ec9a2=a110_0x115f65,_0x3cc75b='\x27'+_0x1c526a[_0x2ec9a2(0x1cc)](/'/g,_0x2ec9a2(0x1fe))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x3cc75b+_0x2ec9a2(0x1c9);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a111_0xb46083=a111_0x4822;(function(_0x2cfb2b,_0xaa5f4d){const _0x5b01e2=a111_0x4822,_0x39fccb=_0x2cfb2b();while(!![]){try{const _0x436a9d=parseInt(_0x5b01e2(0x217))/0x1*(parseInt(_0x5b01e2(0x21d))/0x2)+parseInt(_0x5b01e2(0x213))/0x3+parseInt(_0x5b01e2(0x1e4))/0x4*(-parseInt(_0x5b01e2(0x1ee))/0x5)+parseInt(_0x5b01e2(0x1fd))/0x6*(-parseInt(_0x5b01e2(0x202))/0x7)+parseInt(_0x5b01e2(0x214))/0x8+parseInt(_0x5b01e2(0x205))/0x9*(-parseInt(_0x5b01e2(0x209))/0xa)+parseInt(_0x5b01e2(0x208))/0xb;if(_0x436a9d===_0xaa5f4d)break;else _0x39fccb['push'](_0x39fccb['shift']());}catch(_0x2c7090){_0x39fccb['push'](_0x39fccb['shift']());}}}(a111_0x4c7d,0x41f83));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';function a111_0x4822(_0x25f21e,_0x52f1ce){_0x25f21e=_0x25f21e-0x1e4;const _0x4c7da9=a111_0x4c7d();let _0x482205=_0x4c7da9[_0x25f21e];return _0x482205;}import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a111_0xb46083(0x1fb),'path':a111_0xb46083(0x1f6)}];export const menuGroupCreate={'service':a111_0xb46083(0x1e9),'command':a111_0xb46083(0x201),'description':a111_0xb46083(0x225),'risk':'write','structuredErrors':!![],'flags':[{'name':a111_0xb46083(0x1fe),'type':a111_0xb46083(0x20c),'required':!![],'description':a111_0xb46083(0x1f7)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x59d762){validateCreateInput(_0x59d762);},async 'dryRun'(_0x19eb0a){const _0x266d01=a111_0xb46083,_0x194d7b=await buildCreatePlan(_0x19eb0a,!![]),_0x442313=_0x194d7b['after'];return menuDryRunResult(_0x194d7b,{'method':_0x266d01(0x1fb),'url':_0x266d01(0x1f6),'body':{'parentId':toApiParentId(_0x442313[_0x266d01(0x1fc)]),'label':_0x442313[_0x266d01(0x1fe)],'type':_0x266d01(0x20d),'visible':!![],'sort':_0x442313[_0x266d01(0x1ea)],'extend':{}},'description':_0x266d01(0x1e8)+String(_0x442313[_0x266d01(0x1fe)])+_0x266d01(0x21f)});},async 'execute'(_0x53b6d9){const _0x2c8677=a111_0xb46083;validateCreateInput(_0x53b6d9);const _0x160fdb=await buildCreatePlan(_0x53b6d9,![]),_0x22fbbc=_0x160fdb[_0x2c8677(0x1f4)];await recheckMutationSnapshot(_0x53b6d9,_0x160fdb,'create\x20folder');let _0x455663;try{_0x455663=await createMenuEntity(_0x53b6d9[_0x2c8677(0x1f5)],_0x53b6d9['cookie'],{'parentId':toApiParentId(_0x22fbbc[_0x2c8677(0x1fc)]),'label':String(_0x22fbbc[_0x2c8677(0x1fe)]),'type':_0x2c8677(0x20d),'visible':!![],'sort':Number(_0x22fbbc[_0x2c8677(0x1ea)]),'extend':{}});}catch(_0x481606){const _0x545607=mapMenuApiError(_0x481606,_0x2c8677(0x204));throw menuFailure(_0x545607,_0x160fdb,{'stage':'create','failed':{}});}const _0x57dbda=Number(_0x455663['id']);if(!Number['isSafeInteger'](_0x57dbda)||_0x57dbda<=0x0){const _0x4e2507=menuError(_0x2c8677(0x211),_0x2c8677(0x210),_0x2c8677(0x220));throw menuFailure(_0x4e2507,_0x160fdb,{'stage':'create-response-validation','failed':{'createdId':_0x455663['id']??null},'warnings':[_0x2c8677(0x1ec)],'verification':{'status':'failed','lookupCommand':_0x2c8677(0x20b)}});}const _0x3ec36b=typeof _0x455663[_0x2c8677(0x20a)]===_0x2c8677(0x20c)?_0x455663[_0x2c8677(0x20a)]:'';if(!_0x3ec36b[_0x2c8677(0x20e)]()){const _0x225293=menuError(_0x2c8677(0x211),_0x2c8677(0x1fa)+_0x57dbda+_0x2c8677(0x1e7),_0x2c8677(0x223));throw menuFailure(_0x225293,_0x160fdb,{'stage':_0x2c8677(0x215),'succeeded':[{'id':_0x57dbda,'created':!![]}],'failed':{'id':_0x57dbda,'generatedPathConfirmed':![]},'warnings':['Folder\x20'+_0x57dbda+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x22fbbc,'id':_0x57dbda,'path':_0x3ec36b},'verification':{'status':_0x2c8677(0x1f8),'lookupCommand':_0x2c8677(0x20b),'targetId':_0x57dbda}});}let _0x34548a;try{_0x34548a=await fetchMenuSnapshot(_0x53b6d9[_0x2c8677(0x1f5)],_0x53b6d9[_0x2c8677(0x218)]);}catch(_0x1ed610){const _0x4af90f=describeMenuErrorCause(_0x1ed610,_0x2c8677(0x1eb),_0x57dbda),_0x1ba1ae=asVerificationError(_0x1ed610,_0x2c8677(0x1f9)+_0x57dbda+'\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts');throw menuFailure(_0x1ba1ae,_0x160fdb,{'stage':'verification','succeeded':[{'id':_0x57dbda,'created':!![],'path':_0x3ec36b}],'failed':{'id':_0x57dbda,'finalFactsConfirmed':![],..._0x4af90f},'warnings':[_0x2c8677(0x1f9)+_0x57dbda+_0x2c8677(0x1e5)+JSON['stringify'](_0x3ec36b)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x22fbbc,'id':_0x57dbda,'path':_0x3ec36b},'verification':{'status':_0x2c8677(0x1f8),'lookupCommand':_0x2c8677(0x20b),'targetId':_0x57dbda}});}const _0x452a99=_0x34548a[_0x2c8677(0x20f)]['get'](_0x57dbda);let _0x116f8f;try{assertVerified(Boolean(_0x452a99),'Created\x20folder\x20'+_0x57dbda+_0x2c8677(0x203)),_0x116f8f=_0x452a99,assertVerified(_0x116f8f[_0x2c8677(0x1f0)]===_0x2c8677(0x20d),'Created\x20menu\x20'+_0x57dbda+_0x2c8677(0x21e)),assertVerified(_0x116f8f[_0x2c8677(0x1fe)]===_0x22fbbc[_0x2c8677(0x1fe)],'Created\x20folder\x20'+_0x57dbda+_0x2c8677(0x1f3)),assertVerified(_0x116f8f[_0x2c8677(0x20a)]===_0x3ec36b&&Boolean(_0x116f8f[_0x2c8677(0x20a)][_0x2c8677(0x20e)]()),_0x2c8677(0x221)+_0x57dbda+_0x2c8677(0x1ff)),assertVerified(_0x116f8f[_0x2c8677(0x1ed)]===!![],_0x2c8677(0x221)+_0x57dbda+'\x20is\x20not\x20visible.'),assertVerified(_0x116f8f[_0x2c8677(0x206)]['length']===0x0,_0x2c8677(0x221)+_0x57dbda+_0x2c8677(0x200)),assertVerified(_0x116f8f[_0x2c8677(0x207)]===0x0,_0x2c8677(0x221)+_0x57dbda+'\x20is\x20not\x20empty.'),assertVerified(_0x116f8f[_0x2c8677(0x1ea)]===_0x22fbbc[_0x2c8677(0x1ea)],_0x2c8677(0x221)+_0x57dbda+_0x2c8677(0x224)),assertVerified(_0x116f8f[_0x2c8677(0x1fc)]===_0x22fbbc['parentId'],_0x2c8677(0x221)+_0x57dbda+'\x20has\x20unexpected\x20parent\x20'+(_0x116f8f[_0x2c8677(0x1fc)]??'root')+'.'),assertVerified(_0x116f8f['pageId']==null,_0x2c8677(0x221)+_0x57dbda+'\x20unexpectedly\x20owns\x20a\x20page.');const _0x241bb8=_0x116f8f['parentId']==null?undefined:requireFolder(_0x34548a,_0x116f8f[_0x2c8677(0x1fc)]);assertVerified(_0x116f8f[_0x2c8677(0x1e6)]===(_0x241bb8?_0x241bb8[_0x2c8677(0x1e6)]+0x1:0x0),_0x2c8677(0x221)+_0x57dbda+_0x2c8677(0x21a));}catch(_0x572ef6){const _0x143ffe=describeMenuErrorCause(_0x572ef6,'verify\x20folder\x20creation',_0x57dbda),_0x3df297=asVerificationError(_0x572ef6,_0x2c8677(0x1f9)+_0x57dbda+_0x2c8677(0x219));throw menuFailure(_0x3df297,_0x160fdb,{'stage':'verification','succeeded':[{'id':_0x57dbda,'created':!![],'path':_0x3ec36b}],'failed':{'id':_0x57dbda,'finalFactsConfirmed':![],..._0x143ffe},'warnings':[_0x2c8677(0x1f9)+_0x57dbda+_0x2c8677(0x21c)],'after':_0x452a99??{..._0x22fbbc,'id':_0x57dbda,'path':_0x3ec36b},'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x57dbda}});}const _0x21dd3f=mutationResult({..._0x160fdb,'after':_0x116f8f,'dryRun':![],'succeeded':[{'id':_0x57dbda,'type':_0x2c8677(0x20d),'path':_0x3ec36b}],'verification':{'checkedBy':_0x2c8677(0x1f2),'snapshotHash':_0x34548a[_0x2c8677(0x222)],'folder':!![],'path':_0x3ec36b,'emptyResources':!![]}});return{'ok':!![],'data':_0x21dd3f,'message':_0x2c8677(0x1f1)+_0x57dbda+'.'};}};function validateCreateInput(_0x5937ea){const _0x40b9e6=a111_0xb46083,_0x2e7328=_0x5937ea[_0x40b9e6(0x21b)](_0x40b9e6(0x1fe))[_0x40b9e6(0x20e)]();if(!_0x2e7328)throw CliErrors[_0x40b9e6(0x1ef)](_0x40b9e6(0x1fe));parseParentId(_0x5937ea,_0x40b9e6(0x216)),validateSort(_0x5937ea);}async function buildCreatePlan(_0x500f0b,_0x2e9ab0){const _0x4ffaf9=a111_0xb46083,_0x5f3401=await fetchMutationSnapshot(_0x500f0b,_0x4ffaf9(0x204)),_0x480bde=parseParentId(_0x500f0b,_0x4ffaf9(0x216))??null;if(_0x480bde!=null)requireFolder(_0x5f3401,_0x480bde);const _0x24c43a=validateSort(_0x500f0b),_0x21fbbd=_0x24c43a??nextSiblingSort(_0x5f3401,_0x480bde,_0x4ffaf9(0x20d)),_0xd75379=_0x500f0b[_0x4ffaf9(0x21b)]('label')['trim']();return mutationResult({'operation':'group-create','selector':{'label':_0xd75379,'parentId':_0x480bde},'before':null,'after':{'id':null,'parentId':_0x480bde,'label':_0xd75379,'path':'<platform-generated>','type':_0x4ffaf9(0x20d),'visible':!![],'sort':_0x21fbbd,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x2e9ab0,'backend':[...BACKEND],'plannedActions':[{'stage':_0x4ffaf9(0x226),'method':_0x4ffaf9(0x1fb),'path':_0x4ffaf9(0x1f6),'body':{'parentId':toApiParentId(_0x480bde),'label':_0xd75379,'type':_0x4ffaf9(0x20d),'visible':!![],'sort':_0x21fbbd,'extend':{}}}],'snapshotHash':_0x5f3401[_0x4ffaf9(0x222)],'warnings':[_0x4ffaf9(0x212)]});}function a111_0x4c7d(){const _0x3dd040=['type','Created\x20menu\x20folder\x20','menu\x20list','\x20has\x20an\x20unexpected\x20label.','after','appCode','/smartapi/menu/create','Folder\x20label','failed','Folder\x20','Menu\x20create\x20response\x20for\x20folder\x20','POST','parentId','137292lBwJrZ','label','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','\x20has\x20resources.','group-create','77oqiXjr','\x20is\x20missing\x20from\x20menu\x20list.','create\x20folder','29907GNQCSH','resources','childrenCount','4499902HowIUU','1510ibvDVV','path','rabetbase\x20menu\x20list\x20--format\x20json','string','folder','trim','byId','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','menu_create_response_invalid','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','411357CLNPyH','3373024UQwpVc','create-response-validation','parent-id','88343mwafHu','cookie','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','str','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','8zFIDpx','\x20is\x20not\x20type\x20folder.','\x22\x20with\x20a\x20platform-generated\x20path.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','Created\x20folder\x20','hash','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','\x20has\x20an\x20unexpected\x20sort.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','create-folder','1516pAyfBQ','\x20may\x20exist\x20online\x20at\x20path\x20','depth','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','Would\x20create\x20empty\x20folder\x20\x22','menu','sort','verify\x20folder\x20creation','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','visible','3925mxOLuf','flagMissing'];a111_0x4c7d=function(){return _0x3dd040;};return a111_0x4c7d();}
|
|
1
|
+
const a111_0x5950e1=a111_0x153c;(function(_0x5458f3,_0x4fe12c){const _0x49b403=a111_0x153c,_0x43d62d=_0x5458f3();while(!![]){try{const _0x1a6177=parseInt(_0x49b403(0x169))/0x1+parseInt(_0x49b403(0x17e))/0x2+parseInt(_0x49b403(0x167))/0x3*(-parseInt(_0x49b403(0x166))/0x4)+parseInt(_0x49b403(0x149))/0x5+-parseInt(_0x49b403(0x16a))/0x6+-parseInt(_0x49b403(0x165))/0x7+-parseInt(_0x49b403(0x13b))/0x8*(-parseInt(_0x49b403(0x163))/0x9);if(_0x1a6177===_0x4fe12c)break;else _0x43d62d['push'](_0x43d62d['shift']());}catch(_0x5cef5a){_0x43d62d['push'](_0x43d62d['shift']());}}}(a111_0x2cec,0x280a6));function a111_0x153c(_0x2bd0e0,_0x291e3d){_0x2bd0e0=_0x2bd0e0-0x13a;const _0x2cec98=a111_0x2cec();let _0x153c24=_0x2cec98[_0x2bd0e0];return _0x153c24;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a111_0x2cec(){const _0x4d7fb9=['Created\x20menu\x20folder\x20','\x20is\x20missing\x20from\x20menu\x20list.','\x20has\x20an\x20unexpected\x20sort.','failed','24tEvYEY','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','create-folder','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','depth','label','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','sort','trim','appCode','after','parent-id','Created\x20folder\x20','3180gvxhqt','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','\x20may\x20exist\x20online\x20at\x20path\x20','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','\x22\x20with\x20a\x20platform-generated\x20path.','Menu\x20create\x20response\x20for\x20folder\x20','length','Would\x20create\x20empty\x20folder\x20\x22','visible','\x20is\x20not\x20type\x20folder.','childrenCount','rabetbase\x20menu\x20list\x20--format\x20json','type','pageId','create\x20folder','resources','path','isSafeInteger','Folder\x20','create-response-validation','verification','str','root','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','stringify','menu_create_response_invalid','1352115VIOouQ','byId','673491bKYzzl','155880kXhfBp','18jIMXII','menu\x20list','82400xMWTuL','465342Tbkyju','cookie','\x20has\x20an\x20unexpected\x20label.','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','\x20has\x20unexpected\x20parent\x20','verify\x20folder\x20creation','create','string','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','group-create','parentId',';\x20verify\x20it\x20before\x20retrying.','\x20is\x20not\x20visible.','\x20is\x20not\x20empty.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','POST','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','Folder\x20label','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','<platform-generated>','75710YaoWJK','hash','folder','/smartapi/menu/create'];a111_0x2cec=function(){return _0x4d7fb9;};return a111_0x2cec();}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':a111_0x5950e1(0x179),'path':a111_0x5950e1(0x181)}];export const menuGroupCreate={'service':'menu','command':a111_0x5950e1(0x173),'description':a111_0x5950e1(0x17a),'risk':'write','structuredErrors':!![],'flags':[{'name':a111_0x5950e1(0x141),'type':'string','required':!![],'description':a111_0x5950e1(0x17b)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x632b1b){validateCreateInput(_0x632b1b);},async 'dryRun'(_0x46c104){const _0x608c24=a111_0x5950e1,_0x1baf2d=await buildCreatePlan(_0x46c104,!![]),_0x43f2c2=_0x1baf2d['after'];return menuDryRunResult(_0x1baf2d,{'method':'POST','url':_0x608c24(0x181),'body':{'parentId':toApiParentId(_0x43f2c2[_0x608c24(0x174)]),'label':_0x43f2c2['label'],'type':_0x608c24(0x180),'visible':!![],'sort':_0x43f2c2['sort'],'extend':{}},'description':_0x608c24(0x150)+String(_0x43f2c2[_0x608c24(0x141)])+_0x608c24(0x14d)});},async 'execute'(_0x2cca6f){const _0x28e6e5=a111_0x5950e1;validateCreateInput(_0x2cca6f);const _0x522650=await buildCreatePlan(_0x2cca6f,![]),_0x166c94=_0x522650[_0x28e6e5(0x146)];await recheckMutationSnapshot(_0x2cca6f,_0x522650,_0x28e6e5(0x157));let _0xc7aa50;try{_0xc7aa50=await createMenuEntity(_0x2cca6f['appCode'],_0x2cca6f[_0x28e6e5(0x16b)],{'parentId':toApiParentId(_0x166c94[_0x28e6e5(0x174)]),'label':String(_0x166c94[_0x28e6e5(0x141)]),'type':_0x28e6e5(0x180),'visible':!![],'sort':Number(_0x166c94['sort']),'extend':{}});}catch(_0x52777c){const _0x2efbd7=mapMenuApiError(_0x52777c,'create\x20folder');throw menuFailure(_0x2efbd7,_0x522650,{'stage':_0x28e6e5(0x170),'failed':{}});}const _0x4ad048=Number(_0xc7aa50['id']);if(!Number[_0x28e6e5(0x15a)](_0x4ad048)||_0x4ad048<=0x0){const _0x527784=menuError(_0x28e6e5(0x162),_0x28e6e5(0x178),_0x28e6e5(0x13f));throw menuFailure(_0x527784,_0x522650,{'stage':'create-response-validation','failed':{'createdId':_0xc7aa50['id']??null},'warnings':[_0x28e6e5(0x17c)],'verification':{'status':'failed','lookupCommand':_0x28e6e5(0x154)}});}const _0x37e44f=typeof _0xc7aa50[_0x28e6e5(0x159)]===_0x28e6e5(0x171)?_0xc7aa50[_0x28e6e5(0x159)]:'';if(!_0x37e44f[_0x28e6e5(0x144)]()){const _0x47dab3=menuError('menu_create_response_invalid',_0x28e6e5(0x14e)+_0x4ad048+_0x28e6e5(0x172),_0x28e6e5(0x142));throw menuFailure(_0x47dab3,_0x522650,{'stage':_0x28e6e5(0x15c),'succeeded':[{'id':_0x4ad048,'created':!![]}],'failed':{'id':_0x4ad048,'generatedPathConfirmed':![]},'warnings':['Folder\x20'+_0x4ad048+_0x28e6e5(0x13c)],'after':{..._0x166c94,'id':_0x4ad048,'path':_0x37e44f},'verification':{'status':'failed','lookupCommand':_0x28e6e5(0x154),'targetId':_0x4ad048}});}let _0x4badf2;try{_0x4badf2=await fetchMenuSnapshot(_0x2cca6f[_0x28e6e5(0x145)],_0x2cca6f['cookie']);}catch(_0x12f89b){const _0x4878c4=describeMenuErrorCause(_0x12f89b,_0x28e6e5(0x16f),_0x4ad048),_0x4a36b8=asVerificationError(_0x12f89b,'Folder\x20'+_0x4ad048+_0x28e6e5(0x14a));throw menuFailure(_0x4a36b8,_0x522650,{'stage':_0x28e6e5(0x15d),'succeeded':[{'id':_0x4ad048,'created':!![],'path':_0x37e44f}],'failed':{'id':_0x4ad048,'finalFactsConfirmed':![],..._0x4878c4},'warnings':['Folder\x20'+_0x4ad048+_0x28e6e5(0x14b)+JSON[_0x28e6e5(0x161)](_0x37e44f)+_0x28e6e5(0x175)],'after':{..._0x166c94,'id':_0x4ad048,'path':_0x37e44f},'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x4ad048}});}const _0x23a3ce=_0x4badf2[_0x28e6e5(0x164)]['get'](_0x4ad048);let _0x866d80;try{assertVerified(Boolean(_0x23a3ce),_0x28e6e5(0x148)+_0x4ad048+_0x28e6e5(0x183)),_0x866d80=_0x23a3ce,assertVerified(_0x866d80[_0x28e6e5(0x155)]===_0x28e6e5(0x180),'Created\x20menu\x20'+_0x4ad048+_0x28e6e5(0x152)),assertVerified(_0x866d80[_0x28e6e5(0x141)]===_0x166c94['label'],_0x28e6e5(0x148)+_0x4ad048+_0x28e6e5(0x16c)),assertVerified(_0x866d80[_0x28e6e5(0x159)]===_0x37e44f&&Boolean(_0x866d80[_0x28e6e5(0x159)]['trim']()),_0x28e6e5(0x148)+_0x4ad048+_0x28e6e5(0x16d)),assertVerified(_0x866d80[_0x28e6e5(0x151)]===!![],_0x28e6e5(0x148)+_0x4ad048+_0x28e6e5(0x176)),assertVerified(_0x866d80[_0x28e6e5(0x158)][_0x28e6e5(0x14f)]===0x0,_0x28e6e5(0x148)+_0x4ad048+'\x20has\x20resources.'),assertVerified(_0x866d80[_0x28e6e5(0x153)]===0x0,_0x28e6e5(0x148)+_0x4ad048+_0x28e6e5(0x177)),assertVerified(_0x866d80[_0x28e6e5(0x143)]===_0x166c94['sort'],_0x28e6e5(0x148)+_0x4ad048+_0x28e6e5(0x184)),assertVerified(_0x866d80['parentId']===_0x166c94[_0x28e6e5(0x174)],_0x28e6e5(0x148)+_0x4ad048+_0x28e6e5(0x16e)+(_0x866d80[_0x28e6e5(0x174)]??_0x28e6e5(0x15f))+'.'),assertVerified(_0x866d80[_0x28e6e5(0x156)]==null,'Created\x20folder\x20'+_0x4ad048+'\x20unexpectedly\x20owns\x20a\x20page.');const _0x18a6dd=_0x866d80['parentId']==null?undefined:requireFolder(_0x4badf2,_0x866d80['parentId']);assertVerified(_0x866d80[_0x28e6e5(0x140)]===(_0x18a6dd?_0x18a6dd['depth']+0x1:0x0),'Created\x20folder\x20'+_0x4ad048+_0x28e6e5(0x14c));}catch(_0x2066ca){const _0x3c10b6=describeMenuErrorCause(_0x2066ca,_0x28e6e5(0x16f),_0x4ad048),_0x242a29=asVerificationError(_0x2066ca,_0x28e6e5(0x15b)+_0x4ad048+_0x28e6e5(0x13d));throw menuFailure(_0x242a29,_0x522650,{'stage':_0x28e6e5(0x15d),'succeeded':[{'id':_0x4ad048,'created':!![],'path':_0x37e44f}],'failed':{'id':_0x4ad048,'finalFactsConfirmed':![],..._0x3c10b6},'warnings':[_0x28e6e5(0x15b)+_0x4ad048+_0x28e6e5(0x160)],'after':_0x23a3ce??{..._0x166c94,'id':_0x4ad048,'path':_0x37e44f},'verification':{'status':_0x28e6e5(0x13a),'lookupCommand':_0x28e6e5(0x154),'targetId':_0x4ad048}});}const _0x34b99e=mutationResult({..._0x522650,'after':_0x866d80,'dryRun':![],'succeeded':[{'id':_0x4ad048,'type':_0x28e6e5(0x180),'path':_0x37e44f}],'verification':{'checkedBy':_0x28e6e5(0x168),'snapshotHash':_0x4badf2[_0x28e6e5(0x17f)],'folder':!![],'path':_0x37e44f,'emptyResources':!![]}});return{'ok':!![],'data':_0x34b99e,'message':_0x28e6e5(0x182)+_0x4ad048+'.'};}};function validateCreateInput(_0x1f86eb){const _0x1614ea=a111_0x5950e1,_0x323bfd=_0x1f86eb['str'](_0x1614ea(0x141))[_0x1614ea(0x144)]();if(!_0x323bfd)throw CliErrors['flagMissing'](_0x1614ea(0x141));parseParentId(_0x1f86eb,_0x1614ea(0x147)),validateSort(_0x1f86eb);}async function buildCreatePlan(_0x496c89,_0x5a8d0c){const _0x4706c7=a111_0x5950e1,_0x22c8a0=await fetchMutationSnapshot(_0x496c89,_0x4706c7(0x157)),_0x3b65cd=parseParentId(_0x496c89,'parent-id')??null;if(_0x3b65cd!=null)requireFolder(_0x22c8a0,_0x3b65cd);const _0x1afa79=validateSort(_0x496c89),_0x4cfd41=_0x1afa79??nextSiblingSort(_0x22c8a0,_0x3b65cd,_0x4706c7(0x180)),_0x5505b6=_0x496c89[_0x4706c7(0x15e)](_0x4706c7(0x141))[_0x4706c7(0x144)]();return mutationResult({'operation':_0x4706c7(0x173),'selector':{'label':_0x5505b6,'parentId':_0x3b65cd},'before':null,'after':{'id':null,'parentId':_0x3b65cd,'label':_0x5505b6,'path':_0x4706c7(0x17d),'type':'folder','visible':!![],'sort':_0x4cfd41,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x5a8d0c,'backend':[...BACKEND],'plannedActions':[{'stage':_0x4706c7(0x13e),'method':_0x4706c7(0x179),'path':_0x4706c7(0x181),'body':{'parentId':toApiParentId(_0x3b65cd),'label':_0x5505b6,'type':'folder','visible':!![],'sort':_0x4cfd41,'extend':{}}}],'snapshotHash':_0x22c8a0[_0x4706c7(0x17f)],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a112_0x2e1e(){const _0x1fbc45=['hash','117FGWpsB','Menu\x20','group-update','966020HBPPCH','Folder\x20','364510PiCxiB','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','menu','selector','3095640ovSHvp','verify\x20folder\x20update','parent-id','failed','12LAKKrx','appCode','str','menu\x20list','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','/smartapi/menu/update','string','validation','parentId','--label\x20cannot\x20be\x20empty.','verification','rabetbase\x20menu\x20list\x20--format\x20json','write','74015hDjwkv','1245636evNoXW','folder','\x22,\x20not\x20folder.','update\x20folder','Updated\x20folder\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','type','menu_not_folder','update','404824eMOcyd','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','label','sort','trim','No\x20online\x20fields\x20would\x20change.','\x20label\x20update\x20did\x20not\x20take\x20effect.','124552gGkVxc','30pwpkAQ','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','Would\x20update\x20folder\x20','cookie'];a112_0x2e1e=function(){return _0x1fbc45;};return a112_0x2e1e();}const a112_0x39c72a=a112_0x137a;(function(_0x1009d3,_0x325fe2){const _0x49309e=a112_0x137a,_0x539cbd=_0x1009d3();while(!![]){try{const _0x15976c=parseInt(_0x49309e(0x140))/0x1+parseInt(_0x49309e(0x14a))/0x2+-parseInt(_0x49309e(0x152))/0x3*(parseInt(_0x49309e(0x151))/0x4)+parseInt(_0x49309e(0x15a))/0x5+parseInt(_0x49309e(0x133))/0x6*(parseInt(_0x49309e(0x141))/0x7)+-parseInt(_0x49309e(0x12f))/0x8+-parseInt(_0x49309e(0x157))/0x9*(-parseInt(_0x49309e(0x15c))/0xa);if(_0x15976c===_0x325fe2)break;else _0x539cbd['push'](_0x539cbd['shift']());}catch(_0x586c1d){_0x539cbd['push'](_0x539cbd['shift']());}}}(a112_0x2e1e,0x92bdf));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a112_0x39c72a(0x138)}];export const menuGroupUpdate={'service':a112_0x39c72a(0x12d),'command':a112_0x39c72a(0x159),'description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a112_0x39c72a(0x13f),'structuredErrors':!![],'rejectedFlags':[{'name':'parent-id','message':'Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','hint':'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.'}],'flags':[MENU_ID_FLAG,{'name':a112_0x39c72a(0x14c),'type':a112_0x39c72a(0x139),'description':'New\x20folder\x20label'},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0xf4d83){validateUpdateInput(_0xf4d83);},async 'dryRun'(_0x5ea270){const _0x5670c3=a112_0x39c72a;validateUpdateInput(_0x5ea270);const {plan:_0x2d1402,patch:_0x4f4849}=await buildUpdatePlan(_0x5ea270,!![]);return menuDryRunResult(_0x2d1402,{'method':'POST','url':'/smartapi/menu/update','body':_0x4f4849,'description':_0x5670c3(0x154)+_0x2d1402[_0x5670c3(0x12e)]['id']+'.'});},async 'execute'(_0x1492c7){const _0x30f840=a112_0x39c72a;validateUpdateInput(_0x1492c7);const {plan:_0x368584,patch:_0x43f6d3,noChanges:_0x4a7443}=await buildUpdatePlan(_0x1492c7,![]),_0x22b81a=Number(_0x368584[_0x30f840(0x12e)]['id']),_0x5d8f8c=await recheckMutationSnapshot(_0x1492c7,_0x368584,_0x30f840(0x144),_0x22b81a);if(!_0x4a7443)try{await updateMenuEntity(_0x1492c7[_0x30f840(0x134)],_0x1492c7[_0x30f840(0x155)],_0x43f6d3);}catch(_0x1fe978){const _0x20c902=mapMenuApiError(_0x1fe978,_0x30f840(0x144),_0x22b81a);throw menuFailure(_0x20c902,_0x368584,{'stage':_0x30f840(0x149),'failed':{'id':_0x22b81a}});}let _0x28aa5f=_0x5d8f8c,_0x3fabb7;try{!_0x4a7443&&(_0x28aa5f=await fetchMenuSnapshot(_0x1492c7[_0x30f840(0x134)],_0x1492c7[_0x30f840(0x155)])),_0x3fabb7=requireMenu(_0x28aa5f,_0x22b81a),verifyPatch(_0x3fabb7,_0x43f6d3),_0x3fabb7[_0x30f840(0x13b)]!=null&&requireFolder(_0x28aa5f,_0x3fabb7[_0x30f840(0x13b)]);}catch(_0x57fcde){const _0x4313c7=describeMenuErrorCause(_0x57fcde,_0x30f840(0x130),_0x22b81a),_0x432c43=asVerificationError(_0x57fcde,'Update\x20request\x20for\x20folder\x20'+_0x22b81a+_0x30f840(0x15d));throw menuFailure(_0x432c43,_0x368584,{'stage':_0x30f840(0x13d),'succeeded':[{'id':_0x22b81a,'updateRequested':!_0x4a7443,'skipped':_0x4a7443}],'failed':{'id':_0x22b81a,'requestedStateConfirmed':![],..._0x4313c7},'warnings':[_0x30f840(0x14b)],'verification':{'status':_0x30f840(0x132),'lookupCommand':_0x30f840(0x13e),'targetId':_0x22b81a}});}const _0x5e8760=mutationResult({..._0x368584,'after':_0x3fabb7,'dryRun':![],'succeeded':[{'id':_0x22b81a,'updated':!_0x4a7443,'skipped':_0x4a7443}],'verification':{'checkedBy':_0x30f840(0x136),'snapshotHash':_0x28aa5f[_0x30f840(0x156)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x5e8760,'message':_0x4a7443?_0x30f840(0x15b)+_0x22b81a+'\x20already\x20matches\x20the\x20requested\x20state.':_0x30f840(0x145)+_0x22b81a+'.'};}};function validateUpdateInput(_0x41b316){const _0x938d6f=a112_0x39c72a;validateExactId(_0x41b316);if(hasFlag(_0x41b316,_0x938d6f(0x131)))throw CliErrors[_0x938d6f(0x13a)](_0x938d6f(0x137),'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.');if(!hasFlag(_0x41b316,'label')&&!hasFlag(_0x41b316,'sort'))throw CliErrors[_0x938d6f(0x13a)](_0x938d6f(0x153));if(hasFlag(_0x41b316,_0x938d6f(0x14c))&&!_0x41b316[_0x938d6f(0x135)](_0x938d6f(0x14c))['trim']())throw CliErrors['validation'](_0x938d6f(0x13c));validateSort(_0x41b316);}async function buildUpdatePlan(_0x311e4b,_0x27de88){const _0x388eda=a112_0x39c72a,_0x2ed841=validateExactId(_0x311e4b),_0x4eb42b=await fetchMutationSnapshot(_0x311e4b,_0x388eda(0x144),_0x2ed841),_0xc1a3f5=requireMenu(_0x4eb42b,_0x2ed841);if(_0xc1a3f5[_0x388eda(0x147)]!==_0x388eda(0x142))throw menuError(_0x388eda(0x148),_0x388eda(0x158)+_0x2ed841+'\x20is\x20type\x20\x22'+(_0xc1a3f5[_0x388eda(0x147)]||'unknown')+_0x388eda(0x143),_0x388eda(0x146));assertExpectedState(_0x311e4b,_0xc1a3f5);const _0x33d570={'id':_0x2ed841},_0x16496f={..._0xc1a3f5};if(hasFlag(_0x311e4b,_0x388eda(0x14c))){const _0x16764d=_0x311e4b[_0x388eda(0x135)](_0x388eda(0x14c))[_0x388eda(0x14e)]();_0x33d570[_0x388eda(0x14c)]=_0x16764d,_0x16496f['label']=_0x16764d;}if(hasFlag(_0x311e4b,_0x388eda(0x14d))){const _0x497022=validateSort(_0x311e4b);_0x33d570[_0x388eda(0x14d)]=_0x497022,_0x16496f['sort']=_0x497022;}const _0x2bae78=sameRequestedState(_0xc1a3f5,_0x16496f),_0x88322f=_0x2bae78?[_0x388eda(0x14f)]:[];return{'patch':_0x33d570,'noChanges':_0x2bae78,'plan':mutationResult({'operation':_0x388eda(0x159),'selector':{'id':_0x2ed841},'before':_0xc1a3f5,'after':_0x16496f,'dryRun':_0x27de88,'backend':[...BACKEND],'snapshotHash':_0x4eb42b[_0x388eda(0x156)],'warnings':_0x88322f})};}function sameRequestedState(_0x410de8,_0x273b7a){const _0xaaa30c=a112_0x39c72a;return _0x410de8['label']===_0x273b7a[_0xaaa30c(0x14c)]&&_0x410de8[_0xaaa30c(0x14d)]===_0x273b7a[_0xaaa30c(0x14d)];}function a112_0x137a(_0x2c41f5,_0x2807f6){_0x2c41f5=_0x2c41f5-0x12d;const _0x2e1e79=a112_0x2e1e();let _0x137ad0=_0x2e1e79[_0x2c41f5];return _0x137ad0;}function verifyPatch(_0x1cac59,_0x133c0e){const _0x193cb3=a112_0x39c72a;assertVerified(_0x1cac59[_0x193cb3(0x147)]===_0x193cb3(0x142),_0x193cb3(0x158)+_0x1cac59['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x133c0e[_0x193cb3(0x14c)]!==undefined&&assertVerified(_0x1cac59[_0x193cb3(0x14c)]===_0x133c0e[_0x193cb3(0x14c)],_0x193cb3(0x15b)+_0x1cac59['id']+_0x193cb3(0x150)),_0x133c0e[_0x193cb3(0x14d)]!==undefined&&assertVerified(_0x1cac59[_0x193cb3(0x14d)]===_0x133c0e[_0x193cb3(0x14d)],_0x193cb3(0x15b)+_0x1cac59['id']+'\x20sort\x20update\x20did\x20not\x20take\x20effect.');}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* menu 命令组 —— 声明式命令定义导出
|
|
3
|
+
*
|
|
4
|
+
* menu list: 查询线上菜单事实(只读)
|
|
5
|
+
* menu external-link-create: 创建外部网站链接菜单
|
|
6
|
+
* menu external-link-update: 原地更新一个 iframe/link 叶子菜单的 URL
|
|
7
|
+
* menu rename: 按 ID 原地修改任意类型菜单的名称
|
|
8
|
+
* menu sync: 将本地页面同步到平台(交互式 checkbox 或静默 --yes/--params)
|
|
9
|
+
* menu asset-update: 批量更新线上菜单的 CDN 资源 URL
|
|
10
|
+
*
|
|
11
|
+
* 相比 legacy CommandModule(menu.tsx):
|
|
12
|
+
* - 声明式 flags,自动生成帮助文本
|
|
13
|
+
* - 走 framework/runner 管线(risk 检查、dryRun 支持等)
|
|
14
|
+
* - 交互式使用 @inquirer/prompts,不再依赖 Ink
|
|
15
|
+
*/
|
|
16
|
+
import type { CommandDefinition } from "../../framework/types.js";
|
|
17
|
+
export declare const menuDefinitions: CommandDefinition[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3bfbdc,_0x5f46dd){const _0x126392=a113_0x3fd8,_0x7aec1f=_0x3bfbdc();while(!![]){try{const _0x376b42=-parseInt(_0x126392(0x6a))/0x1+-parseInt(_0x126392(0x67))/0x2+parseInt(_0x126392(0x6d))/0x3*(parseInt(_0x126392(0x6c))/0x4)+parseInt(_0x126392(0x6e))/0x5+parseInt(_0x126392(0x65))/0x6*(-parseInt(_0x126392(0x68))/0x7)+-parseInt(_0x126392(0x66))/0x8+-parseInt(_0x126392(0x6b))/0x9*(-parseInt(_0x126392(0x69))/0xa);if(_0x376b42===_0x5f46dd)break;else _0x7aec1f['push'](_0x7aec1f['shift']());}catch(_0x5bb302){_0x7aec1f['push'](_0x7aec1f['shift']());}}}(a113_0x3769,0x663b1));function a113_0x3fd8(_0x1cac86,_0x2b0d16){_0x1cac86=_0x1cac86-0x65;const _0x376971=a113_0x3769();let _0x3fd837=_0x376971[_0x1cac86];return _0x3fd837;}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';function a113_0x3769(){const _0xcce825=['396wDurDa','3014030tFUysG','6Jmence','2471448qNlwCo','1305046KyLHkN','4015298BQiqVB','80OQNxgf','833665rDHjYc','2051154aZavHq','10952oGSNzl'];a113_0x3769=function(){return _0xcce825;};return a113_0x3769();}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';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a114_0x2b2267=a114_0x372a;(function(_0x2113ed,_0x4c26c3){const _0x1547cb=a114_0x372a,_0x8cfaae=_0x2113ed();while(!![]){try{const _0x46e011=-parseInt(_0x1547cb(0x83))/0x1*(parseInt(_0x1547cb(0x80))/0x2)+parseInt(_0x1547cb(0x8d))/0x3+parseInt(_0x1547cb(0x86))/0x4*(-parseInt(_0x1547cb(0x7f))/0x5)+-parseInt(_0x1547cb(0x7d))/0x6*(-parseInt(_0x1547cb(0x84))/0x7)+parseInt(_0x1547cb(0x8c))/0x8+parseInt(_0x1547cb(0x7b))/0x9+parseInt(_0x1547cb(0x7c))/0xa*(-parseInt(_0x1547cb(0x82))/0xb);if(_0x46e011===_0x4c26c3)break;else _0x8cfaae['push'](_0x8cfaae['shift']());}catch(_0x1118d7){_0x8cfaae['push'](_0x8cfaae['shift']());}}}(a114_0x5575,0x4db33));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';function a114_0x372a(_0x32e994,_0x516c4e){_0x32e994=_0x32e994-0x78;const _0x5575f9=a114_0x5575();let _0x372a44=_0x5575f9[_0x32e994];return _0x372a44;}function a114_0x5575(){const _0x16ff14=['menu','366305pQNinV','2oBnMof','verbose','209wGAzVz','270223otiShB','1071FwyfRq','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','28otOVfY','list','total','\x20menu(s)','No\x20menus\x20found.','hash','3079960XjlcIM','1183341HTFqCq','menus','boolean','Found\x20','cookie','appCode','map','5325057RnvRVK','308290vMtcmv','12390zqvqwU'];a114_0x5575=function(){return _0x16ff14;};return a114_0x5575();}export const menuList={'service':a114_0x2b2267(0x7e),'command':a114_0x2b2267(0x87),'description':'List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':a114_0x2b2267(0x81),'type':a114_0x2b2267(0x8f),'description':a114_0x2b2267(0x85)}],async 'execute'(_0x459d5a){const _0x6a5ec=a114_0x2b2267,_0x3447df=_0x459d5a['bool'](_0x6a5ec(0x81)),_0x5cc7dd=await fetchMenuSnapshot(_0x459d5a[_0x6a5ec(0x79)],_0x459d5a[_0x6a5ec(0x78)],{'verbose':_0x3447df});return{'ok':!![],'data':{'total':_0x5cc7dd[_0x6a5ec(0x88)],'snapshotHash':_0x5cc7dd[_0x6a5ec(0x8b)],'menus':_0x5cc7dd[_0x6a5ec(0x8e)][_0x6a5ec(0x7a)](toMenuListItem)},'message':_0x5cc7dd[_0x6a5ec(0x88)]===0x0?_0x6a5ec(0x8a):_0x6a5ec(0x90)+_0x5cc7dd[_0x6a5ec(0x88)]+_0x6a5ec(0x89)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a115_0x2dec(){const _0x5b02bf=['failed','childrenCount','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','parentId','40076390IuHQqb','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','155HbunGl','menu_state_drift','menu_move_source_not_leaf','4848930LTwouJ','move\x20menu',',\x20current\x20','8ZuJJNA','hash','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','Would\x20move\x20menu\x20','expect-parent-id','Moved\x20menu\x20','sort','8792eRpwmw','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','POST','5424483tZQxZe','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','appCode','after','4914917tWtBRr','\x20parent\x20changed:\x20expected\x20','26jfMEtg','update','move','238132qrWMhA','11623782XQaqht','parent-id','\x20is\x20no\x20longer\x20a\x20leaf.','move-menu','Menu\x20','verification','write','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','type','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','menu\x20list','cookie','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','verify\x20menu\x20move','menu','/smartapi/menu/update'];a115_0x2dec=function(){return _0x5b02bf;};return a115_0x2dec();}const a115_0x2cd24a=a115_0x1275;(function(_0x19ec3e,_0x184635){const _0x43b4fc=a115_0x1275,_0x10fc5b=_0x19ec3e();while(!![]){try{const _0x1e5a01=-parseInt(_0x43b4fc(0x1f8))/0x1*(-parseInt(_0x43b4fc(0x201))/0x2)+-parseInt(_0x43b4fc(0x1fb))/0x3+-parseInt(_0x43b4fc(0x204))/0x4*(-parseInt(_0x43b4fc(0x1eb))/0x5)+-parseInt(_0x43b4fc(0x205))/0x6+parseInt(_0x43b4fc(0x1ff))/0x7*(-parseInt(_0x43b4fc(0x1f1))/0x8)+-parseInt(_0x43b4fc(0x1ee))/0x9+parseInt(_0x43b4fc(0x1e9))/0xa;if(_0x1e5a01===_0x184635)break;else _0x10fc5b['push'](_0x10fc5b['shift']());}catch(_0xead895){_0x10fc5b['push'](_0x10fc5b['shift']());}}}(a115_0x2dec,0xef86b));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':a115_0x2cd24a(0x1fa),'path':a115_0x2cd24a(0x1e4)}];function a115_0x1275(_0x57714a,_0x1d9c04){_0x57714a=_0x57714a-0x1d7;const _0x2dec47=a115_0x2dec();let _0x1275e1=_0x2dec47[_0x57714a];return _0x1275e1;}export const menuMove={'service':'menu','command':a115_0x2cd24a(0x203),'description':a115_0x2cd24a(0x1f9),'risk':a115_0x2cd24a(0x1da),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2728a9){validateMoveInput(_0x2728a9);},async 'dryRun'(_0x2c4bb5){const _0x1eebf8=a115_0x2cd24a,{plan:_0x575dd6,patch:_0x22fcd1}=await buildMovePlan(_0x2c4bb5,!![]);return menuDryRunResult(_0x575dd6,{'method':_0x1eebf8(0x1fa),'url':_0x1eebf8(0x1e4),'body':{..._0x22fcd1,'appCode':_0x2c4bb5[_0x1eebf8(0x1fd)]},'description':_0x1eebf8(0x1f4)+_0x22fcd1['id']+'.'});},async 'execute'(_0x3683bf){const _0x3470be=a115_0x2cd24a;validateMoveInput(_0x3683bf);const {plan:_0x4902ff,patch:_0x12b48f,noChanges:_0x2f9203,snapshot:_0x1b676d}=await buildMovePlan(_0x3683bf,![]),_0x80dd81=_0x12b48f['id'];if(!_0x2f9203)try{await updateMenuEntity(_0x3683bf[_0x3470be(0x1fd)],_0x3683bf['cookie'],_0x12b48f);}catch(_0x4870d9){const _0x1e48ed=mapMenuApiError(_0x4870d9,'move',_0x80dd81);throw menuFailure(_0x1e48ed,_0x4902ff,{'stage':_0x3470be(0x202),'failed':{'id':_0x80dd81},'warnings':['The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':'failed','targetId':_0x80dd81,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}let _0x51bf60,_0x193831;try{_0x51bf60=_0x2f9203?_0x1b676d:await fetchMenuSnapshot(_0x3683bf[_0x3470be(0x1fd)],_0x3683bf[_0x3470be(0x1e0)]),_0x193831=requireMenu(_0x51bf60,_0x80dd81),verifyMove(_0x193831,_0x4902ff[_0x3470be(0x1fe)]),_0x193831[_0x3470be(0x1e8)]!==null&&requireFolder(_0x51bf60,_0x193831[_0x3470be(0x1e8)]);}catch(_0x296b91){const _0x436efd=describeMenuErrorCause(_0x296b91,_0x3470be(0x1e2),_0x80dd81),_0x1b780e=asVerificationError(_0x296b91,'Move\x20request\x20for\x20menu\x20'+_0x80dd81+_0x3470be(0x1e7));throw menuFailure(_0x1b780e,_0x4902ff,{'stage':_0x3470be(0x1d9),'succeeded':[{'id':_0x80dd81,'updateRequested':!_0x2f9203,'skipped':_0x2f9203}],'failed':{'id':_0x80dd81,'requestedStateConfirmed':![],..._0x436efd},'warnings':[_0x3470be(0x1dd)],'verification':{'status':_0x3470be(0x1e5),'targetId':_0x80dd81,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}const _0x43eea7=mutationResult({..._0x4902ff,'after':_0x193831,'dryRun':![],'succeeded':[{'id':_0x80dd81,'updated':!_0x2f9203,'skipped':_0x2f9203}],'verification':{'checkedBy':_0x3470be(0x1df),'snapshotHash':_0x51bf60[_0x3470be(0x1f2)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x43eea7,'message':_0x2f9203?_0x3470be(0x1d8)+_0x80dd81+_0x3470be(0x1e1):_0x3470be(0x1f6)+_0x80dd81+'.'};}};function validateMoveInput(_0xef0e54){const _0xe2e52a=a115_0x2cd24a;validateExactId(_0xef0e54),parseParentId(_0xef0e54,_0xe2e52a(0x206),{'required':!![]}),parseParentId(_0xef0e54,_0xe2e52a(0x1f5),{'required':!![]}),validateSort(_0xef0e54);}async function buildMovePlan(_0x243c52,_0x4de33d){const _0xab7a1b=a115_0x2cd24a,_0xe356db=validateExactId(_0x243c52),_0x4fef8c=parseParentId(_0x243c52,'parent-id',{'required':!![]}),_0x591163=parseParentId(_0x243c52,'expect-parent-id',{'required':!![]}),_0x24ff34=validateSort(_0x243c52),_0x252500=await fetchMutationSnapshot(_0x243c52,_0xab7a1b(0x1ef),_0xe356db),_0x274782=requireMenu(_0x252500,_0xe356db);if(_0x274782['type']==='folder'||_0x274782[_0xab7a1b(0x1e6)]!==0x0)throw menuError(_0xab7a1b(0x1ed),_0xab7a1b(0x1d8)+_0xe356db+'\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.',_0xab7a1b(0x1f3));if(_0x274782[_0xab7a1b(0x1e8)]!==_0x591163)throw menuError(_0xab7a1b(0x1ec),_0xab7a1b(0x1d8)+_0xe356db+_0xab7a1b(0x200)+formatParent(_0x591163)+_0xab7a1b(0x1f0)+formatParent(_0x274782[_0xab7a1b(0x1e8)])+'.',_0xab7a1b(0x1de));_0x4fef8c!==null&&requireFolder(_0x252500,_0x4fef8c);const _0x4aa1ca=_0x24ff34??(_0x274782['parentId']===_0x4fef8c?_0x274782['sort']??0x0:nextSiblingSort(_0x252500,_0x4fef8c,_0xab7a1b(0x1e3))),_0x2fa104={..._0x274782,'parentId':_0x4fef8c,'sort':_0x4aa1ca},_0x49726a={'id':_0xe356db,'parentId':toApiParentId(_0x4fef8c),'sort':_0x4aa1ca},_0x42f20f=_0x274782[_0xab7a1b(0x1e8)]===_0x4fef8c&&_0x274782[_0xab7a1b(0x1f7)]===_0x4aa1ca;return{'patch':_0x49726a,'noChanges':_0x42f20f,'snapshot':_0x252500,'plan':mutationResult({'operation':_0xab7a1b(0x203),'selector':{'id':_0xe356db,'parentId':_0x4fef8c},'before':_0x274782,'after':_0x2fa104,'dryRun':_0x4de33d,'backend':[...BACKEND],'plannedActions':[{'stage':_0xab7a1b(0x1d7),'method':_0xab7a1b(0x1fa),'path':_0xab7a1b(0x1e4),'body':{..._0x49726a,'appCode':_0x243c52[_0xab7a1b(0x1fd)]}}],'snapshotHash':_0x252500[_0xab7a1b(0x1f2)],'warnings':_0x42f20f?[_0xab7a1b(0x1ea)]:[]})};}function verifyMove(_0x1d4e84,_0x538c51){const _0x1f1820=a115_0x2cd24a;assertVerified(_0x1d4e84[_0x1f1820(0x1dc)]!=='folder',_0x1f1820(0x1d8)+_0x1d4e84['id']+'\x20is\x20now\x20type\x20folder.'),assertVerified(_0x1d4e84[_0x1f1820(0x1e6)]===0x0,'Menu\x20'+_0x1d4e84['id']+_0x1f1820(0x207)),assertVerified(_0x1d4e84['parentId']===_0x538c51[_0x1f1820(0x1e8)],'Menu\x20'+_0x1d4e84['id']+_0x1f1820(0x1fc)),assertVerified(_0x1d4e84[_0x1f1820(0x1f7)]===_0x538c51[_0x1f1820(0x1f7)],_0x1f1820(0x1d8)+_0x1d4e84['id']+_0x1f1820(0x1db));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a116_0x1fd0de=a116_0x33a1;(function(_0x466c26,_0x347138){const _0x16d7da=a116_0x33a1,_0x327b3f=_0x466c26();while(!![]){try{const _0x1fd3eb=parseInt(_0x16d7da(0xc0))/0x1*(parseInt(_0x16d7da(0x10b))/0x2)+parseInt(_0x16d7da(0xc6))/0x3*(-parseInt(_0x16d7da(0xfe))/0x4)+parseInt(_0x16d7da(0xdd))/0x5+parseInt(_0x16d7da(0x110))/0x6*(-parseInt(_0x16d7da(0xf7))/0x7)+parseInt(_0x16d7da(0xcf))/0x8+-parseInt(_0x16d7da(0x100))/0x9*(-parseInt(_0x16d7da(0x10c))/0xa)+parseInt(_0x16d7da(0xd8))/0xb*(-parseInt(_0x16d7da(0xc2))/0xc);if(_0x1fd3eb===_0x347138)break;else _0x327b3f['push'](_0x327b3f['shift']());}catch(_0x149f20){_0x327b3f['push'](_0x327b3f['shift']());}}}(a116_0x2d52,0x7b351));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,requireExplicitYes,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a116_0x33a1(_0x3315b5,_0x5ab387){_0x3315b5=_0x3315b5-0xb5;const _0x2d52a3=a116_0x2d52();let _0x33a1dc=_0x2d52a3[_0x3315b5];return _0x33a1dc;}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a116_0x1fd0de(0xbf),'path':a116_0x1fd0de(0xd4)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a116_0x1fd0de(0xe4),'command':'regroup-start','description':a116_0x1fd0de(0xf6),'risk':a116_0x1fd0de(0xc3),'structuredErrors':!![],'flags':[{'name':'label','type':a116_0x1fd0de(0xe0),'required':!![],'description':a116_0x1fd0de(0xe8)},{'name':a116_0x1fd0de(0x102),'type':a116_0x1fd0de(0xe0),'required':!![],'description':a116_0x1fd0de(0xe6)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x281c2e){validateRegroupInput(_0x281c2e),requireExplicitYes(_0x281c2e);},async 'dryRun'(_0xc7954c){const _0x58358d=a116_0x1fd0de;validateRegroupInput(_0xc7954c);const _0x13349e=await buildRegroupPlan(_0xc7954c,!![]);return menuDryRunResult(_0x13349e[_0x58358d(0xcc)],{'method':_0x58358d(0xbf),'url':_0x58358d(0xd4),'body':_0x13349e[_0x58358d(0xe2)],'description':'Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20'+JSON[_0x58358d(0xfd)](_0x13349e[_0x58358d(0xb8)])+_0x58358d(0xd7)+_0x13349e[_0x58358d(0xbb)][_0x58358d(0xd1)](',\x20')+_0x58358d(0xee)});},async 'execute'(_0x415b0c){const _0x593b7f=a116_0x1fd0de;validateRegroupInput(_0x415b0c),requireExplicitYes(_0x415b0c);const _0x336d18=await buildRegroupPlan(_0x415b0c,![]);await recheckMutationSnapshot(_0x415b0c,_0x336d18[_0x593b7f(0xcc)],_0x593b7f(0xbd));const _0x229c64=buildMenuLookupCommand(_0x415b0c[_0x593b7f(0xf1)]);let _0x27c746,_0x48a8d2;try{_0x27c746=await startMenuRegroup(_0x415b0c['cookie'],_0x336d18[_0x593b7f(0xe2)]),_0x48a8d2=normalizeAsyncTask(_0x27c746);}catch(_0x3b4159){const _0x11c184=await inspectRegroupAfterFailure(_0x415b0c[_0x593b7f(0xf1)],_0x415b0c[_0x593b7f(0xc8)],_0x336d18[_0x593b7f(0xb8)],_0x336d18[_0x593b7f(0xbb)]),_0x204b71=typeof _0x27c746?.['taskId']===_0x593b7f(0xe0)&&_0x27c746[_0x593b7f(0x10e)]['trim']()?_0x27c746[_0x593b7f(0x10e)]['trim']():null,_0x1869e2=_0x204b71?{'command':buildAsyncTaskStatusCommand(_0x204b71,_0x415b0c[_0x593b7f(0xf1)])}:null,_0x15df7b=mapMenuApiError(_0x3b4159,_0x593b7f(0xd6));throw menuFailure(_0x15df7b,_0x336d18[_0x593b7f(0xcc)],{'stage':_0x593b7f(0xc4),'failed':{'menuIds':_0x336d18[_0x593b7f(0xbb)],'taskId':_0x204b71,'groupingApplied':_0x11c184[_0x593b7f(0xf2)]?!![]:_0x593b7f(0xef)},'after':_0x11c184[_0x593b7f(0xf2)]??null,'warnings':[_0x593b7f(0xd2),..._0x11c184[_0x593b7f(0x105)]?['Regroup\x20readback\x20also\x20failed:\x20'+_0x11c184[_0x593b7f(0x105)]]:[],..._0x204b71?['The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.']:[]],'verification':{'status':_0x593b7f(0xcb),'groupingApplied':_0x11c184[_0x593b7f(0xf2)]?!![]:_0x593b7f(0xef),'taskId':_0x204b71,'query':_0x1869e2,'lookupCommand':_0x229c64}});}const _0x2762c4=buildAsyncTaskStatusCommand(_0x48a8d2[_0x593b7f(0x10e)],_0x415b0c[_0x593b7f(0xf1)]);let _0x1f41ad=null,_0x24c9cc=null,_0xe3f441=null;try{_0x1f41ad=await fetchMenuSnapshot(_0x415b0c[_0x593b7f(0xf1)],_0x415b0c[_0x593b7f(0xc8)]),_0x24c9cc=findAppliedRegroup(_0x1f41ad,_0x336d18['label'],_0x336d18['menuIds']);}catch(_0x168966){_0xe3f441=_0x168966 instanceof Error?_0x168966['message']:String(_0x168966);}const _0x56b48c=mutationResult({..._0x336d18['plan'],'after':_0x24c9cc??null,'dryRun':![],'succeeded':[{'groupId':_0x24c9cc?.[_0x593b7f(0xb9)]['id']??null,'menuIds':_0x336d18[_0x593b7f(0xbb)],'taskId':_0x48a8d2[_0x593b7f(0x10e)],'status':_0x48a8d2[_0x593b7f(0xd3)],'groupingApplied':_0x24c9cc?!![]:_0x593b7f(0xef)}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x1f41ad?.['hash']??null,'groupId':_0x24c9cc?.[_0x593b7f(0xb9)]['id']??null,'groupingApplied':_0x24c9cc?!![]:_0x593b7f(0xef),'readbackError':_0xe3f441,'lookupCommand':_0x229c64},'warnings':[..._0x336d18[_0x593b7f(0xcc)][_0x593b7f(0x107)],...!_0x24c9cc?[unconfirmedRegroupWarning(_0x48a8d2)]:[],..._0xe3f441?[_0x593b7f(0xf9)+_0xe3f441]:[]]}),_0x244964=_0x48a8d2[_0x593b7f(0xd3)]===_0x593b7f(0x109)&&!_0x24c9cc?_0x593b7f(0xed)+_0x48a8d2[_0x593b7f(0x10e)]+'\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.':'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0x48a8d2);return{'ok':!![],'message':_0x244964,'data':{..._0x56b48c,'task':_0x48a8d2,'query':_0x48a8d2[_0x593b7f(0x10a)]?null:{'command':_0x2762c4}}};}};function validateRegroupInput(_0x5496cc){const _0x1cd0db=a116_0x1fd0de;if(!_0x5496cc[_0x1cd0db(0xfa)](_0x1cd0db(0xb8))['trim']())throw CliErrors['flagMissing'](_0x1cd0db(0xb8));parseMenuIds(_0x5496cc['str'](_0x1cd0db(0x102)));}function parseMenuIds(_0x297cea){const _0x180399=a116_0x1fd0de,_0x49a719=_0x297cea[_0x180399(0xba)](',')['map'](_0x5a03a6=>_0x5a03a6[_0x180399(0x101)]());if(_0x49a719[_0x180399(0x104)]===0x0||_0x49a719[_0x180399(0xe5)](_0xd53292=>!_0xd53292))throw CliErrors[_0x180399(0xd5)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x399fba=_0x49a719[_0x180399(0xe9)](_0x92a386=>{const _0x3ee9ba=_0x180399;if(!/^\d+$/[_0x3ee9ba(0xc7)](_0x92a386))throw CliErrors[_0x3ee9ba(0xd5)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x38ed4e=Number(_0x92a386);if(!Number[_0x3ee9ba(0xe1)](_0x38ed4e)||_0x38ed4e<=0x0)throw CliErrors[_0x3ee9ba(0xd5)](_0x3ee9ba(0xb5));return _0x38ed4e;});if(new Set(_0x399fba)['size']!==_0x399fba[_0x180399(0x104)])throw CliErrors['validation'](_0x180399(0xf8));if(_0x399fba[_0x180399(0x104)]>MAX_REGROUP_MENU_COUNT)throw CliErrors['validation'](_0x180399(0xda)+MAX_REGROUP_MENU_COUNT+'\x20menus\x20per\x20regroup\x20request.');return _0x399fba;}function a116_0x2d52(){const _0x3758ea=['3FYHrkt','<platform-generated>','1800IqSkHl','high-risk-write','regroup-submit','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','2913yPVKWN','test','cookie','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','failed','plan','childrenIds','<new-group-id>','5919696Tjlnjd','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','join','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','status','/smartapi/menu/regroup','validation','start\x20menu\x20regroup','\x20and\x20regroup\x20menu\x20ids\x20','80113uxwonS','knownStatus','--menu-ids\x20supports\x20at\x20most\x20','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','submit-regroup-task','4738755HryoDd','byId','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','string','isSafeInteger','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.','menu','some','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','sort','Label\x20of\x20the\x20new\x20root\x20folder','map','menus','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','regroup-start','Regroup\x20task\x20',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','unconfirmed','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','appCode','applied','parentId','menu_regroup_target_not_leaf','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','68299YYHejb','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','Regroup\x20readback\x20failed:\x20','str','menu_regroup_target_label_missing','\x27\x5c\x27\x27','stringify','3704cFkxAc','hash','9pSQlco','trim','menu-ids','folder','length','readbackError','replace','warnings','toLowerCase','SUCCESS','isTerminal','401582cLopcG','8013440NCBXSN','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','taskId','message','366PsdsuR','type','filter','Menu\x20','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','\x20--format\x20compress','\x20menu\x20list\x20--appcode\x20','label','group','split','menuIds','childrenCount','start\x20regroup','get','POST'];a116_0x2d52=function(){return _0x3758ea;};return a116_0x2d52();}function buildMenuLookupCommand(_0x84c882){const _0x214d81=a116_0x1fd0de,_0x2332c4='\x27'+_0x84c882[_0x214d81(0x106)](/'/g,_0x214d81(0xfc))+'\x27';return CLI_BIN_NAME+_0x214d81(0xb7)+_0x2332c4+_0x214d81(0xb6);}function unconfirmedRegroupWarning(_0x54f666){const _0x3ec306=a116_0x1fd0de;if(_0x54f666['status']===_0x3ec306(0x109))return _0x3ec306(0xc9);if(_0x54f666[_0x3ec306(0xd3)]==='FAILED')return'The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x54f666[_0x3ec306(0xd9)])return _0x3ec306(0xd0);return _0x3ec306(0xe3);}async function buildRegroupPlan(_0x4afb06,_0x277967){const _0x1dbbd7=a116_0x1fd0de,_0x5bccac=_0x4afb06[_0x1dbbd7(0xfa)](_0x1dbbd7(0xb8))[_0x1dbbd7(0x101)](),_0x65f529=parseMenuIds(_0x4afb06[_0x1dbbd7(0xfa)](_0x1dbbd7(0x102))),_0x47a5bb=await fetchMutationSnapshot(_0x4afb06,'plan\x20regroup'),_0xd169b6=_0x65f529['map'](_0x537f8f=>requireMenu(_0x47a5bb,_0x537f8f));for(const _0x43e0f0 of _0xd169b6){if(_0x43e0f0[_0x1dbbd7(0x111)][_0x1dbbd7(0x101)]()[_0x1dbbd7(0x108)]()==='folder'||_0x43e0f0[_0x1dbbd7(0xbc)]>0x0)throw menuError(_0x1dbbd7(0xf4),_0x1dbbd7(0x113)+_0x43e0f0['id']+_0x1dbbd7(0xca),'Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.');if(!_0x43e0f0['label'][_0x1dbbd7(0x101)]())throw menuError(_0x1dbbd7(0xfb),_0x1dbbd7(0x113)+_0x43e0f0['id']+_0x1dbbd7(0xf0),_0x1dbbd7(0x10d));}const _0x37b3f0=findAppliedRegroup(_0x47a5bb,_0x5bccac,_0x65f529);if(_0x37b3f0)throw menuError('menu_regroup_already_applied','Menus\x20'+_0x65f529[_0x1dbbd7(0xd1)](',\x20')+_0x1dbbd7(0xdb)+_0x37b3f0['group']['id']+'\x20('+JSON[_0x1dbbd7(0xfd)](_0x5bccac)+').',_0x1dbbd7(0xf5));const _0x5f4409=_0x47a5bb[_0x1dbbd7(0xea)][_0x1dbbd7(0x112)](_0x44d0aa=>_0x44d0aa[_0x1dbbd7(0xf3)]==null&&_0x44d0aa[_0x1dbbd7(0x111)][_0x1dbbd7(0x101)]()[_0x1dbbd7(0x108)]()===_0x1dbbd7(0x103)&&_0x44d0aa[_0x1dbbd7(0xb8)]===_0x5bccac);if(_0x5f4409[_0x1dbbd7(0x104)]>0x0)throw menuError('menu_regroup_label_conflict','Root\x20folder\x20label\x20'+JSON[_0x1dbbd7(0xfd)](_0x5bccac)+_0x1dbbd7(0xdf)+_0x5f4409[_0x1dbbd7(0xe9)](_0x381168=>_0x381168['id'])[_0x1dbbd7(0xd1)](',\x20')+'.',_0x1dbbd7(0xc5));const _0x655db8={'appCode':_0x4afb06[_0x1dbbd7(0xf1)],'menuGroups':[{'label':_0x5bccac,'type':'folder','children':_0xd169b6[_0x1dbbd7(0xe9)](_0x1735c7=>({'id':_0x1735c7['id'],'label':_0x1735c7[_0x1dbbd7(0xb8)]}))}]},_0x34caf8=mutationResult({'operation':_0x1dbbd7(0xec),'selector':{'label':_0x5bccac,'menuIds':_0x65f529},'before':{'menus':_0xd169b6},'after':{'group':{'id':null,'parentId':null,'label':_0x5bccac,'path':_0x1dbbd7(0xc1),'type':_0x1dbbd7(0x103),'childrenIds':_0x65f529},'children':_0xd169b6['map'](_0x238c1e=>({'id':_0x238c1e['id'],'label':_0x238c1e['label'],'beforeParentId':_0x238c1e[_0x1dbbd7(0xf3)],'afterParentId':_0x1dbbd7(0xce)}))},'dryRun':_0x277967,'backend':[...BACKEND],'plannedActions':[{'stage':_0x1dbbd7(0xdc),'method':_0x1dbbd7(0xbf),'path':_0x1dbbd7(0xd4),'body':_0x655db8}],'snapshotHash':_0x47a5bb[_0x1dbbd7(0xff)],'warnings':[_0x1dbbd7(0xeb),'The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.']});return{'label':_0x5bccac,'menuIds':_0x65f529,'input':_0x655db8,'plan':_0x34caf8};}function findAppliedRegroup(_0x504381,_0x53ef38,_0x2e3ab0){const _0x2f59b1=a116_0x1fd0de,_0x5d2a89=_0x2e3ab0[_0x2f59b1(0xe9)](_0x434185=>_0x504381[_0x2f59b1(0xde)][_0x2f59b1(0xbe)](_0x434185))[_0x2f59b1(0x112)](_0x5741fb=>Boolean(_0x5741fb));if(_0x5d2a89[_0x2f59b1(0x104)]!==_0x2e3ab0[_0x2f59b1(0x104)])return null;const _0x507a07=_0x5d2a89[0x0]?.[_0x2f59b1(0xf3)];if(_0x507a07==null||_0x5d2a89[_0x2f59b1(0xe5)](_0x2db137=>_0x2db137['parentId']!==_0x507a07))return null;const _0x2dd0b0=_0x504381['byId']['get'](_0x507a07);if(!_0x2dd0b0||_0x2dd0b0[_0x2f59b1(0xf3)]!=null||_0x2dd0b0[_0x2f59b1(0x111)][_0x2f59b1(0x101)]()[_0x2f59b1(0x108)]()!=='folder'||_0x2dd0b0[_0x2f59b1(0xb8)]!==_0x53ef38)return null;const _0x398739=[..._0x2e3ab0][_0x2f59b1(0xe7)]((_0x46da69,_0x35d422)=>_0x46da69-_0x35d422),_0x580197=[..._0x2dd0b0[_0x2f59b1(0xcd)]][_0x2f59b1(0xe7)]((_0x24b4cb,_0x481e58)=>_0x24b4cb-_0x481e58);if(JSON['stringify'](_0x580197)!==JSON['stringify'](_0x398739))return null;return{'group':_0x2dd0b0,'children':_0x5d2a89};}async function inspectRegroupAfterFailure(_0xec2c1a,_0x6a4a3c,_0x1bdb1d,_0x4f9cd8){const _0x34829d=a116_0x1fd0de;try{const _0x1bb768=await fetchMenuSnapshot(_0xec2c1a,_0x6a4a3c);return{'applied':findAppliedRegroup(_0x1bb768,_0x1bdb1d,_0x4f9cd8),'readbackError':null};}catch(_0x1cb4d3){return{'applied':null,'readbackError':_0x1cb4d3 instanceof Error?_0x1cb4d3[_0x34829d(0x10f)]:String(_0x1cb4d3)};}}
|
|
1
|
+
const a116_0x5cc8a9=a116_0x68e5;(function(_0x2ab92a,_0x3c8663){const _0x497746=a116_0x68e5,_0x1e5d02=_0x2ab92a();while(!![]){try{const _0x2c06e2=-parseInt(_0x497746(0x13e))/0x1*(-parseInt(_0x497746(0xfa))/0x2)+parseInt(_0x497746(0x104))/0x3*(parseInt(_0x497746(0x13c))/0x4)+-parseInt(_0x497746(0x115))/0x5+parseInt(_0x497746(0x121))/0x6+-parseInt(_0x497746(0x12f))/0x7*(parseInt(_0x497746(0x130))/0x8)+parseInt(_0x497746(0x13f))/0x9*(-parseInt(_0x497746(0x146))/0xa)+parseInt(_0x497746(0x126))/0xb;if(_0x2c06e2===_0x3c8663)break;else _0x1e5d02['push'](_0x1e5d02['shift']());}catch(_0x374e58){_0x1e5d02['push'](_0x1e5d02['shift']());}}}(a116_0x2fb7,0x687fb));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,requireExplicitYes,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':a116_0x5cc8a9(0x138),'path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':'menu','command':'regroup-start','description':a116_0x5cc8a9(0x112),'risk':a116_0x5cc8a9(0x11f),'structuredErrors':!![],'flags':[{'name':a116_0x5cc8a9(0x125),'type':'string','required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a116_0x5cc8a9(0x131),'type':a116_0x5cc8a9(0x152),'required':!![],'description':a116_0x5cc8a9(0x10e)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5a6fb3){validateRegroupInput(_0x5a6fb3),requireExplicitYes(_0x5a6fb3);},async 'dryRun'(_0x373c04){const _0x586f35=a116_0x5cc8a9;validateRegroupInput(_0x373c04);const _0x1d3f96=await buildRegroupPlan(_0x373c04,!![]);return menuDryRunResult(_0x1d3f96['plan'],{'method':'POST','url':'/smartapi/menu/regroup','body':_0x1d3f96[_0x586f35(0xfe)],'description':_0x586f35(0x116)+JSON[_0x586f35(0x14c)](_0x1d3f96['label'])+'\x20and\x20regroup\x20menu\x20ids\x20'+_0x1d3f96['menuIds'][_0x586f35(0x111)](',\x20')+_0x586f35(0x106)});},async 'execute'(_0x2d0fb2){const _0x28d58b=a116_0x5cc8a9;validateRegroupInput(_0x2d0fb2),requireExplicitYes(_0x2d0fb2);const _0x3741e0=await buildRegroupPlan(_0x2d0fb2,![]);await recheckMutationSnapshot(_0x2d0fb2,_0x3741e0['plan'],_0x28d58b(0x108));const _0x1d8d4e=buildMenuLookupCommand(_0x2d0fb2[_0x28d58b(0x127)]);let _0x2384bc,_0x3fdcdc;try{_0x2384bc=await startMenuRegroup(_0x2d0fb2[_0x28d58b(0x150)],_0x3741e0[_0x28d58b(0xfe)]),_0x3fdcdc=normalizeAsyncTask(_0x2384bc);}catch(_0x347a11){const _0x60f5a3=await inspectRegroupAfterFailure(_0x2d0fb2[_0x28d58b(0x127)],_0x2d0fb2[_0x28d58b(0x150)],_0x3741e0[_0x28d58b(0x125)],_0x3741e0['menuIds']),_0x120c08=typeof _0x2384bc?.[_0x28d58b(0x129)]===_0x28d58b(0x152)&&_0x2384bc[_0x28d58b(0x129)][_0x28d58b(0x137)]()?_0x2384bc[_0x28d58b(0x129)][_0x28d58b(0x137)]():null,_0x777896=_0x120c08?{'command':buildAsyncTaskStatusCommand(_0x120c08,_0x2d0fb2[_0x28d58b(0x127)])}:null,_0x45908a=mapMenuApiError(_0x347a11,_0x28d58b(0x11e));throw menuFailure(_0x45908a,_0x3741e0[_0x28d58b(0x12a)],{'stage':'regroup-submit','failed':{'menuIds':_0x3741e0['menuIds'],'taskId':_0x120c08,'groupingApplied':_0x60f5a3['applied']?!![]:'unconfirmed'},'after':_0x60f5a3[_0x28d58b(0x10a)]??null,'warnings':[_0x28d58b(0x102),..._0x60f5a3['readbackError']?['Regroup\x20readback\x20also\x20failed:\x20'+_0x60f5a3[_0x28d58b(0x110)]]:[],..._0x120c08?[_0x28d58b(0xfc)]:[]],'verification':{'status':_0x28d58b(0xff),'groupingApplied':_0x60f5a3[_0x28d58b(0x10a)]?!![]:_0x28d58b(0x148),'taskId':_0x120c08,'query':_0x777896,'lookupCommand':_0x1d8d4e}});}const _0x1748f8=buildAsyncTaskStatusCommand(_0x3fdcdc[_0x28d58b(0x129)],_0x2d0fb2[_0x28d58b(0x127)]);let _0xd7389c=null,_0x106b23=null,_0x1b00a2=null;try{_0xd7389c=await fetchMenuSnapshot(_0x2d0fb2[_0x28d58b(0x127)],_0x2d0fb2['cookie']),_0x106b23=findAppliedRegroup(_0xd7389c,_0x3741e0[_0x28d58b(0x125)],_0x3741e0[_0x28d58b(0x105)]);}catch(_0x18a60c){_0x1b00a2=_0x18a60c instanceof Error?_0x18a60c[_0x28d58b(0x147)]:String(_0x18a60c);}const _0x3118dc=mutationResult({..._0x3741e0[_0x28d58b(0x12a)],'after':_0x106b23??null,'dryRun':![],'succeeded':[{'groupId':_0x106b23?.[_0x28d58b(0x120)]['id']??null,'menuIds':_0x3741e0['menuIds'],'taskId':_0x3fdcdc[_0x28d58b(0x129)],'status':_0x3fdcdc[_0x28d58b(0x12d)],'groupingApplied':_0x106b23?!![]:_0x28d58b(0x148)}],'verification':{'checkedBy':_0x28d58b(0x11b),'snapshotHash':_0xd7389c?.[_0x28d58b(0x11d)]??null,'groupId':_0x106b23?.[_0x28d58b(0x120)]['id']??null,'groupingApplied':_0x106b23?!![]:_0x28d58b(0x148),'readbackError':_0x1b00a2,'lookupCommand':_0x1d8d4e},'warnings':[..._0x3741e0['plan'][_0x28d58b(0x136)],...!_0x106b23?[unconfirmedRegroupWarning(_0x3fdcdc)]:[],..._0x1b00a2?[_0x28d58b(0x13d)+_0x1b00a2]:[]]}),_0x7929e2=_0x3fdcdc[_0x28d58b(0x12d)]===_0x28d58b(0x140)&&!_0x106b23?_0x28d58b(0x151)+_0x3fdcdc[_0x28d58b(0x129)]+_0x28d58b(0xfd):'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0x3fdcdc);return{'ok':!![],'message':_0x7929e2,'data':{..._0x3118dc,'task':_0x3fdcdc,'query':_0x3fdcdc['isTerminal']?null:{'command':_0x1748f8}}};}};function validateRegroupInput(_0x52216f){const _0x39a576=a116_0x5cc8a9;if(!_0x52216f[_0x39a576(0x124)](_0x39a576(0x125))[_0x39a576(0x137)]())throw CliErrors[_0x39a576(0xf4)](_0x39a576(0x125));parseMenuIds(_0x52216f[_0x39a576(0x124)](_0x39a576(0x131)));}function a116_0x2fb7(){const _0x2e5274=['str','label','1945625FuFnoG','appCode','/smartapi/menu/regroup','taskId','plan','\x20--format\x20compress','plan\x20regroup','status','toLowerCase','68733VUXOMZ','8qGjRwA','menu-ids','menus','map','test','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','warnings','trim','POST','some','byId','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','344QNCjzU','Regroup\x20readback\x20failed:\x20','450858ZkaBJV','2007nPKpIb','SUCCESS','folder','parentId','length','isSafeInteger','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','37270wWipIT','message','unconfirmed','menu_regroup_target_label_missing','<new-group-id>','regroup-start','stringify','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','FAILED','Menus\x20','cookie','Regroup\x20task\x20','string','flagMissing','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','size','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','childrenIds','menu_regroup_target_not_leaf','2StlwsU','split','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','input','failed','validation','sort','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','23964mlyKeZ','menuIds',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','start\x20regroup','\x20menu\x20list\x20--appcode\x20','applied','type','filter','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','<platform-generated>','readbackError','join','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','\x27\x5c\x27\x27','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','867755KWgDmB','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','Root\x20folder\x20label\x20','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','submit-regroup-task','menu\x20list','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','hash','start\x20menu\x20regroup','high-risk-write','group','766902YFKgGx','Menu\x20','get'];a116_0x2fb7=function(){return _0x2e5274;};return a116_0x2fb7();}function a116_0x68e5(_0x3ec104,_0x53e87f){_0x3ec104=_0x3ec104-0xf4;const _0x2fb707=a116_0x2fb7();let _0x68e546=_0x2fb707[_0x3ec104];return _0x68e546;}function parseMenuIds(_0x2e4ba8){const _0x3f7fd5=a116_0x5cc8a9,_0x6ccdc9=_0x2e4ba8[_0x3f7fd5(0xfb)](',')['map'](_0xb7d617=>_0xb7d617[_0x3f7fd5(0x137)]());if(_0x6ccdc9[_0x3f7fd5(0x143)]===0x0||_0x6ccdc9[_0x3f7fd5(0x139)](_0x3b3d21=>!_0x3b3d21))throw CliErrors[_0x3f7fd5(0x100)](_0x3f7fd5(0x107));const _0x361b79=_0x6ccdc9['map'](_0x4720ac=>{const _0x37be43=_0x3f7fd5;if(!/^\d+$/[_0x37be43(0x134)](_0x4720ac))throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x291188=Number(_0x4720ac);if(!Number[_0x37be43(0x144)](_0x291188)||_0x291188<=0x0)throw CliErrors[_0x37be43(0x100)](_0x37be43(0x107));return _0x291188;});if(new Set(_0x361b79)[_0x3f7fd5(0xf6)]!==_0x361b79['length'])throw CliErrors[_0x3f7fd5(0x100)](_0x3f7fd5(0x135));if(_0x361b79[_0x3f7fd5(0x143)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x3f7fd5(0x100)]('--menu-ids\x20supports\x20at\x20most\x20'+MAX_REGROUP_MENU_COUNT+'\x20menus\x20per\x20regroup\x20request.');return _0x361b79;}function buildMenuLookupCommand(_0x56a1b6){const _0x23b895=a116_0x5cc8a9,_0x15e893='\x27'+_0x56a1b6['replace'](/'/g,_0x23b895(0x113))+'\x27';return CLI_BIN_NAME+_0x23b895(0x109)+_0x15e893+_0x23b895(0x12b);}function unconfirmedRegroupWarning(_0x8c1b22){const _0x4e8f44=a116_0x5cc8a9;if(_0x8c1b22[_0x4e8f44(0x12d)]===_0x4e8f44(0x140))return _0x4e8f44(0x11c);if(_0x8c1b22[_0x4e8f44(0x12d)]===_0x4e8f44(0x14e))return _0x4e8f44(0xf7);if(_0x8c1b22['knownStatus'])return _0x4e8f44(0x114);return'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.';}async function buildRegroupPlan(_0x5af30e,_0x460efa){const _0x4d3f47=a116_0x5cc8a9,_0xad1878=_0x5af30e[_0x4d3f47(0x124)](_0x4d3f47(0x125))[_0x4d3f47(0x137)](),_0x2f080c=parseMenuIds(_0x5af30e[_0x4d3f47(0x124)](_0x4d3f47(0x131))),_0x1faf09=await fetchMutationSnapshot(_0x5af30e,_0x4d3f47(0x12c)),_0x32c9a7=_0x2f080c[_0x4d3f47(0x133)](_0x3b3b6b=>requireMenu(_0x1faf09,_0x3b3b6b));for(const _0x2d3f81 of _0x32c9a7){if(_0x2d3f81['type'][_0x4d3f47(0x137)]()['toLowerCase']()==='folder'||_0x2d3f81['childrenCount']>0x0)throw menuError(_0x4d3f47(0xf9),_0x4d3f47(0x122)+_0x2d3f81['id']+_0x4d3f47(0xf5),'Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.');if(!_0x2d3f81[_0x4d3f47(0x125)]['trim']())throw menuError(_0x4d3f47(0x149),_0x4d3f47(0x122)+_0x2d3f81['id']+_0x4d3f47(0x145),_0x4d3f47(0x119));}const _0xcc16f4=findAppliedRegroup(_0x1faf09,_0xad1878,_0x2f080c);if(_0xcc16f4)throw menuError('menu_regroup_already_applied',_0x4d3f47(0x14f)+_0x2f080c[_0x4d3f47(0x111)](',\x20')+_0x4d3f47(0x103)+_0xcc16f4[_0x4d3f47(0x120)]['id']+'\x20('+JSON[_0x4d3f47(0x14c)](_0xad1878)+').',_0x4d3f47(0x118));const _0x5ae73d=_0x1faf09[_0x4d3f47(0x132)][_0x4d3f47(0x10c)](_0x182642=>_0x182642[_0x4d3f47(0x142)]==null&&_0x182642[_0x4d3f47(0x10b)][_0x4d3f47(0x137)]()[_0x4d3f47(0x12e)]()===_0x4d3f47(0x141)&&_0x182642['label']===_0xad1878);if(_0x5ae73d[_0x4d3f47(0x143)]>0x0)throw menuError('menu_regroup_label_conflict',_0x4d3f47(0x117)+JSON[_0x4d3f47(0x14c)](_0xad1878)+_0x4d3f47(0x14d)+_0x5ae73d['map'](_0x467b2d=>_0x467b2d['id'])[_0x4d3f47(0x111)](',\x20')+'.',_0x4d3f47(0x13b));const _0x22335c={'appCode':_0x5af30e[_0x4d3f47(0x127)],'menuGroups':[{'label':_0xad1878,'type':_0x4d3f47(0x141),'children':_0x32c9a7[_0x4d3f47(0x133)](_0x32fe5d=>({'id':_0x32fe5d['id'],'label':_0x32fe5d[_0x4d3f47(0x125)]}))}]},_0x33b179=mutationResult({'operation':_0x4d3f47(0x14b),'selector':{'label':_0xad1878,'menuIds':_0x2f080c},'before':{'menus':_0x32c9a7},'after':{'group':{'id':null,'parentId':null,'label':_0xad1878,'path':_0x4d3f47(0x10f),'type':_0x4d3f47(0x141),'childrenIds':_0x2f080c},'children':_0x32c9a7[_0x4d3f47(0x133)](_0x329168=>({'id':_0x329168['id'],'label':_0x329168['label'],'beforeParentId':_0x329168[_0x4d3f47(0x142)],'afterParentId':_0x4d3f47(0x14a)}))},'dryRun':_0x460efa,'backend':[...BACKEND],'plannedActions':[{'stage':_0x4d3f47(0x11a),'method':_0x4d3f47(0x138),'path':_0x4d3f47(0x128),'body':_0x22335c}],'snapshotHash':_0x1faf09[_0x4d3f47(0x11d)],'warnings':[_0x4d3f47(0x10d),'The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.']});return{'label':_0xad1878,'menuIds':_0x2f080c,'input':_0x22335c,'plan':_0x33b179};}function findAppliedRegroup(_0x53c286,_0x3e4161,_0x339df5){const _0x2b3e11=a116_0x5cc8a9,_0x3bbb7a=_0x339df5[_0x2b3e11(0x133)](_0x5bc976=>_0x53c286['byId'][_0x2b3e11(0x123)](_0x5bc976))['filter'](_0x14d3a1=>Boolean(_0x14d3a1));if(_0x3bbb7a[_0x2b3e11(0x143)]!==_0x339df5[_0x2b3e11(0x143)])return null;const _0x4edd93=_0x3bbb7a[0x0]?.['parentId'];if(_0x4edd93==null||_0x3bbb7a[_0x2b3e11(0x139)](_0x526e32=>_0x526e32[_0x2b3e11(0x142)]!==_0x4edd93))return null;const _0x376631=_0x53c286[_0x2b3e11(0x13a)][_0x2b3e11(0x123)](_0x4edd93);if(!_0x376631||_0x376631[_0x2b3e11(0x142)]!=null||_0x376631[_0x2b3e11(0x10b)]['trim']()[_0x2b3e11(0x12e)]()!==_0x2b3e11(0x141)||_0x376631[_0x2b3e11(0x125)]!==_0x3e4161)return null;const _0x941830=[..._0x339df5]['sort']((_0x2b7485,_0x4a737c)=>_0x2b7485-_0x4a737c),_0x9aaab6=[..._0x376631[_0x2b3e11(0xf8)]][_0x2b3e11(0x101)]((_0x16fb81,_0x1ba460)=>_0x16fb81-_0x1ba460);if(JSON[_0x2b3e11(0x14c)](_0x9aaab6)!==JSON[_0x2b3e11(0x14c)](_0x941830))return null;return{'group':_0x376631,'children':_0x3bbb7a};}async function inspectRegroupAfterFailure(_0x14161e,_0x353378,_0x3fb181,_0x103456){try{const _0x41a878=await fetchMenuSnapshot(_0x14161e,_0x353378);return{'applied':findAppliedRegroup(_0x41a878,_0x3fb181,_0x103456),'readbackError':null};}catch(_0x1eb174){return{'applied':null,'readbackError':_0x1eb174 instanceof Error?_0x1eb174['message']:String(_0x1eb174)};}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a117_0x44794d=a117_0x40a6;(function(_0x337a88,_0x246eaf){const _0x328202=a117_0x40a6,_0x33394f=_0x337a88();while(!![]){try{const _0x2a6ebf=parseInt(_0x328202(0x10d))/0x1+parseInt(_0x328202(0xee))/0x2+parseInt(_0x328202(0xde))/0x3*(parseInt(_0x328202(0x10a))/0x4)+-parseInt(_0x328202(0x11f))/0x5*(-parseInt(_0x328202(0xe0))/0x6)+parseInt(_0x328202(0x10c))/0x7+-parseInt(_0x328202(0x116))/0x8+-parseInt(_0x328202(0xf3))/0x9;if(_0x2a6ebf===_0x246eaf)break;else _0x33394f['push'](_0x33394f['shift']());}catch(_0x3cb8e7){_0x33394f['push'](_0x33394f['shift']());}}}(a117_0xe47d,0x9a566));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,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':a117_0x44794d(0xfe),'path':a117_0x44794d(0xd8)}];export const menuRename={'service':'menu','command':a117_0x44794d(0xdf),'description':a117_0x44794d(0xe1),'risk':a117_0x44794d(0xe8),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a117_0x44794d(0x119),'type':a117_0x44794d(0xf4),'required':!![],'description':'New\x20menu\x20label'},{'name':a117_0x44794d(0xf6),'type':a117_0x44794d(0xf4),'required':!![],'description':a117_0x44794d(0x105)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x35595d){validateInput(_0x35595d);},async 'dryRun'(_0x4a9fcd){const _0x4f5594=a117_0x44794d;validateInput(_0x4a9fcd);const _0x5257ff=await buildPlan(_0x4a9fcd,!![]);return menuDryRunResult(_0x5257ff[_0x4f5594(0xfc)],{'method':'POST','url':_0x4f5594(0xd8),'body':_0x5257ff[_0x4f5594(0x109)],'description':_0x4f5594(0xef)+_0x5257ff[_0x4f5594(0x109)]['id']+'.'});},async 'execute'(_0x46d3ae){const _0x29ec9a=a117_0x44794d;validateInput(_0x46d3ae);const _0x953049=await buildPlan(_0x46d3ae,![]),{plan:_0x5a4af4,body:_0x23fc2e,before:_0x4e1da0,noChanges:_0x2e9269}=_0x953049,_0x4e14e0=_0x23fc2e['id'];if(_0x2e9269)return renameSuccess(_0x5a4af4,_0x953049['snapshot'],_0x4e1da0,!![],![]);await recheckMutationSnapshot(_0x46d3ae,_0x5a4af4,'rename\x20menu',_0x4e14e0);try{await updateMenuEntity(_0x46d3ae['appCode'],_0x46d3ae['cookie'],{'id':_0x4e14e0,'label':_0x23fc2e[_0x29ec9a(0x119)]});}catch(_0x1bc824){const _0x4cb334=mapMenuApiError(_0x1bc824,_0x29ec9a(0xdf),_0x4e14e0);if(isMenuResponseLoss(_0x1bc824)&&_0x4cb334['code']!=='menu_permission_denied')return recoverAfterResponseLoss(_0x46d3ae,_0x953049);throw menuFailure(_0x4cb334,_0x5a4af4,{'stage':_0x29ec9a(0x115),'failed':{'id':_0x4e14e0},'warnings':['The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x29ec9a(0x123),'targetId':_0x4e14e0,'lookupCommand':buildLookupCommand(_0x46d3ae[_0x29ec9a(0x117)])}});}let _0x1ef6f9,_0x37422d;try{_0x1ef6f9=await fetchMenuSnapshot(_0x46d3ae[_0x29ec9a(0x117)],_0x46d3ae[_0x29ec9a(0xf0)]),_0x37422d=requireMenu(_0x1ef6f9,_0x4e14e0),verifyRenamedFact(_0x4e1da0,_0x37422d,_0x23fc2e[_0x29ec9a(0x119)]);}catch(_0x4a6e58){const _0x4c95f8=describeMenuErrorCause(_0x4a6e58,'verify\x20menu\x20rename',_0x4e14e0),_0x5e7383=asVerificationError(_0x4a6e58,_0x29ec9a(0x118)+_0x4e14e0+_0x29ec9a(0xd9));throw menuFailure(_0x5e7383,_0x5a4af4,{'stage':_0x29ec9a(0xda),'succeeded':[{'id':_0x4e14e0,'updateRequested':!![]}],'failed':{'id':_0x4e14e0,'requestedStateConfirmed':![],..._0x4c95f8},'warnings':[_0x29ec9a(0x106)],'verification':{'status':_0x29ec9a(0x123),'targetId':_0x4e14e0,'lookupCommand':buildLookupCommand(_0x46d3ae[_0x29ec9a(0x117)])}});}return renameSuccess(_0x5a4af4,_0x1ef6f9,_0x37422d,![],![]);}};function validateInput(_0xf31d1e){const _0xb1e72f=a117_0x44794d;validateExactId(_0xf31d1e);if(!_0xf31d1e['str']('label')[_0xb1e72f(0xeb)]())throw CliErrors['validation'](_0xb1e72f(0x108));if(!_0xf31d1e[_0xb1e72f(0xe2)](_0xb1e72f(0xf6))[_0xb1e72f(0xeb)]())throw CliErrors[_0xb1e72f(0xfa)](_0xb1e72f(0xf6));}async function buildPlan(_0x570f9c,_0x4ea80f){const _0x5b5a33=a117_0x44794d,_0x566be3=validateExactId(_0x570f9c),_0x2d9c9a=_0x570f9c[_0x5b5a33(0xe2)](_0x5b5a33(0x119))[_0x5b5a33(0xeb)](),_0x183936=_0x570f9c[_0x5b5a33(0xe2)](_0x5b5a33(0xf6)),_0x2d8831=await fetchMutationSnapshot(_0x570f9c,_0x5b5a33(0x102),_0x566be3),_0x5641d1=requireMenu(_0x2d8831,_0x566be3);if(_0x5641d1[_0x5b5a33(0x119)]!==_0x183936)throw menuError('menu_state_drift','Menu\x20'+_0x566be3+_0x5b5a33(0xdc)+JSON['stringify'](_0x183936)+',\x20current\x20'+JSON[_0x5b5a33(0x11e)](_0x5641d1['label'])+'.',_0x5b5a33(0xf1));const _0x96b961={'id':_0x566be3,'appCode':_0x570f9c['appCode'],'label':_0x2d9c9a},_0xa88bd7={..._0x5641d1,'label':_0x2d9c9a},_0xfd3667=_0x5641d1[_0x5b5a33(0x119)]===_0x2d9c9a,_0xb3ea74=_0xfd3667?[]:[{'stage':_0x5b5a33(0xdd),'method':_0x5b5a33(0xfe),'path':_0x5b5a33(0xd8),'body':_0x96b961}];return{'snapshot':_0x2d8831,'before':_0x5641d1,'body':_0x96b961,'noChanges':_0xfd3667,'plan':mutationResult({'operation':_0x5b5a33(0xdf),'selector':{'id':_0x566be3},'before':_0x5641d1,'after':_0xa88bd7,'dryRun':_0x4ea80f,'backend':[...BACKEND],'plannedActions':_0xb3ea74,'snapshotHash':_0x2d8831[_0x5b5a33(0x114)],'warnings':_0xfd3667?[_0x5b5a33(0xf5)]:[]})};}function verifyRenamedFact(_0x3870d8,_0x1282d2,_0x49ac98){const _0x20d43f=a117_0x44794d,_0x4e4c5b=[['id',_0x1282d2['id'],_0x3870d8['id']],['parentId',_0x1282d2['parentId'],_0x3870d8[_0x20d43f(0xf9)]],['depth',_0x1282d2[_0x20d43f(0xdb)],_0x3870d8['depth']],['path',_0x1282d2[_0x20d43f(0x122)],_0x3870d8[_0x20d43f(0x122)]],['url',_0x1282d2[_0x20d43f(0x107)],_0x3870d8[_0x20d43f(0x107)]],['type',_0x1282d2[_0x20d43f(0xe9)],_0x3870d8[_0x20d43f(0xe9)]],['visible',_0x1282d2[_0x20d43f(0x11d)],_0x3870d8[_0x20d43f(0x11d)]],[_0x20d43f(0x113),_0x1282d2[_0x20d43f(0x113)],_0x3870d8['sort']],[_0x20d43f(0xea),_0x1282d2[_0x20d43f(0xea)],_0x3870d8[_0x20d43f(0xea)]],[_0x20d43f(0x111),_0x1282d2[_0x20d43f(0x111)],_0x3870d8[_0x20d43f(0x111)]],[_0x20d43f(0x10f),_0x1282d2[_0x20d43f(0x10f)],_0x3870d8[_0x20d43f(0x10f)]],[_0x20d43f(0x104),_0x1282d2[_0x20d43f(0x104)],_0x3870d8[_0x20d43f(0x104)]],[_0x20d43f(0xe7),_0x1282d2[_0x20d43f(0xe7)],_0x3870d8[_0x20d43f(0xe7)]],['pageType',_0x1282d2['pageType'],_0x3870d8[_0x20d43f(0xff)]],['modelType',_0x1282d2[_0x20d43f(0x101)],_0x3870d8[_0x20d43f(0x101)]],['datasetId',_0x1282d2[_0x20d43f(0xfd)],_0x3870d8[_0x20d43f(0xfd)]],[_0x20d43f(0xed),_0x1282d2[_0x20d43f(0xed)],_0x3870d8[_0x20d43f(0xed)]]];for(const [_0x470c08,_0x486f15,_0x2fd3c8]of _0x4e4c5b){assertVerified(sameValue(_0x486f15,_0x2fd3c8),_0x20d43f(0xe5)+_0x3870d8['id']+'\x20'+_0x470c08+_0x20d43f(0xe4));}assertVerified(_0x1282d2[_0x20d43f(0x119)]===_0x49ac98,'Menu\x20'+_0x3870d8['id']+_0x20d43f(0xf2));}function sameValue(_0x29876d,_0x4c4b6e){const _0x185ae2=a117_0x44794d;if(Array['isArray'](_0x29876d)||Array[_0x185ae2(0x10b)](_0x4c4b6e))return JSON[_0x185ae2(0x11e)](_0x29876d)===JSON[_0x185ae2(0x11e)](_0x4c4b6e);return _0x29876d===_0x4c4b6e;}function a117_0x40a6(_0x6e0f09,_0x21dde5){_0x6e0f09=_0x6e0f09-0xd7;const _0xe47d73=a117_0xe47d();let _0x40a641=_0xe47d73[_0x6e0f09];return _0x40a641;}function renameSuccess(_0x270a16,_0x530154,_0x2ab5a9,_0x5959d4,_0x29a0d2){const _0x6c6009=a117_0x44794d,_0x1fbc3d=_0x2ab5a9['id'],_0x1d1ff1=mutationResult({..._0x270a16,'after':_0x2ab5a9,'dryRun':![],'succeeded':[{'id':_0x1fbc3d,'updated':!_0x5959d4,'skipped':_0x5959d4,'recovered':_0x29a0d2}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x530154[_0x6c6009(0x114)],'targetId':_0x1fbc3d,'matchesRequestedState':!![],'recovered':_0x29a0d2}});return{'ok':!![],'message':_0x29a0d2?_0x6c6009(0x11b)+_0x1fbc3d+'.':_0x5959d4?_0x6c6009(0xe5)+_0x1fbc3d+_0x6c6009(0x10e):_0x6c6009(0x100)+_0x1fbc3d+'.','data':{..._0x1d1ff1,'recovered':_0x29a0d2}};}function a117_0xe47d(){const _0x48a3be=['resourcesValid','rabetbase\x20menu\x20list\x20--appcode\x20','sort','hash','update','1825784gVJLHB','appCode','Rename\x20request\x20for\x20menu\x20','label','menu_update_recovery_required','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','\x20could\x20not\x20be\x20verified\x20safely','visible','stringify','1595ZiSgnC','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','byId','path','failed','get','update-recovery','/smartapi/menu/update','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','verification','depth','\x20label\x20changed:\x20expected\x20','rename-menu','2145636HMxwwg','rename','1158efAvss','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','str','replace','\x20changed\x20during\x20the\x20label-only\x20rename.','Menu\x20','Run\x20','pageId','write','type','resources','trim','requestedLabelObserved','datasetCode','787312oNTNhn','Would\x20rename\x20menu\x20','cookie','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','\x20label\x20update\x20did\x20not\x20take\x20effect.','19590156EKChCN','string','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','expect-label','after','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','parentId','flagMissing','The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','plan','datasetId','POST','pageType','Renamed\x20menu\x20','modelType','rename\x20menu','readbackFailed','childrenCount','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','url','--label\x20cannot\x20be\x20empty.','body','4SbfpDd','isArray','4988935zTXVzt','1153933ckZuqB','\x20already\x20has\x20the\x20requested\x20label.','childrenIds','\x27\x5c\x27\x27'];a117_0xe47d=function(){return _0x48a3be;};return a117_0xe47d();}async function recoverAfterResponseLoss(_0x38b7f1,_0x44eae8){const _0x39fc9b=a117_0x44794d,{plan:_0x32f625,before:_0x1d3035,body:_0x4169f5}=_0x44eae8;let _0x240a20;try{_0x240a20=await fetchMenuSnapshot(_0x38b7f1[_0x39fc9b(0x117)],_0x38b7f1[_0x39fc9b(0xf0)]);}catch{throw recoveryRequired(_0x32f625,_0x38b7f1[_0x39fc9b(0x117)],{'id':_0x4169f5['id'],'readbackFailed':!![]});}const _0x2735cf=_0x240a20[_0x39fc9b(0x121)][_0x39fc9b(0x124)](_0x4169f5['id']);if(!_0x2735cf||_0x2735cf[_0x39fc9b(0x119)]!==_0x4169f5[_0x39fc9b(0x119)])throw recoveryRequired(_0x32f625,_0x38b7f1[_0x39fc9b(0x117)],{'id':_0x4169f5['id'],'requestedLabelObserved':![],'after':_0x2735cf??null});try{verifyRenamedFact(_0x1d3035,_0x2735cf,_0x4169f5['label']);}catch(_0x569175){const _0x15976a=asVerificationError(_0x569175,'Response\x20was\x20lost\x20and\x20menu\x20'+_0x4169f5['id']+_0x39fc9b(0x11c));throw menuFailure(_0x15976a,_0x32f625,{'stage':'update-recovery','succeeded':[{'id':_0x4169f5['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x4169f5['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x2735cf,'warnings':[_0x39fc9b(0xfb)],'verification':{'status':_0x39fc9b(0x123),'targetId':_0x4169f5['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x38b7f1[_0x39fc9b(0x117)])}});}return renameSuccess(_0x32f625,_0x240a20,_0x2735cf,![],!![]);}function recoveryRequired(_0x4f77d5,_0xf10e17,_0x3f3b9f){const _0x41f5ef=a117_0x44794d,_0x31c434=menuError(_0x41f5ef(0x11a),'The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.',_0x41f5ef(0xe6)+buildLookupCommand(_0xf10e17)+_0x41f5ef(0x120));return menuFailure(_0x31c434,_0x4f77d5,{'stage':_0x41f5ef(0xd7),'failed':{'id':_0x3f3b9f['id'],..._0x3f3b9f[_0x41f5ef(0xec)]===undefined?{}:{'requestedLabelObserved':_0x3f3b9f[_0x41f5ef(0xec)]},..._0x3f3b9f['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x3f3b9f[_0x41f5ef(0xf7)],'warnings':[_0x41f5ef(0xf8)],'verification':{'status':_0x41f5ef(0x123),'targetId':_0x3f3b9f['id'],..._0x3f3b9f[_0x41f5ef(0xec)]===undefined?{}:{'requestedLabelObserved':_0x3f3b9f[_0x41f5ef(0xec)]},..._0x3f3b9f[_0x41f5ef(0x103)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0xf10e17)}});}function buildLookupCommand(_0x14fa6d){const _0x2609c7=a117_0x44794d,_0x11a644='\x27'+_0x14fa6d[_0x2609c7(0xe3)](/'/g,_0x2609c7(0x110))+'\x27';return _0x2609c7(0x112)+_0x11a644+'\x20--format\x20compress';}
|
|
1
|
+
const a117_0x2200ca=a117_0xd032;(function(_0x5c0bad,_0x4ca989){const _0x39c45b=a117_0xd032,_0x147d6e=_0x5c0bad();while(!![]){try{const _0x360c0e=-parseInt(_0x39c45b(0x189))/0x1*(parseInt(_0x39c45b(0x1aa))/0x2)+parseInt(_0x39c45b(0x1c8))/0x3+-parseInt(_0x39c45b(0x1ca))/0x4*(parseInt(_0x39c45b(0x18a))/0x5)+-parseInt(_0x39c45b(0x194))/0x6+parseInt(_0x39c45b(0x1c1))/0x7*(-parseInt(_0x39c45b(0x186))/0x8)+-parseInt(_0x39c45b(0x197))/0x9*(parseInt(_0x39c45b(0x1bc))/0xa)+parseInt(_0x39c45b(0x1c4))/0xb;if(_0x360c0e===_0x4ca989)break;else _0x147d6e['push'](_0x147d6e['shift']());}catch(_0x19be99){_0x147d6e['push'](_0x147d6e['shift']());}}}(a117_0x4c15,0x77d6f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';function a117_0x4c15(){const _0x42c98d=['url','cookie','label','snapshot','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','88LalXzR','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','rename-menu','update','string','expect-label','get','trim','body','parentId','\x27\x5c\x27\x27','datasetCode','hash','str','resourcesValid','stringify','failed','menu','20dmPUfi','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','after','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','242837AuCrIh','update-recovery','code','26690279CTRgDl','Rename\x20request\x20for\x20menu\x20','path','menu\x20list','412152CegqxR','rabetbase\x20menu\x20list\x20--appcode\x20','676vWJwyR','requestedLabelObserved','Response\x20was\x20lost\x20and\x20menu\x20','type','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','childrenIds','/smartapi/menu/update','24WxRAox','depth','pageType','18346HmEOeh','3115BzOrBo','visible','modelType',',\x20current\x20','rename','--label\x20cannot\x20be\x20empty.','menu_state_drift','Menu\x20','pageId','replace','5454936hrcuue','menu_permission_denied','validation','662265bNcmxZ','write','resources','rename\x20menu','Would\x20rename\x20menu\x20','plan','sort','verify\x20menu\x20rename','readbackFailed','childrenCount','datasetId','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','appCode','\x20label\x20update\x20did\x20not\x20take\x20effect.'];a117_0x4c15=function(){return _0x42c98d;};return a117_0x4c15();}const BACKEND=[{'method':'POST','path':'/smartapi/menu/update'}];export const menuRename={'service':a117_0x2200ca(0x1bb),'command':a117_0x2200ca(0x18e),'description':'Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','risk':a117_0x2200ca(0x198),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'label','type':a117_0x2200ca(0x1ae),'required':!![],'description':'New\x20menu\x20label'},{'name':a117_0x2200ca(0x1af),'type':a117_0x2200ca(0x1ae),'required':!![],'description':a117_0x2200ca(0x1a9)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1bfab9){validateInput(_0x1bfab9);},async 'dryRun'(_0x1c30f6){const _0x5ad0ce=a117_0x2200ca;validateInput(_0x1c30f6);const _0x3af8d3=await buildPlan(_0x1c30f6,!![]);return menuDryRunResult(_0x3af8d3[_0x5ad0ce(0x19c)],{'method':'POST','url':_0x5ad0ce(0x185),'body':_0x3af8d3[_0x5ad0ce(0x1b2)],'description':_0x5ad0ce(0x19b)+_0x3af8d3[_0x5ad0ce(0x1b2)]['id']+'.'});},async 'execute'(_0x27a9c4){const _0x1960d2=a117_0x2200ca;validateInput(_0x27a9c4);const _0x21388a=await buildPlan(_0x27a9c4,![]),{plan:_0x853481,body:_0xd20967,before:_0x27f62c,noChanges:_0x597890}=_0x21388a,_0x40b009=_0xd20967['id'];if(_0x597890)return renameSuccess(_0x853481,_0x21388a[_0x1960d2(0x1a8)],_0x27f62c,!![],![]);await recheckMutationSnapshot(_0x27a9c4,_0x853481,'rename\x20menu',_0x40b009);try{await updateMenuEntity(_0x27a9c4[_0x1960d2(0x1a3)],_0x27a9c4['cookie'],{'id':_0x40b009,'label':_0xd20967['label']});}catch(_0x3328a4){const _0x25a9d3=mapMenuApiError(_0x3328a4,_0x1960d2(0x18e),_0x40b009);if(isMenuResponseLoss(_0x3328a4)&&_0x25a9d3[_0x1960d2(0x1c3)]!==_0x1960d2(0x195))return recoverAfterResponseLoss(_0x27a9c4,_0x21388a);throw menuFailure(_0x25a9d3,_0x853481,{'stage':_0x1960d2(0x1ad),'failed':{'id':_0x40b009},'warnings':['The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':'failed','targetId':_0x40b009,'lookupCommand':buildLookupCommand(_0x27a9c4[_0x1960d2(0x1a3)])}});}let _0x29a4eb,_0x19d368;try{_0x29a4eb=await fetchMenuSnapshot(_0x27a9c4[_0x1960d2(0x1a3)],_0x27a9c4[_0x1960d2(0x1a6)]),_0x19d368=requireMenu(_0x29a4eb,_0x40b009),verifyRenamedFact(_0x27f62c,_0x19d368,_0xd20967[_0x1960d2(0x1a7)]);}catch(_0x28613e){const _0x29d94f=describeMenuErrorCause(_0x28613e,_0x1960d2(0x19e),_0x40b009),_0x5c1ace=asVerificationError(_0x28613e,_0x1960d2(0x1c5)+_0x40b009+_0x1960d2(0x1a2));throw menuFailure(_0x5c1ace,_0x853481,{'stage':'verification','succeeded':[{'id':_0x40b009,'updateRequested':!![]}],'failed':{'id':_0x40b009,'requestedStateConfirmed':![],..._0x29d94f},'warnings':[_0x1960d2(0x1be)],'verification':{'status':_0x1960d2(0x1ba),'targetId':_0x40b009,'lookupCommand':buildLookupCommand(_0x27a9c4[_0x1960d2(0x1a3)])}});}return renameSuccess(_0x853481,_0x29a4eb,_0x19d368,![],![]);}};function validateInput(_0x37a26c){const _0x260731=a117_0x2200ca;validateExactId(_0x37a26c);if(!_0x37a26c['str'](_0x260731(0x1a7))[_0x260731(0x1b1)]())throw CliErrors[_0x260731(0x196)](_0x260731(0x18f));if(!_0x37a26c[_0x260731(0x1b7)](_0x260731(0x1af))[_0x260731(0x1b1)]())throw CliErrors['flagMissing'](_0x260731(0x1af));}async function buildPlan(_0x38c5a3,_0xbd69f9){const _0x23f3ca=a117_0x2200ca,_0x5bc809=validateExactId(_0x38c5a3),_0xcb14bb=_0x38c5a3[_0x23f3ca(0x1b7)](_0x23f3ca(0x1a7))['trim'](),_0x1c6bf2=_0x38c5a3[_0x23f3ca(0x1b7)](_0x23f3ca(0x1af)),_0x3fefdc=await fetchMutationSnapshot(_0x38c5a3,_0x23f3ca(0x19a),_0x5bc809),_0x217ec3=requireMenu(_0x3fefdc,_0x5bc809);if(_0x217ec3[_0x23f3ca(0x1a7)]!==_0x1c6bf2)throw menuError(_0x23f3ca(0x190),'Menu\x20'+_0x5bc809+'\x20label\x20changed:\x20expected\x20'+JSON[_0x23f3ca(0x1b9)](_0x1c6bf2)+_0x23f3ca(0x18d)+JSON[_0x23f3ca(0x1b9)](_0x217ec3['label'])+'.',_0x23f3ca(0x1c0));const _0x4afc34={'id':_0x5bc809,'appCode':_0x38c5a3['appCode'],'label':_0xcb14bb},_0x3b9cc7={..._0x217ec3,'label':_0xcb14bb},_0x31a6a5=_0x217ec3[_0x23f3ca(0x1a7)]===_0xcb14bb,_0x52c1a5=_0x31a6a5?[]:[{'stage':_0x23f3ca(0x1ac),'method':'POST','path':'/smartapi/menu/update','body':_0x4afc34}];return{'snapshot':_0x3fefdc,'before':_0x217ec3,'body':_0x4afc34,'noChanges':_0x31a6a5,'plan':mutationResult({'operation':_0x23f3ca(0x18e),'selector':{'id':_0x5bc809},'before':_0x217ec3,'after':_0x3b9cc7,'dryRun':_0xbd69f9,'backend':[...BACKEND],'plannedActions':_0x52c1a5,'snapshotHash':_0x3fefdc[_0x23f3ca(0x1b6)],'warnings':_0x31a6a5?[_0x23f3ca(0x1ab)]:[]})};}function verifyRenamedFact(_0x4a47ef,_0x2801dd,_0x5182a3){const _0x28056e=a117_0x2200ca,_0x3980e4=[['id',_0x2801dd['id'],_0x4a47ef['id']],['parentId',_0x2801dd[_0x28056e(0x1b3)],_0x4a47ef[_0x28056e(0x1b3)]],[_0x28056e(0x187),_0x2801dd[_0x28056e(0x187)],_0x4a47ef['depth']],[_0x28056e(0x1c6),_0x2801dd[_0x28056e(0x1c6)],_0x4a47ef[_0x28056e(0x1c6)]],[_0x28056e(0x1a5),_0x2801dd[_0x28056e(0x1a5)],_0x4a47ef[_0x28056e(0x1a5)]],[_0x28056e(0x181),_0x2801dd[_0x28056e(0x181)],_0x4a47ef[_0x28056e(0x181)]],['visible',_0x2801dd[_0x28056e(0x18b)],_0x4a47ef[_0x28056e(0x18b)]],['sort',_0x2801dd[_0x28056e(0x19d)],_0x4a47ef[_0x28056e(0x19d)]],['resources',_0x2801dd[_0x28056e(0x199)],_0x4a47ef[_0x28056e(0x199)]],['resourcesValid',_0x2801dd['resourcesValid'],_0x4a47ef[_0x28056e(0x1b8)]],[_0x28056e(0x184),_0x2801dd[_0x28056e(0x184)],_0x4a47ef[_0x28056e(0x184)]],[_0x28056e(0x1a0),_0x2801dd[_0x28056e(0x1a0)],_0x4a47ef['childrenCount']],[_0x28056e(0x192),_0x2801dd[_0x28056e(0x192)],_0x4a47ef[_0x28056e(0x192)]],[_0x28056e(0x188),_0x2801dd['pageType'],_0x4a47ef[_0x28056e(0x188)]],[_0x28056e(0x18c),_0x2801dd[_0x28056e(0x18c)],_0x4a47ef['modelType']],[_0x28056e(0x1a1),_0x2801dd[_0x28056e(0x1a1)],_0x4a47ef[_0x28056e(0x1a1)]],[_0x28056e(0x1b5),_0x2801dd['datasetCode'],_0x4a47ef[_0x28056e(0x1b5)]]];for(const [_0x2bc549,_0x657923,_0x3b9764]of _0x3980e4){assertVerified(sameValue(_0x657923,_0x3b9764),_0x28056e(0x191)+_0x4a47ef['id']+'\x20'+_0x2bc549+'\x20changed\x20during\x20the\x20label-only\x20rename.');}assertVerified(_0x2801dd['label']===_0x5182a3,_0x28056e(0x191)+_0x4a47ef['id']+_0x28056e(0x1a4));}function a117_0xd032(_0x1c948a,_0x1add3d){_0x1c948a=_0x1c948a-0x17f;const _0x4c1521=a117_0x4c15();let _0xd03244=_0x4c1521[_0x1c948a];return _0xd03244;}function sameValue(_0x24a3d1,_0x2b715e){const _0x36fe0e=a117_0x2200ca;if(Array['isArray'](_0x24a3d1)||Array['isArray'](_0x2b715e))return JSON['stringify'](_0x24a3d1)===JSON[_0x36fe0e(0x1b9)](_0x2b715e);return _0x24a3d1===_0x2b715e;}function renameSuccess(_0x537399,_0xe07e3,_0x1ef1f0,_0x3a6109,_0x3e6c04){const _0x5f4931=a117_0x2200ca,_0x4c8d35=_0x1ef1f0['id'],_0x217e9a=mutationResult({..._0x537399,'after':_0x1ef1f0,'dryRun':![],'succeeded':[{'id':_0x4c8d35,'updated':!_0x3a6109,'skipped':_0x3a6109,'recovered':_0x3e6c04}],'verification':{'checkedBy':_0x5f4931(0x1c7),'snapshotHash':_0xe07e3['hash'],'targetId':_0x4c8d35,'matchesRequestedState':!![],'recovered':_0x3e6c04}});return{'ok':!![],'message':_0x3e6c04?_0x5f4931(0x182)+_0x4c8d35+'.':_0x3a6109?_0x5f4931(0x191)+_0x4c8d35+'\x20already\x20has\x20the\x20requested\x20label.':'Renamed\x20menu\x20'+_0x4c8d35+'.','data':{..._0x217e9a,'recovered':_0x3e6c04}};}async function recoverAfterResponseLoss(_0x58691e,_0xd62e5f){const _0x47e860=a117_0x2200ca,{plan:_0x3c7488,before:_0x21b85b,body:_0x1f8a42}=_0xd62e5f;let _0x42fcca;try{_0x42fcca=await fetchMenuSnapshot(_0x58691e[_0x47e860(0x1a3)],_0x58691e[_0x47e860(0x1a6)]);}catch{throw recoveryRequired(_0x3c7488,_0x58691e['appCode'],{'id':_0x1f8a42['id'],'readbackFailed':!![]});}const _0x358a90=_0x42fcca['byId'][_0x47e860(0x1b0)](_0x1f8a42['id']);if(!_0x358a90||_0x358a90[_0x47e860(0x1a7)]!==_0x1f8a42[_0x47e860(0x1a7)])throw recoveryRequired(_0x3c7488,_0x58691e[_0x47e860(0x1a3)],{'id':_0x1f8a42['id'],'requestedLabelObserved':![],'after':_0x358a90??null});try{verifyRenamedFact(_0x21b85b,_0x358a90,_0x1f8a42[_0x47e860(0x1a7)]);}catch(_0x2e78a4){const _0x136258=asVerificationError(_0x2e78a4,_0x47e860(0x180)+_0x1f8a42['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0x136258,_0x3c7488,{'stage':_0x47e860(0x1c2),'succeeded':[{'id':_0x1f8a42['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x1f8a42['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x358a90,'warnings':[_0x47e860(0x183)],'verification':{'status':_0x47e860(0x1ba),'targetId':_0x1f8a42['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x58691e[_0x47e860(0x1a3)])}});}return renameSuccess(_0x3c7488,_0x42fcca,_0x358a90,![],!![]);}function recoveryRequired(_0x4ac123,_0x569985,_0x58ab9a){const _0x4f91b5=a117_0x2200ca,_0x2cfa69=menuError('menu_update_recovery_required','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','Run\x20'+buildLookupCommand(_0x569985)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x2cfa69,_0x4ac123,{'stage':_0x4f91b5(0x1c2),'failed':{'id':_0x58ab9a['id'],..._0x58ab9a['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x58ab9a[_0x4f91b5(0x17f)]},..._0x58ab9a[_0x4f91b5(0x19f)]?{'readbackFailed':!![]}:{}},'after':_0x58ab9a[_0x4f91b5(0x1bf)],'warnings':[_0x4f91b5(0x1bd)],'verification':{'status':'failed','targetId':_0x58ab9a['id'],..._0x58ab9a[_0x4f91b5(0x17f)]===undefined?{}:{'requestedLabelObserved':_0x58ab9a[_0x4f91b5(0x17f)]},..._0x58ab9a['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x569985)}});}function buildLookupCommand(_0x28ecef){const _0x307f9d=a117_0x2200ca,_0x599ae5='\x27'+_0x28ecef[_0x307f9d(0x193)](/'/g,_0x307f9d(0x1b4))+'\x27';return _0x307f9d(0x1c9)+_0x599ae5+'\x20--format\x20compress';}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Menu compare table renderer
|
|
3
|
+
*
|
|
4
|
+
* Migrated from MenuSyncUI (app-menu-sync-ui.tsx).
|
|
5
|
+
* Renders the local vs online comparison table in plain text.
|
|
6
|
+
*/
|
|
7
|
+
import type { LocalPage } from "../../../commands/menu/shared/types.js";
|
|
8
|
+
export interface CompareRow {
|
|
9
|
+
label: string;
|
|
10
|
+
path: string;
|
|
11
|
+
local: boolean;
|
|
12
|
+
online: boolean;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Render the local vs platform comparison table.
|
|
16
|
+
*/
|
|
17
|
+
export declare function renderCompareTable(rows: CompareRow[], options?: {
|
|
18
|
+
showOnline?: boolean;
|
|
19
|
+
}): string;
|
|
20
|
+
/**
|
|
21
|
+
* Render the sync summary: shows which pages will be created.
|
|
22
|
+
*/
|
|
23
|
+
export declare function renderSyncSummary(pages: LocalPage[], hasOnline: boolean): string;
|
|
24
|
+
/**
|
|
25
|
+
* Render the update summary: shows which menus will be updated.
|
|
26
|
+
*/
|
|
27
|
+
export declare function renderUpdateSummary(menuLabels: string[], resources: (string | undefined)[]): string;
|