@lovrabet/rabetbase-cli 2.5.3-beta.2 → 2.5.3-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/api-group.d.ts +22 -0
- package/lib/api/api-group.js +1 -0
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.d.ts +18 -2
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.js +1 -1
- package/lib/api/legacy-api-file.d.ts +11 -0
- package/lib/api/legacy-api-file.js +1 -0
- package/lib/api/model-registry-file.d.ts +36 -0
- package/lib/api/model-registry-file.js +1 -0
- package/lib/api/model-registry-scaffold.d.ts +7 -0
- package/lib/api/model-registry-scaffold.js +1 -0
- package/lib/api/model-source.d.ts +6 -0
- package/lib/api/model-source.js +1 -0
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/logs.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.d.ts +7 -0
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/batch-design.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/cross-relation-create.d.ts +2 -0
- package/lib/commands/dataset/cross-relation-create.js +1 -0
- package/lib/commands/dataset/cross-relation-delete.d.ts +2 -0
- package/lib/commands/dataset/cross-relation-delete.js +1 -0
- package/lib/commands/dataset/cross-relation-list.d.ts +2 -0
- package/lib/commands/dataset/cross-relation-list.js +1 -0
- package/lib/commands/dataset/cross-relation-shared.d.ts +190 -0
- package/lib/commands/dataset/cross-relation-shared.js +1 -0
- package/lib/commands/dataset/cross-relation-update.d.ts +2 -0
- package/lib/commands/dataset/cross-relation-update.js +1 -0
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-restore.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/dataset/user-deleted-field-list.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/table-diff-shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/deployment/index.js +1 -1
- package/lib/commands/deployment/sync-all.js +1 -1
- package/lib/commands/deployment/sync-jobs.js +1 -1
- package/lib/commands/deployment/sync-status.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/flow/create.js +1 -1
- package/lib/commands/flow/detail.js +1 -1
- package/lib/commands/flow/index.js +1 -1
- package/lib/commands/flow/list.js +1 -1
- package/lib/commands/flow/publish.js +1 -1
- package/lib/commands/flow/runtime-resources-shared.js +1 -1
- package/lib/commands/flow/runtime-role-list.js +1 -1
- package/lib/commands/flow/runtime-role-user-list.js +1 -1
- package/lib/commands/flow/runtime-user-search.js +1 -1
- package/lib/commands/flow/shared.js +1 -1
- package/lib/commands/flow/update.js +1 -1
- package/lib/commands/flow/validate.js +1 -1
- package/lib/commands/instant-api-policy/current.js +1 -1
- package/lib/commands/instant-api-policy/index.js +1 -1
- package/lib/commands/instant-api-policy/init.js +1 -1
- package/lib/commands/instant-api-policy/publish.js +1 -1
- package/lib/commands/instant-api-policy/pull.js +1 -1
- package/lib/commands/instant-api-policy/revision.js +1 -1
- package/lib/commands/instant-api-policy/revisions.js +1 -1
- package/lib/commands/instant-api-policy/rollback.js +1 -1
- package/lib/commands/instant-api-policy/shared.js +1 -1
- package/lib/commands/instant-api-policy/validate.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/api-architecture-upgrade.d.ts +28 -0
- package/lib/commands/project/api-architecture-upgrade.js +1 -0
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/domain-routing-sync.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.d.ts +30 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/rule/get.js +1 -1
- package/lib/commands/rule/index.js +1 -1
- package/lib/commands/rule/list.js +1 -1
- package/lib/commands/rule/set.js +1 -1
- package/lib/commands/rule/shared.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/project-domain-routing.js +1 -1
- package/lib/config/region-config.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.d.ts +5 -3
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/routing-profile.js +1 -1
- package/lib/context/app-resolver.d.ts +2 -0
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.d.ts +2 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.d.ts +13 -17
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +6 -0
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/hook-directory.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/cross-db-relation.d.ts +41 -0
- package/lib/core/cross-db-relation.js +1 -0
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/flow-config.js +1 -1
- package/lib/core/instant-api-policy/config.js +1 -1
- package/lib/core/kb-search-client.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/page/lr-smart-jsx.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.d.ts +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/supported-flags.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/generated/official-routing.js +1 -1
- package/lib/generated/routing-contract.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.d.ts +0 -10
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/types/index.d.ts +11 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.d.ts +19 -0
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +6 -1
- package/skills/rabetbase/SKILL.md +16 -10
- package/skills/rabetbase/guides/backend-function.md +5 -1
- package/skills/rabetbase/guides/bff-creation-workflow.md +3 -1
- package/skills/rabetbase/guides/cross-database-bff.md +70 -0
- package/skills/rabetbase/guides/data-api-guidelines.md +35 -33
- package/skills/rabetbase/guides/sdk-client-generation.md +112 -61
- package/skills/rabetbase/guides/sql-creation-workflow.md +2 -0
- package/skills/rabetbase/guides/typescript-sdk.md +9 -0
- package/skills/rabetbase/references/rabetbase-api-pull.md +30 -19
- package/skills/rabetbase/references/rabetbase-app-list.md +1 -1
- package/skills/rabetbase/references/rabetbase-config.md +2 -1
- package/skills/rabetbase/references/rabetbase-dataset-cross-relations.md +64 -0
- package/skills/rabetbase/references/rabetbase-project-create.md +3 -3
- package/skills/rabetbase/references/rabetbase-project-upgrade.md +24 -13
- package/skills/rabetbase.manifest.json +5 -3
- package/templates/README.md +46 -6
- package/templates/generate-api/model-runtime.ts.tpl +101 -0
- package/templates/generate-api/profile-api.ts.tpl +21 -0
- package/templates/generate-api/profile-client.ts.tpl +14 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a149_0x41e0e7=a149_0x3d90;(function(_0x1fd194,_0x2a388a){const _0x3f77d6=a149_0x3d90,_0x5c662c=_0x1fd194();while(!![]){try{const _0x5d7c86=-parseInt(_0x3f77d6(0x187))/0x1*(parseInt(_0x3f77d6(0x180))/0x2)+-parseInt(_0x3f77d6(0x17c))/0x3+parseInt(_0x3f77d6(0x192))/0x4+parseInt(_0x3f77d6(0x179))/0x5*(parseInt(_0x3f77d6(0x189))/0x6)+-parseInt(_0x3f77d6(0x198))/0x7+-parseInt(_0x3f77d6(0x184))/0x8*(parseInt(_0x3f77d6(0x17f))/0x9)+parseInt(_0x3f77d6(0x178))/0xa;if(_0x5d7c86===_0x2a388a)break;else _0x5c662c['push'](_0x5c662c['shift']());}catch(_0x367c0d){_0x5c662c['push'](_0x5c662c['shift']());}}}(a149_0x1412,0x75349));function a149_0x3d90(_0xdfa449,_0x464a56){_0xdfa449=_0xdfa449-0x177;const _0x1412a9=a149_0x1412();let _0x3d9042=_0x1412a9[_0xdfa449];return _0x3d9042;}import{logger}from'../../utils/logger.js';function printLogs(_0x48d482){const _0x1978b5=a149_0x3d90;if(_0x48d482['length']===0x0){console[_0x1978b5(0x181)](_0x1978b5(0x194));return;}console[_0x1978b5(0x181)](_0x1978b5(0x17e)),_0x48d482[_0x1978b5(0x195)]((_0x398e73,_0x3f2467)=>{const _0x97e78=_0x1978b5,_0x1cf5bd=new Date(_0x398e73[_0x97e78(0x18a)])[_0x97e78(0x188)](_0x97e78(0x18f)),_0x2356f9=_0x398e73[_0x97e78(0x190)]==='success'?'√':_0x398e73[_0x97e78(0x190)]===_0x97e78(0x182)?'×':_0x398e73[_0x97e78(0x190)]===_0x97e78(0x17a)?'!':'i';console['log'](_0x3f2467+0x1+'.\x20'+_0x2356f9+'\x20['+_0x398e73[_0x97e78(0x18b)]+']\x20'+_0x398e73[_0x97e78(0x17b)]),console[_0x97e78(0x181)](_0x97e78(0x18d)+_0x1cf5bd),_0x398e73[_0x97e78(0x191)]&&console['log'](_0x97e78(0x177)+_0x398e73[_0x97e78(0x191)]+'ms'),_0x398e73['details']&&Object['keys'](_0x398e73[_0x97e78(0x196)])['length']>0x0&&console['log']('\x20\x20\x20Details:\x20'+JSON[_0x97e78(0x197)](_0x398e73[_0x97e78(0x196)],null,0x2)),console[_0x97e78(0x181)]('');});}export const logsDefinitions=[{'service':a149_0x41e0e7(0x186),'command':a149_0x41e0e7(0x185),'description':a149_0x41e0e7(0x18e),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x3dc53a){const _0x3d821d=a149_0x41e0e7;return printLogs(logger[_0x3d821d(0x18c)]()),{'ok':!![]};}},{'service':'logs','command':'clear','description':a149_0x41e0e7(0x17d),'risk':a149_0x41e0e7(0x183),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x1e6025){const _0x30760e=a149_0x41e0e7;return logger['clearLogs'](),console['log'](_0x30760e(0x193)),{'ok':!![]};}}];function a149_0x1412(){const _0x2adeee=['29280ELHsfZ','*\x20Logs\x20cleared','*\x20No\x20logs\x20found','forEach','details','stringify','6064457QXNXEu','\x20\x20\x20Duration:\x20','19595720aWcyQM','85sUAFyb','warn','message','256233KRyfxR','Clear\x20command\x20history\x20logs','*\x20Lovrabet\x20CLI\x20logs:\x0a','45MBQaZE','10cbDGKq','log','error','write','890952iKXCUI','show','logs','7879nvEPmW','toLocaleString','21594poSVeo','timestamp','command','readLogs','\x20\x20\x20Time:\x20','View\x20command\x20history\x20logs','en-US','level','duration'];a149_0x1412=function(){return _0x2adeee;};return a149_0x1412();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a140_0x28d6fb=a140_0x4f25;(function(_0x3ef8cd,_0x4d2c70){const _0x2bac9a=a140_0x4f25,_0xa260b2=_0x3ef8cd();while(!![]){try{const _0x4a0773=-parseInt(_0x2bac9a(0x6c))/0x1*(-parseInt(_0x2bac9a(0x86))/0x2)+parseInt(_0x2bac9a(0x9d))/0x3*(-parseInt(_0x2bac9a(0x9b))/0x4)+parseInt(_0x2bac9a(0x96))/0x5*(-parseInt(_0x2bac9a(0x79))/0x6)+parseInt(_0x2bac9a(0x95))/0x7+parseInt(_0x2bac9a(0x74))/0x8*(-parseInt(_0x2bac9a(0xbd))/0x9)+parseInt(_0x2bac9a(0x8e))/0xa*(parseInt(_0x2bac9a(0xb3))/0xb)+-parseInt(_0x2bac9a(0x77))/0xc*(-parseInt(_0x2bac9a(0xba))/0xd);if(_0x4a0773===_0x4d2c70)break;else _0xa260b2['push'](_0xa260b2['shift']());}catch(_0x2c642d){_0xa260b2['push'](_0xa260b2['shift']());}}}(a140_0x30ff,0x5d02a));import a140_0x372930 from'chalk';import{filterMenusWithResources,fetchOnlineMenuList}from'../../commands/menu/shared/logic.js';import{renderUpdateSummary}from'../../commands/menu/shared/compare-table.js';import{askJsUrl,askCssUrl,askConfirm,startSpinner,stopSpinner,requireInteractive}from'../../commands/menu/shared/inquirer.js';import{CliErrors}from'../../errors.js';function a140_0x4f25(_0x3779e7,_0x36e7ce){_0x3779e7=_0x3779e7-0x6a;const _0x30ff0c=a140_0x30ff();let _0x4f25aa=_0x30ff0c[_0x3779e7];return _0x4f25aa;}import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';import{runMenuUpdateCore}from'../../commands/menu/shared/update-core.js';import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':'menu','command':a140_0x28d6fb(0x8b),'description':a140_0x28d6fb(0xae),'risk':'write','flags':[{'name':a140_0x28d6fb(0xbc),'type':'string','description':a140_0x28d6fb(0xb1)+a140_0x28d6fb(0x84)},{'name':a140_0x28d6fb(0x8a),'type':a140_0x28d6fb(0x9f),'description':a140_0x28d6fb(0xa0)+a140_0x28d6fb(0x89),'enum':[a140_0x28d6fb(0x7d),a140_0x28d6fb(0xb7)],'default':'patch'},{'name':'force','type':a140_0x28d6fb(0xbe),'description':a140_0x28d6fb(0xa9)},{'name':'menu-ids','type':a140_0x28d6fb(0x9f),'description':'Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update'},{'name':'paths','type':'string','description':a140_0x28d6fb(0xc0)},{'name':a140_0x28d6fb(0x97),'type':'boolean','description':a140_0x28d6fb(0x92)},{'name':a140_0x28d6fb(0xb6),'type':a140_0x28d6fb(0x9f),'enum':[a140_0x28d6fb(0x75),'script',a140_0x28d6fb(0x93)],'description':a140_0x28d6fb(0xa6)}],async 'dryRun'(_0x29cbc4){const _0x2c0d22=a140_0x28d6fb;ensureRunnableContext(_0x29cbc4[_0x2c0d22(0x78)],_0x29cbc4['selectedAppName']);const _0x19c708=await runMenuUpdateCore(_0x29cbc4['appCode'],_0x29cbc4[_0x2c0d22(0x90)],_0x29cbc4[_0x2c0d22(0xb9)](_0x2c0d22(0xbc)),{'mode':parseMode(_0x29cbc4['str'](_0x2c0d22(0x8a))),'dryRun':!![],'force':_0x29cbc4['bool'](_0x2c0d22(0x7a)),'selection':parseSelection(_0x29cbc4),'loadScriptMode':parseLoadScriptMode(_0x29cbc4[_0x2c0d22(0xb9)](_0x2c0d22(0xb6)))});return{'method':_0x2c0d22(0xaf),'url':_0x2c0d22(0xab),'body':_0x19c708,'description':_0x19c708[_0x2c0d22(0x9e)]?'No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.':'Would\x20update\x20'+(_0x19c708[_0x2c0d22(0x82)]?.[_0x2c0d22(0x7e)]??0x0)+_0x2c0d22(0x85)};},async 'execute'(_0x3fd9e3){const _0x193794=a140_0x28d6fb;ensureRunnableContext(_0x3fd9e3[_0x193794(0x78)],_0x3fd9e3[_0x193794(0x88)]);const _0xffa4af=_0x3fd9e3[_0x193794(0xb9)](_0x193794(0xbc)),_0x3633e5=parseMode(_0x3fd9e3[_0x193794(0xb9)](_0x193794(0x8a))),_0x91efcc=_0x3fd9e3[_0x193794(0x81)](_0x193794(0x7a)),_0x5d2d87=parseLoadScriptMode(_0x3fd9e3['str']('load-mode')),_0xe72d5d=parseParams(_0xffa4af),_0x45ccaa=!!(_0xe72d5d[_0x193794(0xb0)]||_0xe72d5d[_0x193794(0xa5)]);if(_0x45ccaa){const _0x404182=await runMenuUpdateCore(_0x3fd9e3[_0x193794(0x8d)],_0x3fd9e3[_0x193794(0x90)],_0xffa4af,{'mode':_0x3633e5,'force':_0x91efcc,'selection':parseSelection(_0x3fd9e3),'loadScriptMode':_0x5d2d87});return _0x404182[_0x193794(0x9e)]?writeCliSideChannelLine('!\x20No\x20menus\x20with\x20existing\x20resources\x20found'):(writeCliSideChannelLine('✓\x20Menu\x20asset\x20update\x20completed:\x20'+_0x404182[_0x193794(0xad)]+_0x193794(0x8c)),_0x404182['failed']>0x0&&writeCliSideChannelLine('!\x20'+_0x404182['failed']+_0x193794(0x99))),{'ok':_0x404182[_0x193794(0x7f)]===0x0,'data':_0x404182,'message':_0x404182[_0x193794(0x9e)]?_0x193794(0xa2):_0x193794(0x72)+_0x404182['updated']+_0x193794(0xb2)+_0x404182[_0x193794(0x7f)]+_0x193794(0x73)};}requireInteractive();const _0x5a4fa1=startSpinner('Fetching\x20online\x20menu\x20list...');let _0x307acd;try{_0x307acd=await fetchOnlineMenuList(_0x3fd9e3[_0x193794(0x8d)],_0x3fd9e3[_0x193794(0x90)]),stopSpinner(_0x5a4fa1,_0x193794(0x76),!![]);}catch(_0xc877ed){stopSpinner(_0x5a4fa1,'Failed\x20to\x20fetch\x20online\x20menu\x20list',![]);throw CliErrors[_0x193794(0xa7)](_0xc877ed instanceof Error?_0xc877ed[_0x193794(0xa4)]:_0x193794(0xa1));}const _0x1ba386=filterMenusWithResources(_0x307acd),_0x32d1e9=parseSelection(_0x3fd9e3,![]),_0x3aec21=_0x32d1e9?selectMenusForUpdate(_0x1ba386,_0x32d1e9):_0x1ba386;if(_0x3aec21['length']===0x0)return writeCliSideChannelLine(a140_0x372930[_0x193794(0x7b)](_0x193794(0x6e))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a140_0x372930[_0x193794(0xb5)](_0x193794(0xac)+_0x3aec21[_0x193794(0x7e)]+'\x20menu(s)\x20with\x20existing\x20resources')),writeCliSideChannelLine(renderUpdateSummary(_0x3aec21[_0x193794(0x8f)](_0x1fe5d7=>_0x1fe5d7[_0x193794(0xb8)]),[_0xe72d5d[_0x193794(0xb0)],_0xe72d5d[_0x193794(0xa5)]])),writeCliSideChannelLine('');let _0x5b3166=_0xe72d5d['jsUrl'],_0x474e2c=_0xe72d5d['cssUrl'];!_0x5b3166&&(_0x5b3166=await askJsUrl());!_0x474e2c&&(_0x474e2c=await askCssUrl());const _0x1e789d=await askConfirm(_0x193794(0x70)+_0x3aec21[_0x193794(0x7e)]+_0x193794(0x6f)+_0x5b3166+_0x193794(0x7c)+_0x474e2c+'?');if(!_0x1e789d)return writeCliSideChannelLine(a140_0x372930['gray']('\x20\x20Cancelled.')),{'ok':!![]};const _0x8ab766=startSpinner(_0x193794(0x91)+_0x3aec21[_0x193794(0x7e)]+'\x20menu(s)...');try{const _0x5c5007=await runMenuUpdateCore(_0x3fd9e3[_0x193794(0x8d)],_0x3fd9e3[_0x193794(0x90)],JSON['stringify']({'jsUrl':_0x5b3166,'cssUrl':_0x474e2c}),{'mode':_0x3633e5,'force':_0x91efcc,'selection':{'all':![],'menuIds':_0x3aec21[_0x193794(0x8f)](_0x3cf906=>_0x3cf906['id']),'paths':[]},'loadScriptMode':_0x5d2d87});return stopSpinner(_0x8ab766,_0x193794(0xb4)+_0x5c5007[_0x193794(0xad)]+_0x193794(0x83),_0x5c5007[_0x193794(0x7f)]===0x0),{'ok':_0x5c5007['failed']===0x0,'data':_0x5c5007,'message':_0x5c5007[_0x193794(0x7f)]>0x0?_0x193794(0x72)+_0x5c5007[_0x193794(0xad)]+_0x193794(0xb2)+_0x5c5007[_0x193794(0x7f)]+_0x193794(0x73):_0x193794(0x72)+_0x5c5007[_0x193794(0xad)]+'\x20updated.'};}catch(_0x3bf6a3){stopSpinner(_0x8ab766,_0x193794(0x6d),![]);throw CliErrors['validation'](_0x3bf6a3 instanceof Error?_0x3bf6a3[_0x193794(0xa4)]:_0x193794(0x6d));}}};function a140_0x30ff(){const _0x315e06=['string','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','Failed\x20to\x20fetch\x20online\x20menu\x20list','Menu\x20asset\x20update\x20skipped','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','message','cssUrl','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','validation','isSafeInteger','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','some','/smartapi/menu/update','\x20\x20Found\x20','updated','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','POST','jsUrl','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','\x20updated,\x20','555643Bmdwpe','Updated\x20','cyan','load-mode','patch','label','str','8030672sMoFhZ','isArray','params','19485DdjViM','boolean','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','parse','Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch','appcode','11576CQqdNv','Menu\x20asset\x20update\x20failed','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','\x20menu(s)\x20with\x20JS:\x20','\x20\x20Update\x20','trim','Menu\x20asset\x20update\x20completed:\x20','\x20failed.','136psSAFv','import','Online\x20menu\x20list\x20fetched','12SgAQdR','rawFlags','1146skMclh','force','yellow','\x20and\x20CSS:\x20','replace','length','failed','menu-ids','bool','diffs','\x20menu(s)','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','\x20menu\x20resource\x20set(s).','70Pvbeep','split','selectedAppName','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','mode','asset-update','\x20menu(s)\x20updated','appCode','50AAoQCb','map','cookie','Updating\x20','Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources','fetch','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','1400672ExQRPe','11405Nbxqiz','all','menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.','\x20menu(s)\x20failed','object','829492oIkgyL','script','9fzeiyc','skipped'];a140_0x30ff=function(){return _0x315e06;};return a140_0x30ff();}function ensureRunnableContext(_0x373da9,_0x283f9f){const _0xe0895e=a140_0x28d6fb,_0x49d4d1=_0x373da9[_0xe0895e(0x6b)]?String(_0x373da9['appcode'])[_0xe0895e(0x71)]():'';if(!isInProject()&&!_0x283f9f&&!_0x49d4d1)throw CliErrors['validation'](_0xe0895e(0xbf)+'Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.');}function parseMode(_0x531725){const _0x4f6a53=a140_0x28d6fb;if(!_0x531725)return _0x4f6a53(0xb7);if(_0x531725==='replace'||_0x531725==='patch')return _0x531725;throw CliErrors[_0x4f6a53(0xa7)](_0x4f6a53(0xa3));}function parseSelection(_0x3d44ad,_0x556499=!![]){const _0x4e29cc=a140_0x28d6fb,_0x4599da=_0x3d44ad[_0x4e29cc(0x81)](_0x4e29cc(0x97)),_0x34da51=parseMenuIds(_0x3d44ad[_0x4e29cc(0xb9)](_0x4e29cc(0x80))),_0x151b67=parseCsv(_0x3d44ad[_0x4e29cc(0xb9)]('paths')),_0x267d4e=_0x34da51[_0x4e29cc(0x7e)]>0x0||_0x151b67[_0x4e29cc(0x7e)]>0x0;if(_0x4599da&&_0x267d4e)throw CliErrors[_0x4e29cc(0xa7)](_0x4e29cc(0x94));if(!_0x4599da&&!_0x267d4e){if(!_0x556499)return undefined;throw CliErrors['validation'](_0x4e29cc(0x98));}return{'all':_0x4599da,'menuIds':_0x34da51,'paths':_0x151b67};}function parseMenuIds(_0x167208){const _0x12458e=a140_0x28d6fb,_0x28d90e=parseCsv(_0x167208),_0x26d4bf=_0x28d90e['map'](Number);if(_0x26d4bf[_0x12458e(0xaa)](_0x153a51=>!Number[_0x12458e(0xa8)](_0x153a51)||_0x153a51<=0x0))throw CliErrors[_0x12458e(0xa7)]('--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.');return[...new Set(_0x26d4bf)];}function parseCsv(_0x22a45f){const _0xafbcee=a140_0x28d6fb;return[...new Set(_0x22a45f[_0xafbcee(0x87)](',')[_0xafbcee(0x8f)](_0x3997f0=>_0x3997f0[_0xafbcee(0x71)]())['filter'](Boolean))];}function parseLoadScriptMode(_0x59ed59){const _0x2c74c4=a140_0x28d6fb;if(!_0x59ed59)return undefined;if(_0x59ed59==='import'||_0x59ed59===_0x2c74c4(0x9c)||_0x59ed59===_0x2c74c4(0x93))return _0x59ed59;throw CliErrors[_0x2c74c4(0xa7)](_0x2c74c4(0x6a));}function parseParams(_0x48ff5a){const _0x106f9e=a140_0x28d6fb;if(!_0x48ff5a)return{};try{const _0x27ebeb=JSON[_0x106f9e(0xc1)](_0x48ff5a);if(typeof _0x27ebeb!==_0x106f9e(0x9a)||_0x27ebeb===null||Array[_0x106f9e(0xbb)](_0x27ebeb))return{};return{'jsUrl':typeof _0x27ebeb[_0x106f9e(0xb0)]===_0x106f9e(0x9f)?_0x27ebeb[_0x106f9e(0xb0)][_0x106f9e(0x71)]():undefined,'cssUrl':typeof _0x27ebeb[_0x106f9e(0xa5)]===_0x106f9e(0x9f)?_0x27ebeb[_0x106f9e(0xa5)][_0x106f9e(0x71)]():undefined};}catch{return{};}}
|
|
1
|
+
const a150_0x3d4a4b=a150_0x4c6c;function a150_0x4c6c(_0x19489a,_0x179c80){_0x19489a=_0x19489a-0x130;const _0x4c83df=a150_0x4c83();let _0x4c6c70=_0x4c83df[_0x19489a];return _0x4c6c70;}function a150_0x4c83(){const _0x49c889=['Menu\x20asset\x20update\x20failed','\x20menu(s)','25RUaoVT','\x20updated.','856287fMkmwb','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','write','\x20updated,\x20','\x20\x20Found\x20','118086iASHBx','selectedAppName','10SDeHNh','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','menu','string','fetch','failed','appCode','paths','params','7598272VyDFiY','Online\x20menu\x20list\x20fetched','Menu\x20asset\x20update\x20completed:\x20','Failed\x20to\x20fetch\x20online\x20menu\x20list','✓\x20Menu\x20asset\x20update\x20completed:\x20','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','1022154yLaCnw','2fvESjx','--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.','force','map','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','isArray','all','bool','cyan','script','diffs','\x20menu(s)\x20failed','object','\x20failed.','load-mode','patch','cookie','\x20\x20Cancelled.','Fetching\x20online\x20menu\x20list...','49612nRAcEU','!\x20No\x20menus\x20with\x20existing\x20resources\x20found','Updating\x20','replace','label','validation','POST','menu-ids','skipped','isSafeInteger','Menu\x20asset\x20update\x20skipped','jsUrl','stringify','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update','rawFlags','\x20menu(s)\x20with\x20existing\x20resources','mode','650100BwOwmN','\x20menu(s)\x20with\x20JS:\x20','str','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','trim','\x20menu(s)...','some','Updated\x20','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','/smartapi/menu/update','parse','126986xWNYgw','\x20menu\x20resource\x20set(s).','cssUrl','appcode','8CmVnTQ','updated','length','import','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','boolean','gray','split'];a150_0x4c83=function(){return _0x49c889;};return a150_0x4c83();}(function(_0x123f6e,_0x452c0a){const _0x907c06=a150_0x4c6c,_0x2018bf=_0x123f6e();while(!![]){try{const _0x52e7ff=-parseInt(_0x907c06(0x146))/0x1+-parseInt(_0x907c06(0x16f))/0x2*(parseInt(_0x907c06(0x15d))/0x3)+-parseInt(_0x907c06(0x182))/0x4*(parseInt(_0x907c06(0x156))/0x5)+-parseInt(_0x907c06(0x13b))/0x6+-parseInt(_0x907c06(0x16e))/0x7*(parseInt(_0x907c06(0x14a))/0x8)+parseInt(_0x907c06(0x158))/0x9*(-parseInt(_0x907c06(0x15f))/0xa)+parseInt(_0x907c06(0x168))/0xb;if(_0x52e7ff===_0x452c0a)break;else _0x2018bf['push'](_0x2018bf['shift']());}catch(_0x317514){_0x2018bf['push'](_0x2018bf['shift']());}}}(a150_0x4c83,0x1b8ea));import a150_0x4fdd04 from'chalk';import{filterMenusWithResources,fetchOnlineMenuList}from'../../commands/menu/shared/logic.js';import{renderUpdateSummary}from'../../commands/menu/shared/compare-table.js';import{askJsUrl,askCssUrl,askConfirm,startSpinner,stopSpinner,requireInteractive}from'../../commands/menu/shared/inquirer.js';import{CliErrors}from'../../errors.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';import{runMenuUpdateCore}from'../../commands/menu/shared/update-core.js';import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':a150_0x3d4a4b(0x161),'command':'asset-update','description':a150_0x3d4a4b(0x150),'risk':a150_0x3d4a4b(0x15a),'flags':[{'name':a150_0x3d4a4b(0x167),'type':a150_0x3d4a4b(0x162),'description':a150_0x3d4a4b(0x159)+a150_0x3d4a4b(0x136)},{'name':a150_0x3d4a4b(0x13a),'type':a150_0x3d4a4b(0x162),'description':a150_0x3d4a4b(0x14f)+'patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','enum':['replace','patch'],'default':a150_0x3d4a4b(0x17e)},{'name':a150_0x3d4a4b(0x171),'type':a150_0x3d4a4b(0x151),'description':'Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources'},{'name':a150_0x3d4a4b(0x130),'type':a150_0x3d4a4b(0x162),'description':a150_0x3d4a4b(0x137)},{'name':a150_0x3d4a4b(0x166),'type':a150_0x3d4a4b(0x162),'description':a150_0x3d4a4b(0x13e)},{'name':a150_0x3d4a4b(0x175),'type':'boolean','description':'Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources'},{'name':a150_0x3d4a4b(0x17d),'type':a150_0x3d4a4b(0x162),'enum':[a150_0x3d4a4b(0x14d),a150_0x3d4a4b(0x178),a150_0x3d4a4b(0x163)],'description':a150_0x3d4a4b(0x160)}],async 'dryRun'(_0x21cce4){const _0x1b8473=a150_0x3d4a4b;ensureRunnableContext(_0x21cce4[_0x1b8473(0x138)],_0x21cce4[_0x1b8473(0x15e)]);const _0xb66390=await runMenuUpdateCore(_0x21cce4['appCode'],_0x21cce4[_0x1b8473(0x17f)],_0x21cce4[_0x1b8473(0x13d)](_0x1b8473(0x167)),{'mode':parseMode(_0x21cce4['str']('mode')),'dryRun':!![],'force':_0x21cce4[_0x1b8473(0x176)]('force'),'selection':parseSelection(_0x21cce4),'loadScriptMode':parseLoadScriptMode(_0x21cce4[_0x1b8473(0x13d)](_0x1b8473(0x17d)))});return{'method':_0x1b8473(0x188),'url':_0x1b8473(0x144),'body':_0xb66390,'description':_0xb66390[_0x1b8473(0x131)]?_0x1b8473(0x173):'Would\x20update\x20'+(_0xb66390[_0x1b8473(0x179)]?.[_0x1b8473(0x14c)]??0x0)+_0x1b8473(0x147)};},async 'execute'(_0x168d09){const _0x688542=a150_0x3d4a4b;ensureRunnableContext(_0x168d09[_0x688542(0x138)],_0x168d09[_0x688542(0x15e)]);const _0x43a159=_0x168d09[_0x688542(0x13d)](_0x688542(0x167)),_0x20c809=parseMode(_0x168d09[_0x688542(0x13d)](_0x688542(0x13a))),_0x39bfa4=_0x168d09[_0x688542(0x176)]('force'),_0x202015=parseLoadScriptMode(_0x168d09[_0x688542(0x13d)](_0x688542(0x17d))),_0x177a4a=parseParams(_0x43a159),_0x310d01=!!(_0x177a4a[_0x688542(0x134)]||_0x177a4a[_0x688542(0x148)]);if(_0x310d01){const _0x44811e=await runMenuUpdateCore(_0x168d09[_0x688542(0x165)],_0x168d09['cookie'],_0x43a159,{'mode':_0x20c809,'force':_0x39bfa4,'selection':parseSelection(_0x168d09),'loadScriptMode':_0x202015});return _0x44811e[_0x688542(0x131)]?writeCliSideChannelLine(_0x688542(0x183)):(writeCliSideChannelLine(_0x688542(0x16c)+_0x44811e[_0x688542(0x14b)]+'\x20menu(s)\x20updated'),_0x44811e[_0x688542(0x164)]>0x0&&writeCliSideChannelLine('!\x20'+_0x44811e[_0x688542(0x164)]+_0x688542(0x17a))),{'ok':_0x44811e[_0x688542(0x164)]===0x0,'data':_0x44811e,'message':_0x44811e[_0x688542(0x131)]?_0x688542(0x133):_0x688542(0x16a)+_0x44811e['updated']+_0x688542(0x15b)+_0x44811e[_0x688542(0x164)]+_0x688542(0x17c)};}requireInteractive();const _0x2a7c4d=startSpinner(_0x688542(0x181));let _0x7378c;try{_0x7378c=await fetchOnlineMenuList(_0x168d09[_0x688542(0x165)],_0x168d09['cookie']),stopSpinner(_0x2a7c4d,_0x688542(0x169),!![]);}catch(_0x5bf970){stopSpinner(_0x2a7c4d,_0x688542(0x16b),![]);throw CliErrors['validation'](_0x5bf970 instanceof Error?_0x5bf970['message']:_0x688542(0x16b));}const _0x39ef54=filterMenusWithResources(_0x7378c),_0x4c0a3c=parseSelection(_0x168d09,![]),_0x6ec5ec=_0x4c0a3c?selectMenusForUpdate(_0x39ef54,_0x4c0a3c):_0x39ef54;if(_0x6ec5ec[_0x688542(0x14c)]===0x0)return writeCliSideChannelLine(a150_0x4fdd04['yellow'](_0x688542(0x16d))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a150_0x4fdd04[_0x688542(0x177)](_0x688542(0x15c)+_0x6ec5ec['length']+_0x688542(0x139))),writeCliSideChannelLine(renderUpdateSummary(_0x6ec5ec['map'](_0x4dbe45=>_0x4dbe45[_0x688542(0x186)]),[_0x177a4a[_0x688542(0x134)],_0x177a4a['cssUrl']])),writeCliSideChannelLine('');let _0x567b76=_0x177a4a[_0x688542(0x134)],_0x746409=_0x177a4a[_0x688542(0x148)];!_0x567b76&&(_0x567b76=await askJsUrl());!_0x746409&&(_0x746409=await askCssUrl());const _0x396327=await askConfirm('\x20\x20Update\x20'+_0x6ec5ec[_0x688542(0x14c)]+_0x688542(0x13c)+_0x567b76+'\x20and\x20CSS:\x20'+_0x746409+'?');if(!_0x396327)return writeCliSideChannelLine(a150_0x4fdd04[_0x688542(0x152)](_0x688542(0x180))),{'ok':!![]};const _0x3434a0=startSpinner(_0x688542(0x184)+_0x6ec5ec[_0x688542(0x14c)]+_0x688542(0x140));try{const _0x1df383=await runMenuUpdateCore(_0x168d09[_0x688542(0x165)],_0x168d09['cookie'],JSON[_0x688542(0x135)]({'jsUrl':_0x567b76,'cssUrl':_0x746409}),{'mode':_0x20c809,'force':_0x39bfa4,'selection':{'all':![],'menuIds':_0x6ec5ec[_0x688542(0x172)](_0x57a68e=>_0x57a68e['id']),'paths':[]},'loadScriptMode':_0x202015});return stopSpinner(_0x3434a0,_0x688542(0x142)+_0x1df383[_0x688542(0x14b)]+_0x688542(0x155),_0x1df383[_0x688542(0x164)]===0x0),{'ok':_0x1df383[_0x688542(0x164)]===0x0,'data':_0x1df383,'message':_0x1df383['failed']>0x0?'Menu\x20asset\x20update\x20completed:\x20'+_0x1df383[_0x688542(0x14b)]+_0x688542(0x15b)+_0x1df383[_0x688542(0x164)]+_0x688542(0x17c):'Menu\x20asset\x20update\x20completed:\x20'+_0x1df383[_0x688542(0x14b)]+_0x688542(0x157)};}catch(_0x213dfc){stopSpinner(_0x3434a0,_0x688542(0x154),![]);throw CliErrors[_0x688542(0x187)](_0x213dfc instanceof Error?_0x213dfc['message']:_0x688542(0x154));}}};function ensureRunnableContext(_0x3fbdf8,_0x5a09af){const _0x402a03=a150_0x3d4a4b,_0x236a14=_0x3fbdf8[_0x402a03(0x149)]?String(_0x3fbdf8[_0x402a03(0x149)])[_0x402a03(0x13f)]():'';if(!isInProject()&&!_0x5a09af&&!_0x236a14)throw CliErrors['validation']('menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20'+'Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.');}function parseMode(_0x45db11){const _0x267707=a150_0x3d4a4b;if(!_0x45db11)return'patch';if(_0x45db11===_0x267707(0x185)||_0x45db11===_0x267707(0x17e))return _0x45db11;throw CliErrors['validation'](_0x267707(0x14e));}function parseSelection(_0x2c1002,_0x3e6f00=!![]){const _0xc89189=a150_0x3d4a4b,_0x355c34=_0x2c1002[_0xc89189(0x176)](_0xc89189(0x175)),_0x2ee24f=parseMenuIds(_0x2c1002[_0xc89189(0x13d)](_0xc89189(0x130))),_0x4d4cdd=parseCsv(_0x2c1002[_0xc89189(0x13d)](_0xc89189(0x166))),_0x4dfb67=_0x2ee24f[_0xc89189(0x14c)]>0x0||_0x4d4cdd[_0xc89189(0x14c)]>0x0;if(_0x355c34&&_0x4dfb67)throw CliErrors[_0xc89189(0x187)](_0xc89189(0x143));if(!_0x355c34&&!_0x4dfb67){if(!_0x3e6f00)return undefined;throw CliErrors[_0xc89189(0x187)]('menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.');}return{'all':_0x355c34,'menuIds':_0x2ee24f,'paths':_0x4d4cdd};}function parseMenuIds(_0x113dec){const _0x1e60e0=a150_0x3d4a4b,_0x3bcb3a=parseCsv(_0x113dec),_0x1fe8cf=_0x3bcb3a['map'](Number);if(_0x1fe8cf[_0x1e60e0(0x141)](_0x28c257=>!Number[_0x1e60e0(0x132)](_0x28c257)||_0x28c257<=0x0))throw CliErrors[_0x1e60e0(0x187)](_0x1e60e0(0x170));return[...new Set(_0x1fe8cf)];}function parseCsv(_0x14ab7a){const _0x1b7612=a150_0x3d4a4b;return[...new Set(_0x14ab7a[_0x1b7612(0x153)](',')[_0x1b7612(0x172)](_0x581b4f=>_0x581b4f[_0x1b7612(0x13f)]())['filter'](Boolean))];}function parseLoadScriptMode(_0x48b369){const _0x5df5ff=a150_0x3d4a4b;if(!_0x48b369)return undefined;if(_0x48b369==='import'||_0x48b369===_0x5df5ff(0x178)||_0x48b369==='fetch')return _0x48b369;throw CliErrors[_0x5df5ff(0x187)]('Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch');}function parseParams(_0x5702fd){const _0x202980=a150_0x3d4a4b;if(!_0x5702fd)return{};try{const _0x4d0043=JSON[_0x202980(0x145)](_0x5702fd);if(typeof _0x4d0043!==_0x202980(0x17b)||_0x4d0043===null||Array[_0x202980(0x174)](_0x4d0043))return{};return{'jsUrl':typeof _0x4d0043[_0x202980(0x134)]==='string'?_0x4d0043['jsUrl'][_0x202980(0x13f)]():undefined,'cssUrl':typeof _0x4d0043[_0x202980(0x148)]===_0x202980(0x162)?_0x4d0043[_0x202980(0x148)][_0x202980(0x13f)]():undefined};}catch{return{};}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a141_0x5b78f5=a141_0x5028;(function(_0x1a0e89,_0x3af6cc){const _0x1ba1e0=a141_0x5028,_0x5f0886=_0x1a0e89();while(!![]){try{const _0x12b024=-parseInt(_0x1ba1e0(0x12c))/0x1*(parseInt(_0x1ba1e0(0x14a))/0x2)+parseInt(_0x1ba1e0(0x13c))/0x3*(-parseInt(_0x1ba1e0(0x152))/0x4)+parseInt(_0x1ba1e0(0x186))/0x5*(-parseInt(_0x1ba1e0(0x13d))/0x6)+parseInt(_0x1ba1e0(0x11e))/0x7+-parseInt(_0x1ba1e0(0x167))/0x8+parseInt(_0x1ba1e0(0x129))/0x9+-parseInt(_0x1ba1e0(0x140))/0xa*(-parseInt(_0x1ba1e0(0x141))/0xb);if(_0x12b024===_0x3af6cc)break;else _0x5f0886['push'](_0x5f0886['shift']());}catch(_0x383c93){_0x5f0886['push'](_0x5f0886['shift']());}}}(a141_0x8db1,0xd0a26));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a141_0x5b78f5(0x154),'path':a141_0x5b78f5(0x12f)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a141_0x5b78f5(0x136)},MENU_DELETE_RECURSIVE_FLAG={'name':a141_0x5b78f5(0x120),'type':a141_0x5b78f5(0x17f),'description':a141_0x5b78f5(0x192)},MENU_DELETE_PLAN_OUT_FLAG={'name':a141_0x5b78f5(0x116),'type':a141_0x5b78f5(0x12d),'description':a141_0x5b78f5(0x125)},MENU_DELETE_PLAN_FLAG={'name':a141_0x5b78f5(0x194),'type':a141_0x5b78f5(0x12d),'description':a141_0x5b78f5(0x132)};export const menuDelete={'service':a141_0x5b78f5(0x156),'command':a141_0x5b78f5(0x188),'description':a141_0x5b78f5(0x189),'risk':'high-risk-write','structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2479ee){const _0x418457=a141_0x5b78f5;_0x2479ee[_0x418457(0x16a)](_0x418457(0x121))?validateDeleteDryRunInput(_0x2479ee):validateDeleteExecuteInput(_0x2479ee),requireExplicitYes(_0x2479ee);},async 'dryRun'(_0x79031c){const _0x4cf10d=a141_0x5b78f5;validateDeleteDryRunInput(_0x79031c);const _0x1b1e4b=await buildDeletePlan(_0x79031c),_0x19f147=createMenuDeletePlanFile(_0x79031c[_0x4cf10d(0x13f)],_0x1b1e4b),_0xf6f000=await writeMenuDeletePlan(_0x79031c[_0x4cf10d(0x119)]('plan-out'),_0x19f147),_0x79a226=mutationResult({..._0x1b1e4b,'planFile':{'path':_0xf6f000,'createdAt':_0x19f147[_0x4cf10d(0x11a)],'expiresAt':_0x19f147[_0x4cf10d(0x138)]}});return menuDryRunResult(_0x79a226,{'method':_0x4cf10d(0x154),'url':_0x4cf10d(0x12f),'body':{'idList':_0x79a226[_0x4cf10d(0x13b)]},'description':_0x4cf10d(0x134)+(_0x79a226['deleteOrder']?.[_0x4cf10d(0x112)]??0x1)+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x79a226[_0x4cf10d(0x18a)]['id']+_0x4cf10d(0x142)+_0xf6f000+'.'});},async 'execute'(_0x27f272){const _0x418b20=a141_0x5b78f5;requireExplicitYes(_0x27f272),validateDeleteExecuteInput(_0x27f272);const _0x28ca50=await readMenuDeletePlan(_0x27f272[_0x418b20(0x119)](_0x418b20(0x194))),_0x42af79=mutationPlanFromDeleteFile(_0x28ca50[_0x418b20(0x194)],_0x28ca50[_0x418b20(0x173)]),_0x4dc0b0=_0x28ca50[_0x418b20(0x194)][_0x418b20(0x172)]['id'];try{assertMenuDeletePlanExecutable(_0x28ca50[_0x418b20(0x194)],_0x27f272[_0x418b20(0x13f)]);}catch(_0x27d578){throw menuFailure(asMenuError(_0x27d578),_0x42af79,{'stage':_0x418b20(0x183),'failed':{'id':_0x4dc0b0}});}let _0xcba1f2,_0x441849;try{_0xcba1f2=await fetchMutationSnapshot(_0x27f272,'execute\x20reviewed\x20delete\x20plan',_0x4dc0b0),_0x441849=assertMenuDeletePlanCurrent(_0x28ca50[_0x418b20(0x194)],_0x27f272[_0x418b20(0x13f)],_0xcba1f2),assertDeleteTargetsComplete(_0x28ca50[_0x418b20(0x194)],_0xcba1f2),_0x441849['forEach'](_0x469c16=>assertDeleteSafety(_0x469c16,_0x28ca50[_0x418b20(0x194)]['recursive'])),assertNoSharedPages(_0xcba1f2,_0x441849),assertCascadeMatchesPlan(_0x42af79,_0x441849);}catch(_0x9dd0fb){throw menuFailure(asMenuError(_0x9dd0fb),_0x42af79,{'stage':'pre-write-plan-validation','failed':{'id':_0x4dc0b0}});}const _0x3501dc=_0x28ca50['plan'][_0x418b20(0x13b)];let _0x4442a7;try{_0x4442a7=await batchDeleteMenuEntities(_0x27f272[_0x418b20(0x165)],_0x3501dc);}catch(_0x31e518){const _0x4775d2=mapMenuApiError(_0x31e518,_0x418b20(0x111)),_0x1afb70=['The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.'];let _0x4e73e0;try{_0x4e73e0=await readDeleteOutcome(_0x27f272,_0x3501dc);}catch(_0x2e2ac8){const _0x43feaf=describeMenuErrorCause(_0x2e2ac8,'read\x20menu\x20state\x20after\x20batch\x20delete\x20failure',_0x4dc0b0);_0x1afb70[_0x418b20(0x14e)](_0x418b20(0x17e)+_0x43feaf[_0x418b20(0x187)]+_0x418b20(0x169)+_0x43feaf['causeMessage']);throw menuFailure(_0x4775d2,_0x42af79,{'stage':_0x418b20(0x159),'failed':{'targetIds':_0x3501dc,'targetIdsAbsent':_0x418b20(0x122),..._0x43feaf},'warnings':_0x1afb70,'verification':{'status':'failed','lookupCommand':_0x418b20(0x128),'targetIds':_0x3501dc}});}throw menuFailure(_0x4775d2,_0x42af79,{'stage':_0x418b20(0x159),'succeeded':_0x4e73e0[_0x418b20(0x18f)][_0x418b20(0x113)](_0x188eb0=>({'id':_0x188eb0,'deleted':!![]})),'failed':{'targetIds':_0x3501dc,'absentIds':_0x4e73e0[_0x418b20(0x18f)],'remainingIds':_0x4e73e0[_0x418b20(0x175)]},'warnings':_0x1afb70,'verification':verificationFromOutcome(_0x4e73e0)});}if(_0x4442a7!==_0x3501dc[_0x418b20(0x112)]){const _0x49c91e=menuError(_0x418b20(0x178),_0x418b20(0x146)+_0x4442a7+_0x418b20(0x155)+_0x3501dc[_0x418b20(0x112)]+'.',_0x418b20(0x185)),_0x5f4ddf=[_0x418b20(0x114)];let _0x4cbeca;try{_0x4cbeca=await readDeleteOutcome(_0x27f272,_0x3501dc);}catch(_0x472dd8){const _0x4971f5=describeMenuErrorCause(_0x472dd8,_0x418b20(0x153),_0x4dc0b0);_0x5f4ddf[_0x418b20(0x14e)](_0x418b20(0x164)+_0x4971f5['causeCode']+_0x418b20(0x169)+_0x4971f5['causeMessage']);throw menuFailure(_0x49c91e,_0x42af79,{'stage':'batch-delete','failed':{'targetIds':_0x3501dc,'expectedCount':_0x3501dc['length'],'reportedDeletedCount':_0x4442a7,'targetIdsAbsent':_0x418b20(0x122),..._0x4971f5},'warnings':_0x5f4ddf,'verification':{'status':_0x418b20(0x130),'lookupCommand':_0x418b20(0x128),'targetIds':_0x3501dc}});}throw menuFailure(_0x49c91e,_0x42af79,{'stage':_0x418b20(0x159),'succeeded':_0x4cbeca[_0x418b20(0x18f)][_0x418b20(0x113)](_0x4942cf=>({'id':_0x4942cf,'deleted':!![]})),'failed':{'targetIds':_0x3501dc,'expectedCount':_0x3501dc[_0x418b20(0x112)],'reportedDeletedCount':_0x4442a7,'absentIds':_0x4cbeca[_0x418b20(0x18f)],'remainingIds':_0x4cbeca['remainingIds']},'warnings':_0x5f4ddf,'verification':verificationFromOutcome(_0x4cbeca)});}let _0x27d97b;try{_0x27d97b=await readDeleteOutcome(_0x27f272,_0x3501dc);}catch(_0x5d67c0){const _0x40235=describeMenuErrorCause(_0x5d67c0,'verify\x20batch\x20delete',_0x4dc0b0),_0x2fe176=asVerificationError(_0x5d67c0,_0x418b20(0x18c)+_0x4dc0b0+_0x418b20(0x13e));throw menuFailure(_0x2fe176,_0x42af79,{'stage':_0x418b20(0x131),'succeeded':_0x3501dc[_0x418b20(0x113)](_0x4787d1=>({'id':_0x4787d1,'deleteRequested':!![]})),'failed':{'id':_0x4dc0b0,'targetIds':_0x3501dc,'targetIdsAbsent':_0x418b20(0x122),..._0x40235},'warnings':[_0x418b20(0x161)],'verification':{'status':_0x418b20(0x130),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x3501dc}});}if(_0x27d97b[_0x418b20(0x175)]['length']>0x0){const _0x390935=menuError(_0x418b20(0x133),_0x418b20(0x11b)+_0x27d97b[_0x418b20(0x175)][_0x418b20(0x18e)](',\x20')+'.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.');throw menuFailure(_0x390935,_0x42af79,{'stage':'verification','succeeded':_0x3501dc[_0x418b20(0x113)](_0x439726=>({'id':_0x439726,'deleteRequested':!![]})),'failed':{'id':_0x4dc0b0,'targetIds':_0x3501dc,'absentIds':_0x27d97b['absentIds'],'remainingIds':_0x27d97b[_0x418b20(0x175)]},'warnings':[_0x418b20(0x12a)],'verification':verificationFromOutcome(_0x27d97b)});}const _0x3162a2=_0x3501dc[_0x418b20(0x113)](_0x1dc3dd=>({'id':_0x1dc3dd,'deleted':!![]})),_0x1fef0b=mutationResult({..._0x42af79,'dryRun':![],'succeeded':_0x3162a2,'verification':{'checkedBy':_0x418b20(0x15b),'plannedSnapshotHash':_0x42af79[_0x418b20(0x123)],'finalSnapshotHash':_0x27d97b[_0x418b20(0x16e)][_0x418b20(0x118)],'reportedDeletedCount':_0x4442a7,'targetAbsent':!_0x27d97b['snapshot'][_0x418b20(0x195)][_0x418b20(0x144)](_0x4dc0b0),'allTargetsAbsent':!![],'targetIds':_0x3501dc}});return{'ok':!![],'data':_0x1fef0b,'message':'Deleted\x20'+_0x3162a2[_0x418b20(0x112)]+_0x418b20(0x151)+_0x4dc0b0+'.'};}};async function readDeleteOutcome(_0x48c78e,_0x1691e8){const _0x264a97=a141_0x5b78f5,_0x1295aa=await fetchMenuSnapshot(_0x48c78e['appCode'],_0x48c78e['cookie']);return{'snapshot':_0x1295aa,'absentIds':_0x1691e8[_0x264a97(0x18d)](_0x12c06f=>!_0x1295aa[_0x264a97(0x195)][_0x264a97(0x144)](_0x12c06f)),'remainingIds':_0x1691e8[_0x264a97(0x18d)](_0xee3726=>_0x1295aa[_0x264a97(0x195)][_0x264a97(0x144)](_0xee3726))};}function verificationFromOutcome(_0x4f9cda){const _0x32f262=a141_0x5b78f5;return{'checkedBy':_0x32f262(0x15b),'absentIds':_0x4f9cda[_0x32f262(0x18f)],'remainingIds':_0x4f9cda[_0x32f262(0x175)]};}function validateDeleteDryRunInput(_0x133bb0){const _0x15a037=a141_0x5b78f5;validateExactId(_0x133bb0);if(!hasFlag(_0x133bb0,_0x15a037(0x116))||!_0x133bb0[_0x15a037(0x119)](_0x15a037(0x116))['trim']())throw CliErrors[_0x15a037(0x168)](_0x15a037(0x116),_0x15a037(0x18b));if(hasFlag(_0x133bb0,_0x15a037(0x194)))throw CliErrors['validation'](_0x15a037(0x171));}function validateDeleteExecuteInput(_0x933190){const _0x256819=a141_0x5b78f5;if(!hasFlag(_0x933190,_0x256819(0x194))||!_0x933190[_0x256819(0x119)]('plan')[_0x256819(0x149)]())throw CliErrors['flagMissing'](_0x256819(0x194),_0x256819(0x115));const _0xe6c40=['id',_0x256819(0x120),_0x256819(0x116),'expect-parent-id',_0x256819(0x174),_0x256819(0x126)][_0x256819(0x18d)](_0x4f48e6=>hasFlag(_0x933190,_0x4f48e6));if(_0xe6c40[_0x256819(0x112)]>0x0)throw CliErrors[_0x256819(0x14b)](_0x256819(0x143)+_0xe6c40[_0x256819(0x113)](_0x4488f2=>'--'+_0x4488f2)[_0x256819(0x18e)](',\x20')+'.');}async function buildDeletePlan(_0x3dab84){const _0x4fdc42=a141_0x5b78f5,_0x3e487d=validateExactId(_0x3dab84),_0x4af8a9=await fetchMutationSnapshot(_0x3dab84,_0x4fdc42(0x16f),_0x3e487d),_0x134aff=requireMenu(_0x4af8a9,_0x3e487d);assertExpectedState(_0x3dab84,_0x134aff);const _0x2441b6=_0x3dab84['bool'](_0x4fdc42(0x120));let _0x3a34f8;if(_0x2441b6){if(_0x134aff[_0x4fdc42(0x163)]['trim']()['toLowerCase']()!==_0x4fdc42(0x157))throw menuError(_0x4fdc42(0x170),_0x4fdc42(0x15e)+_0x134aff['id']+_0x4fdc42(0x12e)+(_0x134aff[_0x4fdc42(0x163)]||'unknown')+_0x4fdc42(0x12b));_0x3a34f8=collectDeleteTargets(_0x4af8a9,_0x134aff),_0x3a34f8[_0x4fdc42(0x16b)](_0x1dec1d=>assertDeleteSafety(_0x1dec1d,!![]));}else assertDeleteSafety(_0x134aff),_0x3a34f8=[_0x134aff];assertNoSharedPages(_0x4af8a9,_0x3a34f8);const _0x269286=_0x3a34f8[_0x4fdc42(0x113)](_0x3a834b=>_0x3a834b['id']),_0x5d2611=cascadeForTargets(_0x3a34f8),_0x5ac116=_0x5d2611[_0x4fdc42(0x148)]['length']>0x0?[_0x4fdc42(0x137)]:[];return mutationResult({'operation':_0x4fdc42(0x188),'selector':{'id':_0x3e487d,'recursive':_0x2441b6},'before':_0x134aff,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x4fdc42(0x127),'method':_0x4fdc42(0x154),'path':_0x4fdc42(0x12f),'body':{'idList':_0x269286}}],'targets':_0x3a34f8,'deleteOrder':_0x269286,'snapshotHash':_0x4af8a9[_0x4fdc42(0x118)],'cascade':_0x5d2611,'warnings':_0x5ac116});}function assertDeleteSafety(_0x566ca8,_0x577cbe=![]){const _0x171a98=a141_0x5b78f5,_0x3f8ae5=_0x566ca8[_0x171a98(0x163)][_0x171a98(0x149)]()['toLowerCase']()===_0x171a98(0x157);if(_0x566ca8[_0x171a98(0x145)]>0x0&&(!_0x577cbe||!_0x3f8ae5))throw menuError(_0x171a98(0x139),_0x171a98(0x15e)+_0x566ca8['id']+_0x171a98(0x191)+_0x566ca8[_0x171a98(0x145)]+_0x171a98(0x11f),_0x171a98(0x162)+_0x566ca8[_0x171a98(0x15d)]['join'](',\x20'));if(_0x3f8ae5&&_0x566ca8[_0x171a98(0x13a)]!=null)throw menuError('menu_delete_page_bound',_0x171a98(0x11c)+_0x566ca8['id']+_0x171a98(0x14d)+_0x566ca8[_0x171a98(0x13a)]+_0x171a98(0x147),_0x171a98(0x193));if(!_0x3f8ae5)return;if(!_0x566ca8[_0x171a98(0x14c)])throw menuError('menu_folder_resources_invalid','Folder\x20'+_0x566ca8['id']+_0x171a98(0x16c),_0x171a98(0x15a));if(_0x566ca8[_0x171a98(0x158)]['length']>0x0)throw menuError('menu_folder_has_resources','Folder\x20'+_0x566ca8['id']+_0x171a98(0x14f)+_0x566ca8[_0x171a98(0x158)]['length']+_0x171a98(0x190),_0x171a98(0x15f));}function collectDeleteTargets(_0x5da2ac,_0x4dda6c){const _0x370a1b=[],_0x568524=new Set(),_0x357a42=new Set(),_0x5622df=_0x5dbb26=>{const _0x53ac84=a141_0x5028;if(_0x568524[_0x53ac84(0x144)](_0x5dbb26['id']))throw menuError('menu_tree_invalid',_0x53ac84(0x11d)+_0x5dbb26['id']+'.');if(_0x357a42[_0x53ac84(0x144)](_0x5dbb26['id']))return;_0x568524[_0x53ac84(0x117)](_0x5dbb26['id']);for(const _0x15ff42 of _0x5dbb26[_0x53ac84(0x15d)]){const _0x1e9ac9=_0x5da2ac[_0x53ac84(0x195)]['get'](_0x15ff42);if(!_0x1e9ac9)throw menuError(_0x53ac84(0x177),_0x53ac84(0x15e)+_0x5dbb26['id']+_0x53ac84(0x135)+_0x15ff42+'.');_0x5622df(_0x1e9ac9);}_0x568524[_0x53ac84(0x188)](_0x5dbb26['id']),_0x357a42[_0x53ac84(0x117)](_0x5dbb26['id']),_0x370a1b['push'](_0x5dbb26);};return _0x5622df(_0x4dda6c),_0x370a1b;}function a141_0x8db1(){const _0x28ee80=['plan\x20delete','menu_recursive_requires_folder','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','target','path','expect-path','remainingIds','indexOf','menu_tree_invalid','menu_batch_delete_count_mismatch','menu_page_shared','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','toLowerCase','message','size','Post-failure\x20menu\x20readback\x20failed\x20(','boolean','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','stringify','menus','plan-validation','cascade','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','7471195diyfnq','causeCode','delete','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','selector','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','Batch\x20delete\x20request\x20for\x20menu\x20','filter','join','absentIds','\x20resource\x20URL(s).','\x20has\x20','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','plan','byId','batch\x20delete','length','map','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','plan-out','add','hash','str','createdAt','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','Folder\x20','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','3345713pWDgeC','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','recursive','dry-run','unconfirmed','snapshotHash','Recursive\x20menu\x20delete\x20plan\x20root\x20','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','expected-children-count','batch-delete-menu','rabetbase\x20menu\x20list\x20--format\x20json','15017769BzKzSG','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','2228kZcWkn','string','\x20is\x20type\x20\x22','/smartapi/menu/batchDelete','failed','verification','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','menu_verification_failed','Would\x20batch\x20delete\x20','\x20references\x20missing\x20child\x20','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','expiresAt','menu_non_empty','pageId','deleteOrder','123QbOsJh','6pEylfP','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','appCode','10ZSCeXS','43390193dYyDLX',';\x20execution\x20must\x20consume\x20','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','has','childrenCount','Backend\x20reported\x20','\x20and\x20cannot\x20be\x20deleted\x20safely.','pages','trim','1282mpNKyk','validation','resourcesValid','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','push','\x20still\x20references\x20','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','\x20menu(s)\x20under\x20exact\x20id\x20','124132JvZFTW','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','POST','\x20deleted\x20menus;\x20expected\x20','menu','folder','resources','batch-delete','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','menu\x20list','menu_plan_invalid','childrenIds','Menu\x20','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','\x20->\x20menu\x20','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','type','Post-mismatch\x20menu\x20readback\x20failed\x20(','cookie','page\x20','8334856NjKlfG','flagMissing','):\x20','bool','forEach','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','snapshot'];a141_0x8db1=function(){return _0x28ee80;};return a141_0x8db1();}function assertDeleteTargetsComplete(_0x34bf76,_0x2f78e4){const _0x1432d8=a141_0x5b78f5,_0x5efbf0=requireMenu(_0x2f78e4,_0x34bf76[_0x1432d8(0x172)]['id']);if(_0x34bf76[_0x1432d8(0x120)]&&_0x5efbf0[_0x1432d8(0x163)][_0x1432d8(0x149)]()[_0x1432d8(0x17b)]()!==_0x1432d8(0x157))throw menuError(_0x1432d8(0x15c),_0x1432d8(0x124)+_0x5efbf0['id']+'\x20is\x20not\x20a\x20folder.');const _0x28a6a2=_0x34bf76[_0x1432d8(0x120)]?collectDeleteTargets(_0x2f78e4,_0x5efbf0)[_0x1432d8(0x113)](_0x5346f3=>_0x5346f3['id']):[_0x5efbf0['id']];if(JSON['stringify'](_0x34bf76['deleteOrder'])!==JSON[_0x1432d8(0x181)](_0x28a6a2))throw menuError(_0x1432d8(0x15c),_0x1432d8(0x16d),_0x1432d8(0x17a));}function a141_0x5028(_0x15e7be,_0x3d2351){_0x15e7be=_0x15e7be-0x111;const _0x8db137=a141_0x8db1();let _0x50281a=_0x8db137[_0x15e7be];return _0x50281a;}function assertNoSharedPages(_0x4498c9,_0x1d7bc4){const _0x23b747=a141_0x5b78f5,_0x2c73b5=new Set(_0x1d7bc4[_0x23b747(0x113)](_0x1dacc2=>_0x1dacc2['id'])),_0x2e9d8d=new Set(_0x1d7bc4[_0x23b747(0x113)](_0x58c9cd=>_0x58c9cd['pageId'])[_0x23b747(0x18d)](_0x27777f=>_0x27777f!=null));if(_0x2e9d8d[_0x23b747(0x17d)]===0x0)return;const _0x1e0f87=_0x4498c9[_0x23b747(0x182)][_0x23b747(0x18d)](_0x221713=>!_0x2c73b5[_0x23b747(0x144)](_0x221713['id'])&&_0x221713[_0x23b747(0x13a)]!=null&&_0x2e9d8d[_0x23b747(0x144)](_0x221713[_0x23b747(0x13a)]));if(_0x1e0f87[_0x23b747(0x112)]===0x0)return;const _0x21c2b7=_0x1e0f87[_0x23b747(0x113)](_0x3cc05c=>_0x23b747(0x166)+_0x3cc05c[_0x23b747(0x13a)]+_0x23b747(0x160)+_0x3cc05c['id'])[_0x23b747(0x18e)](',\x20');throw menuError(_0x23b747(0x179),_0x23b747(0x180)+_0x21c2b7+'.','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.');}function assertCascadeMatchesPlan(_0x1ee3c2,_0x5130c0){const _0x77456d=a141_0x5b78f5,_0x22fecb=cascadeForTargets(_0x5130c0);if(JSON[_0x77456d(0x181)](_0x1ee3c2[_0x77456d(0x184)])!==JSON[_0x77456d(0x181)](_0x22fecb))throw menuError(_0x77456d(0x15c),_0x77456d(0x150));}function cascadeForTargets(_0x1bbfbc){const _0x4d2091=a141_0x5b78f5,_0x498c9a=_0x1bbfbc[_0x4d2091(0x113)](_0x37af86=>_0x37af86[_0x4d2091(0x13a)])['filter'](_0x2813e0=>_0x2813e0!=null)[_0x4d2091(0x18d)]((_0x46ff35,_0x3b8d38,_0x16a98f)=>_0x16a98f[_0x4d2091(0x176)](_0x46ff35)===_0x3b8d38);return{'pages':_0x498c9a,'pageSchemaAffected':_0x498c9a[_0x4d2091(0x112)]>0x0};}function asMenuError(_0x4acb87){const _0x4dd81b=a141_0x5b78f5;return _0x4acb87 instanceof CliError?_0x4acb87:menuError(_0x4dd81b(0x15c),_0x4acb87 instanceof Error?_0x4acb87[_0x4dd81b(0x17c)]:String(_0x4acb87));}
|
|
1
|
+
const a151_0x2ea400=a151_0x2237;(function(_0x413f84,_0x23569b){const _0x4c6ac3=a151_0x2237,_0x26fa05=_0x413f84();while(!![]){try{const _0x577998=-parseInt(_0x4c6ac3(0x20c))/0x1*(-parseInt(_0x4c6ac3(0x237))/0x2)+parseInt(_0x4c6ac3(0x227))/0x3+-parseInt(_0x4c6ac3(0x23e))/0x4+parseInt(_0x4c6ac3(0x1e2))/0x5*(parseInt(_0x4c6ac3(0x200))/0x6)+-parseInt(_0x4c6ac3(0x23b))/0x7*(parseInt(_0x4c6ac3(0x229))/0x8)+parseInt(_0x4c6ac3(0x232))/0x9*(-parseInt(_0x4c6ac3(0x234))/0xa)+-parseInt(_0x4c6ac3(0x1df))/0xb*(parseInt(_0x4c6ac3(0x1ec))/0xc);if(_0x577998===_0x23569b)break;else _0x26fa05['push'](_0x26fa05['shift']());}catch(_0xe88ea3){_0x26fa05['push'](_0x26fa05['shift']());}}}(a151_0x352b,0x31a18));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a151_0x2ea400(0x214)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a151_0x2ea400(0x1c8)},MENU_DELETE_RECURSIVE_FLAG={'name':'recursive','type':a151_0x2ea400(0x226),'description':a151_0x2ea400(0x230)},MENU_DELETE_PLAN_OUT_FLAG={'name':'plan-out','type':a151_0x2ea400(0x238),'description':a151_0x2ea400(0x23f)},MENU_DELETE_PLAN_FLAG={'name':a151_0x2ea400(0x23a),'type':a151_0x2ea400(0x238),'description':a151_0x2ea400(0x228)};export const menuDelete={'service':a151_0x2ea400(0x1ce),'command':a151_0x2ea400(0x1fe),'description':'Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','risk':a151_0x2ea400(0x204),'structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x24c32b){const _0x1bc4e6=a151_0x2ea400;_0x24c32b['bool'](_0x1bc4e6(0x1ee))?validateDeleteDryRunInput(_0x24c32b):validateDeleteExecuteInput(_0x24c32b),requireExplicitYes(_0x24c32b);},async 'dryRun'(_0x367919){const _0x1b826e=a151_0x2ea400;validateDeleteDryRunInput(_0x367919);const _0x3ccdfe=await buildDeletePlan(_0x367919),_0x375ecc=createMenuDeletePlanFile(_0x367919[_0x1b826e(0x1f6)],_0x3ccdfe),_0x55214f=await writeMenuDeletePlan(_0x367919['str']('plan-out'),_0x375ecc),_0xbe6f32=mutationResult({..._0x3ccdfe,'planFile':{'path':_0x55214f,'createdAt':_0x375ecc[_0x1b826e(0x206)],'expiresAt':_0x375ecc[_0x1b826e(0x1d0)]}});return menuDryRunResult(_0xbe6f32,{'method':_0x1b826e(0x1ff),'url':_0x1b826e(0x214),'body':{'idList':_0xbe6f32[_0x1b826e(0x221)]},'description':_0x1b826e(0x247)+(_0xbe6f32[_0x1b826e(0x221)]?.[_0x1b826e(0x240)]??0x1)+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0xbe6f32['selector']['id']+_0x1b826e(0x1f1)+_0x55214f+'.'});},async 'execute'(_0x82f20a){const _0x256a6b=a151_0x2ea400;requireExplicitYes(_0x82f20a),validateDeleteExecuteInput(_0x82f20a);const _0x81e730=await readMenuDeletePlan(_0x82f20a[_0x256a6b(0x1ca)](_0x256a6b(0x23a))),_0x5cfc32=mutationPlanFromDeleteFile(_0x81e730[_0x256a6b(0x23a)],_0x81e730[_0x256a6b(0x201)]),_0x3ecb43=_0x81e730['plan'][_0x256a6b(0x216)]['id'];try{assertMenuDeletePlanExecutable(_0x81e730[_0x256a6b(0x23a)],_0x82f20a[_0x256a6b(0x1f6)]);}catch(_0x34ea72){throw menuFailure(asMenuError(_0x34ea72),_0x5cfc32,{'stage':_0x256a6b(0x1d1),'failed':{'id':_0x3ecb43}});}let _0x4c5808,_0x3f3ffb;try{_0x4c5808=await fetchMutationSnapshot(_0x82f20a,_0x256a6b(0x218),_0x3ecb43),_0x3f3ffb=assertMenuDeletePlanCurrent(_0x81e730[_0x256a6b(0x23a)],_0x82f20a[_0x256a6b(0x1f6)],_0x4c5808),assertDeleteTargetsComplete(_0x81e730['plan'],_0x4c5808),_0x3f3ffb[_0x256a6b(0x1dc)](_0x4f62e5=>assertDeleteSafety(_0x4f62e5,_0x81e730[_0x256a6b(0x23a)][_0x256a6b(0x1cd)])),assertNoSharedPages(_0x4c5808,_0x3f3ffb),assertCascadeMatchesPlan(_0x5cfc32,_0x3f3ffb);}catch(_0x47740b){throw menuFailure(asMenuError(_0x47740b),_0x5cfc32,{'stage':'pre-write-plan-validation','failed':{'id':_0x3ecb43}});}const _0x2cf089=_0x81e730[_0x256a6b(0x23a)][_0x256a6b(0x221)];let _0x25c090;try{_0x25c090=await batchDeleteMenuEntities(_0x82f20a[_0x256a6b(0x235)],_0x2cf089);}catch(_0xc1fdbc){const _0xd43d7=mapMenuApiError(_0xc1fdbc,_0x256a6b(0x239)),_0x416e83=[_0x256a6b(0x233)];let _0x53e3a8;try{_0x53e3a8=await readDeleteOutcome(_0x82f20a,_0x2cf089);}catch(_0x147a94){const _0x5a3a28=describeMenuErrorCause(_0x147a94,_0x256a6b(0x1f9),_0x3ecb43);_0x416e83[_0x256a6b(0x1ef)]('Post-failure\x20menu\x20readback\x20failed\x20('+_0x5a3a28[_0x256a6b(0x241)]+_0x256a6b(0x1d6)+_0x5a3a28[_0x256a6b(0x1d8)]);throw menuFailure(_0xd43d7,_0x5cfc32,{'stage':_0x256a6b(0x20d),'failed':{'targetIds':_0x2cf089,'targetIdsAbsent':'unconfirmed',..._0x5a3a28},'warnings':_0x416e83,'verification':{'status':_0x256a6b(0x1e4),'lookupCommand':_0x256a6b(0x222),'targetIds':_0x2cf089}});}throw menuFailure(_0xd43d7,_0x5cfc32,{'stage':_0x256a6b(0x20d),'succeeded':_0x53e3a8[_0x256a6b(0x1d4)][_0x256a6b(0x21a)](_0x7555ad=>({'id':_0x7555ad,'deleted':!![]})),'failed':{'targetIds':_0x2cf089,'absentIds':_0x53e3a8['absentIds'],'remainingIds':_0x53e3a8['remainingIds']},'warnings':_0x416e83,'verification':verificationFromOutcome(_0x53e3a8)});}if(_0x25c090!==_0x2cf089[_0x256a6b(0x240)]){const _0x4e348a=menuError(_0x256a6b(0x1ed),_0x256a6b(0x1f0)+_0x25c090+_0x256a6b(0x1cf)+_0x2cf089['length']+'.',_0x256a6b(0x22b)),_0x2c50b9=['The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.'];let _0x136905;try{_0x136905=await readDeleteOutcome(_0x82f20a,_0x2cf089);}catch(_0x2e8f7e){const _0x258eaa=describeMenuErrorCause(_0x2e8f7e,'read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch',_0x3ecb43);_0x2c50b9[_0x256a6b(0x1ef)](_0x256a6b(0x205)+_0x258eaa[_0x256a6b(0x241)]+_0x256a6b(0x1d6)+_0x258eaa[_0x256a6b(0x1d8)]);throw menuFailure(_0x4e348a,_0x5cfc32,{'stage':_0x256a6b(0x20d),'failed':{'targetIds':_0x2cf089,'expectedCount':_0x2cf089[_0x256a6b(0x240)],'reportedDeletedCount':_0x25c090,'targetIdsAbsent':'unconfirmed',..._0x258eaa},'warnings':_0x2c50b9,'verification':{'status':_0x256a6b(0x1e4),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x2cf089}});}throw menuFailure(_0x4e348a,_0x5cfc32,{'stage':_0x256a6b(0x20d),'succeeded':_0x136905[_0x256a6b(0x1d4)][_0x256a6b(0x21a)](_0x9f8483=>({'id':_0x9f8483,'deleted':!![]})),'failed':{'targetIds':_0x2cf089,'expectedCount':_0x2cf089[_0x256a6b(0x240)],'reportedDeletedCount':_0x25c090,'absentIds':_0x136905[_0x256a6b(0x1d4)],'remainingIds':_0x136905['remainingIds']},'warnings':_0x2c50b9,'verification':verificationFromOutcome(_0x136905)});}let _0x274ca3;try{_0x274ca3=await readDeleteOutcome(_0x82f20a,_0x2cf089);}catch(_0x7e8a6c){const _0x3e3aca=describeMenuErrorCause(_0x7e8a6c,_0x256a6b(0x245),_0x3ecb43),_0x535a19=asVerificationError(_0x7e8a6c,'Batch\x20delete\x20request\x20for\x20menu\x20'+_0x3ecb43+_0x256a6b(0x243));throw menuFailure(_0x535a19,_0x5cfc32,{'stage':'verification','succeeded':_0x2cf089['map'](_0x51842b=>({'id':_0x51842b,'deleteRequested':!![]})),'failed':{'id':_0x3ecb43,'targetIds':_0x2cf089,'targetIdsAbsent':'unconfirmed',..._0x3e3aca},'warnings':[_0x256a6b(0x1f8)],'verification':{'status':_0x256a6b(0x1e4),'lookupCommand':_0x256a6b(0x222),'targetIds':_0x2cf089}});}if(_0x274ca3[_0x256a6b(0x1d2)][_0x256a6b(0x240)]>0x0){const _0x7cd510=menuError('menu_verification_failed','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20'+_0x274ca3['remainingIds']['join'](',\x20')+'.',_0x256a6b(0x22b));throw menuFailure(_0x7cd510,_0x5cfc32,{'stage':_0x256a6b(0x207),'succeeded':_0x2cf089[_0x256a6b(0x21a)](_0x2b35cc=>({'id':_0x2b35cc,'deleteRequested':!![]})),'failed':{'id':_0x3ecb43,'targetIds':_0x2cf089,'absentIds':_0x274ca3[_0x256a6b(0x1d4)],'remainingIds':_0x274ca3[_0x256a6b(0x1d2)]},'warnings':[_0x256a6b(0x1cb)],'verification':verificationFromOutcome(_0x274ca3)});}const _0x181101=_0x2cf089[_0x256a6b(0x21a)](_0x29bde3=>({'id':_0x29bde3,'deleted':!![]})),_0x66644=mutationResult({..._0x5cfc32,'dryRun':![],'succeeded':_0x181101,'verification':{'checkedBy':_0x256a6b(0x1fc),'plannedSnapshotHash':_0x5cfc32['snapshotHash'],'finalSnapshotHash':_0x274ca3['snapshot']['hash'],'reportedDeletedCount':_0x25c090,'targetAbsent':!_0x274ca3['snapshot'][_0x256a6b(0x1dd)]['has'](_0x3ecb43),'allTargetsAbsent':!![],'targetIds':_0x2cf089}});return{'ok':!![],'data':_0x66644,'message':_0x256a6b(0x210)+_0x181101[_0x256a6b(0x240)]+_0x256a6b(0x246)+_0x3ecb43+'.'};}};async function readDeleteOutcome(_0x1eeddb,_0x38cd07){const _0x577ef6=a151_0x2ea400,_0x407fec=await fetchMenuSnapshot(_0x1eeddb[_0x577ef6(0x1f6)],_0x1eeddb[_0x577ef6(0x235)]);return{'snapshot':_0x407fec,'absentIds':_0x38cd07[_0x577ef6(0x1d3)](_0x5defae=>!_0x407fec[_0x577ef6(0x1dd)][_0x577ef6(0x21f)](_0x5defae)),'remainingIds':_0x38cd07['filter'](_0x5cb9f0=>_0x407fec[_0x577ef6(0x1dd)]['has'](_0x5cb9f0))};}function a151_0x2237(_0x425844,_0xb63f13){_0x425844=_0x425844-0x1c8;const _0x352b30=a151_0x352b();let _0x223709=_0x352b30[_0x425844];return _0x223709;}function verificationFromOutcome(_0x5dad7c){const _0x2669c8=a151_0x2ea400;return{'checkedBy':_0x2669c8(0x1fc),'absentIds':_0x5dad7c['absentIds'],'remainingIds':_0x5dad7c[_0x2669c8(0x1d2)]};}function validateDeleteDryRunInput(_0x5f728f){const _0x204875=a151_0x2ea400;validateExactId(_0x5f728f);if(!hasFlag(_0x5f728f,_0x204875(0x1f4))||!_0x5f728f[_0x204875(0x1ca)](_0x204875(0x1f4))[_0x204875(0x1eb)]())throw CliErrors[_0x204875(0x1e6)](_0x204875(0x1f4),'--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.');if(hasFlag(_0x5f728f,_0x204875(0x23a)))throw CliErrors['validation'](_0x204875(0x1d7));}function validateDeleteExecuteInput(_0xa859b5){const _0x1a47cb=a151_0x2ea400;if(!hasFlag(_0xa859b5,_0x1a47cb(0x23a))||!_0xa859b5[_0x1a47cb(0x1ca)](_0x1a47cb(0x23a))[_0x1a47cb(0x1eb)]())throw CliErrors[_0x1a47cb(0x1e6)]('plan',_0x1a47cb(0x21d));const _0x4d8285=['id',_0x1a47cb(0x1cd),_0x1a47cb(0x1f4),_0x1a47cb(0x212),_0x1a47cb(0x209),_0x1a47cb(0x1da)][_0x1a47cb(0x1d3)](_0x304f47=>hasFlag(_0xa859b5,_0x304f47));if(_0x4d8285[_0x1a47cb(0x240)]>0x0)throw CliErrors['validation'](_0x1a47cb(0x242)+_0x4d8285[_0x1a47cb(0x21a)](_0x458532=>'--'+_0x458532)['join'](',\x20')+'.');}async function buildDeletePlan(_0x11696c){const _0x2e6ffd=a151_0x2ea400,_0x440767=validateExactId(_0x11696c),_0x4c6c0e=await fetchMutationSnapshot(_0x11696c,_0x2e6ffd(0x215),_0x440767),_0x2e6a06=requireMenu(_0x4c6c0e,_0x440767);assertExpectedState(_0x11696c,_0x2e6a06);const _0x307edf=_0x11696c[_0x2e6ffd(0x22c)](_0x2e6ffd(0x1cd));let _0x2f82d8;if(_0x307edf){if(_0x2e6a06['type'][_0x2e6ffd(0x1eb)]()[_0x2e6ffd(0x21c)]()!==_0x2e6ffd(0x1e9))throw menuError(_0x2e6ffd(0x203),'Menu\x20'+_0x2e6a06['id']+_0x2e6ffd(0x23c)+(_0x2e6a06[_0x2e6ffd(0x1de)]||'unknown')+_0x2e6ffd(0x219));_0x2f82d8=collectDeleteTargets(_0x4c6c0e,_0x2e6a06),_0x2f82d8['forEach'](_0x331f02=>assertDeleteSafety(_0x331f02,!![]));}else assertDeleteSafety(_0x2e6a06),_0x2f82d8=[_0x2e6a06];assertNoSharedPages(_0x4c6c0e,_0x2f82d8);const _0x4f1e35=_0x2f82d8[_0x2e6ffd(0x21a)](_0x4fb401=>_0x4fb401['id']),_0x2d908d=cascadeForTargets(_0x2f82d8),_0x1c27ea=_0x2d908d[_0x2e6ffd(0x22f)][_0x2e6ffd(0x240)]>0x0?['Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.']:[];return mutationResult({'operation':_0x2e6ffd(0x1fe),'selector':{'id':_0x440767,'recursive':_0x307edf},'before':_0x2e6a06,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x2e6ffd(0x22e),'method':_0x2e6ffd(0x1ff),'path':_0x2e6ffd(0x214),'body':{'idList':_0x4f1e35}}],'targets':_0x2f82d8,'deleteOrder':_0x4f1e35,'snapshotHash':_0x4c6c0e[_0x2e6ffd(0x1fb)],'cascade':_0x2d908d,'warnings':_0x1c27ea});}function assertDeleteSafety(_0x578f05,_0xd4bfc6=![]){const _0x1eeb12=a151_0x2ea400,_0x5eba7f=_0x578f05['type']['trim']()['toLowerCase']()===_0x1eeb12(0x1e9);if(_0x578f05[_0x1eeb12(0x225)]>0x0&&(!_0xd4bfc6||!_0x5eba7f))throw menuError(_0x1eeb12(0x1f2),'Menu\x20'+_0x578f05['id']+'\x20has\x20'+_0x578f05[_0x1eeb12(0x225)]+_0x1eeb12(0x1c9),_0x1eeb12(0x22a)+_0x578f05[_0x1eeb12(0x20b)][_0x1eeb12(0x236)](',\x20'));if(_0x5eba7f&&_0x578f05[_0x1eeb12(0x1d9)]!=null)throw menuError('menu_delete_page_bound',_0x1eeb12(0x1fa)+_0x578f05['id']+'\x20is\x20unexpectedly\x20bound\x20to\x20page\x20'+_0x578f05[_0x1eeb12(0x1d9)]+_0x1eeb12(0x1db),_0x1eeb12(0x1cc));if(!_0x5eba7f)return;if(!_0x578f05[_0x1eeb12(0x244)])throw menuError('menu_folder_resources_invalid',_0x1eeb12(0x1fa)+_0x578f05['id']+_0x1eeb12(0x1e1),_0x1eeb12(0x22d));if(_0x578f05[_0x1eeb12(0x1f7)]['length']>0x0)throw menuError(_0x1eeb12(0x20a),_0x1eeb12(0x1fa)+_0x578f05['id']+_0x1eeb12(0x1f5)+_0x578f05[_0x1eeb12(0x1f7)][_0x1eeb12(0x240)]+_0x1eeb12(0x213),_0x1eeb12(0x231));}function a151_0x352b(){const _0x3808be=['bool','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','batch-delete-menu','pages','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','180igVlYu','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','32030smzBzF','cookie','join','123746NmVXJZ','string','batch\x20delete','plan','56819JaPRnO','\x20is\x20type\x20\x22','menus','552848TRtBnf','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','length','causeCode','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','resourcesValid','verify\x20batch\x20delete','\x20menu(s)\x20under\x20exact\x20id\x20','Would\x20batch\x20delete\x20','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','str','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','recursive','menu','\x20deleted\x20menus;\x20expected\x20','expiresAt','plan-validation','remainingIds','filter','absentIds','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','):\x20','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','causeMessage','pageId','expected-children-count','\x20and\x20cannot\x20be\x20deleted\x20safely.','forEach','byId','type','1276869lRhVxJ','Menu\x20','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','1535hEQvRx','cascade','failed','indexOf','flagMissing','\x20->\x20menu\x20','size','folder','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','trim','12APNBfm','menu_batch_delete_count_mismatch','dry-run','push','Backend\x20reported\x20',';\x20execution\x20must\x20consume\x20','menu_non_empty','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','plan-out','\x20still\x20references\x20','appCode','resources','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','Folder\x20','hash','menu\x20list','add','delete','POST','3846aNADmK','path','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','menu_recursive_requires_folder','high-risk-write','Post-mismatch\x20menu\x20readback\x20failed\x20(','createdAt','verification','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','expect-path','menu_folder_has_resources','childrenIds','1PSAxCS','batch-delete','get','menu_plan_invalid','Deleted\x20','stringify','expect-parent-id','\x20resource\x20URL(s).','/smartapi/menu/batchDelete','plan\x20delete','target','page\x20','execute\x20reviewed\x20delete\x20plan','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','map','menu_tree_invalid','toLowerCase','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','menu_page_shared','has','message','deleteOrder','rabetbase\x20menu\x20list\x20--format\x20json','Recursive\x20menu\x20delete\x20plan\x20root\x20','\x20references\x20missing\x20child\x20','childrenCount','boolean','1202904kvtlrx','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','136WQqUuH','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.'];a151_0x352b=function(){return _0x3808be;};return a151_0x352b();}function collectDeleteTargets(_0x3a21d7,_0x4ac5d6){const _0x28fbe1=[],_0x429305=new Set(),_0x8b98fb=new Set(),_0x2645f7=_0x4dc9fe=>{const _0x5850bc=a151_0x2237;if(_0x429305[_0x5850bc(0x21f)](_0x4dc9fe['id']))throw menuError(_0x5850bc(0x21b),_0x5850bc(0x208)+_0x4dc9fe['id']+'.');if(_0x8b98fb[_0x5850bc(0x21f)](_0x4dc9fe['id']))return;_0x429305[_0x5850bc(0x1fd)](_0x4dc9fe['id']);for(const _0x40794b of _0x4dc9fe['childrenIds']){const _0x13d5fb=_0x3a21d7['byId'][_0x5850bc(0x20e)](_0x40794b);if(!_0x13d5fb)throw menuError(_0x5850bc(0x21b),_0x5850bc(0x1e0)+_0x4dc9fe['id']+_0x5850bc(0x224)+_0x40794b+'.');_0x2645f7(_0x13d5fb);}_0x429305[_0x5850bc(0x1fe)](_0x4dc9fe['id']),_0x8b98fb[_0x5850bc(0x1fd)](_0x4dc9fe['id']),_0x28fbe1[_0x5850bc(0x1ef)](_0x4dc9fe);};return _0x2645f7(_0x4ac5d6),_0x28fbe1;}function assertDeleteTargetsComplete(_0x1f8cef,_0x1a0f35){const _0x4dfc7d=a151_0x2ea400,_0x380072=requireMenu(_0x1a0f35,_0x1f8cef[_0x4dfc7d(0x216)]['id']);if(_0x1f8cef[_0x4dfc7d(0x1cd)]&&_0x380072['type']['trim']()[_0x4dfc7d(0x21c)]()!=='folder')throw menuError(_0x4dfc7d(0x20f),_0x4dfc7d(0x223)+_0x380072['id']+'\x20is\x20not\x20a\x20folder.');const _0xe28a4d=_0x1f8cef[_0x4dfc7d(0x1cd)]?collectDeleteTargets(_0x1a0f35,_0x380072)[_0x4dfc7d(0x21a)](_0x34524d=>_0x34524d['id']):[_0x380072['id']];if(JSON[_0x4dfc7d(0x211)](_0x1f8cef[_0x4dfc7d(0x221)])!==JSON[_0x4dfc7d(0x211)](_0xe28a4d))throw menuError(_0x4dfc7d(0x20f),_0x4dfc7d(0x1ea),_0x4dfc7d(0x1f3));}function assertNoSharedPages(_0x19e918,_0x393238){const _0x22fd4d=a151_0x2ea400,_0x5caa08=new Set(_0x393238[_0x22fd4d(0x21a)](_0xb8d181=>_0xb8d181['id'])),_0x8d4b5e=new Set(_0x393238[_0x22fd4d(0x21a)](_0x3e90ec=>_0x3e90ec[_0x22fd4d(0x1d9)])[_0x22fd4d(0x1d3)](_0x34866f=>_0x34866f!=null));if(_0x8d4b5e[_0x22fd4d(0x1e8)]===0x0)return;const _0x58eab5=_0x19e918[_0x22fd4d(0x23d)]['filter'](_0xa76dd9=>!_0x5caa08['has'](_0xa76dd9['id'])&&_0xa76dd9[_0x22fd4d(0x1d9)]!=null&&_0x8d4b5e[_0x22fd4d(0x21f)](_0xa76dd9[_0x22fd4d(0x1d9)]));if(_0x58eab5[_0x22fd4d(0x240)]===0x0)return;const _0x3e730d=_0x58eab5['map'](_0x30a58a=>_0x22fd4d(0x217)+_0x30a58a[_0x22fd4d(0x1d9)]+_0x22fd4d(0x1e7)+_0x30a58a['id'])[_0x22fd4d(0x236)](',\x20');throw menuError(_0x22fd4d(0x21e),_0x22fd4d(0x1d5)+_0x3e730d+'.',_0x22fd4d(0x202));}function assertCascadeMatchesPlan(_0x2705e4,_0x24e88){const _0x8e91c5=a151_0x2ea400,_0x40d839=cascadeForTargets(_0x24e88);if(JSON['stringify'](_0x2705e4[_0x8e91c5(0x1e3)])!==JSON['stringify'](_0x40d839))throw menuError('menu_plan_invalid','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.');}function cascadeForTargets(_0x3a509d){const _0x32734c=a151_0x2ea400,_0x11077c=_0x3a509d[_0x32734c(0x21a)](_0x4a506a=>_0x4a506a[_0x32734c(0x1d9)])['filter'](_0x42a300=>_0x42a300!=null)[_0x32734c(0x1d3)]((_0x126c71,_0x2e5055,_0x449bc3)=>_0x449bc3[_0x32734c(0x1e5)](_0x126c71)===_0x2e5055);return{'pages':_0x11077c,'pageSchemaAffected':_0x11077c[_0x32734c(0x240)]>0x0};}function asMenuError(_0x493586){const _0x27cc6f=a151_0x2ea400;return _0x493586 instanceof CliError?_0x493586:menuError(_0x27cc6f(0x20f),_0x493586 instanceof Error?_0x493586[_0x27cc6f(0x220)]:String(_0x493586));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a142_0x2535c4=a142_0x1bfc;(function(_0x14860f,_0x2e36ee){const _0x1b96cb=a142_0x1bfc,_0x262884=_0x14860f();while(!![]){try{const _0x60c407=-parseInt(_0x1b96cb(0x1a9))/0x1+-parseInt(_0x1b96cb(0x1d4))/0x2+parseInt(_0x1b96cb(0x1f0))/0x3*(-parseInt(_0x1b96cb(0x180))/0x4)+-parseInt(_0x1b96cb(0x1c1))/0x5+parseInt(_0x1b96cb(0x1c5))/0x6*(-parseInt(_0x1b96cb(0x188))/0x7)+parseInt(_0x1b96cb(0x191))/0x8*(parseInt(_0x1b96cb(0x1b1))/0x9)+parseInt(_0x1b96cb(0x194))/0xa*(parseInt(_0x1b96cb(0x1b9))/0xb);if(_0x60c407===_0x2e36ee)break;else _0x262884['push'](_0x262884['shift']());}catch(_0x1c6500){_0x262884['push'](_0x262884['shift']());}}}(a142_0x58f0,0xe6cbc));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a142_0x2535c4(0x1c9),'new-window':a142_0x2535c4(0x181)};export function validateExternalMenuUrl(_0x1915dc){const _0x593413=a142_0x2535c4,_0x4e2e8f=_0x1915dc[_0x593413(0x1e8)]();let _0x1fd2f5;try{_0x1fd2f5=new URL(_0x4e2e8f);}catch{throw menuError(_0x593413(0x1ec),'External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.');}if(_0x1fd2f5[_0x593413(0x19c)]!=='https:')throw menuError(_0x593413(0x1de),_0x593413(0x1b7),_0x593413(0x1b3));if(_0x1fd2f5[_0x593413(0x1ea)]||_0x1fd2f5[_0x593413(0x177)])throw menuError(_0x593413(0x1da),_0x593413(0x1a0),_0x593413(0x1dc));return _0x4e2e8f;}export const menuExternalLinkCreate={'service':'menu','command':a142_0x2535c4(0x17d),'description':'Create\x20an\x20external\x20website\x20link\x20menu','risk':'write','structuredErrors':!![],'flags':[{'name':'label','type':a142_0x2535c4(0x1b6),'required':!![],'description':a142_0x2535c4(0x1eb)},{'name':a142_0x2535c4(0x1cb),'type':'string','required':!![],'enum':[a142_0x2535c4(0x1c7),a142_0x2535c4(0x1df)],'description':a142_0x2535c4(0x1bf)},{'name':a142_0x2535c4(0x186),'type':a142_0x2535c4(0x1b6),'required':!![],'description':a142_0x2535c4(0x1e7)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':'visible','type':'boolean','default':!![],'description':a142_0x2535c4(0x1a2)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5e689f){validateAddInput(_0x5e689f);},async 'dryRun'(_0x517ee){const _0x559f9e=a142_0x2535c4;validateAddInput(_0x517ee);const {plan:_0x7bb29e}=await buildSafeAddPlan(_0x517ee,!![]),_0x554a2a=_0x7bb29e[_0x559f9e(0x1ad)],_0xf5ec12=createBody(_0x554a2a);return menuDryRunResult(_0x7bb29e,{'method':'POST','url':_0x559f9e(0x193),'body':_0xf5ec12,'description':_0x559f9e(0x1af)+JSON[_0x559f9e(0x1e9)](_0x554a2a[_0x559f9e(0x195)])+_0x559f9e(0x19f)+_0x517ee[_0x559f9e(0x1f1)](_0x559f9e(0x1cb))+_0x559f9e(0x1cc)});},async 'execute'(_0x3f3f4e){const _0x42f268=a142_0x2535c4;validateAddInput(_0x3f3f4e);const _0x4e1b7c=await buildSafeAddPlan(_0x3f3f4e,![]),{plan:_0x2a85cf,snapshot:_0x1bc039}=_0x4e1b7c,_0x11ddf2=_0x2a85cf[_0x42f268(0x1ad)],_0x1596d4=buildMenuLookupCommand(_0x3f3f4e[_0x42f268(0x18c)]);await recheckAddSnapshot(_0x3f3f4e,_0x2a85cf);let _0x56d978;try{_0x56d978=await createMenuEntity(_0x3f3f4e['appCode'],_0x3f3f4e[_0x42f268(0x1fb)],createBody(_0x11ddf2));}catch(_0x4fdf53){const _0x4bb6fe=mapMenuApiError(_0x4fdf53,_0x42f268(0x1dd));if(!isMenuResponseLoss(_0x4fdf53)||_0x4bb6fe[_0x42f268(0x1d7)]===_0x42f268(0x1cd))throw externalLinkCreateFailure(_0x4bb6fe,_0x2a85cf,{'stage':_0x42f268(0x1f3),'failed':{},'verification':{'status':_0x42f268(0x1f2),'lookupCommand':_0x1596d4}});return recoverAfterResponseLoss(_0x3f3f4e,_0x4e1b7c,_0x1596d4);}const _0x467de2=Number(_0x56d978?.['id']),_0x38815b=typeof _0x56d978?.[_0x42f268(0x1d6)]===_0x42f268(0x1b6)?_0x56d978[_0x42f268(0x1d6)]:'';if(!Number['isSafeInteger'](_0x467de2)||_0x467de2<=0x0||!_0x38815b[_0x42f268(0x1e8)]()){const _0x2cf770=menuError(_0x42f268(0x1d9),_0x42f268(0x172),_0x42f268(0x190)+_0x1596d4+_0x42f268(0x176));throw externalLinkCreateFailure(_0x2cf770,_0x2a85cf,{'stage':'create-response-validation','succeeded':Number[_0x42f268(0x1b2)](_0x467de2)&&_0x467de2>0x0?[{'id':_0x467de2,'created':!![]}]:[],'failed':{'createdId':Number[_0x42f268(0x1b2)](_0x467de2)?_0x467de2:null,'generatedPathConfirmed':Boolean(_0x38815b[_0x42f268(0x1e8)]())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number['isSafeInteger'](_0x467de2)&&_0x467de2>0x0?{..._0x11ddf2,'id':_0x467de2,'path':_0x38815b}:_0x11ddf2,'verification':{'status':'failed','lookupCommand':_0x1596d4,...Number[_0x42f268(0x1b2)](_0x467de2)&&_0x467de2>0x0?{'targetId':_0x467de2}:{}}});}const _0x220a3e=await readAndVerifyCreatedMenu({'appCode':_0x3f3f4e['appCode'],'cookie':_0x3f3f4e[_0x42f268(0x1fb)],'plan':_0x2a85cf,'afterPlan':_0x11ddf2,'createdId':_0x467de2,'expectedPath':_0x38815b,'lookupCommand':_0x1596d4,'recovered':![]});return creationSuccess(_0x2a85cf,_0x220a3e['snapshot'],_0x220a3e[_0x42f268(0x1d1)],![]);}};function validateAddInput(_0x46f9e0){const _0x369c2b=a142_0x2535c4;if(!_0x46f9e0[_0x369c2b(0x1f1)](_0x369c2b(0x195))['trim']())throw CliErrors[_0x369c2b(0x192)](_0x369c2b(0x195));resolveExternalMenuType(_0x46f9e0),validateExternalMenuUrl(_0x46f9e0['str']('url')),parseParentId(_0x46f9e0,_0x369c2b(0x1e2)),validateSort(_0x46f9e0);}function resolveExternalMenuType(_0x2d74fd){const _0x106665=a142_0x2535c4,_0x272c90=_0x2d74fd['str'](_0x106665(0x1cb))[_0x106665(0x1e8)]();if(!_0x272c90)throw CliErrors[_0x106665(0x192)](_0x106665(0x1cb));const _0x1a2710=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x272c90];if(!_0x1a2710)throw menuError('menu_open_mode_invalid',_0x106665(0x1ce),_0x106665(0x1bd));return _0x1a2710;}async function buildAddPlan(_0x4c97e0,_0x20738b){const _0x5f3e57=a142_0x2535c4,_0x5d2814=await fetchMutationSnapshot(_0x4c97e0,'create\x20external\x20menu'),_0x57c14f=parseParentId(_0x4c97e0,'parent-id')??null;if(_0x57c14f!=null)requireFolder(_0x5d2814,_0x57c14f);const _0x3f7ac2=validateSort(_0x4c97e0),_0x1c487c=_0x3f7ac2??nextSiblingSort(_0x5d2814,_0x57c14f,_0x5f3e57(0x1ed)),_0x145d9f=_0x4c97e0[_0x5f3e57(0x1f1)]('label')[_0x5f3e57(0x1e8)](),_0x2527ae=resolveExternalMenuType(_0x4c97e0),_0x44a941=validateExternalMenuUrl(_0x4c97e0[_0x5f3e57(0x1f1)](_0x5f3e57(0x186))),_0x51d09d=Object[_0x5f3e57(0x185)][_0x5f3e57(0x19a)][_0x5f3e57(0x1d0)](_0x4c97e0[_0x5f3e57(0x1ba)],'visible')?_0x4c97e0[_0x5f3e57(0x175)](_0x5f3e57(0x198)):!![],_0x54f0e8={'id':null,'parentId':_0x57c14f,'label':_0x145d9f,'path':'<platform-generated>','url':_0x44a941,'type':_0x2527ae,'visible':_0x51d09d,'sort':_0x1c487c},_0x2c9651=buildMenuLookupCommand(_0x4c97e0[_0x5f3e57(0x18c)]),_0x41be7e=mutationResult({'operation':_0x5f3e57(0x17e),'selector':{'parentId':_0x57c14f,'type':_0x2527ae,'label':_0x145d9f,'url':_0x44a941},'before':null,'after':_0x54f0e8,'dryRun':_0x20738b,'backend':[{'method':_0x5f3e57(0x1be),'path':_0x5f3e57(0x193)}],'plannedActions':[{'stage':_0x5f3e57(0x1d3),'method':_0x5f3e57(0x1be),'path':_0x5f3e57(0x193),'body':createBody(_0x54f0e8)}],'snapshotHash':_0x5d2814['hash'],'warnings':[_0x5f3e57(0x1f8)],'verification':{'lookupCommand':_0x2c9651}});return{'plan':_0x41be7e,'snapshot':_0x5d2814};}async function buildSafeAddPlan(_0x4e849a,_0xb20a3f){try{return await buildAddPlan(_0x4e849a,_0xb20a3f);}catch(_0x439b01){throw safeMenuAddError(_0x439b01);}}async function recheckAddSnapshot(_0x41606c,_0x1c5c53){const _0x2c8fbf=a142_0x2535c4;try{await recheckMutationSnapshot(_0x41606c,_0x1c5c53,_0x2c8fbf(0x1dd));}catch(_0x44c552){const _0x1c8663=getFailureRecord(_0x44c552);throw externalLinkCreateFailure(_0x44c552,_0x1c5c53,{'stage':_0x2c8fbf(0x1d8),'failed':{..._0x1c8663?.[_0x2c8fbf(0x19e)]?{'expectedSnapshotHash':_0x1c8663[_0x2c8fbf(0x19e)]}:{},..._0x1c8663?.['currentSnapshotHash']?{'currentSnapshotHash':_0x1c8663[_0x2c8fbf(0x1ef)]}:{}}});}}function createBody(_0x184626){const _0x52bb90=a142_0x2535c4;return{'parentId':toApiParentId(_0x184626[_0x52bb90(0x18e)]),'label':String(_0x184626['label']),'type':String(_0x184626['type']),'url':String(_0x184626[_0x52bb90(0x186)]),'visible':Boolean(_0x184626['visible']),'sort':Number(_0x184626[_0x52bb90(0x1cf)]),'extend':{}};}function buildMenuLookupCommand(_0x45ef6f){const _0x2d9a5a=a142_0x2535c4,_0x23e5c7='\x27'+_0x45ef6f[_0x2d9a5a(0x173)](/'/g,_0x2d9a5a(0x1bc))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x23e5c7+_0x2d9a5a(0x1a7);}async function recoverAfterResponseLoss(_0x1bf151,_0x16e172,_0x49fb72){const _0x24aa74=a142_0x2535c4,{plan:_0x1b44f6,snapshot:_0x528e77}=_0x16e172,_0x1e3e3c=_0x1b44f6[_0x24aa74(0x1ad)];let _0x5e1c81;try{_0x5e1c81=await fetchMenuSnapshot(_0x1bf151['appCode'],_0x1bf151[_0x24aa74(0x1fb)]);}catch(_0x273261){throw recoveryRequiredFailure(_0x1b44f6,_0x49fb72,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x3427ca=_0x5e1c81[_0x24aa74(0x1e1)][_0x24aa74(0x199)](_0x1699e6=>_0x1699e6[_0x24aa74(0x18e)]===_0x1e3e3c[_0x24aa74(0x18e)]&&_0x1699e6[_0x24aa74(0x197)]===_0x1e3e3c[_0x24aa74(0x197)]&&_0x1699e6[_0x24aa74(0x195)]===_0x1e3e3c[_0x24aa74(0x195)]&&_0x1699e6[_0x24aa74(0x186)]===_0x1e3e3c[_0x24aa74(0x186)]),_0x5c20b0=_0x3427ca['filter'](_0x2d9fc0=>!_0x528e77['byId']['has'](_0x2d9fc0['id'])),_0x3408fc=_0x3427ca[_0x24aa74(0x199)](_0xb42f4d=>_0x528e77[_0x24aa74(0x1d2)][_0x24aa74(0x1b8)](_0xb42f4d['id']));if(_0x3427ca[_0x24aa74(0x1a5)]!==0x1||_0x5c20b0['length']!==0x1)throw recoveryRequiredFailure(_0x1b44f6,_0x49fb72,{'matchCount':_0x3427ca[_0x24aa74(0x1a5)],'newMatchCount':_0x5c20b0[_0x24aa74(0x1a5)],'preexistingMatchCount':_0x3408fc[_0x24aa74(0x1a5)]});const _0x327670=_0x5c20b0[0x0];try{verifyCreatedFact(_0x327670,_0x327670['id'],_0x1e3e3c,null);}catch(_0x1a2f37){const _0x2dcc68=_0x1a2f37 instanceof Error&&'code'in _0x1a2f37?_0x1a2f37:menuError(_0x24aa74(0x1f9),'Recovered\x20menu\x20'+_0x327670['id']+_0x24aa74(0x1e3),_0x24aa74(0x190)+_0x49fb72+_0x24aa74(0x1e4));throw externalLinkCreateFailure(_0x2dcc68,_0x1b44f6,{'stage':_0x24aa74(0x1a4),'succeeded':[{'id':_0x327670['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x327670['id'],'finalFactsConfirmed':![]},'after':_0x327670,'warnings':['Menu\x20'+_0x327670['id']+_0x24aa74(0x1ca)],'verification':{'status':_0x24aa74(0x1f2),'targetId':_0x327670['id'],'recovered':!![],'lookupCommand':_0x49fb72}});}return creationSuccess(_0x1b44f6,_0x5e1c81,_0x327670,!![]);}function a142_0x1bfc(_0x23240e,_0x240650){_0x23240e=_0x23240e-0x171;const _0x58f02c=a142_0x58f0();let _0x1bfcb8=_0x58f02c[_0x23240e];return _0x1bfcb8;}function recoveryRequiredFailure(_0x3ed740,_0x19f150,_0x10352b){const _0x14962f=a142_0x2535c4,_0x30d315=menuError(_0x14962f(0x1b4),_0x14962f(0x18d),_0x14962f(0x190)+_0x19f150+_0x14962f(0x1a1));return externalLinkCreateFailure(_0x30d315,_0x3ed740,{'stage':'create-recovery','failed':_0x10352b,'warnings':[_0x14962f(0x1c4)],'verification':{'status':_0x14962f(0x1f2),..._0x10352b,'lookupCommand':_0x19f150}});}async function readAndVerifyCreatedMenu(_0x1158b4){const _0x206ea6=a142_0x2535c4;let _0x5a1415;try{_0x5a1415=await fetchMenuSnapshot(_0x1158b4[_0x206ea6(0x18c)],_0x1158b4['cookie']);}catch(_0x421515){const _0xf1e3f2=menuError(_0x206ea6(0x1f9),_0x206ea6(0x1fa)+_0x1158b4[_0x206ea6(0x1e0)]+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x206ea6(0x190)+_0x1158b4[_0x206ea6(0x179)]+_0x206ea6(0x17a));throw externalLinkCreateFailure(_0xf1e3f2,_0x1158b4['plan'],{'stage':'verification','succeeded':[{'id':_0x1158b4[_0x206ea6(0x1e0)],'created':!![]}],'failed':{'id':_0x1158b4[_0x206ea6(0x1e0)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x1158b4[_0x206ea6(0x18b)],'id':_0x1158b4[_0x206ea6(0x1e0)],'path':_0x1158b4[_0x206ea6(0x1d5)]},'warnings':['Menu\x20'+_0x1158b4[_0x206ea6(0x1e0)]+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x206ea6(0x1f2),'targetId':_0x1158b4[_0x206ea6(0x1e0)],'lookupCommand':_0x1158b4[_0x206ea6(0x179)]}});}const _0x699069=_0x5a1415[_0x206ea6(0x1d2)][_0x206ea6(0x1e5)](_0x1158b4[_0x206ea6(0x1e0)]);try{if(!_0x699069)throw menuError(_0x206ea6(0x1f9),_0x206ea6(0x1a8)+_0x1158b4['createdId']+_0x206ea6(0x1ab),_0x206ea6(0x190)+_0x1158b4[_0x206ea6(0x179)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x699069,_0x1158b4[_0x206ea6(0x1e0)],_0x1158b4['afterPlan'],_0x1158b4[_0x206ea6(0x1d5)]);}catch(_0x629a60){const _0x33c984=_0x629a60 instanceof Error&&_0x206ea6(0x1d7)in _0x629a60?_0x629a60:menuError(_0x206ea6(0x1f9),_0x206ea6(0x1a8)+_0x1158b4[_0x206ea6(0x1e0)]+'\x20failed\x20final\x20verification.',_0x206ea6(0x190)+_0x1158b4['lookupCommand']+_0x206ea6(0x17a));throw externalLinkCreateFailure(_0x33c984,_0x1158b4[_0x206ea6(0x17c)],{'stage':_0x206ea6(0x1a4),'succeeded':[{'id':_0x1158b4[_0x206ea6(0x1e0)],'created':!![]}],'failed':{'id':_0x1158b4['createdId'],'finalFactsConfirmed':![]},'after':_0x699069??{..._0x1158b4['afterPlan'],'id':_0x1158b4['createdId'],'path':_0x1158b4['expectedPath']},'warnings':[_0x206ea6(0x1fa)+_0x1158b4[_0x206ea6(0x1e0)]+_0x206ea6(0x17b)],'verification':{'status':_0x206ea6(0x1f2),'targetId':_0x1158b4['createdId'],'recovered':_0x1158b4[_0x206ea6(0x183)],'lookupCommand':_0x1158b4[_0x206ea6(0x179)]}});}return{'snapshot':_0x5a1415,'fact':_0x699069};}function verifyCreatedFact(_0x542c2b,_0x2a508f,_0x4bd7ed,_0x5a6cff){const _0x38a73c=a142_0x2535c4;if(!Number[_0x38a73c(0x1b2)](_0x542c2b['id'])||_0x542c2b['id']<=0x0||_0x542c2b['id']!==_0x2a508f)throw menuError('menu_verification_failed',_0x38a73c(0x1f4),_0x38a73c(0x19b));const _0x5796c7=[[_0x38a73c(0x1ae),_0x542c2b[_0x38a73c(0x18e)],_0x4bd7ed[_0x38a73c(0x18e)]],[_0x38a73c(0x197),_0x542c2b[_0x38a73c(0x197)],_0x4bd7ed[_0x38a73c(0x197)]],[_0x38a73c(0x195),_0x542c2b['label'],_0x4bd7ed['label']],['URL',_0x542c2b[_0x38a73c(0x186)],_0x4bd7ed['url']],['visibility',_0x542c2b[_0x38a73c(0x198)],_0x4bd7ed[_0x38a73c(0x198)]],['sort',_0x542c2b['sort'],_0x4bd7ed['sort']]];for(const [_0x104092,_0x1ce184,_0x1617dc]of _0x5796c7){if(_0x1ce184!==_0x1617dc)throw menuError(_0x38a73c(0x1f9),_0x38a73c(0x1a8)+_0x542c2b['id']+'\x20has\x20an\x20unexpected\x20'+_0x104092+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x542c2b[_0x38a73c(0x1d6)][_0x38a73c(0x1e8)]()||_0x5a6cff!==null&&_0x542c2b['path']!==_0x5a6cff)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x542c2b['id']+_0x38a73c(0x1bb),_0x38a73c(0x178));}function creationSuccess(_0xa3615c,_0x3d0a3e,_0x5e5e84,_0x58d68c){const _0x52121d=a142_0x2535c4,_0x44d9a8=mutationResult({..._0xa3615c,'after':_0x5e5e84,'dryRun':![],'succeeded':[{'id':_0x5e5e84['id'],'created':!![],'recovered':_0x58d68c}],'verification':{'checkedBy':_0x52121d(0x187),'snapshotHash':_0x3d0a3e['hash'],'targetId':_0x5e5e84['id'],'recovered':_0x58d68c,'path':_0x5e5e84[_0x52121d(0x1d6)]}});return{'ok':!![],'message':_0x58d68c?'Recovered\x20created\x20external\x20menu\x20'+_0x5e5e84['id']+'\x20after\x20response\x20loss.':_0x52121d(0x17f)+_0x5e5e84['id']+'.','data':{..._0x44d9a8,'recovered':_0x58d68c}};}function externalLinkCreateFailure(_0x3ecb9f,_0x31c8ac,_0x3bbb79){const _0x6307e2=a142_0x2535c4;return menuFailure(safeMenuAddError(_0x3ecb9f),redactFailurePlan(_0x31c8ac),{..._0x3bbb79,'succeeded':_0x3bbb79[_0x6307e2(0x1aa)]?.[_0x6307e2(0x1c8)](redactFailureRecord),'failed':_0x3bbb79[_0x6307e2(0x1f2)]?redactFailureRecord(_0x3bbb79[_0x6307e2(0x1f2)]):undefined,'verification':_0x3bbb79[_0x6307e2(0x1a4)]?redactFailureRecord(_0x3bbb79[_0x6307e2(0x1a4)]):undefined,'after':_0x3bbb79[_0x6307e2(0x1ad)]===undefined?undefined:redactFailureValue(_0x3bbb79[_0x6307e2(0x1ad)])});}function redactFailurePlan(_0x512a0f){const _0x54d408=a142_0x2535c4;return{..._0x512a0f,'selector':redactFailureRecord(_0x512a0f[_0x54d408(0x1c6)]),'before':redactFailureValue(_0x512a0f[_0x54d408(0x1ee)]),'after':redactFailureValue(_0x512a0f[_0x54d408(0x1ad)]),'plannedActions':_0x512a0f['plannedActions']?.[_0x54d408(0x1c8)](_0x290293=>({..._0x290293,'body':redactFailureRecord(_0x290293[_0x54d408(0x1c3)])})),'succeeded':_0x512a0f[_0x54d408(0x1aa)][_0x54d408(0x1c8)](redactFailureRecord),'failed':_0x512a0f[_0x54d408(0x1f2)][_0x54d408(0x1c8)](redactFailureRecord),'verification':_0x512a0f[_0x54d408(0x1a4)]?redactFailureRecord(_0x512a0f['verification']):undefined};}function redactFailureRecord(_0x1312d5){return redactFailureValue(_0x1312d5);}function redactFailureValue(_0x40237c,_0x355c75=''){const _0x1f8ec0=a142_0x2535c4,_0xd31f19=_0x355c75[_0x1f8ec0(0x1c2)]()[_0x1f8ec0(0x173)](/[^a-z0-9]/g,'');if([_0x1f8ec0(0x1db),_0x1f8ec0(0x196),_0x1f8ec0(0x1a6),_0x1f8ec0(0x182)][_0x1f8ec0(0x1ac)](_0xd31f19))return _0x1f8ec0(0x1c0);if(Array[_0x1f8ec0(0x184)](_0x40237c))return _0x40237c[_0x1f8ec0(0x1c8)](_0x5ddaee=>redactFailureValue(_0x5ddaee));if(_0x40237c&&typeof _0x40237c===_0x1f8ec0(0x1f7))return Object[_0x1f8ec0(0x189)](Object[_0x1f8ec0(0x1b5)](_0x40237c)['map'](([_0x580dc8,_0x3d9b15])=>[_0x580dc8,redactFailureValue(_0x3d9b15,_0x580dc8)]));return _0x40237c;}function a142_0x58f0(){const _0x1df3e2=['\x20--format\x20compress','Created\x20menu\x20','575449SMbMiF','succeeded','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','includes','after','parent','Would\x20create\x20external\x20website\x20link\x20menu\x20','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','928440QaIHQA','isSafeInteger','Provide\x20an\x20HTTPS\x20URL.','menu_create_recovery_required','entries','string','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','has','42959191vYGIOb','rawFlags','\x20has\x20an\x20unexpected\x20generated\x20path.','\x27\x5c\x27\x27','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','POST','How\x20to\x20open\x20the\x20external\x20website','<redacted>','7292855zbentJ','toLowerCase','body','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','6ugGLRP','selector','embedded','map','iframe','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','open-mode','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','menu_permission_denied','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','sort','call','fact','byId','create-menu','159618gQIbju','expectedPath','path','code','pre-write-recheck','menu_create_response_invalid','menu_url_credentials_forbidden','cause','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','create\x20external\x20menu','menu_url_https_required','new-window','createdId','menus','parent-id','\x20could\x20not\x20be\x20verified.','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','get','menu_mutation_failed','External\x20HTTPS\x20URL','trim','stringify','username','Menu\x20label','menu_url_invalid','menu','before','currentSnapshotHash','987909RtdRhs','str','failed','create','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','External\x20menu\x20creation\x20failed.','object','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','menu_verification_failed','Menu\x20','cookie','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','menu_not_found','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','replace','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','bool','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','password','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','lookupCommand','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','plan','external-link-create','add','Created\x20external\x20menu\x20','20lHcXXF','link','rawerror','recovered','isArray','prototype','url','menu\x20list','3785439QblJIM','fromEntries','data','afterPlan','appCode','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','parentId','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','Run\x20','104Zmozkw','flagMissing','/smartapi/menu/create','10awuGJT','label','causemessage','type','visible','filter','hasOwnProperty','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','protocol','menu_sort_invalid','expectedSnapshotHash','\x20with\x20','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','Whether\x20the\x20menu\x20is\x20visible','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','verification','length','readbackerror'];a142_0x58f0=function(){return _0x1df3e2;};return a142_0x58f0();}function safeMenuAddError(_0x1d8678){const _0x1b9c71=a142_0x2535c4,_0x2f3a80=_0x1d8678 instanceof CliError?_0x1d8678[_0x1b9c71(0x1d7)]:_0x1b9c71(0x1e6);switch(_0x2f3a80){case'menu_state_drift':return menuError(_0x2f3a80,'Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.',_0x1b9c71(0x1a3));case'menu_permission_denied':return menuError(_0x2f3a80,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x1b9c71(0x1d9):return menuError(_0x2f3a80,_0x1b9c71(0x174),_0x1b9c71(0x1fc));case _0x1b9c71(0x1f9):return menuError(_0x2f3a80,_0x1b9c71(0x18f),_0x1b9c71(0x1fc));case _0x1b9c71(0x1b4):return menuError(_0x2f3a80,_0x1b9c71(0x1b0),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x1b9c71(0x1e6):case _0x1b9c71(0x171):case'menu_parent_not_folder':case _0x1b9c71(0x19d):case'menu_sort_overflow':return menuError(_0x2f3a80,_0x1b9c71(0x1f6),_0x1b9c71(0x1f5));default:return menuError('menu_mutation_failed',_0x1b9c71(0x1f6),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x44de95){const _0x3bbc1b=a142_0x2535c4;if(!(_0x44de95 instanceof Error)||!('data'in _0x44de95))return undefined;const _0x8d2ac4=_0x44de95[_0x3bbc1b(0x18a)];if(!_0x8d2ac4||typeof _0x8d2ac4!==_0x3bbc1b(0x1f7))return undefined;const _0x5c1396=_0x8d2ac4[_0x3bbc1b(0x1f2)];if(!Array['isArray'](_0x5c1396)||!_0x5c1396[0x0]||typeof _0x5c1396[0x0]!=='object')return undefined;return _0x5c1396[0x0];}
|
|
1
|
+
const a152_0x4db5c6=a152_0x4e8d;(function(_0x4fa526,_0x4d7fd2){const _0x32bf4e=a152_0x4e8d,_0x9551ce=_0x4fa526();while(!![]){try{const _0x427a55=parseInt(_0x32bf4e(0x180))/0x1*(parseInt(_0x32bf4e(0x19d))/0x2)+-parseInt(_0x32bf4e(0x19a))/0x3*(-parseInt(_0x32bf4e(0x140))/0x4)+parseInt(_0x32bf4e(0x144))/0x5*(parseInt(_0x32bf4e(0x18e))/0x6)+-parseInt(_0x32bf4e(0x192))/0x7*(parseInt(_0x32bf4e(0x1a5))/0x8)+-parseInt(_0x32bf4e(0x176))/0x9*(parseInt(_0x32bf4e(0x167))/0xa)+parseInt(_0x32bf4e(0x1b8))/0xb+-parseInt(_0x32bf4e(0x168))/0xc;if(_0x427a55===_0x4d7fd2)break;else _0x9551ce['push'](_0x9551ce['shift']());}catch(_0x1cca0e){_0x9551ce['push'](_0x9551ce['shift']());}}}(a152_0x2699,0xc59ed));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a152_0x4db5c6(0x16c),'new-window':a152_0x4db5c6(0x18c)};export function validateExternalMenuUrl(_0x16d4db){const _0x3945b9=a152_0x4db5c6,_0x341ac8=_0x16d4db['trim']();let _0x18dc2e;try{_0x18dc2e=new URL(_0x341ac8);}catch{throw menuError(_0x3945b9(0x166),_0x3945b9(0x150),_0x3945b9(0x1b5));}if(_0x18dc2e[_0x3945b9(0x1c2)]!==_0x3945b9(0x161))throw menuError(_0x3945b9(0x1b4),_0x3945b9(0x188),_0x3945b9(0x139));if(_0x18dc2e[_0x3945b9(0x1bd)]||_0x18dc2e[_0x3945b9(0x169)])throw menuError('menu_url_credentials_forbidden',_0x3945b9(0x13a),_0x3945b9(0x145));return _0x341ac8;}export const menuExternalLinkCreate={'service':'menu','command':a152_0x4db5c6(0x19e),'description':'Create\x20an\x20external\x20website\x20link\x20menu','risk':a152_0x4db5c6(0x1bc),'structuredErrors':!![],'flags':[{'name':a152_0x4db5c6(0x13b),'type':a152_0x4db5c6(0x177),'required':!![],'description':a152_0x4db5c6(0x187)},{'name':a152_0x4db5c6(0x13f),'type':a152_0x4db5c6(0x177),'required':!![],'enum':['embedded','new-window'],'description':a152_0x4db5c6(0x1aa)},{'name':'url','type':a152_0x4db5c6(0x177),'required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':'visible','type':a152_0x4db5c6(0x14a),'default':!![],'description':a152_0x4db5c6(0x194)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x43ffa3){validateAddInput(_0x43ffa3);},async 'dryRun'(_0x50af04){const _0x516649=a152_0x4db5c6;validateAddInput(_0x50af04);const {plan:_0x5aca26}=await buildSafeAddPlan(_0x50af04,!![]),_0x5aa18e=_0x5aca26['after'],_0x3a2cb9=createBody(_0x5aa18e);return menuDryRunResult(_0x5aca26,{'method':_0x516649(0x14f),'url':_0x516649(0x1a1),'body':_0x3a2cb9,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON[_0x516649(0x149)](_0x5aa18e[_0x516649(0x13b)])+_0x516649(0x16b)+_0x50af04[_0x516649(0x185)](_0x516649(0x13f))+_0x516649(0x143)});},async 'execute'(_0x5a5ff0){const _0x97717=a152_0x4db5c6;validateAddInput(_0x5a5ff0);const _0x4bd476=await buildSafeAddPlan(_0x5a5ff0,![]),{plan:_0x4e108c,snapshot:_0x32039f}=_0x4bd476,_0x2eb155=_0x4e108c[_0x97717(0x17c)],_0x3ec6e7=buildMenuLookupCommand(_0x5a5ff0[_0x97717(0x13d)]);await recheckAddSnapshot(_0x5a5ff0,_0x4e108c);let _0x5f5553;try{_0x5f5553=await createMenuEntity(_0x5a5ff0[_0x97717(0x13d)],_0x5a5ff0[_0x97717(0x170)],createBody(_0x2eb155));}catch(_0x5aeaad){const _0x1d2059=mapMenuApiError(_0x5aeaad,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x5aeaad)||_0x1d2059['code']===_0x97717(0x186))throw externalLinkCreateFailure(_0x1d2059,_0x4e108c,{'stage':'create','failed':{},'verification':{'status':_0x97717(0x190),'lookupCommand':_0x3ec6e7}});return recoverAfterResponseLoss(_0x5a5ff0,_0x4bd476,_0x3ec6e7);}const _0x343444=Number(_0x5f5553?.['id']),_0xa36460=typeof _0x5f5553?.['path']===_0x97717(0x177)?_0x5f5553[_0x97717(0x196)]:'';if(!Number[_0x97717(0x1c4)](_0x343444)||_0x343444<=0x0||!_0xa36460[_0x97717(0x1a8)]()){const _0x142ca7=menuError(_0x97717(0x1b2),_0x97717(0x132),_0x97717(0x162)+_0x3ec6e7+_0x97717(0x1a9));throw externalLinkCreateFailure(_0x142ca7,_0x4e108c,{'stage':_0x97717(0x152),'succeeded':Number[_0x97717(0x1c4)](_0x343444)&&_0x343444>0x0?[{'id':_0x343444,'created':!![]}]:[],'failed':{'createdId':Number[_0x97717(0x1c4)](_0x343444)?_0x343444:null,'generatedPathConfirmed':Boolean(_0xa36460[_0x97717(0x1a8)]())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number['isSafeInteger'](_0x343444)&&_0x343444>0x0?{..._0x2eb155,'id':_0x343444,'path':_0xa36460}:_0x2eb155,'verification':{'status':_0x97717(0x190),'lookupCommand':_0x3ec6e7,...Number['isSafeInteger'](_0x343444)&&_0x343444>0x0?{'targetId':_0x343444}:{}}});}const _0x49a471=await readAndVerifyCreatedMenu({'appCode':_0x5a5ff0[_0x97717(0x13d)],'cookie':_0x5a5ff0[_0x97717(0x170)],'plan':_0x4e108c,'afterPlan':_0x2eb155,'createdId':_0x343444,'expectedPath':_0xa36460,'lookupCommand':_0x3ec6e7,'recovered':![]});return creationSuccess(_0x4e108c,_0x49a471[_0x97717(0x175)],_0x49a471[_0x97717(0x141)],![]);}};function validateAddInput(_0x3c8f00){const _0x2c754e=a152_0x4db5c6;if(!_0x3c8f00['str'](_0x2c754e(0x13b))['trim']())throw CliErrors[_0x2c754e(0x1b3)](_0x2c754e(0x13b));resolveExternalMenuType(_0x3c8f00),validateExternalMenuUrl(_0x3c8f00[_0x2c754e(0x185)](_0x2c754e(0x163))),parseParentId(_0x3c8f00,_0x2c754e(0x1b7)),validateSort(_0x3c8f00);}function a152_0x2699(){const _0x279930=['Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','URL','create-recovery','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','parentId','\x20has\x20an\x20unexpected\x20generated\x20path.','Provide\x20an\x20HTTPS\x20URL.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','label','before','appCode','byId','open-mode','16036BzWAoZ','fact','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','921755FvGCsP','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','data','Created\x20external\x20menu\x20','stringify','boolean','External\x20menu\x20creation\x20failed.','bool','createdId','sort','POST','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','create\x20external\x20menu','create-response-validation','menu_sort_overflow','recovered','rawerror','menu_not_found','pre-write-recheck','call','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','\x20after\x20response\x20loss.','get','menu\x20list','visible','succeeded','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','readbackerror','https:','Run\x20','url','Menu\x20','Recovered\x20menu\x20','menu_url_invalid','320430eelWtI','5963472aymQPm','password','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','\x20with\x20','iframe','parent','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','\x20failed\x20final\x20verification.','cookie','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','entries','afterPlan','map','snapshot','297WGJrAR','string','hasOwnProperty','menu_state_drift','\x20--format\x20compress','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','after','isArray','\x20has\x20an\x20unexpected\x20','menu_mutation_failed','3619NJWyhC','menu_verification_failed','replace','lookupCommand','selector','str','menu_permission_denied','Menu\x20label','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','has','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','menu','link','filter','6twhTKd','\x27\x5c\x27\x27','failed','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','77TdNpcK','verification','Whether\x20the\x20menu\x20is\x20visible','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','path','causemessage','type','length','951dVFUjV','fromEntries','menus','338HhlBxm','external-link-create','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','rawFlags','/smartapi/menu/create','menu_create_recovery_required','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','550608MSoaVo','object','prototype','trim','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','How\x20to\x20open\x20the\x20external\x20website','menu_open_mode_invalid','menu_parent_not_folder','Created\x20menu\x20','menu_sort_invalid','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','toLowerCase','body','menu_create_response_invalid','flagMissing','menu_url_https_required','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','expectedSnapshotHash','parent-id','11595089xaMuTF','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','cause','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','write','username','<platform-generated>','\x20could\x20not\x20be\x20verified.','code','expectedPath','protocol','includes','isSafeInteger','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','Recovered\x20created\x20external\x20menu\x20','add','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.'];a152_0x2699=function(){return _0x279930;};return a152_0x2699();}function resolveExternalMenuType(_0x5bf613){const _0x13f58b=a152_0x4db5c6,_0x42c8e2=_0x5bf613[_0x13f58b(0x185)](_0x13f58b(0x13f))[_0x13f58b(0x1a8)]();if(!_0x42c8e2)throw CliErrors[_0x13f58b(0x1b3)](_0x13f58b(0x13f));const _0x29c687=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x42c8e2];if(!_0x29c687)throw menuError(_0x13f58b(0x1ab),_0x13f58b(0x19f),_0x13f58b(0x17b));return _0x29c687;}async function buildAddPlan(_0x5b63e2,_0x335fd1){const _0x196a19=a152_0x4db5c6,_0x5821e4=await fetchMutationSnapshot(_0x5b63e2,'create\x20external\x20menu'),_0x363228=parseParentId(_0x5b63e2,'parent-id')??null;if(_0x363228!=null)requireFolder(_0x5821e4,_0x363228);const _0x177d4e=validateSort(_0x5b63e2),_0x436017=_0x177d4e??nextSiblingSort(_0x5821e4,_0x363228,_0x196a19(0x18b)),_0x2c6da2=_0x5b63e2[_0x196a19(0x185)](_0x196a19(0x13b))[_0x196a19(0x1a8)](),_0x464102=resolveExternalMenuType(_0x5b63e2),_0x545275=validateExternalMenuUrl(_0x5b63e2[_0x196a19(0x185)](_0x196a19(0x163))),_0x2867ad=Object[_0x196a19(0x1a7)][_0x196a19(0x178)][_0x196a19(0x158)](_0x5b63e2[_0x196a19(0x1a0)],_0x196a19(0x15d))?_0x5b63e2[_0x196a19(0x14c)](_0x196a19(0x15d)):!![],_0x1b347c={'id':null,'parentId':_0x363228,'label':_0x2c6da2,'path':_0x196a19(0x1be),'url':_0x545275,'type':_0x464102,'visible':_0x2867ad,'sort':_0x436017},_0x3e4d93=buildMenuLookupCommand(_0x5b63e2[_0x196a19(0x13d)]),_0x4a9a9f=mutationResult({'operation':_0x196a19(0x131),'selector':{'parentId':_0x363228,'type':_0x464102,'label':_0x2c6da2,'url':_0x545275},'before':null,'after':_0x1b347c,'dryRun':_0x335fd1,'backend':[{'method':'POST','path':_0x196a19(0x1a1)}],'plannedActions':[{'stage':'create-menu','method':'POST','path':_0x196a19(0x1a1),'body':createBody(_0x1b347c)}],'snapshotHash':_0x5821e4['hash'],'warnings':[_0x196a19(0x191)],'verification':{'lookupCommand':_0x3e4d93}});return{'plan':_0x4a9a9f,'snapshot':_0x5821e4};}async function buildSafeAddPlan(_0x1a1e15,_0x586c63){try{return await buildAddPlan(_0x1a1e15,_0x586c63);}catch(_0x186321){throw safeMenuAddError(_0x186321);}}async function recheckAddSnapshot(_0x5e4215,_0x287be7){const _0x8a4268=a152_0x4db5c6;try{await recheckMutationSnapshot(_0x5e4215,_0x287be7,_0x8a4268(0x151));}catch(_0x128167){const _0x57be80=getFailureRecord(_0x128167);throw externalLinkCreateFailure(_0x128167,_0x287be7,{'stage':_0x8a4268(0x157),'failed':{..._0x57be80?.[_0x8a4268(0x1b6)]?{'expectedSnapshotHash':_0x57be80[_0x8a4268(0x1b6)]}:{},..._0x57be80?.['currentSnapshotHash']?{'currentSnapshotHash':_0x57be80['currentSnapshotHash']}:{}}});}}function createBody(_0x7a77dc){const _0x27fd60=a152_0x4db5c6;return{'parentId':toApiParentId(_0x7a77dc[_0x27fd60(0x137)]),'label':String(_0x7a77dc[_0x27fd60(0x13b)]),'type':String(_0x7a77dc[_0x27fd60(0x198)]),'url':String(_0x7a77dc[_0x27fd60(0x163)]),'visible':Boolean(_0x7a77dc[_0x27fd60(0x15d)]),'sort':Number(_0x7a77dc[_0x27fd60(0x14e)]),'extend':{}};}function buildMenuLookupCommand(_0x36e6ad){const _0x4f4a6c=a152_0x4db5c6,_0x56e057='\x27'+_0x36e6ad[_0x4f4a6c(0x182)](/'/g,_0x4f4a6c(0x18f))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x56e057+_0x4f4a6c(0x17a);}async function recoverAfterResponseLoss(_0x51a276,_0x46fb4c,_0x593bd5){const _0x1c9712=a152_0x4db5c6,{plan:_0x1f08c7,snapshot:_0x589876}=_0x46fb4c,_0x529ece=_0x1f08c7[_0x1c9712(0x17c)];let _0x5c9b66;try{_0x5c9b66=await fetchMenuSnapshot(_0x51a276[_0x1c9712(0x13d)],_0x51a276[_0x1c9712(0x170)]);}catch(_0x339d39){throw recoveryRequiredFailure(_0x1f08c7,_0x593bd5,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x396e13=_0x5c9b66[_0x1c9712(0x19c)][_0x1c9712(0x18d)](_0x4742b7=>_0x4742b7[_0x1c9712(0x137)]===_0x529ece[_0x1c9712(0x137)]&&_0x4742b7[_0x1c9712(0x198)]===_0x529ece[_0x1c9712(0x198)]&&_0x4742b7['label']===_0x529ece[_0x1c9712(0x13b)]&&_0x4742b7[_0x1c9712(0x163)]===_0x529ece[_0x1c9712(0x163)]),_0x3dc5ff=_0x396e13[_0x1c9712(0x18d)](_0x3f6478=>!_0x589876[_0x1c9712(0x13e)][_0x1c9712(0x189)](_0x3f6478['id'])),_0x5a1986=_0x396e13[_0x1c9712(0x18d)](_0x47df05=>_0x589876['byId'][_0x1c9712(0x189)](_0x47df05['id']));if(_0x396e13[_0x1c9712(0x199)]!==0x1||_0x3dc5ff[_0x1c9712(0x199)]!==0x1)throw recoveryRequiredFailure(_0x1f08c7,_0x593bd5,{'matchCount':_0x396e13[_0x1c9712(0x199)],'newMatchCount':_0x3dc5ff[_0x1c9712(0x199)],'preexistingMatchCount':_0x5a1986[_0x1c9712(0x199)]});const _0x4b50c0=_0x3dc5ff[0x0];try{verifyCreatedFact(_0x4b50c0,_0x4b50c0['id'],_0x529ece,null);}catch(_0x45311b){const _0x4d39ba=_0x45311b instanceof Error&&_0x1c9712(0x1c0)in _0x45311b?_0x45311b:menuError(_0x1c9712(0x181),_0x1c9712(0x165)+_0x4b50c0['id']+_0x1c9712(0x1bf),_0x1c9712(0x162)+_0x593bd5+'\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x4d39ba,_0x1f08c7,{'stage':_0x1c9712(0x193),'succeeded':[{'id':_0x4b50c0['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x4b50c0['id'],'finalFactsConfirmed':![]},'after':_0x4b50c0,'warnings':['Menu\x20'+_0x4b50c0['id']+_0x1c9712(0x1b9)],'verification':{'status':_0x1c9712(0x190),'targetId':_0x4b50c0['id'],'recovered':!![],'lookupCommand':_0x593bd5}});}return creationSuccess(_0x1f08c7,_0x5c9b66,_0x4b50c0,!![]);}function recoveryRequiredFailure(_0x218c0e,_0x5dd269,_0xe4c737){const _0x655bdd=a152_0x4db5c6,_0x5ac08a=menuError(_0x655bdd(0x1a2),_0x655bdd(0x136),'Run\x20'+_0x5dd269+_0x655bdd(0x171));return externalLinkCreateFailure(_0x5ac08a,_0x218c0e,{'stage':_0x655bdd(0x135),'failed':_0xe4c737,'warnings':[_0x655bdd(0x1a4)],'verification':{'status':_0x655bdd(0x190),..._0xe4c737,'lookupCommand':_0x5dd269}});}function a152_0x4e8d(_0x25b4f6,_0x266e60){_0x25b4f6=_0x25b4f6-0x12e;const _0x2699a2=a152_0x2699();let _0x4e8d33=_0x2699a2[_0x25b4f6];return _0x4e8d33;}async function readAndVerifyCreatedMenu(_0x23fd8c){const _0x53e3fd=a152_0x4db5c6;let _0x5d8382;try{_0x5d8382=await fetchMenuSnapshot(_0x23fd8c['appCode'],_0x23fd8c[_0x53e3fd(0x170)]);}catch(_0x254ee3){const _0x1f9f33=menuError(_0x53e3fd(0x181),_0x53e3fd(0x164)+_0x23fd8c[_0x53e3fd(0x14d)]+_0x53e3fd(0x18a),_0x53e3fd(0x162)+_0x23fd8c[_0x53e3fd(0x183)]+_0x53e3fd(0x146));throw externalLinkCreateFailure(_0x1f9f33,_0x23fd8c['plan'],{'stage':_0x53e3fd(0x193),'succeeded':[{'id':_0x23fd8c[_0x53e3fd(0x14d)],'created':!![]}],'failed':{'id':_0x23fd8c[_0x53e3fd(0x14d)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x23fd8c[_0x53e3fd(0x173)],'id':_0x23fd8c[_0x53e3fd(0x14d)],'path':_0x23fd8c[_0x53e3fd(0x1c1)]},'warnings':[_0x53e3fd(0x164)+_0x23fd8c[_0x53e3fd(0x14d)]+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x53e3fd(0x190),'targetId':_0x23fd8c[_0x53e3fd(0x14d)],'lookupCommand':_0x23fd8c['lookupCommand']}});}const _0x4dc8c2=_0x5d8382[_0x53e3fd(0x13e)][_0x53e3fd(0x15b)](_0x23fd8c[_0x53e3fd(0x14d)]);try{if(!_0x4dc8c2)throw menuError(_0x53e3fd(0x181),'Created\x20menu\x20'+_0x23fd8c[_0x53e3fd(0x14d)]+_0x53e3fd(0x12f),'Run\x20'+_0x23fd8c[_0x53e3fd(0x183)]+_0x53e3fd(0x146));verifyCreatedFact(_0x4dc8c2,_0x23fd8c[_0x53e3fd(0x14d)],_0x23fd8c[_0x53e3fd(0x173)],_0x23fd8c[_0x53e3fd(0x1c1)]);}catch(_0x14312d){const _0x312b5f=_0x14312d instanceof Error&&'code'in _0x14312d?_0x14312d:menuError(_0x53e3fd(0x181),_0x53e3fd(0x1ad)+_0x23fd8c[_0x53e3fd(0x14d)]+_0x53e3fd(0x16f),_0x53e3fd(0x162)+_0x23fd8c[_0x53e3fd(0x183)]+_0x53e3fd(0x146));throw externalLinkCreateFailure(_0x312b5f,_0x23fd8c['plan'],{'stage':_0x53e3fd(0x193),'succeeded':[{'id':_0x23fd8c[_0x53e3fd(0x14d)],'created':!![]}],'failed':{'id':_0x23fd8c[_0x53e3fd(0x14d)],'finalFactsConfirmed':![]},'after':_0x4dc8c2??{..._0x23fd8c[_0x53e3fd(0x173)],'id':_0x23fd8c['createdId'],'path':_0x23fd8c[_0x53e3fd(0x1c1)]},'warnings':['Menu\x20'+_0x23fd8c[_0x53e3fd(0x14d)]+_0x53e3fd(0x1bb)],'verification':{'status':_0x53e3fd(0x190),'targetId':_0x23fd8c[_0x53e3fd(0x14d)],'recovered':_0x23fd8c[_0x53e3fd(0x154)],'lookupCommand':_0x23fd8c[_0x53e3fd(0x183)]}});}return{'snapshot':_0x5d8382,'fact':_0x4dc8c2};}function verifyCreatedFact(_0x5a27c8,_0x27ba22,_0x26314b,_0x46e805){const _0x3d53cb=a152_0x4db5c6;if(!Number[_0x3d53cb(0x1c4)](_0x5a27c8['id'])||_0x5a27c8['id']<=0x0||_0x5a27c8['id']!==_0x27ba22)throw menuError('menu_verification_failed','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.',_0x3d53cb(0x15f));const _0x558bc5=[[_0x3d53cb(0x16d),_0x5a27c8[_0x3d53cb(0x137)],_0x26314b[_0x3d53cb(0x137)]],[_0x3d53cb(0x198),_0x5a27c8[_0x3d53cb(0x198)],_0x26314b[_0x3d53cb(0x198)]],[_0x3d53cb(0x13b),_0x5a27c8[_0x3d53cb(0x13b)],_0x26314b[_0x3d53cb(0x13b)]],[_0x3d53cb(0x134),_0x5a27c8[_0x3d53cb(0x163)],_0x26314b['url']],['visibility',_0x5a27c8[_0x3d53cb(0x15d)],_0x26314b[_0x3d53cb(0x15d)]],['sort',_0x5a27c8['sort'],_0x26314b['sort']]];for(const [_0x1ec47e,_0xcc5789,_0x2e81d1]of _0x558bc5){if(_0xcc5789!==_0x2e81d1)throw menuError('menu_verification_failed',_0x3d53cb(0x1ad)+_0x5a27c8['id']+_0x3d53cb(0x17e)+_0x1ec47e+'.',_0x3d53cb(0x195));}if(!_0x5a27c8[_0x3d53cb(0x196)]['trim']()||_0x46e805!==null&&_0x5a27c8[_0x3d53cb(0x196)]!==_0x46e805)throw menuError('menu_verification_failed',_0x3d53cb(0x1ad)+_0x5a27c8['id']+_0x3d53cb(0x138),_0x3d53cb(0x195));}function creationSuccess(_0x22b880,_0x445bb0,_0x3d7ea5,_0x3a7e4a){const _0x526f4d=a152_0x4db5c6,_0x2b4b3a=mutationResult({..._0x22b880,'after':_0x3d7ea5,'dryRun':![],'succeeded':[{'id':_0x3d7ea5['id'],'created':!![],'recovered':_0x3a7e4a}],'verification':{'checkedBy':_0x526f4d(0x15c),'snapshotHash':_0x445bb0['hash'],'targetId':_0x3d7ea5['id'],'recovered':_0x3a7e4a,'path':_0x3d7ea5['path']}});return{'ok':!![],'message':_0x3a7e4a?_0x526f4d(0x130)+_0x3d7ea5['id']+_0x526f4d(0x15a):_0x526f4d(0x148)+_0x3d7ea5['id']+'.','data':{..._0x2b4b3a,'recovered':_0x3a7e4a}};}function externalLinkCreateFailure(_0x358b8a,_0x27c29c,_0x539eda){const _0x34ba26=a152_0x4db5c6;return menuFailure(safeMenuAddError(_0x358b8a),redactFailurePlan(_0x27c29c),{..._0x539eda,'succeeded':_0x539eda[_0x34ba26(0x15e)]?.[_0x34ba26(0x174)](redactFailureRecord),'failed':_0x539eda[_0x34ba26(0x190)]?redactFailureRecord(_0x539eda[_0x34ba26(0x190)]):undefined,'verification':_0x539eda[_0x34ba26(0x193)]?redactFailureRecord(_0x539eda[_0x34ba26(0x193)]):undefined,'after':_0x539eda[_0x34ba26(0x17c)]===undefined?undefined:redactFailureValue(_0x539eda['after'])});}function redactFailurePlan(_0x1ffbe1){const _0x6cd32b=a152_0x4db5c6;return{..._0x1ffbe1,'selector':redactFailureRecord(_0x1ffbe1[_0x6cd32b(0x184)]),'before':redactFailureValue(_0x1ffbe1[_0x6cd32b(0x13c)]),'after':redactFailureValue(_0x1ffbe1['after']),'plannedActions':_0x1ffbe1['plannedActions']?.[_0x6cd32b(0x174)](_0x11ab2a=>({..._0x11ab2a,'body':redactFailureRecord(_0x11ab2a[_0x6cd32b(0x1b1)])})),'succeeded':_0x1ffbe1[_0x6cd32b(0x15e)]['map'](redactFailureRecord),'failed':_0x1ffbe1[_0x6cd32b(0x190)][_0x6cd32b(0x174)](redactFailureRecord),'verification':_0x1ffbe1[_0x6cd32b(0x193)]?redactFailureRecord(_0x1ffbe1[_0x6cd32b(0x193)]):undefined};}function redactFailureRecord(_0xe54496){return redactFailureValue(_0xe54496);}function redactFailureValue(_0x48970f,_0x53329a=''){const _0x3ed861=a152_0x4db5c6,_0x4e077c=_0x53329a[_0x3ed861(0x1b0)]()['replace'](/[^a-z0-9]/g,'');if([_0x3ed861(0x1ba),_0x3ed861(0x197),_0x3ed861(0x160),_0x3ed861(0x155)][_0x3ed861(0x1c3)](_0x4e077c))return'<redacted>';if(Array['isArray'](_0x48970f))return _0x48970f[_0x3ed861(0x174)](_0x3afa01=>redactFailureValue(_0x3afa01));if(_0x48970f&&typeof _0x48970f===_0x3ed861(0x1a6))return Object[_0x3ed861(0x19b)](Object[_0x3ed861(0x172)](_0x48970f)[_0x3ed861(0x174)](([_0x2223ba,_0x335c98])=>[_0x2223ba,redactFailureValue(_0x335c98,_0x2223ba)]));return _0x48970f;}function safeMenuAddError(_0x5591cc){const _0x4e5482=a152_0x4db5c6,_0x5c53d4=_0x5591cc instanceof CliError?_0x5591cc[_0x4e5482(0x1c0)]:_0x4e5482(0x17f);switch(_0x5c53d4){case _0x4e5482(0x179):return menuError(_0x5c53d4,'Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.',_0x4e5482(0x1af));case'menu_permission_denied':return menuError(_0x5c53d4,_0x4e5482(0x1a3),_0x4e5482(0x16a));case _0x4e5482(0x1b2):return menuError(_0x5c53d4,_0x4e5482(0x16e),_0x4e5482(0x12e));case _0x4e5482(0x181):return menuError(_0x5c53d4,_0x4e5482(0x159),_0x4e5482(0x12e));case _0x4e5482(0x1a2):return menuError(_0x5c53d4,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.',_0x4e5482(0x133));case _0x4e5482(0x17f):case _0x4e5482(0x156):case _0x4e5482(0x1ac):case _0x4e5482(0x1ae):case _0x4e5482(0x153):return menuError(_0x5c53d4,_0x4e5482(0x14b),_0x4e5482(0x142));default:return menuError(_0x4e5482(0x17f),_0x4e5482(0x14b),_0x4e5482(0x142));}}function getFailureRecord(_0x5744a9){const _0x668c48=a152_0x4db5c6;if(!(_0x5744a9 instanceof Error)||!(_0x668c48(0x147)in _0x5744a9))return undefined;const _0x5f5830=_0x5744a9[_0x668c48(0x147)];if(!_0x5f5830||typeof _0x5f5830!=='object')return undefined;const _0x46e543=_0x5f5830[_0x668c48(0x190)];if(!Array[_0x668c48(0x17d)](_0x46e543)||!_0x46e543[0x0]||typeof _0x46e543[0x0]!==_0x668c48(0x1a6))return undefined;return _0x46e543[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a143_0x5d6bd6=a143_0x2e59;(function(_0x2f5b01,_0x4c23af){const _0x5498fb=a143_0x2e59,_0x37dab6=_0x2f5b01();while(!![]){try{const _0x6a20a8=parseInt(_0x5498fb(0x145))/0x1+parseInt(_0x5498fb(0x12b))/0x2+-parseInt(_0x5498fb(0x131))/0x3+parseInt(_0x5498fb(0x110))/0x4*(parseInt(_0x5498fb(0x111))/0x5)+parseInt(_0x5498fb(0x148))/0x6*(-parseInt(_0x5498fb(0x105))/0x7)+parseInt(_0x5498fb(0x12e))/0x8+-parseInt(_0x5498fb(0x10e))/0x9*(parseInt(_0x5498fb(0x13f))/0xa);if(_0x6a20a8===_0x4c23af)break;else _0x37dab6['push'](_0x37dab6['shift']());}catch(_0x46ff6e){_0x37dab6['push'](_0x37dab6['shift']());}}}(a143_0x13a2,0x49b6d));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a143_0x5d6bd6(0x151)}];function a143_0x2e59(_0x5ea6b3,_0x39392a){_0x5ea6b3=_0x5ea6b3-0xff;const _0x13a2a1=a143_0x13a2();let _0x2e5906=_0x13a2a1[_0x5ea6b3];return _0x2e5906;}export const menuExternalLinkUpdate={'service':a143_0x5d6bd6(0x11f),'command':a143_0x5d6bd6(0x12a),'description':a143_0x5d6bd6(0x112),'risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a143_0x5d6bd6(0x152),'type':a143_0x5d6bd6(0x14a),'required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a143_0x5d6bd6(0x137),'type':a143_0x5d6bd6(0x14a),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1baa4e){validateInput(_0x1baa4e);},async 'dryRun'(_0x4f2d7a){const _0x374db8=a143_0x5d6bd6;validateInput(_0x4f2d7a);const _0x7c8f4=await buildPlan(_0x4f2d7a,!![]);return menuDryRunResult(_0x7c8f4[_0x374db8(0x14e)],{'method':_0x374db8(0x11a),'url':'/smartapi/menu/update','body':_0x7c8f4[_0x374db8(0x117)],'description':'Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20'+_0x7c8f4[_0x374db8(0x117)]['id']+'.'});},async 'execute'(_0x29fc22){const _0x29a05b=a143_0x5d6bd6;validateInput(_0x29fc22);const _0x2c379b=await buildPlan(_0x29fc22,![]),{plan:_0x38458f,body:_0x260ee4,before:_0x363ee8,noChanges:_0x396b8d}=_0x2c379b,_0x209e2b=_0x260ee4['id'];if(_0x396b8d)return updateSuccess(_0x38458f,_0x2c379b[_0x29a05b(0x133)],_0x363ee8,!![],![]);await recheckMutationSnapshot(_0x29fc22,_0x38458f,_0x29a05b(0x123),_0x209e2b);try{await updateMenuEntity(_0x29fc22['appCode'],_0x29fc22['cookie'],{'id':_0x260ee4['id'],'url':_0x260ee4['url']});}catch(_0x2937c0){const _0x3473d2=mapMenuApiError(_0x2937c0,_0x29a05b(0x123),_0x209e2b);if(isMenuResponseLoss(_0x2937c0)&&_0x3473d2[_0x29a05b(0x107)]!==_0x29a05b(0x10b))return recoverAfterResponseLoss(_0x29fc22,_0x2c379b);throw menuFailure(_0x3473d2,_0x38458f,{'stage':'update','failed':{'id':_0x209e2b},'warnings':[_0x29a05b(0x12f)],'verification':{'status':_0x29a05b(0x140),'targetId':_0x209e2b,'lookupCommand':buildLookupCommand(_0x29fc22[_0x29a05b(0x119)])}});}let _0x57c2c4,_0x572d70;try{_0x57c2c4=await fetchMenuSnapshot(_0x29fc22['appCode'],_0x29fc22[_0x29a05b(0x14b)]),_0x572d70=requireMenu(_0x57c2c4,_0x209e2b),verifyUpdatedFact(_0x363ee8,_0x572d70,_0x260ee4[_0x29a05b(0x152)]);}catch(_0x25659b){const _0x50a8ee=describeMenuErrorCause(_0x25659b,'verify\x20external\x20menu\x20URL\x20update',_0x209e2b),_0x5a3d25=asVerificationError(_0x25659b,_0x29a05b(0x120)+_0x209e2b+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x5a3d25,_0x38458f,{'stage':_0x29a05b(0x10c),'succeeded':[{'id':_0x209e2b,'updateRequested':!![]}],'failed':{'id':_0x209e2b,'requestedStateConfirmed':![],..._0x50a8ee},'warnings':[_0x29a05b(0x12c)],'verification':{'status':_0x29a05b(0x140),'targetId':_0x209e2b,'lookupCommand':buildLookupCommand(_0x29fc22[_0x29a05b(0x119)])}});}return updateSuccess(_0x38458f,_0x57c2c4,_0x572d70,![],![]);}};function validateInput(_0x445452){const _0x4d19c7=a143_0x5d6bd6;validateExactId(_0x445452),requiredUrl(_0x445452,_0x4d19c7(0x152)),requiredExpectedUrl(_0x445452),parseParentId(_0x445452,_0x4d19c7(0x118),{'required':!![]});}function requiredUrl(_0x407cbc,_0x127085){const _0x4bc514=a143_0x5d6bd6;if(!hasFlag(_0x407cbc,_0x127085)||!_0x407cbc[_0x4bc514(0x121)](_0x127085)['trim']())throw CliErrors[_0x4bc514(0x122)](_0x127085);return validateExternalMenuUrl(_0x407cbc[_0x4bc514(0x121)](_0x127085));}function requiredExpectedUrl(_0x181a65){const _0x23f4eb=a143_0x5d6bd6;if(!hasFlag(_0x181a65,_0x23f4eb(0x137))||!_0x181a65[_0x23f4eb(0x121)](_0x23f4eb(0x137))['trim']())throw CliErrors['flagMissing']('expect-url');return _0x181a65[_0x23f4eb(0x121)](_0x23f4eb(0x137))[_0x23f4eb(0x114)]();}function a143_0x13a2(){const _0x4326a2=['sort','parentId','byId','\x27\x5c\x27\x27','200693PTfpeR','\x20direct\x20child\x20menu(s).','rabetbase\x20menu\x20list\x20--appcode\x20','30xwRMMo','Response\x20was\x20lost\x20and\x20menu\x20','string','cookie','\x20already\x20matches\x20the\x20requested\x20URL.','iframe','plan','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','\x20has\x20','/smartapi/menu/update','url','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','readbackFailed','menu_external_link_path_missing','\x20could\x20not\x20be\x20verified\x20safely','menu_update_recovery_required','path','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','265069YzxrLL','replace','code','menu_external_link_type_required','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','menu_permission_denied','verification','\x20URL\x20update\x20did\x20not\x20take\x20effect.','36RmZPPS','update-external-link-url','2170244Lrfjgv','5QGSqBn','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','Run\x20','trim','\x22,\x20not\x20iframe\x20or\x20link.','after','body','expect-parent-id','appCode','POST','visible','\x20has\x20an\x20empty\x20platform\x20path.','requestedUrlObserved','Updated\x20external\x20URL\x20for\x20menu\x20','menu','Update\x20request\x20for\x20menu\x20','str','flagMissing','update\x20external\x20menu\x20URL','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','type','\x20changed\x20during\x20the\x20URL-only\x20update.','\x20--format\x20compress','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','\x20is\x20type\x20\x22','external-link-update','172582vxjnhY','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','4616584HgbfaN','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','unknown','223998yRECLZ','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','snapshot','menu_state_drift',',\x20current\x20','hash','expect-url','\x20parent\x20changed:\x20expected\x20','link','update-recovery','Menu\x20','label','childrenCount','menu_external_link_not_leaf','2101710kRJYmD','failed'];a143_0x13a2=function(){return _0x4326a2;};return a143_0x13a2();}async function buildPlan(_0x549c59,_0x5c5f78){const _0x34f8b3=a143_0x5d6bd6,_0x53261b=validateExactId(_0x549c59),_0x31d49a=requiredUrl(_0x549c59,_0x34f8b3(0x152)),_0x5e436e=requiredExpectedUrl(_0x549c59),_0x33edb0=parseParentId(_0x549c59,_0x34f8b3(0x118),{'required':!![]}),_0x387c62=await fetchMutationSnapshot(_0x549c59,_0x34f8b3(0x123),_0x53261b),_0x1013f0=requireMenu(_0x387c62,_0x53261b);assertExternalLinkLeaf(_0x1013f0);if(_0x1013f0[_0x34f8b3(0x142)]!==_0x33edb0)throw menuError(_0x34f8b3(0x134),_0x34f8b3(0x13b)+_0x53261b+_0x34f8b3(0x138)+formatParent(_0x33edb0)+_0x34f8b3(0x135)+formatParent(_0x1013f0[_0x34f8b3(0x142)])+'.',_0x34f8b3(0x153));const _0x464474=_0x1013f0['url']===_0x31d49a;if(!_0x464474&&_0x1013f0[_0x34f8b3(0x152)]!==_0x5e436e)throw menuError(_0x34f8b3(0x134),'Menu\x20'+_0x53261b+_0x34f8b3(0x104),_0x34f8b3(0x124));const _0x232df5={'id':_0x53261b,'appCode':_0x549c59[_0x34f8b3(0x119)],'url':_0x31d49a},_0x36a50d={..._0x1013f0,'url':_0x31d49a};return{'body':_0x232df5,'before':_0x1013f0,'noChanges':_0x464474,'snapshot':_0x387c62,'plan':mutationResult({'operation':_0x34f8b3(0x12a),'selector':{'id':_0x53261b},'before':_0x1013f0,'after':_0x36a50d,'dryRun':_0x5c5f78,'backend':[...BACKEND],'plannedActions':_0x464474?[]:[{'stage':_0x34f8b3(0x10f),'method':'POST','path':_0x34f8b3(0x151),'body':_0x232df5}],'snapshotHash':_0x387c62['hash'],'warnings':_0x464474?[_0x34f8b3(0x12d)]:[]})};}function assertExternalLinkLeaf(_0x46dfad){const _0x702e6d=a143_0x5d6bd6;if(_0x46dfad[_0x702e6d(0x125)]!==_0x702e6d(0x14d)&&_0x46dfad[_0x702e6d(0x125)]!==_0x702e6d(0x139))throw menuError(_0x702e6d(0x108),_0x702e6d(0x13b)+_0x46dfad['id']+_0x702e6d(0x129)+(_0x46dfad[_0x702e6d(0x125)]||_0x702e6d(0x130))+_0x702e6d(0x115),_0x702e6d(0x10a));if(_0x46dfad[_0x702e6d(0x13d)]!==0x0)throw menuError(_0x702e6d(0x13e),_0x702e6d(0x13b)+_0x46dfad['id']+_0x702e6d(0x150)+_0x46dfad[_0x702e6d(0x13d)]+_0x702e6d(0x146),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x46dfad['path'][_0x702e6d(0x114)]())throw menuError(_0x702e6d(0x100),_0x702e6d(0x13b)+_0x46dfad['id']+_0x702e6d(0x11c),_0x702e6d(0x14f));}function verifyUpdatedFact(_0x1912ea,_0x19e243,_0x3dbab1){const _0xa4b217=a143_0x5d6bd6;assertExternalLinkLeaf(_0x19e243);const _0x422077=[['id',_0x19e243['id'],_0x1912ea['id']],['label',_0x19e243[_0xa4b217(0x13c)],_0x1912ea['label']],[_0xa4b217(0x125),_0x19e243[_0xa4b217(0x125)],_0x1912ea['type']],[_0xa4b217(0x103),_0x19e243[_0xa4b217(0x103)],_0x1912ea[_0xa4b217(0x103)]],['parentId',_0x19e243['parentId'],_0x1912ea['parentId']],[_0xa4b217(0x141),_0x19e243[_0xa4b217(0x141)],_0x1912ea[_0xa4b217(0x141)]],[_0xa4b217(0x11b),_0x19e243[_0xa4b217(0x11b)],_0x1912ea['visible']]];for(const [_0x5b9af5,_0x4c5162,_0x24b230]of _0x422077){assertVerified(_0x4c5162===_0x24b230,_0xa4b217(0x13b)+_0x1912ea['id']+'\x20'+_0x5b9af5+_0xa4b217(0x126));}assertVerified(_0x19e243[_0xa4b217(0x152)]===_0x3dbab1,_0xa4b217(0x13b)+_0x1912ea['id']+_0xa4b217(0x10d));}function updateSuccess(_0x221d09,_0x1ef6bb,_0x483df0,_0x2b26fe,_0xa880fb){const _0x52aad0=a143_0x5d6bd6,_0x59d05e=_0x483df0['id'],_0x10201e=mutationResult({..._0x221d09,'after':_0x483df0,'dryRun':![],'succeeded':[{'id':_0x59d05e,'updated':!_0x2b26fe,'skipped':_0x2b26fe,'recovered':_0xa880fb}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x1ef6bb[_0x52aad0(0x136)],'targetId':_0x59d05e,'matchesRequestedState':!![],'recovered':_0xa880fb}});return{'ok':!![],'message':_0xa880fb?_0x52aad0(0x128)+_0x59d05e+'.':_0x2b26fe?_0x52aad0(0x13b)+_0x59d05e+_0x52aad0(0x14c):_0x52aad0(0x11e)+_0x59d05e+'.','data':{..._0x10201e,'recovered':_0xa880fb}};}async function recoverAfterResponseLoss(_0x5a46cf,_0x2556ec){const _0x43e3ad=a143_0x5d6bd6,{plan:_0x157597,before:_0x40cadf,body:_0x27990a}=_0x2556ec;let _0x124ca6;try{_0x124ca6=await fetchMenuSnapshot(_0x5a46cf[_0x43e3ad(0x119)],_0x5a46cf['cookie']);}catch{throw recoveryRequired(_0x157597,_0x5a46cf[_0x43e3ad(0x119)],{'id':_0x27990a['id'],'readbackFailed':!![]});}const _0x120371=_0x124ca6[_0x43e3ad(0x143)]['get'](_0x27990a['id']);if(!_0x120371||_0x120371[_0x43e3ad(0x152)]!==_0x27990a['url'])throw recoveryRequired(_0x157597,_0x5a46cf['appCode'],{'id':_0x27990a['id'],'requestedUrlObserved':![],'after':_0x120371??null});try{verifyUpdatedFact(_0x40cadf,_0x120371,_0x27990a['url']);}catch(_0x2abd3d){const _0x72d0a5=asVerificationError(_0x2abd3d,_0x43e3ad(0x149)+_0x27990a['id']+_0x43e3ad(0x101));throw menuFailure(_0x72d0a5,_0x157597,{'stage':_0x43e3ad(0x13a),'succeeded':[{'id':_0x27990a['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x27990a['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x120371,'warnings':[_0x43e3ad(0x132)],'verification':{'status':_0x43e3ad(0x140),'targetId':_0x27990a['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5a46cf[_0x43e3ad(0x119)])}});}return updateSuccess(_0x157597,_0x124ca6,_0x120371,![],!![]);}function recoveryRequired(_0x2a93b5,_0x570a91,_0x547f8b){const _0x5c88f2=a143_0x5d6bd6,_0x1478f4=menuError(_0x5c88f2(0x102),'The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0x5c88f2(0x113)+buildLookupCommand(_0x570a91)+_0x5c88f2(0x109));return menuFailure(_0x1478f4,_0x2a93b5,{'stage':_0x5c88f2(0x13a),'failed':{'id':_0x547f8b['id'],..._0x547f8b[_0x5c88f2(0x11d)]===undefined?{}:{'requestedUrlObserved':_0x547f8b[_0x5c88f2(0x11d)]},..._0x547f8b[_0x5c88f2(0xff)]?{'readbackFailed':!![]}:{}},'after':_0x547f8b[_0x5c88f2(0x116)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x5c88f2(0x140),'targetId':_0x547f8b['id'],..._0x547f8b[_0x5c88f2(0x11d)]===undefined?{}:{'requestedUrlObserved':_0x547f8b[_0x5c88f2(0x11d)]},..._0x547f8b[_0x5c88f2(0xff)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x570a91)}});}function buildLookupCommand(_0xf52ecc){const _0x1efd90=a143_0x5d6bd6,_0xe42951='\x27'+_0xf52ecc[_0x1efd90(0x106)](/'/g,_0x1efd90(0x144))+'\x27';return _0x1efd90(0x147)+_0xe42951+_0x1efd90(0x127);}
|
|
1
|
+
const a153_0x73ecfa=a153_0x4d43;function a153_0x4d43(_0x38c7d5,_0x3caa78){_0x38c7d5=_0x38c7d5-0x79;const _0x356b1a=a153_0x356b();let _0x4d43c2=_0x356b1a[_0x38c7d5];return _0x4d43c2;}(function(_0x3cfc58,_0x2ce832){const _0x40dc2d=a153_0x4d43,_0x283786=_0x3cfc58();while(!![]){try{const _0x17b619=parseInt(_0x40dc2d(0xb6))/0x1*(-parseInt(_0x40dc2d(0xab))/0x2)+-parseInt(_0x40dc2d(0xa2))/0x3+parseInt(_0x40dc2d(0x83))/0x4+-parseInt(_0x40dc2d(0x90))/0x5*(parseInt(_0x40dc2d(0xbb))/0x6)+-parseInt(_0x40dc2d(0x8c))/0x7+-parseInt(_0x40dc2d(0xb0))/0x8+parseInt(_0x40dc2d(0x82))/0x9;if(_0x17b619===_0x2ce832)break;else _0x283786['push'](_0x283786['shift']());}catch(_0x16e2e4){_0x283786['push'](_0x283786['shift']());}}}(a153_0x356b,0x83ac5));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a153_0x73ecfa(0xb3),'path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':'menu','command':a153_0x73ecfa(0x7d),'description':a153_0x73ecfa(0x7e),'risk':a153_0x73ecfa(0xc0),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a153_0x73ecfa(0xba),'type':a153_0x73ecfa(0xa5),'required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a153_0x73ecfa(0x86),'type':a153_0x73ecfa(0xa5),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4a2262){validateInput(_0x4a2262);},async 'dryRun'(_0x56a7c7){const _0x64435d=a153_0x73ecfa;validateInput(_0x56a7c7);const _0x5a2cb5=await buildPlan(_0x56a7c7,!![]);return menuDryRunResult(_0x5a2cb5[_0x64435d(0x9a)],{'method':_0x64435d(0xb3),'url':_0x64435d(0xae),'body':_0x5a2cb5[_0x64435d(0xa3)],'description':_0x64435d(0xc2)+_0x5a2cb5[_0x64435d(0xa3)]['id']+'.'});},async 'execute'(_0x5a7f5b){const _0x3c1458=a153_0x73ecfa;validateInput(_0x5a7f5b);const _0x430b62=await buildPlan(_0x5a7f5b,![]),{plan:_0x1d8797,body:_0x4b3894,before:_0x355b9e,noChanges:_0x40c3c5}=_0x430b62,_0xf92dc7=_0x4b3894['id'];if(_0x40c3c5)return updateSuccess(_0x1d8797,_0x430b62[_0x3c1458(0xa6)],_0x355b9e,!![],![]);await recheckMutationSnapshot(_0x5a7f5b,_0x1d8797,'update\x20external\x20menu\x20URL',_0xf92dc7);try{await updateMenuEntity(_0x5a7f5b[_0x3c1458(0x8b)],_0x5a7f5b[_0x3c1458(0x8d)],{'id':_0x4b3894['id'],'url':_0x4b3894[_0x3c1458(0xba)]});}catch(_0x369f00){const _0x2ab1b7=mapMenuApiError(_0x369f00,'update\x20external\x20menu\x20URL',_0xf92dc7);if(isMenuResponseLoss(_0x369f00)&&_0x2ab1b7[_0x3c1458(0x92)]!==_0x3c1458(0x9f))return recoverAfterResponseLoss(_0x5a7f5b,_0x430b62);throw menuFailure(_0x2ab1b7,_0x1d8797,{'stage':_0x3c1458(0x8a),'failed':{'id':_0xf92dc7},'warnings':[_0x3c1458(0x94)],'verification':{'status':_0x3c1458(0x88),'targetId':_0xf92dc7,'lookupCommand':buildLookupCommand(_0x5a7f5b[_0x3c1458(0x8b)])}});}let _0x502c9b,_0x8e11f7;try{_0x502c9b=await fetchMenuSnapshot(_0x5a7f5b['appCode'],_0x5a7f5b['cookie']),_0x8e11f7=requireMenu(_0x502c9b,_0xf92dc7),verifyUpdatedFact(_0x355b9e,_0x8e11f7,_0x4b3894[_0x3c1458(0xba)]);}catch(_0x1a4771){const _0x5201db=describeMenuErrorCause(_0x1a4771,'verify\x20external\x20menu\x20URL\x20update',_0xf92dc7),_0xdaf336=asVerificationError(_0x1a4771,_0x3c1458(0x9e)+_0xf92dc7+_0x3c1458(0x93));throw menuFailure(_0xdaf336,_0x1d8797,{'stage':'verification','succeeded':[{'id':_0xf92dc7,'updateRequested':!![]}],'failed':{'id':_0xf92dc7,'requestedStateConfirmed':![],..._0x5201db},'warnings':[_0x3c1458(0x99)],'verification':{'status':_0x3c1458(0x88),'targetId':_0xf92dc7,'lookupCommand':buildLookupCommand(_0x5a7f5b['appCode'])}});}return updateSuccess(_0x1d8797,_0x502c9b,_0x8e11f7,![],![]);}};function validateInput(_0x2d3393){const _0x2ae1c4=a153_0x73ecfa;validateExactId(_0x2d3393),requiredUrl(_0x2d3393,'url'),requiredExpectedUrl(_0x2d3393),parseParentId(_0x2d3393,_0x2ae1c4(0xa4),{'required':!![]});}function requiredUrl(_0x23c3fe,_0xcbb89b){const _0x455bfe=a153_0x73ecfa;if(!hasFlag(_0x23c3fe,_0xcbb89b)||!_0x23c3fe['str'](_0xcbb89b)[_0x455bfe(0x9d)]())throw CliErrors['flagMissing'](_0xcbb89b);return validateExternalMenuUrl(_0x23c3fe[_0x455bfe(0x95)](_0xcbb89b));}function requiredExpectedUrl(_0x419c43){const _0x73a22a=a153_0x73ecfa;if(!hasFlag(_0x419c43,_0x73a22a(0x86))||!_0x419c43['str'](_0x73a22a(0x86))[_0x73a22a(0x9d)]())throw CliErrors['flagMissing'](_0x73a22a(0x86));return _0x419c43['str']('expect-url')[_0x73a22a(0x9d)]();}async function buildPlan(_0x3743d1,_0x189c0c){const _0x5949ea=a153_0x73ecfa,_0x3e448f=validateExactId(_0x3743d1),_0x48730a=requiredUrl(_0x3743d1,_0x5949ea(0xba)),_0x525910=requiredExpectedUrl(_0x3743d1),_0x5d6754=parseParentId(_0x3743d1,_0x5949ea(0xa4),{'required':!![]}),_0xcdc22=await fetchMutationSnapshot(_0x3743d1,_0x5949ea(0xac),_0x3e448f),_0x19bd77=requireMenu(_0xcdc22,_0x3e448f);assertExternalLinkLeaf(_0x19bd77);if(_0x19bd77[_0x5949ea(0xad)]!==_0x5d6754)throw menuError(_0x5949ea(0x81),'Menu\x20'+_0x3e448f+_0x5949ea(0xb2)+formatParent(_0x5d6754)+',\x20current\x20'+formatParent(_0x19bd77[_0x5949ea(0xad)])+'.',_0x5949ea(0x89));const _0xf3d0b1=_0x19bd77['url']===_0x48730a;if(!_0xf3d0b1&&_0x19bd77[_0x5949ea(0xba)]!==_0x525910)throw menuError(_0x5949ea(0x81),'Menu\x20'+_0x3e448f+_0x5949ea(0x9b),_0x5949ea(0x9c));const _0x39c8d6={'id':_0x3e448f,'appCode':_0x3743d1['appCode'],'url':_0x48730a},_0x566664={..._0x19bd77,'url':_0x48730a};return{'body':_0x39c8d6,'before':_0x19bd77,'noChanges':_0xf3d0b1,'snapshot':_0xcdc22,'plan':mutationResult({'operation':_0x5949ea(0x7d),'selector':{'id':_0x3e448f},'before':_0x19bd77,'after':_0x566664,'dryRun':_0x189c0c,'backend':[...BACKEND],'plannedActions':_0xf3d0b1?[]:[{'stage':_0x5949ea(0x7c),'method':_0x5949ea(0xb3),'path':_0x5949ea(0xae),'body':_0x39c8d6}],'snapshotHash':_0xcdc22[_0x5949ea(0x84)],'warnings':_0xf3d0b1?[_0x5949ea(0xb1)]:[]})};}function assertExternalLinkLeaf(_0x274c0d){const _0x5d5ea6=a153_0x73ecfa;if(_0x274c0d[_0x5d5ea6(0xbe)]!=='iframe'&&_0x274c0d[_0x5d5ea6(0xbe)]!==_0x5d5ea6(0xc1))throw menuError(_0x5d5ea6(0x8e),_0x5d5ea6(0xa7)+_0x274c0d['id']+_0x5d5ea6(0xb9)+(_0x274c0d['type']||_0x5d5ea6(0xc4))+'\x22,\x20not\x20iframe\x20or\x20link.',_0x5d5ea6(0xa9));if(_0x274c0d[_0x5d5ea6(0x97)]!==0x0)throw menuError(_0x5d5ea6(0x79),_0x5d5ea6(0xa7)+_0x274c0d['id']+_0x5d5ea6(0xb5)+_0x274c0d[_0x5d5ea6(0x97)]+'\x20direct\x20child\x20menu(s).',_0x5d5ea6(0x7f));if(!_0x274c0d[_0x5d5ea6(0xa0)]['trim']())throw menuError(_0x5d5ea6(0xaf),_0x5d5ea6(0xa7)+_0x274c0d['id']+'\x20has\x20an\x20empty\x20platform\x20path.',_0x5d5ea6(0xb7));}function verifyUpdatedFact(_0x183452,_0x5016a6,_0x2e0e22){const _0xe5506=a153_0x73ecfa;assertExternalLinkLeaf(_0x5016a6);const _0xd01557=[['id',_0x5016a6['id'],_0x183452['id']],[_0xe5506(0x91),_0x5016a6['label'],_0x183452[_0xe5506(0x91)]],[_0xe5506(0xbe),_0x5016a6[_0xe5506(0xbe)],_0x183452[_0xe5506(0xbe)]],[_0xe5506(0xa0),_0x5016a6[_0xe5506(0xa0)],_0x183452[_0xe5506(0xa0)]],['parentId',_0x5016a6['parentId'],_0x183452[_0xe5506(0xad)]],[_0xe5506(0xb4),_0x5016a6[_0xe5506(0xb4)],_0x183452[_0xe5506(0xb4)]],[_0xe5506(0x87),_0x5016a6['visible'],_0x183452[_0xe5506(0x87)]]];for(const [_0x2a428c,_0x26efa5,_0x1b719a]of _0xd01557){assertVerified(_0x26efa5===_0x1b719a,_0xe5506(0xa7)+_0x183452['id']+'\x20'+_0x2a428c+'\x20changed\x20during\x20the\x20URL-only\x20update.');}assertVerified(_0x5016a6[_0xe5506(0xba)]===_0x2e0e22,_0xe5506(0xa7)+_0x183452['id']+_0xe5506(0x80));}function a153_0x356b(){const _0x24429f=['\x20has\x20','1VAwXxn','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','\x20is\x20type\x20\x22','url','6mdyXnA','menu_update_recovery_required','Updated\x20external\x20URL\x20for\x20menu\x20','type','get','write','link','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','unknown','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','menu_external_link_not_leaf','requestedUrlObserved','Response\x20was\x20lost\x20and\x20menu\x20','update-external-link-url','external-link-update','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','\x20URL\x20update\x20did\x20not\x20take\x20effect.','menu_state_drift','33963597OoHTVL','271492cQNubr','hash','replace','expect-url','visible','failed','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','update','appCode','4509022tIMVLq','cookie','menu_external_link_type_required','byId','1803345cCGQPl','label','code','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','str','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','childrenCount','update-recovery','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','plan','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','trim','Update\x20request\x20for\x20menu\x20','menu_permission_denied','path','\x20could\x20not\x20be\x20verified\x20safely','2947350GTJMqM','body','expect-parent-id','string','snapshot','Menu\x20','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','readbackFailed','1301402cQkQvo','update\x20external\x20menu\x20URL','parentId','/smartapi/menu/update','menu_external_link_path_missing','5314456bGKGgA','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','\x20parent\x20changed:\x20expected\x20','POST','sort'];a153_0x356b=function(){return _0x24429f;};return a153_0x356b();}function updateSuccess(_0x126fb8,_0xe5dea,_0x17e221,_0x1e150c,_0x573d73){const _0x35893b=a153_0x73ecfa,_0x151e64=_0x17e221['id'],_0x359e3f=mutationResult({..._0x126fb8,'after':_0x17e221,'dryRun':![],'succeeded':[{'id':_0x151e64,'updated':!_0x1e150c,'skipped':_0x1e150c,'recovered':_0x573d73}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0xe5dea[_0x35893b(0x84)],'targetId':_0x151e64,'matchesRequestedState':!![],'recovered':_0x573d73}});return{'ok':!![],'message':_0x573d73?_0x35893b(0xc5)+_0x151e64+'.':_0x1e150c?'Menu\x20'+_0x151e64+'\x20already\x20matches\x20the\x20requested\x20URL.':_0x35893b(0xbd)+_0x151e64+'.','data':{..._0x359e3f,'recovered':_0x573d73}};}async function recoverAfterResponseLoss(_0x39313c,_0x38a2cd){const _0x221039=a153_0x73ecfa,{plan:_0x1db334,before:_0x14cf32,body:_0x312a67}=_0x38a2cd;let _0x511cc5;try{_0x511cc5=await fetchMenuSnapshot(_0x39313c[_0x221039(0x8b)],_0x39313c[_0x221039(0x8d)]);}catch{throw recoveryRequired(_0x1db334,_0x39313c['appCode'],{'id':_0x312a67['id'],'readbackFailed':!![]});}const _0x4ba420=_0x511cc5[_0x221039(0x8f)][_0x221039(0xbf)](_0x312a67['id']);if(!_0x4ba420||_0x4ba420['url']!==_0x312a67['url'])throw recoveryRequired(_0x1db334,_0x39313c['appCode'],{'id':_0x312a67['id'],'requestedUrlObserved':![],'after':_0x4ba420??null});try{verifyUpdatedFact(_0x14cf32,_0x4ba420,_0x312a67[_0x221039(0xba)]);}catch(_0x62177b){const _0x127753=asVerificationError(_0x62177b,_0x221039(0x7b)+_0x312a67['id']+_0x221039(0xa1));throw menuFailure(_0x127753,_0x1db334,{'stage':'update-recovery','succeeded':[{'id':_0x312a67['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x312a67['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x4ba420,'warnings':[_0x221039(0xc3)],'verification':{'status':_0x221039(0x88),'targetId':_0x312a67['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x39313c[_0x221039(0x8b)])}});}return updateSuccess(_0x1db334,_0x511cc5,_0x4ba420,![],!![]);}function recoveryRequired(_0x201524,_0x38b4ce,_0x545e0b){const _0xaff63=a153_0x73ecfa,_0x3bb8d8=menuError(_0xaff63(0xbc),_0xaff63(0xa8),'Run\x20'+buildLookupCommand(_0x38b4ce)+_0xaff63(0x96));return menuFailure(_0x3bb8d8,_0x201524,{'stage':_0xaff63(0x98),'failed':{'id':_0x545e0b['id'],..._0x545e0b['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x545e0b['requestedUrlObserved']},..._0x545e0b[_0xaff63(0xaa)]?{'readbackFailed':!![]}:{}},'after':_0x545e0b['after'],'warnings':[_0xaff63(0xb8)],'verification':{'status':'failed','targetId':_0x545e0b['id'],..._0x545e0b[_0xaff63(0x7a)]===undefined?{}:{'requestedUrlObserved':_0x545e0b['requestedUrlObserved']},..._0x545e0b['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x38b4ce)}});}function buildLookupCommand(_0x2aeaa5){const _0x3edc0e=a153_0x73ecfa,_0x15b444='\x27'+_0x2aeaa5[_0x3edc0e(0x85)](/'/g,'\x27\x5c\x27\x27')+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x15b444+'\x20--format\x20compress';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a144_0x5cc7d1=a144_0x21fc;(function(_0x3c68bd,_0x47f42b){const _0x4b8070=a144_0x21fc,_0x27f9a3=_0x3c68bd();while(!![]){try{const _0x102bf8=-parseInt(_0x4b8070(0xab))/0x1*(-parseInt(_0x4b8070(0xb6))/0x2)+-parseInt(_0x4b8070(0xc8))/0x3*(-parseInt(_0x4b8070(0xa8))/0x4)+-parseInt(_0x4b8070(0xc6))/0x5+-parseInt(_0x4b8070(0xb7))/0x6+-parseInt(_0x4b8070(0xa5))/0x7*(parseInt(_0x4b8070(0xb2))/0x8)+parseInt(_0x4b8070(0x9c))/0x9+parseInt(_0x4b8070(0xad))/0xa;if(_0x102bf8===_0x47f42b)break;else _0x27f9a3['push'](_0x27f9a3['shift']());}catch(_0x5de4ca){_0x27f9a3['push'](_0x27f9a3['shift']());}}}(a144_0x3615,0x32509));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';function a144_0x21fc(_0x4569b1,_0x27ec4f){_0x4569b1=_0x4569b1-0x8c;const _0x361517=a144_0x3615();let _0x21fcb8=_0x361517[_0x4569b1];return _0x21fcb8;}const BACKEND=[{'method':a144_0x5cc7d1(0xbd),'path':a144_0x5cc7d1(0xcb)}];export const menuGroupCreate={'service':'menu','command':'group-create','description':a144_0x5cc7d1(0xca),'risk':'write','structuredErrors':!![],'flags':[{'name':a144_0x5cc7d1(0xa7),'type':'string','required':!![],'description':'Folder\x20label'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1a45b3){validateCreateInput(_0x1a45b3);},async 'dryRun'(_0x2bef8b){const _0x44d18d=a144_0x5cc7d1,_0x4b62ba=await buildCreatePlan(_0x2bef8b,!![]),_0x108ffc=_0x4b62ba['after'];return menuDryRunResult(_0x4b62ba,{'method':'POST','url':_0x44d18d(0xcb),'body':{'parentId':toApiParentId(_0x108ffc[_0x44d18d(0xae)]),'label':_0x108ffc[_0x44d18d(0xa7)],'type':_0x44d18d(0x8d),'visible':!![],'sort':_0x108ffc[_0x44d18d(0xbe)],'extend':{}},'description':'Would\x20create\x20empty\x20folder\x20\x22'+String(_0x108ffc[_0x44d18d(0xa7)])+_0x44d18d(0x9f)});},async 'execute'(_0x3f3a5c){const _0x15d55c=a144_0x5cc7d1;validateCreateInput(_0x3f3a5c);const _0x256e97=await buildCreatePlan(_0x3f3a5c,![]),_0x27af8f=_0x256e97[_0x15d55c(0x96)];await recheckMutationSnapshot(_0x3f3a5c,_0x256e97,'create\x20folder');let _0x5cf675;try{_0x5cf675=await createMenuEntity(_0x3f3a5c['appCode'],_0x3f3a5c[_0x15d55c(0x94)],{'parentId':toApiParentId(_0x27af8f[_0x15d55c(0xae)]),'label':String(_0x27af8f[_0x15d55c(0xa7)]),'type':_0x15d55c(0x8d),'visible':!![],'sort':Number(_0x27af8f[_0x15d55c(0xbe)]),'extend':{}});}catch(_0x3b86d8){const _0x273ccc=mapMenuApiError(_0x3b86d8,_0x15d55c(0x90));throw menuFailure(_0x273ccc,_0x256e97,{'stage':'create','failed':{}});}const _0x1bee81=Number(_0x5cf675['id']);if(!Number['isSafeInteger'](_0x1bee81)||_0x1bee81<=0x0){const _0x13cb50=menuError(_0x15d55c(0x98),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.');throw menuFailure(_0x13cb50,_0x256e97,{'stage':_0x15d55c(0xb5),'failed':{'createdId':_0x5cf675['id']??null},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.'],'verification':{'status':'failed','lookupCommand':_0x15d55c(0xba)}});}const _0x15ceee=typeof _0x5cf675[_0x15d55c(0x8c)]===_0x15d55c(0xc3)?_0x5cf675['path']:'';if(!_0x15ceee['trim']()){const _0x4297c7=menuError(_0x15d55c(0x98),_0x15d55c(0xc5)+_0x1bee81+_0x15d55c(0xa2),_0x15d55c(0x92));throw menuFailure(_0x4297c7,_0x256e97,{'stage':_0x15d55c(0xb5),'succeeded':[{'id':_0x1bee81,'created':!![]}],'failed':{'id':_0x1bee81,'generatedPathConfirmed':![]},'warnings':[_0x15d55c(0xb9)+_0x1bee81+_0x15d55c(0xa4)],'after':{..._0x27af8f,'id':_0x1bee81,'path':_0x15ceee},'verification':{'status':_0x15d55c(0x8f),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x1bee81}});}let _0x53e497;try{_0x53e497=await fetchMenuSnapshot(_0x3f3a5c['appCode'],_0x3f3a5c[_0x15d55c(0x94)]);}catch(_0x2de4d8){const _0x2f8d38=describeMenuErrorCause(_0x2de4d8,_0x15d55c(0x9e),_0x1bee81),_0x3a1559=asVerificationError(_0x2de4d8,_0x15d55c(0xb9)+_0x1bee81+_0x15d55c(0x93));throw menuFailure(_0x3a1559,_0x256e97,{'stage':_0x15d55c(0xa3),'succeeded':[{'id':_0x1bee81,'created':!![],'path':_0x15ceee}],'failed':{'id':_0x1bee81,'finalFactsConfirmed':![],..._0x2f8d38},'warnings':[_0x15d55c(0xb9)+_0x1bee81+_0x15d55c(0xa9)+JSON[_0x15d55c(0xb8)](_0x15ceee)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x27af8f,'id':_0x1bee81,'path':_0x15ceee},'verification':{'status':'failed','lookupCommand':_0x15d55c(0xba),'targetId':_0x1bee81}});}const _0x4fd1b1=_0x53e497[_0x15d55c(0xcc)]['get'](_0x1bee81);let _0xd8a067;try{assertVerified(Boolean(_0x4fd1b1),_0x15d55c(0xb4)+_0x1bee81+_0x15d55c(0xc9)),_0xd8a067=_0x4fd1b1,assertVerified(_0xd8a067[_0x15d55c(0xb0)]===_0x15d55c(0x8d),_0x15d55c(0x9d)+_0x1bee81+_0x15d55c(0xac)),assertVerified(_0xd8a067[_0x15d55c(0xa7)]===_0x27af8f['label'],_0x15d55c(0xb4)+_0x1bee81+'\x20has\x20an\x20unexpected\x20label.'),assertVerified(_0xd8a067[_0x15d55c(0x8c)]===_0x15ceee&&Boolean(_0xd8a067[_0x15d55c(0x8c)]['trim']()),_0x15d55c(0xb4)+_0x1bee81+_0x15d55c(0x97)),assertVerified(_0xd8a067[_0x15d55c(0xaf)]===!![],'Created\x20folder\x20'+_0x1bee81+_0x15d55c(0xc2)),assertVerified(_0xd8a067[_0x15d55c(0xbf)][_0x15d55c(0xa6)]===0x0,_0x15d55c(0xb4)+_0x1bee81+_0x15d55c(0xc1)),assertVerified(_0xd8a067[_0x15d55c(0xbc)]===0x0,_0x15d55c(0xb4)+_0x1bee81+_0x15d55c(0x9b)),assertVerified(_0xd8a067['sort']===_0x27af8f[_0x15d55c(0xbe)],'Created\x20folder\x20'+_0x1bee81+_0x15d55c(0xb3)),assertVerified(_0xd8a067['parentId']===_0x27af8f[_0x15d55c(0xae)],_0x15d55c(0xb4)+_0x1bee81+'\x20has\x20unexpected\x20parent\x20'+(_0xd8a067[_0x15d55c(0xae)]??'root')+'.'),assertVerified(_0xd8a067['pageId']==null,'Created\x20folder\x20'+_0x1bee81+_0x15d55c(0x91));const _0x3e74c7=_0xd8a067[_0x15d55c(0xae)]==null?undefined:requireFolder(_0x53e497,_0xd8a067[_0x15d55c(0xae)]);assertVerified(_0xd8a067['depth']===(_0x3e74c7?_0x3e74c7[_0x15d55c(0x9a)]+0x1:0x0),'Created\x20folder\x20'+_0x1bee81+_0x15d55c(0xc7));}catch(_0x2dcbe3){const _0x4b9814=describeMenuErrorCause(_0x2dcbe3,'verify\x20folder\x20creation',_0x1bee81),_0x5498cc=asVerificationError(_0x2dcbe3,_0x15d55c(0xb9)+_0x1bee81+_0x15d55c(0x8e));throw menuFailure(_0x5498cc,_0x256e97,{'stage':'verification','succeeded':[{'id':_0x1bee81,'created':!![],'path':_0x15ceee}],'failed':{'id':_0x1bee81,'finalFactsConfirmed':![],..._0x4b9814},'warnings':[_0x15d55c(0xb9)+_0x1bee81+'\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.'],'after':_0x4fd1b1??{..._0x27af8f,'id':_0x1bee81,'path':_0x15ceee},'verification':{'status':_0x15d55c(0x8f),'lookupCommand':_0x15d55c(0xba),'targetId':_0x1bee81}});}const _0x2b01c4=mutationResult({..._0x256e97,'after':_0xd8a067,'dryRun':![],'succeeded':[{'id':_0x1bee81,'type':_0x15d55c(0x8d),'path':_0x15ceee}],'verification':{'checkedBy':_0x15d55c(0xc4),'snapshotHash':_0x53e497['hash'],'folder':!![],'path':_0x15ceee,'emptyResources':!![]}});return{'ok':!![],'data':_0x2b01c4,'message':'Created\x20menu\x20folder\x20'+_0x1bee81+'.'};}};function validateCreateInput(_0x5b53b8){const _0x2a3db9=a144_0x5cc7d1,_0x43e509=_0x5b53b8[_0x2a3db9(0x95)]('label')[_0x2a3db9(0xb1)]();if(!_0x43e509)throw CliErrors['flagMissing'](_0x2a3db9(0xa7));parseParentId(_0x5b53b8,_0x2a3db9(0xa0)),validateSort(_0x5b53b8);}function a144_0x3615(){const _0x5bd9f8=['\x22\x20with\x20a\x20platform-generated\x20path.','parent-id','create-folder','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','verification','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','1393NLPzLP','length','label','4wvJcpl','\x20may\x20exist\x20online\x20at\x20path\x20','<platform-generated>','2455BaOehU','\x20is\x20not\x20type\x20folder.','1204250ucreOg','parentId','visible','type','trim','2936UQSzqK','\x20has\x20an\x20unexpected\x20sort.','Created\x20folder\x20','create-response-validation','26FfVGmg','412398gNRGGK','stringify','Folder\x20','rabetbase\x20menu\x20list\x20--format\x20json','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','childrenCount','POST','sort','resources','hash','\x20has\x20resources.','\x20is\x20not\x20visible.','string','menu\x20list','Menu\x20create\x20response\x20for\x20folder\x20','217350cIELdU','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','601071BjmUTA','\x20is\x20missing\x20from\x20menu\x20list.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','/smartapi/menu/create','byId','path','folder','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','failed','create\x20folder','\x20unexpectedly\x20owns\x20a\x20page.','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','cookie','str','after','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','menu_create_response_invalid','group-create','depth','\x20is\x20not\x20empty.','347652uQjBgf','Created\x20menu\x20','verify\x20folder\x20creation'];a144_0x3615=function(){return _0x5bd9f8;};return a144_0x3615();}async function buildCreatePlan(_0x1d2ce5,_0x1470d2){const _0x42a5dc=a144_0x5cc7d1,_0x1f641f=await fetchMutationSnapshot(_0x1d2ce5,'create\x20folder'),_0x41d311=parseParentId(_0x1d2ce5,_0x42a5dc(0xa0))??null;if(_0x41d311!=null)requireFolder(_0x1f641f,_0x41d311);const _0x49980f=validateSort(_0x1d2ce5),_0x11f1d7=_0x49980f??nextSiblingSort(_0x1f641f,_0x41d311,_0x42a5dc(0x8d)),_0x3c318a=_0x1d2ce5[_0x42a5dc(0x95)](_0x42a5dc(0xa7))[_0x42a5dc(0xb1)]();return mutationResult({'operation':_0x42a5dc(0x99),'selector':{'label':_0x3c318a,'parentId':_0x41d311},'before':null,'after':{'id':null,'parentId':_0x41d311,'label':_0x3c318a,'path':_0x42a5dc(0xaa),'type':_0x42a5dc(0x8d),'visible':!![],'sort':_0x11f1d7,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x1470d2,'backend':[...BACKEND],'plannedActions':[{'stage':_0x42a5dc(0xa1),'method':_0x42a5dc(0xbd),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x41d311),'label':_0x3c318a,'type':'folder','visible':!![],'sort':_0x11f1d7,'extend':{}}}],'snapshotHash':_0x1f641f[_0x42a5dc(0xc0)],'warnings':[_0x42a5dc(0xbb)]});}
|
|
1
|
+
const a154_0x12d721=a154_0x2e2c;function a154_0x2e2c(_0x2e8f37,_0x4c8331){_0x2e8f37=_0x2e8f37-0xf1;const _0x429744=a154_0x4297();let _0x2e2c62=_0x429744[_0x2e8f37];return _0x2e2c62;}(function(_0x2efb94,_0x582d03){const _0x27763a=a154_0x2e2c,_0x318bd4=_0x2efb94();while(!![]){try{const _0x1df0af=parseInt(_0x27763a(0x12e))/0x1*(parseInt(_0x27763a(0xfd))/0x2)+parseInt(_0x27763a(0x107))/0x3*(parseInt(_0x27763a(0x10c))/0x4)+-parseInt(_0x27763a(0x126))/0x5*(-parseInt(_0x27763a(0x114))/0x6)+parseInt(_0x27763a(0x127))/0x7*(-parseInt(_0x27763a(0xf7))/0x8)+-parseInt(_0x27763a(0x12a))/0x9*(-parseInt(_0x27763a(0x104))/0xa)+-parseInt(_0x27763a(0x11b))/0xb*(-parseInt(_0x27763a(0x101))/0xc)+-parseInt(_0x27763a(0x136))/0xd*(parseInt(_0x27763a(0x13e))/0xe);if(_0x1df0af===_0x582d03)break;else _0x318bd4['push'](_0x318bd4['shift']());}catch(_0x300708){_0x318bd4['push'](_0x318bd4['shift']());}}}(a154_0x4297,0x463cb));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a154_0x12d721(0x11d),'path':a154_0x12d721(0x125)}];export const menuGroupCreate={'service':'menu','command':a154_0x12d721(0x13c),'description':a154_0x12d721(0x10a),'risk':'write','structuredErrors':!![],'flags':[{'name':a154_0x12d721(0x11c),'type':a154_0x12d721(0x122),'required':!![],'description':a154_0x12d721(0x124)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0xdc3017){validateCreateInput(_0xdc3017);},async 'dryRun'(_0x46caab){const _0x1a27b2=a154_0x12d721,_0x190c12=await buildCreatePlan(_0x46caab,!![]),_0x549dae=_0x190c12[_0x1a27b2(0x120)];return menuDryRunResult(_0x190c12,{'method':_0x1a27b2(0x11d),'url':_0x1a27b2(0x125),'body':{'parentId':toApiParentId(_0x549dae[_0x1a27b2(0x121)]),'label':_0x549dae['label'],'type':'folder','visible':!![],'sort':_0x549dae[_0x1a27b2(0xfe)],'extend':{}},'description':_0x1a27b2(0x11a)+String(_0x549dae[_0x1a27b2(0x11c)])+_0x1a27b2(0x118)});},async 'execute'(_0x3197c9){const _0x2df303=a154_0x12d721;validateCreateInput(_0x3197c9);const _0x4523f5=await buildCreatePlan(_0x3197c9,![]),_0x2118de=_0x4523f5[_0x2df303(0x120)];await recheckMutationSnapshot(_0x3197c9,_0x4523f5,'create\x20folder');let _0x22ad8a;try{_0x22ad8a=await createMenuEntity(_0x3197c9[_0x2df303(0x106)],_0x3197c9[_0x2df303(0x11f)],{'parentId':toApiParentId(_0x2118de[_0x2df303(0x121)]),'label':String(_0x2118de[_0x2df303(0x11c)]),'type':_0x2df303(0xfb),'visible':!![],'sort':Number(_0x2118de[_0x2df303(0xfe)]),'extend':{}});}catch(_0x19ec14){const _0x221cdf=mapMenuApiError(_0x19ec14,_0x2df303(0xf9));throw menuFailure(_0x221cdf,_0x4523f5,{'stage':_0x2df303(0x13d),'failed':{}});}const _0xe55f50=Number(_0x22ad8a['id']);if(!Number[_0x2df303(0xf5)](_0xe55f50)||_0xe55f50<=0x0){const _0x16039e=menuError(_0x2df303(0x123),_0x2df303(0x131),_0x2df303(0x130));throw menuFailure(_0x16039e,_0x4523f5,{'stage':'create-response-validation','failed':{'createdId':_0x22ad8a['id']??null},'warnings':[_0x2df303(0x12b)],'verification':{'status':_0x2df303(0x13b),'lookupCommand':_0x2df303(0x10d)}});}const _0xb2fa2f=typeof _0x22ad8a[_0x2df303(0x12c)]===_0x2df303(0x122)?_0x22ad8a[_0x2df303(0x12c)]:'';if(!_0xb2fa2f[_0x2df303(0xf3)]()){const _0x387a3e=menuError(_0x2df303(0x123),_0x2df303(0x133)+_0xe55f50+_0x2df303(0x109),_0x2df303(0x105));throw menuFailure(_0x387a3e,_0x4523f5,{'stage':_0x2df303(0x116),'succeeded':[{'id':_0xe55f50,'created':!![]}],'failed':{'id':_0xe55f50,'generatedPathConfirmed':![]},'warnings':[_0x2df303(0x115)+_0xe55f50+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x2118de,'id':_0xe55f50,'path':_0xb2fa2f},'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0xe55f50}});}let _0x32177e;try{_0x32177e=await fetchMenuSnapshot(_0x3197c9[_0x2df303(0x106)],_0x3197c9[_0x2df303(0x11f)]);}catch(_0x153768){const _0x47312f=describeMenuErrorCause(_0x153768,_0x2df303(0x103),_0xe55f50),_0x1c3675=asVerificationError(_0x153768,_0x2df303(0x115)+_0xe55f50+_0x2df303(0x10b));throw menuFailure(_0x1c3675,_0x4523f5,{'stage':_0x2df303(0x113),'succeeded':[{'id':_0xe55f50,'created':!![],'path':_0xb2fa2f}],'failed':{'id':_0xe55f50,'finalFactsConfirmed':![],..._0x47312f},'warnings':[_0x2df303(0x115)+_0xe55f50+_0x2df303(0xff)+JSON[_0x2df303(0x139)](_0xb2fa2f)+_0x2df303(0xf2)],'after':{..._0x2118de,'id':_0xe55f50,'path':_0xb2fa2f},'verification':{'status':_0x2df303(0x13b),'lookupCommand':_0x2df303(0x10d),'targetId':_0xe55f50}});}const _0x337cd8=_0x32177e[_0x2df303(0x10f)][_0x2df303(0x111)](_0xe55f50);let _0x549d47;try{assertVerified(Boolean(_0x337cd8),_0x2df303(0xfc)+_0xe55f50+_0x2df303(0xfa)),_0x549d47=_0x337cd8,assertVerified(_0x549d47[_0x2df303(0x13a)]===_0x2df303(0xfb),'Created\x20menu\x20'+_0xe55f50+_0x2df303(0x110)),assertVerified(_0x549d47[_0x2df303(0x11c)]===_0x2118de[_0x2df303(0x11c)],_0x2df303(0xfc)+_0xe55f50+_0x2df303(0xf1)),assertVerified(_0x549d47['path']===_0xb2fa2f&&Boolean(_0x549d47[_0x2df303(0x12c)][_0x2df303(0xf3)]()),_0x2df303(0xfc)+_0xe55f50+'\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.'),assertVerified(_0x549d47[_0x2df303(0x117)]===!![],_0x2df303(0xfc)+_0xe55f50+_0x2df303(0x137)),assertVerified(_0x549d47['resources']['length']===0x0,_0x2df303(0xfc)+_0xe55f50+_0x2df303(0x108)),assertVerified(_0x549d47[_0x2df303(0xf6)]===0x0,_0x2df303(0xfc)+_0xe55f50+_0x2df303(0xf4)),assertVerified(_0x549d47['sort']===_0x2118de[_0x2df303(0xfe)],_0x2df303(0xfc)+_0xe55f50+_0x2df303(0x138)),assertVerified(_0x549d47[_0x2df303(0x121)]===_0x2118de[_0x2df303(0x121)],_0x2df303(0xfc)+_0xe55f50+_0x2df303(0x119)+(_0x549d47[_0x2df303(0x121)]??_0x2df303(0x12f))+'.'),assertVerified(_0x549d47[_0x2df303(0x102)]==null,_0x2df303(0xfc)+_0xe55f50+_0x2df303(0x128));const _0x19fd69=_0x549d47[_0x2df303(0x121)]==null?undefined:requireFolder(_0x32177e,_0x549d47[_0x2df303(0x121)]);assertVerified(_0x549d47[_0x2df303(0x11e)]===(_0x19fd69?_0x19fd69[_0x2df303(0x11e)]+0x1:0x0),_0x2df303(0xfc)+_0xe55f50+_0x2df303(0x12d));}catch(_0x5383e4){const _0x238c66=describeMenuErrorCause(_0x5383e4,_0x2df303(0x103),_0xe55f50),_0x1c6fef=asVerificationError(_0x5383e4,_0x2df303(0x115)+_0xe55f50+'\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract');throw menuFailure(_0x1c6fef,_0x4523f5,{'stage':'verification','succeeded':[{'id':_0xe55f50,'created':!![],'path':_0xb2fa2f}],'failed':{'id':_0xe55f50,'finalFactsConfirmed':![],..._0x238c66},'warnings':['Folder\x20'+_0xe55f50+_0x2df303(0x134)],'after':_0x337cd8??{..._0x2118de,'id':_0xe55f50,'path':_0xb2fa2f},'verification':{'status':_0x2df303(0x13b),'lookupCommand':_0x2df303(0x10d),'targetId':_0xe55f50}});}const _0x136297=mutationResult({..._0x4523f5,'after':_0x549d47,'dryRun':![],'succeeded':[{'id':_0xe55f50,'type':_0x2df303(0xfb),'path':_0xb2fa2f}],'verification':{'checkedBy':_0x2df303(0x112),'snapshotHash':_0x32177e[_0x2df303(0x135)],'folder':!![],'path':_0xb2fa2f,'emptyResources':!![]}});return{'ok':!![],'data':_0x136297,'message':_0x2df303(0x100)+_0xe55f50+'.'};}};function validateCreateInput(_0x45f942){const _0x262f96=a154_0x12d721,_0x6c9202=_0x45f942[_0x262f96(0x10e)]('label')['trim']();if(!_0x6c9202)throw CliErrors[_0x262f96(0x132)]('label');parseParentId(_0x45f942,_0x262f96(0x129)),validateSort(_0x45f942);}async function buildCreatePlan(_0x1264f1,_0x9480c2){const _0x2a3326=a154_0x12d721,_0x1ddc63=await fetchMutationSnapshot(_0x1264f1,_0x2a3326(0xf9)),_0x16e7da=parseParentId(_0x1264f1,_0x2a3326(0x129))??null;if(_0x16e7da!=null)requireFolder(_0x1ddc63,_0x16e7da);const _0x5446c2=validateSort(_0x1264f1),_0x45ae45=_0x5446c2??nextSiblingSort(_0x1ddc63,_0x16e7da,_0x2a3326(0xfb)),_0xbf245f=_0x1264f1[_0x2a3326(0x10e)](_0x2a3326(0x11c))[_0x2a3326(0xf3)]();return mutationResult({'operation':_0x2a3326(0x13c),'selector':{'label':_0xbf245f,'parentId':_0x16e7da},'before':null,'after':{'id':null,'parentId':_0x16e7da,'label':_0xbf245f,'path':'<platform-generated>','type':_0x2a3326(0xfb),'visible':!![],'sort':_0x45ae45,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x9480c2,'backend':[...BACKEND],'plannedActions':[{'stage':'create-folder','method':_0x2a3326(0x11d),'path':_0x2a3326(0x125),'body':{'parentId':toApiParentId(_0x16e7da),'label':_0xbf245f,'type':_0x2a3326(0xfb),'visible':!![],'sort':_0x45ae45,'extend':{}}}],'snapshotHash':_0x1ddc63['hash'],'warnings':[_0x2a3326(0xf8)]});}function a154_0x4297(){const _0xb08056=['childrenCount','872bTJMDo','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','create\x20folder','\x20is\x20missing\x20from\x20menu\x20list.','folder','Created\x20folder\x20','122XmrHwJ','sort','\x20may\x20exist\x20online\x20at\x20path\x20','Created\x20menu\x20folder\x20','24wYDcfL','pageId','verify\x20folder\x20creation','51890avqzyj','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','appCode','96oUwWUz','\x20has\x20resources.','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','26792eaLOzk','rabetbase\x20menu\x20list\x20--format\x20json','str','byId','\x20is\x20not\x20type\x20folder.','get','menu\x20list','verification','11784UhXKSn','Folder\x20','create-response-validation','visible','\x22\x20with\x20a\x20platform-generated\x20path.','\x20has\x20unexpected\x20parent\x20','Would\x20create\x20empty\x20folder\x20\x22','1233826fcSzEw','label','POST','depth','cookie','after','parentId','string','menu_create_response_invalid','Folder\x20label','/smartapi/menu/create','905NxfHyz','12117fzeuoe','\x20unexpectedly\x20owns\x20a\x20page.','parent-id','963ejWZPr','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','path','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','6978HDIJbP','root','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','flagMissing','Menu\x20create\x20response\x20for\x20folder\x20','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','hash','16882619eYBarK','\x20is\x20not\x20visible.','\x20has\x20an\x20unexpected\x20sort.','stringify','type','failed','group-create','create','14QUWgIx','\x20has\x20an\x20unexpected\x20label.',';\x20verify\x20it\x20before\x20retrying.','trim','\x20is\x20not\x20empty.','isSafeInteger'];a154_0x4297=function(){return _0xb08056;};return a154_0x4297();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a155_0x898509=a155_0x56cb;(function(_0xd7cde9,_0x2b2f38){const _0x36f102=a155_0x56cb,_0x4eacc5=_0xd7cde9();while(!![]){try{const _0x4d8660=-parseInt(_0x36f102(0x1f6))/0x1*(parseInt(_0x36f102(0x1db))/0x2)+parseInt(_0x36f102(0x1f9))/0x3+-parseInt(_0x36f102(0x1fd))/0x4+parseInt(_0x36f102(0x1d9))/0x5+-parseInt(_0x36f102(0x1f5))/0x6+-parseInt(_0x36f102(0x1fb))/0x7+parseInt(_0x36f102(0x1d1))/0x8*(parseInt(_0x36f102(0x1e1))/0x9);if(_0x4d8660===_0x2b2f38)break;else _0x4eacc5['push'](_0x4eacc5['shift']());}catch(_0x5b488d){_0x4eacc5['push'](_0x4eacc5['shift']());}}}(a155_0x34ab,0x5e96e));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a155_0x898509(0x1d5)}];function a155_0x56cb(_0x183bed,_0xb73cbe){_0x183bed=_0x183bed-0x1d0;const _0x34ab76=a155_0x34ab();let _0x56cbf8=_0x34ab76[_0x183bed];return _0x56cbf8;}export const menuGroupUpdate={'service':a155_0x898509(0x1eb),'command':a155_0x898509(0x1e6),'description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a155_0x898509(0x1fe),'structuredErrors':!![],'rejectedFlags':[{'name':a155_0x898509(0x1dc),'message':a155_0x898509(0x1fc),'hint':a155_0x898509(0x1e0)}],'flags':[MENU_ID_FLAG,{'name':a155_0x898509(0x1e5),'type':a155_0x898509(0x1f7),'description':a155_0x898509(0x1d4)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2fa77c){validateUpdateInput(_0x2fa77c);},async 'dryRun'(_0x36f365){const _0x549849=a155_0x898509;validateUpdateInput(_0x36f365);const {plan:_0x4e2614,patch:_0x4ad494}=await buildUpdatePlan(_0x36f365,!![]);return menuDryRunResult(_0x4e2614,{'method':_0x549849(0x1ff),'url':_0x549849(0x1d5),'body':_0x4ad494,'description':_0x549849(0x1f0)+_0x4e2614['selector']['id']+'.'});},async 'execute'(_0x1dd382){const _0x50d73a=a155_0x898509;validateUpdateInput(_0x1dd382);const {plan:_0x971548,patch:_0x42feff,noChanges:_0x1cee8c}=await buildUpdatePlan(_0x1dd382,![]),_0x20ab70=Number(_0x971548[_0x50d73a(0x1ee)]['id']),_0xe1fdeb=await recheckMutationSnapshot(_0x1dd382,_0x971548,'update\x20folder',_0x20ab70);if(!_0x1cee8c)try{await updateMenuEntity(_0x1dd382[_0x50d73a(0x1dd)],_0x1dd382[_0x50d73a(0x1f2)],_0x42feff);}catch(_0x3b2acf){const _0x123121=mapMenuApiError(_0x3b2acf,_0x50d73a(0x1d0),_0x20ab70);throw menuFailure(_0x123121,_0x971548,{'stage':'update','failed':{'id':_0x20ab70}});}let _0xdc17f5=_0xe1fdeb,_0x57c3c7;try{!_0x1cee8c&&(_0xdc17f5=await fetchMenuSnapshot(_0x1dd382[_0x50d73a(0x1dd)],_0x1dd382['cookie'])),_0x57c3c7=requireMenu(_0xdc17f5,_0x20ab70),verifyPatch(_0x57c3c7,_0x42feff),_0x57c3c7[_0x50d73a(0x1ed)]!=null&&requireFolder(_0xdc17f5,_0x57c3c7[_0x50d73a(0x1ed)]);}catch(_0x3a47bb){const _0x5bfc07=describeMenuErrorCause(_0x3a47bb,_0x50d73a(0x1e7),_0x20ab70),_0x20a938=asVerificationError(_0x3a47bb,_0x50d73a(0x1ea)+_0x20ab70+_0x50d73a(0x1e2));throw menuFailure(_0x20a938,_0x971548,{'stage':'verification','succeeded':[{'id':_0x20ab70,'updateRequested':!_0x1cee8c,'skipped':_0x1cee8c}],'failed':{'id':_0x20ab70,'requestedStateConfirmed':![],..._0x5bfc07},'warnings':[_0x50d73a(0x1ec)],'verification':{'status':_0x50d73a(0x1e4),'lookupCommand':_0x50d73a(0x1f4),'targetId':_0x20ab70}});}const _0x590986=mutationResult({..._0x971548,'after':_0x57c3c7,'dryRun':![],'succeeded':[{'id':_0x20ab70,'updated':!_0x1cee8c,'skipped':_0x1cee8c}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0xdc17f5[_0x50d73a(0x200)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x590986,'message':_0x1cee8c?'Folder\x20'+_0x20ab70+_0x50d73a(0x1d2):'Updated\x20folder\x20'+_0x20ab70+'.'};}};function validateUpdateInput(_0x302f1c){const _0x4eae9d=a155_0x898509;validateExactId(_0x302f1c);if(hasFlag(_0x302f1c,_0x4eae9d(0x1dc)))throw CliErrors[_0x4eae9d(0x1ef)]('Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.',_0x4eae9d(0x1e0));if(!hasFlag(_0x302f1c,_0x4eae9d(0x1e5))&&!hasFlag(_0x302f1c,_0x4eae9d(0x1df)))throw CliErrors['validation'](_0x4eae9d(0x1d7));if(hasFlag(_0x302f1c,_0x4eae9d(0x1e5))&&!_0x302f1c[_0x4eae9d(0x1e8)]('label')[_0x4eae9d(0x1e9)]())throw CliErrors['validation']('--label\x20cannot\x20be\x20empty.');validateSort(_0x302f1c);}async function buildUpdatePlan(_0x14b4d5,_0x560056){const _0x1784e9=a155_0x898509,_0x5a2518=validateExactId(_0x14b4d5),_0x414513=await fetchMutationSnapshot(_0x14b4d5,_0x1784e9(0x1d0),_0x5a2518),_0x2ee733=requireMenu(_0x414513,_0x5a2518);if(_0x2ee733[_0x1784e9(0x1da)]!==_0x1784e9(0x1f3))throw menuError('menu_not_folder',_0x1784e9(0x1d3)+_0x5a2518+_0x1784e9(0x1d6)+(_0x2ee733[_0x1784e9(0x1da)]||_0x1784e9(0x1de))+'\x22,\x20not\x20folder.',_0x1784e9(0x1f1));assertExpectedState(_0x14b4d5,_0x2ee733);const _0x580a6b={'id':_0x5a2518},_0x2ee363={..._0x2ee733};if(hasFlag(_0x14b4d5,'label')){const _0x273923=_0x14b4d5['str']('label')[_0x1784e9(0x1e9)]();_0x580a6b['label']=_0x273923,_0x2ee363[_0x1784e9(0x1e5)]=_0x273923;}if(hasFlag(_0x14b4d5,_0x1784e9(0x1df))){const _0x2165fd=validateSort(_0x14b4d5);_0x580a6b['sort']=_0x2165fd,_0x2ee363[_0x1784e9(0x1df)]=_0x2165fd;}const _0x1b6400=sameRequestedState(_0x2ee733,_0x2ee363),_0x35f91a=_0x1b6400?[_0x1784e9(0x1e3)]:[];return{'patch':_0x580a6b,'noChanges':_0x1b6400,'plan':mutationResult({'operation':_0x1784e9(0x1e6),'selector':{'id':_0x5a2518},'before':_0x2ee733,'after':_0x2ee363,'dryRun':_0x560056,'backend':[...BACKEND],'snapshotHash':_0x414513[_0x1784e9(0x200)],'warnings':_0x35f91a})};}function a155_0x34ab(){const _0xd62029=['5399387zgXWai','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','144320oOmqLT','write','POST','hash','update\x20folder','6074008dVYYKt','\x20already\x20matches\x20the\x20requested\x20state.','Menu\x20','New\x20folder\x20label','/smartapi/menu/update','\x20is\x20type\x20\x22','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','\x20sort\x20update\x20did\x20not\x20take\x20effect.','856225Ediyjj','type','1074676iQuktQ','parent-id','appCode','unknown','sort','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','18ecyxLm','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','No\x20online\x20fields\x20would\x20change.','failed','label','group-update','verify\x20folder\x20update','str','trim','Update\x20request\x20for\x20folder\x20','menu','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','parentId','selector','validation','Would\x20update\x20folder\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','cookie','folder','rabetbase\x20menu\x20list\x20--format\x20json','3622932EqOdXy','1ksScFM','string','Folder\x20','1938816KRZfXw','\x20is\x20no\x20longer\x20type\x20folder.'];a155_0x34ab=function(){return _0xd62029;};return a155_0x34ab();}function sameRequestedState(_0xabc51d,_0x3b602d){const _0x2b87d8=a155_0x898509;return _0xabc51d['label']===_0x3b602d['label']&&_0xabc51d[_0x2b87d8(0x1df)]===_0x3b602d[_0x2b87d8(0x1df)];}function verifyPatch(_0x31216f,_0x4a60b4){const _0x16d8a7=a155_0x898509;assertVerified(_0x31216f[_0x16d8a7(0x1da)]===_0x16d8a7(0x1f3),'Menu\x20'+_0x31216f['id']+_0x16d8a7(0x1fa)),_0x4a60b4[_0x16d8a7(0x1e5)]!==undefined&&assertVerified(_0x31216f[_0x16d8a7(0x1e5)]===_0x4a60b4[_0x16d8a7(0x1e5)],_0x16d8a7(0x1f8)+_0x31216f['id']+'\x20label\x20update\x20did\x20not\x20take\x20effect.'),_0x4a60b4[_0x16d8a7(0x1df)]!==undefined&&assertVerified(_0x31216f[_0x16d8a7(0x1df)]===_0x4a60b4[_0x16d8a7(0x1df)],'Folder\x20'+_0x31216f['id']+_0x16d8a7(0x1d8));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a156_0x48a6(_0x3415a7,_0x2d6ca4){_0x3415a7=_0x3415a7-0xae;const _0x444c02=a156_0x444c();let _0x48a60a=_0x444c02[_0x3415a7];return _0x48a60a;}(function(_0x22692a,_0x2d5c22){const _0x5b1423=a156_0x48a6,_0x36b5ef=_0x22692a();while(!![]){try{const _0x1ab7fb=parseInt(_0x5b1423(0xb8))/0x1*(parseInt(_0x5b1423(0xb1))/0x2)+parseInt(_0x5b1423(0xb7))/0x3+parseInt(_0x5b1423(0xb4))/0x4*(-parseInt(_0x5b1423(0xb6))/0x5)+parseInt(_0x5b1423(0xb2))/0x6+parseInt(_0x5b1423(0xb3))/0x7*(parseInt(_0x5b1423(0xb0))/0x8)+parseInt(_0x5b1423(0xb5))/0x9*(-parseInt(_0x5b1423(0xaf))/0xa)+-parseInt(_0x5b1423(0xb9))/0xb*(parseInt(_0x5b1423(0xae))/0xc);if(_0x1ab7fb===_0x2d5c22)break;else _0x36b5ef['push'](_0x36b5ef['shift']());}catch(_0x5b480a){_0x36b5ef['push'](_0x36b5ef['shift']());}}}(a156_0x444c,0x42cde));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';function a156_0x444c(){const _0x1c3042=['463218wwemdu','9533fkRfUO','121BJOOAp','326160fgKhnC','4376410AblStH','667784qMmsWk','86BSfJOv','2812194VadTiF','35eenATU','4wYAksm','9PVbKdj','2200690HywPMC'];a156_0x444c=function(){return _0x1c3042;};return a156_0x444c();}import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
|