@lovrabet/rabetbase-cli 2.4.6-beta.2 → 2.4.6-beta.3
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/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/get.js +1 -1
- package/lib/commands/config/index.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/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/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-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/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/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init/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/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/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/risk.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.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.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/rules-cdn.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 +3 -3
- package/skills/rabetbase/references/rabetbase-ocr.md +17 -2
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const a112_0x273c0f=a112_0x10e0;(function(_0x481aa7,_0xd14162){const _0x43257b=a112_0x10e0,_0x65d6a6=_0x481aa7();while(!![]){try{const _0x5286d9=-parseInt(_0x43257b(0x1af))/0x1*(parseInt(_0x43257b(0x1be))/0x2)+parseInt(_0x43257b(0x187))/0x3*(parseInt(_0x43257b(0x1ae))/0x4)+-parseInt(_0x43257b(0x19e))/0x5*(parseInt(_0x43257b(0x17f))/0x6)+parseInt(_0x43257b(0x1a5))/0x7+-parseInt(_0x43257b(0x16d))/0x8+parseInt(_0x43257b(0x189))/0x9*(-parseInt(_0x43257b(0x1a9))/0xa)+parseInt(_0x43257b(0x169))/0xb;if(_0x5286d9===_0xd14162)break;else _0x65d6a6['push'](_0x65d6a6['shift']());}catch(_0x1c132a){_0x65d6a6['push'](_0x65d6a6['shift']());}}}(a112_0x143d,0x3bcec));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a112_0x143d(){const _0x26984e=['afterPlan','path','label','url','parentId','Whether\x20the\x20menu\x20is\x20visible','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','menu_verification_failed','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','Recovered\x20menu\x20','menu_create_response_invalid','recovered','plan','before','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','code','selector','protocol','\x20has\x20an\x20unexpected\x20','readbackerror','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','Created\x20external\x20menu\x20','\x20could\x20not\x20be\x20verified.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','expectedSnapshotHash','visibility','https:','iframe','Created\x20menu\x20','visible','pre-write-recheck','plannedActions','add','menu_url_credentials_forbidden','menu_open_mode_invalid','8999056bMcBxt','External\x20menu\x20creation\x20failed.','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','stringify','3555944ccqRCv','menu_mutation_failed','hash','menu\x20list','POST','create-recovery','parent-id','string','replace','new-window','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','menu_state_drift','rawerror','password','\x20has\x20an\x20unexpected\x20generated\x20path.','rabetbase\x20menu\x20list\x20--appcode\x20','map','hasOwnProperty','213438ePdjtc','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','lookupCommand','embedded','filter','has','772359rOxuQH','isSafeInteger','873bOqCvg','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','flagMissing','expectedPath','Run\x20','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','object','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','create\x20external\x20menu','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','toLowerCase','body','currentSnapshotHash','sort','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','str','byId','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','/smartapi/menu/create','boolean','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','15lYRYGo','menu_create_recovery_required','\x20after\x20response\x20loss.','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','menu_sort_invalid','appCode','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','2485420RCyeyu','trim','after','\x20--format\x20compress','18210rJXZvA','create-menu','type','createdId','get','4WLOPNm','3KOqjEu','cookie','open-mode','menu_permission_denied','create-response-validation','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','data','failed','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','Create\x20an\x20external\x20website\x20link\x20menu','write','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','menu_url_invalid','external-link-create','Menu\x20','305192UDAwsY','rawFlags','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','cause','create','\x20failed\x20final\x20verification.','menu_url_https_required','How\x20to\x20open\x20the\x20external\x20website','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','menu','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','verification','length','URL','isArray','succeeded','Would\x20create\x20external\x20website\x20link\x20menu\x20'];a112_0x143d=function(){return _0x26984e;};return a112_0x143d();}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a112_0x10e0(_0x8013e5,_0xdccc93){_0x8013e5=_0x8013e5-0x150;const _0x143db8=a112_0x143d();let _0x10e010=_0x143db8[_0x8013e5];return _0x10e010;}import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a112_0x273c0f(0x161),'new-window':'link'};export function validateExternalMenuUrl(_0x50bca8){const _0x228890=a112_0x273c0f,_0x170550=_0x50bca8[_0x228890(0x1a6)]();let _0x182e25;try{_0x182e25=new URL(_0x170550);}catch{throw menuError(_0x228890(0x1bb),_0x228890(0x1a4),_0x228890(0x152));}if(_0x182e25[_0x228890(0x155)]!==_0x228890(0x160))throw menuError(_0x228890(0x1c4),_0x228890(0x1c6),'Provide\x20an\x20HTTPS\x20URL.');if(_0x182e25['username']||_0x182e25[_0x228890(0x17a)])throw menuError(_0x228890(0x167),_0x228890(0x158),'Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x170550;}export const menuExternalLinkCreate={'service':a112_0x273c0f(0x1c7),'command':a112_0x273c0f(0x1bc),'description':a112_0x273c0f(0x1b8),'risk':a112_0x273c0f(0x1b9),'structuredErrors':!![],'flags':[{'name':a112_0x273c0f(0x1d2),'type':a112_0x273c0f(0x174),'required':!![],'description':'Menu\x20label'},{'name':a112_0x273c0f(0x1b1),'type':a112_0x273c0f(0x174),'required':!![],'enum':[a112_0x273c0f(0x184),a112_0x273c0f(0x176)],'description':a112_0x273c0f(0x1c5)},{'name':a112_0x273c0f(0x1d3),'type':'string','required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':'visible','type':a112_0x273c0f(0x19c),'default':!![],'description':a112_0x273c0f(0x1d5)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x28993a){validateAddInput(_0x28993a);},async 'dryRun'(_0x4de7a0){const _0x3ee2e4=a112_0x273c0f;validateAddInput(_0x4de7a0);const {plan:_0x2c2d07}=await buildSafeAddPlan(_0x4de7a0,!![]),_0x4e2517=_0x2c2d07[_0x3ee2e4(0x1a7)],_0x11d282=createBody(_0x4e2517);return menuDryRunResult(_0x2c2d07,{'method':_0x3ee2e4(0x171),'url':_0x3ee2e4(0x19b),'body':_0x11d282,'description':_0x3ee2e4(0x1cf)+JSON[_0x3ee2e4(0x16c)](_0x4e2517[_0x3ee2e4(0x1d2)])+'\x20with\x20'+_0x4de7a0[_0x3ee2e4(0x198)](_0x3ee2e4(0x1b1))+_0x3ee2e4(0x19d)});},async 'execute'(_0x75e27d){const _0xcb7a4f=a112_0x273c0f;validateAddInput(_0x75e27d);const _0x40ad37=await buildSafeAddPlan(_0x75e27d,![]),{plan:_0x1cf9f5,snapshot:_0x3fcd61}=_0x40ad37,_0x12ccfe=_0x1cf9f5['after'],_0x4c1540=buildMenuLookupCommand(_0x75e27d[_0xcb7a4f(0x1a3)]);await recheckAddSnapshot(_0x75e27d,_0x1cf9f5);let _0x2fbd7e;try{_0x2fbd7e=await createMenuEntity(_0x75e27d[_0xcb7a4f(0x1a3)],_0x75e27d['cookie'],createBody(_0x12ccfe));}catch(_0x434af7){const _0x1a4051=mapMenuApiError(_0x434af7,_0xcb7a4f(0x191));if(!isMenuResponseLoss(_0x434af7)||_0x1a4051[_0xcb7a4f(0x153)]===_0xcb7a4f(0x1b2))throw externalLinkCreateFailure(_0x1a4051,_0x1cf9f5,{'stage':_0xcb7a4f(0x1c2),'failed':{},'verification':{'status':_0xcb7a4f(0x1b6),'lookupCommand':_0x4c1540}});return recoverAfterResponseLoss(_0x75e27d,_0x40ad37,_0x4c1540);}const _0x345cad=Number(_0x2fbd7e?.['id']),_0x3bfaf5=typeof _0x2fbd7e?.[_0xcb7a4f(0x1d1)]===_0xcb7a4f(0x174)?_0x2fbd7e[_0xcb7a4f(0x1d1)]:'';if(!Number['isSafeInteger'](_0x345cad)||_0x345cad<=0x0||!_0x3bfaf5[_0xcb7a4f(0x1a6)]()){const _0x2c7a34=menuError(_0xcb7a4f(0x1da),_0xcb7a4f(0x159),'Run\x20'+_0x4c1540+'\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.');throw externalLinkCreateFailure(_0x2c7a34,_0x1cf9f5,{'stage':_0xcb7a4f(0x1b3),'succeeded':Number['isSafeInteger'](_0x345cad)&&_0x345cad>0x0?[{'id':_0x345cad,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x345cad)?_0x345cad:null,'generatedPathConfirmed':Boolean(_0x3bfaf5['trim']())},'warnings':[_0xcb7a4f(0x1c8)],'after':Number[_0xcb7a4f(0x188)](_0x345cad)&&_0x345cad>0x0?{..._0x12ccfe,'id':_0x345cad,'path':_0x3bfaf5}:_0x12ccfe,'verification':{'status':'failed','lookupCommand':_0x4c1540,...Number['isSafeInteger'](_0x345cad)&&_0x345cad>0x0?{'targetId':_0x345cad}:{}}});}const _0x2bcdc7=await readAndVerifyCreatedMenu({'appCode':_0x75e27d[_0xcb7a4f(0x1a3)],'cookie':_0x75e27d['cookie'],'plan':_0x1cf9f5,'afterPlan':_0x12ccfe,'createdId':_0x345cad,'expectedPath':_0x3bfaf5,'lookupCommand':_0x4c1540,'recovered':![]});return creationSuccess(_0x1cf9f5,_0x2bcdc7['snapshot'],_0x2bcdc7['fact'],![]);}};function validateAddInput(_0x1c9718){const _0x205007=a112_0x273c0f;if(!_0x1c9718[_0x205007(0x198)](_0x205007(0x1d2))[_0x205007(0x1a6)]())throw CliErrors[_0x205007(0x18b)](_0x205007(0x1d2));resolveExternalMenuType(_0x1c9718),validateExternalMenuUrl(_0x1c9718[_0x205007(0x198)]('url')),parseParentId(_0x1c9718,_0x205007(0x173)),validateSort(_0x1c9718);}function resolveExternalMenuType(_0x37a846){const _0x1fd2d8=a112_0x273c0f,_0x5d16e0=_0x37a846['str']('open-mode')[_0x1fd2d8(0x1a6)]();if(!_0x5d16e0)throw CliErrors[_0x1fd2d8(0x18b)](_0x1fd2d8(0x1b1));const _0x5e1652=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x5d16e0];if(!_0x5e1652)throw menuError(_0x1fd2d8(0x168),_0x1fd2d8(0x16b),_0x1fd2d8(0x181));return _0x5e1652;}async function buildAddPlan(_0x46f029,_0x178b82){const _0x55f85b=a112_0x273c0f,_0x582285=await fetchMutationSnapshot(_0x46f029,_0x55f85b(0x191)),_0x19354d=parseParentId(_0x46f029,_0x55f85b(0x173))??null;if(_0x19354d!=null)requireFolder(_0x582285,_0x19354d);const _0xba9d95=validateSort(_0x46f029),_0x557bf0=_0xba9d95??nextSiblingSort(_0x582285,_0x19354d,'menu'),_0x2881c8=_0x46f029[_0x55f85b(0x198)](_0x55f85b(0x1d2))[_0x55f85b(0x1a6)](),_0x2921c9=resolveExternalMenuType(_0x46f029),_0x1208e6=validateExternalMenuUrl(_0x46f029[_0x55f85b(0x198)](_0x55f85b(0x1d3))),_0x5140be=Object['prototype'][_0x55f85b(0x17e)]['call'](_0x46f029[_0x55f85b(0x1bf)],_0x55f85b(0x163))?_0x46f029['bool']('visible'):!![],_0x3f4c82={'id':null,'parentId':_0x19354d,'label':_0x2881c8,'path':'<platform-generated>','url':_0x1208e6,'type':_0x2921c9,'visible':_0x5140be,'sort':_0x557bf0},_0x1a17d5=buildMenuLookupCommand(_0x46f029['appCode']),_0x43714e=mutationResult({'operation':_0x55f85b(0x166),'selector':{'parentId':_0x19354d,'type':_0x2921c9,'label':_0x2881c8,'url':_0x1208e6},'before':null,'after':_0x3f4c82,'dryRun':_0x178b82,'backend':[{'method':_0x55f85b(0x171),'path':_0x55f85b(0x19b)}],'plannedActions':[{'stage':_0x55f85b(0x1aa),'method':_0x55f85b(0x171),'path':_0x55f85b(0x19b),'body':createBody(_0x3f4c82)}],'snapshotHash':_0x582285[_0x55f85b(0x16f)],'warnings':[_0x55f85b(0x197)],'verification':{'lookupCommand':_0x1a17d5}});return{'plan':_0x43714e,'snapshot':_0x582285};}async function buildSafeAddPlan(_0x1ca17a,_0x53b0f2){try{return await buildAddPlan(_0x1ca17a,_0x53b0f2);}catch(_0xc4f505){throw safeMenuAddError(_0xc4f505);}}async function recheckAddSnapshot(_0xa1f3b9,_0x21c915){const _0x22bcfa=a112_0x273c0f;try{await recheckMutationSnapshot(_0xa1f3b9,_0x21c915,_0x22bcfa(0x191));}catch(_0x13df6e){const _0x385ae2=getFailureRecord(_0x13df6e);throw externalLinkCreateFailure(_0x13df6e,_0x21c915,{'stage':_0x22bcfa(0x164),'failed':{..._0x385ae2?.[_0x22bcfa(0x15e)]?{'expectedSnapshotHash':_0x385ae2[_0x22bcfa(0x15e)]}:{},..._0x385ae2?.[_0x22bcfa(0x195)]?{'currentSnapshotHash':_0x385ae2['currentSnapshotHash']}:{}}});}}function createBody(_0x1bb6a4){const _0x4c6f38=a112_0x273c0f;return{'parentId':toApiParentId(_0x1bb6a4['parentId']),'label':String(_0x1bb6a4[_0x4c6f38(0x1d2)]),'type':String(_0x1bb6a4[_0x4c6f38(0x1ab)]),'url':String(_0x1bb6a4[_0x4c6f38(0x1d3)]),'visible':Boolean(_0x1bb6a4[_0x4c6f38(0x163)]),'sort':Number(_0x1bb6a4[_0x4c6f38(0x196)]),'extend':{}};}function buildMenuLookupCommand(_0x1799d4){const _0x11c0a1=a112_0x273c0f,_0x269b6c='\x27'+_0x1799d4[_0x11c0a1(0x175)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x11c0a1(0x17c)+_0x269b6c+_0x11c0a1(0x1a8);}async function recoverAfterResponseLoss(_0x269649,_0x2c7134,_0x30334f){const _0x47ed61=a112_0x273c0f,{plan:_0x34489e,snapshot:_0x10c2ca}=_0x2c7134,_0x544f40=_0x34489e[_0x47ed61(0x1a7)];let _0x428694;try{_0x428694=await fetchMenuSnapshot(_0x269649[_0x47ed61(0x1a3)],_0x269649[_0x47ed61(0x1b0)]);}catch(_0x4bfef2){throw recoveryRequiredFailure(_0x34489e,_0x30334f,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x30ca16=_0x428694['menus'][_0x47ed61(0x185)](_0x3f9ff3=>_0x3f9ff3[_0x47ed61(0x1d4)]===_0x544f40[_0x47ed61(0x1d4)]&&_0x3f9ff3['type']===_0x544f40['type']&&_0x3f9ff3[_0x47ed61(0x1d2)]===_0x544f40[_0x47ed61(0x1d2)]&&_0x3f9ff3[_0x47ed61(0x1d3)]===_0x544f40[_0x47ed61(0x1d3)]),_0x2f1372=_0x30ca16[_0x47ed61(0x185)](_0x57a395=>!_0x10c2ca[_0x47ed61(0x199)][_0x47ed61(0x186)](_0x57a395['id'])),_0x523659=_0x30ca16[_0x47ed61(0x185)](_0xa6ca08=>_0x10c2ca[_0x47ed61(0x199)][_0x47ed61(0x186)](_0xa6ca08['id']));if(_0x30ca16[_0x47ed61(0x1cb)]!==0x1||_0x2f1372[_0x47ed61(0x1cb)]!==0x1)throw recoveryRequiredFailure(_0x34489e,_0x30334f,{'matchCount':_0x30ca16[_0x47ed61(0x1cb)],'newMatchCount':_0x2f1372[_0x47ed61(0x1cb)],'preexistingMatchCount':_0x523659['length']});const _0x240692=_0x2f1372[0x0];try{verifyCreatedFact(_0x240692,_0x240692['id'],_0x544f40,null);}catch(_0x282a0b){const _0x311cd2=_0x282a0b instanceof Error&&_0x47ed61(0x153)in _0x282a0b?_0x282a0b:menuError(_0x47ed61(0x1d7),_0x47ed61(0x1d9)+_0x240692['id']+_0x47ed61(0x15c),_0x47ed61(0x18d)+_0x30334f+'\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x311cd2,_0x34489e,{'stage':_0x47ed61(0x1ca),'succeeded':[{'id':_0x240692['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x240692['id'],'finalFactsConfirmed':![]},'after':_0x240692,'warnings':[_0x47ed61(0x1bd)+_0x240692['id']+_0x47ed61(0x1c0)],'verification':{'status':'failed','targetId':_0x240692['id'],'recovered':!![],'lookupCommand':_0x30334f}});}return creationSuccess(_0x34489e,_0x428694,_0x240692,!![]);}function recoveryRequiredFailure(_0x343702,_0x4f64c8,_0x1624eb){const _0x583d7e=a112_0x273c0f,_0xebbb3b=menuError(_0x583d7e(0x19f),_0x583d7e(0x1b4),'Run\x20'+_0x4f64c8+_0x583d7e(0x192));return externalLinkCreateFailure(_0xebbb3b,_0x343702,{'stage':_0x583d7e(0x172),'failed':_0x1624eb,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':_0x583d7e(0x1b6),..._0x1624eb,'lookupCommand':_0x4f64c8}});}async function readAndVerifyCreatedMenu(_0x2ce36d){const _0x26f86e=a112_0x273c0f;let _0x39c60b;try{_0x39c60b=await fetchMenuSnapshot(_0x2ce36d[_0x26f86e(0x1a3)],_0x2ce36d['cookie']);}catch(_0x10536d){const _0x7f6482=menuError(_0x26f86e(0x1d7),_0x26f86e(0x1bd)+_0x2ce36d[_0x26f86e(0x1ac)]+_0x26f86e(0x190),_0x26f86e(0x18d)+_0x2ce36d['lookupCommand']+_0x26f86e(0x1d6));throw externalLinkCreateFailure(_0x7f6482,_0x2ce36d[_0x26f86e(0x150)],{'stage':_0x26f86e(0x1ca),'succeeded':[{'id':_0x2ce36d['createdId'],'created':!![]}],'failed':{'id':_0x2ce36d[_0x26f86e(0x1ac)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x2ce36d[_0x26f86e(0x1d0)],'id':_0x2ce36d['createdId'],'path':_0x2ce36d[_0x26f86e(0x18c)]},'warnings':[_0x26f86e(0x1bd)+_0x2ce36d[_0x26f86e(0x1ac)]+_0x26f86e(0x180)],'verification':{'status':_0x26f86e(0x1b6),'targetId':_0x2ce36d['createdId'],'lookupCommand':_0x2ce36d[_0x26f86e(0x183)]}});}const _0x40272e=_0x39c60b['byId'][_0x26f86e(0x1ad)](_0x2ce36d[_0x26f86e(0x1ac)]);try{if(!_0x40272e)throw menuError('menu_verification_failed',_0x26f86e(0x162)+_0x2ce36d[_0x26f86e(0x1ac)]+_0x26f86e(0x182),_0x26f86e(0x18d)+_0x2ce36d[_0x26f86e(0x183)]+_0x26f86e(0x1d6));verifyCreatedFact(_0x40272e,_0x2ce36d[_0x26f86e(0x1ac)],_0x2ce36d['afterPlan'],_0x2ce36d[_0x26f86e(0x18c)]);}catch(_0xb1738f){const _0x21f34e=_0xb1738f instanceof Error&&_0x26f86e(0x153)in _0xb1738f?_0xb1738f:menuError(_0x26f86e(0x1d7),_0x26f86e(0x162)+_0x2ce36d[_0x26f86e(0x1ac)]+_0x26f86e(0x1c3),_0x26f86e(0x18d)+_0x2ce36d['lookupCommand']+_0x26f86e(0x1d6));throw externalLinkCreateFailure(_0x21f34e,_0x2ce36d[_0x26f86e(0x150)],{'stage':_0x26f86e(0x1ca),'succeeded':[{'id':_0x2ce36d['createdId'],'created':!![]}],'failed':{'id':_0x2ce36d[_0x26f86e(0x1ac)],'finalFactsConfirmed':![]},'after':_0x40272e??{..._0x2ce36d[_0x26f86e(0x1d0)],'id':_0x2ce36d['createdId'],'path':_0x2ce36d['expectedPath']},'warnings':['Menu\x20'+_0x2ce36d['createdId']+_0x26f86e(0x15a)],'verification':{'status':_0x26f86e(0x1b6),'targetId':_0x2ce36d[_0x26f86e(0x1ac)],'recovered':_0x2ce36d[_0x26f86e(0x1db)],'lookupCommand':_0x2ce36d[_0x26f86e(0x183)]}});}return{'snapshot':_0x39c60b,'fact':_0x40272e};}function verifyCreatedFact(_0x1a99c5,_0x2bcc35,_0x2536c1,_0xb8085e){const _0x26363b=a112_0x273c0f;if(!Number[_0x26363b(0x188)](_0x1a99c5['id'])||_0x1a99c5['id']<=0x0||_0x1a99c5['id']!==_0x2bcc35)throw menuError(_0x26363b(0x1d7),_0x26363b(0x1a1),_0x26363b(0x177));const _0xf5fb3a=[['parent',_0x1a99c5[_0x26363b(0x1d4)],_0x2536c1[_0x26363b(0x1d4)]],[_0x26363b(0x1ab),_0x1a99c5['type'],_0x2536c1[_0x26363b(0x1ab)]],[_0x26363b(0x1d2),_0x1a99c5[_0x26363b(0x1d2)],_0x2536c1['label']],[_0x26363b(0x1cc),_0x1a99c5[_0x26363b(0x1d3)],_0x2536c1[_0x26363b(0x1d3)]],[_0x26363b(0x15f),_0x1a99c5[_0x26363b(0x163)],_0x2536c1['visible']],['sort',_0x1a99c5['sort'],_0x2536c1[_0x26363b(0x196)]]];for(const [_0x199719,_0x4a3e7a,_0x3baa05]of _0xf5fb3a){if(_0x4a3e7a!==_0x3baa05)throw menuError('menu_verification_failed',_0x26363b(0x162)+_0x1a99c5['id']+_0x26363b(0x156)+_0x199719+'.',_0x26363b(0x1d8));}if(!_0x1a99c5['path'][_0x26363b(0x1a6)]()||_0xb8085e!==null&&_0x1a99c5[_0x26363b(0x1d1)]!==_0xb8085e)throw menuError('menu_verification_failed',_0x26363b(0x162)+_0x1a99c5['id']+_0x26363b(0x17b),_0x26363b(0x1d8));}function creationSuccess(_0x55d5e7,_0x2937a6,_0x1be686,_0x25e4ff){const _0x168916=a112_0x273c0f,_0x2815e7=mutationResult({..._0x55d5e7,'after':_0x1be686,'dryRun':![],'succeeded':[{'id':_0x1be686['id'],'created':!![],'recovered':_0x25e4ff}],'verification':{'checkedBy':_0x168916(0x170),'snapshotHash':_0x2937a6[_0x168916(0x16f)],'targetId':_0x1be686['id'],'recovered':_0x25e4ff,'path':_0x1be686[_0x168916(0x1d1)]}});return{'ok':!![],'message':_0x25e4ff?'Recovered\x20created\x20external\x20menu\x20'+_0x1be686['id']+_0x168916(0x1a0):_0x168916(0x15b)+_0x1be686['id']+'.','data':{..._0x2815e7,'recovered':_0x25e4ff}};}function externalLinkCreateFailure(_0xd4b9f0,_0x1dedf7,_0x735dd3){const _0x4e2ab7=a112_0x273c0f;return menuFailure(safeMenuAddError(_0xd4b9f0),redactFailurePlan(_0x1dedf7),{..._0x735dd3,'succeeded':_0x735dd3[_0x4e2ab7(0x1ce)]?.[_0x4e2ab7(0x17d)](redactFailureRecord),'failed':_0x735dd3[_0x4e2ab7(0x1b6)]?redactFailureRecord(_0x735dd3[_0x4e2ab7(0x1b6)]):undefined,'verification':_0x735dd3[_0x4e2ab7(0x1ca)]?redactFailureRecord(_0x735dd3['verification']):undefined,'after':_0x735dd3[_0x4e2ab7(0x1a7)]===undefined?undefined:redactFailureValue(_0x735dd3[_0x4e2ab7(0x1a7)])});}function redactFailurePlan(_0x2d5ff6){const _0xff0fe7=a112_0x273c0f;return{..._0x2d5ff6,'selector':redactFailureRecord(_0x2d5ff6[_0xff0fe7(0x154)]),'before':redactFailureValue(_0x2d5ff6[_0xff0fe7(0x151)]),'after':redactFailureValue(_0x2d5ff6['after']),'plannedActions':_0x2d5ff6[_0xff0fe7(0x165)]?.[_0xff0fe7(0x17d)](_0x193074=>({..._0x193074,'body':redactFailureRecord(_0x193074[_0xff0fe7(0x194)])})),'succeeded':_0x2d5ff6[_0xff0fe7(0x1ce)][_0xff0fe7(0x17d)](redactFailureRecord),'failed':_0x2d5ff6['failed'][_0xff0fe7(0x17d)](redactFailureRecord),'verification':_0x2d5ff6[_0xff0fe7(0x1ca)]?redactFailureRecord(_0x2d5ff6[_0xff0fe7(0x1ca)]):undefined};}function redactFailureRecord(_0x3fd576){return redactFailureValue(_0x3fd576);}function redactFailureValue(_0x262fff,_0x237657=''){const _0x5ea8e9=a112_0x273c0f,_0x16b8da=_0x237657[_0x5ea8e9(0x193)]()[_0x5ea8e9(0x175)](/[^a-z0-9]/g,'');if([_0x5ea8e9(0x1c1),'causemessage',_0x5ea8e9(0x157),_0x5ea8e9(0x179)]['includes'](_0x16b8da))return'<redacted>';if(Array['isArray'](_0x262fff))return _0x262fff[_0x5ea8e9(0x17d)](_0x4061e2=>redactFailureValue(_0x4061e2));if(_0x262fff&&typeof _0x262fff==='object')return Object['fromEntries'](Object['entries'](_0x262fff)[_0x5ea8e9(0x17d)](([_0x4eec78,_0x521ce1])=>[_0x4eec78,redactFailureValue(_0x521ce1,_0x4eec78)]));return _0x262fff;}function safeMenuAddError(_0x1dfcc3){const _0xc321ae=a112_0x273c0f,_0x327f19=_0x1dfcc3 instanceof CliError?_0x1dfcc3[_0xc321ae(0x153)]:_0xc321ae(0x16e);switch(_0x327f19){case _0xc321ae(0x178):return menuError(_0x327f19,_0xc321ae(0x18e),_0xc321ae(0x1c9));case'menu_permission_denied':return menuError(_0x327f19,_0xc321ae(0x1b7),_0xc321ae(0x1ba));case _0xc321ae(0x1da):return menuError(_0x327f19,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.',_0xc321ae(0x15d));case'menu_verification_failed':return menuError(_0x327f19,_0xc321ae(0x19a),_0xc321ae(0x15d));case _0xc321ae(0x19f):return menuError(_0x327f19,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0xc321ae(0x16e):case'menu_not_found':case'menu_parent_not_folder':case _0xc321ae(0x1a2):case'menu_sort_overflow':return menuError(_0x327f19,_0xc321ae(0x16a),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError(_0xc321ae(0x16e),_0xc321ae(0x16a),_0xc321ae(0x18a));}}function getFailureRecord(_0x510834){const _0x1a4057=a112_0x273c0f;if(!(_0x510834 instanceof Error)||!('data'in _0x510834))return undefined;const _0x4d5c89=_0x510834[_0x1a4057(0x1b5)];if(!_0x4d5c89||typeof _0x4d5c89!==_0x1a4057(0x18f))return undefined;const _0x5db41d=_0x4d5c89[_0x1a4057(0x1b6)];if(!Array[_0x1a4057(0x1cd)](_0x5db41d)||!_0x5db41d[0x0]||typeof _0x5db41d[0x0]!=='object')return undefined;return _0x5db41d[0x0];}
|
|
1
|
+
const a112_0x200298=a112_0x1ddc;(function(_0x4c8798,_0x346fc5){const _0x8a4422=a112_0x1ddc,_0x14292a=_0x4c8798();while(!![]){try{const _0x274289=parseInt(_0x8a4422(0x154))/0x1*(-parseInt(_0x8a4422(0x177))/0x2)+parseInt(_0x8a4422(0x18f))/0x3*(-parseInt(_0x8a4422(0x19d))/0x4)+-parseInt(_0x8a4422(0x158))/0x5+-parseInt(_0x8a4422(0x169))/0x6*(-parseInt(_0x8a4422(0x16c))/0x7)+-parseInt(_0x8a4422(0x1c2))/0x8*(-parseInt(_0x8a4422(0x14a))/0x9)+-parseInt(_0x8a4422(0x1d4))/0xa+-parseInt(_0x8a4422(0x1ce))/0xb*(-parseInt(_0x8a4422(0x170))/0xc);if(_0x274289===_0x346fc5)break;else _0x14292a['push'](_0x14292a['shift']());}catch(_0xbb2f7e){_0x14292a['push'](_0x14292a['shift']());}}}(a112_0xfff1,0x951d8));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':'iframe','new-window':'link'};export function validateExternalMenuUrl(_0x40cb2b){const _0x47713b=a112_0x1ddc,_0x1298c7=_0x40cb2b[_0x47713b(0x1bc)]();let _0x1b59d2;try{_0x1b59d2=new URL(_0x1298c7);}catch{throw menuError('menu_url_invalid','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.');}if(_0x1b59d2[_0x47713b(0x157)]!==_0x47713b(0x14c))throw menuError('menu_url_https_required',_0x47713b(0x19a),'Provide\x20an\x20HTTPS\x20URL.');if(_0x1b59d2['username']||_0x1b59d2[_0x47713b(0x174)])throw menuError(_0x47713b(0x179),_0x47713b(0x155),_0x47713b(0x152));return _0x1298c7;}export const menuExternalLinkCreate={'service':'menu','command':a112_0x200298(0x16b),'description':a112_0x200298(0x178),'risk':'write','structuredErrors':!![],'flags':[{'name':'label','type':a112_0x200298(0x151),'required':!![],'description':a112_0x200298(0x193)},{'name':'open-mode','type':a112_0x200298(0x151),'required':!![],'enum':[a112_0x200298(0x1c0),a112_0x200298(0x18a)],'description':a112_0x200298(0x1b5)},{'name':'url','type':a112_0x200298(0x151),'required':!![],'description':a112_0x200298(0x191)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a112_0x200298(0x17b),'type':a112_0x200298(0x153),'default':!![],'description':a112_0x200298(0x14f)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x59b41a){validateAddInput(_0x59b41a);},async 'dryRun'(_0x21d6ac){const _0x13bd9c=a112_0x200298;validateAddInput(_0x21d6ac);const {plan:_0x48f2a1}=await buildSafeAddPlan(_0x21d6ac,!![]),_0x76f2e2=_0x48f2a1[_0x13bd9c(0x183)],_0x45afa6=createBody(_0x76f2e2);return menuDryRunResult(_0x48f2a1,{'method':'POST','url':_0x13bd9c(0x16a),'body':_0x45afa6,'description':_0x13bd9c(0x19e)+JSON['stringify'](_0x76f2e2['label'])+_0x13bd9c(0x19c)+_0x21d6ac[_0x13bd9c(0x17e)]('open-mode')+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x53d785){const _0x1f3be4=a112_0x200298;validateAddInput(_0x53d785);const _0x11f673=await buildSafeAddPlan(_0x53d785,![]),{plan:_0x495fe5,snapshot:_0x4698cf}=_0x11f673,_0x19388b=_0x495fe5[_0x1f3be4(0x183)],_0x2f76c0=buildMenuLookupCommand(_0x53d785['appCode']);await recheckAddSnapshot(_0x53d785,_0x495fe5);let _0x10f463;try{_0x10f463=await createMenuEntity(_0x53d785['appCode'],_0x53d785[_0x1f3be4(0x163)],createBody(_0x19388b));}catch(_0x28f00c){const _0x139b03=mapMenuApiError(_0x28f00c,_0x1f3be4(0x1aa));if(!isMenuResponseLoss(_0x28f00c)||_0x139b03[_0x1f3be4(0x1b4)]===_0x1f3be4(0x189))throw externalLinkCreateFailure(_0x139b03,_0x495fe5,{'stage':_0x1f3be4(0x1af),'failed':{},'verification':{'status':'failed','lookupCommand':_0x2f76c0}});return recoverAfterResponseLoss(_0x53d785,_0x11f673,_0x2f76c0);}const _0x119582=Number(_0x10f463?.['id']),_0x1906fa=typeof _0x10f463?.['path']===_0x1f3be4(0x151)?_0x10f463['path']:'';if(!Number[_0x1f3be4(0x1bb)](_0x119582)||_0x119582<=0x0||!_0x1906fa[_0x1f3be4(0x1bc)]()){const _0x414be0=menuError(_0x1f3be4(0x1a7),_0x1f3be4(0x1cd),_0x1f3be4(0x16e)+_0x2f76c0+_0x1f3be4(0x15f));throw externalLinkCreateFailure(_0x414be0,_0x495fe5,{'stage':'create-response-validation','succeeded':Number[_0x1f3be4(0x1bb)](_0x119582)&&_0x119582>0x0?[{'id':_0x119582,'created':!![]}]:[],'failed':{'createdId':Number[_0x1f3be4(0x1bb)](_0x119582)?_0x119582:null,'generatedPathConfirmed':Boolean(_0x1906fa[_0x1f3be4(0x1bc)]())},'warnings':[_0x1f3be4(0x15e)],'after':Number[_0x1f3be4(0x1bb)](_0x119582)&&_0x119582>0x0?{..._0x19388b,'id':_0x119582,'path':_0x1906fa}:_0x19388b,'verification':{'status':_0x1f3be4(0x1ca),'lookupCommand':_0x2f76c0,...Number[_0x1f3be4(0x1bb)](_0x119582)&&_0x119582>0x0?{'targetId':_0x119582}:{}}});}const _0x2ef580=await readAndVerifyCreatedMenu({'appCode':_0x53d785[_0x1f3be4(0x199)],'cookie':_0x53d785[_0x1f3be4(0x163)],'plan':_0x495fe5,'afterPlan':_0x19388b,'createdId':_0x119582,'expectedPath':_0x1906fa,'lookupCommand':_0x2f76c0,'recovered':![]});return creationSuccess(_0x495fe5,_0x2ef580['snapshot'],_0x2ef580[_0x1f3be4(0x1d1)],![]);}};function validateAddInput(_0x32cd1d){const _0xf3d8af=a112_0x200298;if(!_0x32cd1d[_0xf3d8af(0x17e)](_0xf3d8af(0x18d))[_0xf3d8af(0x1bc)]())throw CliErrors['flagMissing']('label');resolveExternalMenuType(_0x32cd1d),validateExternalMenuUrl(_0x32cd1d[_0xf3d8af(0x17e)](_0xf3d8af(0x198))),parseParentId(_0x32cd1d,_0xf3d8af(0x15b)),validateSort(_0x32cd1d);}function resolveExternalMenuType(_0x1a60b4){const _0xdfc218=a112_0x200298,_0x19c228=_0x1a60b4[_0xdfc218(0x17e)]('open-mode')['trim']();if(!_0x19c228)throw CliErrors[_0xdfc218(0x194)](_0xdfc218(0x1a8));const _0x2c4721=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x19c228];if(!_0x2c4721)throw menuError(_0xdfc218(0x1c8),_0xdfc218(0x1bd),_0xdfc218(0x187));return _0x2c4721;}async function buildAddPlan(_0x3840bf,_0x22a5b3){const _0x14c3e8=a112_0x200298,_0x13e450=await fetchMutationSnapshot(_0x3840bf,_0x14c3e8(0x1aa)),_0x331237=parseParentId(_0x3840bf,_0x14c3e8(0x15b))??null;if(_0x331237!=null)requireFolder(_0x13e450,_0x331237);const _0x3009a1=validateSort(_0x3840bf),_0x39db84=_0x3009a1??nextSiblingSort(_0x13e450,_0x331237,_0x14c3e8(0x17d)),_0x110c50=_0x3840bf[_0x14c3e8(0x17e)](_0x14c3e8(0x18d))[_0x14c3e8(0x1bc)](),_0x427ca1=resolveExternalMenuType(_0x3840bf),_0x15a3d3=validateExternalMenuUrl(_0x3840bf[_0x14c3e8(0x17e)](_0x14c3e8(0x198))),_0x2a6827=Object[_0x14c3e8(0x14b)]['hasOwnProperty'][_0x14c3e8(0x1b1)](_0x3840bf[_0x14c3e8(0x182)],_0x14c3e8(0x17b))?_0x3840bf[_0x14c3e8(0x15c)]('visible'):!![],_0x450aaf={'id':null,'parentId':_0x331237,'label':_0x110c50,'path':_0x14c3e8(0x175),'url':_0x15a3d3,'type':_0x427ca1,'visible':_0x2a6827,'sort':_0x39db84},_0x1f74f2=buildMenuLookupCommand(_0x3840bf[_0x14c3e8(0x199)]),_0x1cf253=mutationResult({'operation':_0x14c3e8(0x1cc),'selector':{'parentId':_0x331237,'type':_0x427ca1,'label':_0x110c50,'url':_0x15a3d3},'before':null,'after':_0x450aaf,'dryRun':_0x22a5b3,'backend':[{'method':_0x14c3e8(0x184),'path':_0x14c3e8(0x16a)}],'plannedActions':[{'stage':_0x14c3e8(0x186),'method':_0x14c3e8(0x184),'path':_0x14c3e8(0x16a),'body':createBody(_0x450aaf)}],'snapshotHash':_0x13e450[_0x14c3e8(0x1c7)],'warnings':[_0x14c3e8(0x160)],'verification':{'lookupCommand':_0x1f74f2}});return{'plan':_0x1cf253,'snapshot':_0x13e450};}async function buildSafeAddPlan(_0x57b91b,_0x630308){try{return await buildAddPlan(_0x57b91b,_0x630308);}catch(_0x1e7bc2){throw safeMenuAddError(_0x1e7bc2);}}async function recheckAddSnapshot(_0x2457cd,_0x47838b){const _0x12a86e=a112_0x200298;try{await recheckMutationSnapshot(_0x2457cd,_0x47838b,_0x12a86e(0x1aa));}catch(_0x44f684){const _0xde3a00=getFailureRecord(_0x44f684);throw externalLinkCreateFailure(_0x44f684,_0x47838b,{'stage':_0x12a86e(0x1d0),'failed':{..._0xde3a00?.['expectedSnapshotHash']?{'expectedSnapshotHash':_0xde3a00[_0x12a86e(0x165)]}:{},..._0xde3a00?.['currentSnapshotHash']?{'currentSnapshotHash':_0xde3a00[_0x12a86e(0x1a2)]}:{}}});}}function createBody(_0x11e82b){const _0x291158=a112_0x200298;return{'parentId':toApiParentId(_0x11e82b[_0x291158(0x1b8)]),'label':String(_0x11e82b[_0x291158(0x18d)]),'type':String(_0x11e82b[_0x291158(0x188)]),'url':String(_0x11e82b['url']),'visible':Boolean(_0x11e82b['visible']),'sort':Number(_0x11e82b['sort']),'extend':{}};}function a112_0xfff1(){const _0x585f53=['2919470uETJTh','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','1773hKcSqB','prototype','https:','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','Whether\x20the\x20menu\x20is\x20visible','parent','string','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','boolean','5766ULQkIo','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','recovered','protocol','5964070oYYQUN','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','causemessage','parent-id','bool','succeeded','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','menu\x20list','Created\x20menu\x20','cookie','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','expectedSnapshotHash','length','selector','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','6rUkuRe','/smartapi/menu/create','external-link-create','7558229bBMSlY','Created\x20external\x20menu\x20','Run\x20','\x20failed\x20final\x20verification.','8764164cRJkig','expectedPath','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','lookupCommand','password','<platform-generated>','menu_create_recovery_required','174tOvgzV','Create\x20an\x20external\x20website\x20link\x20menu','menu_url_credentials_forbidden','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','visible','menu_parent_not_folder','menu','str','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','menu_mutation_failed','rawFlags','after','POST','plan','create-menu','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','type','menu_permission_denied','new-window','\x20has\x20an\x20unexpected\x20','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','label','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','3ydluwV','afterPlan','External\x20HTTPS\x20URL','sort','Menu\x20label','flagMissing','menu_verification_failed','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','URL','url','appCode','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','cause','\x20with\x20','3038792yWnJTZ','Would\x20create\x20external\x20website\x20link\x20menu\x20','\x20after\x20response\x20loss.','\x20could\x20not\x20be\x20verified.','object','currentSnapshotHash','before','replace','\x27\x5c\x27\x27','verification','menu_create_response_invalid','open-mode','map','create\x20external\x20menu','\x20--format\x20compress','includes','Menu\x20','byId','create','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','call','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','code','How\x20to\x20open\x20the\x20external\x20website','create-recovery','Recovered\x20menu\x20','parentId','menus','menu_sort_invalid','isSafeInteger','trim','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','menu_not_found','data','embedded','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','3496negnir','visibility','filter','Recovered\x20created\x20external\x20menu\x20','createdId','hash','menu_open_mode_invalid','get','failed','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','add','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','33gelljH','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','pre-write-recheck','fact','<redacted>','path'];a112_0xfff1=function(){return _0x585f53;};return a112_0xfff1();}function buildMenuLookupCommand(_0x394618){const _0x137944=a112_0x200298,_0x36985c='\x27'+_0x394618[_0x137944(0x1a4)](/'/g,_0x137944(0x1a5))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x36985c+_0x137944(0x1ab);}async function recoverAfterResponseLoss(_0x3978cb,_0x38bb0a,_0x3fd560){const _0x4edd1b=a112_0x200298,{plan:_0x2fce7a,snapshot:_0x1a8aa8}=_0x38bb0a,_0x373c32=_0x2fce7a['after'];let _0x2d6cc8;try{_0x2d6cc8=await fetchMenuSnapshot(_0x3978cb[_0x4edd1b(0x199)],_0x3978cb[_0x4edd1b(0x163)]);}catch(_0x2df1d8){throw recoveryRequiredFailure(_0x2fce7a,_0x3fd560,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x5479d8=_0x2d6cc8[_0x4edd1b(0x1b9)][_0x4edd1b(0x1c4)](_0x2baa33=>_0x2baa33[_0x4edd1b(0x1b8)]===_0x373c32[_0x4edd1b(0x1b8)]&&_0x2baa33[_0x4edd1b(0x188)]===_0x373c32[_0x4edd1b(0x188)]&&_0x2baa33['label']===_0x373c32[_0x4edd1b(0x18d)]&&_0x2baa33['url']===_0x373c32[_0x4edd1b(0x198)]),_0x119c23=_0x5479d8['filter'](_0x52445c=>!_0x1a8aa8['byId']['has'](_0x52445c['id'])),_0x38d9a0=_0x5479d8['filter'](_0x559492=>_0x1a8aa8['byId']['has'](_0x559492['id']));if(_0x5479d8['length']!==0x1||_0x119c23[_0x4edd1b(0x166)]!==0x1)throw recoveryRequiredFailure(_0x2fce7a,_0x3fd560,{'matchCount':_0x5479d8[_0x4edd1b(0x166)],'newMatchCount':_0x119c23[_0x4edd1b(0x166)],'preexistingMatchCount':_0x38d9a0[_0x4edd1b(0x166)]});const _0x29224e=_0x119c23[0x0];try{verifyCreatedFact(_0x29224e,_0x29224e['id'],_0x373c32,null);}catch(_0xcd213a){const _0x16dbf1=_0xcd213a instanceof Error&&_0x4edd1b(0x1b4)in _0xcd213a?_0xcd213a:menuError(_0x4edd1b(0x195),_0x4edd1b(0x1b7)+_0x29224e['id']+_0x4edd1b(0x1a0),'Run\x20'+_0x3fd560+_0x4edd1b(0x159));throw externalLinkCreateFailure(_0x16dbf1,_0x2fce7a,{'stage':'verification','succeeded':[{'id':_0x29224e['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x29224e['id'],'finalFactsConfirmed':![]},'after':_0x29224e,'warnings':[_0x4edd1b(0x1ad)+_0x29224e['id']+_0x4edd1b(0x164)],'verification':{'status':_0x4edd1b(0x1ca),'targetId':_0x29224e['id'],'recovered':!![],'lookupCommand':_0x3fd560}});}return creationSuccess(_0x2fce7a,_0x2d6cc8,_0x29224e,!![]);}function recoveryRequiredFailure(_0x141908,_0x1124a3,_0x1e6e45){const _0x219ac8=a112_0x200298,_0x1e22d8=menuError(_0x219ac8(0x176),'The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.',_0x219ac8(0x16e)+_0x1124a3+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x1e22d8,_0x141908,{'stage':_0x219ac8(0x1b6),'failed':_0x1e6e45,'warnings':[_0x219ac8(0x1b2)],'verification':{'status':'failed',..._0x1e6e45,'lookupCommand':_0x1124a3}});}async function readAndVerifyCreatedMenu(_0x414b43){const _0x52ffde=a112_0x200298;let _0x14f261;try{_0x14f261=await fetchMenuSnapshot(_0x414b43[_0x52ffde(0x199)],_0x414b43[_0x52ffde(0x163)]);}catch(_0x54b113){const _0x482d57=menuError('menu_verification_failed',_0x52ffde(0x1ad)+_0x414b43[_0x52ffde(0x1c6)]+_0x52ffde(0x149),_0x52ffde(0x16e)+_0x414b43[_0x52ffde(0x173)]+_0x52ffde(0x14e));throw externalLinkCreateFailure(_0x482d57,_0x414b43[_0x52ffde(0x185)],{'stage':_0x52ffde(0x1a6),'succeeded':[{'id':_0x414b43[_0x52ffde(0x1c6)],'created':!![]}],'failed':{'id':_0x414b43[_0x52ffde(0x1c6)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x414b43[_0x52ffde(0x190)],'id':_0x414b43[_0x52ffde(0x1c6)],'path':_0x414b43[_0x52ffde(0x171)]},'warnings':[_0x52ffde(0x1ad)+_0x414b43['createdId']+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x52ffde(0x1ca),'targetId':_0x414b43[_0x52ffde(0x1c6)],'lookupCommand':_0x414b43[_0x52ffde(0x173)]}});}const _0x22d884=_0x14f261[_0x52ffde(0x1ae)][_0x52ffde(0x1c9)](_0x414b43[_0x52ffde(0x1c6)]);try{if(!_0x22d884)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x414b43[_0x52ffde(0x1c6)]+_0x52ffde(0x14d),_0x52ffde(0x16e)+_0x414b43['lookupCommand']+_0x52ffde(0x14e));verifyCreatedFact(_0x22d884,_0x414b43['createdId'],_0x414b43['afterPlan'],_0x414b43[_0x52ffde(0x171)]);}catch(_0x28e3e5){const _0x55e27d=_0x28e3e5 instanceof Error&&_0x52ffde(0x1b4)in _0x28e3e5?_0x28e3e5:menuError(_0x52ffde(0x195),'Created\x20menu\x20'+_0x414b43[_0x52ffde(0x1c6)]+_0x52ffde(0x16f),_0x52ffde(0x16e)+_0x414b43[_0x52ffde(0x173)]+_0x52ffde(0x14e));throw externalLinkCreateFailure(_0x55e27d,_0x414b43[_0x52ffde(0x185)],{'stage':_0x52ffde(0x1a6),'succeeded':[{'id':_0x414b43['createdId'],'created':!![]}],'failed':{'id':_0x414b43[_0x52ffde(0x1c6)],'finalFactsConfirmed':![]},'after':_0x22d884??{..._0x414b43[_0x52ffde(0x190)],'id':_0x414b43[_0x52ffde(0x1c6)],'path':_0x414b43['expectedPath']},'warnings':[_0x52ffde(0x1ad)+_0x414b43['createdId']+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':'failed','targetId':_0x414b43[_0x52ffde(0x1c6)],'recovered':_0x414b43[_0x52ffde(0x156)],'lookupCommand':_0x414b43[_0x52ffde(0x173)]}});}return{'snapshot':_0x14f261,'fact':_0x22d884};}function verifyCreatedFact(_0x18da91,_0x1699da,_0x4b3d5f,_0x3adcad){const _0x45b120=a112_0x200298;if(!Number[_0x45b120(0x1bb)](_0x18da91['id'])||_0x18da91['id']<=0x0||_0x18da91['id']!==_0x1699da)throw menuError('menu_verification_failed',_0x45b120(0x168),_0x45b120(0x1b3));const _0x5a256c=[[_0x45b120(0x150),_0x18da91[_0x45b120(0x1b8)],_0x4b3d5f[_0x45b120(0x1b8)]],[_0x45b120(0x188),_0x18da91[_0x45b120(0x188)],_0x4b3d5f[_0x45b120(0x188)]],['label',_0x18da91['label'],_0x4b3d5f[_0x45b120(0x18d)]],[_0x45b120(0x197),_0x18da91['url'],_0x4b3d5f[_0x45b120(0x198)]],[_0x45b120(0x1c3),_0x18da91[_0x45b120(0x17b)],_0x4b3d5f['visible']],[_0x45b120(0x192),_0x18da91[_0x45b120(0x192)],_0x4b3d5f['sort']]];for(const [_0x355c5c,_0x27722c,_0x3df3a8]of _0x5a256c){if(_0x27722c!==_0x3df3a8)throw menuError(_0x45b120(0x195),_0x45b120(0x162)+_0x18da91['id']+_0x45b120(0x18b)+_0x355c5c+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x18da91['path'][_0x45b120(0x1bc)]()||_0x3adcad!==null&&_0x18da91[_0x45b120(0x1d3)]!==_0x3adcad)throw menuError(_0x45b120(0x195),_0x45b120(0x162)+_0x18da91['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x45b120(0x196));}function creationSuccess(_0x23f902,_0x19e1a3,_0x521ce4,_0x5d0634){const _0x6871=a112_0x200298,_0x3b73ff=mutationResult({..._0x23f902,'after':_0x521ce4,'dryRun':![],'succeeded':[{'id':_0x521ce4['id'],'created':!![],'recovered':_0x5d0634}],'verification':{'checkedBy':_0x6871(0x161),'snapshotHash':_0x19e1a3[_0x6871(0x1c7)],'targetId':_0x521ce4['id'],'recovered':_0x5d0634,'path':_0x521ce4[_0x6871(0x1d3)]}});return{'ok':!![],'message':_0x5d0634?_0x6871(0x1c5)+_0x521ce4['id']+_0x6871(0x19f):_0x6871(0x16d)+_0x521ce4['id']+'.','data':{..._0x3b73ff,'recovered':_0x5d0634}};}function externalLinkCreateFailure(_0x58e342,_0x139efa,_0x28bd3a){const _0x3c94ed=a112_0x200298;return menuFailure(safeMenuAddError(_0x58e342),redactFailurePlan(_0x139efa),{..._0x28bd3a,'succeeded':_0x28bd3a[_0x3c94ed(0x15d)]?.[_0x3c94ed(0x1a9)](redactFailureRecord),'failed':_0x28bd3a[_0x3c94ed(0x1ca)]?redactFailureRecord(_0x28bd3a[_0x3c94ed(0x1ca)]):undefined,'verification':_0x28bd3a[_0x3c94ed(0x1a6)]?redactFailureRecord(_0x28bd3a['verification']):undefined,'after':_0x28bd3a[_0x3c94ed(0x183)]===undefined?undefined:redactFailureValue(_0x28bd3a[_0x3c94ed(0x183)])});}function redactFailurePlan(_0x2219c7){const _0x10d124=a112_0x200298;return{..._0x2219c7,'selector':redactFailureRecord(_0x2219c7[_0x10d124(0x167)]),'before':redactFailureValue(_0x2219c7[_0x10d124(0x1a3)]),'after':redactFailureValue(_0x2219c7[_0x10d124(0x183)]),'plannedActions':_0x2219c7['plannedActions']?.[_0x10d124(0x1a9)](_0x4b17f4=>({..._0x4b17f4,'body':redactFailureRecord(_0x4b17f4['body'])})),'succeeded':_0x2219c7[_0x10d124(0x15d)][_0x10d124(0x1a9)](redactFailureRecord),'failed':_0x2219c7[_0x10d124(0x1ca)][_0x10d124(0x1a9)](redactFailureRecord),'verification':_0x2219c7[_0x10d124(0x1a6)]?redactFailureRecord(_0x2219c7[_0x10d124(0x1a6)]):undefined};}function redactFailureRecord(_0x13d3fc){return redactFailureValue(_0x13d3fc);}function a112_0x1ddc(_0x447a18,_0x3dad81){_0x447a18=_0x447a18-0x149;const _0xfff171=a112_0xfff1();let _0x1ddcd3=_0xfff171[_0x447a18];return _0x1ddcd3;}function redactFailureValue(_0x3cd225,_0x29a1ca=''){const _0x252454=a112_0x200298,_0x443954=_0x29a1ca['toLowerCase']()[_0x252454(0x1a4)](/[^a-z0-9]/g,'');if([_0x252454(0x19b),_0x252454(0x15a),'readbackerror','rawerror'][_0x252454(0x1ac)](_0x443954))return _0x252454(0x1d2);if(Array['isArray'](_0x3cd225))return _0x3cd225[_0x252454(0x1a9)](_0x305b61=>redactFailureValue(_0x305b61));if(_0x3cd225&&typeof _0x3cd225===_0x252454(0x1a1))return Object['fromEntries'](Object['entries'](_0x3cd225)[_0x252454(0x1a9)](([_0x47e080,_0xf45131])=>[_0x47e080,redactFailureValue(_0xf45131,_0x47e080)]));return _0x3cd225;}function safeMenuAddError(_0x3e06d8){const _0x437530=a112_0x200298,_0xc16add=_0x3e06d8 instanceof CliError?_0x3e06d8[_0x437530(0x1b4)]:_0x437530(0x181);switch(_0xc16add){case'menu_state_drift':return menuError(_0xc16add,_0x437530(0x172),_0x437530(0x1c1));case _0x437530(0x189):return menuError(_0xc16add,_0x437530(0x180),_0x437530(0x17f));case _0x437530(0x1a7):return menuError(_0xc16add,_0x437530(0x1cf),_0x437530(0x17a));case _0x437530(0x195):return menuError(_0xc16add,_0x437530(0x18c),_0x437530(0x17a));case'menu_create_recovery_required':return menuError(_0xc16add,_0x437530(0x18e),_0x437530(0x1b0));case'menu_mutation_failed':case _0x437530(0x1be):case _0x437530(0x17c):case _0x437530(0x1ba):case'menu_sort_overflow':return menuError(_0xc16add,'External\x20menu\x20creation\x20failed.',_0x437530(0x1cb));default:return menuError(_0x437530(0x181),'External\x20menu\x20creation\x20failed.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x14dc30){const _0x101a10=a112_0x200298;if(!(_0x14dc30 instanceof Error)||!(_0x101a10(0x1bf)in _0x14dc30))return undefined;const _0x19200a=_0x14dc30[_0x101a10(0x1bf)];if(!_0x19200a||typeof _0x19200a!==_0x101a10(0x1a1))return undefined;const _0x1fb1d6=_0x19200a[_0x101a10(0x1ca)];if(!Array['isArray'](_0x1fb1d6)||!_0x1fb1d6[0x0]||typeof _0x1fb1d6[0x0]!==_0x101a10(0x1a1))return undefined;return _0x1fb1d6[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a113_0x4886b0=a113_0x33a0;(function(_0x27e1fa,_0x2f884d){const _0x7944d4=a113_0x33a0,_0x51be08=_0x27e1fa();while(!![]){try{const _0xf62cad=-parseInt(_0x7944d4(0x146))/0x1+parseInt(_0x7944d4(0x120))/0x2*(parseInt(_0x7944d4(0x158))/0x3)+parseInt(_0x7944d4(0x144))/0x4+-parseInt(_0x7944d4(0x13c))/0x5*(parseInt(_0x7944d4(0x15e))/0x6)+parseInt(_0x7944d4(0x139))/0x7+-parseInt(_0x7944d4(0x130))/0x8+parseInt(_0x7944d4(0x165))/0x9*(parseInt(_0x7944d4(0x14c))/0xa);if(_0xf62cad===_0x2f884d)break;else _0x51be08['push'](_0x51be08['shift']());}catch(_0x406c3f){_0x51be08['push'](_0x51be08['shift']());}}}(a113_0x57bc,0xd2671));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a113_0x33a0(_0x4e0e0d,_0x2ec650){_0x4e0e0d=_0x4e0e0d-0x11b;const _0x57bcb9=a113_0x57bc();let _0x33a0a7=_0x57bcb9[_0x4e0e0d];return _0x33a0a7;}import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a113_0x4886b0(0x11d),'path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':a113_0x4886b0(0x141),'command':a113_0x4886b0(0x166),'description':a113_0x4886b0(0x11b),'risk':a113_0x4886b0(0x138),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a113_0x4886b0(0x161),'type':'string','required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a113_0x4886b0(0x167),'type':a113_0x4886b0(0x164),'required':!![],'description':a113_0x4886b0(0x13b)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x48a9f1){validateInput(_0x48a9f1);},async 'dryRun'(_0x4726b1){const _0x6eb7c7=a113_0x4886b0;validateInput(_0x4726b1);const _0x5df62f=await buildPlan(_0x4726b1,!![]);return menuDryRunResult(_0x5df62f[_0x6eb7c7(0x12d)],{'method':'POST','url':_0x6eb7c7(0x127),'body':_0x5df62f[_0x6eb7c7(0x125)],'description':_0x6eb7c7(0x143)+_0x5df62f[_0x6eb7c7(0x125)]['id']+'.'});},async 'execute'(_0x247c10){const _0xfcdc4e=a113_0x4886b0;validateInput(_0x247c10);const _0x3bcf17=await buildPlan(_0x247c10,![]),{plan:_0x3e7d28,body:_0x5d31e9,before:_0x1bcd9a,noChanges:_0x2cd63c}=_0x3bcf17,_0x327cb9=_0x5d31e9['id'];if(_0x2cd63c)return updateSuccess(_0x3e7d28,_0x3bcf17[_0xfcdc4e(0x147)],_0x1bcd9a,!![],![]);await recheckMutationSnapshot(_0x247c10,_0x3e7d28,_0xfcdc4e(0x13e),_0x327cb9);try{await updateMenuEntity(_0x247c10[_0xfcdc4e(0x14a)],_0x247c10[_0xfcdc4e(0x163)],{'id':_0x5d31e9['id'],'url':_0x5d31e9[_0xfcdc4e(0x161)]});}catch(_0x422c38){const _0x288468=mapMenuApiError(_0x422c38,_0xfcdc4e(0x13e),_0x327cb9);if(isMenuResponseLoss(_0x422c38)&&_0x288468[_0xfcdc4e(0x11f)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x247c10,_0x3bcf17);throw menuFailure(_0x288468,_0x3e7d28,{'stage':_0xfcdc4e(0x129),'failed':{'id':_0x327cb9},'warnings':['The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0xfcdc4e(0x13d),'targetId':_0x327cb9,'lookupCommand':buildLookupCommand(_0x247c10['appCode'])}});}let _0x17f465,_0x2d5f33;try{_0x17f465=await fetchMenuSnapshot(_0x247c10[_0xfcdc4e(0x14a)],_0x247c10['cookie']),_0x2d5f33=requireMenu(_0x17f465,_0x327cb9),verifyUpdatedFact(_0x1bcd9a,_0x2d5f33,_0x5d31e9['url']);}catch(_0x2ebaca){const _0x459dca=describeMenuErrorCause(_0x2ebaca,_0xfcdc4e(0x14b),_0x327cb9),_0x2a40e9=asVerificationError(_0x2ebaca,_0xfcdc4e(0x15f)+_0x327cb9+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x2a40e9,_0x3e7d28,{'stage':'verification','succeeded':[{'id':_0x327cb9,'updateRequested':!![]}],'failed':{'id':_0x327cb9,'requestedStateConfirmed':![],..._0x459dca},'warnings':['The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':'failed','targetId':_0x327cb9,'lookupCommand':buildLookupCommand(_0x247c10[_0xfcdc4e(0x14a)])}});}return updateSuccess(_0x3e7d28,_0x17f465,_0x2d5f33,![],![]);}};function validateInput(_0x4174fd){const _0x2281b6=a113_0x4886b0;validateExactId(_0x4174fd),requiredUrl(_0x4174fd,_0x2281b6(0x161)),requiredExpectedUrl(_0x4174fd),parseParentId(_0x4174fd,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x1d4937,_0xe2977a){const _0xcc87d5=a113_0x4886b0;if(!hasFlag(_0x1d4937,_0xe2977a)||!_0x1d4937['str'](_0xe2977a)['trim']())throw CliErrors[_0xcc87d5(0x140)](_0xe2977a);return validateExternalMenuUrl(_0x1d4937['str'](_0xe2977a));}function requiredExpectedUrl(_0x3a05ad){const _0x4d3d8e=a113_0x4886b0;if(!hasFlag(_0x3a05ad,_0x4d3d8e(0x167))||!_0x3a05ad[_0x4d3d8e(0x135)](_0x4d3d8e(0x167))['trim']())throw CliErrors[_0x4d3d8e(0x140)](_0x4d3d8e(0x167));return _0x3a05ad[_0x4d3d8e(0x135)](_0x4d3d8e(0x167))[_0x4d3d8e(0x159)]();}async function buildPlan(_0x55cc19,_0x5754bc){const _0x2c305b=a113_0x4886b0,_0x113f3e=validateExactId(_0x55cc19),_0x823b4e=requiredUrl(_0x55cc19,'url'),_0x227d42=requiredExpectedUrl(_0x55cc19),_0x487008=parseParentId(_0x55cc19,_0x2c305b(0x142),{'required':!![]}),_0x4ee451=await fetchMutationSnapshot(_0x55cc19,_0x2c305b(0x13e),_0x113f3e),_0x2cd6a1=requireMenu(_0x4ee451,_0x113f3e);assertExternalLinkLeaf(_0x2cd6a1);if(_0x2cd6a1[_0x2c305b(0x124)]!==_0x487008)throw menuError(_0x2c305b(0x151),_0x2c305b(0x15c)+_0x113f3e+_0x2c305b(0x131)+formatParent(_0x487008)+',\x20current\x20'+formatParent(_0x2cd6a1[_0x2c305b(0x124)])+'.',_0x2c305b(0x13a));const _0x4872a5=_0x2cd6a1['url']===_0x823b4e;if(!_0x4872a5&&_0x2cd6a1[_0x2c305b(0x161)]!==_0x227d42)throw menuError('menu_state_drift',_0x2c305b(0x15c)+_0x113f3e+_0x2c305b(0x152),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x4ba3da={'id':_0x113f3e,'appCode':_0x55cc19['appCode'],'url':_0x823b4e},_0x367579={..._0x2cd6a1,'url':_0x823b4e};return{'body':_0x4ba3da,'before':_0x2cd6a1,'noChanges':_0x4872a5,'snapshot':_0x4ee451,'plan':mutationResult({'operation':_0x2c305b(0x166),'selector':{'id':_0x113f3e},'before':_0x2cd6a1,'after':_0x367579,'dryRun':_0x5754bc,'backend':[...BACKEND],'plannedActions':_0x4872a5?[]:[{'stage':_0x2c305b(0x136),'method':_0x2c305b(0x11d),'path':_0x2c305b(0x127),'body':_0x4ba3da}],'snapshotHash':_0x4ee451[_0x2c305b(0x160)],'warnings':_0x4872a5?[_0x2c305b(0x11e)]:[]})};}function assertExternalLinkLeaf(_0x50379f){const _0xc88ce4=a113_0x4886b0;if(_0x50379f['type']!==_0xc88ce4(0x14d)&&_0x50379f[_0xc88ce4(0x153)]!==_0xc88ce4(0x15d))throw menuError(_0xc88ce4(0x12c),_0xc88ce4(0x15c)+_0x50379f['id']+_0xc88ce4(0x155)+(_0x50379f[_0xc88ce4(0x153)]||_0xc88ce4(0x168))+_0xc88ce4(0x169),_0xc88ce4(0x150));if(_0x50379f['childrenCount']!==0x0)throw menuError(_0xc88ce4(0x132),'Menu\x20'+_0x50379f['id']+_0xc88ce4(0x121)+_0x50379f[_0xc88ce4(0x13f)]+_0xc88ce4(0x156),_0xc88ce4(0x128));if(!_0x50379f[_0xc88ce4(0x14e)]['trim']())throw menuError(_0xc88ce4(0x133),_0xc88ce4(0x15c)+_0x50379f['id']+_0xc88ce4(0x12a),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function a113_0x57bc(){const _0x13def2=['2845107EgaTEe','external-link-update','expect-url','unknown','\x22,\x20not\x20iframe\x20or\x20link.','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','label','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','replace','POST','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','code','588454JXbLty','\x20has\x20','Updated\x20external\x20URL\x20for\x20menu\x20','visible','parentId','body','rabetbase\x20menu\x20list\x20--appcode\x20','/smartapi/menu/update','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','update','\x20has\x20an\x20empty\x20platform\x20path.','after','menu_external_link_type_required','plan','menu_update_recovery_required','get','11672632zvXvTf','\x20parent\x20changed:\x20expected\x20','menu_external_link_not_leaf','menu_external_link_path_missing','\x20URL\x20update\x20did\x20not\x20take\x20effect.','str','update-external-link-url','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','write','5750703MajcGQ','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','1327890UGyHar','failed','update\x20external\x20menu\x20URL','childrenCount','flagMissing','menu','expect-parent-id','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','5444996qiDPEo','sort','838908BszqBh','snapshot','\x20could\x20not\x20be\x20verified\x20safely','requestedUrlObserved','appCode','verify\x20external\x20menu\x20URL\x20update','30hwEsif','iframe','path','byId','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','menu_state_drift','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','type','readbackFailed','\x20is\x20type\x20\x22','\x20direct\x20child\x20menu(s).','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','3wKrPiT','trim','update-recovery','menu\x20list','Menu\x20','link','6OAGWNs','Update\x20request\x20for\x20menu\x20','hash','url','\x20changed\x20during\x20the\x20URL-only\x20update.','cookie','string'];a113_0x57bc=function(){return _0x13def2;};return a113_0x57bc();}function verifyUpdatedFact(_0x11610e,_0x116122,_0x1f0e45){const _0x5be3cb=a113_0x4886b0;assertExternalLinkLeaf(_0x116122);const _0x545e63=[['id',_0x116122['id'],_0x11610e['id']],['label',_0x116122[_0x5be3cb(0x16b)],_0x11610e[_0x5be3cb(0x16b)]],[_0x5be3cb(0x153),_0x116122[_0x5be3cb(0x153)],_0x11610e[_0x5be3cb(0x153)]],[_0x5be3cb(0x14e),_0x116122['path'],_0x11610e['path']],[_0x5be3cb(0x124),_0x116122[_0x5be3cb(0x124)],_0x11610e[_0x5be3cb(0x124)]],[_0x5be3cb(0x145),_0x116122[_0x5be3cb(0x145)],_0x11610e[_0x5be3cb(0x145)]],[_0x5be3cb(0x123),_0x116122['visible'],_0x11610e['visible']]];for(const [_0x2d47fe,_0x2097dd,_0x31a464]of _0x545e63){assertVerified(_0x2097dd===_0x31a464,_0x5be3cb(0x15c)+_0x11610e['id']+'\x20'+_0x2d47fe+_0x5be3cb(0x162));}assertVerified(_0x116122[_0x5be3cb(0x161)]===_0x1f0e45,'Menu\x20'+_0x11610e['id']+_0x5be3cb(0x134));}function updateSuccess(_0x529065,_0x54eb60,_0x739c30,_0x4f029f,_0x467698){const _0x77743a=a113_0x4886b0,_0x52cc1f=_0x739c30['id'],_0x985c52=mutationResult({..._0x529065,'after':_0x739c30,'dryRun':![],'succeeded':[{'id':_0x52cc1f,'updated':!_0x4f029f,'skipped':_0x4f029f,'recovered':_0x467698}],'verification':{'checkedBy':_0x77743a(0x15b),'snapshotHash':_0x54eb60['hash'],'targetId':_0x52cc1f,'matchesRequestedState':!![],'recovered':_0x467698}});return{'ok':!![],'message':_0x467698?_0x77743a(0x157)+_0x52cc1f+'.':_0x4f029f?_0x77743a(0x15c)+_0x52cc1f+'\x20already\x20matches\x20the\x20requested\x20URL.':_0x77743a(0x122)+_0x52cc1f+'.','data':{..._0x985c52,'recovered':_0x467698}};}async function recoverAfterResponseLoss(_0x30c6d0,_0x253a26){const _0x13231d=a113_0x4886b0,{plan:_0x4695c7,before:_0x51f8a3,body:_0x5479f4}=_0x253a26;let _0x36c199;try{_0x36c199=await fetchMenuSnapshot(_0x30c6d0[_0x13231d(0x14a)],_0x30c6d0[_0x13231d(0x163)]);}catch{throw recoveryRequired(_0x4695c7,_0x30c6d0[_0x13231d(0x14a)],{'id':_0x5479f4['id'],'readbackFailed':!![]});}const _0x404aba=_0x36c199[_0x13231d(0x14f)][_0x13231d(0x12f)](_0x5479f4['id']);if(!_0x404aba||_0x404aba[_0x13231d(0x161)]!==_0x5479f4[_0x13231d(0x161)])throw recoveryRequired(_0x4695c7,_0x30c6d0[_0x13231d(0x14a)],{'id':_0x5479f4['id'],'requestedUrlObserved':![],'after':_0x404aba??null});try{verifyUpdatedFact(_0x51f8a3,_0x404aba,_0x5479f4['url']);}catch(_0x155d95){const _0x55ee63=asVerificationError(_0x155d95,'Response\x20was\x20lost\x20and\x20menu\x20'+_0x5479f4['id']+_0x13231d(0x148));throw menuFailure(_0x55ee63,_0x4695c7,{'stage':_0x13231d(0x15a),'succeeded':[{'id':_0x5479f4['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x5479f4['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x404aba,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x13231d(0x13d),'targetId':_0x5479f4['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x30c6d0['appCode'])}});}return updateSuccess(_0x4695c7,_0x36c199,_0x404aba,![],!![]);}function recoveryRequired(_0x21e735,_0x1b6ed4,_0x36f16e){const _0xd763a7=a113_0x4886b0,_0x5c6928=menuError(_0xd763a7(0x12e),_0xd763a7(0x137),'Run\x20'+buildLookupCommand(_0x1b6ed4)+_0xd763a7(0x16a));return menuFailure(_0x5c6928,_0x21e735,{'stage':_0xd763a7(0x15a),'failed':{'id':_0x36f16e['id'],..._0x36f16e['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x36f16e[_0xd763a7(0x149)]},..._0x36f16e[_0xd763a7(0x154)]?{'readbackFailed':!![]}:{}},'after':_0x36f16e[_0xd763a7(0x12b)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0xd763a7(0x13d),'targetId':_0x36f16e['id'],..._0x36f16e[_0xd763a7(0x149)]===undefined?{}:{'requestedUrlObserved':_0x36f16e[_0xd763a7(0x149)]},..._0x36f16e['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x1b6ed4)}});}function buildLookupCommand(_0x586158){const _0x2ced67=a113_0x4886b0,_0x1ff1f9='\x27'+_0x586158[_0x2ced67(0x11c)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x2ced67(0x126)+_0x1ff1f9+'\x20--format\x20compress';}
|
|
1
|
+
const a113_0x49a34f=a113_0x604c;(function(_0x1ec5b1,_0x3a3e84){const _0x8b10db=a113_0x604c,_0x279fe9=_0x1ec5b1();while(!![]){try{const _0x27f828=parseInt(_0x8b10db(0xf9))/0x1+parseInt(_0x8b10db(0xc9))/0x2+-parseInt(_0x8b10db(0xd1))/0x3+-parseInt(_0x8b10db(0xfe))/0x4+-parseInt(_0x8b10db(0xe1))/0x5+-parseInt(_0x8b10db(0xb3))/0x6*(parseInt(_0x8b10db(0xcb))/0x7)+-parseInt(_0x8b10db(0xc6))/0x8*(-parseInt(_0x8b10db(0xdf))/0x9);if(_0x27f828===_0x3a3e84)break;else _0x279fe9['push'](_0x279fe9['shift']());}catch(_0x56bb2c){_0x279fe9['push'](_0x279fe9['shift']());}}}(a113_0x4d87,0x99dd0));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a113_0x49a34f(0xad)}];export const menuExternalLinkUpdate={'service':a113_0x49a34f(0xe4),'command':a113_0x49a34f(0xf0),'description':a113_0x49a34f(0xd0),'risk':a113_0x49a34f(0xbf),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a113_0x49a34f(0xf8),'type':a113_0x49a34f(0xec),'required':!![],'description':a113_0x49a34f(0xac)},{'name':a113_0x49a34f(0xc0),'type':a113_0x49a34f(0xec),'required':!![],'description':a113_0x49a34f(0xbd)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5acb0c){validateInput(_0x5acb0c);},async 'dryRun'(_0x372aa2){const _0xb4f57c=a113_0x49a34f;validateInput(_0x372aa2);const _0x5732ab=await buildPlan(_0x372aa2,!![]);return menuDryRunResult(_0x5732ab['plan'],{'method':'POST','url':_0xb4f57c(0xad),'body':_0x5732ab[_0xb4f57c(0xed)],'description':_0xb4f57c(0xea)+_0x5732ab['body']['id']+'.'});},async 'execute'(_0x420590){const _0x3ca2f0=a113_0x49a34f;validateInput(_0x420590);const _0xdb9366=await buildPlan(_0x420590,![]),{plan:_0xc7a937,body:_0x24522f,before:_0x323fe6,noChanges:_0x34a3ac}=_0xdb9366,_0x38f0e1=_0x24522f['id'];if(_0x34a3ac)return updateSuccess(_0xc7a937,_0xdb9366[_0x3ca2f0(0xd9)],_0x323fe6,!![],![]);await recheckMutationSnapshot(_0x420590,_0xc7a937,_0x3ca2f0(0xcc),_0x38f0e1);try{await updateMenuEntity(_0x420590[_0x3ca2f0(0xb5)],_0x420590[_0x3ca2f0(0xae)],{'id':_0x24522f['id'],'url':_0x24522f[_0x3ca2f0(0xf8)]});}catch(_0xd51c5c){const _0x62927a=mapMenuApiError(_0xd51c5c,_0x3ca2f0(0xcc),_0x38f0e1);if(isMenuResponseLoss(_0xd51c5c)&&_0x62927a[_0x3ca2f0(0xde)]!==_0x3ca2f0(0xc3))return recoverAfterResponseLoss(_0x420590,_0xdb9366);throw menuFailure(_0x62927a,_0xc7a937,{'stage':_0x3ca2f0(0xda),'failed':{'id':_0x38f0e1},'warnings':['The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x3ca2f0(0xbb),'targetId':_0x38f0e1,'lookupCommand':buildLookupCommand(_0x420590['appCode'])}});}let _0x525b9e,_0x3dcfb2;try{_0x525b9e=await fetchMenuSnapshot(_0x420590[_0x3ca2f0(0xb5)],_0x420590['cookie']),_0x3dcfb2=requireMenu(_0x525b9e,_0x38f0e1),verifyUpdatedFact(_0x323fe6,_0x3dcfb2,_0x24522f[_0x3ca2f0(0xf8)]);}catch(_0x1c2e14){const _0x2eec2e=describeMenuErrorCause(_0x1c2e14,_0x3ca2f0(0xbe),_0x38f0e1),_0x21bdf3=asVerificationError(_0x1c2e14,_0x3ca2f0(0xef)+_0x38f0e1+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x21bdf3,_0xc7a937,{'stage':_0x3ca2f0(0xdc),'succeeded':[{'id':_0x38f0e1,'updateRequested':!![]}],'failed':{'id':_0x38f0e1,'requestedStateConfirmed':![],..._0x2eec2e},'warnings':[_0x3ca2f0(0xdb)],'verification':{'status':_0x3ca2f0(0xbb),'targetId':_0x38f0e1,'lookupCommand':buildLookupCommand(_0x420590[_0x3ca2f0(0xb5)])}});}return updateSuccess(_0xc7a937,_0x525b9e,_0x3dcfb2,![],![]);}};function validateInput(_0x3e8d78){const _0xcc530d=a113_0x49a34f;validateExactId(_0x3e8d78),requiredUrl(_0x3e8d78,_0xcc530d(0xf8)),requiredExpectedUrl(_0x3e8d78),parseParentId(_0x3e8d78,_0xcc530d(0xe3),{'required':!![]});}function requiredUrl(_0x1a153f,_0x386f28){const _0x153e95=a113_0x49a34f;if(!hasFlag(_0x1a153f,_0x386f28)||!_0x1a153f[_0x153e95(0xcf)](_0x386f28)[_0x153e95(0xc4)]())throw CliErrors[_0x153e95(0xc1)](_0x386f28);return validateExternalMenuUrl(_0x1a153f[_0x153e95(0xcf)](_0x386f28));}function requiredExpectedUrl(_0x4cdf0d){const _0x2645ea=a113_0x49a34f;if(!hasFlag(_0x4cdf0d,_0x2645ea(0xc0))||!_0x4cdf0d[_0x2645ea(0xcf)](_0x2645ea(0xc0))[_0x2645ea(0xc4)]())throw CliErrors[_0x2645ea(0xc1)](_0x2645ea(0xc0));return _0x4cdf0d[_0x2645ea(0xcf)](_0x2645ea(0xc0))[_0x2645ea(0xc4)]();}function a113_0x604c(_0x427c82,_0x55cb58){_0x427c82=_0x427c82-0xac;const _0x4d87af=a113_0x4d87();let _0x604c45=_0x4d87af[_0x427c82];return _0x604c45;}async function buildPlan(_0x3af5b2,_0x3abe90){const _0x4baa48=a113_0x49a34f,_0x37a560=validateExactId(_0x3af5b2),_0x5626cb=requiredUrl(_0x3af5b2,_0x4baa48(0xf8)),_0x1b3dc9=requiredExpectedUrl(_0x3af5b2),_0x4ff344=parseParentId(_0x3af5b2,_0x4baa48(0xe3),{'required':!![]}),_0x2bb287=await fetchMutationSnapshot(_0x3af5b2,_0x4baa48(0xcc),_0x37a560),_0x918b92=requireMenu(_0x2bb287,_0x37a560);assertExternalLinkLeaf(_0x918b92);if(_0x918b92[_0x4baa48(0xcd)]!==_0x4ff344)throw menuError(_0x4baa48(0xe2),_0x4baa48(0xdd)+_0x37a560+_0x4baa48(0xee)+formatParent(_0x4ff344)+_0x4baa48(0xfc)+formatParent(_0x918b92[_0x4baa48(0xcd)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x299222=_0x918b92[_0x4baa48(0xf8)]===_0x5626cb;if(!_0x299222&&_0x918b92[_0x4baa48(0xf8)]!==_0x1b3dc9)throw menuError(_0x4baa48(0xe2),_0x4baa48(0xdd)+_0x37a560+_0x4baa48(0xe7),_0x4baa48(0xe8));const _0x5e7513={'id':_0x37a560,'appCode':_0x3af5b2[_0x4baa48(0xb5)],'url':_0x5626cb},_0xdf83c0={..._0x918b92,'url':_0x5626cb};return{'body':_0x5e7513,'before':_0x918b92,'noChanges':_0x299222,'snapshot':_0x2bb287,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0x37a560},'before':_0x918b92,'after':_0xdf83c0,'dryRun':_0x3abe90,'backend':[...BACKEND],'plannedActions':_0x299222?[]:[{'stage':_0x4baa48(0xd4),'method':_0x4baa48(0xeb),'path':_0x4baa48(0xad),'body':_0x5e7513}],'snapshotHash':_0x2bb287[_0x4baa48(0xb8)],'warnings':_0x299222?[_0x4baa48(0xd6)]:[]})};}function assertExternalLinkLeaf(_0xc91bf3){const _0x549040=a113_0x49a34f;if(_0xc91bf3[_0x549040(0xb6)]!==_0x549040(0xb1)&&_0xc91bf3[_0x549040(0xb6)]!==_0x549040(0xd8))throw menuError(_0x549040(0xe6),_0x549040(0xdd)+_0xc91bf3['id']+_0x549040(0xf5)+(_0xc91bf3[_0x549040(0xb6)]||_0x549040(0xd2))+'\x22,\x20not\x20iframe\x20or\x20link.',_0x549040(0xf3));if(_0xc91bf3[_0x549040(0xc2)]!==0x0)throw menuError(_0x549040(0xf4),_0x549040(0xdd)+_0xc91bf3['id']+_0x549040(0xb0)+_0xc91bf3['childrenCount']+_0x549040(0xb2),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0xc91bf3[_0x549040(0xd7)][_0x549040(0xc4)]())throw menuError(_0x549040(0xe9),'Menu\x20'+_0xc91bf3['id']+_0x549040(0xb9),_0x549040(0xd3));}function verifyUpdatedFact(_0x19a7e2,_0x1ca2c5,_0x129965){const _0x16e5b7=a113_0x49a34f;assertExternalLinkLeaf(_0x1ca2c5);const _0xa068e9=[['id',_0x1ca2c5['id'],_0x19a7e2['id']],[_0x16e5b7(0xf6),_0x1ca2c5[_0x16e5b7(0xf6)],_0x19a7e2[_0x16e5b7(0xf6)]],[_0x16e5b7(0xb6),_0x1ca2c5[_0x16e5b7(0xb6)],_0x19a7e2['type']],[_0x16e5b7(0xd7),_0x1ca2c5['path'],_0x19a7e2[_0x16e5b7(0xd7)]],[_0x16e5b7(0xcd),_0x1ca2c5[_0x16e5b7(0xcd)],_0x19a7e2['parentId']],[_0x16e5b7(0xfd),_0x1ca2c5[_0x16e5b7(0xfd)],_0x19a7e2[_0x16e5b7(0xfd)]],[_0x16e5b7(0xf2),_0x1ca2c5[_0x16e5b7(0xf2)],_0x19a7e2['visible']]];for(const [_0x41e1d5,_0x53d860,_0x22fab0]of _0xa068e9){assertVerified(_0x53d860===_0x22fab0,'Menu\x20'+_0x19a7e2['id']+'\x20'+_0x41e1d5+_0x16e5b7(0xc7));}assertVerified(_0x1ca2c5[_0x16e5b7(0xf8)]===_0x129965,_0x16e5b7(0xdd)+_0x19a7e2['id']+_0x16e5b7(0xe0));}function updateSuccess(_0x2c3245,_0x1297b4,_0x60970a,_0x5479f9,_0x43a84f){const _0x45b3f1=a113_0x49a34f,_0x3ffce8=_0x60970a['id'],_0x416549=mutationResult({..._0x2c3245,'after':_0x60970a,'dryRun':![],'succeeded':[{'id':_0x3ffce8,'updated':!_0x5479f9,'skipped':_0x5479f9,'recovered':_0x43a84f}],'verification':{'checkedBy':_0x45b3f1(0xd5),'snapshotHash':_0x1297b4[_0x45b3f1(0xb8)],'targetId':_0x3ffce8,'matchesRequestedState':!![],'recovered':_0x43a84f}});return{'ok':!![],'message':_0x43a84f?_0x45b3f1(0xba)+_0x3ffce8+'.':_0x5479f9?_0x45b3f1(0xdd)+_0x3ffce8+'\x20already\x20matches\x20the\x20requested\x20URL.':_0x45b3f1(0xff)+_0x3ffce8+'.','data':{..._0x416549,'recovered':_0x43a84f}};}function a113_0x4d87(){const _0x386e8a=['requestedUrlObserved','url','933219DdWWJL','\x27\x5c\x27\x27','readbackFailed',',\x20current\x20','sort','3760536zWhrOD','Updated\x20external\x20URL\x20for\x20menu\x20','New\x20external\x20HTTPS\x20URL','/smartapi/menu/update','cookie','\x20could\x20not\x20be\x20verified\x20safely','\x20has\x20','iframe','\x20direct\x20child\x20menu(s).','271806MUmtck','replace','appCode','type','Run\x20','hash','\x20has\x20an\x20empty\x20platform\x20path.','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','failed','update-recovery','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','verify\x20external\x20menu\x20URL\x20update','write','expect-url','flagMissing','childrenCount','menu_permission_denied','trim','menu_update_recovery_required','32DjscsJ','\x20changed\x20during\x20the\x20URL-only\x20update.','get','1396302cTOfDr','rabetbase\x20menu\x20list\x20--appcode\x20','161tyMmfI','update\x20external\x20menu\x20URL','parentId','Response\x20was\x20lost\x20and\x20menu\x20','str','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','1528557quKDyu','unknown','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','update-external-link-url','menu\x20list','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','path','link','snapshot','update','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','verification','Menu\x20','code','4982193Dcvfjy','\x20URL\x20update\x20did\x20not\x20take\x20effect.','3619390qVCRFk','menu_state_drift','expect-parent-id','menu','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','menu_external_link_type_required','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','menu_external_link_path_missing','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','POST','string','body','\x20parent\x20changed:\x20expected\x20','Update\x20request\x20for\x20menu\x20','external-link-update','byId','visible','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','menu_external_link_not_leaf','\x20is\x20type\x20\x22','label'];a113_0x4d87=function(){return _0x386e8a;};return a113_0x4d87();}async function recoverAfterResponseLoss(_0x129f15,_0x3fb961){const _0x2e0a73=a113_0x49a34f,{plan:_0x12100b,before:_0x145c6a,body:_0x20f1f9}=_0x3fb961;let _0x3b9d21;try{_0x3b9d21=await fetchMenuSnapshot(_0x129f15[_0x2e0a73(0xb5)],_0x129f15['cookie']);}catch{throw recoveryRequired(_0x12100b,_0x129f15[_0x2e0a73(0xb5)],{'id':_0x20f1f9['id'],'readbackFailed':!![]});}const _0x4be19c=_0x3b9d21[_0x2e0a73(0xf1)][_0x2e0a73(0xc8)](_0x20f1f9['id']);if(!_0x4be19c||_0x4be19c[_0x2e0a73(0xf8)]!==_0x20f1f9['url'])throw recoveryRequired(_0x12100b,_0x129f15[_0x2e0a73(0xb5)],{'id':_0x20f1f9['id'],'requestedUrlObserved':![],'after':_0x4be19c??null});try{verifyUpdatedFact(_0x145c6a,_0x4be19c,_0x20f1f9['url']);}catch(_0x383645){const _0x21f3e8=asVerificationError(_0x383645,_0x2e0a73(0xce)+_0x20f1f9['id']+_0x2e0a73(0xaf));throw menuFailure(_0x21f3e8,_0x12100b,{'stage':'update-recovery','succeeded':[{'id':_0x20f1f9['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x20f1f9['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x4be19c,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':'failed','targetId':_0x20f1f9['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x129f15[_0x2e0a73(0xb5)])}});}return updateSuccess(_0x12100b,_0x3b9d21,_0x4be19c,![],!![]);}function recoveryRequired(_0xe587ea,_0x1c9488,_0x17e461){const _0x586c88=a113_0x49a34f,_0x48422a=menuError(_0x586c88(0xc5),'The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0x586c88(0xb7)+buildLookupCommand(_0x1c9488)+_0x586c88(0xe5));return menuFailure(_0x48422a,_0xe587ea,{'stage':_0x586c88(0xbc),'failed':{'id':_0x17e461['id'],..._0x17e461[_0x586c88(0xf7)]===undefined?{}:{'requestedUrlObserved':_0x17e461[_0x586c88(0xf7)]},..._0x17e461[_0x586c88(0xfb)]?{'readbackFailed':!![]}:{}},'after':_0x17e461['after'],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x586c88(0xbb),'targetId':_0x17e461['id'],..._0x17e461['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x17e461[_0x586c88(0xf7)]},..._0x17e461[_0x586c88(0xfb)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x1c9488)}});}function buildLookupCommand(_0x47f9fc){const _0x42e5ce=a113_0x49a34f,_0x246229='\x27'+_0x47f9fc[_0x42e5ce(0xb4)](/'/g,_0x42e5ce(0xfa))+'\x27';return _0x42e5ce(0xca)+_0x246229+'\x20--format\x20compress';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a114_0x333ff3=a114_0x1f76;(function(_0x455ca7,_0x3cc302){const _0x24846b=a114_0x1f76,_0x2ba77c=_0x455ca7();while(!![]){try{const _0x4f2282=-parseInt(_0x24846b(0x16c))/0x1*(-parseInt(_0x24846b(0x172))/0x2)+-parseInt(_0x24846b(0x156))/0x3*(-parseInt(_0x24846b(0x12a))/0x4)+-parseInt(_0x24846b(0x15d))/0x5*(parseInt(_0x24846b(0x15a))/0x6)+parseInt(_0x24846b(0x14e))/0x7*(-parseInt(_0x24846b(0x170))/0x8)+parseInt(_0x24846b(0x171))/0x9+parseInt(_0x24846b(0x12e))/0xa*(parseInt(_0x24846b(0x162))/0xb)+parseInt(_0x24846b(0x15f))/0xc*(parseInt(_0x24846b(0x15b))/0xd);if(_0x4f2282===_0x3cc302)break;else _0x2ba77c['push'](_0x2ba77c['shift']());}catch(_0x18a029){_0x2ba77c['push'](_0x2ba77c['shift']());}}}(a114_0x16ca,0xc0f48));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';function a114_0x1f76(_0x417d3e,_0xac2ae3){_0x417d3e=_0x417d3e-0x129;const _0x16cac1=a114_0x16ca();let _0x1f76a0=_0x16cac1[_0x417d3e];return _0x1f76a0;}const BACKEND=[{'method':a114_0x333ff3(0x166),'path':a114_0x333ff3(0x153)}];export const menuGroupCreate={'service':a114_0x333ff3(0x165),'command':a114_0x333ff3(0x13b),'description':a114_0x333ff3(0x129),'risk':a114_0x333ff3(0x130),'structuredErrors':!![],'flags':[{'name':a114_0x333ff3(0x152),'type':a114_0x333ff3(0x160),'required':!![],'description':a114_0x333ff3(0x143)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x10b260){validateCreateInput(_0x10b260);},async 'dryRun'(_0x4be8ed){const _0x4d7aaf=a114_0x333ff3,_0x321b22=await buildCreatePlan(_0x4be8ed,!![]),_0xb21849=_0x321b22['after'];return menuDryRunResult(_0x321b22,{'method':'POST','url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0xb21849[_0x4d7aaf(0x16e)]),'label':_0xb21849[_0x4d7aaf(0x152)],'type':_0x4d7aaf(0x140),'visible':!![],'sort':_0xb21849[_0x4d7aaf(0x150)],'extend':{}},'description':_0x4d7aaf(0x13f)+String(_0xb21849[_0x4d7aaf(0x152)])+'\x22\x20with\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x2dedb8){const _0x38e3d5=a114_0x333ff3;validateCreateInput(_0x2dedb8);const _0x1937ab=await buildCreatePlan(_0x2dedb8,![]),_0x24d37e=_0x1937ab[_0x38e3d5(0x136)];await recheckMutationSnapshot(_0x2dedb8,_0x1937ab,_0x38e3d5(0x145));let _0x18679b;try{_0x18679b=await createMenuEntity(_0x2dedb8[_0x38e3d5(0x142)],_0x2dedb8['cookie'],{'parentId':toApiParentId(_0x24d37e[_0x38e3d5(0x16e)]),'label':String(_0x24d37e[_0x38e3d5(0x152)]),'type':_0x38e3d5(0x140),'visible':!![],'sort':Number(_0x24d37e[_0x38e3d5(0x150)]),'extend':{}});}catch(_0x44257a){const _0x4f837f=mapMenuApiError(_0x44257a,_0x38e3d5(0x145));throw menuFailure(_0x4f837f,_0x1937ab,{'stage':_0x38e3d5(0x12c),'failed':{}});}const _0x4bb79a=Number(_0x18679b['id']);if(!Number[_0x38e3d5(0x132)](_0x4bb79a)||_0x4bb79a<=0x0){const _0x4b108e=menuError(_0x38e3d5(0x146),_0x38e3d5(0x134),_0x38e3d5(0x16f));throw menuFailure(_0x4b108e,_0x1937ab,{'stage':_0x38e3d5(0x16d),'failed':{'createdId':_0x18679b['id']??null},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.'],'verification':{'status':'failed','lookupCommand':_0x38e3d5(0x154)}});}const _0x331700=typeof _0x18679b[_0x38e3d5(0x14f)]==='string'?_0x18679b[_0x38e3d5(0x14f)]:'';if(!_0x331700[_0x38e3d5(0x13e)]()){const _0x4afe74=menuError(_0x38e3d5(0x146),_0x38e3d5(0x138)+_0x4bb79a+_0x38e3d5(0x159),'Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x4afe74,_0x1937ab,{'stage':'create-response-validation','succeeded':[{'id':_0x4bb79a,'created':!![]}],'failed':{'id':_0x4bb79a,'generatedPathConfirmed':![]},'warnings':[_0x38e3d5(0x135)+_0x4bb79a+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x24d37e,'id':_0x4bb79a,'path':_0x331700},'verification':{'status':_0x38e3d5(0x163),'lookupCommand':_0x38e3d5(0x154),'targetId':_0x4bb79a}});}let _0x3b063d;try{_0x3b063d=await fetchMenuSnapshot(_0x2dedb8[_0x38e3d5(0x142)],_0x2dedb8['cookie']);}catch(_0xc85238){const _0x5e13bb=describeMenuErrorCause(_0xc85238,_0x38e3d5(0x14a),_0x4bb79a),_0x20bda5=asVerificationError(_0xc85238,_0x38e3d5(0x135)+_0x4bb79a+_0x38e3d5(0x16b));throw menuFailure(_0x20bda5,_0x1937ab,{'stage':_0x38e3d5(0x147),'succeeded':[{'id':_0x4bb79a,'created':!![],'path':_0x331700}],'failed':{'id':_0x4bb79a,'finalFactsConfirmed':![],..._0x5e13bb},'warnings':['Folder\x20'+_0x4bb79a+_0x38e3d5(0x13d)+JSON[_0x38e3d5(0x167)](_0x331700)+_0x38e3d5(0x161)],'after':{..._0x24d37e,'id':_0x4bb79a,'path':_0x331700},'verification':{'status':_0x38e3d5(0x163),'lookupCommand':_0x38e3d5(0x154),'targetId':_0x4bb79a}});}const _0x59e36a=_0x3b063d[_0x38e3d5(0x173)]['get'](_0x4bb79a);let _0x731ef9;try{assertVerified(Boolean(_0x59e36a),_0x38e3d5(0x158)+_0x4bb79a+_0x38e3d5(0x139)),_0x731ef9=_0x59e36a,assertVerified(_0x731ef9[_0x38e3d5(0x151)]==='folder',_0x38e3d5(0x16a)+_0x4bb79a+_0x38e3d5(0x14b)),assertVerified(_0x731ef9['label']===_0x24d37e[_0x38e3d5(0x152)],'Created\x20folder\x20'+_0x4bb79a+_0x38e3d5(0x149)),assertVerified(_0x731ef9[_0x38e3d5(0x14f)]===_0x331700&&Boolean(_0x731ef9[_0x38e3d5(0x14f)][_0x38e3d5(0x13e)]()),_0x38e3d5(0x158)+_0x4bb79a+_0x38e3d5(0x131)),assertVerified(_0x731ef9[_0x38e3d5(0x12b)]===!![],_0x38e3d5(0x158)+_0x4bb79a+'\x20is\x20not\x20visible.'),assertVerified(_0x731ef9[_0x38e3d5(0x137)][_0x38e3d5(0x157)]===0x0,_0x38e3d5(0x158)+_0x4bb79a+'\x20has\x20resources.'),assertVerified(_0x731ef9[_0x38e3d5(0x12f)]===0x0,_0x38e3d5(0x158)+_0x4bb79a+'\x20is\x20not\x20empty.'),assertVerified(_0x731ef9[_0x38e3d5(0x150)]===_0x24d37e[_0x38e3d5(0x150)],_0x38e3d5(0x158)+_0x4bb79a+_0x38e3d5(0x169)),assertVerified(_0x731ef9['parentId']===_0x24d37e[_0x38e3d5(0x16e)],_0x38e3d5(0x158)+_0x4bb79a+'\x20has\x20unexpected\x20parent\x20'+(_0x731ef9['parentId']??_0x38e3d5(0x155))+'.'),assertVerified(_0x731ef9['pageId']==null,_0x38e3d5(0x158)+_0x4bb79a+_0x38e3d5(0x164));const _0x46ce06=_0x731ef9['parentId']==null?undefined:requireFolder(_0x3b063d,_0x731ef9[_0x38e3d5(0x16e)]);assertVerified(_0x731ef9[_0x38e3d5(0x15c)]===(_0x46ce06?_0x46ce06[_0x38e3d5(0x15c)]+0x1:0x0),'Created\x20folder\x20'+_0x4bb79a+_0x38e3d5(0x12d));}catch(_0x578854){const _0x42ba02=describeMenuErrorCause(_0x578854,_0x38e3d5(0x14a),_0x4bb79a),_0x453f13=asVerificationError(_0x578854,_0x38e3d5(0x135)+_0x4bb79a+_0x38e3d5(0x148));throw menuFailure(_0x453f13,_0x1937ab,{'stage':_0x38e3d5(0x147),'succeeded':[{'id':_0x4bb79a,'created':!![],'path':_0x331700}],'failed':{'id':_0x4bb79a,'finalFactsConfirmed':![],..._0x42ba02},'warnings':[_0x38e3d5(0x135)+_0x4bb79a+_0x38e3d5(0x15e)],'after':_0x59e36a??{..._0x24d37e,'id':_0x4bb79a,'path':_0x331700},'verification':{'status':'failed','lookupCommand':_0x38e3d5(0x154),'targetId':_0x4bb79a}});}const _0x5f1562=mutationResult({..._0x1937ab,'after':_0x731ef9,'dryRun':![],'succeeded':[{'id':_0x4bb79a,'type':'folder','path':_0x331700}],'verification':{'checkedBy':_0x38e3d5(0x168),'snapshotHash':_0x3b063d['hash'],'folder':!![],'path':_0x331700,'emptyResources':!![]}});return{'ok':!![],'data':_0x5f1562,'message':_0x38e3d5(0x13a)+_0x4bb79a+'.'};}};function validateCreateInput(_0x2470f3){const _0x342ba3=a114_0x333ff3,_0x5139d1=_0x2470f3[_0x342ba3(0x141)](_0x342ba3(0x152))['trim']();if(!_0x5139d1)throw CliErrors['flagMissing'](_0x342ba3(0x152));parseParentId(_0x2470f3,_0x342ba3(0x133)),validateSort(_0x2470f3);}async function buildCreatePlan(_0x2674c3,_0x24daad){const _0x983393=a114_0x333ff3,_0x4db371=await fetchMutationSnapshot(_0x2674c3,_0x983393(0x145)),_0x286bc2=parseParentId(_0x2674c3,_0x983393(0x133))??null;if(_0x286bc2!=null)requireFolder(_0x4db371,_0x286bc2);const _0x5b8b96=validateSort(_0x2674c3),_0x1760c9=_0x5b8b96??nextSiblingSort(_0x4db371,_0x286bc2,_0x983393(0x140)),_0x28ea8a=_0x2674c3[_0x983393(0x141)](_0x983393(0x152))[_0x983393(0x13e)]();return mutationResult({'operation':_0x983393(0x13b),'selector':{'label':_0x28ea8a,'parentId':_0x286bc2},'before':null,'after':{'id':null,'parentId':_0x286bc2,'label':_0x28ea8a,'path':_0x983393(0x144),'type':_0x983393(0x140),'visible':!![],'sort':_0x1760c9,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x24daad,'backend':[...BACKEND],'plannedActions':[{'stage':_0x983393(0x13c),'method':_0x983393(0x166),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x286bc2),'label':_0x28ea8a,'type':'folder','visible':!![],'sort':_0x1760c9,'extend':{}}}],'snapshotHash':_0x4db371[_0x983393(0x14d)],'warnings':[_0x983393(0x14c)]});}function a114_0x16ca(){const _0x2d984f=['Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','231128bEOFvt','595764IrkQXW','128olrSVs','byId','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','4368164ZoXPHZ','visible','create','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','161640jHsinx','childrenCount','write','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','isSafeInteger','parent-id','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','Folder\x20','after','resources','Menu\x20create\x20response\x20for\x20folder\x20','\x20is\x20missing\x20from\x20menu\x20list.','Created\x20menu\x20folder\x20','group-create','create-folder','\x20may\x20exist\x20online\x20at\x20path\x20','trim','Would\x20create\x20empty\x20folder\x20\x22','folder','str','appCode','Folder\x20label','<platform-generated>','create\x20folder','menu_create_response_invalid','verification','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','\x20has\x20an\x20unexpected\x20label.','verify\x20folder\x20creation','\x20is\x20not\x20type\x20folder.','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','hash','147BtHKHs','path','sort','type','label','/smartapi/menu/create','rabetbase\x20menu\x20list\x20--format\x20json','root','3hfFSAP','length','Created\x20folder\x20','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','6vnpMhK','13XzVFmR','depth','1239855WkVVeF','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','331020rEJWOM','string',';\x20verify\x20it\x20before\x20retrying.','99lqHLLl','failed','\x20unexpectedly\x20owns\x20a\x20page.','menu','POST','stringify','menu\x20list','\x20has\x20an\x20unexpected\x20sort.','Created\x20menu\x20','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','4902gptdTR','create-response-validation','parentId'];a114_0x16ca=function(){return _0x2d984f;};return a114_0x16ca();}
|
|
1
|
+
function a114_0x5a4c(){const _0x17060b=['cookie','length','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','group-create','Folder\x20','35564yIQRsK','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','<platform-generated>','isSafeInteger','Created\x20folder\x20','create-response-validation','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20may\x20exist\x20online\x20at\x20path\x20','\x22\x20with\x20a\x20platform-generated\x20path.','8ZlnAON','\x20is\x20not\x20empty.','appCode','byId','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','menu_create_response_invalid','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','string','4HIxmBx','\x20has\x20resources.','path','parentId','14728470dqwhiK','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','\x20has\x20an\x20unexpected\x20label.','\x20is\x20missing\x20from\x20menu\x20list.','resources','label','rabetbase\x20menu\x20list\x20--format\x20json','25ANRkaO','verification','create\x20folder','6381255FUYdBN','verify\x20folder\x20creation','trim','\x20is\x20not\x20visible.','failed','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','create-folder','depth','\x20is\x20not\x20type\x20folder.','4970778zZkfWd','POST','/smartapi/menu/create','11SbwVNL','flagMissing','3397368ZjyEMf','str','Created\x20menu\x20','menu\x20list','3546504pyVvLQ','stringify','sort','folder','parent-id','Created\x20menu\x20folder\x20','childrenCount','root','after','type','7IQFLbU','Folder\x20label','9297513EIwYkz','menu'];a114_0x5a4c=function(){return _0x17060b;};return a114_0x5a4c();}const a114_0x47c9f1=a114_0x3d2b;(function(_0x531842,_0x4420e1){const _0x5642b3=a114_0x3d2b,_0x31e5dc=_0x531842();while(!![]){try{const _0x252c25=-parseInt(_0x5642b3(0xbc))/0x1*(parseInt(_0x5642b3(0x9f))/0x2)+parseInt(_0x5642b3(0xd1))/0x3+-parseInt(_0x5642b3(0xb1))/0x4*(parseInt(_0x5642b3(0xbf))/0x5)+-parseInt(_0x5642b3(0xc8))/0x6*(parseInt(_0x5642b3(0x96))/0x7)+-parseInt(_0x5642b3(0xa8))/0x8*(-parseInt(_0x5642b3(0x98))/0x9)+parseInt(_0x5642b3(0xb5))/0xa*(parseInt(_0x5642b3(0xcb))/0xb)+-parseInt(_0x5642b3(0xcd))/0xc;if(_0x252c25===_0x4420e1)break;else _0x31e5dc['push'](_0x31e5dc['shift']());}catch(_0x1f43a3){_0x31e5dc['push'](_0x31e5dc['shift']());}}}(a114_0x5a4c,0xd0e8e));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';function a114_0x3d2b(_0x35aac3,_0x5ed2f4){_0x35aac3=_0x35aac3-0x94;const _0x5a4c4a=a114_0x5a4c();let _0x3d2b1b=_0x5a4c4a[_0x35aac3];return _0x3d2b1b;}const BACKEND=[{'method':a114_0x47c9f1(0xc9),'path':a114_0x47c9f1(0xca)}];export const menuGroupCreate={'service':a114_0x47c9f1(0x99),'command':'group-create','description':a114_0x47c9f1(0xac),'risk':'write','structuredErrors':!![],'flags':[{'name':a114_0x47c9f1(0xba),'type':a114_0x47c9f1(0xb0),'required':!![],'description':a114_0x47c9f1(0x97)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x228683){validateCreateInput(_0x228683);},async 'dryRun'(_0x538d44){const _0x280d41=a114_0x47c9f1,_0x478f67=await buildCreatePlan(_0x538d44,!![]),_0x41fc50=_0x478f67[_0x280d41(0x94)];return menuDryRunResult(_0x478f67,{'method':_0x280d41(0xc9),'url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x41fc50[_0x280d41(0xb4)]),'label':_0x41fc50[_0x280d41(0xba)],'type':'folder','visible':!![],'sort':_0x41fc50[_0x280d41(0xd3)],'extend':{}},'description':'Would\x20create\x20empty\x20folder\x20\x22'+String(_0x41fc50[_0x280d41(0xba)])+_0x280d41(0xa7)});},async 'execute'(_0x369b99){const _0x2ac687=a114_0x47c9f1;validateCreateInput(_0x369b99);const _0x1d3e17=await buildCreatePlan(_0x369b99,![]),_0x226939=_0x1d3e17[_0x2ac687(0x94)];await recheckMutationSnapshot(_0x369b99,_0x1d3e17,_0x2ac687(0xbe));let _0x13e673;try{_0x13e673=await createMenuEntity(_0x369b99[_0x2ac687(0xaa)],_0x369b99[_0x2ac687(0x9a)],{'parentId':toApiParentId(_0x226939[_0x2ac687(0xb4)]),'label':String(_0x226939[_0x2ac687(0xba)]),'type':_0x2ac687(0xd4),'visible':!![],'sort':Number(_0x226939[_0x2ac687(0xd3)]),'extend':{}});}catch(_0x39fa48){const _0x285073=mapMenuApiError(_0x39fa48,_0x2ac687(0xbe));throw menuFailure(_0x285073,_0x1d3e17,{'stage':'create','failed':{}});}const _0xc9147f=Number(_0x13e673['id']);if(!Number[_0x2ac687(0xa2)](_0xc9147f)||_0xc9147f<=0x0){const _0x2f6509=menuError(_0x2ac687(0xae),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.',_0x2ac687(0xa5));throw menuFailure(_0x2f6509,_0x1d3e17,{'stage':'create-response-validation','failed':{'createdId':_0x13e673['id']??null},'warnings':[_0x2ac687(0xb6)],'verification':{'status':_0x2ac687(0xc3),'lookupCommand':_0x2ac687(0xbb)}});}const _0x639f37=typeof _0x13e673['path']===_0x2ac687(0xb0)?_0x13e673[_0x2ac687(0xb3)]:'';if(!_0x639f37[_0x2ac687(0xc1)]()){const _0x394416=menuError(_0x2ac687(0xae),'Menu\x20create\x20response\x20for\x20folder\x20'+_0xc9147f+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x394416,_0x1d3e17,{'stage':_0x2ac687(0xa4),'succeeded':[{'id':_0xc9147f,'created':!![]}],'failed':{'id':_0xc9147f,'generatedPathConfirmed':![]},'warnings':[_0x2ac687(0x9e)+_0xc9147f+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x226939,'id':_0xc9147f,'path':_0x639f37},'verification':{'status':_0x2ac687(0xc3),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0xc9147f}});}let _0x1ab926;try{_0x1ab926=await fetchMenuSnapshot(_0x369b99['appCode'],_0x369b99[_0x2ac687(0x9a)]);}catch(_0x5a017a){const _0x34c68d=describeMenuErrorCause(_0x5a017a,_0x2ac687(0xc0),_0xc9147f),_0x2b7eb5=asVerificationError(_0x5a017a,_0x2ac687(0x9e)+_0xc9147f+_0x2ac687(0xa0));throw menuFailure(_0x2b7eb5,_0x1d3e17,{'stage':_0x2ac687(0xbd),'succeeded':[{'id':_0xc9147f,'created':!![],'path':_0x639f37}],'failed':{'id':_0xc9147f,'finalFactsConfirmed':![],..._0x34c68d},'warnings':[_0x2ac687(0x9e)+_0xc9147f+_0x2ac687(0xa6)+JSON[_0x2ac687(0xd2)](_0x639f37)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x226939,'id':_0xc9147f,'path':_0x639f37},'verification':{'status':_0x2ac687(0xc3),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0xc9147f}});}const _0x55fb44=_0x1ab926[_0x2ac687(0xab)]['get'](_0xc9147f);let _0x33b3c7;try{assertVerified(Boolean(_0x55fb44),_0x2ac687(0xa3)+_0xc9147f+_0x2ac687(0xb8)),_0x33b3c7=_0x55fb44,assertVerified(_0x33b3c7[_0x2ac687(0x95)]===_0x2ac687(0xd4),_0x2ac687(0xcf)+_0xc9147f+_0x2ac687(0xc7)),assertVerified(_0x33b3c7[_0x2ac687(0xba)]===_0x226939[_0x2ac687(0xba)],_0x2ac687(0xa3)+_0xc9147f+_0x2ac687(0xb7)),assertVerified(_0x33b3c7[_0x2ac687(0xb3)]===_0x639f37&&Boolean(_0x33b3c7[_0x2ac687(0xb3)][_0x2ac687(0xc1)]()),_0x2ac687(0xa3)+_0xc9147f+'\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.'),assertVerified(_0x33b3c7['visible']===!![],_0x2ac687(0xa3)+_0xc9147f+_0x2ac687(0xc2)),assertVerified(_0x33b3c7[_0x2ac687(0xb9)][_0x2ac687(0x9b)]===0x0,_0x2ac687(0xa3)+_0xc9147f+_0x2ac687(0xb2)),assertVerified(_0x33b3c7[_0x2ac687(0xd7)]===0x0,_0x2ac687(0xa3)+_0xc9147f+_0x2ac687(0xa9)),assertVerified(_0x33b3c7[_0x2ac687(0xd3)]===_0x226939[_0x2ac687(0xd3)],'Created\x20folder\x20'+_0xc9147f+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0x33b3c7[_0x2ac687(0xb4)]===_0x226939[_0x2ac687(0xb4)],_0x2ac687(0xa3)+_0xc9147f+'\x20has\x20unexpected\x20parent\x20'+(_0x33b3c7['parentId']??_0x2ac687(0xd8))+'.'),assertVerified(_0x33b3c7['pageId']==null,_0x2ac687(0xa3)+_0xc9147f+'\x20unexpectedly\x20owns\x20a\x20page.');const _0x4087b9=_0x33b3c7[_0x2ac687(0xb4)]==null?undefined:requireFolder(_0x1ab926,_0x33b3c7['parentId']);assertVerified(_0x33b3c7['depth']===(_0x4087b9?_0x4087b9[_0x2ac687(0xc6)]+0x1:0x0),'Created\x20folder\x20'+_0xc9147f+_0x2ac687(0xc4));}catch(_0x22719f){const _0x4bddb9=describeMenuErrorCause(_0x22719f,_0x2ac687(0xc0),_0xc9147f),_0x3f4e52=asVerificationError(_0x22719f,'Folder\x20'+_0xc9147f+_0x2ac687(0x9c));throw menuFailure(_0x3f4e52,_0x1d3e17,{'stage':_0x2ac687(0xbd),'succeeded':[{'id':_0xc9147f,'created':!![],'path':_0x639f37}],'failed':{'id':_0xc9147f,'finalFactsConfirmed':![],..._0x4bddb9},'warnings':[_0x2ac687(0x9e)+_0xc9147f+_0x2ac687(0xad)],'after':_0x55fb44??{..._0x226939,'id':_0xc9147f,'path':_0x639f37},'verification':{'status':_0x2ac687(0xc3),'lookupCommand':_0x2ac687(0xbb),'targetId':_0xc9147f}});}const _0x2b90f5=mutationResult({..._0x1d3e17,'after':_0x33b3c7,'dryRun':![],'succeeded':[{'id':_0xc9147f,'type':'folder','path':_0x639f37}],'verification':{'checkedBy':_0x2ac687(0xd0),'snapshotHash':_0x1ab926['hash'],'folder':!![],'path':_0x639f37,'emptyResources':!![]}});return{'ok':!![],'data':_0x2b90f5,'message':_0x2ac687(0xd6)+_0xc9147f+'.'};}};function validateCreateInput(_0x2fcc6f){const _0x5321fa=a114_0x47c9f1,_0x11568b=_0x2fcc6f[_0x5321fa(0xce)](_0x5321fa(0xba))[_0x5321fa(0xc1)]();if(!_0x11568b)throw CliErrors[_0x5321fa(0xcc)](_0x5321fa(0xba));parseParentId(_0x2fcc6f,_0x5321fa(0xd5)),validateSort(_0x2fcc6f);}async function buildCreatePlan(_0x221d21,_0x332c51){const _0x57bee5=a114_0x47c9f1,_0x4bfa42=await fetchMutationSnapshot(_0x221d21,'create\x20folder'),_0x298fcd=parseParentId(_0x221d21,_0x57bee5(0xd5))??null;if(_0x298fcd!=null)requireFolder(_0x4bfa42,_0x298fcd);const _0x458218=validateSort(_0x221d21),_0x5affa7=_0x458218??nextSiblingSort(_0x4bfa42,_0x298fcd,_0x57bee5(0xd4)),_0x2cd2d2=_0x221d21[_0x57bee5(0xce)](_0x57bee5(0xba))[_0x57bee5(0xc1)]();return mutationResult({'operation':_0x57bee5(0x9d),'selector':{'label':_0x2cd2d2,'parentId':_0x298fcd},'before':null,'after':{'id':null,'parentId':_0x298fcd,'label':_0x2cd2d2,'path':_0x57bee5(0xa1),'type':_0x57bee5(0xd4),'visible':!![],'sort':_0x5affa7,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x332c51,'backend':[...BACKEND],'plannedActions':[{'stage':_0x57bee5(0xc5),'method':_0x57bee5(0xc9),'path':_0x57bee5(0xca),'body':{'parentId':toApiParentId(_0x298fcd),'label':_0x2cd2d2,'type':'folder','visible':!![],'sort':_0x5affa7,'extend':{}}}],'snapshotHash':_0x4bfa42['hash'],'warnings':[_0x57bee5(0xaf)]});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a115_0x3c3e(_0xdb0e1,_0x46da5a){_0xdb0e1=_0xdb0e1-0x110;const _0x577c23=a115_0x577c();let _0x3c3ead=_0x577c23[_0xdb0e1];return _0x3c3ead;}const a115_0x343f7a=a115_0x3c3e;(function(_0x312438,_0x451f80){const _0x48ee30=a115_0x3c3e,_0x39de92=_0x312438();while(!![]){try{const _0x3d1870=parseInt(_0x48ee30(0x123))/0x1+parseInt(_0x48ee30(0x113))/0x2+-parseInt(_0x48ee30(0x115))/0x3*(-parseInt(_0x48ee30(0x139))/0x4)+parseInt(_0x48ee30(0x116))/0x5*(parseInt(_0x48ee30(0x142))/0x6)+parseInt(_0x48ee30(0x134))/0x7*(parseInt(_0x48ee30(0x12b))/0x8)+-parseInt(_0x48ee30(0x11f))/0x9+-parseInt(_0x48ee30(0x119))/0xa*(parseInt(_0x48ee30(0x13a))/0xb);if(_0x3d1870===_0x451f80)break;else _0x39de92['push'](_0x39de92['shift']());}catch(_0x2f11bc){_0x39de92['push'](_0x39de92['shift']());}}}(a115_0x577c,0xc4f4c));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a115_0x577c(){const _0x2b5aa3=['verify\x20folder\x20update','cookie','3724052MYRpqz','2123SLpMUv','type','parent-id','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','unknown','failed','selector','str','12AZDwPM','New\x20folder\x20label','rabetbase\x20menu\x20list\x20--format\x20json','\x20label\x20update\x20did\x20not\x20take\x20effect.','2848934sBFlyw','\x22,\x20not\x20folder.','3DMuuDn','180620obQNwS','validation','menu_not_folder','153370bfwrpR','string','POST','appCode','menu\x20list','update','2732346uGXaEt','Update\x20request\x20for\x20folder\x20','update\x20folder','sort','429617WJJSse','hash','write','\x20already\x20matches\x20the\x20requested\x20state.','\x20sort\x20update\x20did\x20not\x20take\x20effect.','/smartapi/menu/update','Menu\x20','label','8RYarXR','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','trim','\x20is\x20type\x20\x22','--label\x20cannot\x20be\x20empty.','folder','parentId','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','8491154bfsdXV','group-update','Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu'];a115_0x577c=function(){return _0x2b5aa3;};return a115_0x577c();}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':a115_0x343f7a(0x11b),'path':a115_0x343f7a(0x128)}];export const menuGroupUpdate={'service':'menu','command':a115_0x343f7a(0x135),'description':a115_0x343f7a(0x136),'risk':a115_0x343f7a(0x125),'structuredErrors':!![],'rejectedFlags':[{'name':a115_0x343f7a(0x13c),'message':a115_0x343f7a(0x133),'hint':a115_0x343f7a(0x13d)}],'flags':[MENU_ID_FLAG,{'name':'label','type':a115_0x343f7a(0x11a),'description':a115_0x343f7a(0x110)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1a58b6){validateUpdateInput(_0x1a58b6);},async 'dryRun'(_0x52b41c){const _0x557516=a115_0x343f7a;validateUpdateInput(_0x52b41c);const {plan:_0x569c0c,patch:_0x2d28cc}=await buildUpdatePlan(_0x52b41c,!![]);return menuDryRunResult(_0x569c0c,{'method':_0x557516(0x11b),'url':_0x557516(0x128),'body':_0x2d28cc,'description':'Would\x20update\x20folder\x20'+_0x569c0c['selector']['id']+'.'});},async 'execute'(_0x332fca){const _0x73dde7=a115_0x343f7a;validateUpdateInput(_0x332fca);const {plan:_0x4ee3c7,patch:_0x4f854f,noChanges:_0x2a3725}=await buildUpdatePlan(_0x332fca,![]),_0x57bfcf=Number(_0x4ee3c7[_0x73dde7(0x140)]['id']),_0x2cc671=await recheckMutationSnapshot(_0x332fca,_0x4ee3c7,_0x73dde7(0x121),_0x57bfcf);if(!_0x2a3725)try{await updateMenuEntity(_0x332fca[_0x73dde7(0x11c)],_0x332fca[_0x73dde7(0x138)],_0x4f854f);}catch(_0x5a34fb){const _0x30326a=mapMenuApiError(_0x5a34fb,'update\x20folder',_0x57bfcf);throw menuFailure(_0x30326a,_0x4ee3c7,{'stage':_0x73dde7(0x11e),'failed':{'id':_0x57bfcf}});}let _0x2c3389=_0x2cc671,_0x2a9917;try{!_0x2a3725&&(_0x2c3389=await fetchMenuSnapshot(_0x332fca['appCode'],_0x332fca['cookie'])),_0x2a9917=requireMenu(_0x2c3389,_0x57bfcf),verifyPatch(_0x2a9917,_0x4f854f),_0x2a9917[_0x73dde7(0x131)]!=null&&requireFolder(_0x2c3389,_0x2a9917[_0x73dde7(0x131)]);}catch(_0x4ebc40){const _0x32ed7=describeMenuErrorCause(_0x4ebc40,_0x73dde7(0x137),_0x57bfcf),_0x4861bd=asVerificationError(_0x4ebc40,_0x73dde7(0x120)+_0x57bfcf+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x4861bd,_0x4ee3c7,{'stage':'verification','succeeded':[{'id':_0x57bfcf,'updateRequested':!_0x2a3725,'skipped':_0x2a3725}],'failed':{'id':_0x57bfcf,'requestedStateConfirmed':![],..._0x32ed7},'warnings':[_0x73dde7(0x132)],'verification':{'status':_0x73dde7(0x13f),'lookupCommand':_0x73dde7(0x111),'targetId':_0x57bfcf}});}const _0x4ce534=mutationResult({..._0x4ee3c7,'after':_0x2a9917,'dryRun':![],'succeeded':[{'id':_0x57bfcf,'updated':!_0x2a3725,'skipped':_0x2a3725}],'verification':{'checkedBy':_0x73dde7(0x11d),'snapshotHash':_0x2c3389[_0x73dde7(0x124)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x4ce534,'message':_0x2a3725?'Folder\x20'+_0x57bfcf+_0x73dde7(0x126):'Updated\x20folder\x20'+_0x57bfcf+'.'};}};function validateUpdateInput(_0x508caa){const _0x548419=a115_0x343f7a;validateExactId(_0x508caa);if(hasFlag(_0x508caa,_0x548419(0x13c)))throw CliErrors[_0x548419(0x117)](_0x548419(0x133),'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.');if(!hasFlag(_0x508caa,_0x548419(0x12a))&&!hasFlag(_0x508caa,_0x548419(0x122)))throw CliErrors[_0x548419(0x117)](_0x548419(0x12c));if(hasFlag(_0x508caa,_0x548419(0x12a))&&!_0x508caa[_0x548419(0x141)](_0x548419(0x12a))[_0x548419(0x12d)]())throw CliErrors[_0x548419(0x117)](_0x548419(0x12f));validateSort(_0x508caa);}async function buildUpdatePlan(_0x57b531,_0x2c9186){const _0x3dc8e4=a115_0x343f7a,_0x3adba1=validateExactId(_0x57b531),_0x16fe57=await fetchMutationSnapshot(_0x57b531,_0x3dc8e4(0x121),_0x3adba1),_0x497e98=requireMenu(_0x16fe57,_0x3adba1);if(_0x497e98[_0x3dc8e4(0x13b)]!==_0x3dc8e4(0x130))throw menuError(_0x3dc8e4(0x118),_0x3dc8e4(0x129)+_0x3adba1+_0x3dc8e4(0x12e)+(_0x497e98[_0x3dc8e4(0x13b)]||_0x3dc8e4(0x13e))+_0x3dc8e4(0x114),'Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.');assertExpectedState(_0x57b531,_0x497e98);const _0x25835f={'id':_0x3adba1},_0x3cd94e={..._0x497e98};if(hasFlag(_0x57b531,'label')){const _0xe3a35=_0x57b531[_0x3dc8e4(0x141)](_0x3dc8e4(0x12a))[_0x3dc8e4(0x12d)]();_0x25835f[_0x3dc8e4(0x12a)]=_0xe3a35,_0x3cd94e[_0x3dc8e4(0x12a)]=_0xe3a35;}if(hasFlag(_0x57b531,_0x3dc8e4(0x122))){const _0x3391ed=validateSort(_0x57b531);_0x25835f['sort']=_0x3391ed,_0x3cd94e[_0x3dc8e4(0x122)]=_0x3391ed;}const _0x1be12b=sameRequestedState(_0x497e98,_0x3cd94e),_0x27cd32=_0x1be12b?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0x25835f,'noChanges':_0x1be12b,'plan':mutationResult({'operation':'group-update','selector':{'id':_0x3adba1},'before':_0x497e98,'after':_0x3cd94e,'dryRun':_0x2c9186,'backend':[...BACKEND],'snapshotHash':_0x16fe57[_0x3dc8e4(0x124)],'warnings':_0x27cd32})};}function sameRequestedState(_0x219948,_0x36a22b){const _0x5243b4=a115_0x343f7a;return _0x219948[_0x5243b4(0x12a)]===_0x36a22b[_0x5243b4(0x12a)]&&_0x219948[_0x5243b4(0x122)]===_0x36a22b[_0x5243b4(0x122)];}function verifyPatch(_0x1b0b08,_0x44cce7){const _0x140def=a115_0x343f7a;assertVerified(_0x1b0b08[_0x140def(0x13b)]===_0x140def(0x130),_0x140def(0x129)+_0x1b0b08['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x44cce7[_0x140def(0x12a)]!==undefined&&assertVerified(_0x1b0b08[_0x140def(0x12a)]===_0x44cce7['label'],'Folder\x20'+_0x1b0b08['id']+_0x140def(0x112)),_0x44cce7[_0x140def(0x122)]!==undefined&&assertVerified(_0x1b0b08['sort']===_0x44cce7[_0x140def(0x122)],'Folder\x20'+_0x1b0b08['id']+_0x140def(0x127));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4b7683,_0x51c6e8){const _0x42b132=a116_0x5ec9,_0xf407fa=_0x4b7683();while(!![]){try{const _0x382ad3=parseInt(_0x42b132(0x1f4))/0x1*(parseInt(_0x42b132(0x1f0))/0x2)+parseInt(_0x42b132(0x1ef))/0x3+parseInt(_0x42b132(0x1f9))/0x4*(-parseInt(_0x42b132(0x1f7))/0x5)+parseInt(_0x42b132(0x1f2))/0x6*(-parseInt(_0x42b132(0x1f3))/0x7)+parseInt(_0x42b132(0x1f5))/0x8+parseInt(_0x42b132(0x1f1))/0x9*(-parseInt(_0x42b132(0x1fa))/0xa)+parseInt(_0x42b132(0x1f6))/0xb*(-parseInt(_0x42b132(0x1f8))/0xc);if(_0x382ad3===_0x51c6e8)break;else _0xf407fa['push'](_0xf407fa['shift']());}catch(_0x1b532a){_0xf407fa['push'](_0xf407fa['shift']());}}}(a116_0x4406,0xd41f0));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';function a116_0x5ec9(_0xbda05b,_0x275047){_0xbda05b=_0xbda05b-0x1ef;const _0x44064c=a116_0x4406();let _0x5ec9d3=_0x44064c[_0xbda05b];return _0x5ec9d3;}import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';function a116_0x4406(){const _0xb22ab8=['68EVzhUT','585WaETFU','12gIvinM','4509519brvJvm','36973wCWMYc','12447104eIMBOz','967945YcrKtz','740935NKMfjk','24nXoeGV','12iNliDC','182060dCELhp','3444759raAAia'];a116_0x4406=function(){return _0xb22ab8;};return a116_0x4406();}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
|
-
const
|
|
1
|
+
function a117_0x2437(_0x279c66,_0xe18b3){_0x279c66=_0x279c66-0xca;const _0x29e32c=a117_0x29e3();let _0x243758=_0x29e32c[_0x279c66];return _0x243758;}const a117_0x1536fc=a117_0x2437;(function(_0xfd07e,_0x41eecc){const _0x790ca4=a117_0x2437,_0x1f1571=_0xfd07e();while(!![]){try{const _0x2a8938=-parseInt(_0x790ca4(0xdc))/0x1+parseInt(_0x790ca4(0xd9))/0x2+parseInt(_0x790ca4(0xd5))/0x3+-parseInt(_0x790ca4(0xce))/0x4+parseInt(_0x790ca4(0xde))/0x5*(-parseInt(_0x790ca4(0xd0))/0x6)+parseInt(_0x790ca4(0xdb))/0x7+-parseInt(_0x790ca4(0xd4))/0x8*(parseInt(_0x790ca4(0xcc))/0x9);if(_0x2a8938===_0x41eecc)break;else _0x1f1571['push'](_0x1f1571['shift']());}catch(_0x2120fb){_0x1f1571['push'](_0x1f1571['shift']());}}}(a117_0x29e3,0x1f138));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';function a117_0x29e3(){const _0x19b261=['bool','read','hash','380166JlCVMf','menus','1192170IhpvKt','95411iNLnKY','map','5hKLWcQ','appCode','verbose','21249qSsncv','menu','291432Zyksrg','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','1163418MVelNI','list','total','Found\x20','344uYmtYW','691770wOOgYI'];a117_0x29e3=function(){return _0x19b261;};return a117_0x29e3();}export const menuList={'service':a117_0x1536fc(0xcd),'command':a117_0x1536fc(0xd1),'description':a117_0x1536fc(0xcf),'risk':a117_0x1536fc(0xd7),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a117_0x1536fc(0xcb),'type':'boolean','description':'Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing'}],async 'execute'(_0x20aa54){const _0x51ef8a=a117_0x1536fc,_0x18698d=_0x20aa54[_0x51ef8a(0xd6)](_0x51ef8a(0xcb)),_0x27b907=await fetchMenuSnapshot(_0x20aa54[_0x51ef8a(0xca)],_0x20aa54['cookie'],{'verbose':_0x18698d});return{'ok':!![],'data':{'total':_0x27b907[_0x51ef8a(0xd2)],'snapshotHash':_0x27b907[_0x51ef8a(0xd8)],'menus':_0x27b907[_0x51ef8a(0xda)][_0x51ef8a(0xdd)](toMenuListItem)},'message':_0x27b907[_0x51ef8a(0xd2)]===0x0?'No\x20menus\x20found.':_0x51ef8a(0xd3)+_0x27b907['total']+'\x20menu(s)'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a118_0x178f2f=a118_0x1a6d;(function(_0x253516,_0x156284){const _0xd7dc1b=a118_0x1a6d,_0x2366a5=_0x253516();while(!![]){try{const _0x353ff1=parseInt(_0xd7dc1b(0x95))/0x1*(parseInt(_0xd7dc1b(0x8d))/0x2)+parseInt(_0xd7dc1b(0xab))/0x3+parseInt(_0xd7dc1b(0x7f))/0x4*(-parseInt(_0xd7dc1b(0x9c))/0x5)+parseInt(_0xd7dc1b(0x86))/0x6+parseInt(_0xd7dc1b(0x9e))/0x7*(-parseInt(_0xd7dc1b(0xa9))/0x8)+parseInt(_0xd7dc1b(0x96))/0x9*(-parseInt(_0xd7dc1b(0xa3))/0xa)+-parseInt(_0xd7dc1b(0x93))/0xb;if(_0x353ff1===_0x156284)break;else _0x2366a5['push'](_0x2366a5['shift']());}catch(_0x38ce3a){_0x2366a5['push'](_0x2366a5['shift']());}}}(a118_0x315f,0x63da6));function a118_0x1a6d(_0x1a3f2c,_0x1b8efd){_0x1a3f2c=_0x1a3f2c-0x7c;const _0x315f01=a118_0x315f();let _0x1a6d84=_0x315f01[_0x1a3f2c];return _0x1a6d84;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':a118_0x178f2f(0x87),'path':'/smartapi/menu/update'}];function a118_0x315f(){const _0x3065d3=['1248386aZjMni','appCode','menu\x20list','hash','failed','\x20is\x20now\x20type\x20folder.','307406RsdkwD','menu','1Pufjmq','9tzZMfc','after','menu_state_drift','type','folder','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','350gvEFVi','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','1738142fYIQix','\x20parent\x20changed:\x20expected\x20','/smartapi/menu/update','move-menu','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','3310870GldHAG','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','sort','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','move\x20menu','childrenCount','8xnXzLY','rabetbase\x20menu\x20list\x20--format\x20compress','2038545jPPvMw','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','cookie','Menu\x20','40756JMWzUd','parentId','expect-parent-id','verification','write','menu_move_source_not_leaf','Moved\x20menu\x20','2555154BiQpni','POST','parent-id','Would\x20move\x20menu\x20','\x20is\x20no\x20longer\x20a\x20leaf.','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','move'];a118_0x315f=function(){return _0x3065d3;};return a118_0x315f();}export const menuMove={'service':a118_0x178f2f(0x94),'command':'move','description':'Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','risk':a118_0x178f2f(0x83),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2e5b45){validateMoveInput(_0x2e5b45);},async 'dryRun'(_0x2811cc){const _0x452ea6=a118_0x178f2f,{plan:_0x40f7d0,patch:_0x311bc9}=await buildMovePlan(_0x2811cc,!![]);return menuDryRunResult(_0x40f7d0,{'method':_0x452ea6(0x87),'url':_0x452ea6(0xa0),'body':{..._0x311bc9,'appCode':_0x2811cc[_0x452ea6(0x8e)]},'description':_0x452ea6(0x89)+_0x311bc9['id']+'.'});},async 'execute'(_0x433fe1){const _0xadb72a=a118_0x178f2f;validateMoveInput(_0x433fe1);const {plan:_0x16bdb2,patch:_0x33b12d,noChanges:_0x87b5eb,snapshot:_0x223d19}=await buildMovePlan(_0x433fe1,![]),_0x4465f7=_0x33b12d['id'];if(!_0x87b5eb)try{await updateMenuEntity(_0x433fe1[_0xadb72a(0x8e)],_0x433fe1[_0xadb72a(0x7d)],_0x33b12d);}catch(_0x3e32e6){const _0x2cd7c1=mapMenuApiError(_0x3e32e6,_0xadb72a(0x8c),_0x4465f7);throw menuFailure(_0x2cd7c1,_0x16bdb2,{'stage':'update','failed':{'id':_0x4465f7},'warnings':[_0xadb72a(0x8b)],'verification':{'status':'failed','targetId':_0x4465f7,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}let _0xac6858,_0xf071e5;try{_0xac6858=_0x87b5eb?_0x223d19:await fetchMenuSnapshot(_0x433fe1[_0xadb72a(0x8e)],_0x433fe1[_0xadb72a(0x7d)]),_0xf071e5=requireMenu(_0xac6858,_0x4465f7),verifyMove(_0xf071e5,_0x16bdb2[_0xadb72a(0x97)]),_0xf071e5['parentId']!==null&&requireFolder(_0xac6858,_0xf071e5[_0xadb72a(0x80)]);}catch(_0x2aba5d){const _0x1622de=describeMenuErrorCause(_0x2aba5d,'verify\x20menu\x20move',_0x4465f7),_0x4d693e=asVerificationError(_0x2aba5d,'Move\x20request\x20for\x20menu\x20'+_0x4465f7+_0xadb72a(0x9b));throw menuFailure(_0x4d693e,_0x16bdb2,{'stage':_0xadb72a(0x82),'succeeded':[{'id':_0x4465f7,'updateRequested':!_0x87b5eb,'skipped':_0x87b5eb}],'failed':{'id':_0x4465f7,'requestedStateConfirmed':![],..._0x1622de},'warnings':['The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0xadb72a(0x91),'targetId':_0x4465f7,'lookupCommand':_0xadb72a(0xaa)}});}const _0xaf4a54=mutationResult({..._0x16bdb2,'after':_0xf071e5,'dryRun':![],'succeeded':[{'id':_0x4465f7,'updated':!_0x87b5eb,'skipped':_0x87b5eb}],'verification':{'checkedBy':_0xadb72a(0x8f),'snapshotHash':_0xac6858[_0xadb72a(0x90)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0xaf4a54,'message':_0x87b5eb?'Menu\x20'+_0x4465f7+'\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.':_0xadb72a(0x85)+_0x4465f7+'.'};}};function validateMoveInput(_0x32794c){const _0xbe9909=a118_0x178f2f;validateExactId(_0x32794c),parseParentId(_0x32794c,_0xbe9909(0x88),{'required':!![]}),parseParentId(_0x32794c,_0xbe9909(0x81),{'required':!![]}),validateSort(_0x32794c);}async function buildMovePlan(_0x55970a,_0x1cdf29){const _0xbe52b8=a118_0x178f2f,_0x29eac3=validateExactId(_0x55970a),_0x10e701=parseParentId(_0x55970a,_0xbe52b8(0x88),{'required':!![]}),_0x1969b4=parseParentId(_0x55970a,'expect-parent-id',{'required':!![]}),_0x223f1e=validateSort(_0x55970a),_0x301f16=await fetchMutationSnapshot(_0x55970a,_0xbe52b8(0xa7),_0x29eac3),_0x50ab16=requireMenu(_0x301f16,_0x29eac3);if(_0x50ab16[_0xbe52b8(0x99)]===_0xbe52b8(0x9a)||_0x50ab16[_0xbe52b8(0xa8)]!==0x0)throw menuError(_0xbe52b8(0x84),_0xbe52b8(0x7e)+_0x29eac3+_0xbe52b8(0xa2),_0xbe52b8(0xa4));if(_0x50ab16[_0xbe52b8(0x80)]!==_0x1969b4)throw menuError(_0xbe52b8(0x98),'Menu\x20'+_0x29eac3+_0xbe52b8(0x9f)+formatParent(_0x1969b4)+',\x20current\x20'+formatParent(_0x50ab16[_0xbe52b8(0x80)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');_0x10e701!==null&&requireFolder(_0x301f16,_0x10e701);const _0x1aeebd=_0x223f1e??(_0x50ab16[_0xbe52b8(0x80)]===_0x10e701?_0x50ab16[_0xbe52b8(0xa5)]??0x0:nextSiblingSort(_0x301f16,_0x10e701,'menu')),_0x448b39={..._0x50ab16,'parentId':_0x10e701,'sort':_0x1aeebd},_0x54c301={'id':_0x29eac3,'parentId':toApiParentId(_0x10e701),'sort':_0x1aeebd},_0x430038=_0x50ab16[_0xbe52b8(0x80)]===_0x10e701&&_0x50ab16[_0xbe52b8(0xa5)]===_0x1aeebd;return{'patch':_0x54c301,'noChanges':_0x430038,'snapshot':_0x301f16,'plan':mutationResult({'operation':_0xbe52b8(0x8c),'selector':{'id':_0x29eac3,'parentId':_0x10e701},'before':_0x50ab16,'after':_0x448b39,'dryRun':_0x1cdf29,'backend':[...BACKEND],'plannedActions':[{'stage':_0xbe52b8(0xa1),'method':_0xbe52b8(0x87),'path':'/smartapi/menu/update','body':{..._0x54c301,'appCode':_0x55970a[_0xbe52b8(0x8e)]}}],'snapshotHash':_0x301f16[_0xbe52b8(0x90)],'warnings':_0x430038?[_0xbe52b8(0xa6)]:[]})};}function verifyMove(_0x33a35b,_0x315797){const _0x44d765=a118_0x178f2f;assertVerified(_0x33a35b[_0x44d765(0x99)]!==_0x44d765(0x9a),_0x44d765(0x7e)+_0x33a35b['id']+_0x44d765(0x92)),assertVerified(_0x33a35b[_0x44d765(0xa8)]===0x0,_0x44d765(0x7e)+_0x33a35b['id']+_0x44d765(0x8a)),assertVerified(_0x33a35b[_0x44d765(0x80)]===_0x315797[_0x44d765(0x80)],_0x44d765(0x7e)+_0x33a35b['id']+_0x44d765(0x7c)),assertVerified(_0x33a35b[_0x44d765(0xa5)]===_0x315797[_0x44d765(0xa5)],_0x44d765(0x7e)+_0x33a35b['id']+_0x44d765(0x9d));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a119_0xda2886=a119_0x5206;(function(_0x27017d,_0x405206){const _0x390f82=a119_0x5206,_0x4f5131=_0x27017d();while(!![]){try{const _0x3ec76d=parseInt(_0x390f82(0x206))/0x1+parseInt(_0x390f82(0x1de))/0x2+-parseInt(_0x390f82(0x226))/0x3+-parseInt(_0x390f82(0x22d))/0x4+parseInt(_0x390f82(0x215))/0x5+parseInt(_0x390f82(0x1e8))/0x6*(-parseInt(_0x390f82(0x230))/0x7)+parseInt(_0x390f82(0x205))/0x8;if(_0x3ec76d===_0x405206)break;else _0x4f5131['push'](_0x4f5131['shift']());}catch(_0x85061d){_0x4f5131['push'](_0x4f5131['shift']());}}}(a119_0x3f5f,0x720b6));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';function a119_0x5206(_0x259683,_0x2cd395){_0x259683=_0x259683-0x1d9;const _0x3f5fd8=a119_0x3f5f();let _0x5206d4=_0x3f5fd8[_0x259683];return _0x5206d4;}import{startMenuRegroup}from'../../commands/menu/shared/service.js';function a119_0x3f5f(){const _0x5d40de=['plan\x20regroup','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','some','get','menu_regroup_already_applied','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','size','replace','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','--menu-ids\x20supports\x20at\x20most\x20','split','parentId','menu\x20list','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','filter','menu_regroup_label_conflict','label','string','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','menu_regroup_target_label_missing','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.','Regroup\x20readback\x20also\x20failed:\x20','appCode','2571712ByWFEm','687813LuasAe','str','validation','Menu\x20','isSafeInteger','<platform-generated>','type','join','sort','write','toLowerCase','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','group','\x20menus\x20per\x20regroup\x20request.','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','2261400gnqoDj','knownStatus','taskId','POST','isTerminal','failed','Regroup\x20task\x20accepted.\x20','input','start\x20menu\x20regroup',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','byId','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','Regroup\x20readback\x20failed:\x20','status','childrenCount','readbackError','\x20--format\x20compress','2739555ollUoH','\x20menu\x20list\x20--appcode\x20','map','applied','menu-ids','plan','unconfirmed','384348IJToST','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','hash','123389rsVRzP','/smartapi/menu/regroup','childrenIds','cookie','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','folder','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','<new-group-id>','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','\x27\x5c\x27\x27','length','770016KHoFxL','menuIds','menu','regroup-start','trim','FAILED','Menus\x20','Root\x20folder\x20label\x20','menu_regroup_target_not_leaf','stringify','126wLtcsA','submit-regroup-task','message','menus','Label\x20of\x20the\x20new\x20root\x20folder'];a119_0x3f5f=function(){return _0x5d40de;};return a119_0x3f5f();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a119_0xda2886(0x231)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a119_0xda2886(0x1e0),'command':a119_0xda2886(0x1e1),'description':a119_0xda2886(0x1db),'risk':a119_0xda2886(0x20f),'structuredErrors':!![],'flags':[{'name':a119_0xda2886(0x1fe),'type':'string','required':!![],'description':a119_0xda2886(0x1ec)},{'name':a119_0xda2886(0x22a),'type':a119_0xda2886(0x1ff),'required':!![],'description':'Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2e44ae){validateRegroupInput(_0x2e44ae);},async 'dryRun'(_0x1d8c0c){const _0x4f9b10=a119_0xda2886;validateRegroupInput(_0x1d8c0c);const _0x39aaf2=await buildRegroupPlan(_0x1d8c0c,!![]);return menuDryRunResult(_0x39aaf2[_0x4f9b10(0x22b)],{'method':_0x4f9b10(0x218),'url':_0x4f9b10(0x231),'body':_0x39aaf2[_0x4f9b10(0x21c)],'description':_0x4f9b10(0x211)+JSON[_0x4f9b10(0x1e7)](_0x39aaf2[_0x4f9b10(0x1fe)])+'\x20and\x20regroup\x20menu\x20ids\x20'+_0x39aaf2[_0x4f9b10(0x1df)][_0x4f9b10(0x20d)](',\x20')+_0x4f9b10(0x21e)});},async 'execute'(_0x5e360c){const _0x144c67=a119_0xda2886;validateRegroupInput(_0x5e360c);const _0x19de2f=await buildRegroupPlan(_0x5e360c,![]);await recheckMutationSnapshot(_0x5e360c,_0x19de2f['plan'],'start\x20regroup');const _0x8daf92=buildMenuLookupCommand(_0x5e360c[_0x144c67(0x204)]);let _0x1d4507,_0x4d0993;try{_0x1d4507=await startMenuRegroup(_0x5e360c['cookie'],_0x19de2f[_0x144c67(0x21c)]),_0x4d0993=normalizeAsyncTask(_0x1d4507);}catch(_0x1166ad){const _0x24a060=await inspectRegroupAfterFailure(_0x5e360c['appCode'],_0x5e360c[_0x144c67(0x233)],_0x19de2f[_0x144c67(0x1fe)],_0x19de2f[_0x144c67(0x1df)]),_0x56d63b=typeof _0x1d4507?.['taskId']==='string'&&_0x1d4507[_0x144c67(0x217)][_0x144c67(0x1e2)]()?_0x1d4507[_0x144c67(0x217)][_0x144c67(0x1e2)]():null,_0x24cf2c=_0x56d63b?{'command':buildAsyncTaskStatusCommand(_0x56d63b,_0x5e360c['appCode'])}:null,_0x77254b=mapMenuApiError(_0x1166ad,_0x144c67(0x21d));throw menuFailure(_0x77254b,_0x19de2f[_0x144c67(0x22b)],{'stage':'regroup-submit','failed':{'menuIds':_0x19de2f[_0x144c67(0x1df)],'taskId':_0x56d63b,'groupingApplied':_0x24a060[_0x144c67(0x229)]?!![]:'unconfirmed'},'after':_0x24a060[_0x144c67(0x229)]??null,'warnings':[_0x144c67(0x220),..._0x24a060[_0x144c67(0x224)]?[_0x144c67(0x203)+_0x24a060[_0x144c67(0x224)]]:[],..._0x56d63b?[_0x144c67(0x1ee)]:[]],'verification':{'status':_0x144c67(0x21a),'groupingApplied':_0x24a060[_0x144c67(0x229)]?!![]:_0x144c67(0x22c),'taskId':_0x56d63b,'query':_0x24cf2c,'lookupCommand':_0x8daf92}});}const _0xbe2012=buildAsyncTaskStatusCommand(_0x4d0993['taskId'],_0x5e360c[_0x144c67(0x204)]);let _0x3d814a=null,_0x10b245=null,_0x1b9fd2=null;try{_0x3d814a=await fetchMenuSnapshot(_0x5e360c[_0x144c67(0x204)],_0x5e360c[_0x144c67(0x233)]),_0x10b245=findAppliedRegroup(_0x3d814a,_0x19de2f['label'],_0x19de2f[_0x144c67(0x1df)]);}catch(_0x19ddc6){_0x1b9fd2=_0x19ddc6 instanceof Error?_0x19ddc6[_0x144c67(0x1ea)]:String(_0x19ddc6);}const _0x2ceaaf=mutationResult({..._0x19de2f['plan'],'after':_0x10b245??null,'dryRun':![],'succeeded':[{'groupId':_0x10b245?.[_0x144c67(0x212)]['id']??null,'menuIds':_0x19de2f[_0x144c67(0x1df)],'taskId':_0x4d0993[_0x144c67(0x217)],'status':_0x4d0993[_0x144c67(0x222)],'groupingApplied':_0x10b245?!![]:'unconfirmed'}],'verification':{'checkedBy':_0x144c67(0x1fa),'snapshotHash':_0x3d814a?.[_0x144c67(0x22f)]??null,'groupId':_0x10b245?.['group']['id']??null,'groupingApplied':_0x10b245?!![]:_0x144c67(0x22c),'readbackError':_0x1b9fd2,'lookupCommand':_0x8daf92},'warnings':[..._0x19de2f['plan']['warnings'],...!_0x10b245?[unconfirmedRegroupWarning(_0x4d0993)]:[],..._0x1b9fd2?[_0x144c67(0x221)+_0x1b9fd2]:[]]}),_0x2ac608=_0x4d0993['status']==='SUCCESS'&&!_0x10b245?'Regroup\x20task\x20'+_0x4d0993['taskId']+_0x144c67(0x1d9):_0x144c67(0x21b)+asyncTaskMessage(_0x4d0993);return{'ok':!![],'message':_0x2ac608,'data':{..._0x2ceaaf,'task':_0x4d0993,'query':_0x4d0993[_0x144c67(0x219)]?null:{'command':_0xbe2012}}};}};function validateRegroupInput(_0x181f35){const _0xf7f30f=a119_0xda2886;if(!_0x181f35[_0xf7f30f(0x207)](_0xf7f30f(0x1fe))[_0xf7f30f(0x1e2)]())throw CliErrors['flagMissing']('label');parseMenuIds(_0x181f35[_0xf7f30f(0x207)](_0xf7f30f(0x22a)));}function parseMenuIds(_0x7f732a){const _0x480ec7=a119_0xda2886,_0x1e9b16=_0x7f732a[_0x480ec7(0x1f8)](',')[_0x480ec7(0x228)](_0x23ace8=>_0x23ace8[_0x480ec7(0x1e2)]());if(_0x1e9b16[_0x480ec7(0x1dd)]===0x0||_0x1e9b16[_0x480ec7(0x1ef)](_0x1dc14a=>!_0x1dc14a))throw CliErrors[_0x480ec7(0x208)](_0x480ec7(0x200));const _0x34e37d=_0x1e9b16['map'](_0x547f0c=>{const _0xcea751=_0x480ec7;if(!/^\d+$/['test'](_0x547f0c))throw CliErrors['validation'](_0xcea751(0x200));const _0x240a36=Number(_0x547f0c);if(!Number[_0xcea751(0x20a)](_0x240a36)||_0x240a36<=0x0)throw CliErrors[_0xcea751(0x208)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');return _0x240a36;});if(new Set(_0x34e37d)[_0x480ec7(0x1f4)]!==_0x34e37d['length'])throw CliErrors['validation']('--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.');if(_0x34e37d[_0x480ec7(0x1dd)]>MAX_REGROUP_MENU_COUNT)throw CliErrors['validation'](_0x480ec7(0x1f7)+MAX_REGROUP_MENU_COUNT+_0x480ec7(0x213));return _0x34e37d;}function buildMenuLookupCommand(_0x2cab49){const _0xaafb68=a119_0xda2886,_0x9e1298='\x27'+_0x2cab49[_0xaafb68(0x1f5)](/'/g,_0xaafb68(0x1dc))+'\x27';return CLI_BIN_NAME+_0xaafb68(0x227)+_0x9e1298+_0xaafb68(0x225);}function unconfirmedRegroupWarning(_0x55364b){const _0x5e633f=a119_0xda2886;if(_0x55364b[_0x5e633f(0x222)]==='SUCCESS')return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x55364b[_0x5e633f(0x222)]===_0x5e633f(0x1e3))return _0x5e633f(0x234);if(_0x55364b[_0x5e633f(0x216)])return _0x5e633f(0x1f3);return _0x5e633f(0x202);}async function buildRegroupPlan(_0x2b8e99,_0x488f7f){const _0x401582=a119_0xda2886,_0x376f72=_0x2b8e99[_0x401582(0x207)](_0x401582(0x1fe))[_0x401582(0x1e2)](),_0x2cf261=parseMenuIds(_0x2b8e99[_0x401582(0x207)](_0x401582(0x22a))),_0xdaf548=await fetchMutationSnapshot(_0x2b8e99,_0x401582(0x1ed)),_0x2e460f=_0x2cf261[_0x401582(0x228)](_0x1c1646=>requireMenu(_0xdaf548,_0x1c1646));for(const _0x55de47 of _0x2e460f){if(_0x55de47['type']['trim']()[_0x401582(0x210)]()===_0x401582(0x235)||_0x55de47[_0x401582(0x223)]>0x0)throw menuError(_0x401582(0x1e6),_0x401582(0x209)+_0x55de47['id']+_0x401582(0x1fb),_0x401582(0x1f6));if(!_0x55de47['label']['trim']())throw menuError(_0x401582(0x201),_0x401582(0x209)+_0x55de47['id']+'\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.',_0x401582(0x1f2));}const _0x2b4304=findAppliedRegroup(_0xdaf548,_0x376f72,_0x2cf261);if(_0x2b4304)throw menuError(_0x401582(0x1f1),_0x401582(0x1e4)+_0x2cf261[_0x401582(0x20d)](',\x20')+_0x401582(0x22e)+_0x2b4304['group']['id']+'\x20('+JSON[_0x401582(0x1e7)](_0x376f72)+').',_0x401582(0x214));const _0x3294c8=_0xdaf548[_0x401582(0x1eb)][_0x401582(0x1fc)](_0x3a6223=>_0x3a6223[_0x401582(0x1f9)]==null&&_0x3a6223[_0x401582(0x20c)][_0x401582(0x1e2)]()[_0x401582(0x210)]()===_0x401582(0x235)&&_0x3a6223[_0x401582(0x1fe)]===_0x376f72);if(_0x3294c8[_0x401582(0x1dd)]>0x0)throw menuError(_0x401582(0x1fd),_0x401582(0x1e5)+JSON[_0x401582(0x1e7)](_0x376f72)+'\x20already\x20belongs\x20to\x20menu\x20id(s)\x20'+_0x3294c8[_0x401582(0x228)](_0x514ce5=>_0x514ce5['id'])[_0x401582(0x20d)](',\x20')+'.','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.');const _0x5ec066={'appCode':_0x2b8e99[_0x401582(0x204)],'menuGroups':[{'label':_0x376f72,'type':'folder','children':_0x2e460f[_0x401582(0x228)](_0x1f3e9f=>({'id':_0x1f3e9f['id'],'label':_0x1f3e9f['label']}))}]},_0x4df377=mutationResult({'operation':_0x401582(0x1e1),'selector':{'label':_0x376f72,'menuIds':_0x2cf261},'before':{'menus':_0x2e460f},'after':{'group':{'id':null,'parentId':null,'label':_0x376f72,'path':_0x401582(0x20b),'type':'folder','childrenIds':_0x2cf261},'children':_0x2e460f[_0x401582(0x228)](_0x56a0b3=>({'id':_0x56a0b3['id'],'label':_0x56a0b3[_0x401582(0x1fe)],'beforeParentId':_0x56a0b3[_0x401582(0x1f9)],'afterParentId':_0x401582(0x1da)}))},'dryRun':_0x488f7f,'backend':[...BACKEND],'plannedActions':[{'stage':_0x401582(0x1e9),'method':'POST','path':'/smartapi/menu/regroup','body':_0x5ec066}],'snapshotHash':_0xdaf548[_0x401582(0x22f)],'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':_0x376f72,'menuIds':_0x2cf261,'input':_0x5ec066,'plan':_0x4df377};}function findAppliedRegroup(_0x27b863,_0x3f4777,_0x1a4b8a){const _0x500203=a119_0xda2886,_0xd7800d=_0x1a4b8a[_0x500203(0x228)](_0x32053a=>_0x27b863[_0x500203(0x21f)][_0x500203(0x1f0)](_0x32053a))[_0x500203(0x1fc)](_0x3047c5=>Boolean(_0x3047c5));if(_0xd7800d[_0x500203(0x1dd)]!==_0x1a4b8a['length'])return null;const _0x496506=_0xd7800d[0x0]?.[_0x500203(0x1f9)];if(_0x496506==null||_0xd7800d['some'](_0x2c66fb=>_0x2c66fb['parentId']!==_0x496506))return null;const _0x5e7d6d=_0x27b863['byId'][_0x500203(0x1f0)](_0x496506);if(!_0x5e7d6d||_0x5e7d6d[_0x500203(0x1f9)]!=null||_0x5e7d6d[_0x500203(0x20c)][_0x500203(0x1e2)]()[_0x500203(0x210)]()!==_0x500203(0x235)||_0x5e7d6d[_0x500203(0x1fe)]!==_0x3f4777)return null;const _0x5624cb=[..._0x1a4b8a][_0x500203(0x20e)]((_0x2a8fc0,_0x4ca478)=>_0x2a8fc0-_0x4ca478),_0x22fac6=[..._0x5e7d6d[_0x500203(0x232)]][_0x500203(0x20e)]((_0x15f965,_0x48016a)=>_0x15f965-_0x48016a);if(JSON['stringify'](_0x22fac6)!==JSON[_0x500203(0x1e7)](_0x5624cb))return null;return{'group':_0x5e7d6d,'children':_0xd7800d};}async function inspectRegroupAfterFailure(_0x3bba44,_0x194efa,_0x1033e2,_0x4a9a0f){try{const _0x372b15=await fetchMenuSnapshot(_0x3bba44,_0x194efa);return{'applied':findAppliedRegroup(_0x372b15,_0x1033e2,_0x4a9a0f),'readbackError':null};}catch(_0x46e12b){return{'applied':null,'readbackError':_0x46e12b instanceof Error?_0x46e12b['message']:String(_0x46e12b)};}}
|
|
1
|
+
const a119_0x51f180=a119_0x2a2d;(function(_0x5b9631,_0x2fac43){const _0x2f4026=a119_0x2a2d,_0x4fe6f5=_0x5b9631();while(!![]){try{const _0x2797a1=parseInt(_0x2f4026(0xf7))/0x1*(parseInt(_0x2f4026(0xee))/0x2)+-parseInt(_0x2f4026(0x10f))/0x3+parseInt(_0x2f4026(0x11a))/0x4*(parseInt(_0x2f4026(0xf4))/0x5)+parseInt(_0x2f4026(0xfe))/0x6*(-parseInt(_0x2f4026(0x127))/0x7)+parseInt(_0x2f4026(0x120))/0x8+parseInt(_0x2f4026(0x10a))/0x9+-parseInt(_0x2f4026(0x110))/0xa;if(_0x2797a1===_0x2fac43)break;else _0x4fe6f5['push'](_0x4fe6f5['shift']());}catch(_0xd22506){_0x4fe6f5['push'](_0x4fe6f5['shift']());}}}(a119_0x20a5,0xe6204));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a119_0x2a2d(_0x650550,_0x26e4a5){_0x650550=_0x650550-0xdd;const _0x20a536=a119_0x20a5();let _0x2a2dee=_0x20a536[_0x650550];return _0x2a2dee;}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';function a119_0x20a5(){const _0x4c92e1=['menu','menu\x20list','Menus\x20','byId','length','replace','isTerminal','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','parentId','menuIds','44COTdkN','applied','Root\x20folder\x20label\x20','map','Menu\x20','get','2142465LjZhIX','Regroup\x20task\x20accepted.\x20','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','25778TgeDWi','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','sort','submit-regroup-task','SUCCESS','\x20menus\x20per\x20regroup\x20request.','validation','12228pONGpR','\x20--format\x20compress','some','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','--menu-ids\x20supports\x20at\x20most\x20','str','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','menu_regroup_label_conflict','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','label','15742800fXyeaB','\x27\x5c\x27\x27','start\x20menu\x20regroup','knownStatus','POST','1696107rfrHnP','31718460xPQuHu','group','size','stringify','regroup-submit','isSafeInteger','childrenCount','plan','failed','string','16XizDXn','join',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','hash','Regroup\x20task\x20','8636328RWRxJx','appCode','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.','Regroup\x20readback\x20failed:\x20','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','status','<platform-generated>','1477NdJoEY','folder','taskId','FAILED','split','unconfirmed','message','/smartapi/menu/regroup','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','type','trim','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','Regroup\x20readback\x20also\x20failed:\x20','\x20and\x20regroup\x20menu\x20ids\x20','warnings','cookie','menu_regroup_already_applied','menu-ids','test','toLowerCase','regroup-start','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','input','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED'];a119_0x20a5=function(){return _0x4c92e1;};return a119_0x20a5();}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a119_0x51f180(0x10e),'path':a119_0x51f180(0x12e)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a119_0x51f180(0xe2),'command':a119_0x51f180(0xde),'description':a119_0x51f180(0xe1),'risk':'write','structuredErrors':!![],'flags':[{'name':'label','type':a119_0x51f180(0x119),'required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':'menu-ids','type':'string','required':!![],'description':'Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5c93e6){validateRegroupInput(_0x5c93e6);},async 'dryRun'(_0x4d3416){const _0x2d19c2=a119_0x51f180;validateRegroupInput(_0x4d3416);const _0x5251c2=await buildRegroupPlan(_0x4d3416,!![]);return menuDryRunResult(_0x5251c2[_0x2d19c2(0x117)],{'method':_0x2d19c2(0x10e),'url':_0x2d19c2(0x12e),'body':_0x5251c2[_0x2d19c2(0xe0)],'description':_0x2d19c2(0x101)+JSON[_0x2d19c2(0x113)](_0x5251c2[_0x2d19c2(0x109)])+_0x2d19c2(0x134)+_0x5251c2[_0x2d19c2(0xed)][_0x2d19c2(0x11b)](',\x20')+_0x2d19c2(0x11c)});},async 'execute'(_0x26c2e0){const _0x2f1efd=a119_0x51f180;validateRegroupInput(_0x26c2e0);const _0x1bf8fd=await buildRegroupPlan(_0x26c2e0,![]);await recheckMutationSnapshot(_0x26c2e0,_0x1bf8fd[_0x2f1efd(0x117)],'start\x20regroup');const _0x515f5d=buildMenuLookupCommand(_0x26c2e0[_0x2f1efd(0x121)]);let _0x4e61b7,_0x1f9a31;try{_0x4e61b7=await startMenuRegroup(_0x26c2e0[_0x2f1efd(0x136)],_0x1bf8fd['input']),_0x1f9a31=normalizeAsyncTask(_0x4e61b7);}catch(_0x59c1ab){const _0x525dcc=await inspectRegroupAfterFailure(_0x26c2e0['appCode'],_0x26c2e0[_0x2f1efd(0x136)],_0x1bf8fd[_0x2f1efd(0x109)],_0x1bf8fd[_0x2f1efd(0xed)]),_0x183271=typeof _0x4e61b7?.[_0x2f1efd(0x129)]===_0x2f1efd(0x119)&&_0x4e61b7[_0x2f1efd(0x129)][_0x2f1efd(0x131)]()?_0x4e61b7[_0x2f1efd(0x129)][_0x2f1efd(0x131)]():null,_0x3960d2=_0x183271?{'command':buildAsyncTaskStatusCommand(_0x183271,_0x26c2e0[_0x2f1efd(0x121)])}:null,_0x17d214=mapMenuApiError(_0x59c1ab,_0x2f1efd(0x10c));throw menuFailure(_0x17d214,_0x1bf8fd[_0x2f1efd(0x117)],{'stage':_0x2f1efd(0x114),'failed':{'menuIds':_0x1bf8fd[_0x2f1efd(0xed)],'taskId':_0x183271,'groupingApplied':_0x525dcc[_0x2f1efd(0xef)]?!![]:_0x2f1efd(0x12c)},'after':_0x525dcc[_0x2f1efd(0xef)]??null,'warnings':['The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.',..._0x525dcc['readbackError']?[_0x2f1efd(0x133)+_0x525dcc['readbackError']]:[],..._0x183271?[_0x2f1efd(0xdf)]:[]],'verification':{'status':_0x2f1efd(0x118),'groupingApplied':_0x525dcc[_0x2f1efd(0xef)]?!![]:_0x2f1efd(0x12c),'taskId':_0x183271,'query':_0x3960d2,'lookupCommand':_0x515f5d}});}const _0x5df9e6=buildAsyncTaskStatusCommand(_0x1f9a31[_0x2f1efd(0x129)],_0x26c2e0[_0x2f1efd(0x121)]);let _0x43a9c2=null,_0x342b0d=null,_0x13d57a=null;try{_0x43a9c2=await fetchMenuSnapshot(_0x26c2e0[_0x2f1efd(0x121)],_0x26c2e0[_0x2f1efd(0x136)]),_0x342b0d=findAppliedRegroup(_0x43a9c2,_0x1bf8fd[_0x2f1efd(0x109)],_0x1bf8fd[_0x2f1efd(0xed)]);}catch(_0x26f4e0){_0x13d57a=_0x26f4e0 instanceof Error?_0x26f4e0[_0x2f1efd(0x12d)]:String(_0x26f4e0);}const _0x1fa521=mutationResult({..._0x1bf8fd[_0x2f1efd(0x117)],'after':_0x342b0d??null,'dryRun':![],'succeeded':[{'groupId':_0x342b0d?.['group']['id']??null,'menuIds':_0x1bf8fd[_0x2f1efd(0xed)],'taskId':_0x1f9a31[_0x2f1efd(0x129)],'status':_0x1f9a31['status'],'groupingApplied':_0x342b0d?!![]:'unconfirmed'}],'verification':{'checkedBy':_0x2f1efd(0xe3),'snapshotHash':_0x43a9c2?.[_0x2f1efd(0x11e)]??null,'groupId':_0x342b0d?.['group']['id']??null,'groupingApplied':_0x342b0d?!![]:_0x2f1efd(0x12c),'readbackError':_0x13d57a,'lookupCommand':_0x515f5d},'warnings':[..._0x1bf8fd[_0x2f1efd(0x117)][_0x2f1efd(0x135)],...!_0x342b0d?[unconfirmedRegroupWarning(_0x1f9a31)]:[],..._0x13d57a?[_0x2f1efd(0x123)+_0x13d57a]:[]]}),_0x4c39f8=_0x1f9a31[_0x2f1efd(0x125)]==='SUCCESS'&&!_0x342b0d?_0x2f1efd(0x11f)+_0x1f9a31['taskId']+_0x2f1efd(0xeb):_0x2f1efd(0xf5)+asyncTaskMessage(_0x1f9a31);return{'ok':!![],'message':_0x4c39f8,'data':{..._0x1fa521,'task':_0x1f9a31,'query':_0x1f9a31[_0x2f1efd(0xe8)]?null:{'command':_0x5df9e6}}};}};function validateRegroupInput(_0x1e3918){const _0x57791a=a119_0x51f180;if(!_0x1e3918['str'](_0x57791a(0x109))[_0x57791a(0x131)]())throw CliErrors['flagMissing'](_0x57791a(0x109));parseMenuIds(_0x1e3918[_0x57791a(0x105)](_0x57791a(0x138)));}function parseMenuIds(_0x5b729e){const _0x287274=a119_0x51f180,_0x13de01=_0x5b729e[_0x287274(0x12b)](',')[_0x287274(0xf1)](_0x20d6f4=>_0x20d6f4[_0x287274(0x131)]());if(_0x13de01[_0x287274(0xe6)]===0x0||_0x13de01[_0x287274(0x100)](_0x813dec=>!_0x813dec))throw CliErrors[_0x287274(0xfd)](_0x287274(0x132));const _0x542438=_0x13de01[_0x287274(0xf1)](_0xde1b6f=>{const _0xa1d8a3=_0x287274;if(!/^\d+$/[_0xa1d8a3(0x139)](_0xde1b6f))throw CliErrors[_0xa1d8a3(0xfd)](_0xa1d8a3(0x132));const _0x392979=Number(_0xde1b6f);if(!Number[_0xa1d8a3(0x115)](_0x392979)||_0x392979<=0x0)throw CliErrors[_0xa1d8a3(0xfd)](_0xa1d8a3(0x132));return _0x392979;});if(new Set(_0x542438)[_0x287274(0x112)]!==_0x542438['length'])throw CliErrors[_0x287274(0xfd)]('--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.');if(_0x542438[_0x287274(0xe6)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x287274(0xfd)](_0x287274(0x104)+MAX_REGROUP_MENU_COUNT+_0x287274(0xfc));return _0x542438;}function buildMenuLookupCommand(_0xec7bb2){const _0x1452de=a119_0x51f180,_0x3f6655='\x27'+_0xec7bb2[_0x1452de(0xe7)](/'/g,_0x1452de(0x10b))+'\x27';return CLI_BIN_NAME+'\x20menu\x20list\x20--appcode\x20'+_0x3f6655+_0x1452de(0xff);}function unconfirmedRegroupWarning(_0x79a3e0){const _0x2672a9=a119_0x51f180;if(_0x79a3e0['status']===_0x2672a9(0xfb))return _0x2672a9(0xf8);if(_0x79a3e0[_0x2672a9(0x125)]===_0x2672a9(0x12a))return _0x2672a9(0xf6);if(_0x79a3e0[_0x2672a9(0x10d)])return _0x2672a9(0x124);return _0x2672a9(0x122);}async function buildRegroupPlan(_0xcaad00,_0x424da4){const _0x2daf94=a119_0x51f180,_0x2c3b0d=_0xcaad00['str'](_0x2daf94(0x109))[_0x2daf94(0x131)](),_0x4a4f24=parseMenuIds(_0xcaad00[_0x2daf94(0x105)]('menu-ids')),_0x453c6c=await fetchMutationSnapshot(_0xcaad00,'plan\x20regroup'),_0x250199=_0x4a4f24['map'](_0xc54fcc=>requireMenu(_0x453c6c,_0xc54fcc));for(const _0x54150d of _0x250199){if(_0x54150d[_0x2daf94(0x130)][_0x2daf94(0x131)]()[_0x2daf94(0xdd)]()==='folder'||_0x54150d[_0x2daf94(0x116)]>0x0)throw menuError('menu_regroup_target_not_leaf','Menu\x20'+_0x54150d['id']+_0x2daf94(0x108),_0x2daf94(0x106));if(!_0x54150d[_0x2daf94(0x109)][_0x2daf94(0x131)]())throw menuError('menu_regroup_target_label_missing',_0x2daf94(0xf2)+_0x54150d['id']+'\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.',_0x2daf94(0x103));}const _0x3fad55=findAppliedRegroup(_0x453c6c,_0x2c3b0d,_0x4a4f24);if(_0x3fad55)throw menuError(_0x2daf94(0x137),_0x2daf94(0xe4)+_0x4a4f24['join'](',\x20')+_0x2daf94(0x11d)+_0x3fad55[_0x2daf94(0x111)]['id']+'\x20('+JSON['stringify'](_0x2c3b0d)+').',_0x2daf94(0xe9));const _0xd0aabd=_0x453c6c['menus']['filter'](_0xec417f=>_0xec417f['parentId']==null&&_0xec417f[_0x2daf94(0x130)][_0x2daf94(0x131)]()['toLowerCase']()===_0x2daf94(0x128)&&_0xec417f[_0x2daf94(0x109)]===_0x2c3b0d);if(_0xd0aabd[_0x2daf94(0xe6)]>0x0)throw menuError(_0x2daf94(0x107),_0x2daf94(0xf0)+JSON['stringify'](_0x2c3b0d)+_0x2daf94(0x102)+_0xd0aabd[_0x2daf94(0xf1)](_0x47d846=>_0x47d846['id'])['join'](',\x20')+'.',_0x2daf94(0xea));const _0x560ba4={'appCode':_0xcaad00['appCode'],'menuGroups':[{'label':_0x2c3b0d,'type':_0x2daf94(0x128),'children':_0x250199['map'](_0x4b896c=>({'id':_0x4b896c['id'],'label':_0x4b896c[_0x2daf94(0x109)]}))}]},_0x454f89=mutationResult({'operation':'regroup-start','selector':{'label':_0x2c3b0d,'menuIds':_0x4a4f24},'before':{'menus':_0x250199},'after':{'group':{'id':null,'parentId':null,'label':_0x2c3b0d,'path':_0x2daf94(0x126),'type':_0x2daf94(0x128),'childrenIds':_0x4a4f24},'children':_0x250199[_0x2daf94(0xf1)](_0x3cf075=>({'id':_0x3cf075['id'],'label':_0x3cf075[_0x2daf94(0x109)],'beforeParentId':_0x3cf075[_0x2daf94(0xec)],'afterParentId':'<new-group-id>'}))},'dryRun':_0x424da4,'backend':[...BACKEND],'plannedActions':[{'stage':_0x2daf94(0xfa),'method':_0x2daf94(0x10e),'path':_0x2daf94(0x12e),'body':_0x560ba4}],'snapshotHash':_0x453c6c[_0x2daf94(0x11e)],'warnings':[_0x2daf94(0x12f),'The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.']});return{'label':_0x2c3b0d,'menuIds':_0x4a4f24,'input':_0x560ba4,'plan':_0x454f89};}function findAppliedRegroup(_0x36de4b,_0x2a5b34,_0x4c4a4a){const _0x318ac6=a119_0x51f180,_0x13f4b2=_0x4c4a4a[_0x318ac6(0xf1)](_0x13cb6d=>_0x36de4b['byId'][_0x318ac6(0xf3)](_0x13cb6d))['filter'](_0x8c2721=>Boolean(_0x8c2721));if(_0x13f4b2[_0x318ac6(0xe6)]!==_0x4c4a4a[_0x318ac6(0xe6)])return null;const _0x4c211a=_0x13f4b2[0x0]?.[_0x318ac6(0xec)];if(_0x4c211a==null||_0x13f4b2['some'](_0x179a46=>_0x179a46[_0x318ac6(0xec)]!==_0x4c211a))return null;const _0x2d1c7a=_0x36de4b[_0x318ac6(0xe5)]['get'](_0x4c211a);if(!_0x2d1c7a||_0x2d1c7a['parentId']!=null||_0x2d1c7a[_0x318ac6(0x130)][_0x318ac6(0x131)]()[_0x318ac6(0xdd)]()!==_0x318ac6(0x128)||_0x2d1c7a[_0x318ac6(0x109)]!==_0x2a5b34)return null;const _0x2879e2=[..._0x4c4a4a]['sort']((_0x38157c,_0x1dece5)=>_0x38157c-_0x1dece5),_0x325264=[..._0x2d1c7a['childrenIds']][_0x318ac6(0xf9)]((_0x405eff,_0x4de9ab)=>_0x405eff-_0x4de9ab);if(JSON[_0x318ac6(0x113)](_0x325264)!==JSON[_0x318ac6(0x113)](_0x2879e2))return null;return{'group':_0x2d1c7a,'children':_0x13f4b2};}async function inspectRegroupAfterFailure(_0x51e5f5,_0x511b85,_0x252e3a,_0xfa3306){const _0x8e79ac=a119_0x51f180;try{const _0x194df6=await fetchMenuSnapshot(_0x51e5f5,_0x511b85);return{'applied':findAppliedRegroup(_0x194df6,_0x252e3a,_0xfa3306),'readbackError':null};}catch(_0x2b1cba){return{'applied':null,'readbackError':_0x2b1cba instanceof Error?_0x2b1cba[_0x8e79ac(0x12d)]:String(_0x2b1cba)};}}
|