@lovrabet/rabetbase-cli 2.5.1-beta.4 → 2.5.1-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +75 -1
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.d.ts +0 -1
- package/lib/api/generate-sdk-config-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.d.ts +2 -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.d.ts +2 -0
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-restore.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/dataset/user-deleted-field-list.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/table-diff-shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/deployment/auto-sync.js +1 -1
- package/lib/commands/deployment/index.js +1 -1
- package/lib/commands/deployment/sync.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.d.ts +1 -0
- 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.d.ts +2 -0
- package/lib/commands/project/domain-routing-sync.js +1 -0
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/rule/get.d.ts +2 -0
- package/lib/commands/rule/get.js +1 -0
- package/lib/commands/rule/index.d.ts +2 -0
- package/lib/commands/rule/index.js +1 -0
- package/lib/commands/rule/list.d.ts +2 -0
- package/lib/commands/rule/list.js +1 -0
- package/lib/commands/rule/set.d.ts +2 -0
- package/lib/commands/rule/set.js +1 -0
- package/lib/commands/rule/shared.d.ts +43 -0
- package/lib/commands/rule/shared.js +1 -0
- 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/deployment-sync.js +1 -1
- package/lib/config/domain-config.d.ts +37 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/project-domain-routing.d.ts +27 -0
- package/lib/config/project-domain-routing.js +1 -0
- package/lib/config/schema.d.ts +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.d.ts +10 -4
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.d.ts +4 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/routing-profile.d.ts +43 -49
- package/lib/constant/routing-profile.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.d.ts +2 -0
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +37 -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/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.d.ts +0 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/generated/official-routing.d.ts +83 -0
- package/lib/generated/official-routing.js +1 -0
- package/lib/generated/routing-contract.d.ts +9 -0
- package/lib/generated/routing-contract.js +1 -0
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/types/index.d.ts +0 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +2 -1
- package/skills/rabetbase/SKILL.md +16 -13
- package/skills/rabetbase/guides/sdk-client-generation.md +10 -8
- package/skills/rabetbase/references/rabetbase-api-pull.md +16 -11
- package/skills/rabetbase/references/rabetbase-config.md +4 -4
- package/skills/rabetbase/references/rabetbase-doctor.md +2 -1
- package/skills/rabetbase/references/rabetbase-init.md +32 -8
- package/skills/rabetbase/references/rabetbase-kb.md +7 -8
- package/skills/rabetbase/references/rabetbase-project-create.md +33 -8
- package/skills/rabetbase/references/rabetbase-project-domain-routing-sync.md +28 -0
- package/skills/rabetbase/references/rabetbase-rule.md +49 -0
- package/skills/rabetbase.manifest.json +5 -3
- package/lib/config/project-routing.d.ts +0 -30
- package/lib/config/project-routing.js +0 -1
- package/lib/core/kb-search-client.d.ts +0 -30
- package/lib/core/kb-search-client.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a119_0x2705ec=a119_0xa7c6;function a119_0xa7c6(_0x3375ef,_0x44fcf1){_0x3375ef=_0x3375ef-0x154;const _0x3ba4bd=a119_0x3ba4();let _0xa7c67f=_0x3ba4bd[_0x3375ef];return _0xa7c67f;}(function(_0x4ad674,_0x4e6745){const _0x1cf694=a119_0xa7c6,_0x25d1ed=_0x4ad674();while(!![]){try{const _0x482f6a=-parseInt(_0x1cf694(0x163))/0x1*(parseInt(_0x1cf694(0x181))/0x2)+parseInt(_0x1cf694(0x18f))/0x3*(-parseInt(_0x1cf694(0x179))/0x4)+-parseInt(_0x1cf694(0x19d))/0x5*(-parseInt(_0x1cf694(0x17b))/0x6)+-parseInt(_0x1cf694(0x19e))/0x7*(-parseInt(_0x1cf694(0x15b))/0x8)+-parseInt(_0x1cf694(0x169))/0x9*(-parseInt(_0x1cf694(0x184))/0xa)+-parseInt(_0x1cf694(0x162))/0xb+-parseInt(_0x1cf694(0x168))/0xc*(-parseInt(_0x1cf694(0x1a0))/0xd);if(_0x482f6a===_0x4e6745)break;else _0x25d1ed['push'](_0x25d1ed['shift']());}catch(_0x3ab2da){_0x25d1ed['push'](_0x25d1ed['shift']());}}}(a119_0x3ba4,0xdde9c));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a119_0x3ba4(){const _0x21d20a=['3dHOjnO','\x20unexpectedly\x20owns\x20a\x20page.','POST','verify\x20folder\x20creation','flagMissing','path','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','\x20has\x20an\x20unexpected\x20label.','cookie','menu\x20list','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','\x20has\x20unexpected\x20parent\x20','byId','Created\x20menu\x20','707225lzfQxH','42jjzVTz','\x20has\x20resources.','13eODdFc','Folder\x20label','pageId','create\x20folder','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','type','create','/smartapi/menu/create','resources','\x20is\x20not\x20visible.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','36152BHwcmW','parentId','hash','visible','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','\x22\x20with\x20a\x20platform-generated\x20path.','Folder\x20','14734896SpjziY','1NRLowM','childrenCount','appCode','menu_create_response_invalid',';\x20verify\x20it\x20before\x20retrying.','30148620mtfXcS','234DocUrK','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','length','str','\x20may\x20exist\x20online\x20at\x20path\x20','create-folder','string','Menu\x20create\x20response\x20for\x20folder\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','group-create','rabetbase\x20menu\x20list\x20--format\x20json','Created\x20menu\x20folder\x20','trim','menu','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','get','2959524DysSRq','Created\x20folder\x20','18WatpCD','\x20is\x20not\x20empty.','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','label','\x20is\x20missing\x20from\x20menu\x20list.','isSafeInteger','2546554YUkPXb','root','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','499160SBdPeJ','depth','Would\x20create\x20empty\x20folder\x20\x22','folder','failed','sort','stringify','create-response-validation','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','\x20has\x20an\x20unexpected\x20sort.','parent-id'];a119_0x3ba4=function(){return _0x21d20a;};return a119_0x3ba4();}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':'POST','path':a119_0x2705ec(0x157)}];export const menuGroupCreate={'service':a119_0x2705ec(0x176),'command':'group-create','description':a119_0x2705ec(0x15a),'risk':'write','structuredErrors':!![],'flags':[{'name':a119_0x2705ec(0x17e),'type':a119_0x2705ec(0x16f),'required':!![],'description':a119_0x2705ec(0x1a1)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5c8532){validateCreateInput(_0x5c8532);},async 'dryRun'(_0x1d987d){const _0x4c901f=a119_0x2705ec,_0x3c2c04=await buildCreatePlan(_0x1d987d,!![]),_0x39a72d=_0x3c2c04['after'];return menuDryRunResult(_0x3c2c04,{'method':_0x4c901f(0x191),'url':_0x4c901f(0x157),'body':{'parentId':toApiParentId(_0x39a72d[_0x4c901f(0x15c)]),'label':_0x39a72d[_0x4c901f(0x17e)],'type':'folder','visible':!![],'sort':_0x39a72d[_0x4c901f(0x189)],'extend':{}},'description':_0x4c901f(0x186)+String(_0x39a72d[_0x4c901f(0x17e)])+_0x4c901f(0x160)});},async 'execute'(_0x65c3cc){const _0xfc5178=a119_0x2705ec;validateCreateInput(_0x65c3cc);const _0x262ff7=await buildCreatePlan(_0x65c3cc,![]),_0x33cf66=_0x262ff7['after'];await recheckMutationSnapshot(_0x65c3cc,_0x262ff7,'create\x20folder');let _0x2e578f;try{_0x2e578f=await createMenuEntity(_0x65c3cc[_0xfc5178(0x165)],_0x65c3cc[_0xfc5178(0x197)],{'parentId':toApiParentId(_0x33cf66[_0xfc5178(0x15c)]),'label':String(_0x33cf66[_0xfc5178(0x17e)]),'type':_0xfc5178(0x187),'visible':!![],'sort':Number(_0x33cf66[_0xfc5178(0x189)]),'extend':{}});}catch(_0x5d4321){const _0x2bf29b=mapMenuApiError(_0x5d4321,_0xfc5178(0x1a3));throw menuFailure(_0x2bf29b,_0x262ff7,{'stage':_0xfc5178(0x156),'failed':{}});}const _0x5b671b=Number(_0x2e578f['id']);if(!Number[_0xfc5178(0x180)](_0x5b671b)||_0x5b671b<=0x0){const _0x4efc1c=menuError(_0xfc5178(0x166),_0xfc5178(0x199),_0xfc5178(0x171));throw menuFailure(_0x4efc1c,_0x262ff7,{'stage':_0xfc5178(0x18b),'failed':{'createdId':_0x2e578f['id']??null},'warnings':[_0xfc5178(0x177)],'verification':{'status':_0xfc5178(0x188),'lookupCommand':_0xfc5178(0x173)}});}const _0x4d9de9=typeof _0x2e578f[_0xfc5178(0x194)]==='string'?_0x2e578f['path']:'';if(!_0x4d9de9['trim']()){const _0x4bdb41=menuError(_0xfc5178(0x166),_0xfc5178(0x170)+_0x5b671b+_0xfc5178(0x183),_0xfc5178(0x17d));throw menuFailure(_0x4bdb41,_0x262ff7,{'stage':_0xfc5178(0x18b),'succeeded':[{'id':_0x5b671b,'created':!![]}],'failed':{'id':_0x5b671b,'generatedPathConfirmed':![]},'warnings':[_0xfc5178(0x161)+_0x5b671b+_0xfc5178(0x195)],'after':{..._0x33cf66,'id':_0x5b671b,'path':_0x4d9de9},'verification':{'status':_0xfc5178(0x188),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x5b671b}});}let _0x476e24;try{_0x476e24=await fetchMenuSnapshot(_0x65c3cc[_0xfc5178(0x165)],_0x65c3cc['cookie']);}catch(_0x494f41){const _0xd8c800=describeMenuErrorCause(_0x494f41,_0xfc5178(0x192),_0x5b671b),_0x102ebf=asVerificationError(_0x494f41,'Folder\x20'+_0x5b671b+_0xfc5178(0x15f));throw menuFailure(_0x102ebf,_0x262ff7,{'stage':'verification','succeeded':[{'id':_0x5b671b,'created':!![],'path':_0x4d9de9}],'failed':{'id':_0x5b671b,'finalFactsConfirmed':![],..._0xd8c800},'warnings':['Folder\x20'+_0x5b671b+_0xfc5178(0x16d)+JSON[_0xfc5178(0x18a)](_0x4d9de9)+_0xfc5178(0x167)],'after':{..._0x33cf66,'id':_0x5b671b,'path':_0x4d9de9},'verification':{'status':_0xfc5178(0x188),'lookupCommand':_0xfc5178(0x173),'targetId':_0x5b671b}});}const _0x1e14c2=_0x476e24[_0xfc5178(0x19b)][_0xfc5178(0x178)](_0x5b671b);let _0x2e1899;try{assertVerified(Boolean(_0x1e14c2),_0xfc5178(0x17a)+_0x5b671b+_0xfc5178(0x17f)),_0x2e1899=_0x1e14c2,assertVerified(_0x2e1899[_0xfc5178(0x155)]==='folder',_0xfc5178(0x19c)+_0x5b671b+'\x20is\x20not\x20type\x20folder.'),assertVerified(_0x2e1899['label']===_0x33cf66[_0xfc5178(0x17e)],_0xfc5178(0x17a)+_0x5b671b+_0xfc5178(0x196)),assertVerified(_0x2e1899[_0xfc5178(0x194)]===_0x4d9de9&&Boolean(_0x2e1899['path'][_0xfc5178(0x175)]()),'Created\x20folder\x20'+_0x5b671b+_0xfc5178(0x18c)),assertVerified(_0x2e1899[_0xfc5178(0x15e)]===!![],_0xfc5178(0x17a)+_0x5b671b+_0xfc5178(0x159)),assertVerified(_0x2e1899[_0xfc5178(0x158)][_0xfc5178(0x16b)]===0x0,_0xfc5178(0x17a)+_0x5b671b+_0xfc5178(0x19f)),assertVerified(_0x2e1899[_0xfc5178(0x164)]===0x0,_0xfc5178(0x17a)+_0x5b671b+_0xfc5178(0x17c)),assertVerified(_0x2e1899['sort']===_0x33cf66[_0xfc5178(0x189)],_0xfc5178(0x17a)+_0x5b671b+_0xfc5178(0x18d)),assertVerified(_0x2e1899['parentId']===_0x33cf66[_0xfc5178(0x15c)],_0xfc5178(0x17a)+_0x5b671b+_0xfc5178(0x19a)+(_0x2e1899['parentId']??_0xfc5178(0x182))+'.'),assertVerified(_0x2e1899[_0xfc5178(0x1a2)]==null,_0xfc5178(0x17a)+_0x5b671b+_0xfc5178(0x190));const _0x23ebc1=_0x2e1899[_0xfc5178(0x15c)]==null?undefined:requireFolder(_0x476e24,_0x2e1899['parentId']);assertVerified(_0x2e1899[_0xfc5178(0x185)]===(_0x23ebc1?_0x23ebc1[_0xfc5178(0x185)]+0x1:0x0),'Created\x20folder\x20'+_0x5b671b+_0xfc5178(0x154));}catch(_0x1ac8a0){const _0x471d87=describeMenuErrorCause(_0x1ac8a0,_0xfc5178(0x192),_0x5b671b),_0x3bd4cd=asVerificationError(_0x1ac8a0,'Folder\x20'+_0x5b671b+'\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract');throw menuFailure(_0x3bd4cd,_0x262ff7,{'stage':'verification','succeeded':[{'id':_0x5b671b,'created':!![],'path':_0x4d9de9}],'failed':{'id':_0x5b671b,'finalFactsConfirmed':![],..._0x471d87},'warnings':[_0xfc5178(0x161)+_0x5b671b+_0xfc5178(0x16a)],'after':_0x1e14c2??{..._0x33cf66,'id':_0x5b671b,'path':_0x4d9de9},'verification':{'status':_0xfc5178(0x188),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x5b671b}});}const _0x3fcd46=mutationResult({..._0x262ff7,'after':_0x2e1899,'dryRun':![],'succeeded':[{'id':_0x5b671b,'type':_0xfc5178(0x187),'path':_0x4d9de9}],'verification':{'checkedBy':_0xfc5178(0x198),'snapshotHash':_0x476e24['hash'],'folder':!![],'path':_0x4d9de9,'emptyResources':!![]}});return{'ok':!![],'data':_0x3fcd46,'message':_0xfc5178(0x174)+_0x5b671b+'.'};}};function validateCreateInput(_0x3a3ba3){const _0x580dc3=a119_0x2705ec,_0x265e3a=_0x3a3ba3[_0x580dc3(0x16c)](_0x580dc3(0x17e))[_0x580dc3(0x175)]();if(!_0x265e3a)throw CliErrors[_0x580dc3(0x193)](_0x580dc3(0x17e));parseParentId(_0x3a3ba3,_0x580dc3(0x18e)),validateSort(_0x3a3ba3);}async function buildCreatePlan(_0xf88b53,_0x1237e8){const _0xc2b763=a119_0x2705ec,_0x2d26a4=await fetchMutationSnapshot(_0xf88b53,_0xc2b763(0x1a3)),_0x5ce3ff=parseParentId(_0xf88b53,_0xc2b763(0x18e))??null;if(_0x5ce3ff!=null)requireFolder(_0x2d26a4,_0x5ce3ff);const _0x49bab8=validateSort(_0xf88b53),_0x11551e=_0x49bab8??nextSiblingSort(_0x2d26a4,_0x5ce3ff,_0xc2b763(0x187)),_0x527d13=_0xf88b53['str'](_0xc2b763(0x17e))[_0xc2b763(0x175)]();return mutationResult({'operation':_0xc2b763(0x172),'selector':{'label':_0x527d13,'parentId':_0x5ce3ff},'before':null,'after':{'id':null,'parentId':_0x5ce3ff,'label':_0x527d13,'path':'<platform-generated>','type':_0xc2b763(0x187),'visible':!![],'sort':_0x11551e,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x1237e8,'backend':[...BACKEND],'plannedActions':[{'stage':_0xc2b763(0x16e),'method':_0xc2b763(0x191),'path':_0xc2b763(0x157),'body':{'parentId':toApiParentId(_0x5ce3ff),'label':_0x527d13,'type':_0xc2b763(0x187),'visible':!![],'sort':_0x11551e,'extend':{}}}],'snapshotHash':_0x2d26a4[_0xc2b763(0x15d)],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
|
|
1
|
+
const a119_0x1cac34=a119_0x1161;(function(_0x322303,_0x1b3e57){const _0xc89753=a119_0x1161,_0x20a94b=_0x322303();while(!![]){try{const _0x36255c=parseInt(_0xc89753(0x195))/0x1*(-parseInt(_0xc89753(0x1ac))/0x2)+parseInt(_0xc89753(0x18f))/0x3+-parseInt(_0xc89753(0x1d1))/0x4+parseInt(_0xc89753(0x1b3))/0x5*(parseInt(_0xc89753(0x1b7))/0x6)+-parseInt(_0xc89753(0x1d3))/0x7+parseInt(_0xc89753(0x18c))/0x8*(-parseInt(_0xc89753(0x1d2))/0x9)+parseInt(_0xc89753(0x199))/0xa*(parseInt(_0xc89753(0x1c1))/0xb);if(_0x36255c===_0x1b3e57)break;else _0x20a94b['push'](_0x20a94b['shift']());}catch(_0x3f3d99){_0x20a94b['push'](_0x20a94b['shift']());}}}(a119_0x3b02,0xada2b));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':'POST','path':a119_0x1cac34(0x1d4)}];export const menuGroupCreate={'service':a119_0x1cac34(0x1c3),'command':a119_0x1cac34(0x191),'description':a119_0x1cac34(0x18b),'risk':a119_0x1cac34(0x1c9),'structuredErrors':!![],'flags':[{'name':a119_0x1cac34(0x1a8),'type':a119_0x1cac34(0x1b4),'required':!![],'description':'Folder\x20label'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x443fce){validateCreateInput(_0x443fce);},async 'dryRun'(_0x411d8d){const _0xa2458b=a119_0x1cac34,_0x1bd348=await buildCreatePlan(_0x411d8d,!![]),_0x122e7d=_0x1bd348[_0xa2458b(0x1c0)];return menuDryRunResult(_0x1bd348,{'method':_0xa2458b(0x1b5),'url':_0xa2458b(0x1d4),'body':{'parentId':toApiParentId(_0x122e7d[_0xa2458b(0x1c2)]),'label':_0x122e7d['label'],'type':'folder','visible':!![],'sort':_0x122e7d['sort'],'extend':{}},'description':_0xa2458b(0x1aa)+String(_0x122e7d[_0xa2458b(0x1a8)])+_0xa2458b(0x1c8)});},async 'execute'(_0x335a0d){const _0x28ff96=a119_0x1cac34;validateCreateInput(_0x335a0d);const _0x5f077a=await buildCreatePlan(_0x335a0d,![]),_0x32a306=_0x5f077a[_0x28ff96(0x1c0)];await recheckMutationSnapshot(_0x335a0d,_0x5f077a,_0x28ff96(0x1b6));let _0x104a25;try{_0x104a25=await createMenuEntity(_0x335a0d[_0x28ff96(0x1b0)],_0x335a0d['cookie'],{'parentId':toApiParentId(_0x32a306[_0x28ff96(0x1c2)]),'label':String(_0x32a306[_0x28ff96(0x1a8)]),'type':_0x28ff96(0x1d5),'visible':!![],'sort':Number(_0x32a306['sort']),'extend':{}});}catch(_0x354501){const _0x125ed6=mapMenuApiError(_0x354501,_0x28ff96(0x1b6));throw menuFailure(_0x125ed6,_0x5f077a,{'stage':'create','failed':{}});}const _0x1cd4d8=Number(_0x104a25['id']);if(!Number[_0x28ff96(0x19d)](_0x1cd4d8)||_0x1cd4d8<=0x0){const _0x15140b=menuError('menu_create_response_invalid',_0x28ff96(0x1b2),_0x28ff96(0x1bf));throw menuFailure(_0x15140b,_0x5f077a,{'stage':_0x28ff96(0x1bd),'failed':{'createdId':_0x104a25['id']??null},'warnings':[_0x28ff96(0x1ad)],'verification':{'status':_0x28ff96(0x1cc),'lookupCommand':_0x28ff96(0x198)}});}const _0x27645e=typeof _0x104a25[_0x28ff96(0x19f)]==='string'?_0x104a25['path']:'';if(!_0x27645e['trim']()){const _0x2b7cf7=menuError(_0x28ff96(0x18e),_0x28ff96(0x19e)+_0x1cd4d8+_0x28ff96(0x194),_0x28ff96(0x18d));throw menuFailure(_0x2b7cf7,_0x5f077a,{'stage':_0x28ff96(0x1bd),'succeeded':[{'id':_0x1cd4d8,'created':!![]}],'failed':{'id':_0x1cd4d8,'generatedPathConfirmed':![]},'warnings':['Folder\x20'+_0x1cd4d8+_0x28ff96(0x1cb)],'after':{..._0x32a306,'id':_0x1cd4d8,'path':_0x27645e},'verification':{'status':_0x28ff96(0x1cc),'lookupCommand':_0x28ff96(0x198),'targetId':_0x1cd4d8}});}let _0x251df4;try{_0x251df4=await fetchMenuSnapshot(_0x335a0d[_0x28ff96(0x1b0)],_0x335a0d[_0x28ff96(0x1b8)]);}catch(_0x558641){const _0x56ab31=describeMenuErrorCause(_0x558641,_0x28ff96(0x1a2),_0x1cd4d8),_0x5cad54=asVerificationError(_0x558641,_0x28ff96(0x1a9)+_0x1cd4d8+_0x28ff96(0x1a1));throw menuFailure(_0x5cad54,_0x5f077a,{'stage':_0x28ff96(0x1ae),'succeeded':[{'id':_0x1cd4d8,'created':!![],'path':_0x27645e}],'failed':{'id':_0x1cd4d8,'finalFactsConfirmed':![],..._0x56ab31},'warnings':['Folder\x20'+_0x1cd4d8+'\x20may\x20exist\x20online\x20at\x20path\x20'+JSON['stringify'](_0x27645e)+_0x28ff96(0x192)],'after':{..._0x32a306,'id':_0x1cd4d8,'path':_0x27645e},'verification':{'status':'failed','lookupCommand':_0x28ff96(0x198),'targetId':_0x1cd4d8}});}const _0x1d293f=_0x251df4['byId'][_0x28ff96(0x1bb)](_0x1cd4d8);let _0x5782d7;try{assertVerified(Boolean(_0x1d293f),'Created\x20folder\x20'+_0x1cd4d8+_0x28ff96(0x1a0)),_0x5782d7=_0x1d293f,assertVerified(_0x5782d7[_0x28ff96(0x19a)]===_0x28ff96(0x1d5),_0x28ff96(0x1a7)+_0x1cd4d8+'\x20is\x20not\x20type\x20folder.'),assertVerified(_0x5782d7[_0x28ff96(0x1a8)]===_0x32a306['label'],'Created\x20folder\x20'+_0x1cd4d8+_0x28ff96(0x1a4)),assertVerified(_0x5782d7[_0x28ff96(0x19f)]===_0x27645e&&Boolean(_0x5782d7['path'][_0x28ff96(0x1a6)]()),'Created\x20folder\x20'+_0x1cd4d8+'\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.'),assertVerified(_0x5782d7[_0x28ff96(0x1c5)]===!![],_0x28ff96(0x1ca)+_0x1cd4d8+_0x28ff96(0x196)),assertVerified(_0x5782d7[_0x28ff96(0x1a3)]['length']===0x0,_0x28ff96(0x1ca)+_0x1cd4d8+_0x28ff96(0x1cf)),assertVerified(_0x5782d7[_0x28ff96(0x1c7)]===0x0,_0x28ff96(0x1ca)+_0x1cd4d8+_0x28ff96(0x19c)),assertVerified(_0x5782d7['sort']===_0x32a306[_0x28ff96(0x197)],_0x28ff96(0x1ca)+_0x1cd4d8+_0x28ff96(0x190)),assertVerified(_0x5782d7[_0x28ff96(0x1c2)]===_0x32a306[_0x28ff96(0x1c2)],'Created\x20folder\x20'+_0x1cd4d8+_0x28ff96(0x1a5)+(_0x5782d7[_0x28ff96(0x1c2)]??_0x28ff96(0x1d0))+'.'),assertVerified(_0x5782d7['pageId']==null,_0x28ff96(0x1ca)+_0x1cd4d8+'\x20unexpectedly\x20owns\x20a\x20page.');const _0x497bff=_0x5782d7['parentId']==null?undefined:requireFolder(_0x251df4,_0x5782d7[_0x28ff96(0x1c2)]);assertVerified(_0x5782d7[_0x28ff96(0x19b)]===(_0x497bff?_0x497bff[_0x28ff96(0x19b)]+0x1:0x0),_0x28ff96(0x1ca)+_0x1cd4d8+_0x28ff96(0x1c4));}catch(_0x1507c2){const _0x5f20c2=describeMenuErrorCause(_0x1507c2,_0x28ff96(0x1a2),_0x1cd4d8),_0x1e15b1=asVerificationError(_0x1507c2,'Folder\x20'+_0x1cd4d8+_0x28ff96(0x1b1));throw menuFailure(_0x1e15b1,_0x5f077a,{'stage':_0x28ff96(0x1ae),'succeeded':[{'id':_0x1cd4d8,'created':!![],'path':_0x27645e}],'failed':{'id':_0x1cd4d8,'finalFactsConfirmed':![],..._0x5f20c2},'warnings':[_0x28ff96(0x1a9)+_0x1cd4d8+_0x28ff96(0x1b9)],'after':_0x1d293f??{..._0x32a306,'id':_0x1cd4d8,'path':_0x27645e},'verification':{'status':_0x28ff96(0x1cc),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x1cd4d8}});}const _0x42b3d8=mutationResult({..._0x5f077a,'after':_0x5782d7,'dryRun':![],'succeeded':[{'id':_0x1cd4d8,'type':'folder','path':_0x27645e}],'verification':{'checkedBy':_0x28ff96(0x1ba),'snapshotHash':_0x251df4[_0x28ff96(0x1af)],'folder':!![],'path':_0x27645e,'emptyResources':!![]}});return{'ok':!![],'data':_0x42b3d8,'message':_0x28ff96(0x1ce)+_0x1cd4d8+'.'};}};function a119_0x1161(_0x389567,_0x9cf50){_0x389567=_0x389567-0x18b;const _0x3b022a=a119_0x3b02();let _0x116157=_0x3b022a[_0x389567];return _0x116157;}function a119_0x3b02(){const _0x30be95=['create-folder','1410296bFyjeK','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','verification','hash','appCode','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','4033530EzzmPC','string','POST','create\x20folder','6NXYcvm','cookie','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','menu\x20list','get','str','create-response-validation','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','after','41187509TSysqL','parentId','menu','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','visible','parent-id','childrenCount','\x22\x20with\x20a\x20platform-generated\x20path.','write','Created\x20folder\x20','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','failed','flagMissing','Created\x20menu\x20folder\x20','\x20has\x20resources.','root','2730972oWWKnp','9OxbALk','8243235xLkKGH','/smartapi/menu/create','folder','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','7434456PGgVvE','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','menu_create_response_invalid','1080411awynYl','\x20has\x20an\x20unexpected\x20sort.','group-create',';\x20verify\x20it\x20before\x20retrying.','<platform-generated>','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','2EMWQub','\x20is\x20not\x20visible.','sort','rabetbase\x20menu\x20list\x20--format\x20json','10EuKNxg','type','depth','\x20is\x20not\x20empty.','isSafeInteger','Menu\x20create\x20response\x20for\x20folder\x20','path','\x20is\x20missing\x20from\x20menu\x20list.','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','verify\x20folder\x20creation','resources','\x20has\x20an\x20unexpected\x20label.','\x20has\x20unexpected\x20parent\x20','trim','Created\x20menu\x20','label','Folder\x20','Would\x20create\x20empty\x20folder\x20\x22'];a119_0x3b02=function(){return _0x30be95;};return a119_0x3b02();}function validateCreateInput(_0x27ba20){const _0x2a3b5c=a119_0x1cac34,_0x3af33c=_0x27ba20[_0x2a3b5c(0x1bc)](_0x2a3b5c(0x1a8))[_0x2a3b5c(0x1a6)]();if(!_0x3af33c)throw CliErrors[_0x2a3b5c(0x1cd)]('label');parseParentId(_0x27ba20,_0x2a3b5c(0x1c6)),validateSort(_0x27ba20);}async function buildCreatePlan(_0x4efc5c,_0x5a7991){const _0x3d616a=a119_0x1cac34,_0x1437d1=await fetchMutationSnapshot(_0x4efc5c,_0x3d616a(0x1b6)),_0x172bea=parseParentId(_0x4efc5c,_0x3d616a(0x1c6))??null;if(_0x172bea!=null)requireFolder(_0x1437d1,_0x172bea);const _0x17d0ed=validateSort(_0x4efc5c),_0x1a74d6=_0x17d0ed??nextSiblingSort(_0x1437d1,_0x172bea,_0x3d616a(0x1d5)),_0x2939b5=_0x4efc5c[_0x3d616a(0x1bc)]('label')['trim']();return mutationResult({'operation':'group-create','selector':{'label':_0x2939b5,'parentId':_0x172bea},'before':null,'after':{'id':null,'parentId':_0x172bea,'label':_0x2939b5,'path':_0x3d616a(0x193),'type':_0x3d616a(0x1d5),'visible':!![],'sort':_0x1a74d6,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x5a7991,'backend':[...BACKEND],'plannedActions':[{'stage':_0x3d616a(0x1ab),'method':'POST','path':_0x3d616a(0x1d4),'body':{'parentId':toApiParentId(_0x172bea),'label':_0x2939b5,'type':'folder','visible':!![],'sort':_0x1a74d6,'extend':{}}}],'snapshotHash':_0x1437d1[_0x3d616a(0x1af)],'warnings':[_0x3d616a(0x1be)]});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a120_0x4b688e=a120_0x5247;function a120_0x5247(_0x20f445,_0x1eff22){_0x20f445=_0x20f445-0xd9;const _0x39b346=a120_0x39b3();let _0x524723=_0x39b346[_0x20f445];return _0x524723;}(function(_0x431403,_0x3f8665){const _0x42e32f=a120_0x5247,_0x35d1cc=_0x431403();while(!![]){try{const _0x3a98eb=-parseInt(_0x42e32f(0xe7))/0x1*(-parseInt(_0x42e32f(0xee))/0x2)+-parseInt(_0x42e32f(0xe2))/0x3+-parseInt(_0x42e32f(0xe4))/0x4+-parseInt(_0x42e32f(0xd9))/0x5+parseInt(_0x42e32f(0x102))/0x6*(-parseInt(_0x42e32f(0xf7))/0x7)+-parseInt(_0x42e32f(0x105))/0x8+-parseInt(_0x42e32f(0xef))/0x9*(-parseInt(_0x42e32f(0xfa))/0xa);if(_0x3a98eb===_0x3f8665)break;else _0x35d1cc['push'](_0x35d1cc['shift']());}catch(_0x2f2a26){_0x35d1cc['push'](_0x35d1cc['shift']());}}}(a120_0x39b3,0x2d985));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':a120_0x4b688e(0xeb),'path':a120_0x4b688e(0xfe)}];export const menuGroupUpdate={'service':a120_0x4b688e(0xec),'command':a120_0x4b688e(0xfb),'description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a120_0x4b688e(0x106),'structuredErrors':!![],'rejectedFlags':[{'name':'parent-id','message':'Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','hint':'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.'}],'flags':[MENU_ID_FLAG,{'name':a120_0x4b688e(0xe9),'type':a120_0x4b688e(0xe1),'description':'New\x20folder\x20label'},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3bc8dc){validateUpdateInput(_0x3bc8dc);},async 'dryRun'(_0x116841){const _0x4c68a8=a120_0x4b688e;validateUpdateInput(_0x116841);const {plan:_0x6f21be,patch:_0xa0a45e}=await buildUpdatePlan(_0x116841,!![]);return menuDryRunResult(_0x6f21be,{'method':'POST','url':_0x4c68a8(0xfe),'body':_0xa0a45e,'description':'Would\x20update\x20folder\x20'+_0x6f21be['selector']['id']+'.'});},async 'execute'(_0x26e431){const _0xebcfdb=a120_0x4b688e;validateUpdateInput(_0x26e431);const {plan:_0x54ffb3,patch:_0x3fffee,noChanges:_0x6cc181}=await buildUpdatePlan(_0x26e431,![]),_0x24e6c0=Number(_0x54ffb3[_0xebcfdb(0xdf)]['id']),_0xe6ad9f=await recheckMutationSnapshot(_0x26e431,_0x54ffb3,_0xebcfdb(0x107),_0x24e6c0);if(!_0x6cc181)try{await updateMenuEntity(_0x26e431[_0xebcfdb(0x109)],_0x26e431[_0xebcfdb(0xf9)],_0x3fffee);}catch(_0x34725f){const _0x362b56=mapMenuApiError(_0x34725f,_0xebcfdb(0x107),_0x24e6c0);throw menuFailure(_0x362b56,_0x54ffb3,{'stage':_0xebcfdb(0x100),'failed':{'id':_0x24e6c0}});}let _0x433def=_0xe6ad9f,_0x5b8cf8;try{!_0x6cc181&&(_0x433def=await fetchMenuSnapshot(_0x26e431[_0xebcfdb(0x109)],_0x26e431[_0xebcfdb(0xf9)])),_0x5b8cf8=requireMenu(_0x433def,_0x24e6c0),verifyPatch(_0x5b8cf8,_0x3fffee),_0x5b8cf8[_0xebcfdb(0xdd)]!=null&&requireFolder(_0x433def,_0x5b8cf8['parentId']);}catch(_0x1af101){const _0x494939=describeMenuErrorCause(_0x1af101,'verify\x20folder\x20update',_0x24e6c0),_0xc026c5=asVerificationError(_0x1af101,_0xebcfdb(0x101)+_0x24e6c0+_0xebcfdb(0xdc));throw menuFailure(_0xc026c5,_0x54ffb3,{'stage':'verification','succeeded':[{'id':_0x24e6c0,'updateRequested':!_0x6cc181,'skipped':_0x6cc181}],'failed':{'id':_0x24e6c0,'requestedStateConfirmed':![],..._0x494939},'warnings':[_0xebcfdb(0xde)],'verification':{'status':'failed','lookupCommand':_0xebcfdb(0xf4),'targetId':_0x24e6c0}});}const _0x38be95=mutationResult({..._0x54ffb3,'after':_0x5b8cf8,'dryRun':![],'succeeded':[{'id':_0x24e6c0,'updated':!_0x6cc181,'skipped':_0x6cc181}],'verification':{'checkedBy':_0xebcfdb(0xfc),'snapshotHash':_0x433def['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x38be95,'message':_0x6cc181?_0xebcfdb(0xf6)+_0x24e6c0+_0xebcfdb(0xff):'Updated\x20folder\x20'+_0x24e6c0+'.'};}};function validateUpdateInput(_0x135744){const _0xf9a54d=a120_0x4b688e;validateExactId(_0x135744);if(hasFlag(_0x135744,_0xf9a54d(0xe0)))throw CliErrors[_0xf9a54d(0xe8)](_0xf9a54d(0xe5),_0xf9a54d(0xf0));if(!hasFlag(_0x135744,_0xf9a54d(0xe9))&&!hasFlag(_0x135744,_0xf9a54d(0x104)))throw CliErrors['validation'](_0xf9a54d(0x108));if(hasFlag(_0x135744,'label')&&!_0x135744[_0xf9a54d(0xe3)](_0xf9a54d(0xe9))[_0xf9a54d(0xf8)]())throw CliErrors['validation'](_0xf9a54d(0xed));validateSort(_0x135744);}async function buildUpdatePlan(_0x7eef25,_0x5e1bb3){const _0xb0ee45=a120_0x4b688e,_0x470543=validateExactId(_0x7eef25),_0x266793=await fetchMutationSnapshot(_0x7eef25,_0xb0ee45(0x107),_0x470543),_0x15476e=requireMenu(_0x266793,_0x470543);if(_0x15476e[_0xb0ee45(0x103)]!=='folder')throw menuError(_0xb0ee45(0xf5),'Menu\x20'+_0x470543+_0xb0ee45(0xf1)+(_0x15476e[_0xb0ee45(0x103)]||_0xb0ee45(0xe6))+_0xb0ee45(0xfd),'Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.');assertExpectedState(_0x7eef25,_0x15476e);const _0x240851={'id':_0x470543},_0x471b69={..._0x15476e};if(hasFlag(_0x7eef25,'label')){const _0x5e7711=_0x7eef25['str'](_0xb0ee45(0xe9))['trim']();_0x240851['label']=_0x5e7711,_0x471b69[_0xb0ee45(0xe9)]=_0x5e7711;}if(hasFlag(_0x7eef25,'sort')){const _0x4a2df0=validateSort(_0x7eef25);_0x240851[_0xb0ee45(0x104)]=_0x4a2df0,_0x471b69['sort']=_0x4a2df0;}const _0x357c30=sameRequestedState(_0x15476e,_0x471b69),_0x12378d=_0x357c30?[_0xb0ee45(0xdb)]:[];return{'patch':_0x240851,'noChanges':_0x357c30,'plan':mutationResult({'operation':_0xb0ee45(0xfb),'selector':{'id':_0x470543},'before':_0x15476e,'after':_0x471b69,'dryRun':_0x5e1bb3,'backend':[...BACKEND],'snapshotHash':_0x266793['hash'],'warnings':_0x12378d})};}function sameRequestedState(_0x1562dc,_0x2c5005){const _0x1d1db7=a120_0x4b688e;return _0x1562dc[_0x1d1db7(0xe9)]===_0x2c5005[_0x1d1db7(0xe9)]&&_0x1562dc['sort']===_0x2c5005[_0x1d1db7(0x104)];}function a120_0x39b3(){const _0x154185=['unknown','95261RFumgg','validation','label','\x20is\x20no\x20longer\x20type\x20folder.','POST','menu','--label\x20cannot\x20be\x20empty.','2KTiSLr','2071089jwDkPb','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','\x20is\x20type\x20\x22','folder','Menu\x20','rabetbase\x20menu\x20list\x20--format\x20json','menu_not_folder','Folder\x20','454405aQlYkF','trim','cookie','40RKgZHl','group-update','menu\x20list','\x22,\x20not\x20folder.','/smartapi/menu/update','\x20already\x20matches\x20the\x20requested\x20state.','update','Update\x20request\x20for\x20folder\x20','18xrIFNn','type','sort','2573472foHzAQ','write','update\x20folder','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','appCode','604970OaCjYf','\x20label\x20update\x20did\x20not\x20take\x20effect.','No\x20online\x20fields\x20would\x20change.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','parentId','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','selector','parent-id','string','571542UJoDZk','str','4204KUqiqu','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.'];a120_0x39b3=function(){return _0x154185;};return a120_0x39b3();}function verifyPatch(_0x5047a8,_0x56aa0e){const _0x24739d=a120_0x4b688e;assertVerified(_0x5047a8['type']===_0x24739d(0xf2),_0x24739d(0xf3)+_0x5047a8['id']+_0x24739d(0xea)),_0x56aa0e['label']!==undefined&&assertVerified(_0x5047a8[_0x24739d(0xe9)]===_0x56aa0e['label'],_0x24739d(0xf6)+_0x5047a8['id']+_0x24739d(0xda)),_0x56aa0e[_0x24739d(0x104)]!==undefined&&assertVerified(_0x5047a8['sort']===_0x56aa0e['sort'],_0x24739d(0xf6)+_0x5047a8['id']+'\x20sort\x20update\x20did\x20not\x20take\x20effect.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4cb82b,_0x21924f){const _0x1863bf=a121_0x137a,_0x60fcbb=_0x4cb82b();while(!![]){try{const _0x595ff0=-parseInt(_0x1863bf(0x1b0))/0x1+-parseInt(_0x1863bf(0x1b1))/0x2+parseInt(_0x1863bf(0x1b3))/0x3+parseInt(_0x1863bf(0x1b6))/0x4+parseInt(_0x1863bf(0x1b4))/0x5*(-parseInt(_0x1863bf(0x1b5))/0x6)+-parseInt(_0x1863bf(0x1b7))/0x7+parseInt(_0x1863bf(0x1b2))/0x8;if(_0x595ff0===_0x21924f)break;else _0x60fcbb['push'](_0x60fcbb['shift']());}catch(_0x5be037){_0x60fcbb['push'](_0x60fcbb['shift']());}}}(a121_0x163f,0x4e2a3));function a121_0x163f(){const _0x11c973=['5251064DbDlSD','967950mxBxdG','1085815XpoNbI','12Pbauni','2355424NMpKXW','876442mLmgaz','490727ayozsq','394934QMoNcR'];a121_0x163f=function(){return _0x11c973;};return a121_0x163f();}import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';function a121_0x137a(_0x56d2a3,_0x5c0ca7){_0x56d2a3=_0x56d2a3-0x1b0;const _0x163f42=a121_0x163f();let _0x137a50=_0x163f42[_0x56d2a3];return _0x137a50;}import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a122_0x3913e0=a122_0x4ace;function a122_0x403a(){const _0x4a2617=['Found\x20','1430005uGgDzZ','total','4563cEqDlj','map','68RPRbGn','appCode','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','10023456nBdpus','menu','189237GuWVJR','menus','20770RyaIeg','7958TSTuDQ','3695034AupjJG','list','cookie','hash','bool','verbose','33768394AhIMup','\x20menu(s)','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','boolean','18ezKqkK','309JcudGv','No\x20menus\x20found.'];a122_0x403a=function(){return _0x4a2617;};return a122_0x403a();}(function(_0x898075,_0x3d08ef){const _0x19d9a7=a122_0x4ace,_0xc358f3=_0x898075();while(!![]){try{const _0x241f92=-parseInt(_0x19d9a7(0x1e1))/0x1*(-parseInt(_0x19d9a7(0x1f0))/0x2)+parseInt(_0x19d9a7(0x1ed))/0x3*(parseInt(_0x19d9a7(0x1e8))/0x4)+parseInt(_0x19d9a7(0x1e4))/0x5*(parseInt(_0x19d9a7(0x1e0))/0x6)+parseInt(_0x19d9a7(0x1f1))/0x7+parseInt(_0x19d9a7(0x1eb))/0x8+parseInt(_0x19d9a7(0x1e6))/0x9*(-parseInt(_0x19d9a7(0x1ef))/0xa)+-parseInt(_0x19d9a7(0x1f7))/0xb;if(_0x241f92===_0x3d08ef)break;else _0xc358f3['push'](_0xc358f3['shift']());}catch(_0x59dc6b){_0xc358f3['push'](_0xc358f3['shift']());}}}(a122_0x403a,0xc7a5e));function a122_0x4ace(_0x2bdbbf,_0x7b8bb4){_0x2bdbbf=_0x2bdbbf-0x1e0;const _0x403aee=a122_0x403a();let _0x4ace50=_0x403aee[_0x2bdbbf];return _0x4ace50;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a122_0x3913e0(0x1ec),'command':a122_0x3913e0(0x1f2),'description':a122_0x3913e0(0x1f9),'risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':a122_0x3913e0(0x1f6),'type':a122_0x3913e0(0x1fa),'description':a122_0x3913e0(0x1ea)}],async 'execute'(_0x565870){const _0x37a3ee=a122_0x3913e0,_0x4e1d3c=_0x565870[_0x37a3ee(0x1f5)]('verbose'),_0x1a0eec=await fetchMenuSnapshot(_0x565870[_0x37a3ee(0x1e9)],_0x565870[_0x37a3ee(0x1f3)],{'verbose':_0x4e1d3c});return{'ok':!![],'data':{'total':_0x1a0eec[_0x37a3ee(0x1e5)],'snapshotHash':_0x1a0eec[_0x37a3ee(0x1f4)],'menus':_0x1a0eec[_0x37a3ee(0x1ee)][_0x37a3ee(0x1e7)](toMenuListItem)},'message':_0x1a0eec[_0x37a3ee(0x1e5)]===0x0?_0x37a3ee(0x1e2):_0x37a3ee(0x1e3)+_0x1a0eec['total']+_0x37a3ee(0x1f8)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a123_0x2a9750=a123_0x28f4;(function(_0x58da9e,_0x4b77bb){const _0x2659c8=a123_0x28f4,_0xd3631b=_0x58da9e();while(!![]){try{const _0x55b4b6=-parseInt(_0x2659c8(0xd1))/0x1*(-parseInt(_0x2659c8(0xd3))/0x2)+-parseInt(_0x2659c8(0xdc))/0x3+-parseInt(_0x2659c8(0xe4))/0x4+parseInt(_0x2659c8(0xf3))/0x5+-parseInt(_0x2659c8(0xca))/0x6+-parseInt(_0x2659c8(0xda))/0x7*(-parseInt(_0x2659c8(0xe3))/0x8)+-parseInt(_0x2659c8(0xf1))/0x9*(-parseInt(_0x2659c8(0xd2))/0xa);if(_0x55b4b6===_0x4b77bb)break;else _0xd3631b['push'](_0xd3631b['shift']());}catch(_0x1f3664){_0xd3631b['push'](_0xd3631b['shift']());}}}(a123_0x5afb,0xe59fa));function a123_0x28f4(_0x2b28a0,_0x1faa2a){_0x2b28a0=_0x2b28a0-0xc9;const _0x5afb26=a123_0x5afb();let _0x28f4da=_0x5afb26[_0x2b28a0];return _0x28f4da;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':a123_0x2a9750(0xef),'path':a123_0x2a9750(0xe9)}];export const menuMove={'service':a123_0x2a9750(0xd6),'command':'move','description':a123_0x2a9750(0xdb),'risk':a123_0x2a9750(0xde),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x431cda){validateMoveInput(_0x431cda);},async 'dryRun'(_0x2c8dec){const _0x47dbe1=a123_0x2a9750,{plan:_0x237569,patch:_0x598daf}=await buildMovePlan(_0x2c8dec,!![]);return menuDryRunResult(_0x237569,{'method':'POST','url':_0x47dbe1(0xe9),'body':{..._0x598daf,'appCode':_0x2c8dec[_0x47dbe1(0xe2)]},'description':'Would\x20move\x20menu\x20'+_0x598daf['id']+'.'});},async 'execute'(_0x4fd50e){const _0x1c9e71=a123_0x2a9750;validateMoveInput(_0x4fd50e);const {plan:_0x50a560,patch:_0x46daa6,noChanges:_0x3dafa3,snapshot:_0x352504}=await buildMovePlan(_0x4fd50e,![]),_0x3f105f=_0x46daa6['id'];if(!_0x3dafa3)try{await updateMenuEntity(_0x4fd50e[_0x1c9e71(0xe2)],_0x4fd50e[_0x1c9e71(0xcf)],_0x46daa6);}catch(_0x25184b){const _0x342cbd=mapMenuApiError(_0x25184b,_0x1c9e71(0xd8),_0x3f105f);throw menuFailure(_0x342cbd,_0x50a560,{'stage':_0x1c9e71(0xdf),'failed':{'id':_0x3f105f},'warnings':['The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x1c9e71(0xe7),'targetId':_0x3f105f,'lookupCommand':_0x1c9e71(0xf2)}});}let _0x1ed2e9,_0x2427c5;try{_0x1ed2e9=_0x3dafa3?_0x352504:await fetchMenuSnapshot(_0x4fd50e[_0x1c9e71(0xe2)],_0x4fd50e[_0x1c9e71(0xcf)]),_0x2427c5=requireMenu(_0x1ed2e9,_0x3f105f),verifyMove(_0x2427c5,_0x50a560[_0x1c9e71(0xe5)]),_0x2427c5['parentId']!==null&&requireFolder(_0x1ed2e9,_0x2427c5[_0x1c9e71(0xd9)]);}catch(_0x11e053){const _0x2676d3=describeMenuErrorCause(_0x11e053,_0x1c9e71(0xe8),_0x3f105f),_0x1056bb=asVerificationError(_0x11e053,'Move\x20request\x20for\x20menu\x20'+_0x3f105f+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x1056bb,_0x50a560,{'stage':_0x1c9e71(0xf0),'succeeded':[{'id':_0x3f105f,'updateRequested':!_0x3dafa3,'skipped':_0x3dafa3}],'failed':{'id':_0x3f105f,'requestedStateConfirmed':![],..._0x2676d3},'warnings':[_0x1c9e71(0xcb)],'verification':{'status':_0x1c9e71(0xe7),'targetId':_0x3f105f,'lookupCommand':_0x1c9e71(0xf2)}});}const _0x5cb3c8=mutationResult({..._0x50a560,'after':_0x2427c5,'dryRun':![],'succeeded':[{'id':_0x3f105f,'updated':!_0x3dafa3,'skipped':_0x3dafa3}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x1ed2e9[_0x1c9e71(0xeb)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x5cb3c8,'message':_0x3dafa3?_0x1c9e71(0xcd)+_0x3f105f+'\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.':_0x1c9e71(0xea)+_0x3f105f+'.'};}};function validateMoveInput(_0x4ac012){const _0x10192f=a123_0x2a9750;validateExactId(_0x4ac012),parseParentId(_0x4ac012,_0x10192f(0xe0),{'required':!![]}),parseParentId(_0x4ac012,'expect-parent-id',{'required':!![]}),validateSort(_0x4ac012);}function a123_0x5afb(){const _0x14e3a3=['after','menu_move_source_not_leaf','failed','verify\x20menu\x20move','/smartapi/menu/update','Moved\x20menu\x20','hash','type','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','\x20is\x20no\x20longer\x20a\x20leaf.','POST','verification','248463bUYyQJ','rabetbase\x20menu\x20list\x20--format\x20compress','9875iNidxK','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','expect-parent-id',',\x20current\x20','move\x20menu','5021622jIUgQi','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','menu_state_drift','Menu\x20','folder','cookie','childrenCount','149oZgGlZ','340oMYKux','7958VjwYhk','sort','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','menu','\x20is\x20now\x20type\x20folder.','move','parentId','1091048SERCDr','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','66483ZQRkLA','move-menu','write','update','parent-id','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','appCode','56emXhtt','3299584rEFPKy'];a123_0x5afb=function(){return _0x14e3a3;};return a123_0x5afb();}async function buildMovePlan(_0x28a6f7,_0x162bf0){const _0x13313b=a123_0x2a9750,_0xb8f58c=validateExactId(_0x28a6f7),_0x5e3895=parseParentId(_0x28a6f7,_0x13313b(0xe0),{'required':!![]}),_0xdd83be=parseParentId(_0x28a6f7,_0x13313b(0xf5),{'required':!![]}),_0x31e49d=validateSort(_0x28a6f7),_0xeaaba2=await fetchMutationSnapshot(_0x28a6f7,_0x13313b(0xc9),_0xb8f58c),_0x3d4941=requireMenu(_0xeaaba2,_0xb8f58c);if(_0x3d4941[_0x13313b(0xec)]===_0x13313b(0xce)||_0x3d4941[_0x13313b(0xd0)]!==0x0)throw menuError(_0x13313b(0xe6),_0x13313b(0xcd)+_0xb8f58c+'\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.',_0x13313b(0xe1));if(_0x3d4941[_0x13313b(0xd9)]!==_0xdd83be)throw menuError(_0x13313b(0xcc),_0x13313b(0xcd)+_0xb8f58c+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0xdd83be)+_0x13313b(0xf6)+formatParent(_0x3d4941[_0x13313b(0xd9)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');_0x5e3895!==null&&requireFolder(_0xeaaba2,_0x5e3895);const _0x54072f=_0x31e49d??(_0x3d4941[_0x13313b(0xd9)]===_0x5e3895?_0x3d4941[_0x13313b(0xd4)]??0x0:nextSiblingSort(_0xeaaba2,_0x5e3895,_0x13313b(0xd6))),_0x1cdcfe={..._0x3d4941,'parentId':_0x5e3895,'sort':_0x54072f},_0x48be2a={'id':_0xb8f58c,'parentId':toApiParentId(_0x5e3895),'sort':_0x54072f},_0x7bd0cc=_0x3d4941[_0x13313b(0xd9)]===_0x5e3895&&_0x3d4941['sort']===_0x54072f;return{'patch':_0x48be2a,'noChanges':_0x7bd0cc,'snapshot':_0xeaaba2,'plan':mutationResult({'operation':_0x13313b(0xd8),'selector':{'id':_0xb8f58c,'parentId':_0x5e3895},'before':_0x3d4941,'after':_0x1cdcfe,'dryRun':_0x162bf0,'backend':[...BACKEND],'plannedActions':[{'stage':_0x13313b(0xdd),'method':_0x13313b(0xef),'path':_0x13313b(0xe9),'body':{..._0x48be2a,'appCode':_0x28a6f7['appCode']}}],'snapshotHash':_0xeaaba2[_0x13313b(0xeb)],'warnings':_0x7bd0cc?[_0x13313b(0xed)]:[]})};}function verifyMove(_0x5deeea,_0x200483){const _0x40b02a=a123_0x2a9750;assertVerified(_0x5deeea[_0x40b02a(0xec)]!==_0x40b02a(0xce),_0x40b02a(0xcd)+_0x5deeea['id']+_0x40b02a(0xd7)),assertVerified(_0x5deeea['childrenCount']===0x0,_0x40b02a(0xcd)+_0x5deeea['id']+_0x40b02a(0xee)),assertVerified(_0x5deeea[_0x40b02a(0xd9)]===_0x200483['parentId'],_0x40b02a(0xcd)+_0x5deeea['id']+_0x40b02a(0xf4)),assertVerified(_0x5deeea[_0x40b02a(0xd4)]===_0x200483[_0x40b02a(0xd4)],'Menu\x20'+_0x5deeea['id']+_0x40b02a(0xd5));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a124_0x2b15(){const _0x1d2ade=['menu','start\x20menu\x20regroup','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','147bovThZ','menu\x20list','filter','7416XDXeho','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','submit-regroup-task','Menus\x20','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','readbackError','replace','applied','input','Regroup\x20task\x20','Label\x20of\x20the\x20new\x20root\x20folder','menu_regroup_already_applied','menu_regroup_label_conflict','knownStatus','17460iZakzp','menu_regroup_target_not_leaf','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','37460390mqBUdM','length','toLowerCase','30729aVaBfF',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','group','parentId','cookie','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','SUCCESS','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','some','isSafeInteger','plan\x20regroup','5AddibK','menu-ids','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','menu_regroup_target_label_missing','unconfirmed','string','join','label','map','status','\x20and\x20regroup\x20menu\x20ids\x20','--menu-ids\x20supports\x20at\x20most\x20','message','failed','\x20menus\x20per\x20regroup\x20request.','\x20--format\x20compress','hash','Menu\x20','\x20menu\x20list\x20--appcode\x20','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','split','appCode','298458MVYlyt','6902108lPYtom','<new-group-id>','validation','byId','Root\x20folder\x20label\x20','6pzWdHG','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','get','Regroup\x20readback\x20failed:\x20','menuIds','childrenCount','write','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','plan','FAILED','stringify','POST','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','taskId','trim','regroup-submit','type','579858CEdHMn','5194880CxdYQf','isTerminal','str','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','menus','flagMissing','start\x20regroup','sort','Regroup\x20task\x20accepted.\x20','/smartapi/menu/regroup','folder','Regroup\x20readback\x20also\x20failed:\x20'];a124_0x2b15=function(){return _0x1d2ade;};return a124_0x2b15();}const a124_0x1bcfbd=a124_0x45d6;(function(_0x14e341,_0x51098c){const _0xde1b2c=a124_0x45d6,_0x396081=_0x14e341();while(!![]){try{const _0x15688c=parseInt(_0xde1b2c(0x229))/0x1*(parseInt(_0xde1b2c(0x1f1))/0x2)+parseInt(_0xde1b2c(0x202))/0x3+-parseInt(_0xde1b2c(0x1ec))/0x4*(-parseInt(_0xde1b2c(0x1d2))/0x5)+-parseInt(_0xde1b2c(0x1eb))/0x6*(-parseInt(_0xde1b2c(0x212))/0x7)+parseInt(_0xde1b2c(0x215))/0x8*(parseInt(_0xde1b2c(0x223))/0x9)+-parseInt(_0xde1b2c(0x203))/0xa+-parseInt(_0xde1b2c(0x226))/0xb;if(_0x15688c===_0x51098c)break;else _0x396081['push'](_0x396081['shift']());}catch(_0x314ab6){_0x396081['push'](_0x396081['shift']());}}}(a124_0x2b15,0xe2ced));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a124_0x1bcfbd(0x1fc),'path':a124_0x1bcfbd(0x20c)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a124_0x1bcfbd(0x20f),'command':'regroup-start','description':'Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','risk':a124_0x1bcfbd(0x1f7),'structuredErrors':!![],'flags':[{'name':a124_0x1bcfbd(0x1dc),'type':a124_0x1bcfbd(0x1da),'required':!![],'description':a124_0x1bcfbd(0x21f)},{'name':'menu-ids','type':'string','required':!![],'description':a124_0x1bcfbd(0x216)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1fd09c){validateRegroupInput(_0x1fd09c);},async 'dryRun'(_0x16f3ad){const _0x3784fa=a124_0x1bcfbd;validateRegroupInput(_0x16f3ad);const _0x3ab3ff=await buildRegroupPlan(_0x16f3ad,!![]);return menuDryRunResult(_0x3ab3ff['plan'],{'method':'POST','url':_0x3784fa(0x20c),'body':_0x3ab3ff[_0x3784fa(0x21d)],'description':_0x3784fa(0x1d6)+JSON[_0x3784fa(0x1fb)](_0x3ab3ff['label'])+_0x3784fa(0x1df)+_0x3ab3ff[_0x3784fa(0x1f5)][_0x3784fa(0x1db)](',\x20')+_0x3784fa(0x22a)});},async 'execute'(_0x4b2f04){const _0x3003b8=a124_0x1bcfbd;validateRegroupInput(_0x4b2f04);const _0x233c86=await buildRegroupPlan(_0x4b2f04,![]);await recheckMutationSnapshot(_0x4b2f04,_0x233c86['plan'],_0x3003b8(0x209));const _0x5466a0=buildMenuLookupCommand(_0x4b2f04[_0x3003b8(0x1ea)]);let _0x553be3,_0x2a266a;try{_0x553be3=await startMenuRegroup(_0x4b2f04['cookie'],_0x233c86['input']),_0x2a266a=normalizeAsyncTask(_0x553be3);}catch(_0x25e18e){const _0x1314a4=await inspectRegroupAfterFailure(_0x4b2f04[_0x3003b8(0x1ea)],_0x4b2f04['cookie'],_0x233c86[_0x3003b8(0x1dc)],_0x233c86[_0x3003b8(0x1f5)]),_0x536385=typeof _0x553be3?.['taskId']===_0x3003b8(0x1da)&&_0x553be3[_0x3003b8(0x1fe)][_0x3003b8(0x1ff)]()?_0x553be3[_0x3003b8(0x1fe)][_0x3003b8(0x1ff)]():null,_0x5065b1=_0x536385?{'command':buildAsyncTaskStatusCommand(_0x536385,_0x4b2f04[_0x3003b8(0x1ea)])}:null,_0x3bf191=mapMenuApiError(_0x25e18e,_0x3003b8(0x210));throw menuFailure(_0x3bf191,_0x233c86[_0x3003b8(0x1f9)],{'stage':_0x3003b8(0x200),'failed':{'menuIds':_0x233c86[_0x3003b8(0x1f5)],'taskId':_0x536385,'groupingApplied':_0x1314a4['applied']?!![]:_0x3003b8(0x1d9)},'after':_0x1314a4[_0x3003b8(0x21c)]??null,'warnings':[_0x3003b8(0x206),..._0x1314a4[_0x3003b8(0x21a)]?[_0x3003b8(0x20e)+_0x1314a4[_0x3003b8(0x21a)]]:[],..._0x536385?[_0x3003b8(0x1d5)]:[]],'verification':{'status':_0x3003b8(0x1e2),'groupingApplied':_0x1314a4[_0x3003b8(0x21c)]?!![]:_0x3003b8(0x1d9),'taskId':_0x536385,'query':_0x5065b1,'lookupCommand':_0x5466a0}});}const _0x5a1952=buildAsyncTaskStatusCommand(_0x2a266a[_0x3003b8(0x1fe)],_0x4b2f04['appCode']);let _0x6e5972=null,_0x34ce8f=null,_0x25d550=null;try{_0x6e5972=await fetchMenuSnapshot(_0x4b2f04[_0x3003b8(0x1ea)],_0x4b2f04[_0x3003b8(0x22d)]),_0x34ce8f=findAppliedRegroup(_0x6e5972,_0x233c86[_0x3003b8(0x1dc)],_0x233c86['menuIds']);}catch(_0x27b688){_0x25d550=_0x27b688 instanceof Error?_0x27b688['message']:String(_0x27b688);}const _0x171b00=mutationResult({..._0x233c86[_0x3003b8(0x1f9)],'after':_0x34ce8f??null,'dryRun':![],'succeeded':[{'groupId':_0x34ce8f?.[_0x3003b8(0x22b)]['id']??null,'menuIds':_0x233c86[_0x3003b8(0x1f5)],'taskId':_0x2a266a[_0x3003b8(0x1fe)],'status':_0x2a266a[_0x3003b8(0x1de)],'groupingApplied':_0x34ce8f?!![]:_0x3003b8(0x1d9)}],'verification':{'checkedBy':_0x3003b8(0x213),'snapshotHash':_0x6e5972?.[_0x3003b8(0x1e5)]??null,'groupId':_0x34ce8f?.[_0x3003b8(0x22b)]['id']??null,'groupingApplied':_0x34ce8f?!![]:_0x3003b8(0x1d9),'readbackError':_0x25d550,'lookupCommand':_0x5466a0},'warnings':[..._0x233c86[_0x3003b8(0x1f9)]['warnings'],...!_0x34ce8f?[unconfirmedRegroupWarning(_0x2a266a)]:[],..._0x25d550?[_0x3003b8(0x1f4)+_0x25d550]:[]]}),_0x51a9e6=_0x2a266a[_0x3003b8(0x1de)]===_0x3003b8(0x22f)&&!_0x34ce8f?_0x3003b8(0x21e)+_0x2a266a[_0x3003b8(0x1fe)]+_0x3003b8(0x1d4):_0x3003b8(0x20b)+asyncTaskMessage(_0x2a266a);return{'ok':!![],'message':_0x51a9e6,'data':{..._0x171b00,'task':_0x2a266a,'query':_0x2a266a[_0x3003b8(0x204)]?null:{'command':_0x5a1952}}};}};function validateRegroupInput(_0x2286cb){const _0x3002f2=a124_0x1bcfbd;if(!_0x2286cb[_0x3002f2(0x205)](_0x3002f2(0x1dc))[_0x3002f2(0x1ff)]())throw CliErrors[_0x3002f2(0x208)](_0x3002f2(0x1dc));parseMenuIds(_0x2286cb[_0x3002f2(0x205)](_0x3002f2(0x1d3)));}function parseMenuIds(_0xdebe86){const _0x4b5a64=a124_0x1bcfbd,_0x1c8eba=_0xdebe86[_0x4b5a64(0x1e9)](',')[_0x4b5a64(0x1dd)](_0x5d76f4=>_0x5d76f4[_0x4b5a64(0x1ff)]());if(_0x1c8eba[_0x4b5a64(0x227)]===0x0||_0x1c8eba['some'](_0x5167e4=>!_0x5167e4))throw CliErrors['validation'](_0x4b5a64(0x225));const _0x144f05=_0x1c8eba[_0x4b5a64(0x1dd)](_0x56e47e=>{const _0x11aeb0=_0x4b5a64;if(!/^\d+$/['test'](_0x56e47e))throw CliErrors[_0x11aeb0(0x1ee)](_0x11aeb0(0x225));const _0x3020bd=Number(_0x56e47e);if(!Number[_0x11aeb0(0x232)](_0x3020bd)||_0x3020bd<=0x0)throw CliErrors[_0x11aeb0(0x1ee)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');return _0x3020bd;});if(new Set(_0x144f05)['size']!==_0x144f05[_0x4b5a64(0x227)])throw CliErrors[_0x4b5a64(0x1ee)](_0x4b5a64(0x1f8));if(_0x144f05[_0x4b5a64(0x227)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x4b5a64(0x1ee)](_0x4b5a64(0x1e0)+MAX_REGROUP_MENU_COUNT+_0x4b5a64(0x1e3));return _0x144f05;}function buildMenuLookupCommand(_0x3b290a){const _0x11097f=a124_0x1bcfbd,_0xd0b3e5='\x27'+_0x3b290a[_0x11097f(0x21b)](/'/g,'\x27\x5c\x27\x27')+'\x27';return CLI_BIN_NAME+_0x11097f(0x1e7)+_0xd0b3e5+_0x11097f(0x1e4);}function a124_0x45d6(_0x42ada2,_0x44a4f5){_0x42ada2=_0x42ada2-0x1d2;const _0x2b1503=a124_0x2b15();let _0x45d6d1=_0x2b1503[_0x42ada2];return _0x45d6d1;}function unconfirmedRegroupWarning(_0x4cb6a1){const _0xed6a86=a124_0x1bcfbd;if(_0x4cb6a1[_0xed6a86(0x1de)]===_0xed6a86(0x22f))return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x4cb6a1['status']===_0xed6a86(0x1fa))return'The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x4cb6a1[_0xed6a86(0x222)])return _0xed6a86(0x230);return _0xed6a86(0x22e);}async function buildRegroupPlan(_0x5b8c46,_0x47e763){const _0x43dbe6=a124_0x1bcfbd,_0xb06184=_0x5b8c46[_0x43dbe6(0x205)](_0x43dbe6(0x1dc))[_0x43dbe6(0x1ff)](),_0x41d2e8=parseMenuIds(_0x5b8c46['str'](_0x43dbe6(0x1d3))),_0x2152a8=await fetchMutationSnapshot(_0x5b8c46,_0x43dbe6(0x233)),_0x1ecf65=_0x41d2e8[_0x43dbe6(0x1dd)](_0x2b2317=>requireMenu(_0x2152a8,_0x2b2317));for(const _0x211cfb of _0x1ecf65){if(_0x211cfb[_0x43dbe6(0x201)][_0x43dbe6(0x1ff)]()[_0x43dbe6(0x228)]()===_0x43dbe6(0x20d)||_0x211cfb[_0x43dbe6(0x1f6)]>0x0)throw menuError(_0x43dbe6(0x224),_0x43dbe6(0x1e6)+_0x211cfb['id']+_0x43dbe6(0x1fd),'Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.');if(!_0x211cfb[_0x43dbe6(0x1dc)][_0x43dbe6(0x1ff)]())throw menuError(_0x43dbe6(0x1d8),_0x43dbe6(0x1e6)+_0x211cfb['id']+'\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.',_0x43dbe6(0x1d7));}const _0xa6d1c5=findAppliedRegroup(_0x2152a8,_0xb06184,_0x41d2e8);if(_0xa6d1c5)throw menuError(_0x43dbe6(0x220),_0x43dbe6(0x218)+_0x41d2e8[_0x43dbe6(0x1db)](',\x20')+'\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20'+_0xa6d1c5[_0x43dbe6(0x22b)]['id']+'\x20('+JSON['stringify'](_0xb06184)+').','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.');const _0x3f5c0b=_0x2152a8[_0x43dbe6(0x207)][_0x43dbe6(0x214)](_0x10fc4a=>_0x10fc4a[_0x43dbe6(0x22c)]==null&&_0x10fc4a[_0x43dbe6(0x201)]['trim']()[_0x43dbe6(0x228)]()===_0x43dbe6(0x20d)&&_0x10fc4a['label']===_0xb06184);if(_0x3f5c0b[_0x43dbe6(0x227)]>0x0)throw menuError(_0x43dbe6(0x221),_0x43dbe6(0x1f0)+JSON[_0x43dbe6(0x1fb)](_0xb06184)+_0x43dbe6(0x1e8)+_0x3f5c0b['map'](_0x3d4ea9=>_0x3d4ea9['id'])[_0x43dbe6(0x1db)](',\x20')+'.',_0x43dbe6(0x211));const _0x4fa6ee={'appCode':_0x5b8c46[_0x43dbe6(0x1ea)],'menuGroups':[{'label':_0xb06184,'type':'folder','children':_0x1ecf65[_0x43dbe6(0x1dd)](_0x5a761c=>({'id':_0x5a761c['id'],'label':_0x5a761c[_0x43dbe6(0x1dc)]}))}]},_0x16fb6a=mutationResult({'operation':'regroup-start','selector':{'label':_0xb06184,'menuIds':_0x41d2e8},'before':{'menus':_0x1ecf65},'after':{'group':{'id':null,'parentId':null,'label':_0xb06184,'path':'<platform-generated>','type':_0x43dbe6(0x20d),'childrenIds':_0x41d2e8},'children':_0x1ecf65[_0x43dbe6(0x1dd)](_0x4a5477=>({'id':_0x4a5477['id'],'label':_0x4a5477[_0x43dbe6(0x1dc)],'beforeParentId':_0x4a5477[_0x43dbe6(0x22c)],'afterParentId':_0x43dbe6(0x1ed)}))},'dryRun':_0x47e763,'backend':[...BACKEND],'plannedActions':[{'stage':_0x43dbe6(0x217),'method':'POST','path':_0x43dbe6(0x20c),'body':_0x4fa6ee}],'snapshotHash':_0x2152a8[_0x43dbe6(0x1e5)],'warnings':[_0x43dbe6(0x1f2),_0x43dbe6(0x219)]});return{'label':_0xb06184,'menuIds':_0x41d2e8,'input':_0x4fa6ee,'plan':_0x16fb6a};}function findAppliedRegroup(_0x2be830,_0x453523,_0x31a8b4){const _0x3c0b52=a124_0x1bcfbd,_0x148004=_0x31a8b4['map'](_0x247172=>_0x2be830[_0x3c0b52(0x1ef)][_0x3c0b52(0x1f3)](_0x247172))['filter'](_0x32b725=>Boolean(_0x32b725));if(_0x148004[_0x3c0b52(0x227)]!==_0x31a8b4[_0x3c0b52(0x227)])return null;const _0x25badd=_0x148004[0x0]?.[_0x3c0b52(0x22c)];if(_0x25badd==null||_0x148004[_0x3c0b52(0x231)](_0x315386=>_0x315386[_0x3c0b52(0x22c)]!==_0x25badd))return null;const _0xaa4b6b=_0x2be830[_0x3c0b52(0x1ef)][_0x3c0b52(0x1f3)](_0x25badd);if(!_0xaa4b6b||_0xaa4b6b[_0x3c0b52(0x22c)]!=null||_0xaa4b6b[_0x3c0b52(0x201)]['trim']()[_0x3c0b52(0x228)]()!=='folder'||_0xaa4b6b['label']!==_0x453523)return null;const _0xfd1b9c=[..._0x31a8b4][_0x3c0b52(0x20a)]((_0x172d46,_0xb08f69)=>_0x172d46-_0xb08f69),_0x1d5a72=[..._0xaa4b6b['childrenIds']][_0x3c0b52(0x20a)]((_0x72d857,_0x2ba168)=>_0x72d857-_0x2ba168);if(JSON['stringify'](_0x1d5a72)!==JSON[_0x3c0b52(0x1fb)](_0xfd1b9c))return null;return{'group':_0xaa4b6b,'children':_0x148004};}async function inspectRegroupAfterFailure(_0x57d517,_0x279ebc,_0x9b4881,_0x52bb7a){const _0x107f0e=a124_0x1bcfbd;try{const _0x4f0df9=await fetchMenuSnapshot(_0x57d517,_0x279ebc);return{'applied':findAppliedRegroup(_0x4f0df9,_0x9b4881,_0x52bb7a),'readbackError':null};}catch(_0x260237){return{'applied':null,'readbackError':_0x260237 instanceof Error?_0x260237[_0x107f0e(0x1e1)]:String(_0x260237)};}}
|
|
1
|
+
const a124_0x3ac438=a124_0x57d3;(function(_0x13b1e8,_0x379448){const _0x430bc8=a124_0x57d3,_0x238694=_0x13b1e8();while(!![]){try{const _0x2fa509=-parseInt(_0x430bc8(0xc5))/0x1*(parseInt(_0x430bc8(0xfb))/0x2)+-parseInt(_0x430bc8(0xb9))/0x3*(parseInt(_0x430bc8(0xf1))/0x4)+-parseInt(_0x430bc8(0xed))/0x5*(-parseInt(_0x430bc8(0xce))/0x6)+-parseInt(_0x430bc8(0xe5))/0x7+parseInt(_0x430bc8(0xb3))/0x8+parseInt(_0x430bc8(0xbd))/0x9+parseInt(_0x430bc8(0xb5))/0xa*(parseInt(_0x430bc8(0xf5))/0xb);if(_0x2fa509===_0x379448)break;else _0x238694['push'](_0x238694['shift']());}catch(_0x44efc7){_0x238694['push'](_0x238694['shift']());}}}(a124_0x5da7,0x205aa));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';function a124_0x57d3(_0x225558,_0x3b3069){_0x225558=_0x225558-0xab;const _0x5da788=a124_0x5da7();let _0x57d307=_0x5da788[_0x225558];return _0x57d307;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a124_0x3ac438(0xcd),'path':a124_0x3ac438(0xab)}],MAX_REGROUP_MENU_COUNT=0x64;function a124_0x5da7(){const _0x460a96=['2DJoaAl','\x27\x5c\x27\x27','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','unconfirmed','menuIds','Root\x20folder\x20label\x20','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','size','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','menu\x20list','get','childrenCount','map','regroup-start','parentId','<new-group-id>','/smartapi/menu/regroup','\x20menu\x20list\x20--appcode\x20','appCode','type','some','test','toLowerCase','message','361016DdmMbn','replace','190rZwezg','folder','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','cookie','113877aEUcdE','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','group','SUCCESS','923418xObzNN','trim','status','byId','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','Menus\x20','filter','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','216509woUSYF','Label\x20of\x20the\x20new\x20root\x20folder','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','join','menus','applied',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','POST','6HMOgXZ','failed','menu-ids','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','menu','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','\x20and\x20regroup\x20menu\x20ids\x20','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','hash','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','regroup-submit','stringify','isTerminal','length','label','isSafeInteger','plan','\x20--format\x20compress','readbackError','knownStatus','split','string','warnings','719789xsriTd','menu_regroup_label_conflict','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','Regroup\x20readback\x20failed:\x20','Menu\x20','taskId','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','sort','1216315IZBMzK','FAILED','validation','<platform-generated>','12TkiXfP','\x20menus\x20per\x20regroup\x20request.','Regroup\x20readback\x20also\x20failed:\x20','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','101167FfgtGY','input','menu_regroup_target_not_leaf','str','plan\x20regroup','Regroup\x20task\x20'];a124_0x5da7=function(){return _0x460a96;};return a124_0x5da7();}export const menuRegroupStart={'service':a124_0x3ac438(0xd2),'command':a124_0x3ac438(0x109),'description':a124_0x3ac438(0xeb),'risk':'write','structuredErrors':!![],'flags':[{'name':a124_0x3ac438(0xdc),'type':a124_0x3ac438(0xe3),'required':!![],'description':a124_0x3ac438(0xc6)},{'name':a124_0x3ac438(0xd0),'type':a124_0x3ac438(0xe3),'required':!![],'description':a124_0x3ac438(0xd7)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x57ed5f){validateRegroupInput(_0x57ed5f);},async 'dryRun'(_0x31054d){const _0x4b4a86=a124_0x3ac438;validateRegroupInput(_0x31054d);const _0x5589a5=await buildRegroupPlan(_0x31054d,!![]);return menuDryRunResult(_0x5589a5[_0x4b4a86(0xde)],{'method':_0x4b4a86(0xcd),'url':'/smartapi/menu/regroup','body':_0x5589a5['input'],'description':_0x4b4a86(0x104)+JSON[_0x4b4a86(0xd9)](_0x5589a5[_0x4b4a86(0xdc)])+_0x4b4a86(0xd4)+_0x5589a5[_0x4b4a86(0xff)][_0x4b4a86(0xc9)](',\x20')+_0x4b4a86(0xcc)});},async 'execute'(_0x11e2b3){const _0x430b26=a124_0x3ac438;validateRegroupInput(_0x11e2b3);const _0x3fdb88=await buildRegroupPlan(_0x11e2b3,![]);await recheckMutationSnapshot(_0x11e2b3,_0x3fdb88[_0x430b26(0xde)],'start\x20regroup');const _0x5c199e=buildMenuLookupCommand(_0x11e2b3[_0x430b26(0xad)]);let _0x306afb,_0x23e8ce;try{_0x306afb=await startMenuRegroup(_0x11e2b3[_0x430b26(0xb8)],_0x3fdb88[_0x430b26(0xf6)]),_0x23e8ce=normalizeAsyncTask(_0x306afb);}catch(_0x21f2f3){const _0x4742e1=await inspectRegroupAfterFailure(_0x11e2b3[_0x430b26(0xad)],_0x11e2b3['cookie'],_0x3fdb88[_0x430b26(0xdc)],_0x3fdb88[_0x430b26(0xff)]),_0x1d2c9a=typeof _0x306afb?.[_0x430b26(0xea)]===_0x430b26(0xe3)&&_0x306afb[_0x430b26(0xea)][_0x430b26(0xbe)]()?_0x306afb[_0x430b26(0xea)][_0x430b26(0xbe)]():null,_0x198995=_0x1d2c9a?{'command':buildAsyncTaskStatusCommand(_0x1d2c9a,_0x11e2b3[_0x430b26(0xad)])}:null,_0x205de5=mapMenuApiError(_0x21f2f3,'start\x20menu\x20regroup');throw menuFailure(_0x205de5,_0x3fdb88['plan'],{'stage':_0x430b26(0xd8),'failed':{'menuIds':_0x3fdb88['menuIds'],'taskId':_0x1d2c9a,'groupingApplied':_0x4742e1['applied']?!![]:_0x430b26(0xfe)},'after':_0x4742e1[_0x430b26(0xcb)]??null,'warnings':[_0x430b26(0xc4),..._0x4742e1[_0x430b26(0xe0)]?[_0x430b26(0xf3)+_0x4742e1[_0x430b26(0xe0)]]:[],..._0x1d2c9a?[_0x430b26(0xe7)]:[]],'verification':{'status':_0x430b26(0xcf),'groupingApplied':_0x4742e1[_0x430b26(0xcb)]?!![]:'unconfirmed','taskId':_0x1d2c9a,'query':_0x198995,'lookupCommand':_0x5c199e}});}const _0x2f9c=buildAsyncTaskStatusCommand(_0x23e8ce[_0x430b26(0xea)],_0x11e2b3['appCode']);let _0x2b2de9=null,_0x23369f=null,_0x446abf=null;try{_0x2b2de9=await fetchMenuSnapshot(_0x11e2b3['appCode'],_0x11e2b3[_0x430b26(0xb8)]),_0x23369f=findAppliedRegroup(_0x2b2de9,_0x3fdb88[_0x430b26(0xdc)],_0x3fdb88[_0x430b26(0xff)]);}catch(_0x54b81f){_0x446abf=_0x54b81f instanceof Error?_0x54b81f['message']:String(_0x54b81f);}const _0x2223a3=mutationResult({..._0x3fdb88[_0x430b26(0xde)],'after':_0x23369f??null,'dryRun':![],'succeeded':[{'groupId':_0x23369f?.[_0x430b26(0xbb)]['id']??null,'menuIds':_0x3fdb88[_0x430b26(0xff)],'taskId':_0x23e8ce[_0x430b26(0xea)],'status':_0x23e8ce[_0x430b26(0xbf)],'groupingApplied':_0x23369f?!![]:_0x430b26(0xfe)}],'verification':{'checkedBy':_0x430b26(0x105),'snapshotHash':_0x2b2de9?.[_0x430b26(0xd6)]??null,'groupId':_0x23369f?.['group']['id']??null,'groupingApplied':_0x23369f?!![]:'unconfirmed','readbackError':_0x446abf,'lookupCommand':_0x5c199e},'warnings':[..._0x3fdb88['plan'][_0x430b26(0xe4)],...!_0x23369f?[unconfirmedRegroupWarning(_0x23e8ce)]:[],..._0x446abf?[_0x430b26(0xe8)+_0x446abf]:[]]}),_0x3d1039=_0x23e8ce[_0x430b26(0xbf)]===_0x430b26(0xbc)&&!_0x23369f?_0x430b26(0xfa)+_0x23e8ce[_0x430b26(0xea)]+'\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.':'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0x23e8ce);return{'ok':!![],'message':_0x3d1039,'data':{..._0x2223a3,'task':_0x23e8ce,'query':_0x23e8ce[_0x430b26(0xda)]?null:{'command':_0x2f9c}}};}};function validateRegroupInput(_0x46869f){const _0xab9bb2=a124_0x3ac438;if(!_0x46869f[_0xab9bb2(0xf8)]('label')[_0xab9bb2(0xbe)]())throw CliErrors['flagMissing'](_0xab9bb2(0xdc));parseMenuIds(_0x46869f[_0xab9bb2(0xf8)](_0xab9bb2(0xd0)));}function parseMenuIds(_0xf1dcf6){const _0x1f99ec=a124_0x3ac438,_0x170714=_0xf1dcf6[_0x1f99ec(0xe2)](',')['map'](_0x27beac=>_0x27beac[_0x1f99ec(0xbe)]());if(_0x170714[_0x1f99ec(0xdb)]===0x0||_0x170714[_0x1f99ec(0xaf)](_0x54233f=>!_0x54233f))throw CliErrors['validation'](_0x1f99ec(0xb7));const _0x22b271=_0x170714['map'](_0x4d34a8=>{const _0x1e2736=_0x1f99ec;if(!/^\d+$/[_0x1e2736(0xb0)](_0x4d34a8))throw CliErrors[_0x1e2736(0xef)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0xa98b7c=Number(_0x4d34a8);if(!Number[_0x1e2736(0xdd)](_0xa98b7c)||_0xa98b7c<=0x0)throw CliErrors['validation'](_0x1e2736(0xb7));return _0xa98b7c;});if(new Set(_0x22b271)[_0x1f99ec(0x102)]!==_0x22b271[_0x1f99ec(0xdb)])throw CliErrors[_0x1f99ec(0xef)](_0x1f99ec(0xc1));if(_0x22b271[_0x1f99ec(0xdb)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x1f99ec(0xef)]('--menu-ids\x20supports\x20at\x20most\x20'+MAX_REGROUP_MENU_COUNT+_0x1f99ec(0xf2));return _0x22b271;}function buildMenuLookupCommand(_0x315954){const _0x2bd4b9=a124_0x3ac438,_0x58b477='\x27'+_0x315954[_0x2bd4b9(0xb4)](/'/g,_0x2bd4b9(0xfc))+'\x27';return CLI_BIN_NAME+_0x2bd4b9(0xac)+_0x58b477+_0x2bd4b9(0xdf);}function unconfirmedRegroupWarning(_0x304424){const _0x946be8=a124_0x3ac438;if(_0x304424[_0x946be8(0xbf)]==='SUCCESS')return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x304424[_0x946be8(0xbf)]===_0x946be8(0xee))return _0x946be8(0xd1);if(_0x304424[_0x946be8(0xe1)])return _0x946be8(0xc8);return'The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';}async function buildRegroupPlan(_0x582a1b,_0x2fd1ee){const _0x5aaa0f=a124_0x3ac438,_0x29b796=_0x582a1b[_0x5aaa0f(0xf8)](_0x5aaa0f(0xdc))['trim'](),_0xca9b69=parseMenuIds(_0x582a1b[_0x5aaa0f(0xf8)](_0x5aaa0f(0xd0))),_0x343950=await fetchMutationSnapshot(_0x582a1b,_0x5aaa0f(0xf9)),_0x11fef4=_0xca9b69[_0x5aaa0f(0x108)](_0x1cfc5b=>requireMenu(_0x343950,_0x1cfc5b));for(const _0x26bc01 of _0x11fef4){if(_0x26bc01[_0x5aaa0f(0xae)][_0x5aaa0f(0xbe)]()[_0x5aaa0f(0xb1)]()===_0x5aaa0f(0xb6)||_0x26bc01[_0x5aaa0f(0x107)]>0x0)throw menuError(_0x5aaa0f(0xf7),_0x5aaa0f(0xe9)+_0x26bc01['id']+_0x5aaa0f(0xc7),'Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.');if(!_0x26bc01[_0x5aaa0f(0xdc)][_0x5aaa0f(0xbe)]())throw menuError('menu_regroup_target_label_missing','Menu\x20'+_0x26bc01['id']+_0x5aaa0f(0xf4),_0x5aaa0f(0x103));}const _0x4553fb=findAppliedRegroup(_0x343950,_0x29b796,_0xca9b69);if(_0x4553fb)throw menuError('menu_regroup_already_applied',_0x5aaa0f(0xc2)+_0xca9b69[_0x5aaa0f(0xc9)](',\x20')+'\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20'+_0x4553fb[_0x5aaa0f(0xbb)]['id']+'\x20('+JSON[_0x5aaa0f(0xd9)](_0x29b796)+').',_0x5aaa0f(0x101));const _0x5a5d4c=_0x343950[_0x5aaa0f(0xca)][_0x5aaa0f(0xc3)](_0x5b87b2=>_0x5b87b2[_0x5aaa0f(0x10a)]==null&&_0x5b87b2[_0x5aaa0f(0xae)][_0x5aaa0f(0xbe)]()[_0x5aaa0f(0xb1)]()===_0x5aaa0f(0xb6)&&_0x5b87b2[_0x5aaa0f(0xdc)]===_0x29b796);if(_0x5a5d4c[_0x5aaa0f(0xdb)]>0x0)throw menuError(_0x5aaa0f(0xe6),_0x5aaa0f(0x100)+JSON[_0x5aaa0f(0xd9)](_0x29b796)+_0x5aaa0f(0xd5)+_0x5a5d4c[_0x5aaa0f(0x108)](_0x4fbe0b=>_0x4fbe0b['id'])[_0x5aaa0f(0xc9)](',\x20')+'.',_0x5aaa0f(0xba));const _0x3a6f28={'appCode':_0x582a1b[_0x5aaa0f(0xad)],'menuGroups':[{'label':_0x29b796,'type':_0x5aaa0f(0xb6),'children':_0x11fef4['map'](_0x21d3b9=>({'id':_0x21d3b9['id'],'label':_0x21d3b9[_0x5aaa0f(0xdc)]}))}]},_0x5deaf4=mutationResult({'operation':'regroup-start','selector':{'label':_0x29b796,'menuIds':_0xca9b69},'before':{'menus':_0x11fef4},'after':{'group':{'id':null,'parentId':null,'label':_0x29b796,'path':_0x5aaa0f(0xf0),'type':_0x5aaa0f(0xb6),'childrenIds':_0xca9b69},'children':_0x11fef4[_0x5aaa0f(0x108)](_0x410c9b=>({'id':_0x410c9b['id'],'label':_0x410c9b[_0x5aaa0f(0xdc)],'beforeParentId':_0x410c9b[_0x5aaa0f(0x10a)],'afterParentId':_0x5aaa0f(0x10b)}))},'dryRun':_0x2fd1ee,'backend':[...BACKEND],'plannedActions':[{'stage':'submit-regroup-task','method':_0x5aaa0f(0xcd),'path':_0x5aaa0f(0xab),'body':_0x3a6f28}],'snapshotHash':_0x343950[_0x5aaa0f(0xd6)],'warnings':[_0x5aaa0f(0xd3),_0x5aaa0f(0xfd)]});return{'label':_0x29b796,'menuIds':_0xca9b69,'input':_0x3a6f28,'plan':_0x5deaf4};}function findAppliedRegroup(_0x254033,_0x36c4e1,_0x2429d7){const _0x1fe5a8=a124_0x3ac438,_0x758d84=_0x2429d7[_0x1fe5a8(0x108)](_0x59fdbf=>_0x254033['byId'][_0x1fe5a8(0x106)](_0x59fdbf))[_0x1fe5a8(0xc3)](_0x266e6b=>Boolean(_0x266e6b));if(_0x758d84[_0x1fe5a8(0xdb)]!==_0x2429d7['length'])return null;const _0x5cd3a3=_0x758d84[0x0]?.['parentId'];if(_0x5cd3a3==null||_0x758d84[_0x1fe5a8(0xaf)](_0x29e64e=>_0x29e64e['parentId']!==_0x5cd3a3))return null;const _0x52263d=_0x254033[_0x1fe5a8(0xc0)][_0x1fe5a8(0x106)](_0x5cd3a3);if(!_0x52263d||_0x52263d['parentId']!=null||_0x52263d[_0x1fe5a8(0xae)][_0x1fe5a8(0xbe)]()[_0x1fe5a8(0xb1)]()!==_0x1fe5a8(0xb6)||_0x52263d['label']!==_0x36c4e1)return null;const _0x528003=[..._0x2429d7][_0x1fe5a8(0xec)]((_0x5093e7,_0x57d7a7)=>_0x5093e7-_0x57d7a7),_0x6197de=[..._0x52263d['childrenIds']][_0x1fe5a8(0xec)]((_0xc0d3aa,_0x4c606c)=>_0xc0d3aa-_0x4c606c);if(JSON[_0x1fe5a8(0xd9)](_0x6197de)!==JSON['stringify'](_0x528003))return null;return{'group':_0x52263d,'children':_0x758d84};}async function inspectRegroupAfterFailure(_0x57fe74,_0x34d61c,_0x254bb6,_0x37c09b){const _0x211fc3=a124_0x3ac438;try{const _0x566fcb=await fetchMenuSnapshot(_0x57fe74,_0x34d61c);return{'applied':findAppliedRegroup(_0x566fcb,_0x254bb6,_0x37c09b),'readbackError':null};}catch(_0xc1987d){return{'applied':null,'readbackError':_0xc1987d instanceof Error?_0xc1987d[_0x211fc3(0xb2)]:String(_0xc1987d)};}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a125_0x3272(){const _0x420087=['\x20label\x20update\x20did\x20not\x20take\x20effect.','133370LvGaGq','depth','childrenCount','stringify','code','\x20--format\x20compress','Menu\x20','replace','str','579232TermOO','--label\x20cannot\x20be\x20empty.','validation','body','rename','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','POST','flagMissing','datasetId','datasetCode','requestedLabelObserved','after','543600vjHGvp','modelType','678640UZdrgN','update','snapshot','resources','sort','readbackFailed','118FsqyFy','2250048HrOaMz','trim','\x27\x5c\x27\x27','appCode','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','Response\x20was\x20lost\x20and\x20menu\x20','menu_state_drift','failed','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','954TfdgPO','menu','menu_update_recovery_required','menu\x20list','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','url','\x20already\x20has\x20the\x20requested\x20label.','menu_permission_denied','rename\x20menu','Run\x20','string','\x20could\x20not\x20be\x20verified\x20safely','\x20label\x20changed:\x20expected\x20','hash','/smartapi/menu/update','isArray','pageId','path','verify\x20menu\x20rename','type','expect-label','The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','visible','41244ydrPik','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','parentId','382615JfacMw','byId','childrenIds','rabetbase\x20menu\x20list\x20--appcode\x20','resourcesValid','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','label','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','New\x20menu\x20label','14JOpgLa'];a125_0x3272=function(){return _0x420087;};return a125_0x3272();}const a125_0x3da7d8=a125_0x5385;(function(_0x276c24,_0x1f3e9c){const _0x4cf246=a125_0x5385,_0x35aac9=_0x276c24();while(!![]){try{const _0x3c623f=parseInt(_0x4cf246(0x1d0))/0x1+-parseInt(_0x4cf246(0x1d6))/0x2*(-parseInt(_0x4cf246(0x1ab))/0x3)+parseInt(_0x4cf246(0x1d7))/0x4+parseInt(_0x4cf246(0x1ae))/0x5+parseInt(_0x4cf246(0x1ce))/0x6+-parseInt(_0x4cf246(0x1b7))/0x7*(-parseInt(_0x4cf246(0x1c2))/0x8)+-parseInt(_0x4cf246(0x1e0))/0x9*(parseInt(_0x4cf246(0x1b9))/0xa);if(_0x3c623f===_0x1f3e9c)break;else _0x35aac9['push'](_0x35aac9['shift']());}catch(_0x505c51){_0x35aac9['push'](_0x35aac9['shift']());}}}(a125_0x3272,0xe80dd));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a125_0x3da7d8(0x1c8),'path':a125_0x3da7d8(0x1a2)}];export const menuRename={'service':a125_0x3da7d8(0x1e1),'command':a125_0x3da7d8(0x1c6),'description':a125_0x3da7d8(0x1ac),'risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'label','type':a125_0x3da7d8(0x1ea),'required':!![],'description':a125_0x3da7d8(0x1b6)},{'name':a125_0x3da7d8(0x1a8),'type':a125_0x3da7d8(0x1ea),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3eff8b){validateInput(_0x3eff8b);},async 'dryRun'(_0x4f0fbb){const _0x192345=a125_0x3da7d8;validateInput(_0x4f0fbb);const _0x3d2491=await buildPlan(_0x4f0fbb,!![]);return menuDryRunResult(_0x3d2491['plan'],{'method':_0x192345(0x1c8),'url':_0x192345(0x1a2),'body':_0x3d2491[_0x192345(0x1c5)],'description':'Would\x20rename\x20menu\x20'+_0x3d2491[_0x192345(0x1c5)]['id']+'.'});},async 'execute'(_0x190403){const _0x2d165f=a125_0x3da7d8;validateInput(_0x190403);const _0x3adec8=await buildPlan(_0x190403,![]),{plan:_0x4d9c7b,body:_0x5e53e0,before:_0x5201f3,noChanges:_0x2dfb99}=_0x3adec8,_0x5698ea=_0x5e53e0['id'];if(_0x2dfb99)return renameSuccess(_0x4d9c7b,_0x3adec8[_0x2d165f(0x1d2)],_0x5201f3,!![],![]);await recheckMutationSnapshot(_0x190403,_0x4d9c7b,_0x2d165f(0x1e8),_0x5698ea);try{await updateMenuEntity(_0x190403[_0x2d165f(0x1da)],_0x190403['cookie'],{'id':_0x5698ea,'label':_0x5e53e0[_0x2d165f(0x1b4)]});}catch(_0x470012){const _0x73575c=mapMenuApiError(_0x470012,'rename',_0x5698ea);if(isMenuResponseLoss(_0x470012)&&_0x73575c[_0x2d165f(0x1bd)]!==_0x2d165f(0x1e7))return recoverAfterResponseLoss(_0x190403,_0x3adec8);throw menuFailure(_0x73575c,_0x4d9c7b,{'stage':_0x2d165f(0x1d1),'failed':{'id':_0x5698ea},'warnings':['The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x2d165f(0x1de),'targetId':_0x5698ea,'lookupCommand':buildLookupCommand(_0x190403[_0x2d165f(0x1da)])}});}let _0xcbbf5c,_0xcfad76;try{_0xcbbf5c=await fetchMenuSnapshot(_0x190403[_0x2d165f(0x1da)],_0x190403['cookie']),_0xcfad76=requireMenu(_0xcbbf5c,_0x5698ea),verifyRenamedFact(_0x5201f3,_0xcfad76,_0x5e53e0[_0x2d165f(0x1b4)]);}catch(_0x1648a5){const _0x53ffeb=describeMenuErrorCause(_0x1648a5,_0x2d165f(0x1a6),_0x5698ea),_0x15d2e4=asVerificationError(_0x1648a5,'Rename\x20request\x20for\x20menu\x20'+_0x5698ea+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x15d2e4,_0x4d9c7b,{'stage':'verification','succeeded':[{'id':_0x5698ea,'updateRequested':!![]}],'failed':{'id':_0x5698ea,'requestedStateConfirmed':![],..._0x53ffeb},'warnings':[_0x2d165f(0x1b3)],'verification':{'status':_0x2d165f(0x1de),'targetId':_0x5698ea,'lookupCommand':buildLookupCommand(_0x190403[_0x2d165f(0x1da)])}});}return renameSuccess(_0x4d9c7b,_0xcbbf5c,_0xcfad76,![],![]);}};function validateInput(_0x11790b){const _0x128e29=a125_0x3da7d8;validateExactId(_0x11790b);if(!_0x11790b[_0x128e29(0x1c1)](_0x128e29(0x1b4))[_0x128e29(0x1d8)]())throw CliErrors[_0x128e29(0x1c4)](_0x128e29(0x1c3));if(!_0x11790b[_0x128e29(0x1c1)](_0x128e29(0x1a8))[_0x128e29(0x1d8)]())throw CliErrors[_0x128e29(0x1c9)](_0x128e29(0x1a8));}async function buildPlan(_0x2926af,_0x36c4af){const _0x402dfa=a125_0x3da7d8,_0x19ee08=validateExactId(_0x2926af),_0x304e06=_0x2926af[_0x402dfa(0x1c1)](_0x402dfa(0x1b4))[_0x402dfa(0x1d8)](),_0x1f7647=_0x2926af[_0x402dfa(0x1c1)](_0x402dfa(0x1a8)),_0x3eccf5=await fetchMutationSnapshot(_0x2926af,_0x402dfa(0x1e8),_0x19ee08),_0x307623=requireMenu(_0x3eccf5,_0x19ee08);if(_0x307623[_0x402dfa(0x1b4)]!==_0x1f7647)throw menuError(_0x402dfa(0x1dd),_0x402dfa(0x1bf)+_0x19ee08+_0x402dfa(0x1ec)+JSON[_0x402dfa(0x1bc)](_0x1f7647)+',\x20current\x20'+JSON['stringify'](_0x307623[_0x402dfa(0x1b4)])+'.',_0x402dfa(0x1e4));const _0x8c6ba={'id':_0x19ee08,'appCode':_0x2926af[_0x402dfa(0x1da)],'label':_0x304e06},_0x5c2ef0={..._0x307623,'label':_0x304e06},_0x1bae40=_0x307623[_0x402dfa(0x1b4)]===_0x304e06,_0x2637b9=_0x1bae40?[]:[{'stage':'rename-menu','method':'POST','path':_0x402dfa(0x1a2),'body':_0x8c6ba}];return{'snapshot':_0x3eccf5,'before':_0x307623,'body':_0x8c6ba,'noChanges':_0x1bae40,'plan':mutationResult({'operation':'rename','selector':{'id':_0x19ee08},'before':_0x307623,'after':_0x5c2ef0,'dryRun':_0x36c4af,'backend':[...BACKEND],'plannedActions':_0x2637b9,'snapshotHash':_0x3eccf5[_0x402dfa(0x1a1)],'warnings':_0x1bae40?[_0x402dfa(0x1df)]:[]})};}function verifyRenamedFact(_0x36610c,_0x233195,_0x5a2d71){const _0x548feb=a125_0x3da7d8,_0x230097=[['id',_0x233195['id'],_0x36610c['id']],['parentId',_0x233195[_0x548feb(0x1ad)],_0x36610c[_0x548feb(0x1ad)]],[_0x548feb(0x1ba),_0x233195[_0x548feb(0x1ba)],_0x36610c[_0x548feb(0x1ba)]],['path',_0x233195[_0x548feb(0x1a5)],_0x36610c['path']],[_0x548feb(0x1e5),_0x233195[_0x548feb(0x1e5)],_0x36610c[_0x548feb(0x1e5)]],[_0x548feb(0x1a7),_0x233195[_0x548feb(0x1a7)],_0x36610c[_0x548feb(0x1a7)]],[_0x548feb(0x1aa),_0x233195['visible'],_0x36610c['visible']],['sort',_0x233195[_0x548feb(0x1d4)],_0x36610c[_0x548feb(0x1d4)]],[_0x548feb(0x1d3),_0x233195[_0x548feb(0x1d3)],_0x36610c[_0x548feb(0x1d3)]],[_0x548feb(0x1b2),_0x233195['resourcesValid'],_0x36610c[_0x548feb(0x1b2)]],[_0x548feb(0x1b0),_0x233195[_0x548feb(0x1b0)],_0x36610c[_0x548feb(0x1b0)]],[_0x548feb(0x1bb),_0x233195['childrenCount'],_0x36610c[_0x548feb(0x1bb)]],[_0x548feb(0x1a4),_0x233195[_0x548feb(0x1a4)],_0x36610c[_0x548feb(0x1a4)]],['pageType',_0x233195['pageType'],_0x36610c['pageType']],[_0x548feb(0x1cf),_0x233195[_0x548feb(0x1cf)],_0x36610c[_0x548feb(0x1cf)]],[_0x548feb(0x1ca),_0x233195[_0x548feb(0x1ca)],_0x36610c['datasetId']],['datasetCode',_0x233195['datasetCode'],_0x36610c[_0x548feb(0x1cb)]]];for(const [_0x153404,_0x3ff0ee,_0xfe1eb5]of _0x230097){assertVerified(sameValue(_0x3ff0ee,_0xfe1eb5),_0x548feb(0x1bf)+_0x36610c['id']+'\x20'+_0x153404+'\x20changed\x20during\x20the\x20label-only\x20rename.');}assertVerified(_0x233195[_0x548feb(0x1b4)]===_0x5a2d71,_0x548feb(0x1bf)+_0x36610c['id']+_0x548feb(0x1b8));}function sameValue(_0x2d04b8,_0x2bcc82){const _0x4f6857=a125_0x3da7d8;if(Array[_0x4f6857(0x1a3)](_0x2d04b8)||Array['isArray'](_0x2bcc82))return JSON[_0x4f6857(0x1bc)](_0x2d04b8)===JSON[_0x4f6857(0x1bc)](_0x2bcc82);return _0x2d04b8===_0x2bcc82;}function renameSuccess(_0x4a5cb2,_0x19d849,_0x2a4310,_0x1b330c,_0x596d53){const _0x44a2a4=a125_0x3da7d8,_0x48eb7c=_0x2a4310['id'],_0x348c44=mutationResult({..._0x4a5cb2,'after':_0x2a4310,'dryRun':![],'succeeded':[{'id':_0x48eb7c,'updated':!_0x1b330c,'skipped':_0x1b330c,'recovered':_0x596d53}],'verification':{'checkedBy':_0x44a2a4(0x1e3),'snapshotHash':_0x19d849[_0x44a2a4(0x1a1)],'targetId':_0x48eb7c,'matchesRequestedState':!![],'recovered':_0x596d53}});return{'ok':!![],'message':_0x596d53?'Recovered\x20confirmed\x20rename\x20for\x20menu\x20'+_0x48eb7c+'.':_0x1b330c?'Menu\x20'+_0x48eb7c+_0x44a2a4(0x1e6):'Renamed\x20menu\x20'+_0x48eb7c+'.','data':{..._0x348c44,'recovered':_0x596d53}};}function a125_0x5385(_0x30a1a5,_0x292722){_0x30a1a5=_0x30a1a5-0x1a1;const _0x327215=a125_0x3272();let _0x538580=_0x327215[_0x30a1a5];return _0x538580;}async function recoverAfterResponseLoss(_0x577816,_0x33ddef){const _0x160f6b=a125_0x3da7d8,{plan:_0x4a9729,before:_0x11f9eb,body:_0x14c845}=_0x33ddef;let _0x3d7658;try{_0x3d7658=await fetchMenuSnapshot(_0x577816[_0x160f6b(0x1da)],_0x577816['cookie']);}catch{throw recoveryRequired(_0x4a9729,_0x577816['appCode'],{'id':_0x14c845['id'],'readbackFailed':!![]});}const _0x530b01=_0x3d7658[_0x160f6b(0x1af)]['get'](_0x14c845['id']);if(!_0x530b01||_0x530b01[_0x160f6b(0x1b4)]!==_0x14c845['label'])throw recoveryRequired(_0x4a9729,_0x577816[_0x160f6b(0x1da)],{'id':_0x14c845['id'],'requestedLabelObserved':![],'after':_0x530b01??null});try{verifyRenamedFact(_0x11f9eb,_0x530b01,_0x14c845[_0x160f6b(0x1b4)]);}catch(_0x2ba763){const _0x20fe5d=asVerificationError(_0x2ba763,_0x160f6b(0x1dc)+_0x14c845['id']+_0x160f6b(0x1eb));throw menuFailure(_0x20fe5d,_0x4a9729,{'stage':'update-recovery','succeeded':[{'id':_0x14c845['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x14c845['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x530b01,'warnings':[_0x160f6b(0x1a9)],'verification':{'status':_0x160f6b(0x1de),'targetId':_0x14c845['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x577816[_0x160f6b(0x1da)])}});}return renameSuccess(_0x4a9729,_0x3d7658,_0x530b01,![],!![]);}function recoveryRequired(_0x470cc2,_0x1de8f4,_0x5e26be){const _0x4987d2=a125_0x3da7d8,_0x5eb909=menuError(_0x4987d2(0x1e2),_0x4987d2(0x1c7),_0x4987d2(0x1e9)+buildLookupCommand(_0x1de8f4)+_0x4987d2(0x1b5));return menuFailure(_0x5eb909,_0x470cc2,{'stage':'update-recovery','failed':{'id':_0x5e26be['id'],..._0x5e26be[_0x4987d2(0x1cc)]===undefined?{}:{'requestedLabelObserved':_0x5e26be[_0x4987d2(0x1cc)]},..._0x5e26be[_0x4987d2(0x1d5)]?{'readbackFailed':!![]}:{}},'after':_0x5e26be[_0x4987d2(0x1cd)],'warnings':[_0x4987d2(0x1db)],'verification':{'status':'failed','targetId':_0x5e26be['id'],..._0x5e26be['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x5e26be['requestedLabelObserved']},..._0x5e26be[_0x4987d2(0x1d5)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x1de8f4)}});}function buildLookupCommand(_0x1148ab){const _0x30fc20=a125_0x3da7d8,_0x125583='\x27'+_0x1148ab[_0x30fc20(0x1c0)](/'/g,_0x30fc20(0x1d9))+'\x27';return _0x30fc20(0x1b1)+_0x125583+_0x30fc20(0x1be);}
|
|
1
|
+
const a125_0x18db90=a125_0x2fa9;(function(_0x27a385,_0x2f027e){const _0x37d78e=a125_0x2fa9,_0x210a34=_0x27a385();while(!![]){try{const _0x55cf28=parseInt(_0x37d78e(0x113))/0x1+parseInt(_0x37d78e(0x107))/0x2+-parseInt(_0x37d78e(0x111))/0x3*(-parseInt(_0x37d78e(0xf8))/0x4)+-parseInt(_0x37d78e(0xdc))/0x5*(parseInt(_0x37d78e(0xd6))/0x6)+-parseInt(_0x37d78e(0x108))/0x7+-parseInt(_0x37d78e(0x10d))/0x8+parseInt(_0x37d78e(0xff))/0x9;if(_0x55cf28===_0x2f027e)break;else _0x210a34['push'](_0x210a34['shift']());}catch(_0x3696bd){_0x210a34['push'](_0x210a34['shift']());}}}(a125_0x2bd0,0x8449f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a125_0x18db90(0xf3),'path':a125_0x18db90(0xf1)}];export const menuRename={'service':a125_0x18db90(0x114),'command':a125_0x18db90(0xfb),'description':a125_0x18db90(0xd5),'risk':a125_0x18db90(0xd4),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a125_0x18db90(0xe4),'type':a125_0x18db90(0x112),'required':!![],'description':a125_0x18db90(0xf6)},{'name':a125_0x18db90(0xe7),'type':'string','required':!![],'description':a125_0x18db90(0xf9)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x22a751){validateInput(_0x22a751);},async 'dryRun'(_0x3e8336){const _0x522f1e=a125_0x18db90;validateInput(_0x3e8336);const _0x5c788c=await buildPlan(_0x3e8336,!![]);return menuDryRunResult(_0x5c788c[_0x522f1e(0xf4)],{'method':'POST','url':_0x522f1e(0xf1),'body':_0x5c788c['body'],'description':'Would\x20rename\x20menu\x20'+_0x5c788c[_0x522f1e(0x10f)]['id']+'.'});},async 'execute'(_0x441102){const _0x4a2e0c=a125_0x18db90;validateInput(_0x441102);const _0x1f9776=await buildPlan(_0x441102,![]),{plan:_0x4d5ad6,body:_0x19ec63,before:_0x2bc5cd,noChanges:_0x25c4f3}=_0x1f9776,_0x1b31ae=_0x19ec63['id'];if(_0x25c4f3)return renameSuccess(_0x4d5ad6,_0x1f9776[_0x4a2e0c(0xe5)],_0x2bc5cd,!![],![]);await recheckMutationSnapshot(_0x441102,_0x4d5ad6,_0x4a2e0c(0xef),_0x1b31ae);try{await updateMenuEntity(_0x441102[_0x4a2e0c(0xd0)],_0x441102[_0x4a2e0c(0xd8)],{'id':_0x1b31ae,'label':_0x19ec63['label']});}catch(_0x384798){const _0x5d529a=mapMenuApiError(_0x384798,_0x4a2e0c(0xfb),_0x1b31ae);if(isMenuResponseLoss(_0x384798)&&_0x5d529a['code']!==_0x4a2e0c(0xf7))return recoverAfterResponseLoss(_0x441102,_0x1f9776);throw menuFailure(_0x5d529a,_0x4d5ad6,{'stage':'update','failed':{'id':_0x1b31ae},'warnings':[_0x4a2e0c(0xe6)],'verification':{'status':_0x4a2e0c(0xfc),'targetId':_0x1b31ae,'lookupCommand':buildLookupCommand(_0x441102[_0x4a2e0c(0xd0)])}});}let _0x59abde,_0x4ecc1e;try{_0x59abde=await fetchMenuSnapshot(_0x441102[_0x4a2e0c(0xd0)],_0x441102[_0x4a2e0c(0xd8)]),_0x4ecc1e=requireMenu(_0x59abde,_0x1b31ae),verifyRenamedFact(_0x2bc5cd,_0x4ecc1e,_0x19ec63['label']);}catch(_0x49fd5f){const _0x36be18=describeMenuErrorCause(_0x49fd5f,_0x4a2e0c(0x109),_0x1b31ae),_0x4277eb=asVerificationError(_0x49fd5f,_0x4a2e0c(0xe2)+_0x1b31ae+_0x4a2e0c(0x11c));throw menuFailure(_0x4277eb,_0x4d5ad6,{'stage':_0x4a2e0c(0xd7),'succeeded':[{'id':_0x1b31ae,'updateRequested':!![]}],'failed':{'id':_0x1b31ae,'requestedStateConfirmed':![],..._0x36be18},'warnings':[_0x4a2e0c(0xe8)],'verification':{'status':'failed','targetId':_0x1b31ae,'lookupCommand':buildLookupCommand(_0x441102[_0x4a2e0c(0xd0)])}});}return renameSuccess(_0x4d5ad6,_0x59abde,_0x4ecc1e,![],![]);}};function validateInput(_0x15d127){const _0x5241bb=a125_0x18db90;validateExactId(_0x15d127);if(!_0x15d127[_0x5241bb(0xe1)]('label')['trim']())throw CliErrors['validation'](_0x5241bb(0xdb));if(!_0x15d127['str'](_0x5241bb(0xe7))[_0x5241bb(0x110)]())throw CliErrors[_0x5241bb(0x10c)](_0x5241bb(0xe7));}function a125_0x2bd0(){const _0x4df598=['Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','isArray','rename','failed','requestedLabelObserved','Menu\x20','15235164OesxAl','hash','datasetId','menu_update_recovery_required','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','menu_state_drift',',\x20current\x20','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','1064074bxwZNr','7023051ykxTcs','verify\x20menu\x20rename','\x20already\x20has\x20the\x20requested\x20label.','menu\x20list','flagMissing','4558616VOPeGD','after','body','trim','3GcgFeY','string','195544AhEgDP','menu','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','resourcesValid','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','\x20could\x20not\x20be\x20verified\x20safely','\x20--format\x20compress','get','childrenIds','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','depth','parentId','appCode','sort','replace','pageId','write','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','637314bZIsJX','verification','cookie','datasetCode','rabetbase\x20menu\x20list\x20--appcode\x20','--label\x20cannot\x20be\x20empty.','45jBYcho','path','resources','\x20changed\x20during\x20the\x20label-only\x20rename.','stringify','str','Rename\x20request\x20for\x20menu\x20','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','label','snapshot','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','expect-label','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','byId','url','pageType','childrenCount','type','\x20label\x20update\x20did\x20not\x20take\x20effect.','rename\x20menu','readbackFailed','/smartapi/menu/update','visible','POST','plan','update-recovery','New\x20menu\x20label','menu_permission_denied','2602276INvSje'];a125_0x2bd0=function(){return _0x4df598;};return a125_0x2bd0();}async function buildPlan(_0x11a049,_0x33524a){const _0x3c2627=a125_0x18db90,_0x3cee8d=validateExactId(_0x11a049),_0x5b835b=_0x11a049[_0x3c2627(0xe1)]('label')[_0x3c2627(0x110)](),_0xb00a3=_0x11a049[_0x3c2627(0xe1)](_0x3c2627(0xe7)),_0x51eae6=await fetchMutationSnapshot(_0x11a049,_0x3c2627(0xef),_0x3cee8d),_0x1d5ca6=requireMenu(_0x51eae6,_0x3cee8d);if(_0x1d5ca6[_0x3c2627(0xe4)]!==_0xb00a3)throw menuError(_0x3c2627(0x104),_0x3c2627(0xfe)+_0x3cee8d+'\x20label\x20changed:\x20expected\x20'+JSON['stringify'](_0xb00a3)+_0x3c2627(0x105)+JSON['stringify'](_0x1d5ca6[_0x3c2627(0xe4)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.');const _0x2d37a2={'id':_0x3cee8d,'appCode':_0x11a049[_0x3c2627(0xd0)],'label':_0x5b835b},_0xf750dc={..._0x1d5ca6,'label':_0x5b835b},_0x337e29=_0x1d5ca6[_0x3c2627(0xe4)]===_0x5b835b,_0x336157=_0x337e29?[]:[{'stage':'rename-menu','method':_0x3c2627(0xf3),'path':_0x3c2627(0xf1),'body':_0x2d37a2}];return{'snapshot':_0x51eae6,'before':_0x1d5ca6,'body':_0x2d37a2,'noChanges':_0x337e29,'plan':mutationResult({'operation':'rename','selector':{'id':_0x3cee8d},'before':_0x1d5ca6,'after':_0xf750dc,'dryRun':_0x33524a,'backend':[...BACKEND],'plannedActions':_0x336157,'snapshotHash':_0x51eae6[_0x3c2627(0x100)],'warnings':_0x337e29?[_0x3c2627(0x115)]:[]})};}function verifyRenamedFact(_0x3347c8,_0x2773e5,_0x2733df){const _0xd2951=a125_0x18db90,_0x395c70=[['id',_0x2773e5['id'],_0x3347c8['id']],[_0xd2951(0xcf),_0x2773e5[_0xd2951(0xcf)],_0x3347c8['parentId']],[_0xd2951(0xce),_0x2773e5['depth'],_0x3347c8[_0xd2951(0xce)]],[_0xd2951(0xdd),_0x2773e5[_0xd2951(0xdd)],_0x3347c8['path']],[_0xd2951(0xea),_0x2773e5['url'],_0x3347c8[_0xd2951(0xea)]],[_0xd2951(0xed),_0x2773e5[_0xd2951(0xed)],_0x3347c8[_0xd2951(0xed)]],[_0xd2951(0xf2),_0x2773e5[_0xd2951(0xf2)],_0x3347c8[_0xd2951(0xf2)]],[_0xd2951(0xd1),_0x2773e5['sort'],_0x3347c8[_0xd2951(0xd1)]],[_0xd2951(0xde),_0x2773e5[_0xd2951(0xde)],_0x3347c8[_0xd2951(0xde)]],[_0xd2951(0x116),_0x2773e5[_0xd2951(0x116)],_0x3347c8[_0xd2951(0x116)]],['childrenIds',_0x2773e5[_0xd2951(0x11b)],_0x3347c8[_0xd2951(0x11b)]],[_0xd2951(0xec),_0x2773e5[_0xd2951(0xec)],_0x3347c8[_0xd2951(0xec)]],['pageId',_0x2773e5[_0xd2951(0xd3)],_0x3347c8[_0xd2951(0xd3)]],[_0xd2951(0xeb),_0x2773e5[_0xd2951(0xeb)],_0x3347c8['pageType']],['modelType',_0x2773e5['modelType'],_0x3347c8['modelType']],[_0xd2951(0x101),_0x2773e5[_0xd2951(0x101)],_0x3347c8[_0xd2951(0x101)]],[_0xd2951(0xd9),_0x2773e5[_0xd2951(0xd9)],_0x3347c8[_0xd2951(0xd9)]]];for(const [_0x31670d,_0x22f7ee,_0x39c62e]of _0x395c70){assertVerified(sameValue(_0x22f7ee,_0x39c62e),_0xd2951(0xfe)+_0x3347c8['id']+'\x20'+_0x31670d+_0xd2951(0xdf));}assertVerified(_0x2773e5[_0xd2951(0xe4)]===_0x2733df,_0xd2951(0xfe)+_0x3347c8['id']+_0xd2951(0xee));}function a125_0x2fa9(_0x342848,_0x32a067){_0x342848=_0x342848-0xce;const _0x2bd03f=a125_0x2bd0();let _0x2fa9a3=_0x2bd03f[_0x342848];return _0x2fa9a3;}function sameValue(_0x19ff69,_0x307c87){const _0x23f392=a125_0x18db90;if(Array[_0x23f392(0xfa)](_0x19ff69)||Array['isArray'](_0x307c87))return JSON[_0x23f392(0xe0)](_0x19ff69)===JSON['stringify'](_0x307c87);return _0x19ff69===_0x307c87;}function renameSuccess(_0x2c7bcd,_0x255c82,_0x595e0c,_0x583764,_0x1710f9){const _0x430c40=a125_0x18db90,_0x319cc0=_0x595e0c['id'],_0xb2531a=mutationResult({..._0x2c7bcd,'after':_0x595e0c,'dryRun':![],'succeeded':[{'id':_0x319cc0,'updated':!_0x583764,'skipped':_0x583764,'recovered':_0x1710f9}],'verification':{'checkedBy':_0x430c40(0x10b),'snapshotHash':_0x255c82[_0x430c40(0x100)],'targetId':_0x319cc0,'matchesRequestedState':!![],'recovered':_0x1710f9}});return{'ok':!![],'message':_0x1710f9?_0x430c40(0xe3)+_0x319cc0+'.':_0x583764?_0x430c40(0xfe)+_0x319cc0+_0x430c40(0x10a):'Renamed\x20menu\x20'+_0x319cc0+'.','data':{..._0xb2531a,'recovered':_0x1710f9}};}async function recoverAfterResponseLoss(_0x3049de,_0x2478d3){const _0x1fdb15=a125_0x18db90,{plan:_0x5ee8a6,before:_0x10bfcc,body:_0x31bd32}=_0x2478d3;let _0x1f7bef;try{_0x1f7bef=await fetchMenuSnapshot(_0x3049de[_0x1fdb15(0xd0)],_0x3049de[_0x1fdb15(0xd8)]);}catch{throw recoveryRequired(_0x5ee8a6,_0x3049de[_0x1fdb15(0xd0)],{'id':_0x31bd32['id'],'readbackFailed':!![]});}const _0x41010e=_0x1f7bef[_0x1fdb15(0xe9)][_0x1fdb15(0x11a)](_0x31bd32['id']);if(!_0x41010e||_0x41010e[_0x1fdb15(0xe4)]!==_0x31bd32['label'])throw recoveryRequired(_0x5ee8a6,_0x3049de[_0x1fdb15(0xd0)],{'id':_0x31bd32['id'],'requestedLabelObserved':![],'after':_0x41010e??null});try{verifyRenamedFact(_0x10bfcc,_0x41010e,_0x31bd32['label']);}catch(_0x5b4c74){const _0x488307=asVerificationError(_0x5b4c74,'Response\x20was\x20lost\x20and\x20menu\x20'+_0x31bd32['id']+_0x1fdb15(0x118));throw menuFailure(_0x488307,_0x5ee8a6,{'stage':_0x1fdb15(0xf5),'succeeded':[{'id':_0x31bd32['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x31bd32['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x41010e,'warnings':['The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x1fdb15(0xfc),'targetId':_0x31bd32['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x3049de[_0x1fdb15(0xd0)])}});}return renameSuccess(_0x5ee8a6,_0x1f7bef,_0x41010e,![],!![]);}function recoveryRequired(_0x10c8d8,_0x464066,_0x28bfd4){const _0x482435=a125_0x18db90,_0x4bfd91=menuError(_0x482435(0x102),_0x482435(0x103),'Run\x20'+buildLookupCommand(_0x464066)+_0x482435(0x117));return menuFailure(_0x4bfd91,_0x10c8d8,{'stage':_0x482435(0xf5),'failed':{'id':_0x28bfd4['id'],..._0x28bfd4[_0x482435(0xfd)]===undefined?{}:{'requestedLabelObserved':_0x28bfd4[_0x482435(0xfd)]},..._0x28bfd4[_0x482435(0xf0)]?{'readbackFailed':!![]}:{}},'after':_0x28bfd4[_0x482435(0x10e)],'warnings':[_0x482435(0x106)],'verification':{'status':'failed','targetId':_0x28bfd4['id'],..._0x28bfd4[_0x482435(0xfd)]===undefined?{}:{'requestedLabelObserved':_0x28bfd4['requestedLabelObserved']},..._0x28bfd4['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x464066)}});}function buildLookupCommand(_0x3f4722){const _0x499b16=a125_0x18db90,_0x5c9213='\x27'+_0x3f4722[_0x499b16(0xd2)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x499b16(0xda)+_0x5c9213+_0x499b16(0x119);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2f2bba,_0x3eace0){const _0x21b67c=a126_0x334f,_0x1e1353=_0x2f2bba();while(!![]){try{const _0x2457f5=-parseInt(_0x21b67c(0x14f))/0x1*(parseInt(_0x21b67c(0x152))/0x2)+parseInt(_0x21b67c(0x167))/0x3*(parseInt(_0x21b67c(0x148))/0x4)+parseInt(_0x21b67c(0x15f))/0x5+parseInt(_0x21b67c(0x149))/0x6+parseInt(_0x21b67c(0x150))/0x7*(parseInt(_0x21b67c(0x14b))/0x8)+-parseInt(_0x21b67c(0x154))/0x9*(parseInt(_0x21b67c(0x158))/0xa)+parseInt(_0x21b67c(0x14e))/0xb*(-parseInt(_0x21b67c(0x157))/0xc);if(_0x2457f5===_0x3eace0)break;else _0x1e1353['push'](_0x1e1353['shift']());}catch(_0x44cac7){_0x1e1353['push'](_0x1e1353['shift']());}}}(a126_0x5a71,0x2cd4e));function a126_0x5a71(){const _0x482000=['722235DgyLXt','\x20\x20All\x20local\x20pages\x20are\x20already\x20on\x20platform.','\x20menu(s)\x20will\x20be\x20updated\x20with\x20new\x20assets:','Platform','\x20\x20\x20\x20•\x20','test','max','\x20\x20No\x20pages\x20to\x20sync.','1086fQQLiX','Menu\x20Name','local','path','label','1796tTyTwJ','877536EEUVRs','push','37168QiDnVT','Path','\x20\x20\x20\x20CSS:\x20','87879ToXiMh','471FVFAZL','294oIolrA','map','1054zASJTS','\x20page(s)\x20will\x20be\x20created\x20on\x20platform:','36873eXXPgK','Local','(unchanged)','36PlfXRH','470xfaEqe','\x20\x20No\x20menus\x20with\x20existing\x20resources\x20found.','join','repeat','online','showOnline','length'];a126_0x5a71=function(){return _0x482000;};return a126_0x5a71();}function strWidth(_0x229583){const _0x33df49=a126_0x334f;let _0x59ab55=0x0;for(const _0x3176bf of _0x229583){_0x59ab55+=/[\u4e00-\u9fa5]/[_0x33df49(0x164)](_0x3176bf)?0x2:0x1;}return _0x59ab55;}function a126_0x334f(_0x49a92b,_0x3b1d2d){_0x49a92b=_0x49a92b-0x147;const _0x5a712d=a126_0x5a71();let _0x334fb6=_0x5a712d[_0x49a92b];return _0x334fb6;}function padRight(_0x5ba965,_0x214613){const _0x1eea23=a126_0x334f,_0x5dcd24=strWidth(_0x5ba965);return _0x5ba965+'\x20'[_0x1eea23(0x15b)](Math['max'](0x0,_0x214613-_0x5dcd24));}export function renderCompareTable(_0x55b5e6,_0x1c5346={}){const _0x553612=a126_0x334f;if(_0x55b5e6['length']===0x0)return'';const _0x5a3e02=_0x1c5346[_0x553612(0x15d)]??!![],_0x47dd2e=Math[_0x553612(0x165)](0x1e,..._0x55b5e6[_0x553612(0x151)](_0x3e3a78=>strWidth(_0x3e3a78['label']))),_0x2ba096=Math['max'](0x18,..._0x55b5e6[_0x553612(0x151)](_0x2fa765=>strWidth(_0x2fa765['path']))),_0x4d9eb9=0x4,_0x1b52ef=[],_0x433a52='\x20\x20'+padRight(_0x553612(0x168),_0x47dd2e),_0x11ff60=padRight(_0x553612(0x14c),_0x2ba096),_0x4a9b69=padRight(_0x553612(0x155),_0x4d9eb9),_0x113cb4=_0x5a3e02?'\x20\x20'+padRight(_0x553612(0x162),_0x4d9eb9):'';_0x1b52ef['push'](_0x433a52+'\x20\x20'+_0x11ff60+'\x20\x20'+_0x4a9b69+(_0x5a3e02?_0x113cb4:'')),_0x1b52ef['push']('\x20\x20'+'─'[_0x553612(0x15b)](_0x47dd2e)+'\x20\x20'+'─'[_0x553612(0x15b)](_0x2ba096)+'\x20\x20'+'─'[_0x553612(0x15b)](_0x4d9eb9)+(_0x5a3e02?'\x20\x20'+'─'[_0x553612(0x15b)](_0x4d9eb9):''));for(const _0x2fd6f4 of _0x55b5e6){const _0x49f6f7=padRight(_0x2fd6f4['label'],_0x47dd2e),_0x569f42=padRight(_0x2fd6f4['path'],_0x2ba096),_0x435370=_0x2fd6f4[_0x553612(0x169)]?'✓':'✗',_0x240081=padRight(_0x435370,_0x4d9eb9);let _0x19ed3a='\x20\x20'+_0x49f6f7+'\x20\x20'+_0x569f42+'\x20\x20'+_0x240081;if(_0x5a3e02){const _0x50d1ad=_0x2fd6f4[_0x553612(0x15c)]?'✓':'✗';_0x19ed3a+='\x20\x20'+padRight(_0x50d1ad,_0x4d9eb9);}_0x1b52ef[_0x553612(0x14a)](_0x19ed3a);}return _0x1b52ef[_0x553612(0x15a)]('\x0a');}export function renderSyncSummary(_0x46ee15,_0xe98145){const _0x27d90a=a126_0x334f;if(_0x46ee15[_0x27d90a(0x15e)]===0x0)return _0xe98145?_0x27d90a(0x160):_0x27d90a(0x166);const _0x23d856=['\x20\x20'+_0x46ee15[_0x27d90a(0x15e)]+_0x27d90a(0x153)];for(const _0x127a5b of _0x46ee15){_0x23d856[_0x27d90a(0x14a)](_0x27d90a(0x163)+_0x127a5b[_0x27d90a(0x147)]+'\x20('+_0x127a5b[_0x27d90a(0x16a)]+')');}return _0x23d856[_0x27d90a(0x15a)]('\x0a');}export function renderUpdateSummary(_0x23c2f2,_0x5d11ed){const _0x587065=a126_0x334f;if(_0x23c2f2[_0x587065(0x15e)]===0x0)return _0x587065(0x159);const _0x49b5cb=['\x20\x20'+_0x23c2f2[_0x587065(0x15e)]+_0x587065(0x161),'\x20\x20\x20\x20JS:\x20\x20'+(_0x5d11ed[0x0]??_0x587065(0x156)),_0x587065(0x14d)+(_0x5d11ed[0x1]??_0x587065(0x156)),'','\x20\x20Affected\x20menus:\x20'+_0x23c2f2[_0x587065(0x15a)](',\x20')];return _0x49b5cb['join']('\x0a');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a127_0x3778ec=a127_0x3ce4;(function(_0x983644,_0x219c83){const _0x1276b2=a127_0x3ce4,_0x2bc3a0=_0x983644();while(!![]){try{const _0x5c0a90=-parseInt(_0x1276b2(0x10f))/0x1+-parseInt(_0x1276b2(0x119))/0x2+parseInt(_0x1276b2(0x126))/0x3+-parseInt(_0x1276b2(0x106))/0x4+parseInt(_0x1276b2(0x114))/0x5*(parseInt(_0x1276b2(0x150))/0x6)+parseInt(_0x1276b2(0x120))/0x7*(-parseInt(_0x1276b2(0x123))/0x8)+-parseInt(_0x1276b2(0x108))/0x9*(-parseInt(_0x1276b2(0x103))/0xa);if(_0x5c0a90===_0x219c83)break;else _0x2bc3a0['push'](_0x2bc3a0['shift']());}catch(_0x3358d9){_0x2bc3a0['push'](_0x2bc3a0['shift']());}}}(a127_0x54c3,0x6e532));import{createHash}from'node:crypto';import{mkdir,readFile,stat,writeFile}from'node:fs/promises';import{dirname,resolve}from'node:path';import{menuError,mutationResult}from'../../../commands/menu/shared/mutations.js';const PLAN_VERSION=0x2,PLAN_COMMAND=a127_0x3778ec(0x156),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x4d7a5a,_0xdffdea,_0x6fa4e9=new Date()){const _0xc27347=a127_0x3778ec;if(!_0xdffdea[_0xc27347(0x153)]||!isMenuFact(_0xdffdea['before']))throw menuError(_0xc27347(0x129),_0xc27347(0xfe));const _0x30fbbe=_0xdffdea[_0xc27347(0xf3)]?.[_0xc27347(0x115)]?_0xdffdea[_0xc27347(0xf3)]:[_0xdffdea[_0xc27347(0x153)]],_0x3769aa=_0xdffdea[_0xc27347(0x142)]?.['length']?_0xdffdea[_0xc27347(0x142)]:_0x30fbbe[_0xc27347(0x10a)](_0x4bc531=>_0x4bc531['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x4d7a5a,'createdAt':_0x6fa4e9[_0xc27347(0x130)](),'expiresAt':new Date(_0x6fa4e9[_0xc27347(0x10c)]()+PLAN_TTL_MS)[_0xc27347(0x130)](),'snapshotHash':_0xdffdea['snapshotHash'],'recursive':_0xdffdea['selector'][_0xc27347(0x12f)]===!![],'target':_0xdffdea[_0xc27347(0x153)],'targetFingerprint':fingerprint(_0xdffdea[_0xc27347(0x153)]),'targets':_0x30fbbe,'targetFingerprints':_0x30fbbe['map'](fingerprint),'deleteOrder':_0x3769aa,'cascade':_0xdffdea[_0xc27347(0x100)]??{'pages':_0xdffdea[_0xc27347(0x153)]['pageId']==null?[]:[_0xdffdea[_0xc27347(0x153)]['pageId']],'pageSchemaAffected':_0xdffdea[_0xc27347(0x153)][_0xc27347(0x147)]!=null},'warnings':[..._0xdffdea['warnings']]};}function a127_0x54c3(){const _0x13dd69=['path','object','size','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','resourcesValid','label','\x20of\x20the\x20','\x20contract.','deleteOrder','digest','hash','childrenCount','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','pageId','byId',',\x20current\x20app\x20is\x20','Planned\x20menu\x20','EEXIST','type','code','warnings','updateUserId','102fNhxhx','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','utf8','before','every','childrenIds','menu\x20delete','updateUserName','\x20bytes.','trim','/smartapi/menu/batchDelete','target','targets','resourcesHash','targetFingerprints','isSafeInteger','get','datasetId','Menu\x20delete\x20plan\x20expired\x20at\x20','batch-delete-menu','parse','sha256','visible','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','boolean','cascade','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','isInteger','10dpejUc','depth','command','1032376OrWnFg','number','16072002EvIzpF','extend','map','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','getTime','datasetCode','Menu\x20delete\x20plan\x20creation\x20time\x20','624699WrFkcq','hex','plan-out','resources','test','141305rYYwVc','length','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.','delete','update','1781692CITHTJ','createdAt','Menu\x20delete\x20plan\x20targets\x20app\x20','menu_state_drift','modelType','version','string','161GgueSU','snapshotHash','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','217032pjPuHr','plan','stringify','1749843sescQD','targetFingerprint','pageType','menu_plan_invalid','\x20is\x20in\x20the\x20future.','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.','isFinite','isArray','appCode','recursive','toISOString','POST','Cannot\x20read\x20menu\x20delete\x20plan\x20','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20','expiresAt','sort','\x20requires\x20a\x20non-empty\x20file\x20path.','extendHash','updateTime','parentId'];a127_0x54c3=function(){return _0x13dd69;};return a127_0x54c3();}export async function writeMenuDeletePlan(_0x23564e,_0x2fdbbd){const _0x34676a=a127_0x3778ec,_0x153f0a=resolvePlanPath(_0x23564e,_0x34676a(0x111));await mkdir(dirname(_0x153f0a),{'recursive':!![]});try{await writeFile(_0x153f0a,JSON[_0x34676a(0x125)](_0x2fdbbd,null,0x2)+'\x0a',{'encoding':_0x34676a(0x152),'flag':'wx'});}catch(_0x396751){if(_0x396751[_0x34676a(0x14d)]===_0x34676a(0x14b))throw menuError('menu_plan_file_exists',_0x34676a(0x133)+_0x153f0a,'Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.');throw menuError('menu_plan_write_failed','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20'+_0x153f0a+':\x20'+errorMessage(_0x396751));}return _0x153f0a;}export async function readMenuDeletePlan(_0x4a96fb){const _0xf76296=a127_0x3778ec,_0x210a9a=resolvePlanPath(_0x4a96fb,_0xf76296(0x124));let _0x513593;try{_0x513593=(await stat(_0x210a9a))[_0xf76296(0x13c)];}catch(_0x20d754){throw menuError(_0xf76296(0x129),_0xf76296(0x132)+_0x210a9a+':\x20'+errorMessage(_0x20d754));}if(_0x513593>MAX_PLAN_BYTES)throw menuError(_0xf76296(0x129),'Menu\x20delete\x20plan\x20is\x20too\x20large:\x20'+_0x513593+_0xf76296(0x158));let _0x1526fd;try{_0x1526fd=JSON[_0xf76296(0xfb)](await readFile(_0x210a9a,_0xf76296(0x152)));}catch(_0x25b802){throw menuError('menu_plan_invalid','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20'+errorMessage(_0x25b802));}if(!isMenuDeletePlanFile(_0x1526fd))throw menuError(_0xf76296(0x129),'Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20'+PLAN_VERSION+_0xf76296(0x140)+PLAN_COMMAND+_0xf76296(0x141));if(!sameFingerprint(_0x1526fd['targetFingerprint'],fingerprint(_0x1526fd[_0xf76296(0xf2)])))throw menuError(_0xf76296(0x129),_0xf76296(0x122),_0xf76296(0x13d));if(!_0x1526fd[_0xf76296(0xf3)][_0xf76296(0x154)]((_0x290824,_0x658064)=>sameFingerprint(_0x1526fd[_0xf76296(0xf5)][_0x658064],fingerprint(_0x290824)))||!sameFingerprint(_0x1526fd['targetFingerprint'],fingerprint(_0x1526fd['targets'][_0x1526fd['targets'][_0xf76296(0x115)]-0x1])))throw menuError(_0xf76296(0x129),_0xf76296(0x116),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.');return{'path':_0x210a9a,'plan':_0x1526fd};}export function mutationPlanFromDeleteFile(_0x13d561,_0x1fecda){const _0x46b951=a127_0x3778ec;return mutationResult({'operation':_0x46b951(0x117),'selector':{'id':_0x13d561[_0x46b951(0xf2)]['id'],'recursive':_0x13d561[_0x46b951(0x12f)]},'before':_0x13d561[_0x46b951(0xf2)],'after':null,'dryRun':![],'backend':[{'method':'POST','path':'/smartapi/menu/batchDelete'}],'plannedActions':[{'stage':_0x46b951(0xfa),'method':_0x46b951(0x131),'path':_0x46b951(0xf1),'body':{'idList':_0x13d561[_0x46b951(0x142)]}}],'targets':_0x13d561[_0x46b951(0xf3)],'deleteOrder':_0x13d561[_0x46b951(0x142)],'snapshotHash':_0x13d561[_0x46b951(0x121)],'cascade':_0x13d561[_0x46b951(0x100)],'planFile':{'path':_0x1fecda,'createdAt':_0x13d561['createdAt'],'expiresAt':_0x13d561[_0x46b951(0x134)]},'warnings':_0x13d561[_0x46b951(0x14e)]});}export function assertMenuDeletePlanCurrent(_0x162cd0,_0x325f06,_0x17b820,_0x1bd5a5=new Date()){const _0x25d862=a127_0x3778ec;assertMenuDeletePlanExecutable(_0x162cd0,_0x325f06,_0x1bd5a5);if(_0x17b820[_0x25d862(0x144)]!==_0x162cd0['snapshotHash'])throw menuError(_0x25d862(0x11c),_0x25d862(0x151),_0x25d862(0x12b));return _0x162cd0['targets'][_0x25d862(0x10a)]((_0x3f953e,_0x3c6fcb)=>{const _0x44e911=_0x25d862,_0x3f2353=_0x17b820[_0x44e911(0x148)][_0x44e911(0xf7)](_0x3f953e['id']);if(!_0x3f2353)throw menuError(_0x44e911(0x11c),_0x44e911(0x14a)+_0x3f953e['id']+'\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.');if(!sameFingerprint(_0x162cd0[_0x44e911(0xf5)][_0x3c6fcb],fingerprint(_0x3f2353)))throw menuError('menu_state_drift','Planned\x20menu\x20'+_0x3f953e['id']+_0x44e911(0x10b),_0x44e911(0x101));return _0x3f2353;});}export function assertMenuDeletePlanExecutable(_0x18f770,_0x34a3e3,_0x24aff1=new Date()){const _0x59a4ff=a127_0x3778ec;if(_0x18f770[_0x59a4ff(0x12e)]!==_0x34a3e3)throw menuError('menu_plan_app_mismatch',_0x59a4ff(0x11b)+JSON[_0x59a4ff(0x125)](_0x18f770['appCode'])+_0x59a4ff(0x149)+JSON[_0x59a4ff(0x125)](_0x34a3e3)+'.');const _0x32d000=Date[_0x59a4ff(0xfb)](_0x18f770[_0x59a4ff(0x11a)]),_0x5ed303=Date[_0x59a4ff(0xfb)](_0x18f770['expiresAt']);if(!Number[_0x59a4ff(0x12c)](_0x32d000)||!Number['isFinite'](_0x5ed303)||_0x5ed303-_0x32d000!==PLAN_TTL_MS)throw menuError(_0x59a4ff(0x129),'Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.');if(_0x32d000>_0x24aff1[_0x59a4ff(0x10c)]())throw menuError('menu_plan_invalid',_0x59a4ff(0x10e)+_0x18f770[_0x59a4ff(0x11a)]+_0x59a4ff(0x12a),'Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.');if(_0x24aff1[_0x59a4ff(0x10c)]()>_0x5ed303)throw menuError('menu_plan_expired',_0x59a4ff(0xf9)+_0x18f770[_0x59a4ff(0x134)]+'.',_0x59a4ff(0x146));}function fingerprint(_0x551c53){const _0x3a6eaf=a127_0x3778ec;return{'id':_0x551c53['id'],'parentId':_0x551c53[_0x3a6eaf(0x139)],'depth':_0x551c53[_0x3a6eaf(0x104)],'label':_0x551c53[_0x3a6eaf(0x13f)],'path':_0x551c53[_0x3a6eaf(0x13a)],'type':_0x551c53[_0x3a6eaf(0x14c)],'visible':_0x551c53[_0x3a6eaf(0xfd)],'sort':_0x551c53[_0x3a6eaf(0x135)],'pageId':_0x551c53[_0x3a6eaf(0x147)],'pageType':_0x551c53['pageType'],'modelType':_0x551c53[_0x3a6eaf(0x11d)],'datasetId':_0x551c53['datasetId'],'datasetCode':_0x551c53[_0x3a6eaf(0x10d)],'childrenIds':[..._0x551c53[_0x3a6eaf(0x155)]],'childrenCount':_0x551c53['childrenCount'],'resourcesValid':_0x551c53[_0x3a6eaf(0x13e)],'resourcesHash':hashValue(_0x551c53[_0x3a6eaf(0x112)]),'extendHash':hashValue(_0x551c53[_0x3a6eaf(0x109)]??null),'updateTime':_0x551c53[_0x3a6eaf(0x138)]};}function hashValue(_0x45d651){const _0x128b86=a127_0x3778ec;return createHash(_0x128b86(0xfc))[_0x128b86(0x118)](JSON['stringify'](_0x45d651))[_0x128b86(0x143)](_0x128b86(0x110));}function sameFingerprint(_0x20e875,_0x197738){const _0x169c5b=a127_0x3778ec;return JSON['stringify'](_0x20e875)===JSON[_0x169c5b(0x125)](_0x197738);}function resolvePlanPath(_0x40d4c9,_0xfc71fa){const _0x49afc0=a127_0x3778ec,_0x2713a2=_0x40d4c9[_0x49afc0(0xf0)]();if(!_0x2713a2)throw menuError(_0x49afc0(0x129),'--'+_0xfc71fa+_0x49afc0(0x136));return resolve(_0x2713a2);}function isMenuDeletePlanFile(_0x16c0d6){const _0x169eab=a127_0x3778ec;if(!isRecord(_0x16c0d6))return![];return _0x16c0d6[_0x169eab(0x11e)]===PLAN_VERSION&&_0x16c0d6[_0x169eab(0x105)]===PLAN_COMMAND&&typeof _0x16c0d6[_0x169eab(0x12e)]===_0x169eab(0x11f)&&_0x16c0d6['appCode'][_0x169eab(0x115)]>0x0&&typeof _0x16c0d6[_0x169eab(0x11a)]===_0x169eab(0x11f)&&typeof _0x16c0d6[_0x169eab(0x134)]===_0x169eab(0x11f)&&typeof _0x16c0d6[_0x169eab(0x121)]===_0x169eab(0x11f)&&/^sha256:[a-f0-9]{64}$/['test'](_0x16c0d6[_0x169eab(0x121)])&&typeof _0x16c0d6['recursive']===_0x169eab(0xff)&&isMenuFact(_0x16c0d6['target'])&&isTargetFingerprint(_0x16c0d6[_0x169eab(0x127)])&&Array['isArray'](_0x16c0d6[_0x169eab(0xf3)])&&_0x16c0d6[_0x169eab(0xf3)][_0x169eab(0x115)]>0x0&&_0x16c0d6[_0x169eab(0xf3)]['every'](isMenuFact)&&Array['isArray'](_0x16c0d6[_0x169eab(0xf5)])&&_0x16c0d6[_0x169eab(0xf5)][_0x169eab(0x115)]===_0x16c0d6[_0x169eab(0xf3)][_0x169eab(0x115)]&&_0x16c0d6['targetFingerprints'][_0x169eab(0x154)](isTargetFingerprint)&&Array[_0x169eab(0x12d)](_0x16c0d6[_0x169eab(0x142)])&&_0x16c0d6['deleteOrder']['length']===_0x16c0d6['targets'][_0x169eab(0x115)]&&_0x16c0d6[_0x169eab(0x142)]['every'](isPositiveInteger)&&new Set(_0x16c0d6['deleteOrder'])[_0x169eab(0x13c)]===_0x16c0d6[_0x169eab(0x142)]['length']&&_0x16c0d6[_0x169eab(0xf3)][_0x169eab(0x154)]((_0x332af9,_0x2f9406)=>_0x332af9['id']===_0x16c0d6[_0x169eab(0x142)][_0x2f9406])&&_0x16c0d6[_0x169eab(0xf3)][_0x16c0d6['targets'][_0x169eab(0x115)]-0x1]?.['id']===_0x16c0d6[_0x169eab(0xf2)]['id']&&isRecord(_0x16c0d6[_0x169eab(0x100)])&&Array['isArray'](_0x16c0d6[_0x169eab(0x100)]['pages'])&&_0x16c0d6['cascade']['pages'][_0x169eab(0x154)](isPositiveInteger)&&typeof _0x16c0d6[_0x169eab(0x100)]['pageSchemaAffected']==='boolean'&&Array['isArray'](_0x16c0d6['warnings'])&&_0x16c0d6[_0x169eab(0x14e)][_0x169eab(0x154)](_0x297079=>typeof _0x297079===_0x169eab(0x11f));}function isMenuFact(_0x4c2c26){const _0x875e0=a127_0x3778ec;if(!isRecord(_0x4c2c26))return![];return isPositiveInteger(_0x4c2c26['id'])&&(_0x4c2c26[_0x875e0(0x139)]===null||isPositiveInteger(_0x4c2c26[_0x875e0(0x139)]))&&Number[_0x875e0(0x102)](_0x4c2c26[_0x875e0(0x104)])&&_0x4c2c26[_0x875e0(0x104)]>=0x0&&typeof _0x4c2c26[_0x875e0(0x13f)]===_0x875e0(0x11f)&&typeof _0x4c2c26[_0x875e0(0x13a)]===_0x875e0(0x11f)&&typeof _0x4c2c26[_0x875e0(0x14c)]===_0x875e0(0x11f)&&(_0x4c2c26[_0x875e0(0xfd)]===null||typeof _0x4c2c26['visible']===_0x875e0(0xff))&&(_0x4c2c26[_0x875e0(0x135)]===null||Number['isInteger'](_0x4c2c26[_0x875e0(0x135)]))&&Array[_0x875e0(0x12d)](_0x4c2c26[_0x875e0(0x112)])&&_0x4c2c26[_0x875e0(0x112)]['every'](_0xa02c78=>typeof _0xa02c78==='string')&&typeof _0x4c2c26[_0x875e0(0x13e)]==='boolean'&&Array['isArray'](_0x4c2c26[_0x875e0(0x155)])&&_0x4c2c26[_0x875e0(0x155)]['every'](isPositiveInteger)&&Number[_0x875e0(0x102)](_0x4c2c26[_0x875e0(0x145)])&&_0x4c2c26[_0x875e0(0x145)]>=0x0&&(_0x4c2c26[_0x875e0(0x147)]===null||isPositiveInteger(_0x4c2c26[_0x875e0(0x147)]))&&typeof _0x4c2c26[_0x875e0(0x128)]===_0x875e0(0x11f)&&typeof _0x4c2c26['modelType']===_0x875e0(0x11f)&&(_0x4c2c26['datasetId']===null||isPositiveInteger(_0x4c2c26['datasetId']))&&typeof _0x4c2c26['datasetCode']==='string'&&(_0x4c2c26[_0x875e0(0x14f)]===null||typeof _0x4c2c26['updateUserId']==='string')&&(_0x4c2c26[_0x875e0(0x157)]===null||typeof _0x4c2c26[_0x875e0(0x157)]===_0x875e0(0x11f))&&(_0x4c2c26[_0x875e0(0x138)]===null||typeof _0x4c2c26[_0x875e0(0x138)]===_0x875e0(0x11f)||typeof _0x4c2c26[_0x875e0(0x138)]==='number')&&(_0x4c2c26[_0x875e0(0x109)]===undefined||_0x4c2c26[_0x875e0(0x109)]===null||isRecord(_0x4c2c26['extend']));}function isTargetFingerprint(_0x38789e){const _0x189c78=a127_0x3778ec;if(!isRecord(_0x38789e))return![];return isPositiveInteger(_0x38789e['id'])&&(_0x38789e[_0x189c78(0x139)]===null||isPositiveInteger(_0x38789e['parentId']))&&Number['isInteger'](_0x38789e['depth'])&&_0x38789e[_0x189c78(0x104)]>=0x0&&typeof _0x38789e[_0x189c78(0x13f)]===_0x189c78(0x11f)&&typeof _0x38789e['path']===_0x189c78(0x11f)&&typeof _0x38789e[_0x189c78(0x14c)]===_0x189c78(0x11f)&&(_0x38789e[_0x189c78(0xfd)]===null||typeof _0x38789e[_0x189c78(0xfd)]===_0x189c78(0xff))&&(_0x38789e['sort']===null||Number[_0x189c78(0x102)](_0x38789e[_0x189c78(0x135)]))&&(_0x38789e[_0x189c78(0x147)]===null||isPositiveInteger(_0x38789e[_0x189c78(0x147)]))&&typeof _0x38789e[_0x189c78(0x128)]===_0x189c78(0x11f)&&typeof _0x38789e['modelType']===_0x189c78(0x11f)&&(_0x38789e[_0x189c78(0xf8)]===null||isPositiveInteger(_0x38789e[_0x189c78(0xf8)]))&&typeof _0x38789e[_0x189c78(0x10d)]===_0x189c78(0x11f)&&Array['isArray'](_0x38789e[_0x189c78(0x155)])&&_0x38789e[_0x189c78(0x155)][_0x189c78(0x154)](isPositiveInteger)&&Number[_0x189c78(0x102)](_0x38789e[_0x189c78(0x145)])&&_0x38789e['childrenCount']>=0x0&&typeof _0x38789e['resourcesValid']==='boolean'&&typeof _0x38789e['resourcesHash']==='string'&&/^[a-f0-9]{64}$/[_0x189c78(0x113)](_0x38789e[_0x189c78(0xf4)])&&typeof _0x38789e[_0x189c78(0x137)]===_0x189c78(0x11f)&&/^[a-f0-9]{64}$/[_0x189c78(0x113)](_0x38789e['extendHash'])&&(_0x38789e[_0x189c78(0x138)]===null||typeof _0x38789e['updateTime']===_0x189c78(0x11f)||typeof _0x38789e[_0x189c78(0x138)]===_0x189c78(0x107));}function isRecord(_0x5ac5c6){const _0x4d8037=a127_0x3778ec;return typeof _0x5ac5c6===_0x4d8037(0x13b)&&_0x5ac5c6!==null&&!Array[_0x4d8037(0x12d)](_0x5ac5c6);}function a127_0x3ce4(_0x24479f,_0xda79dd){_0x24479f=_0x24479f-0xf0;const _0x54c336=a127_0x54c3();let _0x3ce45e=_0x54c336[_0x24479f];return _0x3ce45e;}function isPositiveInteger(_0x5f4184){const _0x1c3652=a127_0x3778ec;return Number[_0x1c3652(0xf6)](_0x5f4184)&&Number(_0x5f4184)>0x0;}function errorMessage(_0x4159b7){return _0x4159b7 instanceof Error?_0x4159b7['message']:String(_0x4159b7);}
|
|
1
|
+
(function(_0x5dd98b,_0x1ab2fd){const _0x43bab6=a127_0x4a3b,_0x5240a2=_0x5dd98b();while(!![]){try{const _0x76c8c6=parseInt(_0x43bab6(0x10c))/0x1*(-parseInt(_0x43bab6(0xd4))/0x2)+parseInt(_0x43bab6(0x119))/0x3+-parseInt(_0x43bab6(0xdf))/0x4*(parseInt(_0x43bab6(0xf2))/0x5)+-parseInt(_0x43bab6(0x122))/0x6+-parseInt(_0x43bab6(0x111))/0x7+parseInt(_0x43bab6(0xc1))/0x8+-parseInt(_0x43bab6(0xfd))/0x9*(-parseInt(_0x43bab6(0x103))/0xa);if(_0x76c8c6===_0x1ab2fd)break;else _0x5240a2['push'](_0x5240a2['shift']());}catch(_0x24a685){_0x5240a2['push'](_0x5240a2['shift']());}}}(a127_0x5aff,0xcaa44));import{createHash}from'node:crypto';import{mkdir,readFile,stat,writeFile}from'node:fs/promises';import{dirname,resolve}from'node:path';function a127_0x5aff(){const _0x3c7ca2=['menu_state_drift','hash','/smartapi/menu/batchDelete','deleteOrder','updateUserId','EEXIST','\x20is\x20in\x20the\x20future.','pageType','targets','resourcesHash','targetFingerprint','4OyoVIL','target','pageId','toISOString','update','utf8','POST','pageSchemaAffected','delete','Menu\x20delete\x20plan\x20creation\x20time\x20','resources','60slCRKo','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','getTime','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','parentId','\x20requires\x20a\x20non-empty\x20file\x20path.','plan',',\x20current\x20app\x20is\x20','plan-out','\x20contract.','isFinite','visible','menu_plan_invalid','Cannot\x20read\x20menu\x20delete\x20plan\x20','string','label','targetFingerprints','menu_plan_expired','appCode','270650LxMnBS','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','sha256','message','cascade','pages','updateTime','modelType','code','createdAt','byId','20223arjxss','extendHash','childrenIds','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.','sort','12480TyUpUC','isInteger','stringify','every','trim','datasetCode','hex','type','length','148335ZqEmXf','before','Menu\x20delete\x20plan\x20expired\x20at\x20','updateUserName','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','10350319xwggQx','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20','Planned\x20menu\x20','get','test','number','datasetId','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','3530691lrEQrx','boolean','menu_plan_file_exists','recursive','resourcesValid','digest','parse','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','depth','9648198ShRDQi','extend','isArray','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','path','version','warnings','8353096qkQXVn','childrenCount','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','snapshotHash','map','menu_plan_app_mismatch','expiresAt'];a127_0x5aff=function(){return _0x3c7ca2;};return a127_0x5aff();}import{menuError,mutationResult}from'../../../commands/menu/shared/mutations.js';const PLAN_VERSION=0x2,PLAN_COMMAND='menu\x20delete',PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x180076,_0x56cae5,_0x440fcb=new Date()){const _0x2b4d73=a127_0x4a3b;if(!_0x56cae5[_0x2b4d73(0x10d)]||!isMenuFact(_0x56cae5['before']))throw menuError('menu_plan_invalid',_0x2b4d73(0x118));const _0xb6be24=_0x56cae5[_0x2b4d73(0xd1)]?.['length']?_0x56cae5[_0x2b4d73(0xd1)]:[_0x56cae5[_0x2b4d73(0x10d)]],_0x45da2c=_0x56cae5[_0x2b4d73(0xcc)]?.[_0x2b4d73(0x10b)]?_0x56cae5[_0x2b4d73(0xcc)]:_0xb6be24[_0x2b4d73(0xc6)](_0x39b362=>_0x39b362['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x180076,'createdAt':_0x440fcb['toISOString'](),'expiresAt':new Date(_0x440fcb['getTime']()+PLAN_TTL_MS)[_0x2b4d73(0xd7)](),'snapshotHash':_0x56cae5[_0x2b4d73(0xc5)],'recursive':_0x56cae5['selector'][_0x2b4d73(0x11c)]===!![],'target':_0x56cae5[_0x2b4d73(0x10d)],'targetFingerprint':fingerprint(_0x56cae5[_0x2b4d73(0x10d)]),'targets':_0xb6be24,'targetFingerprints':_0xb6be24[_0x2b4d73(0xc6)](fingerprint),'deleteOrder':_0x45da2c,'cascade':_0x56cae5['cascade']??{'pages':_0x56cae5[_0x2b4d73(0x10d)]['pageId']==null?[]:[_0x56cae5[_0x2b4d73(0x10d)][_0x2b4d73(0xd6)]],'pageSchemaAffected':_0x56cae5[_0x2b4d73(0x10d)][_0x2b4d73(0xd6)]!=null},'warnings':[..._0x56cae5['warnings']]};}export async function writeMenuDeletePlan(_0x215d4b,_0x41056e){const _0x3c02f9=a127_0x4a3b,_0x42df20=resolvePlanPath(_0x215d4b,_0x3c02f9(0xe7));await mkdir(dirname(_0x42df20),{'recursive':!![]});try{await writeFile(_0x42df20,JSON['stringify'](_0x41056e,null,0x2)+'\x0a',{'encoding':_0x3c02f9(0xd9),'flag':'wx'});}catch(_0x27fb74){if(_0x27fb74[_0x3c02f9(0xfa)]===_0x3c02f9(0xce))throw menuError(_0x3c02f9(0x11b),_0x3c02f9(0x112)+_0x42df20,'Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.');throw menuError('menu_plan_write_failed','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20'+_0x42df20+':\x20'+errorMessage(_0x27fb74));}return _0x42df20;}export async function readMenuDeletePlan(_0x25a14d){const _0x2ad770=a127_0x4a3b,_0x57915b=resolvePlanPath(_0x25a14d,_0x2ad770(0xe5));let _0x1193f8;try{_0x1193f8=(await stat(_0x57915b))['size'];}catch(_0x1d6064){throw menuError('menu_plan_invalid',_0x2ad770(0xec)+_0x57915b+':\x20'+errorMessage(_0x1d6064));}if(_0x1193f8>MAX_PLAN_BYTES)throw menuError('menu_plan_invalid',_0x2ad770(0xe0)+_0x1193f8+'\x20bytes.');let _0x25dcd9;try{_0x25dcd9=JSON[_0x2ad770(0x11f)](await readFile(_0x57915b,_0x2ad770(0xd9)));}catch(_0x59826d){throw menuError('menu_plan_invalid',_0x2ad770(0x125)+errorMessage(_0x59826d));}if(!isMenuDeletePlanFile(_0x25dcd9))throw menuError('menu_plan_invalid',_0x2ad770(0xe2)+PLAN_VERSION+'\x20of\x20the\x20'+PLAN_COMMAND+_0x2ad770(0xe8));if(!sameFingerprint(_0x25dcd9[_0x2ad770(0xd3)],fingerprint(_0x25dcd9[_0x2ad770(0xd5)])))throw menuError(_0x2ad770(0xeb),_0x2ad770(0x110),_0x2ad770(0xc3));if(!_0x25dcd9[_0x2ad770(0xd1)][_0x2ad770(0x106)]((_0x230596,_0x270030)=>sameFingerprint(_0x25dcd9[_0x2ad770(0xef)][_0x270030],fingerprint(_0x230596)))||!sameFingerprint(_0x25dcd9[_0x2ad770(0xd3)],fingerprint(_0x25dcd9[_0x2ad770(0xd1)][_0x25dcd9[_0x2ad770(0xd1)]['length']-0x1])))throw menuError(_0x2ad770(0xeb),_0x2ad770(0x101),_0x2ad770(0xc3));return{'path':_0x57915b,'plan':_0x25dcd9};}export function mutationPlanFromDeleteFile(_0x5f23ba,_0x35488d){const _0x13dca3=a127_0x4a3b;return mutationResult({'operation':_0x13dca3(0xdc),'selector':{'id':_0x5f23ba['target']['id'],'recursive':_0x5f23ba[_0x13dca3(0x11c)]},'before':_0x5f23ba[_0x13dca3(0xd5)],'after':null,'dryRun':![],'backend':[{'method':_0x13dca3(0xda),'path':'/smartapi/menu/batchDelete'}],'plannedActions':[{'stage':'batch-delete-menu','method':_0x13dca3(0xda),'path':_0x13dca3(0xcb),'body':{'idList':_0x5f23ba[_0x13dca3(0xcc)]}}],'targets':_0x5f23ba[_0x13dca3(0xd1)],'deleteOrder':_0x5f23ba[_0x13dca3(0xcc)],'snapshotHash':_0x5f23ba[_0x13dca3(0xc5)],'cascade':_0x5f23ba[_0x13dca3(0xf6)],'planFile':{'path':_0x35488d,'createdAt':_0x5f23ba['createdAt'],'expiresAt':_0x5f23ba[_0x13dca3(0xc8)]},'warnings':_0x5f23ba[_0x13dca3(0x128)]});}export function assertMenuDeletePlanCurrent(_0x23f4e1,_0x45e3aa,_0x4958e0,_0x41d771=new Date()){const _0x151051=a127_0x4a3b;assertMenuDeletePlanExecutable(_0x23f4e1,_0x45e3aa,_0x41d771);if(_0x4958e0[_0x151051(0xca)]!==_0x23f4e1[_0x151051(0xc5)])throw menuError(_0x151051(0xc9),_0x151051(0x120),_0x151051(0x100));return _0x23f4e1[_0x151051(0xd1)]['map']((_0x2ed2aa,_0x2a9be5)=>{const _0x3fc8cf=_0x151051,_0x108996=_0x4958e0[_0x3fc8cf(0xfc)][_0x3fc8cf(0x114)](_0x2ed2aa['id']);if(!_0x108996)throw menuError('menu_state_drift',_0x3fc8cf(0x113)+_0x2ed2aa['id']+_0x3fc8cf(0xf3));if(!sameFingerprint(_0x23f4e1[_0x3fc8cf(0xef)][_0x2a9be5],fingerprint(_0x108996)))throw menuError(_0x3fc8cf(0xc9),_0x3fc8cf(0x113)+_0x2ed2aa['id']+'\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.');return _0x108996;});}export function assertMenuDeletePlanExecutable(_0x4c3b15,_0x43f6bc,_0x38a094=new Date()){const _0x551dba=a127_0x4a3b;if(_0x4c3b15[_0x551dba(0xf1)]!==_0x43f6bc)throw menuError(_0x551dba(0xc7),'Menu\x20delete\x20plan\x20targets\x20app\x20'+JSON[_0x551dba(0x105)](_0x4c3b15[_0x551dba(0xf1)])+_0x551dba(0xe6)+JSON['stringify'](_0x43f6bc)+'.');const _0x27e406=Date['parse'](_0x4c3b15['createdAt']),_0x39f7ec=Date[_0x551dba(0x11f)](_0x4c3b15[_0x551dba(0xc8)]);if(!Number[_0x551dba(0xe9)](_0x27e406)||!Number['isFinite'](_0x39f7ec)||_0x39f7ec-_0x27e406!==PLAN_TTL_MS)throw menuError(_0x551dba(0xeb),'Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.');if(_0x27e406>_0x38a094['getTime']())throw menuError('menu_plan_invalid',_0x551dba(0xdd)+_0x4c3b15[_0x551dba(0xfb)]+_0x551dba(0xcf),'Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.');if(_0x38a094[_0x551dba(0xe1)]()>_0x39f7ec)throw menuError(_0x551dba(0xf0),_0x551dba(0x10e)+_0x4c3b15['expiresAt']+'.',_0x551dba(0xc4));}function fingerprint(_0x2268d8){const _0x25d2aa=a127_0x4a3b;return{'id':_0x2268d8['id'],'parentId':_0x2268d8['parentId'],'depth':_0x2268d8[_0x25d2aa(0x121)],'label':_0x2268d8[_0x25d2aa(0xee)],'path':_0x2268d8[_0x25d2aa(0x126)],'type':_0x2268d8[_0x25d2aa(0x10a)],'visible':_0x2268d8[_0x25d2aa(0xea)],'sort':_0x2268d8[_0x25d2aa(0x102)],'pageId':_0x2268d8['pageId'],'pageType':_0x2268d8['pageType'],'modelType':_0x2268d8[_0x25d2aa(0xf9)],'datasetId':_0x2268d8[_0x25d2aa(0x117)],'datasetCode':_0x2268d8[_0x25d2aa(0x108)],'childrenIds':[..._0x2268d8['childrenIds']],'childrenCount':_0x2268d8[_0x25d2aa(0xc2)],'resourcesValid':_0x2268d8[_0x25d2aa(0x11d)],'resourcesHash':hashValue(_0x2268d8[_0x25d2aa(0xde)]),'extendHash':hashValue(_0x2268d8[_0x25d2aa(0x123)]??null),'updateTime':_0x2268d8[_0x25d2aa(0xf8)]};}function hashValue(_0x2265bb){const _0x57b63c=a127_0x4a3b;return createHash(_0x57b63c(0xf4))[_0x57b63c(0xd8)](JSON['stringify'](_0x2265bb))[_0x57b63c(0x11e)](_0x57b63c(0x109));}function sameFingerprint(_0x2c94d7,_0x481c0e){const _0x4b1914=a127_0x4a3b;return JSON[_0x4b1914(0x105)](_0x2c94d7)===JSON[_0x4b1914(0x105)](_0x481c0e);}function resolvePlanPath(_0x41bb96,_0xed8a66){const _0x13a265=a127_0x4a3b,_0x74bab0=_0x41bb96[_0x13a265(0x107)]();if(!_0x74bab0)throw menuError('menu_plan_invalid','--'+_0xed8a66+_0x13a265(0xe4));return resolve(_0x74bab0);}function a127_0x4a3b(_0x16ec70,_0xe1e9d6){_0x16ec70=_0x16ec70-0xc1;const _0x5affe8=a127_0x5aff();let _0x4a3b4b=_0x5affe8[_0x16ec70];return _0x4a3b4b;}function isMenuDeletePlanFile(_0x2b1207){const _0x4f3575=a127_0x4a3b;if(!isRecord(_0x2b1207))return![];return _0x2b1207[_0x4f3575(0x127)]===PLAN_VERSION&&_0x2b1207['command']===PLAN_COMMAND&&typeof _0x2b1207[_0x4f3575(0xf1)]===_0x4f3575(0xed)&&_0x2b1207[_0x4f3575(0xf1)][_0x4f3575(0x10b)]>0x0&&typeof _0x2b1207[_0x4f3575(0xfb)]===_0x4f3575(0xed)&&typeof _0x2b1207[_0x4f3575(0xc8)]===_0x4f3575(0xed)&&typeof _0x2b1207[_0x4f3575(0xc5)]===_0x4f3575(0xed)&&/^sha256:[a-f0-9]{64}$/[_0x4f3575(0x115)](_0x2b1207[_0x4f3575(0xc5)])&&typeof _0x2b1207[_0x4f3575(0x11c)]==='boolean'&&isMenuFact(_0x2b1207[_0x4f3575(0xd5)])&&isTargetFingerprint(_0x2b1207[_0x4f3575(0xd3)])&&Array['isArray'](_0x2b1207[_0x4f3575(0xd1)])&&_0x2b1207[_0x4f3575(0xd1)]['length']>0x0&&_0x2b1207[_0x4f3575(0xd1)][_0x4f3575(0x106)](isMenuFact)&&Array[_0x4f3575(0x124)](_0x2b1207[_0x4f3575(0xef)])&&_0x2b1207[_0x4f3575(0xef)][_0x4f3575(0x10b)]===_0x2b1207[_0x4f3575(0xd1)][_0x4f3575(0x10b)]&&_0x2b1207[_0x4f3575(0xef)][_0x4f3575(0x106)](isTargetFingerprint)&&Array[_0x4f3575(0x124)](_0x2b1207[_0x4f3575(0xcc)])&&_0x2b1207[_0x4f3575(0xcc)][_0x4f3575(0x10b)]===_0x2b1207['targets'][_0x4f3575(0x10b)]&&_0x2b1207[_0x4f3575(0xcc)][_0x4f3575(0x106)](isPositiveInteger)&&new Set(_0x2b1207[_0x4f3575(0xcc)])['size']===_0x2b1207[_0x4f3575(0xcc)][_0x4f3575(0x10b)]&&_0x2b1207['targets'][_0x4f3575(0x106)]((_0x4360a6,_0x251c54)=>_0x4360a6['id']===_0x2b1207['deleteOrder'][_0x251c54])&&_0x2b1207[_0x4f3575(0xd1)][_0x2b1207[_0x4f3575(0xd1)][_0x4f3575(0x10b)]-0x1]?.['id']===_0x2b1207['target']['id']&&isRecord(_0x2b1207['cascade'])&&Array[_0x4f3575(0x124)](_0x2b1207[_0x4f3575(0xf6)][_0x4f3575(0xf7)])&&_0x2b1207['cascade']['pages']['every'](isPositiveInteger)&&typeof _0x2b1207[_0x4f3575(0xf6)][_0x4f3575(0xdb)]===_0x4f3575(0x11a)&&Array[_0x4f3575(0x124)](_0x2b1207[_0x4f3575(0x128)])&&_0x2b1207[_0x4f3575(0x128)][_0x4f3575(0x106)](_0x35f34a=>typeof _0x35f34a===_0x4f3575(0xed));}function isMenuFact(_0x568ba0){const _0x4c4972=a127_0x4a3b;if(!isRecord(_0x568ba0))return![];return isPositiveInteger(_0x568ba0['id'])&&(_0x568ba0[_0x4c4972(0xe3)]===null||isPositiveInteger(_0x568ba0[_0x4c4972(0xe3)]))&&Number[_0x4c4972(0x104)](_0x568ba0['depth'])&&_0x568ba0[_0x4c4972(0x121)]>=0x0&&typeof _0x568ba0[_0x4c4972(0xee)]===_0x4c4972(0xed)&&typeof _0x568ba0['path']===_0x4c4972(0xed)&&typeof _0x568ba0[_0x4c4972(0x10a)]===_0x4c4972(0xed)&&(_0x568ba0[_0x4c4972(0xea)]===null||typeof _0x568ba0['visible']==='boolean')&&(_0x568ba0[_0x4c4972(0x102)]===null||Number[_0x4c4972(0x104)](_0x568ba0[_0x4c4972(0x102)]))&&Array['isArray'](_0x568ba0['resources'])&&_0x568ba0['resources'][_0x4c4972(0x106)](_0x4e0362=>typeof _0x4e0362==='string')&&typeof _0x568ba0[_0x4c4972(0x11d)]==='boolean'&&Array['isArray'](_0x568ba0[_0x4c4972(0xff)])&&_0x568ba0['childrenIds'][_0x4c4972(0x106)](isPositiveInteger)&&Number[_0x4c4972(0x104)](_0x568ba0[_0x4c4972(0xc2)])&&_0x568ba0[_0x4c4972(0xc2)]>=0x0&&(_0x568ba0['pageId']===null||isPositiveInteger(_0x568ba0[_0x4c4972(0xd6)]))&&typeof _0x568ba0['pageType']==='string'&&typeof _0x568ba0[_0x4c4972(0xf9)]===_0x4c4972(0xed)&&(_0x568ba0['datasetId']===null||isPositiveInteger(_0x568ba0[_0x4c4972(0x117)]))&&typeof _0x568ba0[_0x4c4972(0x108)]===_0x4c4972(0xed)&&(_0x568ba0[_0x4c4972(0xcd)]===null||typeof _0x568ba0[_0x4c4972(0xcd)]===_0x4c4972(0xed))&&(_0x568ba0[_0x4c4972(0x10f)]===null||typeof _0x568ba0[_0x4c4972(0x10f)]==='string')&&(_0x568ba0[_0x4c4972(0xf8)]===null||typeof _0x568ba0['updateTime']===_0x4c4972(0xed)||typeof _0x568ba0[_0x4c4972(0xf8)]===_0x4c4972(0x116))&&(_0x568ba0[_0x4c4972(0x123)]===undefined||_0x568ba0[_0x4c4972(0x123)]===null||isRecord(_0x568ba0[_0x4c4972(0x123)]));}function isTargetFingerprint(_0x2d9e80){const _0x2a0b32=a127_0x4a3b;if(!isRecord(_0x2d9e80))return![];return isPositiveInteger(_0x2d9e80['id'])&&(_0x2d9e80['parentId']===null||isPositiveInteger(_0x2d9e80[_0x2a0b32(0xe3)]))&&Number[_0x2a0b32(0x104)](_0x2d9e80['depth'])&&_0x2d9e80[_0x2a0b32(0x121)]>=0x0&&typeof _0x2d9e80['label']===_0x2a0b32(0xed)&&typeof _0x2d9e80[_0x2a0b32(0x126)]==='string'&&typeof _0x2d9e80[_0x2a0b32(0x10a)]===_0x2a0b32(0xed)&&(_0x2d9e80[_0x2a0b32(0xea)]===null||typeof _0x2d9e80[_0x2a0b32(0xea)]===_0x2a0b32(0x11a))&&(_0x2d9e80['sort']===null||Number[_0x2a0b32(0x104)](_0x2d9e80[_0x2a0b32(0x102)]))&&(_0x2d9e80[_0x2a0b32(0xd6)]===null||isPositiveInteger(_0x2d9e80[_0x2a0b32(0xd6)]))&&typeof _0x2d9e80[_0x2a0b32(0xd0)]==='string'&&typeof _0x2d9e80[_0x2a0b32(0xf9)]===_0x2a0b32(0xed)&&(_0x2d9e80[_0x2a0b32(0x117)]===null||isPositiveInteger(_0x2d9e80['datasetId']))&&typeof _0x2d9e80[_0x2a0b32(0x108)]===_0x2a0b32(0xed)&&Array['isArray'](_0x2d9e80[_0x2a0b32(0xff)])&&_0x2d9e80[_0x2a0b32(0xff)][_0x2a0b32(0x106)](isPositiveInteger)&&Number['isInteger'](_0x2d9e80[_0x2a0b32(0xc2)])&&_0x2d9e80['childrenCount']>=0x0&&typeof _0x2d9e80[_0x2a0b32(0x11d)]===_0x2a0b32(0x11a)&&typeof _0x2d9e80['resourcesHash']==='string'&&/^[a-f0-9]{64}$/[_0x2a0b32(0x115)](_0x2d9e80[_0x2a0b32(0xd2)])&&typeof _0x2d9e80[_0x2a0b32(0xfe)]===_0x2a0b32(0xed)&&/^[a-f0-9]{64}$/[_0x2a0b32(0x115)](_0x2d9e80[_0x2a0b32(0xfe)])&&(_0x2d9e80['updateTime']===null||typeof _0x2d9e80[_0x2a0b32(0xf8)]==='string'||typeof _0x2d9e80[_0x2a0b32(0xf8)]==='number');}function isRecord(_0x2b9243){const _0x4f0411=a127_0x4a3b;return typeof _0x2b9243==='object'&&_0x2b9243!==null&&!Array[_0x4f0411(0x124)](_0x2b9243);}function isPositiveInteger(_0x3582fc){return Number['isSafeInteger'](_0x3582fc)&&Number(_0x3582fc)>0x0;}function errorMessage(_0x590164){const _0x1771af=a127_0x4a3b;return _0x590164 instanceof Error?_0x590164[_0x1771af(0xf5)]:String(_0x590164);}
|