@lovrabet/rabetbase-cli 2.5.1-beta.2 → 2.5.1-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.js +1 -1
- package/lib/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.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/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.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/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/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.js +1 -1
- package/lib/config/project-routing.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/routing-profile.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +0 -16
- 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/kb-search-client.d.ts +30 -0
- package/lib/core/kb-search-client.js +1 -0
- 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 +1 -0
- 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/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/rabetbase/SKILL.md +2 -2
- package/skills/rabetbase/references/rabetbase-config.md +1 -1
- package/skills/rabetbase/references/rabetbase-doctor.md +1 -1
- package/skills/rabetbase/references/rabetbase-kb.md +8 -7
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
function a119_0x51c2(){const _0x25e712=['after',';\x20verify\x20it\x20before\x20retrying.','\x20may\x20exist\x20online\x20at\x20path\x20','label','Created\x20folder\x20','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','root','folder','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','1977610xgAUHl','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','/smartapi/menu/create','<platform-generated>','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','group-create','flagMissing','\x20is\x20not\x20empty.','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','str','create\x20folder','\x20unexpectedly\x20owns\x20a\x20page.','POST','get','hash','4247446HoRBKx','parentId','5245200EiZwUH','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','2257588BnsgJC','depth','Folder\x20label','287061kVzyxZ','cookie','3515650IcVvZd','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','parent-id','menu_create_response_invalid','Created\x20menu\x20folder\x20','string','pageId','143qGUosE','8zhYOYc','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','trim','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','stringify','Would\x20create\x20empty\x20folder\x20\x22','create','failed','6awypki','verification','verify\x20folder\x20creation','rabetbase\x20menu\x20list\x20--format\x20json','appCode','isSafeInteger','create-response-validation','458287IEkRLn','10KSOtRx','menu\x20list','sort','\x20is\x20not\x20type\x20folder.','path','\x20is\x20missing\x20from\x20menu\x20list.','\x20has\x20an\x20unexpected\x20sort.','Folder\x20','byId','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.'];a119_0x51c2=function(){return _0x25e712;};return a119_0x51c2();}const a119_0x44f443=a119_0xd8ff;(function(_0x2b8679,_0x553e61){const _0x2ef0ae=a119_0xd8ff,_0xa0058f=_0x2b8679();while(!![]){try{const _0x265217=-parseInt(_0x2ef0ae(0x202))/0x1+parseInt(_0x2ef0ae(0x203))/0x2*(-parseInt(_0x2ef0ae(0x1e9))/0x3)+-parseInt(_0x2ef0ae(0x1e6))/0x4+-parseInt(_0x2ef0ae(0x1eb))/0x5*(parseInt(_0x2ef0ae(0x1fb))/0x6)+-parseInt(_0x2ef0ae(0x1e2))/0x7*(-parseInt(_0x2ef0ae(0x1f3))/0x8)+-parseInt(_0x2ef0ae(0x1e4))/0x9+parseInt(_0x2ef0ae(0x1d3))/0xa*(parseInt(_0x2ef0ae(0x1f2))/0xb);if(_0x265217===_0x553e61)break;else _0xa0058f['push'](_0xa0058f['shift']());}catch(_0x3e9973){_0xa0058f['push'](_0xa0058f['shift']());}}}(a119_0x51c2,0x5f5de));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a119_0xd8ff(_0x4b78d5,_0x1a9a91){_0x4b78d5=_0x4b78d5-0x1d2;const _0x51c2d6=a119_0x51c2();let _0xd8ff02=_0x51c2d6[_0x4b78d5];return _0xd8ff02;}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':a119_0x44f443(0x1df),'path':a119_0x44f443(0x1d5)}];export const menuGroupCreate={'service':'menu','command':a119_0x44f443(0x1d8),'description':a119_0x44f443(0x1ec),'risk':'write','structuredErrors':!![],'flags':[{'name':a119_0x44f443(0x210),'type':a119_0x44f443(0x1f0),'required':!![],'description':a119_0x44f443(0x1e8)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x40935e){validateCreateInput(_0x40935e);},async 'dryRun'(_0x2d95a7){const _0x5984f1=a119_0x44f443,_0x636cb2=await buildCreatePlan(_0x2d95a7,!![]),_0x638cde=_0x636cb2['after'];return menuDryRunResult(_0x636cb2,{'method':_0x5984f1(0x1df),'url':_0x5984f1(0x1d5),'body':{'parentId':toApiParentId(_0x638cde[_0x5984f1(0x1e3)]),'label':_0x638cde[_0x5984f1(0x210)],'type':_0x5984f1(0x214),'visible':!![],'sort':_0x638cde[_0x5984f1(0x205)],'extend':{}},'description':_0x5984f1(0x1f8)+String(_0x638cde[_0x5984f1(0x210)])+'\x22\x20with\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x3098dd){const _0x18ee45=a119_0x44f443;validateCreateInput(_0x3098dd);const _0x5369a3=await buildCreatePlan(_0x3098dd,![]),_0x46d4d6=_0x5369a3[_0x18ee45(0x20d)];await recheckMutationSnapshot(_0x3098dd,_0x5369a3,_0x18ee45(0x1dd));let _0x10badb;try{_0x10badb=await createMenuEntity(_0x3098dd['appCode'],_0x3098dd[_0x18ee45(0x1ea)],{'parentId':toApiParentId(_0x46d4d6[_0x18ee45(0x1e3)]),'label':String(_0x46d4d6[_0x18ee45(0x210)]),'type':_0x18ee45(0x214),'visible':!![],'sort':Number(_0x46d4d6['sort']),'extend':{}});}catch(_0x4c3192){const _0x490cc6=mapMenuApiError(_0x4c3192,_0x18ee45(0x1dd));throw menuFailure(_0x490cc6,_0x5369a3,{'stage':_0x18ee45(0x1f9),'failed':{}});}const _0x1c8ee1=Number(_0x10badb['id']);if(!Number[_0x18ee45(0x200)](_0x1c8ee1)||_0x1c8ee1<=0x0){const _0x1dfe56=menuError(_0x18ee45(0x1ee),_0x18ee45(0x212),_0x18ee45(0x1f4));throw menuFailure(_0x1dfe56,_0x5369a3,{'stage':_0x18ee45(0x201),'failed':{'createdId':_0x10badb['id']??null},'warnings':[_0x18ee45(0x1d2)],'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json'}});}const _0x3c8689=typeof _0x10badb[_0x18ee45(0x207)]===_0x18ee45(0x1f0)?_0x10badb[_0x18ee45(0x207)]:'';if(!_0x3c8689['trim']()){const _0x37e51b=menuError(_0x18ee45(0x1ee),'Menu\x20create\x20response\x20for\x20folder\x20'+_0x1c8ee1+_0x18ee45(0x1d7),_0x18ee45(0x1e5));throw menuFailure(_0x37e51b,_0x5369a3,{'stage':'create-response-validation','succeeded':[{'id':_0x1c8ee1,'created':!![]}],'failed':{'id':_0x1c8ee1,'generatedPathConfirmed':![]},'warnings':[_0x18ee45(0x20a)+_0x1c8ee1+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x46d4d6,'id':_0x1c8ee1,'path':_0x3c8689},'verification':{'status':_0x18ee45(0x1fa),'lookupCommand':_0x18ee45(0x1fe),'targetId':_0x1c8ee1}});}let _0x1df837;try{_0x1df837=await fetchMenuSnapshot(_0x3098dd[_0x18ee45(0x1ff)],_0x3098dd[_0x18ee45(0x1ea)]);}catch(_0x43b593){const _0x1aa53e=describeMenuErrorCause(_0x43b593,_0x18ee45(0x1fd),_0x1c8ee1),_0x9c8523=asVerificationError(_0x43b593,'Folder\x20'+_0x1c8ee1+'\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts');throw menuFailure(_0x9c8523,_0x5369a3,{'stage':'verification','succeeded':[{'id':_0x1c8ee1,'created':!![],'path':_0x3c8689}],'failed':{'id':_0x1c8ee1,'finalFactsConfirmed':![],..._0x1aa53e},'warnings':[_0x18ee45(0x20a)+_0x1c8ee1+_0x18ee45(0x20f)+JSON[_0x18ee45(0x1f7)](_0x3c8689)+_0x18ee45(0x20e)],'after':{..._0x46d4d6,'id':_0x1c8ee1,'path':_0x3c8689},'verification':{'status':_0x18ee45(0x1fa),'lookupCommand':_0x18ee45(0x1fe),'targetId':_0x1c8ee1}});}const _0x342863=_0x1df837[_0x18ee45(0x20b)][_0x18ee45(0x1e0)](_0x1c8ee1);let _0x5f3002;try{assertVerified(Boolean(_0x342863),'Created\x20folder\x20'+_0x1c8ee1+_0x18ee45(0x208)),_0x5f3002=_0x342863,assertVerified(_0x5f3002['type']===_0x18ee45(0x214),'Created\x20menu\x20'+_0x1c8ee1+_0x18ee45(0x206)),assertVerified(_0x5f3002[_0x18ee45(0x210)]===_0x46d4d6[_0x18ee45(0x210)],_0x18ee45(0x211)+_0x1c8ee1+'\x20has\x20an\x20unexpected\x20label.'),assertVerified(_0x5f3002[_0x18ee45(0x207)]===_0x3c8689&&Boolean(_0x5f3002['path'][_0x18ee45(0x1f5)]()),_0x18ee45(0x211)+_0x1c8ee1+_0x18ee45(0x1f6)),assertVerified(_0x5f3002['visible']===!![],_0x18ee45(0x211)+_0x1c8ee1+'\x20is\x20not\x20visible.'),assertVerified(_0x5f3002['resources']['length']===0x0,_0x18ee45(0x211)+_0x1c8ee1+'\x20has\x20resources.'),assertVerified(_0x5f3002['childrenCount']===0x0,'Created\x20folder\x20'+_0x1c8ee1+_0x18ee45(0x1da)),assertVerified(_0x5f3002[_0x18ee45(0x205)]===_0x46d4d6[_0x18ee45(0x205)],_0x18ee45(0x211)+_0x1c8ee1+_0x18ee45(0x209)),assertVerified(_0x5f3002[_0x18ee45(0x1e3)]===_0x46d4d6[_0x18ee45(0x1e3)],'Created\x20folder\x20'+_0x1c8ee1+'\x20has\x20unexpected\x20parent\x20'+(_0x5f3002[_0x18ee45(0x1e3)]??_0x18ee45(0x213))+'.'),assertVerified(_0x5f3002[_0x18ee45(0x1f1)]==null,'Created\x20folder\x20'+_0x1c8ee1+_0x18ee45(0x1de));const _0x35e542=_0x5f3002['parentId']==null?undefined:requireFolder(_0x1df837,_0x5f3002['parentId']);assertVerified(_0x5f3002[_0x18ee45(0x1e7)]===(_0x35e542?_0x35e542[_0x18ee45(0x1e7)]+0x1:0x0),_0x18ee45(0x211)+_0x1c8ee1+_0x18ee45(0x1db));}catch(_0x255f54){const _0x12671e=describeMenuErrorCause(_0x255f54,_0x18ee45(0x1fd),_0x1c8ee1),_0x2ffa61=asVerificationError(_0x255f54,_0x18ee45(0x20a)+_0x1c8ee1+'\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract');throw menuFailure(_0x2ffa61,_0x5369a3,{'stage':_0x18ee45(0x1fc),'succeeded':[{'id':_0x1c8ee1,'created':!![],'path':_0x3c8689}],'failed':{'id':_0x1c8ee1,'finalFactsConfirmed':![],..._0x12671e},'warnings':[_0x18ee45(0x20a)+_0x1c8ee1+_0x18ee45(0x20c)],'after':_0x342863??{..._0x46d4d6,'id':_0x1c8ee1,'path':_0x3c8689},'verification':{'status':_0x18ee45(0x1fa),'lookupCommand':_0x18ee45(0x1fe),'targetId':_0x1c8ee1}});}const _0x432322=mutationResult({..._0x5369a3,'after':_0x5f3002,'dryRun':![],'succeeded':[{'id':_0x1c8ee1,'type':_0x18ee45(0x214),'path':_0x3c8689}],'verification':{'checkedBy':_0x18ee45(0x204),'snapshotHash':_0x1df837[_0x18ee45(0x1e1)],'folder':!![],'path':_0x3c8689,'emptyResources':!![]}});return{'ok':!![],'data':_0x432322,'message':_0x18ee45(0x1ef)+_0x1c8ee1+'.'};}};function validateCreateInput(_0x399d87){const _0x5d5b07=a119_0x44f443,_0x15a0ed=_0x399d87['str'](_0x5d5b07(0x210))[_0x5d5b07(0x1f5)]();if(!_0x15a0ed)throw CliErrors[_0x5d5b07(0x1d9)](_0x5d5b07(0x210));parseParentId(_0x399d87,_0x5d5b07(0x1ed)),validateSort(_0x399d87);}async function buildCreatePlan(_0x296276,_0x4e5d5f){const _0x15c1fb=a119_0x44f443,_0x170be8=await fetchMutationSnapshot(_0x296276,_0x15c1fb(0x1dd)),_0x2fb44c=parseParentId(_0x296276,'parent-id')??null;if(_0x2fb44c!=null)requireFolder(_0x170be8,_0x2fb44c);const _0x618a94=validateSort(_0x296276),_0x51d3ca=_0x618a94??nextSiblingSort(_0x170be8,_0x2fb44c,_0x15c1fb(0x214)),_0x3d23e2=_0x296276[_0x15c1fb(0x1dc)](_0x15c1fb(0x210))[_0x15c1fb(0x1f5)]();return mutationResult({'operation':_0x15c1fb(0x1d8),'selector':{'label':_0x3d23e2,'parentId':_0x2fb44c},'before':null,'after':{'id':null,'parentId':_0x2fb44c,'label':_0x3d23e2,'path':_0x15c1fb(0x1d6),'type':_0x15c1fb(0x214),'visible':!![],'sort':_0x51d3ca,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x4e5d5f,'backend':[...BACKEND],'plannedActions':[{'stage':'create-folder','method':_0x15c1fb(0x1df),'path':_0x15c1fb(0x1d5),'body':{'parentId':toApiParentId(_0x2fb44c),'label':_0x3d23e2,'type':_0x15c1fb(0x214),'visible':!![],'sort':_0x51d3ca,'extend':{}}}],'snapshotHash':_0x170be8[_0x15c1fb(0x1e1)],'warnings':[_0x15c1fb(0x1d4)]});}
|
|
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 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a120_0x467678=a120_0x5833;function a120_0x5833(_0x2f8c59,_0xf60afa){_0x2f8c59=_0x2f8c59-0x8e;const _0x232e49=a120_0x232e();let _0x583311=_0x232e49[_0x2f8c59];return _0x583311;}(function(_0x29c876,_0x2a61f6){const _0x168f63=a120_0x5833,_0xf2de25=_0x29c876();while(!![]){try{const _0xd55f35=parseInt(_0x168f63(0xad))/0x1*(-parseInt(_0x168f63(0xa8))/0x2)+parseInt(_0x168f63(0xb6))/0x3+-parseInt(_0x168f63(0x9e))/0x4*(-parseInt(_0x168f63(0x9c))/0x5)+-parseInt(_0x168f63(0xb0))/0x6+-parseInt(_0x168f63(0xa3))/0x7*(parseInt(_0x168f63(0xba))/0x8)+-parseInt(_0x168f63(0xb3))/0x9+parseInt(_0x168f63(0xaf))/0xa;if(_0xd55f35===_0x2a61f6)break;else _0xf2de25['push'](_0xf2de25['shift']());}catch(_0x55154c){_0xf2de25['push'](_0xf2de25['shift']());}}}(a120_0x232e,0xe1fe3));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_0x467678(0xa6),'path':'/smartapi/menu/update'}];export const menuGroupUpdate={'service':a120_0x467678(0x94),'command':'group-update','description':a120_0x467678(0xbf),'risk':a120_0x467678(0xbc),'structuredErrors':!![],'rejectedFlags':[{'name':a120_0x467678(0xbb),'message':a120_0x467678(0x9d),'hint':a120_0x467678(0x96)}],'flags':[MENU_ID_FLAG,{'name':a120_0x467678(0x91),'type':'string','description':a120_0x467678(0x9b)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x34443e){validateUpdateInput(_0x34443e);},async 'dryRun'(_0x70e5d8){const _0x448678=a120_0x467678;validateUpdateInput(_0x70e5d8);const {plan:_0x2de17c,patch:_0x3f90e0}=await buildUpdatePlan(_0x70e5d8,!![]);return menuDryRunResult(_0x2de17c,{'method':'POST','url':'/smartapi/menu/update','body':_0x3f90e0,'description':_0x448678(0xac)+_0x2de17c[_0x448678(0xbe)]['id']+'.'});},async 'execute'(_0x4cb121){const _0x285620=a120_0x467678;validateUpdateInput(_0x4cb121);const {plan:_0x48ea15,patch:_0x1a1670,noChanges:_0x37b2a2}=await buildUpdatePlan(_0x4cb121,![]),_0x4c7565=Number(_0x48ea15['selector']['id']),_0x491239=await recheckMutationSnapshot(_0x4cb121,_0x48ea15,_0x285620(0xb9),_0x4c7565);if(!_0x37b2a2)try{await updateMenuEntity(_0x4cb121[_0x285620(0xb5)],_0x4cb121[_0x285620(0x8f)],_0x1a1670);}catch(_0x5db097){const _0xfa4815=mapMenuApiError(_0x5db097,'update\x20folder',_0x4c7565);throw menuFailure(_0xfa4815,_0x48ea15,{'stage':_0x285620(0xc0),'failed':{'id':_0x4c7565}});}let _0x5359a8=_0x491239,_0x58e258;try{!_0x37b2a2&&(_0x5359a8=await fetchMenuSnapshot(_0x4cb121[_0x285620(0xb5)],_0x4cb121[_0x285620(0x8f)])),_0x58e258=requireMenu(_0x5359a8,_0x4c7565),verifyPatch(_0x58e258,_0x1a1670),_0x58e258[_0x285620(0xa9)]!=null&&requireFolder(_0x5359a8,_0x58e258['parentId']);}catch(_0x5a9c81){const _0x2ff768=describeMenuErrorCause(_0x5a9c81,_0x285620(0xb8),_0x4c7565),_0x236831=asVerificationError(_0x5a9c81,_0x285620(0xbd)+_0x4c7565+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x236831,_0x48ea15,{'stage':_0x285620(0x93),'succeeded':[{'id':_0x4c7565,'updateRequested':!_0x37b2a2,'skipped':_0x37b2a2}],'failed':{'id':_0x4c7565,'requestedStateConfirmed':![],..._0x2ff768},'warnings':['The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':_0x285620(0x8e),'lookupCommand':_0x285620(0xb4),'targetId':_0x4c7565}});}const _0x12f107=mutationResult({..._0x48ea15,'after':_0x58e258,'dryRun':![],'succeeded':[{'id':_0x4c7565,'updated':!_0x37b2a2,'skipped':_0x37b2a2}],'verification':{'checkedBy':_0x285620(0xab),'snapshotHash':_0x5359a8[_0x285620(0xa1)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x12f107,'message':_0x37b2a2?'Folder\x20'+_0x4c7565+'\x20already\x20matches\x20the\x20requested\x20state.':_0x285620(0xa2)+_0x4c7565+'.'};}};function validateUpdateInput(_0x21ae7b){const _0x454423=a120_0x467678;validateExactId(_0x21ae7b);if(hasFlag(_0x21ae7b,'parent-id'))throw CliErrors[_0x454423(0xb7)](_0x454423(0x9d),_0x454423(0x96));if(!hasFlag(_0x21ae7b,'label')&&!hasFlag(_0x21ae7b,'sort'))throw CliErrors[_0x454423(0xb7)](_0x454423(0x97));if(hasFlag(_0x21ae7b,'label')&&!_0x21ae7b[_0x454423(0xb2)]('label')[_0x454423(0x99)]())throw CliErrors[_0x454423(0xb7)]('--label\x20cannot\x20be\x20empty.');validateSort(_0x21ae7b);}function a120_0x232e(){const _0x5cddf8=['At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','Menu\x20','trim','menu_not_folder','New\x20folder\x20label','6295lifgzX','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','5196lPqDzT','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','sort','hash','Updated\x20folder\x20','42497UhvYwO','\x22,\x20not\x20folder.','No\x20online\x20fields\x20would\x20change.','POST','folder','134ndizjV','parentId','type','menu\x20list','Would\x20update\x20folder\x20','10477JBurMs','group-update','20461130RALvJS','8084748oBWGxV','\x20label\x20update\x20did\x20not\x20take\x20effect.','str','14880915aDYXOT','rabetbase\x20menu\x20list\x20--format\x20json','appCode','3733332ZVDxwR','validation','verify\x20folder\x20update','update\x20folder','392YyDGTc','parent-id','write','Update\x20request\x20for\x20folder\x20','selector','Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','update','failed','cookie','\x20sort\x20update\x20did\x20not\x20take\x20effect.','label','unknown','verification','menu','Folder\x20','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.'];a120_0x232e=function(){return _0x5cddf8;};return a120_0x232e();}async function buildUpdatePlan(_0x1f1842,_0x2ada66){const _0x503c49=a120_0x467678,_0x5821d0=validateExactId(_0x1f1842),_0x1e162c=await fetchMutationSnapshot(_0x1f1842,'update\x20folder',_0x5821d0),_0x37d08b=requireMenu(_0x1e162c,_0x5821d0);if(_0x37d08b[_0x503c49(0xaa)]!==_0x503c49(0xa7))throw menuError(_0x503c49(0x9a),'Menu\x20'+_0x5821d0+'\x20is\x20type\x20\x22'+(_0x37d08b['type']||_0x503c49(0x92))+_0x503c49(0xa4),_0x503c49(0x9f));assertExpectedState(_0x1f1842,_0x37d08b);const _0x495bb4={'id':_0x5821d0},_0x277b0d={..._0x37d08b};if(hasFlag(_0x1f1842,'label')){const _0x240813=_0x1f1842[_0x503c49(0xb2)](_0x503c49(0x91))['trim']();_0x495bb4[_0x503c49(0x91)]=_0x240813,_0x277b0d[_0x503c49(0x91)]=_0x240813;}if(hasFlag(_0x1f1842,_0x503c49(0xa0))){const _0x3370e3=validateSort(_0x1f1842);_0x495bb4[_0x503c49(0xa0)]=_0x3370e3,_0x277b0d[_0x503c49(0xa0)]=_0x3370e3;}const _0x561671=sameRequestedState(_0x37d08b,_0x277b0d),_0x5122cc=_0x561671?[_0x503c49(0xa5)]:[];return{'patch':_0x495bb4,'noChanges':_0x561671,'plan':mutationResult({'operation':_0x503c49(0xae),'selector':{'id':_0x5821d0},'before':_0x37d08b,'after':_0x277b0d,'dryRun':_0x2ada66,'backend':[...BACKEND],'snapshotHash':_0x1e162c['hash'],'warnings':_0x5122cc})};}function sameRequestedState(_0x174cbe,_0x1d8359){const _0x1d966c=a120_0x467678;return _0x174cbe[_0x1d966c(0x91)]===_0x1d8359['label']&&_0x174cbe[_0x1d966c(0xa0)]===_0x1d8359[_0x1d966c(0xa0)];}function verifyPatch(_0x412d9b,_0x5ef911){const _0x536985=a120_0x467678;assertVerified(_0x412d9b[_0x536985(0xaa)]===_0x536985(0xa7),_0x536985(0x98)+_0x412d9b['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x5ef911['label']!==undefined&&assertVerified(_0x412d9b[_0x536985(0x91)]===_0x5ef911[_0x536985(0x91)],_0x536985(0x95)+_0x412d9b['id']+_0x536985(0xb1)),_0x5ef911[_0x536985(0xa0)]!==undefined&&assertVerified(_0x412d9b['sort']===_0x5ef911['sort'],_0x536985(0x95)+_0x412d9b['id']+_0x536985(0x90));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x2d5f82,_0x2c8cea){const _0x2d9150=a121_0x100a,_0x4ad028=_0x2d5f82();while(!![]){try{const _0x34c842=parseInt(_0x2d9150(0x11b))/0x1*(parseInt(_0x2d9150(0x11c))/0x2)+-parseInt(_0x2d9150(0x11f))/0x3*(parseInt(_0x2d9150(0x119))/0x4)+-parseInt(_0x2d9150(0x11e))/0x5*(parseInt(_0x2d9150(0x123))/0x6)+parseInt(_0x2d9150(0x11d))/0x7*(-parseInt(_0x2d9150(0x121))/0x8)+-parseInt(_0x2d9150(0x11a))/0x9+parseInt(_0x2d9150(0x120))/0xa+parseInt(_0x2d9150(0x122))/0xb;if(_0x34c842===_0x2c8cea)break;else _0x4ad028['push'](_0x4ad028['shift']());}catch(_0x3f77e5){_0x4ad028['push'](_0x4ad028['shift']());}}}(a121_0x1111,0x76403));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';function a121_0x1111(){const _0x19ca23=['275ObSMxH','489363NnafYx','7926820EiVOuc','36896WKWJcS','6773272ZJTpYa','72462AWEtpF','20xnNDMT','1244682mURAzu','717119wYeKUW','2XKtiFT','35KRLzJJ'];a121_0x1111=function(){return _0x19ca23;};return a121_0x1111();}import{menuRegroupStart}from'../../commands/menu/regroup-start.js';function a121_0x100a(_0x4c1af1,_0x5ba2f1){_0x4c1af1=_0x4c1af1-0x119;const _0x1111e8=a121_0x1111();let _0x100aaa=_0x1111e8[_0x4c1af1];return _0x100aaa;}import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a122_0x825245=a122_0x1ac4;function a122_0xd9dd(){const _0x498d7d=['985788SuvGln','Found\x20','No\x20menus\x20found.','boolean','map','hash','622545PqwPIt','30fXxWUY','menu','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','40IPeCGP','list','146804sYpLdj','2565072jIZMpb','menus','515794KNbAae','total','appCode','517992NGKKWy','bool','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','926862uRwWrD','verbose','cookie'];a122_0xd9dd=function(){return _0x498d7d;};return a122_0xd9dd();}function a122_0x1ac4(_0x414623,_0x3ad864){_0x414623=_0x414623-0xf9;const _0xd9dd90=a122_0xd9dd();let _0x1ac4aa=_0xd9dd90[_0x414623];return _0x1ac4aa;}(function(_0x337068,_0x34185c){const _0x3aea85=a122_0x1ac4,_0x317d9f=_0x337068();while(!![]){try{const _0x247a29=-parseInt(_0x3aea85(0xfb))/0x1+parseInt(_0x3aea85(0x104))/0x2+-parseInt(_0x3aea85(0x101))/0x3+-parseInt(_0x3aea85(0x110))/0x4*(parseInt(_0x3aea85(0x10b))/0x5)+parseInt(_0x3aea85(0xfe))/0x6+parseInt(_0x3aea85(0x10a))/0x7*(parseInt(_0x3aea85(0x10e))/0x8)+parseInt(_0x3aea85(0xf9))/0x9;if(_0x247a29===_0x34185c)break;else _0x317d9f['push'](_0x317d9f['shift']());}catch(_0x128a94){_0x317d9f['push'](_0x317d9f['shift']());}}}(a122_0xd9dd,0x40713));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a122_0x825245(0x10c),'command':a122_0x825245(0x10f),'description':a122_0x825245(0x10d),'risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':a122_0x825245(0x102),'type':a122_0x825245(0x107),'description':a122_0x825245(0x100)}],async 'execute'(_0x3fac29){const _0x4036df=a122_0x825245,_0x317d0a=_0x3fac29[_0x4036df(0xff)](_0x4036df(0x102)),_0x1d271b=await fetchMenuSnapshot(_0x3fac29[_0x4036df(0xfd)],_0x3fac29[_0x4036df(0x103)],{'verbose':_0x317d0a});return{'ok':!![],'data':{'total':_0x1d271b[_0x4036df(0xfc)],'snapshotHash':_0x1d271b[_0x4036df(0x109)],'menus':_0x1d271b[_0x4036df(0xfa)][_0x4036df(0x108)](toMenuListItem)},'message':_0x1d271b['total']===0x0?_0x4036df(0x106):_0x4036df(0x105)+_0x1d271b[_0x4036df(0xfc)]+'\x20menu(s)'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a123_0x3189d1=a123_0x4761;(function(_0x973fac,_0x4b2d31){const _0xf2c5c9=a123_0x4761,_0x172276=_0x973fac();while(!![]){try{const _0xbafa25=-parseInt(_0xf2c5c9(0x159))/0x1*(parseInt(_0xf2c5c9(0x181))/0x2)+-parseInt(_0xf2c5c9(0x168))/0x3*(parseInt(_0xf2c5c9(0x16f))/0x4)+-parseInt(_0xf2c5c9(0x182))/0x5*(-parseInt(_0xf2c5c9(0x157))/0x6)+-parseInt(_0xf2c5c9(0x17b))/0x7+-parseInt(_0xf2c5c9(0x171))/0x8*(parseInt(_0xf2c5c9(0x179))/0x9)+parseInt(_0xf2c5c9(0x162))/0xa*(parseInt(_0xf2c5c9(0x17c))/0xb)+parseInt(_0xf2c5c9(0x15c))/0xc;if(_0xbafa25===_0x4b2d31)break;else _0x172276['push'](_0x172276['shift']());}catch(_0x295d2a){_0x172276['push'](_0x172276['shift']());}}}(a123_0x5c6c,0x700ab));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';function a123_0x5c6c(){const _0x32f05c=['\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','20474784bQJMBM','sort','verification','\x20parent\x20changed:\x20expected\x20','parentId','update','676470UoSmdT','hash','childrenCount','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','menu\x20list','rabetbase\x20menu\x20list\x20--format\x20compress','3OhwSpL','cookie','/smartapi/menu/update','appCode','expect-parent-id','Move\x20request\x20for\x20menu\x20','failed','2456404NlZLqv','write','8abkYSt','POST','move\x20menu','Would\x20move\x20menu\x20','move-menu','parent-id','Menu\x20','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','1830501fLpLSi','Moved\x20menu\x20','5410503YDtssW','143VVWCWx','move','menu_state_drift','type','menu','1274794ZDRogv','5PxBZvr','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','606576eTuiuW','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','1zXpwny','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.'];a123_0x5c6c=function(){return _0x32f05c;};return a123_0x5c6c();}import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':'POST','path':a123_0x3189d1(0x16a)}];function a123_0x4761(_0x517d66,_0x3bd335){_0x517d66=_0x517d66-0x156;const _0x5c6cf7=a123_0x5c6c();let _0x47613a=_0x5c6cf7[_0x517d66];return _0x47613a;}export const menuMove={'service':a123_0x3189d1(0x180),'command':'move','description':a123_0x3189d1(0x158),'risk':a123_0x3189d1(0x170),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x54b216){validateMoveInput(_0x54b216);},async 'dryRun'(_0x4ecffb){const _0x4be5c1=a123_0x3189d1,{plan:_0x5a6ecb,patch:_0x4ba034}=await buildMovePlan(_0x4ecffb,!![]);return menuDryRunResult(_0x5a6ecb,{'method':_0x4be5c1(0x172),'url':_0x4be5c1(0x16a),'body':{..._0x4ba034,'appCode':_0x4ecffb[_0x4be5c1(0x16b)]},'description':_0x4be5c1(0x174)+_0x4ba034['id']+'.'});},async 'execute'(_0x53f1ef){const _0x1b9732=a123_0x3189d1;validateMoveInput(_0x53f1ef);const {plan:_0x4ca7b3,patch:_0x2f28ff,noChanges:_0x242c2a,snapshot:_0x2c9ac3}=await buildMovePlan(_0x53f1ef,![]),_0x45f27d=_0x2f28ff['id'];if(!_0x242c2a)try{await updateMenuEntity(_0x53f1ef[_0x1b9732(0x16b)],_0x53f1ef[_0x1b9732(0x169)],_0x2f28ff);}catch(_0x4fda6a){const _0x56da49=mapMenuApiError(_0x4fda6a,_0x1b9732(0x17d),_0x45f27d);throw menuFailure(_0x56da49,_0x4ca7b3,{'stage':_0x1b9732(0x161),'failed':{'id':_0x45f27d},'warnings':['The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x1b9732(0x16e),'targetId':_0x45f27d,'lookupCommand':_0x1b9732(0x167)}});}let _0x3f0c07,_0x27dd12;try{_0x3f0c07=_0x242c2a?_0x2c9ac3:await fetchMenuSnapshot(_0x53f1ef[_0x1b9732(0x16b)],_0x53f1ef[_0x1b9732(0x169)]),_0x27dd12=requireMenu(_0x3f0c07,_0x45f27d),verifyMove(_0x27dd12,_0x4ca7b3['after']),_0x27dd12[_0x1b9732(0x160)]!==null&&requireFolder(_0x3f0c07,_0x27dd12[_0x1b9732(0x160)]);}catch(_0x2c5a68){const _0x2e6337=describeMenuErrorCause(_0x2c5a68,'verify\x20menu\x20move',_0x45f27d),_0x4cbbb9=asVerificationError(_0x2c5a68,_0x1b9732(0x16d)+_0x45f27d+_0x1b9732(0x178));throw menuFailure(_0x4cbbb9,_0x4ca7b3,{'stage':_0x1b9732(0x15e),'succeeded':[{'id':_0x45f27d,'updateRequested':!_0x242c2a,'skipped':_0x242c2a}],'failed':{'id':_0x45f27d,'requestedStateConfirmed':![],..._0x2e6337},'warnings':[_0x1b9732(0x156)],'verification':{'status':_0x1b9732(0x16e),'targetId':_0x45f27d,'lookupCommand':_0x1b9732(0x167)}});}const _0x313777=mutationResult({..._0x4ca7b3,'after':_0x27dd12,'dryRun':![],'succeeded':[{'id':_0x45f27d,'updated':!_0x242c2a,'skipped':_0x242c2a}],'verification':{'checkedBy':_0x1b9732(0x166),'snapshotHash':_0x3f0c07[_0x1b9732(0x163)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x313777,'message':_0x242c2a?_0x1b9732(0x177)+_0x45f27d+_0x1b9732(0x165):_0x1b9732(0x17a)+_0x45f27d+'.'};}};function validateMoveInput(_0x10598f){const _0x4bccbb=a123_0x3189d1;validateExactId(_0x10598f),parseParentId(_0x10598f,'parent-id',{'required':!![]}),parseParentId(_0x10598f,_0x4bccbb(0x16c),{'required':!![]}),validateSort(_0x10598f);}async function buildMovePlan(_0x1ac076,_0x3736b4){const _0x298c23=a123_0x3189d1,_0xc2d118=validateExactId(_0x1ac076),_0x2728d9=parseParentId(_0x1ac076,_0x298c23(0x176),{'required':!![]}),_0x2df3d6=parseParentId(_0x1ac076,_0x298c23(0x16c),{'required':!![]}),_0x238f52=validateSort(_0x1ac076),_0x5f4314=await fetchMutationSnapshot(_0x1ac076,_0x298c23(0x173),_0xc2d118),_0x3467b1=requireMenu(_0x5f4314,_0xc2d118);if(_0x3467b1[_0x298c23(0x17f)]==='folder'||_0x3467b1[_0x298c23(0x164)]!==0x0)throw menuError('menu_move_source_not_leaf',_0x298c23(0x177)+_0xc2d118+'\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.');if(_0x3467b1[_0x298c23(0x160)]!==_0x2df3d6)throw menuError(_0x298c23(0x17e),_0x298c23(0x177)+_0xc2d118+_0x298c23(0x15f)+formatParent(_0x2df3d6)+',\x20current\x20'+formatParent(_0x3467b1[_0x298c23(0x160)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');_0x2728d9!==null&&requireFolder(_0x5f4314,_0x2728d9);const _0xd30b96=_0x238f52??(_0x3467b1[_0x298c23(0x160)]===_0x2728d9?_0x3467b1['sort']??0x0:nextSiblingSort(_0x5f4314,_0x2728d9,_0x298c23(0x180))),_0x42d1ec={..._0x3467b1,'parentId':_0x2728d9,'sort':_0xd30b96},_0x18ed11={'id':_0xc2d118,'parentId':toApiParentId(_0x2728d9),'sort':_0xd30b96},_0xb658eb=_0x3467b1[_0x298c23(0x160)]===_0x2728d9&&_0x3467b1[_0x298c23(0x15d)]===_0xd30b96;return{'patch':_0x18ed11,'noChanges':_0xb658eb,'snapshot':_0x5f4314,'plan':mutationResult({'operation':'move','selector':{'id':_0xc2d118,'parentId':_0x2728d9},'before':_0x3467b1,'after':_0x42d1ec,'dryRun':_0x3736b4,'backend':[...BACKEND],'plannedActions':[{'stage':_0x298c23(0x175),'method':'POST','path':_0x298c23(0x16a),'body':{..._0x18ed11,'appCode':_0x1ac076[_0x298c23(0x16b)]}}],'snapshotHash':_0x5f4314[_0x298c23(0x163)],'warnings':_0xb658eb?[_0x298c23(0x15a)]:[]})};}function verifyMove(_0x3d7f14,_0x5343d7){const _0x185bf7=a123_0x3189d1;assertVerified(_0x3d7f14[_0x185bf7(0x17f)]!=='folder','Menu\x20'+_0x3d7f14['id']+'\x20is\x20now\x20type\x20folder.'),assertVerified(_0x3d7f14[_0x185bf7(0x164)]===0x0,'Menu\x20'+_0x3d7f14['id']+'\x20is\x20no\x20longer\x20a\x20leaf.'),assertVerified(_0x3d7f14[_0x185bf7(0x160)]===_0x5343d7['parentId'],'Menu\x20'+_0x3d7f14['id']+_0x185bf7(0x15b)),assertVerified(_0x3d7f14[_0x185bf7(0x15d)]===_0x5343d7[_0x185bf7(0x15d)],_0x185bf7(0x177)+_0x3d7f14['id']+_0x185bf7(0x183));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a124_0x4c2e5a=a124_0x366d;(function(_0x2bb2a4,_0x1387f0){const _0xcfed97=a124_0x366d,_0x3bebc0=_0x2bb2a4();while(!![]){try{const _0x4dcd8d=-parseInt(_0xcfed97(0x100))/0x1*(parseInt(_0xcfed97(0x138))/0x2)+parseInt(_0xcfed97(0x129))/0x3+parseInt(_0xcfed97(0x11b))/0x4*(-parseInt(_0xcfed97(0x12a))/0x5)+parseInt(_0xcfed97(0x117))/0x6*(-parseInt(_0xcfed97(0x14d))/0x7)+parseInt(_0xcfed97(0x140))/0x8*(-parseInt(_0xcfed97(0x137))/0x9)+parseInt(_0xcfed97(0x105))/0xa*(-parseInt(_0xcfed97(0x111))/0xb)+parseInt(_0xcfed97(0xf4))/0xc*(parseInt(_0xcfed97(0x146))/0xd);if(_0x4dcd8d===_0x1387f0)break;else _0x3bebc0['push'](_0x3bebc0['shift']());}catch(_0xcb40ca){_0x3bebc0['push'](_0x3bebc0['shift']());}}}(a124_0x323f,0xbb69d));function a124_0x366d(_0x50e5f1,_0x1a40cf){_0x50e5f1=_0x50e5f1-0xf3;const _0x323f0f=a124_0x323f();let _0x366dd8=_0x323f0f[_0x50e5f1];return _0x366dd8;}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_0x4c2e5a(0xf6),'path':a124_0x4c2e5a(0x11e)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a124_0x4c2e5a(0x102),'command':a124_0x4c2e5a(0x104),'description':a124_0x4c2e5a(0x119),'risk':a124_0x4c2e5a(0x141),'structuredErrors':!![],'flags':[{'name':'label','type':a124_0x4c2e5a(0x103),'required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a124_0x4c2e5a(0x12d),'type':'string','required':!![],'description':'Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x181522){validateRegroupInput(_0x181522);},async 'dryRun'(_0x4fc18d){const _0x1d116d=a124_0x4c2e5a;validateRegroupInput(_0x4fc18d);const _0x26ddb4=await buildRegroupPlan(_0x4fc18d,!![]);return menuDryRunResult(_0x26ddb4[_0x1d116d(0x144)],{'method':_0x1d116d(0xf6),'url':'/smartapi/menu/regroup','body':_0x26ddb4['input'],'description':_0x1d116d(0x136)+JSON[_0x1d116d(0x13f)](_0x26ddb4[_0x1d116d(0x14f)])+_0x1d116d(0xf7)+_0x26ddb4[_0x1d116d(0x11a)][_0x1d116d(0xff)](',\x20')+';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.'});},async 'execute'(_0x3afc54){const _0x35ac6c=a124_0x4c2e5a;validateRegroupInput(_0x3afc54);const _0x3c21f4=await buildRegroupPlan(_0x3afc54,![]);await recheckMutationSnapshot(_0x3afc54,_0x3c21f4[_0x35ac6c(0x144)],_0x35ac6c(0x149));const _0x1fe07d=buildMenuLookupCommand(_0x3afc54[_0x35ac6c(0x13d)]);let _0x147987,_0x50355b;try{_0x147987=await startMenuRegroup(_0x3afc54['cookie'],_0x3c21f4[_0x35ac6c(0x133)]),_0x50355b=normalizeAsyncTask(_0x147987);}catch(_0x2ed179){const _0x45eb6c=await inspectRegroupAfterFailure(_0x3afc54['appCode'],_0x3afc54['cookie'],_0x3c21f4[_0x35ac6c(0x14f)],_0x3c21f4[_0x35ac6c(0x11a)]),_0x4968fd=typeof _0x147987?.[_0x35ac6c(0x127)]===_0x35ac6c(0x103)&&_0x147987[_0x35ac6c(0x127)]['trim']()?_0x147987[_0x35ac6c(0x127)][_0x35ac6c(0x11c)]():null,_0x5ae8c1=_0x4968fd?{'command':buildAsyncTaskStatusCommand(_0x4968fd,_0x3afc54[_0x35ac6c(0x13d)])}:null,_0x4651cc=mapMenuApiError(_0x2ed179,_0x35ac6c(0x130));throw menuFailure(_0x4651cc,_0x3c21f4[_0x35ac6c(0x144)],{'stage':_0x35ac6c(0x134),'failed':{'menuIds':_0x3c21f4[_0x35ac6c(0x11a)],'taskId':_0x4968fd,'groupingApplied':_0x45eb6c[_0x35ac6c(0x12c)]?!![]:'unconfirmed'},'after':_0x45eb6c['applied']??null,'warnings':[_0x35ac6c(0x123),..._0x45eb6c[_0x35ac6c(0x139)]?[_0x35ac6c(0x122)+_0x45eb6c[_0x35ac6c(0x139)]]:[],..._0x4968fd?[_0x35ac6c(0x121)]:[]],'verification':{'status':_0x35ac6c(0xf5),'groupingApplied':_0x45eb6c[_0x35ac6c(0x12c)]?!![]:_0x35ac6c(0x10c),'taskId':_0x4968fd,'query':_0x5ae8c1,'lookupCommand':_0x1fe07d}});}const _0x5de2b3=buildAsyncTaskStatusCommand(_0x50355b[_0x35ac6c(0x127)],_0x3afc54[_0x35ac6c(0x13d)]);let _0x141753=null,_0x3fa21c=null,_0x453a11=null;try{_0x141753=await fetchMenuSnapshot(_0x3afc54[_0x35ac6c(0x13d)],_0x3afc54[_0x35ac6c(0xfc)]),_0x3fa21c=findAppliedRegroup(_0x141753,_0x3c21f4[_0x35ac6c(0x14f)],_0x3c21f4['menuIds']);}catch(_0x2927d3){_0x453a11=_0x2927d3 instanceof Error?_0x2927d3[_0x35ac6c(0x142)]:String(_0x2927d3);}const _0x47d40b=mutationResult({..._0x3c21f4['plan'],'after':_0x3fa21c??null,'dryRun':![],'succeeded':[{'groupId':_0x3fa21c?.['group']['id']??null,'menuIds':_0x3c21f4[_0x35ac6c(0x11a)],'taskId':_0x50355b['taskId'],'status':_0x50355b[_0x35ac6c(0x116)],'groupingApplied':_0x3fa21c?!![]:'unconfirmed'}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x141753?.['hash']??null,'groupId':_0x3fa21c?.['group']['id']??null,'groupingApplied':_0x3fa21c?!![]:'unconfirmed','readbackError':_0x453a11,'lookupCommand':_0x1fe07d},'warnings':[..._0x3c21f4[_0x35ac6c(0x144)][_0x35ac6c(0x148)],...!_0x3fa21c?[unconfirmedRegroupWarning(_0x50355b)]:[],..._0x453a11?[_0x35ac6c(0x13b)+_0x453a11]:[]]}),_0x24980a=_0x50355b['status']===_0x35ac6c(0x14a)&&!_0x3fa21c?_0x35ac6c(0x10b)+_0x50355b[_0x35ac6c(0x127)]+_0x35ac6c(0x120):_0x35ac6c(0x114)+asyncTaskMessage(_0x50355b);return{'ok':!![],'message':_0x24980a,'data':{..._0x47d40b,'task':_0x50355b,'query':_0x50355b[_0x35ac6c(0x128)]?null:{'command':_0x5de2b3}}};}};function validateRegroupInput(_0x26f618){const _0x4f52d0=a124_0x4c2e5a;if(!_0x26f618[_0x4f52d0(0xf9)](_0x4f52d0(0x14f))['trim']())throw CliErrors[_0x4f52d0(0x109)]('label');parseMenuIds(_0x26f618['str'](_0x4f52d0(0x12d)));}function parseMenuIds(_0x44c772){const _0x45a4b2=a124_0x4c2e5a,_0x430cf6=_0x44c772[_0x45a4b2(0x135)](',')['map'](_0x512e8b=>_0x512e8b['trim']());if(_0x430cf6['length']===0x0||_0x430cf6['some'](_0x59c593=>!_0x59c593))throw CliErrors[_0x45a4b2(0x147)](_0x45a4b2(0x150));const _0x4ba5ab=_0x430cf6[_0x45a4b2(0x131)](_0x178a33=>{const _0x8ace9a=_0x45a4b2;if(!/^\d+$/[_0x8ace9a(0x14e)](_0x178a33))throw CliErrors[_0x8ace9a(0x147)](_0x8ace9a(0x150));const _0x34bade=Number(_0x178a33);if(!Number['isSafeInteger'](_0x34bade)||_0x34bade<=0x0)throw CliErrors['validation'](_0x8ace9a(0x150));return _0x34bade;});if(new Set(_0x4ba5ab)['size']!==_0x4ba5ab['length'])throw CliErrors['validation'](_0x45a4b2(0x112));if(_0x4ba5ab[_0x45a4b2(0x124)]>MAX_REGROUP_MENU_COUNT)throw CliErrors['validation'](_0x45a4b2(0x10f)+MAX_REGROUP_MENU_COUNT+_0x45a4b2(0x101));return _0x4ba5ab;}function buildMenuLookupCommand(_0x54371b){const _0xeb2d04=a124_0x4c2e5a,_0x1f7042='\x27'+_0x54371b['replace'](/'/g,'\x27\x5c\x27\x27')+'\x27';return CLI_BIN_NAME+_0xeb2d04(0x11f)+_0x1f7042+'\x20--format\x20compress';}function unconfirmedRegroupWarning(_0x166854){const _0x17ec80=a124_0x4c2e5a;if(_0x166854['status']===_0x17ec80(0x14a))return _0x17ec80(0x12b);if(_0x166854[_0x17ec80(0x116)]===_0x17ec80(0xfe))return _0x17ec80(0x12f);if(_0x166854[_0x17ec80(0x143)])return'The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';return _0x17ec80(0x11d);}async function buildRegroupPlan(_0x3a7e7b,_0x34d2d5){const _0x4b5a90=a124_0x4c2e5a,_0x3a881e=_0x3a7e7b['str'](_0x4b5a90(0x14f))[_0x4b5a90(0x11c)](),_0x18d710=parseMenuIds(_0x3a7e7b[_0x4b5a90(0xf9)]('menu-ids')),_0x43014e=await fetchMutationSnapshot(_0x3a7e7b,'plan\x20regroup'),_0x35d8f2=_0x18d710['map'](_0x57eb61=>requireMenu(_0x43014e,_0x57eb61));for(const _0x450b44 of _0x35d8f2){if(_0x450b44[_0x4b5a90(0x14b)][_0x4b5a90(0x11c)]()[_0x4b5a90(0x10e)]()==='folder'||_0x450b44['childrenCount']>0x0)throw menuError('menu_regroup_target_not_leaf',_0x4b5a90(0x115)+_0x450b44['id']+_0x4b5a90(0x113),'Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.');if(!_0x450b44['label'][_0x4b5a90(0x11c)]())throw menuError('menu_regroup_target_label_missing','Menu\x20'+_0x450b44['id']+_0x4b5a90(0x12e),'Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.');}const _0x2cd4a4=findAppliedRegroup(_0x43014e,_0x3a881e,_0x18d710);if(_0x2cd4a4)throw menuError(_0x4b5a90(0x118),_0x4b5a90(0xfb)+_0x18d710['join'](',\x20')+_0x4b5a90(0x126)+_0x2cd4a4['group']['id']+'\x20('+JSON[_0x4b5a90(0x13f)](_0x3a881e)+').',_0x4b5a90(0x132));const _0x5d537=_0x43014e[_0x4b5a90(0x108)][_0x4b5a90(0xfa)](_0x15bcc2=>_0x15bcc2[_0x4b5a90(0x145)]==null&&_0x15bcc2[_0x4b5a90(0x14b)]['trim']()[_0x4b5a90(0x10e)]()===_0x4b5a90(0x13e)&&_0x15bcc2[_0x4b5a90(0x14f)]===_0x3a881e);if(_0x5d537[_0x4b5a90(0x124)]>0x0)throw menuError(_0x4b5a90(0x110),_0x4b5a90(0x10a)+JSON[_0x4b5a90(0x13f)](_0x3a881e)+_0x4b5a90(0x125)+_0x5d537[_0x4b5a90(0x131)](_0x544d43=>_0x544d43['id'])[_0x4b5a90(0xff)](',\x20')+'.',_0x4b5a90(0x10d));const _0x543fa1={'appCode':_0x3a7e7b['appCode'],'menuGroups':[{'label':_0x3a881e,'type':_0x4b5a90(0x13e),'children':_0x35d8f2[_0x4b5a90(0x131)](_0x10e6fd=>({'id':_0x10e6fd['id'],'label':_0x10e6fd['label']}))}]},_0x58dd41=mutationResult({'operation':_0x4b5a90(0x104),'selector':{'label':_0x3a881e,'menuIds':_0x18d710},'before':{'menus':_0x35d8f2},'after':{'group':{'id':null,'parentId':null,'label':_0x3a881e,'path':_0x4b5a90(0x107),'type':_0x4b5a90(0x13e),'childrenIds':_0x18d710},'children':_0x35d8f2[_0x4b5a90(0x131)](_0x1729ac=>({'id':_0x1729ac['id'],'label':_0x1729ac[_0x4b5a90(0x14f)],'beforeParentId':_0x1729ac['parentId'],'afterParentId':_0x4b5a90(0x14c)}))},'dryRun':_0x34d2d5,'backend':[...BACKEND],'plannedActions':[{'stage':_0x4b5a90(0x106),'method':_0x4b5a90(0xf6),'path':_0x4b5a90(0x11e),'body':_0x543fa1}],'snapshotHash':_0x43014e[_0x4b5a90(0xf3)],'warnings':['The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.']});return{'label':_0x3a881e,'menuIds':_0x18d710,'input':_0x543fa1,'plan':_0x58dd41};}function findAppliedRegroup(_0x45b436,_0x1e4b09,_0x3c75db){const _0x1ca5ea=a124_0x4c2e5a,_0x389106=_0x3c75db[_0x1ca5ea(0x131)](_0x1de0c9=>_0x45b436['byId']['get'](_0x1de0c9))[_0x1ca5ea(0xfa)](_0x4dc553=>Boolean(_0x4dc553));if(_0x389106['length']!==_0x3c75db[_0x1ca5ea(0x124)])return null;const _0x4a711b=_0x389106[0x0]?.[_0x1ca5ea(0x145)];if(_0x4a711b==null||_0x389106['some'](_0x3264ed=>_0x3264ed['parentId']!==_0x4a711b))return null;const _0x20eb31=_0x45b436[_0x1ca5ea(0x13c)][_0x1ca5ea(0x13a)](_0x4a711b);if(!_0x20eb31||_0x20eb31[_0x1ca5ea(0x145)]!=null||_0x20eb31[_0x1ca5ea(0x14b)][_0x1ca5ea(0x11c)]()[_0x1ca5ea(0x10e)]()!=='folder'||_0x20eb31['label']!==_0x1e4b09)return null;const _0x1e7da9=[..._0x3c75db][_0x1ca5ea(0xfd)]((_0x102503,_0x2d9e28)=>_0x102503-_0x2d9e28),_0x16a1f8=[..._0x20eb31[_0x1ca5ea(0xf8)]]['sort']((_0x1bc3b6,_0x42e85f)=>_0x1bc3b6-_0x42e85f);if(JSON[_0x1ca5ea(0x13f)](_0x16a1f8)!==JSON[_0x1ca5ea(0x13f)](_0x1e7da9))return null;return{'group':_0x20eb31,'children':_0x389106};}function a124_0x323f(){const _0x2b4bcb=['parentId','8117863WZdwES','validation','warnings','start\x20regroup','SUCCESS','type','<new-group-id>','126GOAHeU','test','label','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','hash','72eIJLiz','failed','POST','\x20and\x20regroup\x20menu\x20ids\x20','childrenIds','str','filter','Menus\x20','cookie','sort','FAILED','join','1MNWqur','\x20menus\x20per\x20regroup\x20request.','menu','string','regroup-start','9155190RElBeb','submit-regroup-task','<platform-generated>','menus','flagMissing','Root\x20folder\x20label\x20','Regroup\x20task\x20','unconfirmed','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','toLowerCase','--menu-ids\x20supports\x20at\x20most\x20','menu_regroup_label_conflict','11avLxDF','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','Regroup\x20task\x20accepted.\x20','Menu\x20','status','121674CgKPNX','menu_regroup_already_applied','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','menuIds','22228rvOObJ','trim','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.','/smartapi/menu/regroup','\x20menu\x20list\x20--appcode\x20','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','Regroup\x20readback\x20also\x20failed:\x20','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','length','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','taskId','isTerminal','2199054JBOoBW','1195nKyRhb','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','applied','menu-ids','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','start\x20menu\x20regroup','map','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','input','regroup-submit','split','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','9793809nvUqDP','30428Vqaeie','readbackError','get','Regroup\x20readback\x20failed:\x20','byId','appCode','folder','stringify','8pTeiXh','write','message','knownStatus','plan'];a124_0x323f=function(){return _0x2b4bcb;};return a124_0x323f();}async function inspectRegroupAfterFailure(_0x5600d1,_0x3f8cdd,_0x4f7efd,_0x46cc90){const _0x3198e3=a124_0x4c2e5a;try{const _0x5cbdb9=await fetchMenuSnapshot(_0x5600d1,_0x3f8cdd);return{'applied':findAppliedRegroup(_0x5cbdb9,_0x4f7efd,_0x46cc90),'readbackError':null};}catch(_0x200ae5){return{'applied':null,'readbackError':_0x200ae5 instanceof Error?_0x200ae5[_0x3198e3(0x142)]:String(_0x200ae5)};}}
|
|
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 +1 @@
|
|
|
1
|
-
const a125_0x3a1a52=a125_0x4f2b;(function(_0x5b7428,_0x3fba85){const _0x2f34e3=a125_0x4f2b,_0x2c85ec=_0x5b7428();while(!![]){try{const _0x3a70c2=-parseInt(_0x2f34e3(0x225))/0x1*(-parseInt(_0x2f34e3(0x1ee))/0x2)+-parseInt(_0x2f34e3(0x1fc))/0x3+-parseInt(_0x2f34e3(0x22b))/0x4+parseInt(_0x2f34e3(0x21d))/0x5*(parseInt(_0x2f34e3(0x203))/0x6)+parseInt(_0x2f34e3(0x211))/0x7*(-parseInt(_0x2f34e3(0x228))/0x8)+-parseInt(_0x2f34e3(0x1f0))/0x9+-parseInt(_0x2f34e3(0x21b))/0xa*(-parseInt(_0x2f34e3(0x207))/0xb);if(_0x3a70c2===_0x3fba85)break;else _0x2c85ec['push'](_0x2c85ec['shift']());}catch(_0x57b6e1){_0x2c85ec['push'](_0x2c85ec['shift']());}}}(a125_0x24af,0x624ba));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';function a125_0x4f2b(_0x4cfffc,_0xc9d43c){_0x4cfffc=_0x4cfffc-0x1e6;const _0x24afce=a125_0x24af();let _0x4f2b2a=_0x24afce[_0x4cfffc];return _0x4f2b2a;}import{CliErrors}from'../../errors.js';function a125_0x24af(){const _0x155850=['New\x20menu\x20label','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','117292JaoLFT','depth','verification','\x27\x5c\x27\x27','rename','Renamed\x20menu\x20','modelType','\x20label\x20update\x20did\x20not\x20take\x20effect.','visible','sort','4040rneWAo','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','1778165aQBjjH','hash','snapshot','body','path','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','requestedLabelObserved','resources','743135sPnvyj','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','str','96kbCNNc','Would\x20rename\x20menu\x20','cookie','2082240AtOnwT','isArray','validation','/smartapi/menu/update','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','readbackFailed',',\x20current\x20','pageType','\x20could\x20not\x20be\x20verified\x20safely','appCode','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','childrenIds','\x20--format\x20compress','label','after','datasetCode','string','verify\x20menu\x20rename','Menu\x20','write','pageId','2HoWAwI','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','3973716TdrMvS','type','rabetbase\x20menu\x20list\x20--appcode\x20','plan','update','\x20changed\x20during\x20the\x20label-only\x20rename.','--label\x20cannot\x20be\x20empty.','Response\x20was\x20lost\x20and\x20menu\x20','stringify','POST','datasetId','flagMissing','2228922WxsBNy','failed','childrenCount','update-recovery','\x20label\x20changed:\x20expected\x20','Rename\x20request\x20for\x20menu\x20','expect-label','6xtiTSr','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','rename\x20menu','trim','32945SnuxUl','resourcesValid','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','menu_update_recovery_required','parentId','menu_permission_denied','url','menu'];a125_0x24af=function(){return _0x155850;};return a125_0x24af();}const BACKEND=[{'method':a125_0x3a1a52(0x1f9),'path':a125_0x3a1a52(0x22e)}];export const menuRename={'service':a125_0x3a1a52(0x20e),'command':a125_0x3a1a52(0x215),'description':a125_0x3a1a52(0x230),'risk':a125_0x3a1a52(0x1ec),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'label','type':a125_0x3a1a52(0x1e9),'required':!![],'description':a125_0x3a1a52(0x20f)},{'name':a125_0x3a1a52(0x202),'type':a125_0x3a1a52(0x1e9),'required':!![],'description':a125_0x3a1a52(0x237)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x535997){validateInput(_0x535997);},async 'dryRun'(_0x10032a){const _0x4b708a=a125_0x3a1a52;validateInput(_0x10032a);const _0x296f54=await buildPlan(_0x10032a,!![]);return menuDryRunResult(_0x296f54[_0x4b708a(0x1f3)],{'method':_0x4b708a(0x1f9),'url':_0x4b708a(0x22e),'body':_0x296f54[_0x4b708a(0x220)],'description':_0x4b708a(0x229)+_0x296f54[_0x4b708a(0x220)]['id']+'.'});},async 'execute'(_0x175f74){const _0xca9e4a=a125_0x3a1a52;validateInput(_0x175f74);const _0x4bd2c0=await buildPlan(_0x175f74,![]),{plan:_0x5e89dd,body:_0x380fb4,before:_0x52dd56,noChanges:_0x27da58}=_0x4bd2c0,_0x5569db=_0x380fb4['id'];if(_0x27da58)return renameSuccess(_0x5e89dd,_0x4bd2c0[_0xca9e4a(0x21f)],_0x52dd56,!![],![]);await recheckMutationSnapshot(_0x175f74,_0x5e89dd,_0xca9e4a(0x205),_0x5569db);try{await updateMenuEntity(_0x175f74[_0xca9e4a(0x236)],_0x175f74[_0xca9e4a(0x22a)],{'id':_0x5569db,'label':_0x380fb4[_0xca9e4a(0x1e6)]});}catch(_0x1b1ac3){const _0x4cf446=mapMenuApiError(_0x1b1ac3,_0xca9e4a(0x215),_0x5569db);if(isMenuResponseLoss(_0x1b1ac3)&&_0x4cf446['code']!==_0xca9e4a(0x20c))return recoverAfterResponseLoss(_0x175f74,_0x4bd2c0);throw menuFailure(_0x4cf446,_0x5e89dd,{'stage':_0xca9e4a(0x1f4),'failed':{'id':_0x5569db},'warnings':['The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':'failed','targetId':_0x5569db,'lookupCommand':buildLookupCommand(_0x175f74[_0xca9e4a(0x236)])}});}let _0xf8b32b,_0x57750e;try{_0xf8b32b=await fetchMenuSnapshot(_0x175f74[_0xca9e4a(0x236)],_0x175f74['cookie']),_0x57750e=requireMenu(_0xf8b32b,_0x5569db),verifyRenamedFact(_0x52dd56,_0x57750e,_0x380fb4['label']);}catch(_0x387035){const _0x30b376=describeMenuErrorCause(_0x387035,_0xca9e4a(0x1ea),_0x5569db),_0x111d4e=asVerificationError(_0x387035,_0xca9e4a(0x201)+_0x5569db+_0xca9e4a(0x21c));throw menuFailure(_0x111d4e,_0x5e89dd,{'stage':_0xca9e4a(0x213),'succeeded':[{'id':_0x5569db,'updateRequested':!![]}],'failed':{'id':_0x5569db,'requestedStateConfirmed':![],..._0x30b376},'warnings':[_0xca9e4a(0x204)],'verification':{'status':_0xca9e4a(0x1fd),'targetId':_0x5569db,'lookupCommand':buildLookupCommand(_0x175f74[_0xca9e4a(0x236)])}});}return renameSuccess(_0x5e89dd,_0xf8b32b,_0x57750e,![],![]);}};function validateInput(_0x2420c7){const _0x32fab4=a125_0x3a1a52;validateExactId(_0x2420c7);if(!_0x2420c7[_0x32fab4(0x227)]('label')[_0x32fab4(0x206)]())throw CliErrors[_0x32fab4(0x22d)](_0x32fab4(0x1f6));if(!_0x2420c7['str'](_0x32fab4(0x202))['trim']())throw CliErrors[_0x32fab4(0x1fb)]('expect-label');}async function buildPlan(_0x57dd76,_0x584ee1){const _0x7fc239=a125_0x3a1a52,_0x1642c9=validateExactId(_0x57dd76),_0x1ccbeb=_0x57dd76[_0x7fc239(0x227)](_0x7fc239(0x1e6))[_0x7fc239(0x206)](),_0x29159c=_0x57dd76[_0x7fc239(0x227)](_0x7fc239(0x202)),_0x10468e=await fetchMutationSnapshot(_0x57dd76,_0x7fc239(0x205),_0x1642c9),_0xec240a=requireMenu(_0x10468e,_0x1642c9);if(_0xec240a[_0x7fc239(0x1e6)]!==_0x29159c)throw menuError('menu_state_drift',_0x7fc239(0x1eb)+_0x1642c9+_0x7fc239(0x200)+JSON[_0x7fc239(0x1f8)](_0x29159c)+_0x7fc239(0x233)+JSON['stringify'](_0xec240a[_0x7fc239(0x1e6)])+'.',_0x7fc239(0x210));const _0x2f3ee9={'id':_0x1642c9,'appCode':_0x57dd76[_0x7fc239(0x236)],'label':_0x1ccbeb},_0x48278a={..._0xec240a,'label':_0x1ccbeb},_0x8baae4=_0xec240a[_0x7fc239(0x1e6)]===_0x1ccbeb,_0x38e6ab=_0x8baae4?[]:[{'stage':'rename-menu','method':_0x7fc239(0x1f9),'path':'/smartapi/menu/update','body':_0x2f3ee9}];return{'snapshot':_0x10468e,'before':_0xec240a,'body':_0x2f3ee9,'noChanges':_0x8baae4,'plan':mutationResult({'operation':'rename','selector':{'id':_0x1642c9},'before':_0xec240a,'after':_0x48278a,'dryRun':_0x584ee1,'backend':[...BACKEND],'plannedActions':_0x38e6ab,'snapshotHash':_0x10468e[_0x7fc239(0x21e)],'warnings':_0x8baae4?[_0x7fc239(0x1ef)]:[]})};}function verifyRenamedFact(_0x41ae84,_0x2376e3,_0x179f50){const _0x314b3b=a125_0x3a1a52,_0x341622=[['id',_0x2376e3['id'],_0x41ae84['id']],[_0x314b3b(0x20b),_0x2376e3[_0x314b3b(0x20b)],_0x41ae84[_0x314b3b(0x20b)]],[_0x314b3b(0x212),_0x2376e3[_0x314b3b(0x212)],_0x41ae84[_0x314b3b(0x212)]],[_0x314b3b(0x221),_0x2376e3['path'],_0x41ae84[_0x314b3b(0x221)]],[_0x314b3b(0x20d),_0x2376e3[_0x314b3b(0x20d)],_0x41ae84[_0x314b3b(0x20d)]],[_0x314b3b(0x1f1),_0x2376e3[_0x314b3b(0x1f1)],_0x41ae84[_0x314b3b(0x1f1)]],['visible',_0x2376e3[_0x314b3b(0x219)],_0x41ae84[_0x314b3b(0x219)]],['sort',_0x2376e3[_0x314b3b(0x21a)],_0x41ae84[_0x314b3b(0x21a)]],[_0x314b3b(0x224),_0x2376e3[_0x314b3b(0x224)],_0x41ae84[_0x314b3b(0x224)]],['resourcesValid',_0x2376e3['resourcesValid'],_0x41ae84[_0x314b3b(0x208)]],['childrenIds',_0x2376e3[_0x314b3b(0x238)],_0x41ae84[_0x314b3b(0x238)]],[_0x314b3b(0x1fe),_0x2376e3[_0x314b3b(0x1fe)],_0x41ae84[_0x314b3b(0x1fe)]],[_0x314b3b(0x1ed),_0x2376e3[_0x314b3b(0x1ed)],_0x41ae84[_0x314b3b(0x1ed)]],[_0x314b3b(0x234),_0x2376e3[_0x314b3b(0x234)],_0x41ae84[_0x314b3b(0x234)]],[_0x314b3b(0x217),_0x2376e3[_0x314b3b(0x217)],_0x41ae84[_0x314b3b(0x217)]],[_0x314b3b(0x1fa),_0x2376e3[_0x314b3b(0x1fa)],_0x41ae84[_0x314b3b(0x1fa)]],['datasetCode',_0x2376e3[_0x314b3b(0x1e8)],_0x41ae84['datasetCode']]];for(const [_0x3be091,_0x13dc67,_0x538b63]of _0x341622){assertVerified(sameValue(_0x13dc67,_0x538b63),'Menu\x20'+_0x41ae84['id']+'\x20'+_0x3be091+_0x314b3b(0x1f5));}assertVerified(_0x2376e3[_0x314b3b(0x1e6)]===_0x179f50,_0x314b3b(0x1eb)+_0x41ae84['id']+_0x314b3b(0x218));}function sameValue(_0xdaef0f,_0x399d8b){const _0x7c876c=a125_0x3a1a52;if(Array[_0x7c876c(0x22c)](_0xdaef0f)||Array[_0x7c876c(0x22c)](_0x399d8b))return JSON[_0x7c876c(0x1f8)](_0xdaef0f)===JSON[_0x7c876c(0x1f8)](_0x399d8b);return _0xdaef0f===_0x399d8b;}function renameSuccess(_0x5cef03,_0x12da0f,_0x2f8259,_0x4037d9,_0x1e4db9){const _0xfaa7f6=a125_0x3a1a52,_0x42a612=_0x2f8259['id'],_0x569894=mutationResult({..._0x5cef03,'after':_0x2f8259,'dryRun':![],'succeeded':[{'id':_0x42a612,'updated':!_0x4037d9,'skipped':_0x4037d9,'recovered':_0x1e4db9}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x12da0f[_0xfaa7f6(0x21e)],'targetId':_0x42a612,'matchesRequestedState':!![],'recovered':_0x1e4db9}});return{'ok':!![],'message':_0x1e4db9?_0xfaa7f6(0x222)+_0x42a612+'.':_0x4037d9?_0xfaa7f6(0x1eb)+_0x42a612+'\x20already\x20has\x20the\x20requested\x20label.':_0xfaa7f6(0x216)+_0x42a612+'.','data':{..._0x569894,'recovered':_0x1e4db9}};}async function recoverAfterResponseLoss(_0x5772c4,_0x53b29b){const _0x4465e4=a125_0x3a1a52,{plan:_0x37bed1,before:_0x1a6f83,body:_0x24fd02}=_0x53b29b;let _0xf97643;try{_0xf97643=await fetchMenuSnapshot(_0x5772c4[_0x4465e4(0x236)],_0x5772c4[_0x4465e4(0x22a)]);}catch{throw recoveryRequired(_0x37bed1,_0x5772c4[_0x4465e4(0x236)],{'id':_0x24fd02['id'],'readbackFailed':!![]});}const _0x3aa2ac=_0xf97643['byId']['get'](_0x24fd02['id']);if(!_0x3aa2ac||_0x3aa2ac[_0x4465e4(0x1e6)]!==_0x24fd02['label'])throw recoveryRequired(_0x37bed1,_0x5772c4[_0x4465e4(0x236)],{'id':_0x24fd02['id'],'requestedLabelObserved':![],'after':_0x3aa2ac??null});try{verifyRenamedFact(_0x1a6f83,_0x3aa2ac,_0x24fd02[_0x4465e4(0x1e6)]);}catch(_0x263088){const _0x10aae7=asVerificationError(_0x263088,_0x4465e4(0x1f7)+_0x24fd02['id']+_0x4465e4(0x235));throw menuFailure(_0x10aae7,_0x37bed1,{'stage':_0x4465e4(0x1ff),'succeeded':[{'id':_0x24fd02['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x24fd02['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x3aa2ac,'warnings':[_0x4465e4(0x231)],'verification':{'status':_0x4465e4(0x1fd),'targetId':_0x24fd02['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5772c4[_0x4465e4(0x236)])}});}return renameSuccess(_0x37bed1,_0xf97643,_0x3aa2ac,![],!![]);}function recoveryRequired(_0x44e8fe,_0x1ddcb4,_0x28ec50){const _0x5b5314=a125_0x3a1a52,_0x31328c=menuError(_0x5b5314(0x20a),_0x5b5314(0x226),'Run\x20'+buildLookupCommand(_0x1ddcb4)+_0x5b5314(0x22f));return menuFailure(_0x31328c,_0x44e8fe,{'stage':_0x5b5314(0x1ff),'failed':{'id':_0x28ec50['id'],..._0x28ec50[_0x5b5314(0x223)]===undefined?{}:{'requestedLabelObserved':_0x28ec50[_0x5b5314(0x223)]},..._0x28ec50[_0x5b5314(0x232)]?{'readbackFailed':!![]}:{}},'after':_0x28ec50[_0x5b5314(0x1e7)],'warnings':[_0x5b5314(0x209)],'verification':{'status':_0x5b5314(0x1fd),'targetId':_0x28ec50['id'],..._0x28ec50[_0x5b5314(0x223)]===undefined?{}:{'requestedLabelObserved':_0x28ec50[_0x5b5314(0x223)]},..._0x28ec50[_0x5b5314(0x232)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x1ddcb4)}});}function buildLookupCommand(_0x534903){const _0x576824=a125_0x3a1a52,_0x3af688='\x27'+_0x534903['replace'](/'/g,_0x576824(0x214))+'\x27';return _0x576824(0x1f2)+_0x3af688+_0x576824(0x239);}
|
|
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 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x5fc087,_0x130e1d){const _0x586b61=a126_0x37ff,_0xc46c20=_0x5fc087();while(!![]){try{const _0x4db6f1=parseInt(_0x586b61(0x1f5))/0x1+parseInt(_0x586b61(0x1e8))/0x2*(parseInt(_0x586b61(0x1ee))/0x3)+-parseInt(_0x586b61(0x1fa))/0x4*(-parseInt(_0x586b61(0x1f8))/0x5)+-parseInt(_0x586b61(0x1f6))/0x6*(parseInt(_0x586b61(0x1fe))/0x7)+parseInt(_0x586b61(0x200))/0x8+-parseInt(_0x586b61(0x1fd))/0x9*(parseInt(_0x586b61(0x1f7))/0xa)+parseInt(_0x586b61(0x1fb))/0xb;if(_0x4db6f1===_0x130e1d)break;else _0xc46c20['push'](_0xc46c20['shift']());}catch(_0x415536){_0xc46c20['push'](_0xc46c20['shift']());}}}(a126_0x2235,0x77006));function a126_0x2235(){const _0x2d95f4=['map','\x20\x20Affected\x20menus:\x20','push','repeat','\x20menu(s)\x20will\x20be\x20updated\x20with\x20new\x20assets:','max','showOnline','5386ZyBWhK','\x20\x20\x20\x20•\x20','Local','join','path','(unchanged)','486SbnfZu','\x20page(s)\x20will\x20be\x20created\x20on\x20platform:','Path','length','\x20\x20\x20\x20CSS:\x20','label','online','81430WVAuox','463242ZfsvgI','747980BnoWhJ','820dwiecD','Platform','9736FXpFTb','2173028dhREhB','test','81zVyhlj','7bBWozm','Menu\x20Name','987192oIvwgv','\x20\x20No\x20pages\x20to\x20sync.','\x20\x20No\x20menus\x20with\x20existing\x20resources\x20found.'];a126_0x2235=function(){return _0x2d95f4;};return a126_0x2235();}function a126_0x37ff(_0x21a4c3,_0x46e912){_0x21a4c3=_0x21a4c3-0x1e2;const _0x223531=a126_0x2235();let _0x37ff24=_0x223531[_0x21a4c3];return _0x37ff24;}function strWidth(_0x5ea7aa){const _0x55152f=a126_0x37ff;let _0x453160=0x0;for(const _0x2c3ced of _0x5ea7aa){_0x453160+=/[\u4e00-\u9fa5]/[_0x55152f(0x1fc)](_0x2c3ced)?0x2:0x1;}return _0x453160;}function padRight(_0x3d2459,_0x5dd133){const _0x1d25f3=a126_0x37ff,_0x16738e=strWidth(_0x3d2459);return _0x3d2459+'\x20'[_0x1d25f3(0x1e4)](Math[_0x1d25f3(0x1e6)](0x0,_0x5dd133-_0x16738e));}export function renderCompareTable(_0x5b530e,_0x45369c={}){const _0x4ccb5b=a126_0x37ff;if(_0x5b530e[_0x4ccb5b(0x1f1)]===0x0)return'';const _0x4ce910=_0x45369c[_0x4ccb5b(0x1e7)]??!![],_0x5d58d4=Math['max'](0x1e,..._0x5b530e[_0x4ccb5b(0x203)](_0x3deb1b=>strWidth(_0x3deb1b[_0x4ccb5b(0x1f3)]))),_0x38640f=Math[_0x4ccb5b(0x1e6)](0x18,..._0x5b530e[_0x4ccb5b(0x203)](_0xe68d11=>strWidth(_0xe68d11[_0x4ccb5b(0x1ec)]))),_0x3b74af=0x4,_0x2d1e3b=[],_0x12c38f='\x20\x20'+padRight(_0x4ccb5b(0x1ff),_0x5d58d4),_0x324958=padRight(_0x4ccb5b(0x1f0),_0x38640f),_0x27b928=padRight(_0x4ccb5b(0x1ea),_0x3b74af),_0x3b469e=_0x4ce910?'\x20\x20'+padRight(_0x4ccb5b(0x1f9),_0x3b74af):'';_0x2d1e3b[_0x4ccb5b(0x1e3)](_0x12c38f+'\x20\x20'+_0x324958+'\x20\x20'+_0x27b928+(_0x4ce910?_0x3b469e:'')),_0x2d1e3b['push']('\x20\x20'+'─'[_0x4ccb5b(0x1e4)](_0x5d58d4)+'\x20\x20'+'─'['repeat'](_0x38640f)+'\x20\x20'+'─'['repeat'](_0x3b74af)+(_0x4ce910?'\x20\x20'+'─'[_0x4ccb5b(0x1e4)](_0x3b74af):''));for(const _0xb6560 of _0x5b530e){const _0x5f2f4a=padRight(_0xb6560['label'],_0x5d58d4),_0x1e4018=padRight(_0xb6560[_0x4ccb5b(0x1ec)],_0x38640f),_0x36a26f=_0xb6560['local']?'✓':'✗',_0x2690d2=padRight(_0x36a26f,_0x3b74af);let _0x2e0890='\x20\x20'+_0x5f2f4a+'\x20\x20'+_0x1e4018+'\x20\x20'+_0x2690d2;if(_0x4ce910){const _0xe1d0d0=_0xb6560[_0x4ccb5b(0x1f4)]?'✓':'✗';_0x2e0890+='\x20\x20'+padRight(_0xe1d0d0,_0x3b74af);}_0x2d1e3b['push'](_0x2e0890);}return _0x2d1e3b[_0x4ccb5b(0x1eb)]('\x0a');}export function renderSyncSummary(_0x4259fd,_0x3667f9){const _0x301a1b=a126_0x37ff;if(_0x4259fd['length']===0x0)return _0x3667f9?'\x20\x20All\x20local\x20pages\x20are\x20already\x20on\x20platform.':_0x301a1b(0x201);const _0xc2a67=['\x20\x20'+_0x4259fd[_0x301a1b(0x1f1)]+_0x301a1b(0x1ef)];for(const _0x88c9ec of _0x4259fd){_0xc2a67[_0x301a1b(0x1e3)](_0x301a1b(0x1e9)+_0x88c9ec['label']+'\x20('+_0x88c9ec[_0x301a1b(0x1ec)]+')');}return _0xc2a67[_0x301a1b(0x1eb)]('\x0a');}export function renderUpdateSummary(_0x4386e2,_0x5869b1){const _0x22ad80=a126_0x37ff;if(_0x4386e2[_0x22ad80(0x1f1)]===0x0)return _0x22ad80(0x202);const _0x1340ae=['\x20\x20'+_0x4386e2['length']+_0x22ad80(0x1e5),'\x20\x20\x20\x20JS:\x20\x20'+(_0x5869b1[0x0]??_0x22ad80(0x1ed)),_0x22ad80(0x1f2)+(_0x5869b1[0x1]??'(unchanged)'),'',_0x22ad80(0x1e2)+_0x4386e2['join'](',\x20')];return _0x1340ae[_0x22ad80(0x1eb)]('\x0a');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a127_0x12b0ef=a127_0x5a4f;(function(_0x269e78,_0x21ca70){const _0x48453b=a127_0x5a4f,_0x374a1e=_0x269e78();while(!![]){try{const _0x334caa=parseInt(_0x48453b(0x1a8))/0x1+parseInt(_0x48453b(0x179))/0x2*(parseInt(_0x48453b(0x1ac))/0x3)+parseInt(_0x48453b(0x17f))/0x4+parseInt(_0x48453b(0x1ba))/0x5+-parseInt(_0x48453b(0x16e))/0x6*(-parseInt(_0x48453b(0x165))/0x7)+parseInt(_0x48453b(0x196))/0x8+parseInt(_0x48453b(0x17a))/0x9*(-parseInt(_0x48453b(0x182))/0xa);if(_0x334caa===_0x21ca70)break;else _0x374a1e['push'](_0x374a1e['shift']());}catch(_0x397b7f){_0x374a1e['push'](_0x374a1e['shift']());}}}(a127_0x5b6e,0x40789));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_0x12b0ef(0x197),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x561ca3,_0x9ec9c9,_0x56a079=new Date()){const _0x40a169=a127_0x12b0ef;if(!_0x9ec9c9['before']||!isMenuFact(_0x9ec9c9[_0x40a169(0x1bd)]))throw menuError(_0x40a169(0x1ad),_0x40a169(0x190));const _0x49c411=_0x9ec9c9[_0x40a169(0x16a)]?.[_0x40a169(0x17c)]?_0x9ec9c9[_0x40a169(0x16a)]:[_0x9ec9c9[_0x40a169(0x1bd)]],_0x42a10a=_0x9ec9c9['deleteOrder']?.[_0x40a169(0x17c)]?_0x9ec9c9[_0x40a169(0x1ae)]:_0x49c411['map'](_0x389f98=>_0x389f98['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x561ca3,'createdAt':_0x56a079['toISOString'](),'expiresAt':new Date(_0x56a079[_0x40a169(0x1a0)]()+PLAN_TTL_MS)[_0x40a169(0x172)](),'snapshotHash':_0x9ec9c9[_0x40a169(0x175)],'recursive':_0x9ec9c9[_0x40a169(0x1bf)][_0x40a169(0x1c0)]===!![],'target':_0x9ec9c9[_0x40a169(0x1bd)],'targetFingerprint':fingerprint(_0x9ec9c9[_0x40a169(0x1bd)]),'targets':_0x49c411,'targetFingerprints':_0x49c411[_0x40a169(0x173)](fingerprint),'deleteOrder':_0x42a10a,'cascade':_0x9ec9c9['cascade']??{'pages':_0x9ec9c9[_0x40a169(0x1bd)][_0x40a169(0x16c)]==null?[]:[_0x9ec9c9['before']['pageId']],'pageSchemaAffected':_0x9ec9c9[_0x40a169(0x1bd)][_0x40a169(0x16c)]!=null},'warnings':[..._0x9ec9c9['warnings']]};}export async function writeMenuDeletePlan(_0x3bbd1e,_0x1dd66e){const _0x1584d5=a127_0x12b0ef,_0x345143=resolvePlanPath(_0x3bbd1e,_0x1584d5(0x1c1));await mkdir(dirname(_0x345143),{'recursive':!![]});try{await writeFile(_0x345143,JSON['stringify'](_0x1dd66e,null,0x2)+'\x0a',{'encoding':'utf8','flag':'wx'});}catch(_0x4884c7){if(_0x4884c7[_0x1584d5(0x1a3)]===_0x1584d5(0x1b3))throw menuError('menu_plan_file_exists','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20'+_0x345143,_0x1584d5(0x1c7));throw menuError(_0x1584d5(0x178),_0x1584d5(0x199)+_0x345143+':\x20'+errorMessage(_0x4884c7));}return _0x345143;}export async function readMenuDeletePlan(_0xc0f1be){const _0x3b530f=a127_0x12b0ef,_0x42c2f8=resolvePlanPath(_0xc0f1be,_0x3b530f(0x166));let _0x273007;try{_0x273007=(await stat(_0x42c2f8))[_0x3b530f(0x169)];}catch(_0x2be629){throw menuError('menu_plan_invalid',_0x3b530f(0x1a4)+_0x42c2f8+':\x20'+errorMessage(_0x2be629));}if(_0x273007>MAX_PLAN_BYTES)throw menuError(_0x3b530f(0x1ad),_0x3b530f(0x1aa)+_0x273007+_0x3b530f(0x17b));let _0x5beb72;try{_0x5beb72=JSON[_0x3b530f(0x18e)](await readFile(_0x42c2f8,'utf8'));}catch(_0x1067d0){throw menuError(_0x3b530f(0x1ad),_0x3b530f(0x1bb)+errorMessage(_0x1067d0));}if(!isMenuDeletePlanFile(_0x5beb72))throw menuError(_0x3b530f(0x1ad),'Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20'+PLAN_VERSION+_0x3b530f(0x18f)+PLAN_COMMAND+_0x3b530f(0x1cb));if(!sameFingerprint(_0x5beb72[_0x3b530f(0x191)],fingerprint(_0x5beb72[_0x3b530f(0x1c5)])))throw menuError(_0x3b530f(0x1ad),_0x3b530f(0x176),_0x3b530f(0x1a9));if(!_0x5beb72['targets']['every']((_0x3ff958,_0x30055a)=>sameFingerprint(_0x5beb72[_0x3b530f(0x19a)][_0x30055a],fingerprint(_0x3ff958)))||!sameFingerprint(_0x5beb72['targetFingerprint'],fingerprint(_0x5beb72[_0x3b530f(0x16a)][_0x5beb72['targets'][_0x3b530f(0x17c)]-0x1])))throw menuError(_0x3b530f(0x1ad),'Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.',_0x3b530f(0x1a9));return{'path':_0x42c2f8,'plan':_0x5beb72};}export function mutationPlanFromDeleteFile(_0x242313,_0x2cd868){const _0x35fefb=a127_0x12b0ef;return mutationResult({'operation':_0x35fefb(0x19d),'selector':{'id':_0x242313[_0x35fefb(0x1c5)]['id'],'recursive':_0x242313[_0x35fefb(0x1c0)]},'before':_0x242313[_0x35fefb(0x1c5)],'after':null,'dryRun':![],'backend':[{'method':_0x35fefb(0x1b7),'path':_0x35fefb(0x164)}],'plannedActions':[{'stage':_0x35fefb(0x187),'method':'POST','path':_0x35fefb(0x164),'body':{'idList':_0x242313[_0x35fefb(0x1ae)]}}],'targets':_0x242313[_0x35fefb(0x16a)],'deleteOrder':_0x242313[_0x35fefb(0x1ae)],'snapshotHash':_0x242313[_0x35fefb(0x175)],'cascade':_0x242313[_0x35fefb(0x198)],'planFile':{'path':_0x2cd868,'createdAt':_0x242313[_0x35fefb(0x1c2)],'expiresAt':_0x242313[_0x35fefb(0x19f)]},'warnings':_0x242313[_0x35fefb(0x18c)]});}export function assertMenuDeletePlanCurrent(_0x9bf30d,_0x1e7253,_0x159185,_0x49581a=new Date()){const _0x5e0995=a127_0x12b0ef;assertMenuDeletePlanExecutable(_0x9bf30d,_0x1e7253,_0x49581a);if(_0x159185[_0x5e0995(0x1b5)]!==_0x9bf30d['snapshotHash'])throw menuError(_0x5e0995(0x18a),_0x5e0995(0x1cc),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.');return _0x9bf30d['targets']['map']((_0x5ebb49,_0x1dda7d)=>{const _0x2ab5c0=_0x5e0995,_0x2d43c2=_0x159185['byId']['get'](_0x5ebb49['id']);if(!_0x2d43c2)throw menuError('menu_state_drift',_0x2ab5c0(0x183)+_0x5ebb49['id']+_0x2ab5c0(0x189));if(!sameFingerprint(_0x9bf30d[_0x2ab5c0(0x19a)][_0x1dda7d],fingerprint(_0x2d43c2)))throw menuError(_0x2ab5c0(0x18a),_0x2ab5c0(0x183)+_0x5ebb49['id']+_0x2ab5c0(0x16f),_0x2ab5c0(0x1a7));return _0x2d43c2;});}export function assertMenuDeletePlanExecutable(_0x4047f9,_0x5b7961,_0x3917a6=new Date()){const _0x1c437c=a127_0x12b0ef;if(_0x4047f9['appCode']!==_0x5b7961)throw menuError('menu_plan_app_mismatch',_0x1c437c(0x1a6)+JSON[_0x1c437c(0x184)](_0x4047f9[_0x1c437c(0x1b4)])+_0x1c437c(0x1c6)+JSON[_0x1c437c(0x184)](_0x5b7961)+'.');const _0x5a67bc=Date['parse'](_0x4047f9[_0x1c437c(0x1c2)]),_0x3fd303=Date[_0x1c437c(0x18e)](_0x4047f9[_0x1c437c(0x19f)]);if(!Number['isFinite'](_0x5a67bc)||!Number[_0x1c437c(0x177)](_0x3fd303)||_0x3fd303-_0x5a67bc!==PLAN_TTL_MS)throw menuError(_0x1c437c(0x1ad),_0x1c437c(0x1b6));if(_0x5a67bc>_0x3917a6[_0x1c437c(0x1a0)]())throw menuError(_0x1c437c(0x1ad),_0x1c437c(0x188)+_0x4047f9[_0x1c437c(0x1c2)]+'\x20is\x20in\x20the\x20future.',_0x1c437c(0x170));if(_0x3917a6[_0x1c437c(0x1a0)]()>_0x3fd303)throw menuError(_0x1c437c(0x19b),'Menu\x20delete\x20plan\x20expired\x20at\x20'+_0x4047f9[_0x1c437c(0x19f)]+'.',_0x1c437c(0x194));}function fingerprint(_0x34da8c){const _0x2c54c9=a127_0x12b0ef;return{'id':_0x34da8c['id'],'parentId':_0x34da8c[_0x2c54c9(0x16d)],'depth':_0x34da8c['depth'],'label':_0x34da8c['label'],'path':_0x34da8c[_0x2c54c9(0x1c3)],'type':_0x34da8c[_0x2c54c9(0x1af)],'visible':_0x34da8c[_0x2c54c9(0x1c4)],'sort':_0x34da8c[_0x2c54c9(0x1a5)],'pageId':_0x34da8c[_0x2c54c9(0x16c)],'pageType':_0x34da8c[_0x2c54c9(0x19c)],'modelType':_0x34da8c['modelType'],'datasetId':_0x34da8c[_0x2c54c9(0x174)],'datasetCode':_0x34da8c['datasetCode'],'childrenIds':[..._0x34da8c[_0x2c54c9(0x171)]],'childrenCount':_0x34da8c[_0x2c54c9(0x1a2)],'resourcesValid':_0x34da8c[_0x2c54c9(0x1b9)],'resourcesHash':hashValue(_0x34da8c['resources']),'extendHash':hashValue(_0x34da8c[_0x2c54c9(0x1a1)]??null),'updateTime':_0x34da8c[_0x2c54c9(0x1c8)]};}function hashValue(_0x220864){const _0x470c5d=a127_0x12b0ef;return createHash('sha256')[_0x470c5d(0x1b0)](JSON['stringify'](_0x220864))[_0x470c5d(0x1ab)](_0x470c5d(0x18b));}function sameFingerprint(_0x5247a1,_0x832195){const _0x3b0076=a127_0x12b0ef;return JSON[_0x3b0076(0x184)](_0x5247a1)===JSON[_0x3b0076(0x184)](_0x832195);}function a127_0x5a4f(_0x56921d,_0x48caa5){_0x56921d=_0x56921d-0x164;const _0x5b6e67=a127_0x5b6e();let _0x5a4fb4=_0x5b6e67[_0x56921d];return _0x5a4fb4;}function a127_0x5b6e(){const _0x1a4fec=['\x20bytes.','length','number','message','770740SaVWju','object','datasetCode','415420XOhLtn','Planned\x20menu\x20','stringify','extendHash','\x20requires\x20a\x20non-empty\x20file\x20path.','batch-delete-menu','Menu\x20delete\x20plan\x20creation\x20time\x20','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','menu_state_drift','hex','warnings','modelType','parse','\x20of\x20the\x20','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','targetFingerprint','resourcesHash','boolean','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','string','2547232cgFkND','menu\x20delete','cascade','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20','targetFingerprints','menu_plan_expired','pageType','delete','pages','expiresAt','getTime','extend','childrenCount','code','Cannot\x20read\x20menu\x20delete\x20plan\x20','sort','Menu\x20delete\x20plan\x20targets\x20app\x20','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','301584vitIXk','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','digest','96423ZnkuLY','menu_plan_invalid','deleteOrder','type','update','isInteger','updateUserId','EEXIST','appCode','hash','Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.','POST','isSafeInteger','resourcesValid','946935JRMnSk','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','version','before','label','selector','recursive','plan-out','createdAt','path','visible','target',',\x20current\x20app\x20is\x20','Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.','updateTime','depth','every','\x20contract.','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','/smartapi/menu/batchDelete','56pSeYjb','plan','isArray','test','size','targets','resources','pageId','parentId','294786QbtQTb','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.','childrenIds','toISOString','map','datasetId','snapshotHash','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','isFinite','menu_plan_write_failed','2BiiULw','252jLfcpr'];a127_0x5b6e=function(){return _0x1a4fec;};return a127_0x5b6e();}function resolvePlanPath(_0x250f00,_0x6519a9){const _0x2cfe0b=a127_0x12b0ef,_0x9810c4=_0x250f00['trim']();if(!_0x9810c4)throw menuError('menu_plan_invalid','--'+_0x6519a9+_0x2cfe0b(0x186));return resolve(_0x9810c4);}function isMenuDeletePlanFile(_0x394ba2){const _0x5b0d77=a127_0x12b0ef;if(!isRecord(_0x394ba2))return![];return _0x394ba2[_0x5b0d77(0x1bc)]===PLAN_VERSION&&_0x394ba2['command']===PLAN_COMMAND&&typeof _0x394ba2['appCode']==='string'&&_0x394ba2[_0x5b0d77(0x1b4)][_0x5b0d77(0x17c)]>0x0&&typeof _0x394ba2[_0x5b0d77(0x1c2)]===_0x5b0d77(0x195)&&typeof _0x394ba2[_0x5b0d77(0x19f)]===_0x5b0d77(0x195)&&typeof _0x394ba2['snapshotHash']===_0x5b0d77(0x195)&&/^sha256:[a-f0-9]{64}$/[_0x5b0d77(0x168)](_0x394ba2[_0x5b0d77(0x175)])&&typeof _0x394ba2[_0x5b0d77(0x1c0)]===_0x5b0d77(0x193)&&isMenuFact(_0x394ba2[_0x5b0d77(0x1c5)])&&isTargetFingerprint(_0x394ba2[_0x5b0d77(0x191)])&&Array[_0x5b0d77(0x167)](_0x394ba2[_0x5b0d77(0x16a)])&&_0x394ba2[_0x5b0d77(0x16a)]['length']>0x0&&_0x394ba2[_0x5b0d77(0x16a)]['every'](isMenuFact)&&Array[_0x5b0d77(0x167)](_0x394ba2['targetFingerprints'])&&_0x394ba2['targetFingerprints'][_0x5b0d77(0x17c)]===_0x394ba2[_0x5b0d77(0x16a)][_0x5b0d77(0x17c)]&&_0x394ba2[_0x5b0d77(0x19a)][_0x5b0d77(0x1ca)](isTargetFingerprint)&&Array[_0x5b0d77(0x167)](_0x394ba2['deleteOrder'])&&_0x394ba2['deleteOrder']['length']===_0x394ba2['targets'][_0x5b0d77(0x17c)]&&_0x394ba2[_0x5b0d77(0x1ae)][_0x5b0d77(0x1ca)](isPositiveInteger)&&new Set(_0x394ba2['deleteOrder'])[_0x5b0d77(0x169)]===_0x394ba2[_0x5b0d77(0x1ae)][_0x5b0d77(0x17c)]&&_0x394ba2[_0x5b0d77(0x16a)][_0x5b0d77(0x1ca)]((_0x2c4c55,_0x30e240)=>_0x2c4c55['id']===_0x394ba2[_0x5b0d77(0x1ae)][_0x30e240])&&_0x394ba2['targets'][_0x394ba2['targets'][_0x5b0d77(0x17c)]-0x1]?.['id']===_0x394ba2['target']['id']&&isRecord(_0x394ba2['cascade'])&&Array[_0x5b0d77(0x167)](_0x394ba2[_0x5b0d77(0x198)]['pages'])&&_0x394ba2[_0x5b0d77(0x198)][_0x5b0d77(0x19e)][_0x5b0d77(0x1ca)](isPositiveInteger)&&typeof _0x394ba2['cascade']['pageSchemaAffected']===_0x5b0d77(0x193)&&Array[_0x5b0d77(0x167)](_0x394ba2[_0x5b0d77(0x18c)])&&_0x394ba2['warnings'][_0x5b0d77(0x1ca)](_0x1ba9d9=>typeof _0x1ba9d9===_0x5b0d77(0x195));}function isMenuFact(_0x511481){const _0x1cd3a4=a127_0x12b0ef;if(!isRecord(_0x511481))return![];return isPositiveInteger(_0x511481['id'])&&(_0x511481['parentId']===null||isPositiveInteger(_0x511481[_0x1cd3a4(0x16d)]))&&Number[_0x1cd3a4(0x1b1)](_0x511481['depth'])&&_0x511481[_0x1cd3a4(0x1c9)]>=0x0&&typeof _0x511481[_0x1cd3a4(0x1be)]===_0x1cd3a4(0x195)&&typeof _0x511481['path']===_0x1cd3a4(0x195)&&typeof _0x511481[_0x1cd3a4(0x1af)]===_0x1cd3a4(0x195)&&(_0x511481['visible']===null||typeof _0x511481[_0x1cd3a4(0x1c4)]===_0x1cd3a4(0x193))&&(_0x511481[_0x1cd3a4(0x1a5)]===null||Number[_0x1cd3a4(0x1b1)](_0x511481[_0x1cd3a4(0x1a5)]))&&Array[_0x1cd3a4(0x167)](_0x511481['resources'])&&_0x511481[_0x1cd3a4(0x16b)][_0x1cd3a4(0x1ca)](_0xf7e94a=>typeof _0xf7e94a===_0x1cd3a4(0x195))&&typeof _0x511481['resourcesValid']===_0x1cd3a4(0x193)&&Array[_0x1cd3a4(0x167)](_0x511481[_0x1cd3a4(0x171)])&&_0x511481[_0x1cd3a4(0x171)]['every'](isPositiveInteger)&&Number[_0x1cd3a4(0x1b1)](_0x511481[_0x1cd3a4(0x1a2)])&&_0x511481[_0x1cd3a4(0x1a2)]>=0x0&&(_0x511481[_0x1cd3a4(0x16c)]===null||isPositiveInteger(_0x511481['pageId']))&&typeof _0x511481['pageType']===_0x1cd3a4(0x195)&&typeof _0x511481[_0x1cd3a4(0x18d)]===_0x1cd3a4(0x195)&&(_0x511481[_0x1cd3a4(0x174)]===null||isPositiveInteger(_0x511481[_0x1cd3a4(0x174)]))&&typeof _0x511481[_0x1cd3a4(0x181)]==='string'&&(_0x511481[_0x1cd3a4(0x1b2)]===null||typeof _0x511481[_0x1cd3a4(0x1b2)]===_0x1cd3a4(0x195))&&(_0x511481['updateUserName']===null||typeof _0x511481['updateUserName']===_0x1cd3a4(0x195))&&(_0x511481[_0x1cd3a4(0x1c8)]===null||typeof _0x511481[_0x1cd3a4(0x1c8)]===_0x1cd3a4(0x195)||typeof _0x511481[_0x1cd3a4(0x1c8)]==='number')&&(_0x511481['extend']===undefined||_0x511481[_0x1cd3a4(0x1a1)]===null||isRecord(_0x511481['extend']));}function isTargetFingerprint(_0xd2a93){const _0x181ba0=a127_0x12b0ef;if(!isRecord(_0xd2a93))return![];return isPositiveInteger(_0xd2a93['id'])&&(_0xd2a93[_0x181ba0(0x16d)]===null||isPositiveInteger(_0xd2a93[_0x181ba0(0x16d)]))&&Number[_0x181ba0(0x1b1)](_0xd2a93['depth'])&&_0xd2a93[_0x181ba0(0x1c9)]>=0x0&&typeof _0xd2a93[_0x181ba0(0x1be)]===_0x181ba0(0x195)&&typeof _0xd2a93[_0x181ba0(0x1c3)]==='string'&&typeof _0xd2a93[_0x181ba0(0x1af)]===_0x181ba0(0x195)&&(_0xd2a93['visible']===null||typeof _0xd2a93[_0x181ba0(0x1c4)]===_0x181ba0(0x193))&&(_0xd2a93['sort']===null||Number['isInteger'](_0xd2a93['sort']))&&(_0xd2a93[_0x181ba0(0x16c)]===null||isPositiveInteger(_0xd2a93[_0x181ba0(0x16c)]))&&typeof _0xd2a93[_0x181ba0(0x19c)]===_0x181ba0(0x195)&&typeof _0xd2a93['modelType']===_0x181ba0(0x195)&&(_0xd2a93[_0x181ba0(0x174)]===null||isPositiveInteger(_0xd2a93[_0x181ba0(0x174)]))&&typeof _0xd2a93[_0x181ba0(0x181)]===_0x181ba0(0x195)&&Array[_0x181ba0(0x167)](_0xd2a93['childrenIds'])&&_0xd2a93[_0x181ba0(0x171)]['every'](isPositiveInteger)&&Number[_0x181ba0(0x1b1)](_0xd2a93[_0x181ba0(0x1a2)])&&_0xd2a93[_0x181ba0(0x1a2)]>=0x0&&typeof _0xd2a93[_0x181ba0(0x1b9)]==='boolean'&&typeof _0xd2a93[_0x181ba0(0x192)]===_0x181ba0(0x195)&&/^[a-f0-9]{64}$/[_0x181ba0(0x168)](_0xd2a93[_0x181ba0(0x192)])&&typeof _0xd2a93[_0x181ba0(0x185)]==='string'&&/^[a-f0-9]{64}$/[_0x181ba0(0x168)](_0xd2a93[_0x181ba0(0x185)])&&(_0xd2a93[_0x181ba0(0x1c8)]===null||typeof _0xd2a93['updateTime']===_0x181ba0(0x195)||typeof _0xd2a93[_0x181ba0(0x1c8)]===_0x181ba0(0x17d));}function isRecord(_0x37eca8){const _0x204f27=a127_0x12b0ef;return typeof _0x37eca8===_0x204f27(0x180)&&_0x37eca8!==null&&!Array['isArray'](_0x37eca8);}function isPositiveInteger(_0x9c5ae7){const _0x31ed48=a127_0x12b0ef;return Number[_0x31ed48(0x1b8)](_0x9c5ae7)&&Number(_0x9c5ae7)>0x0;}function errorMessage(_0x1a605c){const _0x40d1e1=a127_0x12b0ef;return _0x1a605c instanceof Error?_0x1a605c[_0x40d1e1(0x17e)]:String(_0x1a605c);}
|
|
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);}
|